diff --git a/Geo/CAD.cpp b/Geo/CAD.cpp index 4d03e484f5e515970f32a9c649566140faecb7dc..d54d097834cd9c56c6fd5bfba956aa9d61df3279 100644 --- a/Geo/CAD.cpp +++ b/Geo/CAD.cpp @@ -1,4 +1,4 @@ -// $Id: CAD.cpp,v 1.29 2001-08-14 15:09:09 geuzaine Exp $ +// $Id: CAD.cpp,v 1.30 2001-08-17 08:31:31 geuzaine Exp $ #include "Gmsh.h" #include "Numeric.h" @@ -1451,6 +1451,7 @@ void ApplicationOnShapes(double matrix[4][4], List_T *ListShapes){ case MSH_SEGM_LINE: case MSH_SEGM_SPLN: case MSH_SEGM_BSPLN: + case MSH_SEGM_BEZIER: case MSH_SEGM_CIRC: case MSH_SEGM_ELLI: case MSH_SEGM_NURBS: @@ -1533,6 +1534,7 @@ void CopyShape(int Type, int Num, int *New){ case MSH_SEGM_LINE: case MSH_SEGM_SPLN: case MSH_SEGM_BSPLN: + case MSH_SEGM_BEZIER: case MSH_SEGM_CIRC: case MSH_SEGM_ELLI: case MSH_SEGM_NURBS: @@ -1620,6 +1622,7 @@ void DeleteShape(int Type, int Num){ case MSH_SEGM_LINE: case MSH_SEGM_SPLN: case MSH_SEGM_BSPLN: + case MSH_SEGM_BEZIER: case MSH_SEGM_CIRC: case MSH_SEGM_ELLI: case MSH_SEGM_NURBS: diff --git a/Geo/Print_Geo.cpp b/Geo/Print_Geo.cpp index 72d2bf670a56200b52727ca7a74ab445ac94b6ed..7379c87255cab0da83a3ee54890356dab10396d0 100644 --- a/Geo/Print_Geo.cpp +++ b/Geo/Print_Geo.cpp @@ -1,4 +1,4 @@ -// $Id: Print_Geo.cpp,v 1.19 2001-08-13 18:38:55 geuzaine Exp $ +// $Id: Print_Geo.cpp,v 1.20 2001-08-17 08:31:31 geuzaine Exp $ #include "Gmsh.h" #include "Geo.h" @@ -69,6 +69,9 @@ void Print_Curve(void *a, void *b){ case MSH_SEGM_BSPLN: fprintf(FOUT,"BSpline (%d) = ",c->Num); break; + case MSH_SEGM_BEZIER: + fprintf(FOUT,"Bezier (%d) = ",c->Num); + break; default: Msg(GERROR, "Unknown Curve type %d", c->Typ); return; diff --git a/Parser/Gmsh.l b/Parser/Gmsh.l index a4424a10a660ff92f7855091737f10dc0aa3d096..7e84efe2b03e1191b93d77383caeb5f1d95976df 100644 --- a/Parser/Gmsh.l +++ b/Parser/Gmsh.l @@ -1,6 +1,6 @@ %{ -// $Id: Gmsh.l,v 1.35 2001-08-11 23:28:33 geuzaine Exp $ +// $Id: Gmsh.l,v 1.36 2001-08-17 08:31:31 geuzaine Exp $ #include <stdio.h> #include <stdlib.h> @@ -98,6 +98,7 @@ Atan2 return tAtan2 ; ArcTan2 return tAtan2 ; Attractor return tAttractor; +Bezier return tBezier; Bump return tBump; BSpline return tBSpline; Bounds return tBounds; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 955f1c7ae1f97de6a6608bd8e4a1b5a8d72daf94..ff3066c833f9b5b39dacb45d32807b0dbd9edbaa 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -85,96 +85,97 @@ #define tVectorPoint 335 #define tTensorPoint 336 #define tBSpline 337 -#define tNurbs 338 -#define tOrder 339 -#define tWith 340 -#define tBounds 341 -#define tKnots 342 -#define tColor 343 -#define tColorTable 344 -#define tFor 345 -#define tIn 346 -#define tEndFor 347 -#define tIf 348 -#define tEndIf 349 -#define tExit 350 -#define tReturn 351 -#define tCall 352 -#define tFunction 353 -#define tMesh 354 -#define tB_SPLINE_SURFACE_WITH_KNOTS 355 -#define tB_SPLINE_CURVE_WITH_KNOTS 356 -#define tCARTESIAN_POINT 357 -#define tTRUE 358 -#define tFALSE 359 -#define tUNSPECIFIED 360 -#define tU 361 -#define tV 362 -#define tEDGE_CURVE 363 -#define tVERTEX_POINT 364 -#define tORIENTED_EDGE 365 -#define tPLANE 366 -#define tFACE_OUTER_BOUND 367 -#define tEDGE_LOOP 368 -#define tADVANCED_FACE 369 -#define tVECTOR 370 -#define tDIRECTION 371 -#define tAXIS2_PLACEMENT_3D 372 -#define tISO 373 -#define tENDISO 374 -#define tENDSEC 375 -#define tDATA 376 -#define tHEADER 377 -#define tFILE_DESCRIPTION 378 -#define tFILE_SCHEMA 379 -#define tFILE_NAME 380 -#define tMANIFOLD_SOLID_BREP 381 -#define tCLOSED_SHELL 382 -#define tADVANCED_BREP_SHAPE_REPRESENTATION 383 -#define tFACE_BOUND 384 -#define tCYLINDRICAL_SURFACE 385 -#define tCONICAL_SURFACE 386 -#define tCIRCLE 387 -#define tTRIMMED_CURVE 388 -#define tGEOMETRIC_SET 389 -#define tCOMPOSITE_CURVE_SEGMENT 390 -#define tCONTINUOUS 391 -#define tCOMPOSITE_CURVE 392 -#define tTOROIDAL_SURFACE 393 -#define tPRODUCT_DEFINITION 394 -#define tPRODUCT_DEFINITION_SHAPE 395 -#define tSHAPE_DEFINITION_REPRESENTATION 396 -#define tELLIPSE 397 -#define tTrimmed 398 -#define tSolid 399 -#define tEndSolid 400 -#define tVertex 401 -#define tFacet 402 -#define tNormal 403 -#define tOuter 404 -#define tLoopSTL 405 -#define tEndLoop 406 -#define tEndFacet 407 -#define tAFFECTPLUS 408 -#define tAFFECTMINUS 409 -#define tAFFECTTIMES 410 -#define tAFFECTDIVIDE 411 -#define tOR 412 -#define tAND 413 -#define tEQUAL 414 -#define tNOTEQUAL 415 -#define tAPPROXEQUAL 416 -#define tLESSOREQUAL 417 -#define tGREATEROREQUAL 418 -#define tCROSSPRODUCT 419 -#define tPLUSPLUS 420 -#define tMINUSMINUS 421 -#define UNARYPREC 422 +#define tBezier 338 +#define tNurbs 339 +#define tOrder 340 +#define tWith 341 +#define tBounds 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 tReturn 352 +#define tCall 353 +#define tFunction 354 +#define tMesh 355 +#define tB_SPLINE_SURFACE_WITH_KNOTS 356 +#define tB_SPLINE_CURVE_WITH_KNOTS 357 +#define tCARTESIAN_POINT 358 +#define tTRUE 359 +#define tFALSE 360 +#define tUNSPECIFIED 361 +#define tU 362 +#define tV 363 +#define tEDGE_CURVE 364 +#define tVERTEX_POINT 365 +#define tORIENTED_EDGE 366 +#define tPLANE 367 +#define tFACE_OUTER_BOUND 368 +#define tEDGE_LOOP 369 +#define tADVANCED_FACE 370 +#define tVECTOR 371 +#define tDIRECTION 372 +#define tAXIS2_PLACEMENT_3D 373 +#define tISO 374 +#define tENDISO 375 +#define tENDSEC 376 +#define tDATA 377 +#define tHEADER 378 +#define tFILE_DESCRIPTION 379 +#define tFILE_SCHEMA 380 +#define tFILE_NAME 381 +#define tMANIFOLD_SOLID_BREP 382 +#define tCLOSED_SHELL 383 +#define tADVANCED_BREP_SHAPE_REPRESENTATION 384 +#define tFACE_BOUND 385 +#define tCYLINDRICAL_SURFACE 386 +#define tCONICAL_SURFACE 387 +#define tCIRCLE 388 +#define tTRIMMED_CURVE 389 +#define tGEOMETRIC_SET 390 +#define tCOMPOSITE_CURVE_SEGMENT 391 +#define tCONTINUOUS 392 +#define tCOMPOSITE_CURVE 393 +#define tTOROIDAL_SURFACE 394 +#define tPRODUCT_DEFINITION 395 +#define tPRODUCT_DEFINITION_SHAPE 396 +#define tSHAPE_DEFINITION_REPRESENTATION 397 +#define tELLIPSE 398 +#define tTrimmed 399 +#define tSolid 400 +#define tEndSolid 401 +#define tVertex 402 +#define tFacet 403 +#define tNormal 404 +#define tOuter 405 +#define tLoopSTL 406 +#define tEndLoop 407 +#define tEndFacet 408 +#define tAFFECTPLUS 409 +#define tAFFECTMINUS 410 +#define tAFFECTTIMES 411 +#define tAFFECTDIVIDE 412 +#define tOR 413 +#define tAND 414 +#define tEQUAL 415 +#define tNOTEQUAL 416 +#define tAPPROXEQUAL 417 +#define tLESSOREQUAL 418 +#define tGREATEROREQUAL 419 +#define tCROSSPRODUCT 420 +#define tPLUSPLUS 421 +#define tMINUSMINUS 422 +#define UNARYPREC 423 #line 1 "Gmsh.y" -// $Id: Gmsh.tab.cpp,v 1.108 2001-08-13 18:38:55 geuzaine Exp $ +// $Id: Gmsh.tab.cpp,v 1.109 2001-08-17 08:31:31 geuzaine Exp $ // // Generaliser sprintf avec des chaines de caracteres @@ -264,26 +265,26 @@ typedef union { -#define YYFINAL 1542 +#define YYFINAL 1549 #define YYFLAG -32768 -#define YYNTBASE 187 +#define YYNTBASE 188 -#define YYTRANSLATE(x) ((unsigned)(x) <= 422 ? yytranslate[x] : 270) +#define YYTRANSLATE(x) ((unsigned)(x) <= 423 ? yytranslate[x] : 271) static const short yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 174, 2, 2, 2, 172, 2, 2, 179, - 180, 170, 168, 184, 169, 183, 171, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 164, - 2, 166, 158, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 175, 2, 2, 2, 173, 2, 2, 180, + 181, 171, 169, 185, 170, 184, 172, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 165, + 2, 167, 159, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 181, 2, 182, 178, 2, 2, 2, 2, 2, 2, + 182, 2, 183, 179, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 185, 2, 186, 2, 2, 2, 2, 2, + 2, 2, 186, 2, 187, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -312,8 +313,8 @@ static const short yytranslate[] = { 0, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 159, 160, 161, 162, 163, 165, 167, 173, 175, - 176, 177 + 157, 158, 160, 161, 162, 163, 164, 166, 168, 174, + 176, 177, 178 }; #if YYDEBUG != 0 @@ -335,247 +336,248 @@ static const short yyprhs[] = { 0, 979, 989, 996, 1000, 1007, 1014, 1024, 1031, 1041, 1047, 1056, 1065, 1077, 1084, 1094, 1104, 1114, 1122, 1131, 1144, 1151, 1157, 1165, 1173, 1186, 1194, 1202, 1212, 1230, 1239, - 1248, 1256, 1268, 1274, 1283, 1296, 1305, 1328, 1349, 1358, - 1367, 1373, 1382, 1390, 1399, 1405, 1417, 1423, 1433, 1435, - 1437, 1439, 1440, 1443, 1448, 1453, 1460, 1464, 1468, 1472, - 1480, 1483, 1486, 1493, 1502, 1511, 1522, 1524, 1527, 1529, - 1533, 1538, 1540, 1549, 1562, 1571, 1584, 1593, 1606, 1607, - 1620, 1621, 1638, 1640, 1643, 1653, 1656, 1663, 1673, 1683, - 1692, 1701, 1710, 1717, 1722, 1725, 1728, 1730, 1732, 1734, - 1736, 1738, 1740, 1744, 1747, 1750, 1753, 1757, 1761, 1765, - 1769, 1773, 1777, 1781, 1785, 1789, 1793, 1797, 1801, 1805, - 1809, 1815, 1820, 1825, 1830, 1835, 1840, 1845, 1850, 1855, - 1860, 1865, 1872, 1877, 1882, 1887, 1892, 1897, 1902, 1909, - 1916, 1923, 1928, 1930, 1932, 1934, 1936, 1938, 1943, 1946, - 1952, 1956, 1963, 1968, 1976, 1978, 1981, 1984, 1988, 1992, - 2004, 2014, 2022, 2030, 2031, 2035, 2037, 2041, 2042, 2046, - 2050, 2052, 2056, 2058, 2060, 2064, 2069, 2073, 2079, 2083, - 2088, 2095, 2103, 2105, 2107, 2111, 2115, 2125, 2133, 2135, - 2141, 2145, 2152, 2154, 2158, 2160, 2167, 2172, 2177, 2184, - 2191 + 1248, 1256, 1264, 1276, 1282, 1291, 1304, 1313, 1336, 1357, + 1366, 1375, 1381, 1390, 1398, 1407, 1413, 1425, 1431, 1441, + 1443, 1445, 1447, 1448, 1451, 1456, 1461, 1468, 1472, 1476, + 1480, 1488, 1491, 1494, 1501, 1510, 1519, 1530, 1532, 1535, + 1537, 1541, 1546, 1548, 1557, 1570, 1579, 1592, 1601, 1614, + 1615, 1628, 1629, 1646, 1648, 1651, 1661, 1664, 1671, 1681, + 1691, 1700, 1709, 1718, 1725, 1730, 1733, 1736, 1738, 1740, + 1742, 1744, 1746, 1748, 1752, 1755, 1758, 1761, 1765, 1769, + 1773, 1777, 1781, 1785, 1789, 1793, 1797, 1801, 1805, 1809, + 1813, 1817, 1823, 1828, 1833, 1838, 1843, 1848, 1853, 1858, + 1863, 1868, 1873, 1880, 1885, 1890, 1895, 1900, 1905, 1910, + 1917, 1924, 1931, 1936, 1938, 1940, 1942, 1944, 1946, 1951, + 1954, 1960, 1964, 1971, 1976, 1984, 1986, 1989, 1992, 1996, + 2000, 2012, 2022, 2030, 2038, 2039, 2043, 2045, 2049, 2050, + 2054, 2058, 2060, 2064, 2066, 2068, 2072, 2077, 2081, 2087, + 2091, 2096, 2103, 2111, 2113, 2115, 2119, 2123, 2133, 2141, + 2143, 2149, 2153, 2160, 2162, 2166, 2168, 2175, 2180, 2185, + 2192, 2199 }; -static const short yyrhs[] = { 190, - 0, 189, 0, 195, 0, 1, 6, 0, 3, 0, - 169, 3, 0, 145, 0, 148, 149, 188, 188, 188, - 150, 151, 147, 188, 188, 188, 147, 188, 188, 188, - 147, 188, 188, 188, 152, 153, 0, 146, 0, 0, - 190, 191, 0, 192, 0, 194, 0, 193, 0, 119, - 6, 0, 120, 6, 0, 122, 6, 0, 121, 6, - 0, 123, 6, 0, 124, 179, 259, 184, 5, 180, - 6, 0, 125, 179, 259, 180, 6, 0, 126, 179, - 5, 184, 5, 184, 259, 184, 259, 184, 5, 184, - 5, 184, 5, 180, 6, 0, 3, 7, 103, 179, - 5, 184, 257, 180, 6, 0, 3, 7, 102, 179, - 5, 184, 255, 184, 263, 184, 254, 184, 254, 184, - 254, 184, 263, 184, 263, 184, 254, 180, 6, 0, - 3, 7, 101, 179, 5, 184, 255, 184, 255, 184, - 261, 184, 254, 184, 254, 184, 254, 184, 254, 184, - 263, 184, 263, 184, 263, 184, 263, 184, 254, 180, - 6, 0, 3, 7, 109, 179, 5, 184, 3, 184, - 3, 184, 3, 184, 254, 180, 6, 0, 3, 7, - 113, 179, 5, 184, 3, 184, 254, 180, 6, 0, - 3, 7, 130, 179, 5, 184, 3, 184, 254, 180, - 6, 0, 3, 7, 111, 179, 5, 184, 170, 184, - 170, 184, 255, 184, 254, 180, 6, 0, 3, 7, - 114, 179, 5, 184, 263, 180, 6, 0, 3, 7, - 115, 179, 5, 184, 263, 184, 3, 184, 254, 180, - 6, 0, 3, 7, 110, 179, 5, 184, 3, 180, - 6, 0, 3, 7, 116, 179, 5, 184, 3, 184, - 255, 180, 6, 0, 3, 7, 118, 179, 5, 184, - 3, 184, 3, 184, 3, 180, 6, 0, 3, 7, - 117, 179, 5, 184, 257, 180, 6, 0, 3, 7, - 112, 179, 5, 184, 3, 180, 6, 0, 3, 7, - 41, 179, 5, 184, 3, 184, 3, 180, 6, 0, - 3, 7, 128, 179, 5, 184, 263, 180, 6, 0, - 3, 7, 129, 179, 5, 184, 263, 184, 3, 180, - 6, 0, 3, 7, 127, 179, 5, 184, 3, 180, - 6, 0, 3, 7, 131, 179, 5, 184, 3, 184, - 255, 180, 6, 0, 3, 7, 132, 179, 5, 184, - 3, 184, 255, 184, 255, 180, 6, 0, 3, 7, - 139, 179, 5, 184, 3, 184, 255, 184, 255, 180, - 6, 0, 3, 7, 133, 179, 5, 184, 3, 184, - 255, 180, 6, 0, 3, 7, 143, 179, 5, 184, - 3, 184, 255, 184, 255, 180, 6, 0, 3, 7, - 134, 179, 5, 184, 3, 184, 263, 184, 263, 184, - 254, 184, 254, 180, 6, 0, 3, 7, 135, 179, - 5, 184, 263, 180, 6, 0, 3, 7, 136, 179, - 137, 184, 254, 184, 3, 180, 6, 0, 3, 7, - 138, 179, 5, 184, 263, 184, 254, 180, 6, 0, - 3, 7, 140, 179, 5, 184, 5, 184, 3, 184, - 3, 180, 6, 0, 3, 7, 141, 179, 5, 184, - 5, 184, 3, 180, 6, 0, 3, 7, 142, 179, - 3, 184, 3, 180, 6, 0, 0, 195, 196, 0, - 198, 0, 197, 0, 238, 0, 239, 0, 240, 0, - 243, 0, 244, 0, 247, 0, 252, 0, 253, 0, - 246, 0, 245, 0, 33, 179, 5, 180, 6, 0, - 33, 179, 5, 184, 265, 180, 6, 0, 4, 5, - 185, 199, 186, 6, 0, 4, 5, 4, 257, 185, - 199, 186, 6, 0, 0, 199, 201, 0, 199, 204, - 0, 199, 207, 0, 199, 210, 0, 199, 213, 0, - 199, 216, 0, 199, 219, 0, 199, 222, 0, 199, - 225, 0, 199, 228, 0, 199, 231, 0, 199, 234, - 0, 255, 0, 200, 184, 255, 0, 0, 80, 179, - 255, 184, 255, 184, 255, 180, 202, 185, 200, 186, - 6, 0, 255, 0, 203, 184, 255, 0, 0, 81, - 179, 255, 184, 255, 184, 255, 180, 205, 185, 203, - 186, 6, 0, 255, 0, 206, 184, 255, 0, 0, - 82, 179, 255, 184, 255, 184, 255, 180, 208, 185, - 206, 186, 6, 0, 255, 0, 209, 184, 255, 0, - 0, 77, 179, 255, 184, 255, 184, 255, 184, 255, - 184, 255, 184, 255, 180, 211, 185, 209, 186, 6, - 0, 255, 0, 212, 184, 255, 0, 0, 78, 179, - 255, 184, 255, 184, 255, 184, 255, 184, 255, 184, - 255, 180, 214, 185, 212, 186, 6, 0, 255, 0, - 215, 184, 255, 0, 0, 79, 179, 255, 184, 255, - 184, 255, 184, 255, 184, 255, 184, 255, 180, 217, - 185, 215, 186, 6, 0, 255, 0, 218, 184, 255, - 0, 0, 74, 179, 255, 184, 255, 184, 255, 184, - 255, 184, 255, 184, 255, 184, 255, 184, 255, 184, - 255, 180, 220, 185, 218, 186, 6, 0, 255, 0, - 221, 184, 255, 0, 0, 75, 179, 255, 184, 255, - 184, 255, 184, 255, 184, 255, 184, 255, 184, 255, - 184, 255, 184, 255, 180, 223, 185, 221, 186, 6, - 0, 255, 0, 224, 184, 255, 0, 0, 76, 179, - 255, 184, 255, 184, 255, 184, 255, 184, 255, 184, - 255, 184, 255, 184, 255, 184, 255, 180, 226, 185, - 224, 186, 6, 0, 255, 0, 227, 184, 255, 0, - 0, 71, 179, 255, 184, 255, 184, 255, 184, 255, - 184, 255, 184, 255, 184, 255, 184, 255, 184, 255, - 184, 255, 184, 255, 184, 255, 180, 229, 185, 227, - 186, 6, 0, 255, 0, 230, 184, 255, 0, 0, - 72, 179, 255, 184, 255, 184, 255, 184, 255, 184, - 255, 184, 255, 184, 255, 184, 255, 184, 255, 184, - 255, 184, 255, 184, 255, 180, 232, 185, 230, 186, - 6, 0, 255, 0, 233, 184, 255, 0, 0, 73, - 179, 255, 184, 255, 184, 255, 184, 255, 184, 255, - 184, 255, 184, 255, 184, 255, 184, 255, 184, 255, - 184, 255, 184, 255, 180, 235, 185, 233, 186, 6, - 0, 7, 0, 154, 0, 155, 0, 156, 0, 157, - 0, 175, 0, 176, 0, 4, 236, 255, 6, 0, - 4, 181, 255, 182, 236, 255, 6, 0, 4, 181, - 185, 265, 186, 182, 236, 263, 6, 0, 4, 181, - 182, 7, 263, 6, 0, 4, 237, 6, 0, 4, - 181, 255, 182, 237, 6, 0, 4, 183, 4, 7, - 269, 6, 0, 4, 181, 255, 182, 183, 4, 7, - 269, 6, 0, 4, 183, 4, 236, 255, 6, 0, - 4, 181, 255, 182, 183, 4, 236, 255, 6, 0, - 4, 183, 4, 237, 6, 0, 4, 181, 255, 182, - 183, 4, 237, 6, 0, 4, 183, 89, 183, 4, - 7, 266, 6, 0, 4, 181, 255, 182, 183, 89, - 183, 4, 7, 266, 6, 0, 4, 183, 90, 7, - 267, 6, 0, 4, 181, 255, 182, 183, 90, 7, - 267, 6, 0, 57, 179, 4, 180, 183, 4, 7, - 255, 6, 0, 57, 179, 4, 180, 183, 4, 7, - 269, 6, 0, 38, 179, 255, 180, 7, 257, 6, - 0, 53, 38, 179, 255, 180, 7, 263, 6, 0, - 69, 38, 263, 7, 185, 255, 184, 255, 184, 255, - 186, 6, 0, 45, 46, 263, 7, 255, 6, 0, - 38, 185, 255, 186, 6, 0, 41, 179, 255, 180, - 7, 263, 6, 0, 43, 179, 255, 180, 7, 263, - 6, 0, 69, 41, 263, 7, 185, 255, 184, 255, - 184, 255, 186, 6, 0, 39, 179, 255, 180, 7, - 263, 6, 0, 40, 179, 255, 180, 7, 263, 6, - 0, 39, 179, 255, 180, 7, 263, 49, 257, 6, - 0, 47, 179, 255, 180, 7, 185, 255, 184, 255, - 184, 5, 184, 5, 184, 5, 186, 6, 0, 53, - 41, 179, 255, 180, 7, 263, 6, 0, 41, 64, - 179, 255, 180, 7, 263, 6, 0, 83, 179, 255, - 180, 7, 263, 6, 0, 84, 179, 255, 180, 7, - 263, 88, 263, 85, 255, 6, 0, 41, 185, 255, - 186, 6, 0, 49, 42, 179, 255, 180, 7, 263, - 6, 0, 144, 42, 179, 255, 180, 7, 185, 255, - 184, 263, 186, 6, 0, 50, 42, 179, 255, 180, - 7, 263, 6, 0, 84, 42, 86, 87, 179, 255, - 180, 7, 261, 88, 185, 263, 184, 263, 186, 85, - 185, 255, 184, 255, 186, 6, 0, 84, 42, 179, - 255, 180, 7, 261, 88, 185, 263, 184, 263, 186, - 85, 185, 255, 184, 255, 186, 6, 0, 53, 42, - 179, 255, 180, 7, 263, 6, 0, 42, 64, 179, - 255, 180, 7, 263, 6, 0, 42, 185, 255, 186, - 6, 0, 52, 44, 179, 255, 180, 7, 263, 6, - 0, 44, 179, 255, 180, 7, 263, 6, 0, 53, - 44, 179, 255, 180, 7, 263, 6, 0, 59, 257, - 185, 241, 186, 0, 58, 185, 257, 184, 257, 184, - 255, 186, 185, 241, 186, 0, 60, 257, 185, 241, - 186, 0, 61, 185, 257, 184, 255, 186, 185, 241, - 186, 0, 243, 0, 242, 0, 240, 0, 0, 242, - 239, 0, 63, 185, 242, 186, 0, 66, 185, 242, - 186, 0, 66, 4, 181, 255, 182, 6, 0, 66, - 100, 6, 0, 4, 269, 6, 0, 4, 255, 6, - 0, 57, 179, 4, 180, 183, 4, 6, 0, 96, - 6, 0, 37, 6, 0, 91, 179, 255, 8, 255, - 180, 0, 91, 179, 255, 8, 255, 8, 255, 180, - 0, 91, 4, 92, 185, 255, 8, 255, 186, 0, - 91, 4, 92, 185, 255, 8, 255, 8, 255, 186, - 0, 93, 0, 99, 4, 0, 97, 0, 98, 4, - 6, 0, 94, 179, 255, 180, 0, 95, 0, 62, - 38, 185, 255, 184, 257, 186, 6, 0, 62, 38, - 185, 255, 184, 257, 184, 257, 184, 255, 186, 6, - 0, 62, 41, 185, 255, 184, 257, 186, 6, 0, - 62, 41, 185, 255, 184, 257, 184, 257, 184, 255, - 186, 6, 0, 62, 42, 185, 255, 184, 257, 186, - 6, 0, 62, 42, 185, 255, 184, 257, 184, 257, - 184, 255, 186, 6, 0, 0, 62, 42, 185, 255, - 184, 257, 186, 248, 185, 250, 186, 6, 0, 0, - 62, 42, 185, 255, 184, 257, 184, 257, 184, 255, - 186, 249, 185, 250, 186, 6, 0, 251, 0, 250, - 251, 0, 70, 185, 263, 184, 263, 184, 263, 186, - 6, 0, 65, 6, 0, 51, 41, 263, 7, 255, - 6, 0, 51, 41, 263, 7, 255, 54, 56, 255, - 6, 0, 51, 41, 263, 7, 255, 54, 55, 255, - 6, 0, 51, 42, 185, 255, 186, 7, 263, 6, - 0, 48, 42, 185, 255, 186, 7, 263, 6, 0, - 51, 44, 185, 255, 186, 7, 263, 6, 0, 65, - 42, 263, 7, 255, 6, 0, 65, 42, 263, 6, - 0, 67, 6, 0, 68, 6, 0, 104, 0, 105, - 0, 106, 0, 107, 0, 108, 0, 256, 0, 179, - 255, 180, 0, 169, 255, 0, 168, 255, 0, 174, - 255, 0, 255, 169, 255, 0, 255, 168, 255, 0, - 255, 170, 255, 0, 255, 171, 255, 0, 255, 172, - 255, 0, 255, 178, 255, 0, 255, 164, 255, 0, - 255, 166, 255, 0, 255, 165, 255, 0, 255, 167, - 255, 0, 255, 161, 255, 0, 255, 162, 255, 0, - 255, 160, 255, 0, 255, 159, 255, 0, 255, 158, - 255, 8, 255, 0, 12, 179, 255, 180, 0, 13, - 179, 255, 180, 0, 14, 179, 255, 180, 0, 15, - 179, 255, 180, 0, 16, 179, 255, 180, 0, 17, - 179, 255, 180, 0, 18, 179, 255, 180, 0, 19, - 179, 255, 180, 0, 20, 179, 255, 180, 0, 22, - 179, 255, 180, 0, 23, 179, 255, 184, 255, 180, - 0, 24, 179, 255, 180, 0, 25, 179, 255, 180, - 0, 26, 179, 255, 180, 0, 27, 179, 255, 180, - 0, 28, 179, 255, 180, 0, 29, 179, 255, 180, - 0, 30, 179, 255, 184, 255, 180, 0, 31, 179, - 255, 184, 255, 180, 0, 32, 179, 255, 184, 255, - 180, 0, 21, 179, 255, 180, 0, 3, 0, 9, - 0, 10, 0, 11, 0, 4, 0, 4, 181, 255, - 182, 0, 4, 237, 0, 4, 181, 255, 182, 237, - 0, 4, 183, 4, 0, 4, 181, 255, 182, 183, - 4, 0, 4, 183, 4, 237, 0, 4, 181, 255, - 182, 183, 4, 237, 0, 258, 0, 169, 257, 0, - 168, 257, 0, 257, 169, 257, 0, 257, 168, 257, - 0, 185, 255, 184, 255, 184, 255, 184, 255, 184, - 255, 186, 0, 185, 255, 184, 255, 184, 255, 184, - 255, 186, 0, 185, 255, 184, 255, 184, 255, 186, - 0, 179, 255, 184, 255, 184, 255, 180, 0, 0, - 179, 260, 180, 0, 5, 0, 260, 184, 5, 0, - 0, 185, 262, 186, 0, 179, 262, 180, 0, 263, - 0, 262, 184, 263, 0, 255, 0, 264, 0, 185, - 265, 186, 0, 169, 185, 265, 186, 0, 255, 8, - 255, 0, 255, 8, 255, 8, 255, 0, 4, 181, - 182, 0, 169, 4, 181, 182, 0, 4, 181, 185, - 265, 186, 182, 0, 169, 4, 181, 185, 265, 186, - 182, 0, 255, 0, 264, 0, 265, 184, 255, 0, - 265, 184, 264, 0, 185, 255, 184, 255, 184, 255, - 184, 255, 186, 0, 185, 255, 184, 255, 184, 255, - 186, 0, 4, 0, 4, 183, 89, 183, 4, 0, - 185, 268, 186, 0, 4, 181, 255, 182, 183, 90, - 0, 266, 0, 268, 184, 266, 0, 5, 0, 35, - 179, 269, 184, 269, 180, 0, 36, 179, 269, 180, - 0, 34, 179, 269, 180, 0, 34, 179, 269, 184, - 265, 180, 0, 34, 179, 4, 183, 4, 180, 0, - 34, 179, 4, 181, 255, 182, 183, 4, 180, 0 +static const short yyrhs[] = { 191, + 0, 190, 0, 196, 0, 1, 6, 0, 3, 0, + 170, 3, 0, 146, 0, 149, 150, 189, 189, 189, + 151, 152, 148, 189, 189, 189, 148, 189, 189, 189, + 148, 189, 189, 189, 153, 154, 0, 147, 0, 0, + 191, 192, 0, 193, 0, 195, 0, 194, 0, 120, + 6, 0, 121, 6, 0, 123, 6, 0, 122, 6, + 0, 124, 6, 0, 125, 180, 260, 185, 5, 181, + 6, 0, 126, 180, 260, 181, 6, 0, 127, 180, + 5, 185, 5, 185, 260, 185, 260, 185, 5, 185, + 5, 185, 5, 181, 6, 0, 3, 7, 104, 180, + 5, 185, 258, 181, 6, 0, 3, 7, 103, 180, + 5, 185, 256, 185, 264, 185, 255, 185, 255, 185, + 255, 185, 264, 185, 264, 185, 255, 181, 6, 0, + 3, 7, 102, 180, 5, 185, 256, 185, 256, 185, + 262, 185, 255, 185, 255, 185, 255, 185, 255, 185, + 264, 185, 264, 185, 264, 185, 264, 185, 255, 181, + 6, 0, 3, 7, 110, 180, 5, 185, 3, 185, + 3, 185, 3, 185, 255, 181, 6, 0, 3, 7, + 114, 180, 5, 185, 3, 185, 255, 181, 6, 0, + 3, 7, 131, 180, 5, 185, 3, 185, 255, 181, + 6, 0, 3, 7, 112, 180, 5, 185, 171, 185, + 171, 185, 256, 185, 255, 181, 6, 0, 3, 7, + 115, 180, 5, 185, 264, 181, 6, 0, 3, 7, + 116, 180, 5, 185, 264, 185, 3, 185, 255, 181, + 6, 0, 3, 7, 111, 180, 5, 185, 3, 181, + 6, 0, 3, 7, 117, 180, 5, 185, 3, 185, + 256, 181, 6, 0, 3, 7, 119, 180, 5, 185, + 3, 185, 3, 185, 3, 181, 6, 0, 3, 7, + 118, 180, 5, 185, 258, 181, 6, 0, 3, 7, + 113, 180, 5, 185, 3, 181, 6, 0, 3, 7, + 41, 180, 5, 185, 3, 185, 3, 181, 6, 0, + 3, 7, 129, 180, 5, 185, 264, 181, 6, 0, + 3, 7, 130, 180, 5, 185, 264, 185, 3, 181, + 6, 0, 3, 7, 128, 180, 5, 185, 3, 181, + 6, 0, 3, 7, 132, 180, 5, 185, 3, 185, + 256, 181, 6, 0, 3, 7, 133, 180, 5, 185, + 3, 185, 256, 185, 256, 181, 6, 0, 3, 7, + 140, 180, 5, 185, 3, 185, 256, 185, 256, 181, + 6, 0, 3, 7, 134, 180, 5, 185, 3, 185, + 256, 181, 6, 0, 3, 7, 144, 180, 5, 185, + 3, 185, 256, 185, 256, 181, 6, 0, 3, 7, + 135, 180, 5, 185, 3, 185, 264, 185, 264, 185, + 255, 185, 255, 181, 6, 0, 3, 7, 136, 180, + 5, 185, 264, 181, 6, 0, 3, 7, 137, 180, + 138, 185, 255, 185, 3, 181, 6, 0, 3, 7, + 139, 180, 5, 185, 264, 185, 255, 181, 6, 0, + 3, 7, 141, 180, 5, 185, 5, 185, 3, 185, + 3, 181, 6, 0, 3, 7, 142, 180, 5, 185, + 5, 185, 3, 181, 6, 0, 3, 7, 143, 180, + 3, 185, 3, 181, 6, 0, 0, 196, 197, 0, + 199, 0, 198, 0, 239, 0, 240, 0, 241, 0, + 244, 0, 245, 0, 248, 0, 253, 0, 254, 0, + 247, 0, 246, 0, 33, 180, 5, 181, 6, 0, + 33, 180, 5, 185, 266, 181, 6, 0, 4, 5, + 186, 200, 187, 6, 0, 4, 5, 4, 258, 186, + 200, 187, 6, 0, 0, 200, 202, 0, 200, 205, + 0, 200, 208, 0, 200, 211, 0, 200, 214, 0, + 200, 217, 0, 200, 220, 0, 200, 223, 0, 200, + 226, 0, 200, 229, 0, 200, 232, 0, 200, 235, + 0, 256, 0, 201, 185, 256, 0, 0, 80, 180, + 256, 185, 256, 185, 256, 181, 203, 186, 201, 187, + 6, 0, 256, 0, 204, 185, 256, 0, 0, 81, + 180, 256, 185, 256, 185, 256, 181, 206, 186, 204, + 187, 6, 0, 256, 0, 207, 185, 256, 0, 0, + 82, 180, 256, 185, 256, 185, 256, 181, 209, 186, + 207, 187, 6, 0, 256, 0, 210, 185, 256, 0, + 0, 77, 180, 256, 185, 256, 185, 256, 185, 256, + 185, 256, 185, 256, 181, 212, 186, 210, 187, 6, + 0, 256, 0, 213, 185, 256, 0, 0, 78, 180, + 256, 185, 256, 185, 256, 185, 256, 185, 256, 185, + 256, 181, 215, 186, 213, 187, 6, 0, 256, 0, + 216, 185, 256, 0, 0, 79, 180, 256, 185, 256, + 185, 256, 185, 256, 185, 256, 185, 256, 181, 218, + 186, 216, 187, 6, 0, 256, 0, 219, 185, 256, + 0, 0, 74, 180, 256, 185, 256, 185, 256, 185, + 256, 185, 256, 185, 256, 185, 256, 185, 256, 185, + 256, 181, 221, 186, 219, 187, 6, 0, 256, 0, + 222, 185, 256, 0, 0, 75, 180, 256, 185, 256, + 185, 256, 185, 256, 185, 256, 185, 256, 185, 256, + 185, 256, 185, 256, 181, 224, 186, 222, 187, 6, + 0, 256, 0, 225, 185, 256, 0, 0, 76, 180, + 256, 185, 256, 185, 256, 185, 256, 185, 256, 185, + 256, 185, 256, 185, 256, 185, 256, 181, 227, 186, + 225, 187, 6, 0, 256, 0, 228, 185, 256, 0, + 0, 71, 180, 256, 185, 256, 185, 256, 185, 256, + 185, 256, 185, 256, 185, 256, 185, 256, 185, 256, + 185, 256, 185, 256, 185, 256, 181, 230, 186, 228, + 187, 6, 0, 256, 0, 231, 185, 256, 0, 0, + 72, 180, 256, 185, 256, 185, 256, 185, 256, 185, + 256, 185, 256, 185, 256, 185, 256, 185, 256, 185, + 256, 185, 256, 185, 256, 181, 233, 186, 231, 187, + 6, 0, 256, 0, 234, 185, 256, 0, 0, 73, + 180, 256, 185, 256, 185, 256, 185, 256, 185, 256, + 185, 256, 185, 256, 185, 256, 185, 256, 185, 256, + 185, 256, 185, 256, 181, 236, 186, 234, 187, 6, + 0, 7, 0, 155, 0, 156, 0, 157, 0, 158, + 0, 176, 0, 177, 0, 4, 237, 256, 6, 0, + 4, 182, 256, 183, 237, 256, 6, 0, 4, 182, + 186, 266, 187, 183, 237, 264, 6, 0, 4, 182, + 183, 7, 264, 6, 0, 4, 238, 6, 0, 4, + 182, 256, 183, 238, 6, 0, 4, 184, 4, 7, + 270, 6, 0, 4, 182, 256, 183, 184, 4, 7, + 270, 6, 0, 4, 184, 4, 237, 256, 6, 0, + 4, 182, 256, 183, 184, 4, 237, 256, 6, 0, + 4, 184, 4, 238, 6, 0, 4, 182, 256, 183, + 184, 4, 238, 6, 0, 4, 184, 90, 184, 4, + 7, 267, 6, 0, 4, 182, 256, 183, 184, 90, + 184, 4, 7, 267, 6, 0, 4, 184, 91, 7, + 268, 6, 0, 4, 182, 256, 183, 184, 91, 7, + 268, 6, 0, 57, 180, 4, 181, 184, 4, 7, + 256, 6, 0, 57, 180, 4, 181, 184, 4, 7, + 270, 6, 0, 38, 180, 256, 181, 7, 258, 6, + 0, 53, 38, 180, 256, 181, 7, 264, 6, 0, + 69, 38, 264, 7, 186, 256, 185, 256, 185, 256, + 187, 6, 0, 45, 46, 264, 7, 256, 6, 0, + 38, 186, 256, 187, 6, 0, 41, 180, 256, 181, + 7, 264, 6, 0, 43, 180, 256, 181, 7, 264, + 6, 0, 69, 41, 264, 7, 186, 256, 185, 256, + 185, 256, 187, 6, 0, 39, 180, 256, 181, 7, + 264, 6, 0, 40, 180, 256, 181, 7, 264, 6, + 0, 39, 180, 256, 181, 7, 264, 49, 258, 6, + 0, 47, 180, 256, 181, 7, 186, 256, 185, 256, + 185, 5, 185, 5, 185, 5, 187, 6, 0, 53, + 41, 180, 256, 181, 7, 264, 6, 0, 41, 64, + 180, 256, 181, 7, 264, 6, 0, 83, 180, 256, + 181, 7, 264, 6, 0, 84, 180, 256, 181, 7, + 264, 6, 0, 85, 180, 256, 181, 7, 264, 89, + 264, 86, 256, 6, 0, 41, 186, 256, 187, 6, + 0, 49, 42, 180, 256, 181, 7, 264, 6, 0, + 145, 42, 180, 256, 181, 7, 186, 256, 185, 264, + 187, 6, 0, 50, 42, 180, 256, 181, 7, 264, + 6, 0, 85, 42, 87, 88, 180, 256, 181, 7, + 262, 89, 186, 264, 185, 264, 187, 86, 186, 256, + 185, 256, 187, 6, 0, 85, 42, 180, 256, 181, + 7, 262, 89, 186, 264, 185, 264, 187, 86, 186, + 256, 185, 256, 187, 6, 0, 53, 42, 180, 256, + 181, 7, 264, 6, 0, 42, 64, 180, 256, 181, + 7, 264, 6, 0, 42, 186, 256, 187, 6, 0, + 52, 44, 180, 256, 181, 7, 264, 6, 0, 44, + 180, 256, 181, 7, 264, 6, 0, 53, 44, 180, + 256, 181, 7, 264, 6, 0, 59, 258, 186, 242, + 187, 0, 58, 186, 258, 185, 258, 185, 256, 187, + 186, 242, 187, 0, 60, 258, 186, 242, 187, 0, + 61, 186, 258, 185, 256, 187, 186, 242, 187, 0, + 244, 0, 243, 0, 241, 0, 0, 243, 240, 0, + 63, 186, 243, 187, 0, 66, 186, 243, 187, 0, + 66, 4, 182, 256, 183, 6, 0, 66, 101, 6, + 0, 4, 270, 6, 0, 4, 256, 6, 0, 57, + 180, 4, 181, 184, 4, 6, 0, 97, 6, 0, + 37, 6, 0, 92, 180, 256, 8, 256, 181, 0, + 92, 180, 256, 8, 256, 8, 256, 181, 0, 92, + 4, 93, 186, 256, 8, 256, 187, 0, 92, 4, + 93, 186, 256, 8, 256, 8, 256, 187, 0, 94, + 0, 100, 4, 0, 98, 0, 99, 4, 6, 0, + 95, 180, 256, 181, 0, 96, 0, 62, 38, 186, + 256, 185, 258, 187, 6, 0, 62, 38, 186, 256, + 185, 258, 185, 258, 185, 256, 187, 6, 0, 62, + 41, 186, 256, 185, 258, 187, 6, 0, 62, 41, + 186, 256, 185, 258, 185, 258, 185, 256, 187, 6, + 0, 62, 42, 186, 256, 185, 258, 187, 6, 0, + 62, 42, 186, 256, 185, 258, 185, 258, 185, 256, + 187, 6, 0, 0, 62, 42, 186, 256, 185, 258, + 187, 249, 186, 251, 187, 6, 0, 0, 62, 42, + 186, 256, 185, 258, 185, 258, 185, 256, 187, 250, + 186, 251, 187, 6, 0, 252, 0, 251, 252, 0, + 70, 186, 264, 185, 264, 185, 264, 187, 6, 0, + 65, 6, 0, 51, 41, 264, 7, 256, 6, 0, + 51, 41, 264, 7, 256, 54, 56, 256, 6, 0, + 51, 41, 264, 7, 256, 54, 55, 256, 6, 0, + 51, 42, 186, 256, 187, 7, 264, 6, 0, 48, + 42, 186, 256, 187, 7, 264, 6, 0, 51, 44, + 186, 256, 187, 7, 264, 6, 0, 65, 42, 264, + 7, 256, 6, 0, 65, 42, 264, 6, 0, 67, + 6, 0, 68, 6, 0, 105, 0, 106, 0, 107, + 0, 108, 0, 109, 0, 257, 0, 180, 256, 181, + 0, 170, 256, 0, 169, 256, 0, 175, 256, 0, + 256, 170, 256, 0, 256, 169, 256, 0, 256, 171, + 256, 0, 256, 172, 256, 0, 256, 173, 256, 0, + 256, 179, 256, 0, 256, 165, 256, 0, 256, 167, + 256, 0, 256, 166, 256, 0, 256, 168, 256, 0, + 256, 162, 256, 0, 256, 163, 256, 0, 256, 161, + 256, 0, 256, 160, 256, 0, 256, 159, 256, 8, + 256, 0, 12, 180, 256, 181, 0, 13, 180, 256, + 181, 0, 14, 180, 256, 181, 0, 15, 180, 256, + 181, 0, 16, 180, 256, 181, 0, 17, 180, 256, + 181, 0, 18, 180, 256, 181, 0, 19, 180, 256, + 181, 0, 20, 180, 256, 181, 0, 22, 180, 256, + 181, 0, 23, 180, 256, 185, 256, 181, 0, 24, + 180, 256, 181, 0, 25, 180, 256, 181, 0, 26, + 180, 256, 181, 0, 27, 180, 256, 181, 0, 28, + 180, 256, 181, 0, 29, 180, 256, 181, 0, 30, + 180, 256, 185, 256, 181, 0, 31, 180, 256, 185, + 256, 181, 0, 32, 180, 256, 185, 256, 181, 0, + 21, 180, 256, 181, 0, 3, 0, 9, 0, 10, + 0, 11, 0, 4, 0, 4, 182, 256, 183, 0, + 4, 238, 0, 4, 182, 256, 183, 238, 0, 4, + 184, 4, 0, 4, 182, 256, 183, 184, 4, 0, + 4, 184, 4, 238, 0, 4, 182, 256, 183, 184, + 4, 238, 0, 259, 0, 170, 258, 0, 169, 258, + 0, 258, 170, 258, 0, 258, 169, 258, 0, 186, + 256, 185, 256, 185, 256, 185, 256, 185, 256, 187, + 0, 186, 256, 185, 256, 185, 256, 185, 256, 187, + 0, 186, 256, 185, 256, 185, 256, 187, 0, 180, + 256, 185, 256, 185, 256, 181, 0, 0, 180, 261, + 181, 0, 5, 0, 261, 185, 5, 0, 0, 186, + 263, 187, 0, 180, 263, 181, 0, 264, 0, 263, + 185, 264, 0, 256, 0, 265, 0, 186, 266, 187, + 0, 170, 186, 266, 187, 0, 256, 8, 256, 0, + 256, 8, 256, 8, 256, 0, 4, 182, 183, 0, + 170, 4, 182, 183, 0, 4, 182, 186, 266, 187, + 183, 0, 170, 4, 182, 186, 266, 187, 183, 0, + 256, 0, 265, 0, 266, 185, 256, 0, 266, 185, + 265, 0, 186, 256, 185, 256, 185, 256, 185, 256, + 187, 0, 186, 256, 185, 256, 185, 256, 187, 0, + 4, 0, 4, 184, 90, 184, 4, 0, 186, 269, + 187, 0, 4, 182, 256, 183, 184, 91, 0, 267, + 0, 269, 185, 267, 0, 5, 0, 35, 180, 270, + 185, 270, 181, 0, 36, 180, 270, 181, 0, 34, + 180, 270, 181, 0, 34, 180, 270, 185, 266, 181, + 0, 34, 180, 4, 184, 4, 181, 0, 34, 180, + 4, 182, 256, 183, 184, 4, 181, 0 }; #endif @@ -599,24 +601,24 @@ static const short yyrline[] = { 0, 824, 871, 886, 895, 910, 922, 936, 959, 983, 995, 1009, 1021, 1035, 1051, 1067, 1080, 1100, 1111, 1117, 1136, 1147, 1155, 1161, 1167, 1186, 1192, 1198, 1214, 1221, 1227, - 1233, 1244, 1263, 1275, 1281, 1300, 1321, 1329, 1335, 1341, - 1347, 1359, 1365, 1371, 1383, 1389, 1394, 1399, 1406, 1408, - 1409, 1412, 1417, 1428, 1446, 1454, 1459, 1470, 1538, 1558, - 1564, 1568, 1588, 1604, 1618, 1643, 1668, 1694, 1700, 1705, - 1710, 1714, 1724, 1730, 1736, 1740, 1744, 1748, 1752, 1757, - 1762, 1768, 1775, 1779, 1784, 1805, 1815, 1834, 1852, 1870, - 1892, 1913, 1934, 1948, 1969, 1974, 1985, 1987, 1988, 1989, - 1990, 1993, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, - 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, - 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027, 2028, + 1233, 1244, 1255, 1274, 1286, 1292, 1311, 1332, 1340, 1346, + 1352, 1358, 1370, 1376, 1382, 1394, 1400, 1405, 1410, 1417, + 1419, 1420, 1423, 1428, 1439, 1457, 1465, 1470, 1481, 1549, + 1569, 1575, 1579, 1599, 1615, 1629, 1654, 1679, 1705, 1711, + 1716, 1721, 1725, 1735, 1741, 1747, 1751, 1755, 1759, 1763, + 1768, 1773, 1779, 1786, 1790, 1795, 1816, 1826, 1845, 1863, + 1881, 1903, 1924, 1945, 1959, 1980, 1985, 1996, 1998, 1999, + 2000, 2001, 2004, 2006, 2007, 2008, 2009, 2010, 2011, 2012, + 2013, 2020, 2021, 2022, 2023, 2024, 2025, 2026, 2027, 2028, 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, 2038, - 2039, 2040, 2045, 2050, 2051, 2052, 2056, 2067, 2084, 2095, - 2114, 2130, 2146, 2162, 2179, 2184, 2188, 2192, 2196, 2201, - 2206, 2210, 2214, 2220, 2224, 2229, 2233, 2238, 2242, 2246, - 2252, 2258, 2265, 2271, 2275, 2279, 2289, 2296, 2307, 2321, - 2337, 2357, 2381, 2387, 2391, 2395, 2406, 2411, 2422, 2427, - 2445, 2450, 2463, 2469, 2475, 2480, 2488, 2501, 2505, 2530, - 2544 + 2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, 2048, + 2049, 2050, 2051, 2056, 2061, 2062, 2063, 2067, 2078, 2095, + 2106, 2125, 2141, 2157, 2173, 2190, 2195, 2199, 2203, 2207, + 2212, 2217, 2221, 2225, 2231, 2235, 2240, 2244, 2249, 2253, + 2257, 2263, 2269, 2276, 2282, 2286, 2290, 2300, 2307, 2318, + 2332, 2348, 2368, 2392, 2398, 2402, 2406, 2417, 2422, 2433, + 2438, 2456, 2461, 2474, 2480, 2486, 2491, 2499, 2512, 2516, + 2541, 2555 }; #endif @@ -635,13 +637,13 @@ static const char * const yytname[] = { "$","error","$undefined.","tDOUBLE", "tIntersect","tAttractor","tLayers","tScalarTetrahedron","tVectorTetrahedron", "tTensorTetrahedron","tScalarTriangle","tVectorTriangle","tTensorTriangle","tScalarLine", "tVectorLine","tTensorLine","tScalarPoint","tVectorPoint","tTensorPoint","tBSpline", -"tNurbs","tOrder","tWith","tBounds","tKnots","tColor","tColorTable","tFor","tIn", -"tEndFor","tIf","tEndIf","tExit","tReturn","tCall","tFunction","tMesh","tB_SPLINE_SURFACE_WITH_KNOTS", -"tB_SPLINE_CURVE_WITH_KNOTS","tCARTESIAN_POINT","tTRUE","tFALSE","tUNSPECIFIED", -"tU","tV","tEDGE_CURVE","tVERTEX_POINT","tORIENTED_EDGE","tPLANE","tFACE_OUTER_BOUND", -"tEDGE_LOOP","tADVANCED_FACE","tVECTOR","tDIRECTION","tAXIS2_PLACEMENT_3D","tISO", -"tENDISO","tENDSEC","tDATA","tHEADER","tFILE_DESCRIPTION","tFILE_SCHEMA","tFILE_NAME", -"tMANIFOLD_SOLID_BREP","tCLOSED_SHELL","tADVANCED_BREP_SHAPE_REPRESENTATION", +"tBezier","tNurbs","tOrder","tWith","tBounds","tKnots","tColor","tColorTable", +"tFor","tIn","tEndFor","tIf","tEndIf","tExit","tReturn","tCall","tFunction", +"tMesh","tB_SPLINE_SURFACE_WITH_KNOTS","tB_SPLINE_CURVE_WITH_KNOTS","tCARTESIAN_POINT", +"tTRUE","tFALSE","tUNSPECIFIED","tU","tV","tEDGE_CURVE","tVERTEX_POINT","tORIENTED_EDGE", +"tPLANE","tFACE_OUTER_BOUND","tEDGE_LOOP","tADVANCED_FACE","tVECTOR","tDIRECTION", +"tAXIS2_PLACEMENT_3D","tISO","tENDISO","tENDSEC","tDATA","tHEADER","tFILE_DESCRIPTION", +"tFILE_SCHEMA","tFILE_NAME","tMANIFOLD_SOLID_BREP","tCLOSED_SHELL","tADVANCED_BREP_SHAPE_REPRESENTATION", "tFACE_BOUND","tCYLINDRICAL_SURFACE","tCONICAL_SURFACE","tCIRCLE","tTRIMMED_CURVE", "tGEOMETRIC_SET","tCOMPOSITE_CURVE_SEGMENT","tCONTINUOUS","tCOMPOSITE_CURVE", "tTOROIDAL_SURFACE","tPRODUCT_DEFINITION","tPRODUCT_DEFINITION_SHAPE","tSHAPE_DEFINITION_REPRESENTATION", @@ -669,41 +671,41 @@ static const char * const yytname[] = { "$","error","$undefined.","tDOUBLE", #endif static const short yyr1[] = { 0, - 187, 187, 187, 187, 188, 188, 189, 189, 189, 190, - 190, 191, 191, 191, 192, 192, 192, 192, 192, 193, - 193, 193, 194, 194, 194, 194, 194, 194, 194, 194, - 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, - 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, - 194, 194, 195, 195, 196, 196, 196, 196, 196, 196, - 196, 196, 196, 196, 196, 196, 197, 197, 198, 198, - 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 200, 200, 202, 201, 203, 203, 205, - 204, 206, 206, 208, 207, 209, 209, 211, 210, 212, - 212, 214, 213, 215, 215, 217, 216, 218, 218, 220, - 219, 221, 221, 223, 222, 224, 224, 226, 225, 227, - 227, 229, 228, 230, 230, 232, 231, 233, 233, 235, - 234, 236, 236, 236, 236, 236, 237, 237, 238, 238, - 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, - 238, 238, 238, 238, 238, 238, 239, 239, 239, 239, + 188, 188, 188, 188, 189, 189, 190, 190, 190, 191, + 191, 192, 192, 192, 193, 193, 193, 193, 193, 194, + 194, 194, 195, 195, 195, 195, 195, 195, 195, 195, + 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, + 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, + 195, 195, 196, 196, 197, 197, 197, 197, 197, 197, + 197, 197, 197, 197, 197, 197, 198, 198, 199, 199, + 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, + 200, 200, 200, 201, 201, 203, 202, 204, 204, 206, + 205, 207, 207, 209, 208, 210, 210, 212, 211, 213, + 213, 215, 214, 216, 216, 218, 217, 219, 219, 221, + 220, 222, 222, 224, 223, 225, 225, 227, 226, 228, + 228, 230, 229, 231, 231, 233, 232, 234, 234, 236, + 235, 237, 237, 237, 237, 237, 238, 238, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 240, 240, 240, 240, 241, 241, - 241, 242, 242, 243, 244, 244, 244, 245, 245, 245, - 245, 245, 246, 246, 246, 246, 246, 246, 246, 246, - 246, 246, 247, 247, 247, 247, 247, 247, 248, 247, - 249, 247, 250, 250, 251, 251, 252, 252, 252, 252, - 252, 252, 252, 252, 253, 253, 254, 254, 254, 254, - 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, - 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 239, 239, 239, 239, 239, 239, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 241, 241, 241, 241, 242, + 242, 242, 243, 243, 244, 245, 245, 245, 246, 246, + 246, 246, 246, 247, 247, 247, 247, 247, 247, 247, + 247, 247, 247, 248, 248, 248, 248, 248, 248, 249, + 248, 250, 248, 251, 251, 252, 252, 253, 253, 253, + 253, 253, 253, 253, 253, 254, 254, 255, 255, 255, 255, 255, 256, 256, 256, 256, 256, 256, 256, 256, - 256, 256, 256, 256, 257, 257, 257, 257, 257, 258, - 258, 258, 258, 259, 259, 260, 260, 261, 261, 261, - 262, 262, 263, 263, 263, 263, 264, 264, 264, 264, - 264, 264, 265, 265, 265, 265, 266, 266, 266, 266, - 267, 267, 268, 268, 269, 269, 269, 269, 269, 269, - 269 + 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 257, 257, 257, 257, 257, 257, 257, + 257, 257, 257, 257, 257, 258, 258, 258, 258, 258, + 259, 259, 259, 259, 260, 260, 261, 261, 262, 262, + 262, 263, 263, 264, 264, 264, 264, 265, 265, 265, + 265, 265, 265, 266, 266, 266, 266, 267, 267, 267, + 267, 268, 268, 269, 269, 270, 270, 270, 270, 270, + 270, 270 }; static const short yyr2[] = { 0, @@ -724,24 +726,24 @@ static const short yyr2[] = { 0, 9, 6, 3, 6, 6, 9, 6, 9, 5, 8, 8, 11, 6, 9, 9, 9, 7, 8, 12, 6, 5, 7, 7, 12, 7, 7, 9, 17, 8, 8, - 7, 11, 5, 8, 12, 8, 22, 20, 8, 8, - 5, 8, 7, 8, 5, 11, 5, 9, 1, 1, - 1, 0, 2, 4, 4, 6, 3, 3, 3, 7, - 2, 2, 6, 8, 8, 10, 1, 2, 1, 3, - 4, 1, 8, 12, 8, 12, 8, 12, 0, 12, - 0, 16, 1, 2, 9, 2, 6, 9, 9, 8, - 8, 8, 6, 4, 2, 2, 1, 1, 1, 1, - 1, 1, 3, 2, 2, 2, 3, 3, 3, 3, + 7, 7, 11, 5, 8, 12, 8, 22, 20, 8, + 8, 5, 8, 7, 8, 5, 11, 5, 9, 1, + 1, 1, 0, 2, 4, 4, 6, 3, 3, 3, + 7, 2, 2, 6, 8, 8, 10, 1, 2, 1, + 3, 4, 1, 8, 12, 8, 12, 8, 12, 0, + 12, 0, 16, 1, 2, 9, 2, 6, 9, 9, + 8, 8, 8, 6, 4, 2, 2, 1, 1, 1, + 1, 1, 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, 1, 1, 1, 1, 1, 4, 2, 5, - 3, 6, 4, 7, 1, 2, 2, 3, 3, 11, - 9, 7, 7, 0, 3, 1, 3, 0, 3, 3, - 1, 3, 1, 1, 3, 4, 3, 5, 3, 4, - 6, 7, 1, 1, 3, 3, 9, 7, 1, 5, - 3, 6, 1, 3, 1, 6, 4, 4, 6, 6, - 9 + 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, 4, 2, + 5, 3, 6, 4, 7, 1, 2, 2, 3, 3, + 11, 9, 7, 7, 0, 3, 1, 3, 0, 3, + 3, 1, 3, 1, 1, 3, 4, 3, 5, 3, + 4, 6, 7, 1, 1, 3, 3, 9, 7, 1, + 5, 3, 6, 1, 3, 1, 6, 4, 4, 6, + 6, 9 }; static const short yydefact[] = { 0, @@ -750,1666 +752,1678 @@ static const short yydefact[] = { 0, 14, 13, 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, 207, 0, 212, 0, 209, - 0, 0, 0, 54, 56, 55, 57, 58, 59, 60, - 61, 66, 65, 62, 63, 64, 5, 0, 0, 0, - 15, 16, 18, 17, 19, 304, 304, 0, 283, 287, - 335, 132, 284, 285, 286, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 208, 0, 213, 0, + 210, 0, 0, 0, 54, 56, 55, 57, 58, 59, + 60, 61, 66, 65, 62, 63, 64, 5, 0, 0, + 0, 15, 16, 18, 17, 19, 305, 305, 0, 284, + 288, 336, 132, 285, 286, 287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, - 134, 135, 136, 0, 0, 0, 137, 138, 0, 0, - 0, 0, 0, 0, 242, 0, 0, 202, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 133, 134, 135, 136, 0, 0, 0, 137, 138, 0, + 0, 0, 0, 0, 0, 243, 0, 0, 203, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 192, 0, 0, 0, 192, - 235, 236, 0, 0, 0, 0, 0, 0, 0, 0, - 201, 0, 208, 0, 6, 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, + 296, 0, 0, 0, 0, 0, 193, 0, 0, 0, + 193, 236, 237, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 202, 0, 209, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 289, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 245, - 244, 246, 0, 0, 0, 0, 0, 0, 0, 0, - 143, 199, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 198, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 287, 0, 0, 313, 0, 314, 0, 0, 0, 0, + 0, 0, 0, 0, 290, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 297, 296, 0, 0, 0, 0, 192, 192, 0, 0, - 0, 0, 0, 0, 0, 197, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 246, 245, 247, 0, 0, 0, 0, 0, 0, + 0, 0, 143, 200, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 199, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 288, 0, 0, 314, 0, 315, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 298, 297, 0, 0, 0, 0, 193, 193, + 0, 0, 0, 0, 0, 0, 0, 198, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 211, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 306, - 0, 0, 0, 0, 0, 291, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 335, 0, 0, 0, 243, 0, 0, 323, 324, 0, - 0, 132, 0, 0, 0, 0, 139, 0, 260, 259, - 257, 258, 253, 255, 254, 256, 248, 247, 249, 250, - 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 287, 0, 0, 0, + 0, 0, 307, 0, 0, 0, 0, 0, 292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 299, 298, 191, - 0, 190, 189, 0, 0, 0, 0, 0, 194, 193, - 234, 0, 0, 195, 0, 0, 0, 0, 0, 0, - 0, 0, 211, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 336, 0, 0, 0, 244, 0, 0, + 324, 325, 0, 0, 132, 0, 0, 0, 0, 139, + 0, 261, 260, 258, 259, 254, 256, 255, 257, 249, + 248, 250, 251, 252, 253, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 305, 0, 0, 21, 0, - 288, 293, 71, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 282, 271, 0, - 273, 274, 275, 276, 277, 278, 0, 0, 0, 0, - 0, 338, 0, 0, 337, 0, 0, 0, 0, 0, - 0, 0, 0, 149, 0, 0, 0, 0, 0, 67, - 0, 0, 161, 0, 0, 0, 0, 173, 0, 181, - 0, 0, 319, 0, 0, 0, 315, 317, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 185, 187, 0, 0, 0, + 300, 299, 192, 0, 191, 190, 0, 0, 0, 0, + 0, 195, 194, 235, 0, 0, 196, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 212, 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, 306, + 0, 0, 21, 0, 289, 294, 71, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 263, 264, 265, 266, 267, 268, 269, 270, + 271, 283, 272, 0, 274, 275, 276, 277, 278, 279, + 0, 0, 0, 0, 0, 339, 0, 0, 338, 0, + 0, 0, 0, 0, 0, 0, 0, 149, 0, 0, + 0, 0, 0, 67, 0, 0, 161, 0, 0, 0, + 0, 174, 0, 182, 0, 0, 320, 0, 0, 0, + 316, 318, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 186, + 188, 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, 307, 0, 304, 0, 290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, - 142, 325, 326, 0, 0, 0, 0, 0, 144, 145, - 147, 0, 0, 329, 0, 333, 0, 153, 261, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 320, - 0, 316, 0, 160, 0, 0, 0, 0, 227, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 308, 0, + 305, 0, 291, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, + 0, 0, 0, 0, 0, 142, 326, 327, 0, 0, + 0, 0, 0, 144, 145, 147, 0, 0, 330, 0, + 334, 0, 153, 262, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 321, 0, 317, 0, 160, 0, + 0, 0, 0, 228, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 233, 196, 0, 0, 0, - 0, 308, 0, 0, 0, 203, 0, 0, 0, 0, + 234, 197, 0, 0, 0, 0, 0, 309, 0, 0, + 0, 204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 238, 239, 240, + 241, 242, 0, 0, 0, 0, 0, 0, 0, 20, + 0, 293, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 273, 280, 281, 282, 0, + 341, 340, 337, 0, 132, 0, 0, 0, 0, 140, + 0, 0, 0, 0, 0, 332, 68, 157, 165, 0, + 166, 0, 162, 0, 163, 184, 0, 0, 319, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 237, 238, 239, 240, 241, 0, 0, 0, 0, - 0, 0, 0, 20, 0, 292, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 272, - 279, 280, 281, 0, 340, 339, 336, 0, 132, 0, - 0, 0, 0, 140, 0, 0, 0, 0, 0, 331, - 68, 157, 165, 0, 166, 0, 162, 0, 163, 183, - 0, 0, 318, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 200, 0, 0, 0, - 0, 192, 0, 0, 0, 0, 0, 219, 0, 0, - 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 201, 0, 0, 0, 0, 193, 0, 0, + 0, 0, 0, 220, 0, 0, 171, 172, 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, - 304, 294, 70, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 150, - 0, 0, 151, 0, 0, 0, 334, 0, 170, 180, - 321, 0, 0, 231, 174, 176, 0, 0, 230, 232, - 182, 158, 169, 179, 184, 0, 0, 0, 303, 0, - 302, 0, 0, 213, 0, 215, 0, 217, 0, 0, - 0, 308, 0, 311, 0, 0, 0, 0, 205, 204, - 0, 0, 0, 0, 0, 23, 0, 32, 0, 36, - 0, 30, 0, 0, 35, 0, 40, 38, 0, 0, - 0, 0, 0, 0, 47, 0, 0, 0, 0, 0, - 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 141, 146, 148, 0, - 154, 0, 0, 0, 167, 322, 0, 229, 228, 155, - 156, 192, 0, 188, 0, 0, 0, 0, 0, 0, - 0, 310, 0, 309, 0, 0, 0, 0, 0, 0, - 308, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 305, 295, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 150, 0, 0, 151, + 0, 0, 0, 335, 0, 170, 181, 322, 0, 0, + 232, 175, 177, 0, 0, 231, 233, 183, 158, 169, + 180, 185, 0, 0, 0, 304, 0, 303, 0, 0, + 214, 0, 216, 0, 218, 0, 0, 0, 309, 0, + 312, 0, 0, 0, 0, 206, 205, 0, 0, 0, + 0, 0, 23, 0, 32, 0, 36, 0, 30, 0, + 0, 35, 0, 40, 38, 0, 0, 0, 0, 0, + 0, 47, 0, 0, 0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 341, 0, 332, 330, 0, 0, 0, - 0, 301, 0, 0, 0, 0, 0, 0, 223, 0, - 0, 0, 312, 0, 0, 206, 0, 0, 37, 0, - 0, 0, 0, 27, 0, 33, 0, 39, 28, 41, - 0, 44, 0, 48, 49, 0, 0, 51, 0, 0, + 0, 0, 0, 141, 146, 148, 0, 154, 0, 0, + 0, 167, 323, 0, 230, 229, 155, 156, 193, 0, + 189, 0, 0, 0, 0, 0, 0, 0, 311, 0, + 310, 0, 0, 0, 0, 0, 0, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 152, 0, 0, 186, 0, 0, 0, 221, - 226, 0, 0, 224, 0, 0, 0, 0, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 86, 90, 94, 0, 328, 0, 300, 214, - 216, 218, 0, 0, 220, 159, 164, 0, 0, 175, - 0, 0, 0, 0, 0, 31, 34, 42, 0, 43, - 50, 45, 0, 0, 0, 0, 0, 0, 0, 0, + 342, 0, 333, 331, 0, 0, 0, 0, 302, 0, + 0, 0, 0, 0, 0, 224, 0, 0, 0, 313, + 0, 0, 207, 0, 0, 37, 0, 0, 0, 0, + 27, 0, 33, 0, 39, 28, 41, 0, 44, 0, + 48, 49, 0, 0, 51, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 152, + 0, 0, 187, 0, 0, 0, 222, 227, 0, 0, + 225, 0, 0, 0, 0, 173, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, + 90, 94, 0, 329, 0, 301, 215, 217, 219, 0, + 0, 221, 159, 164, 0, 0, 176, 0, 0, 0, + 0, 0, 31, 34, 42, 0, 43, 50, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 327, 0, 0, 0, 0, 0, 0, 0, 0, 26, - 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 84, 0, 88, 0, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 328, 0, 0, + 0, 0, 0, 0, 0, 0, 26, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 222, 0, 0, 0, 0, 0, - 0, 46, 22, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 85, 87, 89, 91, 93, 95, 168, 0, + 84, 0, 88, 0, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 98, 102, 106, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 178, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 96, 0, 100, 0, 104, 0, + 0, 223, 0, 0, 0, 0, 0, 0, 46, 22, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, + 87, 89, 91, 93, 95, 168, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 98, 102, + 106, 226, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 177, 0, 24, 0, 0, 0, - 0, 0, 0, 97, 99, 101, 103, 105, 107, 0, - 0, 0, 0, 110, 114, 118, 0, 0, 0, 0, + 0, 179, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 96, 0, 100, 0, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 108, 0, 112, 0, 116, + 0, 178, 0, 24, 0, 0, 0, 0, 0, 0, + 97, 99, 101, 103, 105, 107, 0, 0, 0, 0, + 110, 114, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 109, 111, 113, 115, 117, 119, - 0, 122, 126, 130, 25, 0, 0, 0, 0, 0, - 0, 0, 120, 0, 124, 0, 128, 0, 0, 0, - 0, 0, 0, 121, 123, 125, 127, 129, 131, 0, - 0, 0 + 0, 0, 108, 0, 112, 0, 116, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 109, 111, 113, 115, 117, 119, 0, 122, 126, + 130, 25, 0, 0, 0, 0, 0, 0, 0, 120, + 0, 124, 0, 128, 0, 0, 0, 0, 0, 0, + 121, 123, 125, 127, 129, 131, 0, 0, 0 }; -static const short yydefgoto[] = { 1540, - 79, 5, 6, 19, 20, 21, 22, 7, 64, 65, - 66, 388, 1313, 557, 1263, 1315, 558, 1264, 1317, 559, - 1265, 1424, 560, 1397, 1426, 561, 1398, 1428, 562, 1399, - 1485, 563, 1471, 1487, 564, 1472, 1489, 565, 1473, 1522, - 566, 1516, 1524, 567, 1517, 1526, 568, 1518, 132, 233, - 67, 490, 480, 481, 482, 483, 71, 72, 73, 74, - 999, 1233, 1138, 1139, 75, 76, 817, 304, 135, 169, - 170, 228, 381, 905, 1003, 1004, 306, 420, 736, 608, - 737, 136 +static const short yydefgoto[] = { 1547, + 80, 5, 6, 19, 20, 21, 22, 7, 65, 66, + 67, 391, 1320, 561, 1270, 1322, 562, 1271, 1324, 563, + 1272, 1431, 564, 1404, 1433, 565, 1405, 1435, 566, 1406, + 1492, 567, 1478, 1494, 568, 1479, 1496, 569, 1480, 1529, + 570, 1523, 1531, 571, 1524, 1533, 572, 1525, 133, 235, + 68, 493, 483, 484, 485, 486, 72, 73, 74, 75, + 1006, 1240, 1145, 1146, 76, 77, 823, 306, 136, 170, + 171, 230, 384, 912, 1010, 1011, 308, 423, 741, 612, + 742, 137 }; -static const short yypact[] = { 1927, - 108,-32768,-32768, -10,-32768, 27, 2128,-32768, 11, 176, - 136, 196, 228, 233, 269, 102, 119, 126,-32768,-32768, --32768,-32768, 1572, 162, 338, -75, 180, 190, -45, -44, - 212, 219, 283, 238, 339, 378, 384, 168, 386, 346, - 262, 274, 207, 207, 278, 202, 282, 428, 13, 475, - 476, 92, 334, -21, 8,-32768, 335,-32768, 496,-32768, - 514, 551, 520,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768, 553, 11, 1978, --32768,-32768,-32768,-32768,-32768, 389, 389, 567,-32768, 264, - 7,-32768,-32768,-32768,-32768, 405, 419, 439, 440, 444, - 445, 446, 447, 448, 449, 450, 451, 454, 456, 457, - 458, 461, 462, 467, 469, 495, 497, 513, 515,-32768, --32768,-32768,-32768, 67, 67, 67,-32768,-32768, 67, 522, - 70, 67, 569, 811,-32768, 593, 604,-32768, 67, 67, - 67, 67, 516, 67, 67, 518, 67, 67, 67, 984, - 67, 464, 519, 521, 984, 490, 508, 523, 526, 527, - 529, 530, 695, 207, 207, 207, 67, 67, 97,-32768, - 135, 207, 528, 544, 546,-32768, 984, 533, 705,-32768, --32768,-32768, 984, 984, 67, -14, 67, 644, 67, 67, --32768, 744,-32768, 574,-32768, 11, 575, 576, 577, 578, - 579, 580, 581, 584, 585, 586, 587, 588, 589, 592, - 594, 595, 620, 621, 622, 623, 624, 626, 627, 628, - 629, 632, 633, 634, 635, 637, 747, 638, 639, 640, - 67, 768,-32768, 207,-32768, 67, 67, 67, 67, 67, - 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, - 67, 67, 67, 67, 67, 67, 279, 242, 242, 643, - 643, 643, 4939, 818, 1606, 4814, 15, 646, 821, 952, --32768,-32768, 67, 67, 67, 67, 67, 67, 67, 67, - 67, 67, 67, 67, 67, 67, 67,-32768, -111, 4962, - 1976, 4985, 5008, 67, 5031, 2176, 67, 2199, 5054, 5077, - 285, 1507, 1606, 978, 823,-32768, 5100, 67, 67, 67, - 825, 67, 67, 67, 67, 67, 67, 67, 653, 104, --32768,-32768, 2567, 2588, 207, 207, 500, 500, 209, 67, - 67, 67, 313, 150, 67,-32768, 2016, 827, 829, 5123, - 731, 67, 5146, 659, 1674, 5169,-32768, 67, 688, 849, - 853, 855, 857, 858, 864, 865, 866, 867, 868, 869, - 870, 873, 874, 875, 876, 877, 878, 879, 880, 895, - 896, 897, 772, 898, 900, 905, 906, 909, 911,-32768, - 4, 913, 908, 914, 4839, 160, 204, 330, 5192, 5215, - 5238, 5261, 5284, 5307, 5330, 5353, 5376, 5399, 5422, 2609, - 5445, 5468, 5491, 5514, 5537, 5560, 2630, 2651, 2672, -152, --32768, 23, 736, 753,-32768, 984, 1778, 978,-32768, 132, - 21, 242, 67, 930, 933, 9,-32768, 1701, 573, 726, - 425, 425, 280, 280, 280, 280, 302, 302, 643, 643, - 643, 643, 932, 1606, 934, 936, 937, 939, 5583, 940, - 943, 5606, 946, 947, 948, 641, 329, 1606, 258, 67, - 67, 949, 2222, 5629, 5652, 67, 2245, 2268, 5675, 5698, - 5721, 5744, 5767, 770, 207, 67, 67,-32768,-32768,-32768, - 773, 1323,-32768, 774, 67, 2693, 2714, 2735,-32768,-32768, --32768, 67, 4864,-32768, 776, 778, 957, 786, 5790, 959, - 67, 67,-32768, 5813, 817, 790, 808, 833, 840, 850, - 851, 852, 854, 856, 859, 860, 862, 863, 881, 882, - 883, 884, 885, 886, 888, 889, 890, 893, 894, 899, - 901, 902, 904, 917, 918,-32768, 1032, 871,-32768, 919, - 164,-32768,-32768, 903, 925, 927, 928, 950, 953, 954, - 955, 956, 962, 972, 975, 1035,-32768,-32768,-32768,-32768, +static const short yypact[] = { 1984, + 61,-32768,-32768, -44,-32768, 428, 2206,-32768, 11, 114, + 106, 142, 148, 156, 165, -105, 20, 99,-32768,-32768, +-32768,-32768, 1591, 150, 179, -145, 184, 221, -39, -34, + 257, 268, 240, 275, 301, 380, 388, 236, 419, 285, + 295, 298, -56, -56, 299, 331, 319, 470, 0, 510, + 523, 263, 377, 379, -25, 9,-32768, 382,-32768, 536, +-32768, 556, 559, 522,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 562, 11, + 2058,-32768,-32768,-32768,-32768,-32768, 386, 386, 567,-32768, + -108, 5,-32768,-32768,-32768,-32768, 387, 395, 396, 397, + 399, 400, 402, 403, 404, 405, 406, 408, 409, 411, + 412, 413, 415, 416, 417, 418, 420, 421, 423, 424, +-32768,-32768,-32768,-32768, 33, 33, 33,-32768,-32768, 33, + 646, 66, 33, 611, 980,-32768, 612, 594,-32768, 33, + 33, 33, 33, 439, 33, 33, 440, 33, 33, 33, + 1514, 33, 436, 443, 447, 1514, 444, 445, 448, 449, + 452, 453, 454, 633, -56, -56, -56, 33, 33, -35, +-32768, 81, -56, 456, 458, 459,-32768, 1514, 464, 632, +-32768,-32768,-32768, 1514, 1514, 33, 33, -64, 33, 547, + 33, 33,-32768, 645,-32768, 473,-32768, 11, 499, 500, + 501, 514, 527, 529, 530, 531, 532, 533, 534, 538, + 539, 540, 541, 542, 543, 545, 546, 548, 549, 550, + 551, 552, 554, 570, 577, 589, 590, 591, 649, 588, + 535, 595, 33, 723,-32768, -56,-32768, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, 170, 234, + 234, 557, 557, 557, 4972, 767, 68, 4847, 229, 622, + 768, 1014,-32768,-32768, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, 33,-32768, + -20, 4995, 2207, 5018, 5041, 33, 5064, 2230, 33, 2253, + 5087, 5110, 241, 1559, 68, 1180, 771,-32768, 5133, 33, + 33, 33, 772, 33, 33, 33, 33, 33, 33, 33, + 626, -27,-32768,-32768, 2055, 2621, -56, -56, 384, 384, + 105, 33, 33, 33, 2074, 239, 33,-32768, 2097, 801, + 802, 5156, 5179, 724, 33, 5202, 627, 1750, 5225,-32768, + 33, 663, 812, 813, 814, 815, 817, 818, 819, 820, + 822, 823, 825, 826, 829, 830, 831, 832, 833, 834, + 835, 837, 838, 839, 840, 708, 843, 844, 845, 846, + 849, 848,-32768, 132, 850, 851, 853, 4872, 198, 155, + 624, 5248, 5271, 5294, 5317, 5340, 5363, 5386, 5409, 5432, + 5455, 5478, 2642, 5501, 5524, 5547, 5570, 5593, 5616, 2663, + 2684, 2705, 8,-32768, 214, 671, 678,-32768, 1514, 1693, + 1180,-32768, 27, 163, 234, 33, 854, 860, 12,-32768, + 1774, 799, 593, 442, 442, 242, 242, 242, 242, -40, + -40, 557, 557, 557, 557, 859, 68, 861, 863, 866, + 868, 5639, 869, 871, 5662, 872, 873, 874, 773, 250, + 68, 159, 33, 33, 877, 2276, 5685, 5708, 33, 2299, + 2322, 5731, 5754, 5777, 5800, 5823, 682, -56, 33, 33, +-32768,-32768,-32768, 680, 1329,-32768, 692, 33, 2726, 2747, + 2768,-32768,-32768,-32768, 33, 4897,-32768, 699, 700, 880, + 881, 709, 5846, 883, 33, 33,-32768, 5869, 739, 707, + 710, 712, 713, 714, 715, 716, 717, 718, 719, 720, + 722, 725, 726, 727, 731, 732, 733, 734, 736, 737, + 738, 740, 741, 742, 755, 756, 759, 760, 761,-32768, + 889, 728,-32768, 762, 65,-32768,-32768, 774, 775, 778, + 783, 793, 795, 796, 797, 804, 805, 811, 841, 902, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 67, --32768,-32768,-32768,-32768,-32768,-32768, 67, 67, 67, 67, - 1038,-32768, 1606, 242,-32768, 1039, 1606, 944, 159, 67, - 1042, 1043, 1012,-32768, 1051, 974, 14, 1044, 67,-32768, - 147, 207,-32768, 984, 984, 1052, 984,-32768, 1053,-32768, - 984, 984,-32768, 1606, 766, 314,-32768, 1716, 1049, 924, - 1054, 1055, 1057, 861, 1073, 1074, 1108, 1120, 1124, 1150, - 1152, 1156, 211, 2756, 2777,-32768,-32768, 2291, 207, 207, - 207, 1070, 1155, 67, 67, 984, 67, 1157, 984, 1748, - 681, 1158, 1015, 1163, 67, 67, 207, 1164, 1182, 1016, - 1184, 1185, 984, 984, 1186, 207, 1197, 1198, 984, 984, - 1199, 1201, 1202, 1203, 1209, 984, 416, 984, 1219, 1220, - 1221, 1230, 1240,-32768, 1238, 389, 1241,-32768, 645, 67, - 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, - 67,-32768, 5836, 5859, 5882, 5905, 4889, 1066, 166, 1067, --32768, 978,-32768, 113, 167, 1069, 1242, 1119,-32768,-32768, --32768, 14, 67, 1071, 67,-32768, 322,-32768, 6411, 1244, - 17, 59, 1247, 984, 1249, 984, 1262, 1263, 323,-32768, - 1606,-32768, 67,-32768, 67, 984, 984, 984,-32768, 400, - 984, 984, 984, 984, 984, 984, 984, 470, 67, 67, - 67, 1085, -57, 142, 199,-32768,-32768, 2798, 2819, 1265, - 5928, -47, 1187, 67, 67,-32768, 1087, 11, 1089, 2840, - 2861, 169, 1090, 1102, 1109, 1112, 1110, 1115, 1114, 1117, - 256, 1118, 1116, 1123, 1121, 1132, 1134, 1136, 1137, 1138, - 1143,-32768,-32768,-32768,-32768,-32768, 1140, 1141, 1142, 1148, - 1159, 1162, 1160,-32768, 1161, 160, 1293, 2882, 2903, 2924, - 2945, 2966, 2987, 3008, 3029, 3050, 3071, 3092, 3113,-32768, --32768,-32768,-32768, 1167,-32768,-32768,-32768, 984, 242, 67, - 1298, 1342, 9,-32768, 1345, 4914, 1270, 3134, 14,-32768, --32768,-32768,-32768, 207,-32768, 1346,-32768, 1354,-32768,-32768, - 1189, 331, 6411, 3155, 1363, 1368, 1372, 67, 67, 1373, - 1374, 1375, 1385, 1387, 1388, 1389,-32768, 32, 2314, 5951, - 2075, 500, 207, 1390, 207, 1391, 207, 1392, 67, 67, --32768, 1393, 984, 984, 1311, 984, 325, 5974, 67, 11, - 1398, 67, 984, 1396, 1400, 1399, 1234, 1402, 416, 1403, - 1414, 67, 1413, 1420, 1419, 1421, 1423, 416, 67, 67, - 67, 984, 1424, 1428, 416, 67, 1429, 1430, 1431, 67, - 389,-32768,-32768, 67, 67, 67, 67, 67, 67, 67, - 67, 67, 67, 67, 67, 1432, 1435, 1436, 1169,-32768, - 1427, 1437,-32768, 1252, 1261, 67,-32768, 69,-32768,-32768, --32768, 1264, 67,-32768,-32768,-32768, 1482, 1536,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 1599, 1439, 1266,-32768, 67, --32768, 1272, 245,-32768, 247,-32768, 250,-32768, 1274, 3176, - 3197, -47, 243,-32768, 343, 1275, 1362, 67,-32768,-32768, - 3218, 11, 1268, 3239, 1277,-32768, 1278,-32768, 1280,-32768, - 1269,-32768, 1281, 5997,-32768, 1284,-32768,-32768, 1295, 1297, - 6020, 3260, 6043, 1289,-32768, 1299, 1302, 3281, 1294, 1303, --32768, 3302, 1300, 3323, 3344, 3365, 3386, 3407, 3428, 3449, - 3470, 3491, 3512, 3533, 3554, 1305,-32768,-32768,-32768, 14, --32768, 1360, 1485, 3575,-32768,-32768, 3596,-32768,-32768,-32768, --32768, 500, 2118,-32768, 67, 67, 67, 35, 67, 67, - 1404,-32768, 984,-32768, 984, 67, 2337, 984, 1343, 1488, - -47, 416, 1496, 67, 1494, 416, 1495, 1499, 1497, 1498, - 1500, 67, 1502, 984, 1506, 1508, 67, 1510, 1509, 67, - 1486, 67, 67, 67, 67, 67, 67, 67, 67, 67, - 67, 67, 67,-32768, 1534,-32768,-32768, 67, 1538, 1355, - 67,-32768, 2360, 2383, 2406, 1539, 1359, -32,-32768, 2429, - 2452, 1361,-32768, 1364, 1653,-32768, 1366, 11,-32768, 1365, - 1370, 1371, 3617,-32768, 1367,-32768, 1376,-32768,-32768,-32768, - 6066,-32768, 1377,-32768,-32768, 6089, 1378,-32768, 6112, 1382, - 3638, 3659, 3680, 3701, 3722, 3743, 3764, 3785, 3806, 6135, - 6158, 6181,-32768, 2147, 1383,-32768, 2475, 1544, 1551, 1553, --32768, 984, 1554,-32768, 1556, 1574, 984, 984,-32768, 1605, - 11, 416, 416, 416, 416, 1607, 1608, 1633, 416, 1639, - 1650, 1651, 1573, 67, 67, 67, 67, 67, 67, 67, - 67, 67,-32768,-32768,-32768, 67,-32768, 1656,-32768,-32768, --32768,-32768, 1473, 1478,-32768,-32768,-32768, 1479, 1426,-32768, - 11, 1480, 1481, 1487, 1489,-32768,-32768,-32768, 1484,-32768, --32768,-32768, 1490, 3827, 3848, 3869, 3890, 3911, 3932, 3953, - 3974, 3995, 1492, 1493, 1503, 2498, 1501, 35, 984, 984, - 1581, 1523, 416, 416, 1665, 1666, 416, 1668, 67, 67, - 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, --32768, 1675, -31, 1505, 1504, 1514, 11, 1526, 1527,-32768, --32768, 1511, 1513, 4016, 4037, 4058, 4079, 4100, 4121, 4142, - 4163, 4184, 344, 6411, 387, 6411, 392, 6411, 1529, 1673, - 984, 1598, 67, 11, 416, 984, 1678, 1681, 67, 67, - 67, 67, 67, 67, 67, 67, 67, 67, 1706, 67, - 1710, 67, 1711, 1712,-32768, 1533, 1537, 4205, 11, 1541, - 1546,-32768,-32768, 4226, 4247, 4268, 4289, 4310, 4331, 6204, - 6227, 6250, 6411,-32768, 6411,-32768, 6411,-32768,-32768, 1715, - 67, 67, 1571, 416, 984, 67, 67, 67, 67, 67, - 67,-32768,-32768,-32768,-32768, 4352, 2521, 1578, 1548, 1549, - 4373, 4394, 4415, 4436, 4457, 4478, 1550, 1552, 1557, 67, - 1728,-32768, 984, 416, 67, 67, 67, 67, 67, 67, - 67, 67, 67, 2544,-32768, 1559, 1558, 4499, 4520, 4541, - 4562, 4583, 4604, 395, 6411, 396, 6411, 401, 6411, 1730, - 984, 1738, 67, 67, 67, 67, 67, 67, 67, 1739, - 67, 1743, 67, 1744,-32768, 1568,-32768, 4625, 4646, 4667, - 6273, 6296, 6319, 6411,-32768, 6411,-32768, 6411,-32768, 984, - 67, 67, 67,-32768,-32768,-32768, 1570, 4688, 4709, 4730, - 1577, 1587, 1588, 984, 67, 67, 67, 67, 67, 67, - 1592, 4751, 4772, 4793, 420, 6411, 421, 6411, 424, 6411, - 416, 67, 67, 67, 67, 1772, 67, 1773, 67, 1777, - 1604, 6342, 6365, 6388, 6411,-32768, 6411,-32768, 6411,-32768, - 1780,-32768,-32768,-32768,-32768, 1631, 1641, 1642, 67, 67, - 67, 427, 6411, 430, 6411, 431, 6411, 67, 1822, 67, - 1823, 67, 1824, 6411,-32768, 6411,-32768, 6411,-32768, 1837, - 1847,-32768 +-32768,-32768,-32768, 33,-32768,-32768,-32768,-32768,-32768,-32768, + 33, 33, 33, 33, 947,-32768, 68, 234,-32768, 946, + 68, 810, 69, 33, 973, 976, 1052,-32768, 987, 842, + 15, 1013, 33,-32768, 215, -56,-32768, 1514, 1514, 1018, + 1514,-32768, 1020,-32768, 1514, 1514,-32768, 68, 986, 273, +-32768, 1795, 1076, 847, 1021, 1022, 1023, 365, 1024, 1025, + 1027, 1028, 1029, 1030, 1031, 1035, 168, 2789, 2810,-32768, +-32768, 2345, -56, -56, -56, 1270, 1036, 33, 33, 1514, + 1514, 33, 1037, 1514, 1810, 189, 1038, 895, 1045, 33, + 33, -56, 1046, 1047, 885, 1048, 1049, 1514, 1514, 1051, + -56, 1054, 1059, 1514, 1514, 1062, 1063, 1064, 1065, 1066, + 1514, 345, 1514, 1068, 1067, 1069, 1070, 1072,-32768, 1071, + 386, 1075,-32768, 667, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33,-32768, 5892, 5915, 5938, + 5961, 4922, 899, 235, 900,-32768, 1180,-32768, 22, 233, + 892, 1077, 1327,-32768,-32768,-32768, 15, 33, 903, 33, +-32768, 274,-32768, 6467, 1082, 14, 60, 1083, 1514, 1084, + 1514, 1086, 1087, 279,-32768, 68,-32768, 33,-32768, 33, + 1514, 1514, 1514,-32768, 352, 1514, 1514, 1514, 1514, 1514, + 1514, 1514, 474, 33, 33, 33, 897, 24, 115, 146, +-32768,-32768, 2831, 2852, 1089, 1102, 5984, -75, 1032, 33, + 33,-32768, 923, 11, 925, 2873, 2894, 102, 929, 935, + 932, 937, 934, 939, 941, 942, 223, 950, 955, 956, + 959, 969, 972, 975, 977, 978, 983,-32768,-32768,-32768, +-32768,-32768, 982, 985, 1004, 1005, 1006, 984, 1007,-32768, + 1009, 198, 1116, 2915, 2936, 2957, 2978, 2999, 3020, 3041, + 3062, 3083, 3104, 3125, 3146,-32768,-32768,-32768,-32768, 974, +-32768,-32768,-32768, 1514, 234, 33, 1162, 1167, 12,-32768, + 1189, 4947, 1106, 3167, 15,-32768,-32768,-32768,-32768, -56, +-32768, 1191,-32768, 1201,-32768,-32768, 1026, 282, 6467, 3188, + 1202, 1220, 1221, 33, 33, 1222, 1223, 1224, 1226, 1227, + 1234, 1244,-32768, 1632, 2368, 6007, 1831, 384, -56, 1245, + -56, 1246, -56, 1247, 33, 33,-32768,-32768, 1249, 1514, + 1514, 1165, 1514, 327, 6030, 33, 11, 1254, 33, 1514, + 1252, 1256, 1271, 1091, 1272, 345, 1273, 1257, 33, 1274, + 1278, 1277, 1279, 1281, 345, 33, 33, 33, 1514, 1282, + 1284, 345, 33, 1286, 1287, 1285, 33, 386,-32768,-32768, + 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 1288, 1289, 1290, 1618,-32768, 1291, 1293,-32768, + 1109, 1110, 33,-32768, 18,-32768,-32768,-32768, 1114, 33, +-32768,-32768,-32768, 1665, 1686,-32768,-32768,-32768,-32768,-32768, +-32768,-32768, 1720, 1294, 1117,-32768, 33,-32768, 1115, 196, +-32768, 209,-32768, 213,-32768, 1118, 3209, 3230, -75, 248, +-32768, 283, 1119, 1225, 33,-32768,-32768, 3251, 11, 1125, + 3272, 1123,-32768, 1124,-32768, 1127,-32768, 1129,-32768, 1138, + 6053,-32768, 1140,-32768,-32768, 1146, 1147, 6076, 3293, 6099, + 1144,-32768, 1149, 1150, 3314, 1151, 1153,-32768, 3335, 1152, + 3356, 3377, 3398, 3419, 3440, 3461, 3482, 3503, 3524, 3545, + 3566, 3587, 1154,-32768,-32768,-32768, 15,-32768, 1241, 1334, + 3608,-32768,-32768, 3629,-32768,-32768,-32768,-32768, 384, 2148, +-32768, 33, 33, 33, -31, 33, 33, 1255,-32768, 1514, +-32768, 1514, 33, 2391, 1514, 1206, 1351, -75, 345, 1355, + 33, 1360, 345, 1369, 1374, 1377, 1379, 1380, 33, 1381, + 1514, 1382, 1393, 33, 1397, 1395, 33, 1375, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, +-32768, 1396,-32768,-32768, 33, 1398, 1217, 33,-32768, 2414, + 2437, 2460, 1399, 1229, -38,-32768, 2483, 2506, 1230,-32768, + 1239, 1735,-32768, 1219, 11,-32768, 1243, 1259, 1263, 3650, +-32768, 1228,-32768, 1253,-32768,-32768,-32768, 6122,-32768, 1265, +-32768,-32768, 6145, 1275,-32768, 6168, 1266, 3671, 3692, 3713, + 3734, 3755, 3776, 3797, 3818, 3839, 6191, 6214, 6237,-32768, + 2177, 1268,-32768, 2529, 1401, 1402, 1404,-32768, 1514, 1405, +-32768, 1420, 1449, 1514, 1514,-32768, 1452, 11, 345, 345, + 345, 345, 1459, 1460, 1461, 345, 1462, 1463, 1464, 1466, + 33, 33, 33, 33, 33, 33, 33, 33, 33,-32768, +-32768,-32768, 33,-32768, 1467,-32768,-32768,-32768,-32768, 1296, + 1295,-32768,-32768,-32768, 1299, 1298,-32768, 11, 1306, 1316, + 1321, 1326,-32768,-32768,-32768, 1323,-32768,-32768,-32768, 1324, + 3860, 3881, 3902, 3923, 3944, 3965, 3986, 4007, 4028, 1325, + 1333, 1335, 2552, 1328, -31, 1514, 1514, 1389, 1362, 345, + 345, 1509, 1516, 345, 1515, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33,-32768, 1542, -37, + 1363, 1364, 1366, 11, 1365, 1368,-32768,-32768, 1373, 1376, + 4049, 4070, 4091, 4112, 4133, 4154, 4175, 4196, 4217, 286, + 6467, 289, 6467, 316, 6467, 1371, 1543, 1514, 1469, 33, + 11, 345, 1514, 1550, 1553, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 1554, 33, 1558, 33, 1586, + 1587,-32768, 1378, 1411, 4238, 11, 1414, 1443,-32768,-32768, + 4259, 4280, 4301, 4322, 4343, 4364, 6260, 6283, 6306, 6467, +-32768, 6467,-32768, 6467,-32768,-32768, 1623, 33, 33, 1477, + 345, 1514, 33, 33, 33, 33, 33, 33,-32768,-32768, +-32768,-32768, 4385, 2575, 1478, 1446, 1448, 4406, 4427, 4448, + 4469, 4490, 4511, 1454, 1479, 1483, 33, 1628,-32768, 1514, + 345, 33, 33, 33, 33, 33, 33, 33, 33, 33, + 2598,-32768, 1485, 1491, 4532, 4553, 4574, 4595, 4616, 4637, + 317, 6467, 323, 6467, 324, 6467, 1667, 1514, 1668, 33, + 33, 33, 33, 33, 33, 33, 1669, 33, 1670, 33, + 1671,-32768, 1493,-32768, 4658, 4679, 4700, 6329, 6352, 6375, + 6467,-32768, 6467,-32768, 6467,-32768, 1514, 33, 33, 33, +-32768,-32768,-32768, 1494, 4721, 4742, 4763, 1495, 1496, 1499, + 1514, 33, 33, 33, 33, 33, 33, 1501, 4784, 4805, + 4826, 330, 6467, 334, 6467, 335, 6467, 345, 33, 33, + 33, 33, 1674, 33, 1681, 33, 1682, 1510, 6398, 6421, + 6444, 6467,-32768, 6467,-32768, 6467,-32768, 1687,-32768,-32768, +-32768,-32768, 1512, 1513, 1541, 33, 33, 33, 354, 6467, + 358, 6467, 371, 6467, 33, 1695, 33, 1724, 33, 1725, + 6467,-32768, 6467,-32768, 6467,-32768, 1732, 1733,-32768 }; static const short yypgoto[] = {-32768, - -73,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768, 1306,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, + -70,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768, 1188,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -260, -22, --32768, 1841, 1843, -323, 252, 1844,-32768,-32768,-32768,-32768, --32768,-32768, 590, -1114,-32768,-32768, -903, -23,-32768, -29, --32768, -84,-32768, -976, 951, 807, -263, -276, -728, 1000, --32768, -249 +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -251, -22, +-32768, 1729, 1730, -325, 258, 1731,-32768,-32768,-32768,-32768, +-32768,-32768, 465, -1124,-32768,-32768, -904, -23,-32768, -29, +-32768, -85,-32768, -983, 852, 362, -265, -294, -725, 884, +-32768, -253 }; -#define YYLAST 6589 +#define YYLAST 6646 -static const short yytable[] = { 134, - 133, 419, 229, 855, 484, 196, 423, 412, 413, 414, - 234, 188, 606, 77, 171, 1021, 178, 734, 143, 146, - 186, 422, 862, 1194, 1030, 1081, 459, 92, 590, 10, - 591, 1037, 1136, 1136, 89, 90, 411, 1137, 1137, 419, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, +static const short yytable[] = { 135, + 134, 422, 231, 179, 487, 415, 416, 417, 236, 198, + 462, 861, 190, 78, 172, 610, 188, 426, 739, 868, + 1201, 1028, 344, 1072, 144, 1088, 1143, 1143, 93, 147, + 1037, 1144, 1144, 1143, 140, 90, 91, 1044, 1144, 422, + 141, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 863, 117, 118, 119, 443, 89, - 90, 341, 444, 267, 1065, 93, 94, 95, 96, 97, + 113, 114, 115, 116, 117, 869, 8, 128, 129, 269, + 90, 303, 730, 233, 87, 234, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 1136, - 260, 261, 262, 139, 1137, 263, 266, 864, 270, 140, - 325, 326, 179, 8, 1150, 290, 291, 292, 293, 92, - 295, 296, 349, 298, 299, 300, 893, 307, 894, 183, - 967, 903, 184, 144, 320, 321, 322, 904, 9, 145, - 147, 81, 329, 323, 324, 11, 12, 13, 14, 15, - 16, 17, 18, 1193, 1320, 491, 492, 187, 268, 269, - 600, 340, 725, 343, 342, 345, 346, 611, 120, 121, - 122, 123, 602, 849, 120, 121, 122, 123, 1194, 78, - 419, 626, 80, 536, 325, 326, 189, 537, 1151, 127, - 128, 235, 1155, 607, 419, 127, 128, 180, 735, 124, - 125, 82, 592, 599, 387, 126, 593, 385, 155, 156, - 129, 157, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, - 407, 408, 409, 83, 124, 125, 325, 326, 84, 173, - 126, 418, 174, 175, 424, 129, 411, 726, 727, 428, - 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 325, 326, 120, 121, 122, 123, - 449, 325, 326, 452, 85, 117, 118, 119, 261, 418, - 86, 327, 410, 411, 463, 464, 465, 475, 467, 468, - 469, 470, 471, 472, 473, 478, 479, 87, 1242, 1243, - 1244, 1245, 325, 326, 88, 1249, 486, 487, 488, 325, - 326, 493, 117, 118, 119, 597, 719, 598, 499, 328, - 120, 121, 122, 123, 504, 895, 740, 896, 150, 419, - 597, 1125, 1008, 723, 127, 128, 325, 326, 127, 128, - 137, 127, 128, 138, 720, 846, 697, 749, 914, 597, - 26, 27, 28, 29, 30, 31, 32, 33, 141, 34, - 419, 36, 37, 542, 39, 40, 325, 326, 142, 1298, - 1299, 325, 326, 1302, 165, 166, 325, 326, 325, 326, - 152, 52, 897, 159, 898, 167, 160, 161, 543, 162, - 148, 168, 485, 261, 769, 53, 54, 149, 601, 603, - 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, - 554, 555, 325, 326, 325, 326, 151, 325, 326, 153, - 418, 1350, 1082, 325, 326, 154, 1083, 333, 1075, 158, - 1076, 337, 385, 1077, 418, 923, 628, 629, 127, 128, - 163, 597, 634, 627, 231, 643, 232, 282, 283, 284, - 285, 286, 644, 645, 878, 879, 63, 287, 164, 127, - 128, 648, 172, 848, 850, 456, 176, 232, 652, 177, - 1389, 284, 285, 286, 872, 887, 888, 660, 661, 287, - 181, 182, 273, 274, 275, 276, 277, 419, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 597, 489, 752, - 1417, 191, 287, 127, 128, 859, 597, 860, 871, 625, - 1009, 232, 185, 190, 597, 556, 972, 192, 698, 812, - 813, 814, 815, 816, 89, 90, 1083, 1338, 1084, 1339, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 180, 262, 263, 264, 910, 9, 265, 268, 870, 272, + 911, 82, 166, 167, 1157, 345, 292, 293, 294, 295, + 81, 297, 298, 168, 300, 301, 302, 352, 309, 169, + 286, 287, 288, 327, 328, 322, 323, 324, 289, 974, + 145, 327, 328, 331, 325, 326, 146, 83, 1200, 1327, + 329, 148, 615, 84, 189, 270, 271, 478, 731, 732, + 446, 85, 342, 343, 447, 346, 630, 348, 349, 93, + 86, 606, 604, 413, 414, 1201, 121, 122, 123, 124, + 79, 422, 327, 328, 139, 181, 327, 328, 191, 594, + 237, 595, 327, 328, 1158, 422, 791, 611, 1162, 88, + 740, 125, 126, 118, 119, 120, 390, 127, 899, 388, + 900, 601, 130, 602, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 425, 125, 420, 414, 855, + 128, 129, 127, 421, 494, 495, 427, 130, 702, 327, + 328, 431, 432, 433, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 330, 118, 119, 120, + 327, 328, 452, 327, 328, 455, 156, 157, 89, 158, + 263, 421, 921, 327, 328, 151, 466, 467, 468, 488, + 470, 471, 472, 473, 474, 475, 476, 481, 482, 901, + 184, 902, 724, 185, 1249, 1250, 1251, 1252, 489, 490, + 491, 1256, 540, 496, 327, 328, 541, 121, 122, 123, + 124, 503, 160, 327, 328, 161, 162, 508, 163, 138, + 903, 422, 904, 754, 1015, 728, 327, 328, 128, 129, + 547, 1132, 153, 601, 725, 631, 603, 275, 276, 277, + 278, 279, 774, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 422, 142, 327, 328, 546, 289, 174, 792, + 764, 175, 176, 128, 129, 1305, 1306, 327, 328, 1309, + 1082, 327, 328, 121, 122, 123, 124, 121, 122, 123, + 124, 327, 328, 1083, 596, 745, 263, 1084, 597, 601, + 143, 605, 607, 930, 128, 129, 884, 885, 128, 129, + 284, 285, 286, 287, 288, 852, 128, 129, 765, 601, + 289, 154, 459, 421, 234, 128, 129, 1357, 1089, 155, + 10, 629, 1090, 234, 335, 388, 149, 421, 339, 632, + 633, 42, 43, 44, 45, 638, 47, 150, 647, 818, + 819, 820, 821, 822, 152, 648, 649, 601, 865, 757, + 866, 878, 159, 601, 652, 877, 601, 1090, 979, 1091, + 1345, 656, 1346, 1347, 164, 1348, 1396, 854, 856, 893, + 894, 665, 666, 165, 173, 275, 276, 277, 278, 279, + 422, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 1349, 1446, 1350, 1447, 177, 289, 1424, 1448, 1450, 1449, + 1451, 178, 307, 1016, 1502, 182, 1503, 313, 1504, 1506, + 1505, 1507, 703, 275, 276, 277, 278, 279, 183, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 1535, 336, + 1536, 193, 1537, 289, 1538, 340, 341, 11, 12, 13, + 14, 15, 16, 17, 18, 1539, 186, 1540, 187, 194, + 718, 192, 195, 196, 197, 229, 238, 719, 720, 721, + 722, 232, 999, 421, 239, 240, 241, 727, 242, 243, + 733, 244, 245, 246, 247, 248, 746, 249, 250, 744, + 251, 252, 253, 1508, 254, 255, 256, 257, 291, 258, + 259, 965, 260, 261, 421, 388, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 831, 273, 290, 296, 299, + 289, 310, 311, 778, 779, 780, 312, 316, 317, 314, + 315, 318, 319, 320, 783, 784, 321, 338, 787, 347, + 994, 332, 798, 333, 334, 337, 796, 797, 90, 91, + 350, 807, 351, 383, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 353, 354, + 355, 834, 835, 836, 837, 838, 839, 840, 841, 842, + 843, 844, 845, 356, 548, 549, 550, 551, 552, 553, + 554, 555, 556, 557, 558, 559, 357, 857, 358, 359, + 360, 361, 362, 363, 862, 386, 864, 364, 365, 366, + 367, 368, 369, 917, 370, 371, 389, 372, 373, 374, + 375, 376, 421, 377, 879, 289, 880, 548, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 378, + 895, 896, 897, 1137, 278, 279, 379, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 914, 915, 380, 381, + 382, 289, 385, 419, 429, 90, 91, 464, 469, 387, + 600, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 193, 195, 713, 42, 43, 44, - 45, 194, 47, 714, 715, 716, 717, 227, 992, 418, - 1340, 230, 1341, 722, 271, 1342, 728, 1343, 1439, 1441, - 1440, 1442, 741, 236, 1443, 739, 1444, 1501, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 237, 288, 958, - 418, 385, 287, 1495, 1497, 1496, 1498, 1499, 289, 1500, - 1528, 825, 1529, 1530, 1532, 1531, 1533, 238, 239, 773, - 774, 775, 240, 241, 242, 243, 244, 245, 246, 247, - 778, 779, 248, 781, 249, 250, 251, 792, 987, 252, - 253, 790, 791, 89, 90, 254, 801, 255, 308, 93, + 113, 114, 115, 116, 117, 428, 477, 498, 499, 949, + 560, 502, 505, 509, 125, 126, 510, 511, 512, 513, + 127, 514, 515, 516, 517, 130, 518, 519, 266, 520, + 521, 267, 966, 522, 523, 524, 525, 526, 527, 528, + 975, 529, 530, 531, 532, 533, 1019, 534, 535, 536, + 537, 538, 539, 833, 542, 598, 543, 544, 599, 608, + 984, 985, 1050, 609, 614, 646, 650, 616, 617, 1000, + 993, 1002, 618, 1004, 619, 621, 622, 624, 651, 625, + 626, 1007, 1008, 634, 658, 659, 660, 661, 662, 664, + 668, 669, 1018, 699, 670, 1021, 671, 672, 673, 674, + 675, 676, 677, 678, 679, 1031, 680, 717, 700, 681, + 682, 683, 1038, 1039, 1040, 684, 685, 686, 687, 1045, + 688, 689, 690, 1049, 691, 692, 693, 1051, 1052, 1053, + 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 694, + 695, 125, 126, 696, 697, 698, 701, 127, 1096, 1071, + 723, 726, 130, 705, 706, 627, 1074, 707, 628, 277, + 278, 279, 708, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 709, 1080, 710, 711, 712, 289, 734, 747, + 748, 735, 750, 713, 714, 274, 752, 753, 90, 91, + 715, 1094, 729, 737, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 743, 430, + 716, 785, 786, 738, 749, 789, 751, 761, 762, 763, + 766, 767, 760, 768, 769, 770, 771, 772, 773, 804, + 805, 782, 794, 788, 793, 810, 811, 795, 799, 800, + 802, 803, 817, 806, 824, 801, 808, 736, 1140, 1141, + 1142, 809, 1147, 1148, 812, 813, 814, 815, 816, 1152, + 825, 826, 828, 827, 829, 858, 830, 1160, 832, 851, + 853, 759, 898, 859, 1208, 1168, 863, 867, 871, 873, + 1173, 875, 876, 1176, 907, 1178, 1179, 1180, 1181, 1182, + 1183, 1184, 1185, 1186, 1187, 1188, 1189, 908, 916, 918, + 872, 1191, 874, 922, 1194, 923, 924, 925, 926, 927, + 913, 950, 881, 882, 883, 928, 929, 886, 887, 888, + 889, 890, 891, 892, 931, 932, 933, 1248, 275, 276, + 277, 278, 279, 934, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 935, 125, 126, 936, 963, 289, 937, + 127, 938, 939, 940, 946, 130, 941, 967, 755, 942, + 968, 756, 275, 276, 277, 278, 279, 1279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 463, 943, 944, + 945, 947, 289, 948, 970, 972, 976, 1261, 1262, 1263, + 1264, 1265, 1266, 1267, 1268, 1269, 977, 981, 978, 1273, + 275, 276, 277, 278, 279, 964, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 982, 983, 986, 987, 988, + 289, 989, 990, 1331, 275, 276, 277, 278, 279, 991, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 992, + 1001, 1003, 1005, 1013, 289, 1009, 1020, 1023, 1024, 1030, + 1356, 1026, 1311, 1312, 1313, 1314, 1315, 1316, 1317, 1318, + 1319, 1321, 1323, 1325, 1014, 781, 1025, 1027, 1029, 1032, + 1033, 1022, 1034, 1036, 1035, 1380, 1043, 1042, 1046, 1047, + 1048, 1063, 1069, 1070, 1064, 1065, 1073, 1067, 1068, 1078, + 1041, 1081, 1079, 1085, 1092, 1097, 1355, 1099, 1100, 1102, + 1093, 1101, 1361, 1362, 1363, 1364, 1365, 1366, 1367, 1368, + 1369, 1370, 1103, 1372, 1105, 1374, 1106, 1107, 1111, 1112, + 1113, 1133, 860, 1116, 1131, 1115, 1118, 1134, 275, 276, + 277, 278, 279, 1149, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 1155, 1393, 1394, 1156, 1159, 289, 1398, + 1399, 1400, 1401, 1402, 1403, 1161, 26, 27, 28, 29, + 30, 31, 32, 33, 1163, 34, 1164, 36, 37, 1177, + 39, 40, 1165, 1421, 1166, 1167, 1169, 1171, 1425, 1426, + 1427, 1428, 1429, 1430, 1432, 1434, 1436, 52, 1172, 1174, + 1175, 1190, 1192, 1193, 1198, 1207, 1237, 1238, 1213, 1239, + 1242, 53, 54, 55, 1199, 1204, 1455, 1456, 1457, 1458, + 1459, 1460, 1461, 1205, 1463, 1243, 1465, 1209, 275, 276, + 277, 278, 279, 1214, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 1210, 1475, 1476, 1477, 1211, 289, 1216, + 1220, 1150, 1235, 1151, 1244, 1218, 1154, 1247, 1489, 1490, + 1491, 1493, 1495, 1497, 1253, 1254, 1255, 1257, 1258, 1259, + 1260, 1274, 1170, 64, 1303, 1509, 1510, 1511, 1512, 1276, + 1514, 1275, 1516, 1277, 1278, 275, 276, 277, 278, 279, + 1280, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 1281, 1282, 1530, 1532, 1534, 289, 1283, 1284, 1285, 1304, + 1295, 1541, 1299, 1543, 1307, 1545, 90, 303, 1296, 1310, + 1297, 1308, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 1326, 1328, 1352, 1332, + 1329, 1330, 1333, 1334, 1354, 1359, 1335, 1351, 1360, 1371, + 1241, 90, 460, 1373, 1377, 1245, 1246, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 1375, 1376, 90, 91, 92, 1378, 93, 1381, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 1066, 118, 119, 120, 1382, 1392, 1395, + 1410, 1409, 1411, 1422, 90, 91, 414, 1301, 1302, 1418, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 256, 312, 257, 828, 829, 830, 831, - 832, 833, 834, 835, 836, 837, 838, 839, 785, 124, - 125, 258, 313, 259, 294, 126, 297, 309, 319, 310, - 129, 314, 851, 264, 315, 316, 265, 317, 318, 856, - 336, 858, 330, 335, 910, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 553, 554, 555, 418, 331, 873, - 332, 874, 275, 276, 277, 344, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 889, 890, 891, 1130, 347, - 287, 380, 348, 350, 351, 352, 353, 354, 355, 356, - 907, 908, 357, 358, 359, 360, 361, 362, 89, 90, - 363, 386, 364, 365, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 366, 367, - 368, 369, 370, 942, 371, 372, 373, 374, 124, 125, - 375, 376, 377, 378, 126, 379, 272, 498, 383, 129, - 287, 382, 623, 384, 416, 624, 959, 426, 425, 461, - 827, 466, 474, 495, 968, 496, 1012, 505, 273, 274, - 275, 276, 277, 501, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 506, 977, 978, 1043, 507, 287, 508, - 786, 509, 510, 993, 986, 995, 759, 997, 511, 512, - 513, 514, 515, 516, 517, 1000, 1001, 518, 519, 520, - 521, 522, 523, 524, 525, 1011, 276, 277, 1014, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 1024, 526, - 527, 528, 530, 287, 531, 1031, 1032, 1033, 529, 532, - 533, 534, 1038, 539, 760, 535, 1042, 538, 540, 594, - 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, - 1054, 1055, 595, 124, 125, 604, 605, 610, 1089, 126, - 612, 613, 1064, 614, 129, 615, 617, 750, 618, 1067, - 751, 620, 642, 621, 622, 630, 305, 427, 646, 647, - 654, 311, 655, 656, 657, 659, 1073, 663, 273, 274, - 275, 276, 277, 664, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 334, 1087, 460, 89, 301, 287, 338, - 339, 665, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 666, 731, 273, 274, - 275, 276, 277, 667, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 668, 669, 670, 694, 671, 287, 672, - 712, 718, 673, 674, 721, 675, 676, 729, 730, 738, - 695, 1133, 1134, 1135, 754, 1140, 1141, 732, 744, 746, - 756, 757, 1145, 758, 677, 678, 679, 680, 681, 682, - 1153, 683, 684, 685, 1201, 776, 686, 687, 1161, 761, - 762, 700, 688, 1166, 689, 690, 1169, 691, 1171, 1172, - 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, - 692, 693, 696, 701, 1184, 702, 703, 1187, 755, 273, - 274, 275, 276, 277, 763, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 854, 724, 764, 1241, 704, 287, - 765, 705, 706, 707, 708, 273, 274, 275, 276, 277, - 709, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 710, 124, 302, 711, 733, 287, 766, 126, 767, 768, - 777, 788, 129, 782, 787, 789, 793, 1272, 303, 273, - 274, 275, 276, 277, 1059, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 794, 795, 796, 797, 800, 287, - 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 802, - 803, 806, 1266, 807, 808, 809, 273, 274, 275, 276, - 277, 810, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 819, 596, 1324, 820, 821, 287, 273, 274, 275, - 276, 277, 822, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 823, 824, 826, 845, 847, 287, 853, 861, - 1349, 852, 865, 857, 867, 1304, 1305, 1306, 1307, 1308, - 1309, 1310, 1311, 1312, 1314, 1316, 1318, 869, 870, 892, - 901, 909, 911, 915, 906, 1373, 273, 274, 275, 276, - 277, 916, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 918, 917, 919, 920, 925, 287, 921, 943, 1348, - 922, 924, 926, 960, 927, 1354, 1355, 1356, 1357, 1358, - 1359, 1360, 1361, 1362, 1363, 928, 1365, 929, 1367, 930, - 931, 932, 933, 934, 935, 936, 273, 274, 275, 276, - 277, 937, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 939, 938, 940, 941, 961, 287, 1386, 1387, 956, - 963, 969, 1391, 1392, 1393, 1394, 1395, 1396, 965, 970, - 26, 27, 28, 29, 30, 31, 32, 33, 974, 34, - 971, 36, 37, 975, 39, 40, 1414, 976, 979, 980, - 981, 1418, 1419, 1420, 1421, 1422, 1423, 1425, 1427, 1429, - 982, 52, 983, 984, 985, 994, 996, 998, 1006, 1002, - 1013, 1016, 1017, 1019, 1018, 53, 54, 1020, 1022, 1448, - 1449, 1450, 1451, 1452, 1453, 1454, 1023, 1456, 1025, 1458, - 742, 743, 1026, 745, 1027, 1029, 1028, 747, 748, 1035, - 1036, 1039, 1040, 1060, 1062, 1056, 1041, 1468, 1469, 1470, - 1057, 1058, 1061, 1063, 1071, 1066, 1086, 1090, 1095, 1126, - 1072, 1482, 1483, 1484, 1486, 1488, 1490, 1074, 1078, 1085, - 1092, 1093, 780, 1094, 1096, 783, 63, 1098, 1502, 1503, - 1504, 1505, 1104, 1507, 1099, 1509, 1100, 1108, 1105, 798, - 799, 1106, 1109, 1111, 1124, 804, 805, 1068, 1127, 1148, - 1170, 1142, 811, 1149, 818, 1523, 1525, 1527, 1152, 1154, - 1156, 1157, 1158, 1159, 1534, 1160, 1536, 1162, 1538, 89, - 457, 1164, 1167, 1165, 1168, 93, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 1183, - 1186, 1069, 1185, 1192, 1191, 1197, 1206, 1198, 1202, 1230, - 866, 1200, 868, 1203, 1204, 1207, 1231, 1211, 1232, 1235, - 1209, 1236, 875, 876, 877, 1213, 1228, 880, 881, 882, - 883, 884, 885, 886, 89, 90, 91, 1253, 92, 1237, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, + 114, 115, 116, 117, 1419, 118, 119, 120, 1420, 1438, + 1075, 1439, 1452, 1454, 1462, 1464, 1466, 1467, 1481, 1513, + 1485, 1486, 125, 304, 1487, 1498, 1515, 1517, 127, 1353, + 1518, 1076, 1522, 130, 1358, 90, 460, 1526, 1527, 305, + 1542, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 1070, 117, 118, 119, 89, 301, - 1240, 1271, 1246, 1247, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 1248, 273, - 274, 275, 276, 277, 1250, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 957, 1251, 1252, 1268, 1199, 287, - 1267, 1269, 1270, 1273, 1274, 1296, 1275, 1277, 1276, 1297, - 1300, 1301, 1303, 1278, 124, 125, 1288, 1289, 1345, 1319, - 126, 502, 1347, 1352, 1292, 129, 1353, 1290, 1321, 1322, - 1327, 458, 1328, 273, 274, 275, 276, 277, 1323, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 609, 1325, - 1326, 1364, 1007, 287, 1344, 1366, 1368, 1369, 1370, 1015, - 1385, 1371, 1388, 753, 1374, 120, 121, 122, 123, 1375, - 1402, 1403, 1404, 1415, 1411, 1445, 1412, 1432, 1034, 124, - 125, 1413, 1431, 1447, 1455, 126, 127, 128, 1457, 1459, - 129, 1460, 130, 1474, 131, 784, 273, 274, 275, 276, - 277, 1478, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 1479, 1480, 124, 417, 1491, 287, 1506, 1508, 126, - 89, 457, 1510, 1511, 129, 1515, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 273, 274, 275, 276, 277, 1519, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 1520, 1521, 1535, 1537, 1539, - 287, 273, 274, 275, 276, 277, 1541, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 1542, 68, 699, 69, - 70, 287, 962, 0, 1005, 0, 0, 1293, 273, 274, - 275, 276, 277, 0, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 273, 274, 275, 276, 277, 287, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 1143, - 0, 1144, 0, 287, 1147, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 273, 274, 275, 276, 277, - 1163, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, -10, 1, 0, -10, - -53, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 124, 125, 0, 0, 0, - 0, 126, 0, 0, 0, 0, 129, 0, 0, -53, - 0, 0, 0, -53, -53, -53, -53, -53, -53, -53, - -53, -53, 0, -53, -53, -53, -53, -53, -53, -53, - 0, 0, 0, -53, -53, -53, -53, -53, -53, -53, - 0, -53, -53, -53, -53, -53, 0, 0, 1234, 0, - 0, 0, 0, 1238, 1239, 0, 0, 0, 0, -53, - -53, 0, 0, 0, 0, 0, 0, -53, 197, -53, - -53, -53, -53, -53, -53, -53, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -10, -10, -10, -10, -10, - -10, -10, -10, 26, 27, 28, 29, 30, 31, 32, - 33, 0, 34, 0, 36, 37, 0, 39, 40, 0, - -53, 2, 3, 0, 4, 1294, 1295, 0, 198, 199, - 200, 0, 0, 0, 52, 0, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 0, 0, 53, 54, - 0, 0, 0, 0, 211, 212, 213, 214, 215, 216, - 217, 218, 219, 220, 0, 221, 222, 223, 224, 225, - 226, 0, 0, 0, 0, 0, 0, 1346, 0, 0, - 0, 23, 1351, 273, 274, 275, 276, 277, 0, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 0, 0, 0, 0, 0, 63, - 24, 446, 0, 0, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 0, 34, 35, 36, 37, 38, 39, - 40, 1390, 0, 0, 41, 42, 43, 44, 45, 46, - 47, 0, 48, 49, 50, 51, 52, 0, 0, 0, - 0, 494, 0, 0, 0, 0, 0, 0, 0, 1416, - 53, 54, 0, 0, 0, 0, 0, 0, 55, 0, - 56, 57, 58, 59, 60, 61, 62, 0, 0, 0, - 0, 0, 273, 274, 275, 276, 277, 1446, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 0, 0, 0, 0, 990, 0, - 991, 0, 0, 0, 0, 0, 1467, 0, 0, 0, - 0, 63, 0, 0, 0, 273, 274, 275, 276, 277, - 1481, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 0, 0, 0, - 0, 1131, 0, 1132, 273, 274, 275, 276, 277, 0, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 0, 0, 0, 0, 0, - 1226, 0, 1227, 273, 274, 275, 276, 277, 0, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 0, 0, 273, 274, 275, 276, - 277, 451, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 0, 273, - 274, 275, 276, 277, 453, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 0, 0, 273, 274, 275, 276, 277, 631, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 0, 273, 274, 275, 276, 277, - 635, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 0, 273, 274, - 275, 276, 277, 636, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 0, - 0, 273, 274, 275, 276, 277, 772, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 0, 273, 274, 275, 276, 277, 988, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 0, 0, 273, 274, 275, - 276, 277, 1146, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 0, 0, - 273, 274, 275, 276, 277, 1188, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 0, 0, 273, 274, 275, 276, 277, 1189, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 0, 0, 273, 274, 275, 276, - 277, 1190, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 0, 273, - 274, 275, 276, 277, 1195, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 0, 0, 273, 274, 275, 276, 277, 1196, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 0, 273, 274, 275, 276, 277, - 1229, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 0, 273, 274, - 275, 276, 277, 1291, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 0, - 0, 273, 274, 275, 276, 277, 1401, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 0, 273, 274, 275, 276, 277, 1430, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 476, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 477, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 580, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 587, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 588, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 589, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 649, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 650, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 651, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 770, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 771, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 899, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 900, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 912, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 913, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 944, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 945, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 946, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 947, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 948, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 949, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 950, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 951, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 952, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 953, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 954, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 955, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 966, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 973, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 1079, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 1080, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 1088, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 1091, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 1102, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 1107, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 1110, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 1112, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 1113, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 1114, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 1115, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 1116, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 1117, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 1118, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 1119, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 1120, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 1121, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 1122, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 1123, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 1128, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 1129, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 1205, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 1214, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 1215, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 1216, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 1217, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 1218, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 1219, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 1220, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 1221, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 1222, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 1279, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 1280, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 1281, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 1282, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 1283, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 1284, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 1285, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 1286, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 1287, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 1329, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 1330, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 1331, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 1332, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 1333, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 1334, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 1335, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 1336, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 1337, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 1372, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 1376, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 1377, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 1378, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 1379, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 1380, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 1381, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 1400, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 1405, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 1406, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 1407, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 1408, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 1409, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 1410, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 1433, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 1434, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 1435, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 1436, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 1437, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 273, 274, 275, 276, 277, 1438, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 273, 274, 275, 276, 277, 1461, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 273, 274, 275, 276, 277, 1462, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 273, 274, 275, 276, 277, - 1463, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 273, 274, 275, 276, - 277, 1475, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 273, 274, 275, - 276, 277, 1476, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 273, 274, - 275, 276, 277, 1477, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 273, - 274, 275, 276, 277, 1492, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 273, 274, 275, 276, 277, 1493, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 273, 274, 275, 276, 277, 1494, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 0, 0, 421, 273, 274, 275, 276, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 0, 0, - 541, 273, 274, 275, 276, 277, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 0, 0, 653, 273, 274, 275, 276, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 0, 0, - 844, 273, 274, 275, 276, 277, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 0, 0, 964, 273, 274, 275, 276, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 415, 273, - 274, 275, 276, 277, 0, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 0, 445, 273, 274, 275, 276, 277, 0, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 447, 273, 274, 275, 276, 277, - 0, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 448, 273, 274, - 275, 276, 277, 0, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 0, - 450, 273, 274, 275, 276, 277, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 454, 273, 274, 275, 276, 277, 0, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 0, 455, 273, 274, 275, - 276, 277, 0, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 0, 462, - 273, 274, 275, 276, 277, 0, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 0, 497, 273, 274, 275, 276, 277, 0, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 0, 500, 273, 274, 275, 276, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 503, 273, - 274, 275, 276, 277, 0, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 0, 569, 273, 274, 275, 276, 277, 0, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 570, 273, 274, 275, 276, 277, - 0, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 571, 273, 274, - 275, 276, 277, 0, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 0, - 572, 273, 274, 275, 276, 277, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 573, 273, 274, 275, 276, 277, 0, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 0, 574, 273, 274, 275, - 276, 277, 0, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 0, 575, - 273, 274, 275, 276, 277, 0, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 0, 576, 273, 274, 275, 276, 277, 0, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 0, 577, 273, 274, 275, 276, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 578, 273, - 274, 275, 276, 277, 0, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 0, 579, 273, 274, 275, 276, 277, 0, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 581, 273, 274, 275, 276, 277, - 0, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 582, 273, 274, - 275, 276, 277, 0, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 0, - 583, 273, 274, 275, 276, 277, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 584, 273, 274, 275, 276, 277, 0, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 0, 585, 273, 274, 275, - 276, 277, 0, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 0, 586, - 273, 274, 275, 276, 277, 0, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 0, 616, 273, 274, 275, 276, 277, 0, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 0, 619, 273, 274, 275, 276, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 632, 273, - 274, 275, 276, 277, 0, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 0, 633, 273, 274, 275, 276, 277, 0, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 637, 273, 274, 275, 276, 277, - 0, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 638, 273, 274, - 275, 276, 277, 0, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 0, - 639, 273, 274, 275, 276, 277, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 640, 273, 274, 275, 276, 277, 0, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 0, 641, 273, 274, 275, - 276, 277, 0, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 0, 658, - 273, 274, 275, 276, 277, 0, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 0, 662, 273, 274, 275, 276, 277, 0, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 0, 840, 273, 274, 275, 276, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 841, 273, - 274, 275, 276, 277, 0, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 0, 842, 273, 274, 275, 276, 277, 0, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 843, 273, 274, 275, 276, 277, - 0, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 902, 273, 274, - 275, 276, 277, 0, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 0, - 989, 273, 274, 275, 276, 277, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 1010, 273, 274, 275, 276, 277, 0, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 0, 1097, 273, 274, 275, - 276, 277, 0, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 0, 1101, - 273, 274, 275, 276, 277, 0, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 0, 1103, 273, 274, 275, 276, 277, 0, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 0, 1208, 273, 274, 275, 276, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 1210, 273, - 274, 275, 276, 277, 0, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 0, 1212, 273, 274, 275, 276, 277, 0, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 1223, 273, 274, 275, 276, 277, - 0, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 1224, 273, 274, - 275, 276, 277, 0, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287, 0, - 1225, 273, 274, 275, 276, 277, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 0, 0, 0, 0, - 0, 287, 0, 1382, 273, 274, 275, 276, 277, 0, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 0, - 0, 0, 0, 0, 287, 0, 1383, 273, 274, 275, - 276, 277, 0, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 0, 0, 0, 0, 0, 287, 0, 1384, - 273, 274, 275, 276, 277, 0, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 0, 0, 0, 0, 0, - 287, 0, 1464, 273, 274, 275, 276, 277, 0, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 0, 0, - 0, 0, 0, 287, 0, 1465, 273, 274, 275, 276, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 0, 0, 0, 0, 0, 287, 0, 1466, 273, - 274, 275, 276, 277, 0, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 0, 0, 0, 0, 0, 287, - 0, 1512, 273, 274, 275, 276, 277, 0, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 0, 0, 0, - 0, 0, 287, 0, 1513, 273, 274, 275, 276, 277, - 0, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 0, 0, 0, 0, 0, 287, 0, 1514, 273, 274, - 275, 276, 277, 0, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 0, 0, 0, 0, 0, 287 + 113, 114, 115, 116, 117, 1077, 1528, 125, 126, 1544, + 1546, 1548, 1549, 127, 704, 69, 70, 71, 130, 1300, + 1206, 0, 969, 1397, 461, 121, 122, 123, 124, 0, + 0, 0, 0, 0, 0, 0, 0, 506, 0, 125, + 126, 0, 1012, 0, 0, 127, 128, 129, 0, 0, + 130, 1423, 131, 0, 132, 0, 275, 276, 277, 278, + 279, 613, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 0, 1453, + 125, 126, 758, 0, 0, 0, 127, 0, 0, 0, + 0, 130, 0, 0, 0, 0, 0, 790, 0, 0, + 0, 0, 0, 275, 276, 277, 278, 279, 1474, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 1488, 289, 275, 276, 277, 278, 279, 0, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 125, 126, 0, 289, 0, 0, 127, 0, 0, + 0, 0, 130, 0, 0, 0, 0, 0, 275, 276, + 277, 278, 279, 0, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 275, 276, 277, 278, 279, 289, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 275, 276, + 277, 278, 279, 289, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 0, + 0, 0, 275, 276, 277, 278, 279, 0, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 0, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 275, 276, + 277, 278, 279, 289, 280, 281, 282, 283, 284, 285, + 286, 287, 288, -10, 1, 0, -10, -53, 289, 275, + 276, 277, 278, 279, 0, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 0, 0, 0, 0, 0, 997, -53, 998, 0, 0, + -53, -53, -53, -53, -53, -53, -53, -53, -53, 0, + -53, -53, -53, -53, -53, -53, -53, 0, 0, 0, + -53, -53, -53, -53, -53, -53, -53, 0, -53, -53, + -53, -53, -53, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -53, -53, -53, 0, + 0, 0, 0, 0, 0, -53, 0, -53, -53, -53, + -53, -53, -53, -53, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 199, 0, + 0, 0, 0, -10, -10, -10, -10, -10, -10, -10, + -10, 26, 27, 28, 29, 30, 31, 32, 33, 0, + 34, 0, 36, 37, 0, 39, 40, 0, -53, 2, + 3, 0, 4, 0, 26, 27, 28, 29, 30, 31, + 32, 33, 52, 34, 0, 36, 37, 0, 39, 40, + 0, 0, 0, 0, 0, 0, 53, 54, 55, 200, + 201, 202, 0, 0, 0, 52, 0, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 0, 0, 53, + 54, 55, 0, 0, 0, 213, 214, 215, 216, 217, + 218, 219, 220, 221, 222, 0, 223, 224, 225, 226, + 227, 228, 0, 0, 0, 0, 0, 0, 0, 23, + 0, 0, 0, 275, 276, 277, 278, 279, 64, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 0, 0, 0, 24, 479, + 0, 64, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 0, 34, 35, 36, 37, 38, 39, 40, 0, + 492, 0, 41, 42, 43, 44, 45, 46, 47, 0, + 48, 49, 50, 51, 52, 0, 0, 0, 0, 0, + 0, 0, 0, 497, 0, 0, 0, 0, 53, 54, + 55, 0, 0, 0, 0, 0, 0, 56, 0, 57, + 58, 59, 60, 61, 62, 63, 275, 276, 277, 278, + 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 0, 0, + 0, 0, 1138, 0, 1139, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 64, 0, 0, 0, 0, 289, 0, 0, 0, 0, + 0, 1233, 0, 1234, 0, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 0, 275, 276, + 277, 278, 279, 449, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 0, + 0, 275, 276, 277, 278, 279, 454, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 0, 0, 275, 276, 277, 278, 279, 456, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 0, 0, 275, 276, 277, + 278, 279, 635, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 0, 0, + 275, 276, 277, 278, 279, 639, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 0, 275, 276, 277, 278, 279, 640, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 0, 275, 276, 277, 278, + 279, 777, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 0, 275, + 276, 277, 278, 279, 995, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 0, 0, 275, 276, 277, 278, 279, 1153, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 0, 0, 275, 276, 277, 278, 279, + 1195, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 0, 275, 276, + 277, 278, 279, 1196, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 0, + 0, 275, 276, 277, 278, 279, 1197, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 0, 0, 275, 276, 277, 278, 279, 1202, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 0, 0, 275, 276, 277, + 278, 279, 1203, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 0, 0, + 275, 276, 277, 278, 279, 1236, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 0, 275, 276, 277, 278, 279, 1298, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 0, 275, 276, 277, 278, + 279, 1408, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 0, 275, + 276, 277, 278, 279, 1437, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 480, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 584, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 591, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 592, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 593, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 653, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 654, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 655, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 775, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 776, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 905, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 906, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 919, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 920, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 951, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 952, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 953, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 954, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 955, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 956, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 957, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 958, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 959, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 960, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 961, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 962, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 973, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 980, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 1086, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 1087, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 1095, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 1098, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 1109, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 1114, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 1117, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 1119, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 1120, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 1121, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 1122, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 1123, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 1124, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 1125, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 1126, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 1127, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 1128, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 1129, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 1130, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 1135, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 1136, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 1212, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 1221, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 1222, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 1223, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 1224, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 1225, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 1226, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 1227, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 1228, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 1229, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 1286, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 1287, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 1288, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 1289, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 1290, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 1291, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 1292, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 1293, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 1294, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 1336, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 1337, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 1338, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 1339, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 1340, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 1341, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 1342, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 1343, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 1344, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 1379, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 1383, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 1384, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 1385, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 1386, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 1387, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 1388, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 1407, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 1412, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 1413, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 1414, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 1415, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 1416, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 1417, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 1440, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 1441, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 1442, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 1443, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 1444, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 275, 276, 277, 278, + 279, 1445, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 275, 276, 277, + 278, 279, 1468, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 275, 276, + 277, 278, 279, 1469, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 275, + 276, 277, 278, 279, 1470, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 275, 276, 277, 278, 279, 1482, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 275, 276, 277, 278, 279, 1483, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 275, 276, 277, 278, 279, 1484, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 275, 276, 277, 278, 279, 1499, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 275, 276, 277, 278, 279, 1500, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 275, 276, 277, 278, 279, + 1501, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 0, 0, 424, + 275, 276, 277, 278, 279, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 0, 0, 545, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 0, 0, 657, + 275, 276, 277, 278, 279, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 0, 0, 850, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 0, 0, 971, + 275, 276, 277, 278, 279, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 418, 275, 276, 277, 278, 279, 0, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 448, 275, 276, 277, 278, + 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 450, 275, + 276, 277, 278, 279, 0, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 0, 451, 275, 276, 277, 278, 279, 0, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 0, 453, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 457, 275, 276, + 277, 278, 279, 0, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 0, + 458, 275, 276, 277, 278, 279, 0, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 0, 465, 275, 276, 277, 278, 279, 0, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 0, 500, 275, 276, 277, + 278, 279, 0, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 0, 501, + 275, 276, 277, 278, 279, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 504, 275, 276, 277, 278, 279, 0, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 507, 275, 276, 277, 278, + 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 573, 275, + 276, 277, 278, 279, 0, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 0, 574, 275, 276, 277, 278, 279, 0, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 0, 575, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 576, 275, 276, + 277, 278, 279, 0, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 0, + 577, 275, 276, 277, 278, 279, 0, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 0, 578, 275, 276, 277, 278, 279, 0, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 0, 579, 275, 276, 277, + 278, 279, 0, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 0, 580, + 275, 276, 277, 278, 279, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 581, 275, 276, 277, 278, 279, 0, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 582, 275, 276, 277, 278, + 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 583, 275, + 276, 277, 278, 279, 0, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 0, 585, 275, 276, 277, 278, 279, 0, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 0, 586, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 587, 275, 276, + 277, 278, 279, 0, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 0, + 588, 275, 276, 277, 278, 279, 0, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 0, 589, 275, 276, 277, 278, 279, 0, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 0, 590, 275, 276, 277, + 278, 279, 0, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 0, 620, + 275, 276, 277, 278, 279, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 623, 275, 276, 277, 278, 279, 0, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 636, 275, 276, 277, 278, + 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 637, 275, + 276, 277, 278, 279, 0, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 0, 641, 275, 276, 277, 278, 279, 0, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 0, 642, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 643, 275, 276, + 277, 278, 279, 0, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 0, + 644, 275, 276, 277, 278, 279, 0, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 0, 645, 275, 276, 277, 278, 279, 0, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 0, 663, 275, 276, 277, + 278, 279, 0, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 0, 667, + 275, 276, 277, 278, 279, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 846, 275, 276, 277, 278, 279, 0, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 847, 275, 276, 277, 278, + 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 848, 275, + 276, 277, 278, 279, 0, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 0, 849, 275, 276, 277, 278, 279, 0, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 0, 909, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 996, 275, 276, + 277, 278, 279, 0, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 0, + 1017, 275, 276, 277, 278, 279, 0, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 0, 1104, 275, 276, 277, 278, 279, 0, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 0, 1108, 275, 276, 277, + 278, 279, 0, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 0, 1110, + 275, 276, 277, 278, 279, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 1215, 275, 276, 277, 278, 279, 0, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 1217, 275, 276, 277, 278, + 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 1219, 275, + 276, 277, 278, 279, 0, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 0, 1230, 275, 276, 277, 278, 279, 0, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 0, 1231, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289, 0, 1232, 275, 276, + 277, 278, 279, 0, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 0, 0, 0, 289, 0, + 1389, 275, 276, 277, 278, 279, 0, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, + 0, 289, 0, 1390, 275, 276, 277, 278, 279, 0, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 0, 0, 0, 289, 0, 1391, 275, 276, 277, + 278, 279, 0, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 0, 0, 0, 0, 0, 289, 0, 1471, + 275, 276, 277, 278, 279, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 0, 0, 0, + 289, 0, 1472, 275, 276, 277, 278, 279, 0, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, + 0, 0, 0, 289, 0, 1473, 275, 276, 277, 278, + 279, 0, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 0, 0, 0, 0, 0, 289, 0, 1519, 275, + 276, 277, 278, 279, 0, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 0, 0, 0, 289, + 0, 1520, 275, 276, 277, 278, 279, 0, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, + 0, 0, 289, 0, 1521, 275, 276, 277, 278, 279, + 0, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 0, 0, 0, 289 }; static const short yycheck[] = { 23, - 23, 265, 87, 732, 328, 79, 267, 257, 258, 259, - 4, 4, 4, 3, 44, 919, 4, 4, 64, 64, - 42, 7, 6, 1138, 928, 1002, 303, 7, 181, 3, - 183, 935, 65, 65, 3, 4, 5, 70, 70, 303, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 6, 34, 35, 36, 180, 3, - 4, 86, 184, 4, 6, 9, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 65, - 124, 125, 126, 179, 70, 129, 130, 49, 132, 185, - 168, 169, 100, 6, 1091, 139, 140, 141, 142, 7, - 144, 145, 196, 147, 148, 149, 184, 151, 186, 38, - 859, 179, 41, 179, 164, 165, 166, 185, 149, 185, - 185, 6, 172, 167, 168, 119, 120, 121, 122, 123, - 124, 125, 126, 186, 186, 6, 7, 179, 89, 90, - 421, 185, 4, 187, 179, 189, 190, 444, 154, 155, - 156, 157, 422, 7, 154, 155, 156, 157, 1293, 169, - 444, 458, 7, 180, 168, 169, 179, 184, 1092, 175, - 176, 185, 1096, 185, 458, 175, 176, 185, 185, 168, - 169, 6, 180, 183, 234, 174, 184, 231, 41, 42, - 179, 44, 236, 237, 238, 239, 240, 241, 242, 243, + 23, 267, 88, 4, 330, 259, 260, 261, 4, 80, + 305, 737, 4, 3, 44, 4, 42, 269, 4, 6, + 1145, 926, 87, 6, 64, 1009, 65, 65, 7, 64, + 935, 70, 70, 65, 180, 3, 4, 942, 70, 305, + 186, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 6, 6, 176, 177, 4, + 3, 4, 4, 182, 180, 184, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 101, 125, 126, 127, 180, 150, 130, 131, 49, 133, + 186, 6, 169, 170, 1098, 180, 140, 141, 142, 143, + 7, 145, 146, 180, 148, 149, 150, 198, 152, 186, + 171, 172, 173, 169, 170, 165, 166, 167, 179, 865, + 180, 169, 170, 173, 168, 169, 186, 6, 187, 187, + 186, 186, 447, 6, 180, 90, 91, 185, 90, 91, + 181, 6, 186, 187, 185, 189, 461, 191, 192, 7, + 6, 425, 424, 4, 5, 1300, 155, 156, 157, 158, + 170, 447, 169, 170, 6, 186, 169, 170, 180, 182, + 186, 184, 169, 170, 1099, 461, 8, 186, 1103, 180, + 186, 169, 170, 34, 35, 36, 236, 175, 185, 233, + 187, 185, 180, 187, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 6, 168, 169, 168, 169, 6, 38, - 174, 265, 41, 42, 267, 179, 5, 89, 90, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 168, 169, 154, 155, 156, 157, - 294, 168, 169, 297, 6, 34, 35, 36, 302, 303, - 179, 185, 4, 5, 308, 309, 310, 184, 312, 313, - 314, 315, 316, 317, 318, 325, 326, 179, 1202, 1203, - 1204, 1205, 168, 169, 179, 1209, 330, 331, 332, 168, - 169, 335, 34, 35, 36, 184, 593, 186, 342, 185, - 154, 155, 156, 157, 348, 184, 180, 186, 46, 593, - 184, 1060, 8, 597, 175, 176, 168, 169, 175, 176, - 179, 175, 176, 6, 594, 180, 183, 624, 180, 184, - 38, 39, 40, 41, 42, 43, 44, 45, 179, 47, - 624, 49, 50, 386, 52, 53, 168, 169, 179, 1273, - 1274, 168, 169, 1277, 168, 169, 168, 169, 168, 169, - 42, 69, 184, 38, 186, 179, 41, 42, 185, 44, - 179, 185, 184, 417, 184, 83, 84, 179, 421, 423, - 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 168, 169, 168, 169, 179, 168, 169, 42, - 444, 1325, 180, 168, 169, 42, 184, 176, 184, 44, - 184, 180, 456, 184, 458, 180, 460, 461, 175, 176, - 179, 184, 466, 186, 181, 475, 183, 168, 169, 170, - 171, 172, 476, 477, 55, 56, 144, 178, 185, 175, - 176, 485, 185, 724, 725, 181, 185, 183, 492, 42, - 1374, 170, 171, 172, 751, 6, 7, 501, 502, 178, - 6, 6, 158, 159, 160, 161, 162, 751, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 184, 186, 186, - 1404, 6, 178, 175, 176, 184, 184, 186, 186, 181, - 186, 183, 179, 179, 184, 186, 186, 4, 541, 104, - 105, 106, 107, 108, 3, 4, 184, 184, 186, 186, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 4, 3, 580, 58, 59, 60, - 61, 42, 63, 587, 588, 589, 590, 179, 892, 593, - 184, 5, 186, 597, 6, 184, 600, 186, 184, 184, - 186, 186, 612, 179, 184, 609, 186, 1491, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 179, 6, 849, - 624, 625, 178, 184, 184, 186, 186, 184, 5, 186, - 184, 696, 186, 184, 184, 186, 186, 179, 179, 649, - 650, 651, 179, 179, 179, 179, 179, 179, 179, 179, - 654, 655, 179, 657, 179, 179, 179, 667, 888, 179, - 179, 665, 666, 3, 4, 179, 676, 179, 185, 9, - 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 179, 185, 179, 700, 701, 702, 703, - 704, 705, 706, 707, 708, 709, 710, 711, 8, 168, - 169, 179, 185, 179, 179, 174, 179, 179, 4, 179, - 179, 179, 725, 182, 179, 179, 185, 179, 179, 733, - 6, 735, 185, 181, 788, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 751, 185, 753, - 185, 755, 160, 161, 162, 92, 164, 165, 166, 167, - 168, 169, 170, 171, 172, 769, 770, 771, 1072, 6, - 178, 5, 179, 179, 179, 179, 179, 179, 179, 179, - 784, 785, 179, 179, 179, 179, 179, 179, 3, 4, - 179, 4, 179, 179, 9, 10, 11, 12, 13, 14, + 254, 255, 256, 257, 258, 7, 169, 170, 5, 7, + 176, 177, 175, 267, 6, 7, 269, 180, 184, 169, + 170, 275, 276, 277, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 186, 34, 35, 36, + 169, 170, 296, 169, 170, 299, 41, 42, 180, 44, + 304, 305, 181, 169, 170, 46, 310, 311, 312, 185, + 314, 315, 316, 317, 318, 319, 320, 327, 328, 185, + 38, 187, 597, 41, 1209, 1210, 1211, 1212, 332, 333, + 334, 1216, 181, 337, 169, 170, 185, 155, 156, 157, + 158, 345, 38, 169, 170, 41, 42, 351, 44, 180, + 185, 597, 187, 628, 8, 601, 169, 170, 176, 177, + 186, 1067, 42, 185, 598, 187, 184, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, 628, 180, 169, 170, 389, 179, 38, 181, + 6, 41, 42, 176, 177, 1280, 1281, 169, 170, 1284, + 185, 169, 170, 155, 156, 157, 158, 155, 156, 157, + 158, 169, 170, 185, 181, 181, 420, 185, 185, 185, + 180, 424, 426, 181, 176, 177, 55, 56, 176, 177, + 169, 170, 171, 172, 173, 181, 176, 177, 54, 185, + 179, 42, 182, 447, 184, 176, 177, 1332, 181, 42, + 3, 182, 185, 184, 177, 459, 180, 461, 181, 463, + 464, 58, 59, 60, 61, 469, 63, 180, 478, 105, + 106, 107, 108, 109, 180, 479, 480, 185, 185, 187, + 187, 756, 44, 185, 488, 187, 185, 185, 187, 187, + 185, 495, 187, 185, 180, 187, 1381, 729, 730, 6, + 7, 505, 506, 186, 186, 159, 160, 161, 162, 163, + 756, 165, 166, 167, 168, 169, 170, 171, 172, 173, + 185, 185, 187, 187, 186, 179, 1411, 185, 185, 187, + 187, 42, 151, 187, 185, 6, 187, 156, 185, 185, + 187, 187, 545, 159, 160, 161, 162, 163, 6, 165, + 166, 167, 168, 169, 170, 171, 172, 173, 185, 178, + 187, 6, 185, 179, 187, 184, 185, 120, 121, 122, + 123, 124, 125, 126, 127, 185, 180, 187, 180, 4, + 584, 180, 4, 42, 3, 180, 180, 591, 592, 593, + 594, 5, 898, 597, 180, 180, 180, 601, 180, 180, + 604, 180, 180, 180, 180, 180, 616, 180, 180, 613, + 180, 180, 180, 1498, 180, 180, 180, 180, 5, 180, + 180, 855, 180, 180, 628, 629, 165, 166, 167, 168, + 169, 170, 171, 172, 173, 701, 6, 6, 180, 180, + 179, 186, 180, 653, 654, 655, 180, 180, 180, 186, + 186, 180, 180, 180, 658, 659, 4, 6, 662, 93, + 894, 186, 672, 186, 186, 182, 670, 671, 3, 4, + 6, 681, 180, 5, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 180, 180, + 180, 705, 706, 707, 708, 709, 710, 711, 712, 713, + 714, 715, 716, 180, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 180, 730, 180, 180, + 180, 180, 180, 180, 738, 181, 740, 180, 180, 180, + 180, 180, 180, 794, 180, 180, 4, 180, 180, 180, + 180, 180, 756, 180, 758, 179, 760, 71, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 180, + 774, 775, 776, 1079, 162, 163, 180, 165, 166, 167, + 168, 169, 170, 171, 172, 173, 790, 791, 180, 180, + 180, 179, 185, 7, 7, 3, 4, 7, 7, 185, + 419, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 184, 181, 7, 7, 832, + 187, 88, 186, 151, 169, 170, 5, 5, 5, 5, + 175, 5, 5, 5, 5, 180, 5, 5, 183, 5, + 5, 186, 856, 5, 5, 5, 5, 5, 5, 5, + 870, 5, 5, 5, 5, 138, 917, 5, 5, 5, + 5, 3, 5, 187, 5, 185, 6, 5, 181, 6, + 884, 885, 948, 4, 6, 184, 187, 7, 6, 899, + 894, 901, 7, 903, 7, 7, 6, 6, 187, 7, + 7, 905, 906, 7, 186, 186, 7, 7, 180, 7, + 152, 185, 916, 5, 185, 919, 185, 185, 185, 185, + 185, 185, 185, 185, 185, 929, 185, 6, 181, 185, + 185, 185, 936, 937, 938, 185, 185, 185, 185, 943, + 185, 185, 185, 947, 185, 185, 185, 951, 952, 953, + 954, 955, 956, 957, 958, 959, 960, 961, 962, 185, + 185, 169, 170, 185, 185, 185, 185, 175, 1019, 973, + 4, 6, 180, 180, 180, 183, 980, 180, 186, 161, + 162, 163, 180, 165, 166, 167, 168, 169, 170, 171, + 172, 173, 180, 997, 180, 180, 180, 179, 6, 618, + 619, 6, 621, 180, 180, 6, 625, 626, 3, 4, + 180, 1015, 183, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 179, 179, - 179, 179, 179, 826, 179, 179, 179, 179, 168, 169, - 179, 179, 179, 179, 174, 179, 6, 87, 180, 179, - 178, 184, 182, 184, 7, 185, 850, 7, 183, 7, - 186, 7, 180, 7, 864, 7, 910, 150, 158, 159, - 160, 161, 162, 185, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 5, 878, 879, 941, 5, 178, 5, - 180, 5, 5, 893, 888, 895, 6, 897, 5, 5, - 5, 5, 5, 5, 5, 899, 900, 5, 5, 5, - 5, 5, 5, 5, 5, 909, 161, 162, 912, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 922, 5, - 5, 5, 5, 178, 5, 929, 930, 931, 137, 5, - 5, 3, 936, 6, 54, 5, 940, 5, 5, 184, - 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, - 954, 955, 180, 168, 169, 6, 4, 6, 1012, 174, - 7, 6, 966, 7, 179, 7, 7, 182, 6, 973, - 185, 6, 183, 7, 7, 7, 150, 6, 186, 186, - 185, 155, 185, 7, 179, 7, 990, 151, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 177, 1008, 8, 3, 4, 178, 183, - 184, 184, 9, 10, 11, 12, 13, 14, 15, 16, + 25, 26, 27, 28, 29, 30, 31, 32, 6, 6, + 180, 660, 661, 182, 7, 664, 7, 7, 7, 7, + 7, 7, 186, 7, 7, 7, 7, 7, 4, 678, + 679, 6, 148, 7, 7, 684, 685, 3, 3, 3, + 3, 3, 691, 3, 693, 171, 3, 6, 1082, 1083, + 1084, 3, 1086, 1087, 3, 3, 3, 3, 3, 1093, + 3, 5, 3, 5, 3, 184, 6, 1101, 4, 181, + 181, 6, 186, 7, 1155, 1109, 184, 6, 6, 6, + 1114, 6, 6, 1117, 6, 1119, 1120, 1121, 1122, 1123, + 1124, 1125, 1126, 1127, 1128, 1129, 1130, 6, 186, 185, + 749, 1135, 751, 185, 1138, 181, 185, 181, 185, 181, + 89, 6, 761, 762, 763, 185, 185, 766, 767, 768, + 769, 770, 771, 772, 185, 181, 181, 1208, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, 185, 169, 170, 185, 184, 179, 185, + 175, 185, 185, 181, 181, 180, 185, 6, 183, 185, + 4, 186, 159, 160, 161, 162, 163, 1248, 165, 166, + 167, 168, 169, 170, 171, 172, 173, 8, 185, 185, + 185, 185, 179, 185, 6, 90, 6, 1221, 1222, 1223, + 1224, 1225, 1226, 1227, 1228, 1229, 6, 6, 183, 1233, + 159, 160, 161, 162, 163, 854, 165, 166, 167, 168, + 169, 170, 171, 172, 173, 6, 6, 6, 6, 6, + 179, 6, 6, 1304, 159, 160, 161, 162, 163, 6, + 165, 166, 167, 168, 169, 170, 171, 172, 173, 6, + 6, 6, 6, 89, 179, 7, 3, 6, 3, 3, + 1331, 171, 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, + 1294, 1295, 1296, 1297, 913, 6, 6, 6, 6, 6, + 3, 920, 6, 3, 6, 1356, 3, 6, 3, 3, + 6, 4, 184, 184, 6, 6, 183, 7, 6, 6, + 939, 187, 186, 186, 186, 181, 1330, 185, 185, 181, + 86, 185, 1336, 1337, 1338, 1339, 1340, 1341, 1342, 1343, + 1344, 1345, 185, 1347, 185, 1349, 181, 181, 185, 181, + 181, 91, 6, 181, 181, 185, 185, 4, 159, 160, + 161, 162, 163, 89, 165, 166, 167, 168, 169, 170, + 171, 172, 173, 148, 1378, 1379, 6, 3, 179, 1383, + 1384, 1385, 1386, 1387, 1388, 6, 38, 39, 40, 41, + 42, 43, 44, 45, 6, 47, 3, 49, 50, 5, + 52, 53, 6, 1407, 6, 6, 6, 6, 1412, 1413, + 1414, 1415, 1416, 1417, 1418, 1419, 1420, 69, 6, 3, + 6, 6, 5, 187, 6, 187, 6, 6, 181, 6, + 6, 83, 84, 85, 186, 186, 1440, 1441, 1442, 1443, + 1444, 1445, 1446, 185, 1448, 6, 1450, 185, 159, 160, + 161, 162, 163, 181, 165, 166, 167, 168, 169, 170, + 171, 172, 173, 185, 1468, 1469, 1470, 185, 179, 185, + 185, 1090, 185, 1092, 6, 181, 1095, 6, 1482, 1483, + 1484, 1485, 1486, 1487, 6, 6, 6, 6, 6, 6, + 5, 5, 1111, 145, 86, 1499, 1500, 1501, 1502, 185, + 1504, 186, 1506, 185, 187, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + 185, 181, 1526, 1527, 1528, 179, 181, 185, 185, 148, + 186, 1535, 185, 1537, 6, 1539, 3, 4, 186, 5, + 186, 6, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 184, 6, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 184, 184, 184, 5, 184, 178, 184, - 6, 4, 184, 184, 6, 184, 184, 6, 6, 6, - 180, 1075, 1076, 1077, 6, 1079, 1080, 7, 7, 7, - 7, 7, 1086, 7, 184, 184, 184, 184, 184, 184, - 1094, 184, 184, 184, 1148, 6, 184, 184, 1102, 7, - 7, 179, 184, 1107, 184, 184, 1110, 184, 1112, 1113, - 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, - 184, 184, 184, 179, 1128, 179, 179, 1131, 185, 158, - 159, 160, 161, 162, 7, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 6, 182, 7, 1201, 179, 178, - 7, 179, 179, 179, 179, 158, 159, 160, 161, 162, - 179, 164, 165, 166, 167, 168, 169, 170, 171, 172, - 179, 168, 169, 179, 181, 178, 7, 174, 7, 4, - 6, 147, 179, 7, 7, 3, 3, 1241, 185, 158, - 159, 160, 161, 162, 6, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 3, 170, 3, 3, 3, 178, - 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 3, - 3, 3, 1226, 3, 3, 3, 158, 159, 160, 161, - 162, 3, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 3, 416, 1297, 5, 5, 178, 158, 159, 160, - 161, 162, 3, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 3, 6, 4, 180, 180, 178, 7, 6, - 1324, 183, 6, 183, 6, 1279, 1280, 1281, 1282, 1283, - 1284, 1285, 1286, 1287, 1288, 1289, 1290, 6, 6, 185, - 6, 185, 184, 184, 88, 1349, 158, 159, 160, 161, - 162, 180, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 180, 184, 184, 180, 180, 178, 184, 6, 1323, - 184, 184, 180, 6, 184, 1329, 1330, 1331, 1332, 1333, - 1334, 1335, 1336, 1337, 1338, 184, 1340, 184, 1342, 184, - 184, 184, 180, 184, 184, 184, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 180, 184, 184, 184, 4, 178, 1371, 1372, 183, - 6, 6, 1376, 1377, 1378, 1379, 1380, 1381, 89, 6, - 38, 39, 40, 41, 42, 43, 44, 45, 6, 47, - 182, 49, 50, 6, 52, 53, 1400, 6, 6, 6, - 6, 1405, 1406, 1407, 1408, 1409, 1410, 1411, 1412, 1413, - 6, 69, 6, 6, 6, 6, 6, 6, 88, 7, - 3, 6, 3, 170, 6, 83, 84, 6, 6, 1433, - 1434, 1435, 1436, 1437, 1438, 1439, 3, 1441, 6, 1443, - 614, 615, 3, 617, 6, 3, 6, 621, 622, 6, - 3, 3, 3, 7, 183, 4, 6, 1461, 1462, 1463, - 6, 6, 6, 183, 6, 182, 85, 180, 180, 90, - 185, 1475, 1476, 1477, 1478, 1479, 1480, 186, 185, 185, - 184, 184, 656, 184, 184, 659, 144, 184, 1492, 1493, - 1494, 1495, 184, 1497, 180, 1499, 180, 184, 180, 673, - 674, 180, 180, 184, 180, 679, 680, 6, 4, 147, - 5, 88, 686, 6, 688, 1519, 1520, 1521, 3, 6, - 6, 3, 6, 6, 1528, 6, 1530, 6, 1532, 3, - 4, 6, 3, 6, 6, 9, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 6, - 186, 6, 5, 185, 6, 185, 180, 184, 184, 6, - 744, 186, 746, 184, 184, 180, 6, 180, 6, 6, - 184, 6, 756, 757, 758, 184, 184, 761, 762, 763, - 764, 765, 766, 767, 3, 4, 5, 5, 7, 6, + 27, 28, 29, 30, 31, 32, 5, 185, 6, 185, + 187, 186, 185, 181, 86, 6, 181, 187, 6, 6, + 1199, 3, 4, 6, 187, 1204, 1205, 9, 10, 11, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 6, 6, 3, 4, 5, 186, 7, 185, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 6, 34, 35, 36, 185, 6, 153, + 185, 154, 185, 6, 3, 4, 5, 1276, 1277, 186, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 6, 34, 35, 36, 3, 4, - 6, 186, 6, 6, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 6, 158, - 159, 160, 161, 162, 6, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 848, 6, 6, 185, 6, 178, - 5, 184, 184, 184, 184, 85, 180, 184, 180, 147, - 6, 6, 5, 184, 168, 169, 185, 185, 6, 5, - 174, 8, 85, 6, 184, 179, 6, 185, 184, 186, - 180, 185, 180, 158, 159, 160, 161, 162, 185, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 8, 184, - 184, 6, 906, 178, 186, 6, 6, 6, 186, 913, - 6, 185, 152, 8, 184, 154, 155, 156, 157, 184, - 153, 184, 184, 6, 185, 6, 185, 180, 932, 168, - 169, 185, 184, 6, 6, 174, 175, 176, 6, 6, - 179, 184, 181, 184, 183, 8, 158, 159, 160, 161, - 162, 185, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 185, 185, 168, 169, 184, 178, 6, 6, 174, - 3, 4, 6, 180, 179, 6, 9, 10, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 158, 159, 160, 161, 162, 185, 164, 165, 166, 167, - 168, 169, 170, 171, 172, 185, 185, 6, 6, 6, - 178, 158, 159, 160, 161, 162, 0, 164, 165, 166, - 167, 168, 169, 170, 171, 172, 0, 7, 543, 7, - 7, 178, 853, -1, 904, -1, -1, 1268, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 158, 159, 160, 161, 162, 178, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, 1083, - -1, 1085, -1, 178, 1088, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 158, 159, 160, 161, 162, - 1104, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 0, 1, -1, 3, - 4, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 168, 169, -1, -1, -1, - -1, 174, -1, -1, -1, -1, 179, -1, -1, 33, - -1, -1, -1, 37, 38, 39, 40, 41, 42, 43, - 44, 45, -1, 47, 48, 49, 50, 51, 52, 53, - -1, -1, -1, 57, 58, 59, 60, 61, 62, 63, - -1, 65, 66, 67, 68, 69, -1, -1, 1192, -1, - -1, -1, -1, 1197, 1198, -1, -1, -1, -1, 83, - 84, -1, -1, -1, -1, -1, -1, 91, 41, 93, - 94, 95, 96, 97, 98, 99, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 119, 120, 121, 122, 123, - 124, 125, 126, 38, 39, 40, 41, 42, 43, 44, - 45, -1, 47, -1, 49, 50, -1, 52, 53, -1, - 144, 145, 146, -1, 148, 1269, 1270, -1, 101, 102, - 103, -1, -1, -1, 69, -1, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, -1, -1, 83, 84, - -1, -1, -1, -1, 127, 128, 129, 130, 131, 132, - 133, 134, 135, 136, -1, 138, 139, 140, 141, 142, - 143, -1, -1, -1, -1, -1, -1, 1321, -1, -1, - -1, 4, 1326, 158, 159, 160, 161, 162, -1, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, -1, -1, -1, -1, -1, 144, - 33, 186, -1, -1, 37, 38, 39, 40, 41, 42, - 43, 44, 45, -1, 47, 48, 49, 50, 51, 52, - 53, 1375, -1, -1, 57, 58, 59, 60, 61, 62, - 63, -1, 65, 66, 67, 68, 69, -1, -1, -1, - -1, 186, -1, -1, -1, -1, -1, -1, -1, 1403, - 83, 84, -1, -1, -1, -1, -1, -1, 91, -1, - 93, 94, 95, 96, 97, 98, 99, -1, -1, -1, - -1, -1, 158, 159, 160, 161, 162, 1431, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, -1, -1, -1, -1, 184, -1, - 186, -1, -1, -1, -1, -1, 1460, -1, -1, -1, - -1, 144, -1, -1, -1, 158, 159, 160, 161, 162, - 1474, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, - -1, 184, -1, 186, 158, 159, 160, 161, 162, -1, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, - 184, -1, 186, 158, 159, 160, 161, 162, -1, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, -1, -1, 158, 159, 160, 161, - 162, 186, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, -1, 158, - 159, 160, 161, 162, 186, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - -1, -1, 158, 159, 160, 161, 162, 186, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, -1, 158, 159, 160, 161, 162, - 186, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, -1, 158, 159, - 160, 161, 162, 186, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, -1, - -1, 158, 159, 160, 161, 162, 186, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, -1, 158, 159, 160, 161, 162, 186, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, -1, -1, 158, 159, 160, - 161, 162, 186, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, -1, -1, - 158, 159, 160, 161, 162, 186, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, -1, -1, 158, 159, 160, 161, 162, 186, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, -1, -1, 158, 159, 160, 161, - 162, 186, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, -1, 158, - 159, 160, 161, 162, 186, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - -1, -1, 158, 159, 160, 161, 162, 186, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, -1, 158, 159, 160, 161, 162, - 186, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, -1, 158, 159, - 160, 161, 162, 186, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, -1, - -1, 158, 159, 160, 161, 162, 186, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, -1, 158, 159, 160, 161, 162, 186, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, 158, 159, 160, 161, 162, 184, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, 158, 159, 160, 161, 162, 184, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, 158, 159, 160, 161, 162, 184, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, 158, 159, 160, 161, 162, - 184, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, 158, 159, 160, 161, - 162, 184, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, 158, 159, 160, - 161, 162, 184, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, 158, 159, - 160, 161, 162, 184, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, 158, - 159, 160, 161, 162, 184, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - 158, 159, 160, 161, 162, 184, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, 158, 159, 160, 161, 162, 184, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, -1, -1, 182, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, -1, -1, - 182, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, -1, -1, 182, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, -1, -1, - 182, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, -1, -1, 182, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, 180, 158, - 159, 160, 161, 162, -1, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - -1, 180, 158, 159, 160, 161, 162, -1, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, 180, 158, 159, 160, 161, 162, - -1, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, 180, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, -1, - 180, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, 180, 158, 159, 160, 161, 162, -1, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, -1, 180, 158, 159, 160, - 161, 162, -1, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, -1, 180, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, -1, 180, 158, 159, 160, 161, 162, -1, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, -1, 180, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, 180, 158, - 159, 160, 161, 162, -1, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - -1, 180, 158, 159, 160, 161, 162, -1, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, 180, 158, 159, 160, 161, 162, - -1, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, 180, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, -1, - 180, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, 180, 158, 159, 160, 161, 162, -1, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, -1, 180, 158, 159, 160, - 161, 162, -1, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, -1, 180, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, -1, 180, 158, 159, 160, 161, 162, -1, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, -1, 180, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, 180, 158, - 159, 160, 161, 162, -1, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - -1, 180, 158, 159, 160, 161, 162, -1, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, 180, 158, 159, 160, 161, 162, - -1, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, 180, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, -1, - 180, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, 180, 158, 159, 160, 161, 162, -1, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, -1, 180, 158, 159, 160, - 161, 162, -1, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, -1, 180, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, -1, 180, 158, 159, 160, 161, 162, -1, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, -1, 180, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, 180, 158, - 159, 160, 161, 162, -1, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - -1, 180, 158, 159, 160, 161, 162, -1, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, 180, 158, 159, 160, 161, 162, - -1, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, 180, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, -1, - 180, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, 180, 158, 159, 160, 161, 162, -1, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, -1, 180, 158, 159, 160, - 161, 162, -1, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, -1, 180, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, -1, 180, 158, 159, 160, 161, 162, -1, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, -1, 180, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, 180, 158, - 159, 160, 161, 162, -1, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - -1, 180, 158, 159, 160, 161, 162, -1, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, 180, 158, 159, 160, 161, 162, - -1, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, 180, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, -1, - 180, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, 180, 158, 159, 160, 161, 162, -1, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, -1, 180, 158, 159, 160, - 161, 162, -1, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, -1, 180, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, -1, 180, 158, 159, 160, 161, 162, -1, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, -1, 180, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, 180, 158, - 159, 160, 161, 162, -1, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - -1, 180, 158, 159, 160, 161, 162, -1, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, 180, 158, 159, 160, 161, 162, - -1, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, 180, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178, -1, - 180, 158, 159, 160, 161, 162, -1, 164, 165, 166, - 167, 168, 169, 170, 171, 172, -1, -1, -1, -1, - -1, 178, -1, 180, 158, 159, 160, 161, 162, -1, - 164, 165, 166, 167, 168, 169, 170, 171, 172, -1, - -1, -1, -1, -1, 178, -1, 180, 158, 159, 160, - 161, 162, -1, 164, 165, 166, 167, 168, 169, 170, - 171, 172, -1, -1, -1, -1, -1, 178, -1, 180, - 158, 159, 160, 161, 162, -1, 164, 165, 166, 167, - 168, 169, 170, 171, 172, -1, -1, -1, -1, -1, - 178, -1, 180, 158, 159, 160, 161, 162, -1, 164, - 165, 166, 167, 168, 169, 170, 171, 172, -1, -1, - -1, -1, -1, 178, -1, 180, 158, 159, 160, 161, - 162, -1, 164, 165, 166, 167, 168, 169, 170, 171, - 172, -1, -1, -1, -1, -1, 178, -1, 180, 158, - 159, 160, 161, 162, -1, 164, 165, 166, 167, 168, - 169, 170, 171, 172, -1, -1, -1, -1, -1, 178, - -1, 180, 158, 159, 160, 161, 162, -1, 164, 165, - 166, 167, 168, 169, 170, 171, 172, -1, -1, -1, - -1, -1, 178, -1, 180, 158, 159, 160, 161, 162, - -1, 164, 165, 166, 167, 168, 169, 170, 171, 172, - -1, -1, -1, -1, -1, 178, -1, 180, 158, 159, - 160, 161, 162, -1, 164, 165, 166, 167, 168, 169, - 170, 171, 172, -1, -1, -1, -1, -1, 178 + 29, 30, 31, 32, 186, 34, 35, 36, 186, 185, + 6, 181, 6, 6, 6, 6, 6, 185, 185, 6, + 186, 186, 169, 170, 186, 185, 6, 6, 175, 1328, + 181, 6, 6, 180, 1333, 3, 4, 186, 186, 186, + 6, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 6, 186, 169, 170, 6, + 6, 0, 0, 175, 547, 7, 7, 7, 180, 1275, + 6, -1, 859, 1382, 186, 155, 156, 157, 158, -1, + -1, -1, -1, -1, -1, -1, -1, 8, -1, 169, + 170, -1, 911, -1, -1, 175, 176, 177, -1, -1, + 180, 1410, 182, -1, 184, -1, 159, 160, 161, 162, + 163, 8, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, -1, 1438, + 169, 170, 8, -1, -1, -1, 175, -1, -1, -1, + -1, 180, -1, -1, -1, -1, -1, 8, -1, -1, + -1, -1, -1, 159, 160, 161, 162, 163, 1467, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, 1481, 179, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, 169, 170, -1, 179, -1, -1, 175, -1, -1, + -1, -1, 180, -1, -1, -1, -1, -1, 159, 160, + 161, 162, 163, -1, 165, 166, 167, 168, 169, 170, + 171, 172, 173, 159, 160, 161, 162, 163, 179, 165, + 166, 167, 168, 169, 170, 171, 172, 173, 159, 160, + 161, 162, 163, 179, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, -1, + -1, -1, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, 170, 171, 172, 173, 159, 160, + 161, 162, 163, 179, 165, 166, 167, 168, 169, 170, + 171, 172, 173, 0, 1, -1, 3, 4, 179, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + -1, -1, -1, -1, -1, 185, 33, 187, -1, -1, + 37, 38, 39, 40, 41, 42, 43, 44, 45, -1, + 47, 48, 49, 50, 51, 52, 53, -1, -1, -1, + 57, 58, 59, 60, 61, 62, 63, -1, 65, 66, + 67, 68, 69, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 83, 84, 85, -1, + -1, -1, -1, -1, -1, 92, -1, 94, 95, 96, + 97, 98, 99, 100, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 41, -1, + -1, -1, -1, 120, 121, 122, 123, 124, 125, 126, + 127, 38, 39, 40, 41, 42, 43, 44, 45, -1, + 47, -1, 49, 50, -1, 52, 53, -1, 145, 146, + 147, -1, 149, -1, 38, 39, 40, 41, 42, 43, + 44, 45, 69, 47, -1, 49, 50, -1, 52, 53, + -1, -1, -1, -1, -1, -1, 83, 84, 85, 102, + 103, 104, -1, -1, -1, 69, -1, 110, 111, 112, + 113, 114, 115, 116, 117, 118, 119, -1, -1, 83, + 84, 85, -1, -1, -1, 128, 129, 130, 131, 132, + 133, 134, 135, 136, 137, -1, 139, 140, 141, 142, + 143, 144, -1, -1, -1, -1, -1, -1, -1, 4, + -1, -1, -1, 159, 160, 161, 162, 163, 145, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, -1, -1, -1, 33, 185, + -1, 145, 37, 38, 39, 40, 41, 42, 43, 44, + 45, -1, 47, 48, 49, 50, 51, 52, 53, -1, + 187, -1, 57, 58, 59, 60, 61, 62, 63, -1, + 65, 66, 67, 68, 69, -1, -1, -1, -1, -1, + -1, -1, -1, 187, -1, -1, -1, -1, 83, 84, + 85, -1, -1, -1, -1, -1, -1, 92, -1, 94, + 95, 96, 97, 98, 99, 100, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, -1, -1, + -1, -1, 185, -1, 187, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + 145, -1, -1, -1, -1, 179, -1, -1, -1, -1, + -1, 185, -1, 187, -1, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, -1, 159, 160, + 161, 162, 163, 187, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, -1, + -1, 159, 160, 161, 162, 163, 187, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, -1, -1, 159, 160, 161, 162, 163, 187, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, -1, -1, 159, 160, 161, + 162, 163, 187, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, -1, -1, + 159, 160, 161, 162, 163, 187, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, -1, 159, 160, 161, 162, 163, 187, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, -1, 159, 160, 161, 162, + 163, 187, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, -1, 159, + 160, 161, 162, 163, 187, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + -1, -1, 159, 160, 161, 162, 163, 187, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, -1, -1, 159, 160, 161, 162, 163, + 187, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, -1, 159, 160, + 161, 162, 163, 187, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, -1, + -1, 159, 160, 161, 162, 163, 187, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, -1, -1, 159, 160, 161, 162, 163, 187, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, -1, -1, 159, 160, 161, + 162, 163, 187, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, -1, -1, + 159, 160, 161, 162, 163, 187, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, -1, 159, 160, 161, 162, 163, 187, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, -1, 159, 160, 161, 162, + 163, 187, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, -1, 159, + 160, 161, 162, 163, 187, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, 159, 160, 161, 162, + 163, 185, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, 159, 160, 161, + 162, 163, 185, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, 159, 160, + 161, 162, 163, 185, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, 159, + 160, 161, 162, 163, 185, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + 159, 160, 161, 162, 163, 185, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, 159, 160, 161, 162, 163, 185, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, 159, 160, 161, 162, 163, 185, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, 159, 160, 161, 162, 163, 185, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, 159, 160, 161, 162, 163, 185, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, 159, 160, 161, 162, 163, + 185, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, -1, -1, 183, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, -1, -1, 183, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, -1, -1, 183, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, -1, -1, 183, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, -1, -1, 183, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, 181, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, 181, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, 181, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + -1, 181, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, -1, 181, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, 181, 159, 160, + 161, 162, 163, -1, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, -1, + 181, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, -1, 181, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, -1, 181, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, -1, 181, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, 181, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, 181, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, 181, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + -1, 181, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, -1, 181, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, 181, 159, 160, + 161, 162, 163, -1, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, -1, + 181, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, -1, 181, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, -1, 181, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, -1, 181, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, 181, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, 181, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, 181, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + -1, 181, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, -1, 181, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, 181, 159, 160, + 161, 162, 163, -1, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, -1, + 181, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, -1, 181, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, -1, 181, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, -1, 181, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, 181, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, 181, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, 181, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + -1, 181, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, -1, 181, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, 181, 159, 160, + 161, 162, 163, -1, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, -1, + 181, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, -1, 181, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, -1, 181, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, -1, 181, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, 181, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, 181, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, 181, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + -1, 181, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, -1, 181, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, 181, 159, 160, + 161, 162, 163, -1, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, -1, + 181, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, -1, 181, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, -1, 181, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, -1, 181, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, 181, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, 181, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, 181, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + -1, 181, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, -1, 181, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179, -1, 181, 159, 160, + 161, 162, 163, -1, 165, 166, 167, 168, 169, 170, + 171, 172, 173, -1, -1, -1, -1, -1, 179, -1, + 181, 159, 160, 161, 162, 163, -1, 165, 166, 167, + 168, 169, 170, 171, 172, 173, -1, -1, -1, -1, + -1, 179, -1, 181, 159, 160, 161, 162, 163, -1, + 165, 166, 167, 168, 169, 170, 171, 172, 173, -1, + -1, -1, -1, -1, 179, -1, 181, 159, 160, 161, + 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, + 172, 173, -1, -1, -1, -1, -1, 179, -1, 181, + 159, 160, 161, 162, 163, -1, 165, 166, 167, 168, + 169, 170, 171, 172, 173, -1, -1, -1, -1, -1, + 179, -1, 181, 159, 160, 161, 162, 163, -1, 165, + 166, 167, 168, 169, 170, 171, 172, 173, -1, -1, + -1, -1, -1, 179, -1, 181, 159, 160, 161, 162, + 163, -1, 165, 166, 167, 168, 169, 170, 171, 172, + 173, -1, -1, -1, -1, -1, 179, -1, 181, 159, + 160, 161, 162, 163, -1, 165, 166, 167, 168, 169, + 170, 171, 172, 173, -1, -1, -1, -1, -1, 179, + -1, 181, 159, 160, 161, 162, 163, -1, 165, 166, + 167, 168, 169, 170, 171, 172, 173, -1, -1, -1, + -1, -1, 179, -1, 181, 159, 160, 161, 162, 163, + -1, 165, 166, 167, 168, 169, 170, 171, 172, 173, + -1, -1, -1, -1, -1, 179 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/lib/bison.simple" @@ -4131,6 +4145,19 @@ case 171: break;} case 172: #line 1245 "Gmsh.y" +{ + if(List_Nbr(yyvsp[-1].l) > 3){ + Cdbseg101((int)yyvsp[-4].d,MSH_SEGM_BEZIER,2,yyvsp[-1].l,NULL,-1,-1,0.,1.,NULL,NULL,NULL); + yyval.s.Type = MSH_SEGM_BSPLN; + yyval.s.Num = (int)yyvsp[-4].d; + } + else + vyyerror("Too few control points for Bezier %d (%d < 4)", (int)yyvsp[-4].d, + List_Nbr(yyvsp[-1].l)); + ; + break;} +case 173: +#line 1256 "Gmsh.y" { List_T *Temp; int i; @@ -4150,8 +4177,8 @@ case 172: List_Delete(Temp); ; break;} -case 173: -#line 1264 "Gmsh.y" +case 174: +#line 1275 "Gmsh.y" { yyval.s.Num = (int)yyvsp[-2].d; Curve *c = FindCurve(yyval.s.Num,THEM); @@ -4161,16 +4188,16 @@ case 173: yyval.s.Type = c->Typ; ; break;} -case 174: -#line 1276 "Gmsh.y" +case 175: +#line 1287 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_SURF_PLAN,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_SURF_PLAN; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 175: -#line 1282 "Gmsh.y" +case 176: +#line 1293 "Gmsh.y" { Surface *s,*support; support = FindSurface((int)yyvsp[-4].d,THEM); @@ -4190,8 +4217,8 @@ case 175: } ; break;} -case 176: -#line 1301 "Gmsh.y" +case 177: +#line 1312 "Gmsh.y" { List_Read(yyvsp[-1].l,0,&d); i = (int)d; @@ -4213,38 +4240,38 @@ case 176: } ; break;} -case 177: -#line 1324 "Gmsh.y" +case 178: +#line 1335 "Gmsh.y" { CreateNurbsSurface ( (int) yyvsp[-16].d , (int)yyvsp[-4].d , (int)yyvsp[-2].d , yyvsp[-13].l, yyvsp[-10].l, yyvsp[-8].l); yyval.s.Type = MSH_SURF_NURBS; yyval.s.Num = (int)yyvsp[-16].d; ; break;} -case 178: -#line 1332 "Gmsh.y" +case 179: +#line 1343 "Gmsh.y" { CreateNurbsSurfaceSupport ((int)yyvsp[-16].d, (int) yyvsp[-4].d , (int) yyvsp[-2].d , yyvsp[-13].l, yyvsp[-10].l, yyvsp[-8].l); ; break;} -case 179: -#line 1336 "Gmsh.y" +case 180: +#line 1347 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_PHYSICAL_SURFACE,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_PHYSICAL_SURFACE; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 180: -#line 1342 "Gmsh.y" +case 181: +#line 1353 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_SURF_LOOP,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_SURF_LOOP; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 181: -#line 1348 "Gmsh.y" +case 182: +#line 1359 "Gmsh.y" { yyval.s.Num = (int)yyvsp[-2].d; Surface *s = FindSurface(yyval.s.Num,THEM); @@ -4254,85 +4281,85 @@ case 181: yyval.s.Type = s->Typ; ; break;} -case 182: -#line 1360 "Gmsh.y" +case 183: +#line 1371 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_VOLUME,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_VOLUME; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 183: -#line 1366 "Gmsh.y" +case 184: +#line 1377 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_VOLUME,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_VOLUME; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 184: -#line 1372 "Gmsh.y" +case 185: +#line 1383 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_PHYSICAL_VOLUME,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_PHYSICAL_VOLUME; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 185: -#line 1385 "Gmsh.y" +case 186: +#line 1396 "Gmsh.y" { TranslateShapes (yyvsp[-3].v[0],yyvsp[-3].v[1],yyvsp[-3].v[2],yyvsp[-1].l,1); yyval.l = yyvsp[-1].l; ; break;} -case 186: -#line 1390 "Gmsh.y" +case 187: +#line 1401 "Gmsh.y" { RotateShapes(yyvsp[-8].v[0],yyvsp[-8].v[1],yyvsp[-8].v[2],yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].d,yyvsp[-1].l); yyval.l = yyvsp[-1].l; ; break;} -case 187: -#line 1395 "Gmsh.y" +case 188: +#line 1406 "Gmsh.y" { SymmetryShapes(yyvsp[-3].v[0],yyvsp[-3].v[1],yyvsp[-3].v[2],yyvsp[-3].v[3],yyvsp[-1].l,1); yyval.l = yyvsp[-1].l; ; break;} -case 188: -#line 1400 "Gmsh.y" +case 189: +#line 1411 "Gmsh.y" { DilatShapes(yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].d,yyvsp[-1].l,1); yyval.l = yyvsp[-1].l; ; break;} -case 189: -#line 1407 "Gmsh.y" -{ yyval.l = yyvsp[0].l; ; - break;} case 190: -#line 1408 "Gmsh.y" +#line 1418 "Gmsh.y" { yyval.l = yyvsp[0].l; ; break;} case 191: -#line 1409 "Gmsh.y" +#line 1419 "Gmsh.y" { yyval.l = yyvsp[0].l; ; break;} case 192: -#line 1414 "Gmsh.y" +#line 1420 "Gmsh.y" +{ yyval.l = yyvsp[0].l; ; + break;} +case 193: +#line 1425 "Gmsh.y" { yyval.l = List_Create(3,3,sizeof(Shape)); ; break;} -case 193: -#line 1418 "Gmsh.y" +case 194: +#line 1429 "Gmsh.y" { List_Add(yyval.l,&yyvsp[0].s); yyval.l = yyvsp[-1].l; ; break;} -case 194: -#line 1430 "Gmsh.y" +case 195: +#line 1441 "Gmsh.y" { yyval.l = List_Create(3,3,sizeof(Shape)); for(i=0;i<List_Nbr(yyvsp[-1].l);i++){ @@ -4343,8 +4370,8 @@ case 194: } ; break;} -case 195: -#line 1448 "Gmsh.y" +case 196: +#line 1459 "Gmsh.y" { for(i=0;i<List_Nbr(yyvsp[-1].l);i++){ List_Read (yyvsp[-1].l,i,&TheShape); @@ -4352,21 +4379,21 @@ case 195: } ; break;} -case 196: -#line 1455 "Gmsh.y" +case 197: +#line 1466 "Gmsh.y" { if(!strcmp(yyvsp[-4].c, "View")) FreeView((int)yyvsp[-2].d); ; break;} -case 197: -#line 1460 "Gmsh.y" +case 198: +#line 1471 "Gmsh.y" { Init_Mesh(THEM, 1); ; break;} -case 198: -#line 1472 "Gmsh.y" +case 199: +#line 1483 "Gmsh.y" { if(!strcmp(yyvsp[-2].c, "Include")){ @@ -4434,8 +4461,8 @@ case 198: vyyerror("Unknown command '%s'", yyvsp[-2].c); ; break;} -case 199: -#line 1539 "Gmsh.y" +case 200: +#line 1550 "Gmsh.y" { if(!strcmp(yyvsp[-2].c, "Sleep")){ @@ -4456,22 +4483,22 @@ case 199: vyyerror("Unknown command '%s'", yyvsp[-2].c); ; break;} -case 200: -#line 1559 "Gmsh.y" +case 201: +#line 1570 "Gmsh.y" { #ifndef _NOPLUGIN GMSH_PluginManager::Instance()->Action(yyvsp[-4].c,yyvsp[-1].c,0); #endif ; break;} -case 201: -#line 1565 "Gmsh.y" +case 202: +#line 1576 "Gmsh.y" { exit(0); ; break;} -case 202: -#line 1569 "Gmsh.y" +case 203: +#line 1580 "Gmsh.y" { if(!CTX.batch){ // we're in interactive mode if(Tree_Nbr(THEM->Points) != Last_NumberOfPoints){ @@ -4486,8 +4513,8 @@ case 202: } ; break;} -case 203: -#line 1591 "Gmsh.y" +case 204: +#line 1602 "Gmsh.y" { FILE* ff; if(RecursionLevel) @@ -4502,8 +4529,8 @@ case 203: fgetpos( ff, &yyposImbricatedLoopsTab[ImbricatedLoop++]); ; break;} -case 204: -#line 1605 "Gmsh.y" +case 205: +#line 1616 "Gmsh.y" { FILE* ff; if(RecursionLevel) @@ -4518,8 +4545,8 @@ case 204: fgetpos( ff, &yyposImbricatedLoopsTab[ImbricatedLoop++]); ; break;} -case 205: -#line 1619 "Gmsh.y" +case 206: +#line 1630 "Gmsh.y" { FILE* ff; if(RecursionLevel) @@ -4545,8 +4572,8 @@ case 205: fgetpos( ff, &yyposImbricatedLoopsTab[ImbricatedLoop++]); ; break;} -case 206: -#line 1644 "Gmsh.y" +case 207: +#line 1655 "Gmsh.y" { FILE* ff; if(RecursionLevel) @@ -4572,8 +4599,8 @@ case 206: fgetpos( ff, &yyposImbricatedLoopsTab[ImbricatedLoop++]); ; break;} -case 207: -#line 1669 "Gmsh.y" +case 208: +#line 1680 "Gmsh.y" { if(LoopControlVariablesTab[ImbricatedLoop-1][1] > LoopControlVariablesTab[ImbricatedLoop-1][0]){ @@ -4600,118 +4627,118 @@ case 207: } ; break;} -case 208: -#line 1695 "Gmsh.y" +case 209: +#line 1706 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction(yyvsp[0].c,yyin,yylineno)) vyyerror("Redefinition of function %s",yyvsp[0].c); skip_until(NULL, "Return"); ; break;} -case 209: -#line 1701 "Gmsh.y" +case 210: +#line 1712 "Gmsh.y" { if(!FunctionManager::Instance()->leaveFunction(&yyin,yylineno)) vyyerror("Error while exiting function"); ; break;} -case 210: -#line 1706 "Gmsh.y" +case 211: +#line 1717 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction(yyvsp[-1].c,&yyin,yylineno)) vyyerror("Unknown function %s",yyvsp[-1].c); ; break;} -case 211: -#line 1711 "Gmsh.y" +case 212: +#line 1722 "Gmsh.y" { if(!yyvsp[-1].d) skip_until("If", "EndIf"); ; break;} -case 212: -#line 1715 "Gmsh.y" +case 213: +#line 1726 "Gmsh.y" { ; break;} -case 213: -#line 1726 "Gmsh.y" +case 214: +#line 1737 "Gmsh.y" { Curve *pc, *prc; Extrude_ProtudePoint(1,(int)yyvsp[-4].d,yyvsp[-2].v[0],yyvsp[-2].v[1],yyvsp[-2].v[2],0.,0.,0.,0.,&pc,&prc,NULL); ; break;} -case 214: -#line 1731 "Gmsh.y" +case 215: +#line 1742 "Gmsh.y" { Curve *pc, *prc; Extrude_ProtudePoint(0,(int)yyvsp[-8].d,yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].v[0],yyvsp[-4].v[1],yyvsp[-4].v[2],yyvsp[-2].d, &pc,&prc,NULL); ; break;} -case 215: -#line 1737 "Gmsh.y" +case 216: +#line 1748 "Gmsh.y" { Extrude_ProtudeCurve(1,(int)yyvsp[-4].d,yyvsp[-2].v[0],yyvsp[-2].v[1],yyvsp[-2].v[2],0.,0.,0.,0.,NULL); ; break;} -case 216: -#line 1741 "Gmsh.y" +case 217: +#line 1752 "Gmsh.y" { Extrude_ProtudeCurve(0,(int)yyvsp[-8].d,yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].v[0],yyvsp[-4].v[1],yyvsp[-4].v[2],yyvsp[-2].d,NULL); ; break;} -case 217: -#line 1745 "Gmsh.y" +case 218: +#line 1756 "Gmsh.y" { Extrude_ProtudeSurface(1,(int)yyvsp[-4].d,yyvsp[-2].v[0],yyvsp[-2].v[1],yyvsp[-2].v[2],0.,0.,0.,0.,0,NULL); ; break;} -case 218: -#line 1749 "Gmsh.y" +case 219: +#line 1760 "Gmsh.y" { Extrude_ProtudeSurface(0,(int)yyvsp[-8].d,yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].v[0],yyvsp[-4].v[1],yyvsp[-4].v[2],yyvsp[-2].d,0,NULL); ; break;} -case 219: -#line 1753 "Gmsh.y" +case 220: +#line 1764 "Gmsh.y" { extr.mesh.ExtrudeMesh = false; extr.mesh.Recombine = false; ; break;} -case 220: -#line 1758 "Gmsh.y" +case 221: +#line 1769 "Gmsh.y" { int vol = NEWREG(); Extrude_ProtudeSurface(1,(int)yyvsp[-8].d,yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],0.,0.,0.,0.,vol,&extr); ; break;} -case 221: -#line 1763 "Gmsh.y" +case 222: +#line 1774 "Gmsh.y" { extr.mesh.ExtrudeMesh = false; extr.mesh.Recombine = false; ; break;} -case 222: -#line 1769 "Gmsh.y" +case 223: +#line 1780 "Gmsh.y" { int vol = NEWREG(); Extrude_ProtudeSurface(0,(int)yyvsp[-12].d,yyvsp[-10].v[0],yyvsp[-10].v[1],yyvsp[-10].v[2],yyvsp[-8].v[0],yyvsp[-8].v[1],yyvsp[-8].v[2],yyvsp[-6].d,vol,&extr); ; break;} -case 223: -#line 1777 "Gmsh.y" +case 224: +#line 1788 "Gmsh.y" { ; break;} -case 224: -#line 1780 "Gmsh.y" +case 225: +#line 1791 "Gmsh.y" { ; break;} -case 225: -#line 1786 "Gmsh.y" +case 226: +#line 1797 "Gmsh.y" { double d; int j; @@ -4732,14 +4759,14 @@ case 225: List_Delete(yyvsp[-2].l); ; break;} -case 226: -#line 1806 "Gmsh.y" +case 227: +#line 1817 "Gmsh.y" { extr.mesh.Recombine = true; ; break;} -case 227: -#line 1817 "Gmsh.y" +case 228: +#line 1828 "Gmsh.y" { Curve *c; for(i=0;i<List_Nbr(yyvsp[-3].l);i++){ @@ -4758,8 +4785,8 @@ case 227: List_Delete(yyvsp[-3].l); ; break;} -case 228: -#line 1835 "Gmsh.y" +case 229: +#line 1846 "Gmsh.y" { Curve *c; for(i=0;i<List_Nbr(yyvsp[-6].l);i++){ @@ -4778,8 +4805,8 @@ case 228: List_Delete(yyvsp[-6].l); ; break;} -case 229: -#line 1853 "Gmsh.y" +case 230: +#line 1864 "Gmsh.y" { Curve *c; for(i=0;i<List_Nbr(yyvsp[-6].l);i++){ @@ -4798,8 +4825,8 @@ case 229: List_Delete(yyvsp[-6].l); ; break;} -case 230: -#line 1871 "Gmsh.y" +case 231: +#line 1882 "Gmsh.y" { Surface *s = FindSurface((int)yyvsp[-4].d,THEM); if(!s) @@ -4822,8 +4849,8 @@ case 230: List_Delete(yyvsp[-1].l); ; break;} -case 231: -#line 1893 "Gmsh.y" +case 232: +#line 1904 "Gmsh.y" { Surface *s = FindSurface((int)yyvsp[-4].d,THEM); if(!s) @@ -4845,8 +4872,8 @@ case 231: List_Delete(yyvsp[-1].l); ; break;} -case 232: -#line 1914 "Gmsh.y" +case 233: +#line 1925 "Gmsh.y" { Volume *v = FindVolume((int)yyvsp[-4].d,THEM); if(!v) @@ -4868,8 +4895,8 @@ case 232: List_Delete(yyvsp[-1].l); ; break;} -case 233: -#line 1935 "Gmsh.y" +case 234: +#line 1946 "Gmsh.y" { Surface *s; for(i=0;i<List_Nbr(yyvsp[-3].l);i++){ @@ -4884,8 +4911,8 @@ case 233: List_Delete(yyvsp[-3].l); ; break;} -case 234: -#line 1949 "Gmsh.y" +case 235: +#line 1960 "Gmsh.y" { Surface *s; for(i=0;i<List_Nbr(yyvsp[-1].l);i++){ @@ -4900,72 +4927,72 @@ case 234: List_Delete(yyvsp[-1].l); ; break;} -case 235: -#line 1971 "Gmsh.y" +case 236: +#line 1982 "Gmsh.y" { Coherence_PS(); ; break;} -case 236: -#line 1975 "Gmsh.y" +case 237: +#line 1986 "Gmsh.y" { IntersectAllSegmentsTogether(); ; break;} -case 237: -#line 1986 "Gmsh.y" -{yyval.i = 1;; - break;} case 238: -#line 1987 "Gmsh.y" -{yyval.i = 0;; +#line 1997 "Gmsh.y" +{yyval.i = 1;; break;} case 239: -#line 1988 "Gmsh.y" -{yyval.i = -1;; +#line 1998 "Gmsh.y" +{yyval.i = 0;; break;} case 240: -#line 1989 "Gmsh.y" +#line 1999 "Gmsh.y" {yyval.i = -1;; break;} case 241: -#line 1990 "Gmsh.y" +#line 2000 "Gmsh.y" {yyval.i = -1;; break;} case 242: -#line 1994 "Gmsh.y" -{ yyval.d = yyvsp[0].d; ; +#line 2001 "Gmsh.y" +{yyval.i = -1;; break;} case 243: -#line 1995 "Gmsh.y" -{ yyval.d = yyvsp[-1].d ; ; +#line 2005 "Gmsh.y" +{ yyval.d = yyvsp[0].d; ; break;} case 244: -#line 1996 "Gmsh.y" -{ yyval.d = -yyvsp[0].d ; ; +#line 2006 "Gmsh.y" +{ yyval.d = yyvsp[-1].d ; ; break;} case 245: -#line 1997 "Gmsh.y" -{ yyval.d = yyvsp[0].d; ; +#line 2007 "Gmsh.y" +{ yyval.d = -yyvsp[0].d ; ; break;} case 246: -#line 1998 "Gmsh.y" -{ yyval.d = !yyvsp[0].d ; ; +#line 2008 "Gmsh.y" +{ yyval.d = yyvsp[0].d; ; break;} case 247: -#line 1999 "Gmsh.y" -{ yyval.d = yyvsp[-2].d - yyvsp[0].d ; ; +#line 2009 "Gmsh.y" +{ yyval.d = !yyvsp[0].d ; ; break;} case 248: -#line 2000 "Gmsh.y" -{ yyval.d = yyvsp[-2].d + yyvsp[0].d ; ; +#line 2010 "Gmsh.y" +{ yyval.d = yyvsp[-2].d - yyvsp[0].d ; ; break;} case 249: -#line 2001 "Gmsh.y" -{ yyval.d = yyvsp[-2].d * yyvsp[0].d ; ; +#line 2011 "Gmsh.y" +{ yyval.d = yyvsp[-2].d + yyvsp[0].d ; ; break;} case 250: -#line 2003 "Gmsh.y" +#line 2012 "Gmsh.y" +{ yyval.d = yyvsp[-2].d * yyvsp[0].d ; ; + break;} +case 251: +#line 2014 "Gmsh.y" { if(!yyvsp[0].d) vyyerror("Division by zero in '%g / %g'", yyvsp[-2].d, yyvsp[0].d); @@ -4973,152 +5000,152 @@ case 250: yyval.d = yyvsp[-2].d / yyvsp[0].d ; ; break;} -case 251: -#line 2009 "Gmsh.y" -{ yyval.d = (int)yyvsp[-2].d % (int)yyvsp[0].d ; ; - break;} case 252: -#line 2010 "Gmsh.y" -{ yyval.d = pow(yyvsp[-2].d,yyvsp[0].d) ; ; +#line 2020 "Gmsh.y" +{ yyval.d = (int)yyvsp[-2].d % (int)yyvsp[0].d ; ; break;} case 253: -#line 2011 "Gmsh.y" -{ yyval.d = yyvsp[-2].d < yyvsp[0].d ; ; +#line 2021 "Gmsh.y" +{ yyval.d = pow(yyvsp[-2].d,yyvsp[0].d) ; ; break;} case 254: -#line 2012 "Gmsh.y" -{ yyval.d = yyvsp[-2].d > yyvsp[0].d ; ; +#line 2022 "Gmsh.y" +{ yyval.d = yyvsp[-2].d < yyvsp[0].d ; ; break;} case 255: -#line 2013 "Gmsh.y" -{ yyval.d = yyvsp[-2].d <= yyvsp[0].d ; ; +#line 2023 "Gmsh.y" +{ yyval.d = yyvsp[-2].d > yyvsp[0].d ; ; break;} case 256: -#line 2014 "Gmsh.y" -{ yyval.d = yyvsp[-2].d >= yyvsp[0].d ; ; +#line 2024 "Gmsh.y" +{ yyval.d = yyvsp[-2].d <= yyvsp[0].d ; ; break;} case 257: -#line 2015 "Gmsh.y" -{ yyval.d = yyvsp[-2].d == yyvsp[0].d ; ; +#line 2025 "Gmsh.y" +{ yyval.d = yyvsp[-2].d >= yyvsp[0].d ; ; break;} case 258: -#line 2016 "Gmsh.y" -{ yyval.d = yyvsp[-2].d != yyvsp[0].d ; ; +#line 2026 "Gmsh.y" +{ yyval.d = yyvsp[-2].d == yyvsp[0].d ; ; break;} case 259: -#line 2017 "Gmsh.y" -{ yyval.d = yyvsp[-2].d && yyvsp[0].d ; ; +#line 2027 "Gmsh.y" +{ yyval.d = yyvsp[-2].d != yyvsp[0].d ; ; break;} case 260: -#line 2018 "Gmsh.y" -{ yyval.d = yyvsp[-2].d || yyvsp[0].d ; ; +#line 2028 "Gmsh.y" +{ yyval.d = yyvsp[-2].d && yyvsp[0].d ; ; break;} case 261: -#line 2019 "Gmsh.y" -{ yyval.d = yyvsp[-4].d? yyvsp[-2].d : yyvsp[0].d ; ; +#line 2029 "Gmsh.y" +{ yyval.d = yyvsp[-2].d || yyvsp[0].d ; ; break;} case 262: -#line 2020 "Gmsh.y" -{ yyval.d = exp(yyvsp[-1].d); ; +#line 2030 "Gmsh.y" +{ yyval.d = yyvsp[-4].d? yyvsp[-2].d : yyvsp[0].d ; ; break;} case 263: -#line 2021 "Gmsh.y" -{ yyval.d = log(yyvsp[-1].d); ; +#line 2031 "Gmsh.y" +{ yyval.d = exp(yyvsp[-1].d); ; break;} case 264: -#line 2022 "Gmsh.y" -{ yyval.d = log10(yyvsp[-1].d); ; +#line 2032 "Gmsh.y" +{ yyval.d = log(yyvsp[-1].d); ; break;} case 265: -#line 2023 "Gmsh.y" -{ yyval.d = sqrt(yyvsp[-1].d); ; +#line 2033 "Gmsh.y" +{ yyval.d = log10(yyvsp[-1].d); ; break;} case 266: -#line 2024 "Gmsh.y" -{ yyval.d = sin(yyvsp[-1].d); ; +#line 2034 "Gmsh.y" +{ yyval.d = sqrt(yyvsp[-1].d); ; break;} case 267: -#line 2025 "Gmsh.y" -{ yyval.d = asin(yyvsp[-1].d); ; +#line 2035 "Gmsh.y" +{ yyval.d = sin(yyvsp[-1].d); ; break;} case 268: -#line 2026 "Gmsh.y" -{ yyval.d = cos(yyvsp[-1].d); ; +#line 2036 "Gmsh.y" +{ yyval.d = asin(yyvsp[-1].d); ; break;} case 269: -#line 2027 "Gmsh.y" -{ yyval.d = acos(yyvsp[-1].d); ; +#line 2037 "Gmsh.y" +{ yyval.d = cos(yyvsp[-1].d); ; break;} case 270: -#line 2028 "Gmsh.y" -{ yyval.d = tan(yyvsp[-1].d); ; +#line 2038 "Gmsh.y" +{ yyval.d = acos(yyvsp[-1].d); ; break;} case 271: -#line 2029 "Gmsh.y" -{ yyval.d = atan(yyvsp[-1].d); ; +#line 2039 "Gmsh.y" +{ yyval.d = tan(yyvsp[-1].d); ; break;} case 272: -#line 2030 "Gmsh.y" -{ yyval.d = atan2(yyvsp[-3].d,yyvsp[-1].d); ; +#line 2040 "Gmsh.y" +{ yyval.d = atan(yyvsp[-1].d); ; break;} case 273: -#line 2031 "Gmsh.y" -{ yyval.d = sinh(yyvsp[-1].d); ; +#line 2041 "Gmsh.y" +{ yyval.d = atan2(yyvsp[-3].d,yyvsp[-1].d); ; break;} case 274: -#line 2032 "Gmsh.y" -{ yyval.d = cosh(yyvsp[-1].d); ; +#line 2042 "Gmsh.y" +{ yyval.d = sinh(yyvsp[-1].d); ; break;} case 275: -#line 2033 "Gmsh.y" -{ yyval.d = tanh(yyvsp[-1].d); ; +#line 2043 "Gmsh.y" +{ yyval.d = cosh(yyvsp[-1].d); ; break;} case 276: -#line 2034 "Gmsh.y" -{ yyval.d = fabs(yyvsp[-1].d); ; +#line 2044 "Gmsh.y" +{ yyval.d = tanh(yyvsp[-1].d); ; break;} case 277: -#line 2035 "Gmsh.y" -{ yyval.d = floor(yyvsp[-1].d); ; +#line 2045 "Gmsh.y" +{ yyval.d = fabs(yyvsp[-1].d); ; break;} case 278: -#line 2036 "Gmsh.y" -{ yyval.d = ceil(yyvsp[-1].d); ; +#line 2046 "Gmsh.y" +{ yyval.d = floor(yyvsp[-1].d); ; break;} case 279: -#line 2037 "Gmsh.y" -{ yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ; +#line 2047 "Gmsh.y" +{ yyval.d = ceil(yyvsp[-1].d); ; break;} case 280: -#line 2038 "Gmsh.y" +#line 2048 "Gmsh.y" { yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ; break;} case 281: -#line 2039 "Gmsh.y" -{ yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ; +#line 2049 "Gmsh.y" +{ yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ; break;} case 282: -#line 2040 "Gmsh.y" -{ yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ; +#line 2050 "Gmsh.y" +{ yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ; break;} case 283: -#line 2049 "Gmsh.y" -{ yyval.d = yyvsp[0].d; ; +#line 2051 "Gmsh.y" +{ yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ; break;} case 284: -#line 2050 "Gmsh.y" -{ yyval.d = 3.141592653589793; ; +#line 2060 "Gmsh.y" +{ yyval.d = yyvsp[0].d; ; break;} case 285: -#line 2051 "Gmsh.y" -{ yyval.d = ParUtil::Instance()->rank(); ; +#line 2061 "Gmsh.y" +{ yyval.d = 3.141592653589793; ; break;} case 286: -#line 2052 "Gmsh.y" -{ yyval.d = ParUtil::Instance()->size(); ; +#line 2062 "Gmsh.y" +{ yyval.d = ParUtil::Instance()->rank(); ; break;} case 287: -#line 2057 "Gmsh.y" +#line 2063 "Gmsh.y" +{ yyval.d = ParUtil::Instance()->size(); ; + break;} +case 288: +#line 2068 "Gmsh.y" { TheSymbol.Name = yyvsp[0].c ; if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) { @@ -5129,8 +5156,8 @@ case 287: yyval.d = *(double*)List_Pointer_Fast(pSymbol->val, 0) ; ; break;} -case 288: -#line 2068 "Gmsh.y" +case 289: +#line 2079 "Gmsh.y" { TheSymbol.Name = yyvsp[-3].c ; if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) { @@ -5147,8 +5174,8 @@ case 288: } ; break;} -case 289: -#line 2085 "Gmsh.y" +case 290: +#line 2096 "Gmsh.y" { TheSymbol.Name = yyvsp[-1].c ; if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) { @@ -5159,8 +5186,8 @@ case 289: yyval.d = (*(double*)List_Pointer_Fast(pSymbol->val, 0) += yyvsp[0].i) ; ; break;} -case 290: -#line 2096 "Gmsh.y" +case 291: +#line 2107 "Gmsh.y" { TheSymbol.Name = yyvsp[-4].c ; if (!(pSymbol = (Symbol*)List_PQuery(Symbol_L, &TheSymbol, CompareSymbols))) { @@ -5177,8 +5204,8 @@ case 290: } ; break;} -case 291: -#line 2115 "Gmsh.y" +case 292: +#line 2126 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-2].c))){ vyyerror("Unknown numeric option class '%s'", yyvsp[-2].c); @@ -5194,8 +5221,8 @@ case 291: } ; break;} -case 292: -#line 2131 "Gmsh.y" +case 293: +#line 2142 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))){ vyyerror("Unknown numeric option class '%s'", yyvsp[-5].c); @@ -5211,8 +5238,8 @@ case 292: } ; break;} -case 293: -#line 2147 "Gmsh.y" +case 294: +#line 2158 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c))){ vyyerror("Unknown numeric option class '%s'", yyvsp[-3].c); @@ -5228,8 +5255,8 @@ case 293: } ; break;} -case 294: -#line 2163 "Gmsh.y" +case 295: +#line 2174 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-6].c))){ vyyerror("Unknown numeric option class '%s'", yyvsp[-6].c); @@ -5245,131 +5272,131 @@ case 294: } ; break;} -case 295: -#line 2181 "Gmsh.y" +case 296: +#line 2192 "Gmsh.y" { memcpy(yyval.v, yyvsp[0].v, 5*sizeof(double)) ; ; break;} -case 296: -#line 2185 "Gmsh.y" +case 297: +#line 2196 "Gmsh.y" { for(i=0 ; i<5 ; i++) yyval.v[i] = -yyvsp[0].v[i] ; ; break;} -case 297: -#line 2189 "Gmsh.y" +case 298: +#line 2200 "Gmsh.y" { for(i=0 ; i<5 ; i++) yyval.v[i] = yyvsp[0].v[i]; ; break;} -case 298: -#line 2193 "Gmsh.y" +case 299: +#line 2204 "Gmsh.y" { for(i=0 ; i<5 ; i++) yyval.v[i] = yyvsp[-2].v[i] - yyvsp[0].v[i] ; ; break;} -case 299: -#line 2197 "Gmsh.y" +case 300: +#line 2208 "Gmsh.y" { for(i=0 ; i<5 ; i++) yyval.v[i] = yyvsp[-2].v[i] + yyvsp[0].v[i] ; ; break;} -case 300: -#line 2203 "Gmsh.y" +case 301: +#line 2214 "Gmsh.y" { yyval.v[0]=yyvsp[-9].d; yyval.v[1]=yyvsp[-7].d; yyval.v[2]=yyvsp[-5].d; yyval.v[3]=yyvsp[-3].d; yyval.v[4]=yyvsp[-1].d; ; break;} -case 301: -#line 2207 "Gmsh.y" +case 302: +#line 2218 "Gmsh.y" { yyval.v[0]=yyvsp[-7].d; yyval.v[1]=yyvsp[-5].d; yyval.v[2]=yyvsp[-3].d; yyval.v[3]=yyvsp[-1].d; yyval.v[4]=1.0; ; break;} -case 302: -#line 2211 "Gmsh.y" -{ - yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0; - ; - break;} case 303: -#line 2215 "Gmsh.y" +#line 2222 "Gmsh.y" { yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0; ; break;} case 304: -#line 2222 "Gmsh.y" +#line 2226 "Gmsh.y" { + yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0; ; break;} case 305: -#line 2225 "Gmsh.y" +#line 2233 "Gmsh.y" { ; break;} case 306: -#line 2231 "Gmsh.y" +#line 2236 "Gmsh.y" { ; break;} case 307: -#line 2234 "Gmsh.y" +#line 2242 "Gmsh.y" { ; break;} case 308: -#line 2240 "Gmsh.y" +#line 2245 "Gmsh.y" { ; break;} case 309: -#line 2243 "Gmsh.y" +#line 2251 "Gmsh.y" { - yyval.l=yyvsp[-1].l; ; break;} case 310: -#line 2247 "Gmsh.y" +#line 2254 "Gmsh.y" { yyval.l=yyvsp[-1].l; ; break;} case 311: -#line 2254 "Gmsh.y" +#line 2258 "Gmsh.y" { - yyval.l = List_Create(2,1,sizeof(List_T*)) ; - List_Add(yyval.l, &(yyvsp[0].l)) ; + yyval.l=yyvsp[-1].l; ; break;} case 312: -#line 2259 "Gmsh.y" +#line 2265 "Gmsh.y" { + yyval.l = List_Create(2,1,sizeof(List_T*)) ; List_Add(yyval.l, &(yyvsp[0].l)) ; ; break;} case 313: -#line 2267 "Gmsh.y" +#line 2270 "Gmsh.y" +{ + List_Add(yyval.l, &(yyvsp[0].l)) ; + ; + break;} +case 314: +#line 2278 "Gmsh.y" { yyval.l = List_Create(2,1,sizeof(double)) ; List_Add(yyval.l, &(yyvsp[0].d)) ; ; break;} -case 314: -#line 2272 "Gmsh.y" +case 315: +#line 2283 "Gmsh.y" { yyval.l = yyvsp[0].l ; ; break;} -case 315: -#line 2276 "Gmsh.y" +case 316: +#line 2287 "Gmsh.y" { yyval.l=yyvsp[-1].l; ; break;} -case 316: -#line 2280 "Gmsh.y" +case 317: +#line 2291 "Gmsh.y" { yyval.l=yyvsp[-1].l; for(i=0 ; i<List_Nbr(yyval.l) ; i++){ @@ -5378,16 +5405,16 @@ case 316: } ; break;} -case 317: -#line 2291 "Gmsh.y" +case 318: +#line 2302 "Gmsh.y" { yyval.l = List_Create(2,1,sizeof(double)) ; for(d=yyvsp[-2].d ; (yyvsp[-2].d<yyvsp[0].d)?(d<=yyvsp[0].d):(d>=yyvsp[0].d) ; (yyvsp[-2].d<yyvsp[0].d)?(d+=1.):(d-=1.)) List_Add(yyval.l, &d) ; ; break;} -case 318: -#line 2297 "Gmsh.y" +case 319: +#line 2308 "Gmsh.y" { yyval.l = List_Create(2,1,sizeof(double)) ; if(!yyvsp[0].d || (yyvsp[-4].d<yyvsp[-2].d && yyvsp[0].d<0) || (yyvsp[-4].d>yyvsp[-2].d && yyvsp[0].d>0)){ @@ -5399,8 +5426,8 @@ case 318: List_Add(yyval.l, &d) ; ; break;} -case 319: -#line 2308 "Gmsh.y" +case 320: +#line 2319 "Gmsh.y" { yyval.l = List_Create(2,1,sizeof(double)) ; TheSymbol.Name = yyvsp[-2].c ; @@ -5415,8 +5442,8 @@ case 319: } ; break;} -case 320: -#line 2322 "Gmsh.y" +case 321: +#line 2333 "Gmsh.y" { yyval.l = List_Create(2,1,sizeof(double)) ; TheSymbol.Name = yyvsp[-2].c ; @@ -5433,8 +5460,8 @@ case 320: } ; break;} -case 321: -#line 2338 "Gmsh.y" +case 322: +#line 2349 "Gmsh.y" { yyval.l = List_Create(2,1,sizeof(double)) ; TheSymbol.Name = yyvsp[-5].c ; @@ -5455,8 +5482,8 @@ case 321: List_Delete(yyvsp[-2].l); ; break;} -case 322: -#line 2358 "Gmsh.y" +case 323: +#line 2369 "Gmsh.y" { yyval.l = List_Create(2,1,sizeof(double)) ; TheSymbol.Name = yyvsp[-5].c ; @@ -5479,27 +5506,27 @@ case 322: List_Delete(yyvsp[-2].l); ; break;} -case 323: -#line 2383 "Gmsh.y" +case 324: +#line 2394 "Gmsh.y" { yyval.l = List_Create(2,1,sizeof(double)) ; List_Add(yyval.l, &(yyvsp[0].d)) ; ; break;} -case 324: -#line 2388 "Gmsh.y" +case 325: +#line 2399 "Gmsh.y" { yyval.l = yyvsp[0].l ; ; break;} -case 325: -#line 2392 "Gmsh.y" +case 326: +#line 2403 "Gmsh.y" { List_Add(yyval.l, &(yyvsp[0].d)) ; ; break;} -case 326: -#line 2396 "Gmsh.y" +case 327: +#line 2407 "Gmsh.y" { for(i=0 ; i<List_Nbr(yyvsp[0].l) ; i++){ List_Read(yyvsp[0].l, i, &d) ; @@ -5508,27 +5535,27 @@ case 326: List_Delete(yyvsp[0].l); ; break;} -case 327: -#line 2408 "Gmsh.y" +case 328: +#line 2419 "Gmsh.y" { yyval.u = PACK_COLOR((int)yyvsp[-7].d, (int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d); ; break;} -case 328: -#line 2412 "Gmsh.y" +case 329: +#line 2423 "Gmsh.y" { yyval.u = PACK_COLOR((int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d, 255); ; break;} -case 329: -#line 2423 "Gmsh.y" +case 330: +#line 2434 "Gmsh.y" { yyval.u = Get_ColorForString(ColorString, -1, yyvsp[0].c, &flag); if(flag) vyyerror("Unknown color '%s'", yyvsp[0].c); ; break;} -case 330: -#line 2428 "Gmsh.y" +case 331: +#line 2439 "Gmsh.y" { if(!(pColCat = Get_ColorOptionCategory(yyvsp[-4].c))){ vyyerror("Unknown color option class '%s'", yyvsp[-4].c); @@ -5545,14 +5572,14 @@ case 330: } ; break;} -case 331: -#line 2447 "Gmsh.y" +case 332: +#line 2458 "Gmsh.y" { yyval.l = yyvsp[-1].l; ; break;} -case 332: -#line 2451 "Gmsh.y" +case 333: +#line 2462 "Gmsh.y" { yyval.l = List_Create(256,10,sizeof(unsigned int)) ; ColorTable *ct = Get_ColorTable((int)yyvsp[-3].d); @@ -5564,27 +5591,27 @@ case 332: } ; break;} -case 333: -#line 2465 "Gmsh.y" +case 334: +#line 2476 "Gmsh.y" { yyval.l = List_Create(256,10,sizeof(unsigned int)) ; List_Add(yyval.l, &(yyvsp[0].u)) ; ; break;} -case 334: -#line 2470 "Gmsh.y" +case 335: +#line 2481 "Gmsh.y" { List_Add(yyval.l, &(yyvsp[0].u)) ; ; break;} -case 335: -#line 2477 "Gmsh.y" +case 336: +#line 2488 "Gmsh.y" { yyval.c = yyvsp[0].c; ; break;} -case 336: -#line 2481 "Gmsh.y" +case 337: +#line 2492 "Gmsh.y" { yyval.c = (char *)Malloc((strlen(yyvsp[-3].c)+strlen(yyvsp[-1].c)+1)*sizeof(char)) ; strcpy(yyval.c, yyvsp[-3].c) ; @@ -5593,8 +5620,8 @@ case 336: Free(yyvsp[-1].c); ; break;} -case 337: -#line 2489 "Gmsh.y" +case 338: +#line 2500 "Gmsh.y" { yyval.c = (char *)Malloc((strlen(yyvsp[-1].c)+1)*sizeof(char)) ; for(i=strlen(yyvsp[-1].c)-1; i>=0; i--){ @@ -5608,14 +5635,14 @@ case 337: Free(yyvsp[-1].c); ; break;} -case 338: -#line 2502 "Gmsh.y" +case 339: +#line 2513 "Gmsh.y" { yyval.c = yyvsp[-1].c; ; break;} -case 339: -#line 2506 "Gmsh.y" +case 340: +#line 2517 "Gmsh.y" { for(i = 0 ; i<List_Nbr(yyvsp[-1].l) ; i++){ if(!i){ @@ -5641,8 +5668,8 @@ case 339: Free(yyvsp[-3].c); ; break;} -case 340: -#line 2531 "Gmsh.y" +case 341: +#line 2542 "Gmsh.y" { if(!(pStrCat = Get_StringOptionCategory(yyvsp[-3].c))) vyyerror("Unknown string option class '%s'", yyvsp[-3].c); @@ -5657,8 +5684,8 @@ case 340: } ; break;} -case 341: -#line 2545 "Gmsh.y" +case 342: +#line 2556 "Gmsh.y" { if(!(pStrCat = Get_StringOptionCategory(yyvsp[-6].c))) vyyerror("Unknown string option class '%s'", yyvsp[-6].c); @@ -5895,7 +5922,7 @@ yyerrhandle: } return 1; } -#line 2560 "Gmsh.y" +#line 2571 "Gmsh.y" void InitSymbols(void){ diff --git a/Parser/Gmsh.tab.cpp.h b/Parser/Gmsh.tab.cpp.h index 5b28b27a9794be0f5da3b362c7a6de8586231242..ce0a323ce87c4e8634cdf84169e3bc0003bf3dab 100644 --- a/Parser/Gmsh.tab.cpp.h +++ b/Parser/Gmsh.tab.cpp.h @@ -88,91 +88,92 @@ typedef union { #define tVectorPoint 335 #define tTensorPoint 336 #define tBSpline 337 -#define tNurbs 338 -#define tOrder 339 -#define tWith 340 -#define tBounds 341 -#define tKnots 342 -#define tColor 343 -#define tColorTable 344 -#define tFor 345 -#define tIn 346 -#define tEndFor 347 -#define tIf 348 -#define tEndIf 349 -#define tExit 350 -#define tReturn 351 -#define tCall 352 -#define tFunction 353 -#define tMesh 354 -#define tB_SPLINE_SURFACE_WITH_KNOTS 355 -#define tB_SPLINE_CURVE_WITH_KNOTS 356 -#define tCARTESIAN_POINT 357 -#define tTRUE 358 -#define tFALSE 359 -#define tUNSPECIFIED 360 -#define tU 361 -#define tV 362 -#define tEDGE_CURVE 363 -#define tVERTEX_POINT 364 -#define tORIENTED_EDGE 365 -#define tPLANE 366 -#define tFACE_OUTER_BOUND 367 -#define tEDGE_LOOP 368 -#define tADVANCED_FACE 369 -#define tVECTOR 370 -#define tDIRECTION 371 -#define tAXIS2_PLACEMENT_3D 372 -#define tISO 373 -#define tENDISO 374 -#define tENDSEC 375 -#define tDATA 376 -#define tHEADER 377 -#define tFILE_DESCRIPTION 378 -#define tFILE_SCHEMA 379 -#define tFILE_NAME 380 -#define tMANIFOLD_SOLID_BREP 381 -#define tCLOSED_SHELL 382 -#define tADVANCED_BREP_SHAPE_REPRESENTATION 383 -#define tFACE_BOUND 384 -#define tCYLINDRICAL_SURFACE 385 -#define tCONICAL_SURFACE 386 -#define tCIRCLE 387 -#define tTRIMMED_CURVE 388 -#define tGEOMETRIC_SET 389 -#define tCOMPOSITE_CURVE_SEGMENT 390 -#define tCONTINUOUS 391 -#define tCOMPOSITE_CURVE 392 -#define tTOROIDAL_SURFACE 393 -#define tPRODUCT_DEFINITION 394 -#define tPRODUCT_DEFINITION_SHAPE 395 -#define tSHAPE_DEFINITION_REPRESENTATION 396 -#define tELLIPSE 397 -#define tTrimmed 398 -#define tSolid 399 -#define tEndSolid 400 -#define tVertex 401 -#define tFacet 402 -#define tNormal 403 -#define tOuter 404 -#define tLoopSTL 405 -#define tEndLoop 406 -#define tEndFacet 407 -#define tAFFECTPLUS 408 -#define tAFFECTMINUS 409 -#define tAFFECTTIMES 410 -#define tAFFECTDIVIDE 411 -#define tOR 412 -#define tAND 413 -#define tEQUAL 414 -#define tNOTEQUAL 415 -#define tAPPROXEQUAL 416 -#define tLESSOREQUAL 417 -#define tGREATEROREQUAL 418 -#define tCROSSPRODUCT 419 -#define tPLUSPLUS 420 -#define tMINUSMINUS 421 -#define UNARYPREC 422 +#define tBezier 338 +#define tNurbs 339 +#define tOrder 340 +#define tWith 341 +#define tBounds 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 tReturn 352 +#define tCall 353 +#define tFunction 354 +#define tMesh 355 +#define tB_SPLINE_SURFACE_WITH_KNOTS 356 +#define tB_SPLINE_CURVE_WITH_KNOTS 357 +#define tCARTESIAN_POINT 358 +#define tTRUE 359 +#define tFALSE 360 +#define tUNSPECIFIED 361 +#define tU 362 +#define tV 363 +#define tEDGE_CURVE 364 +#define tVERTEX_POINT 365 +#define tORIENTED_EDGE 366 +#define tPLANE 367 +#define tFACE_OUTER_BOUND 368 +#define tEDGE_LOOP 369 +#define tADVANCED_FACE 370 +#define tVECTOR 371 +#define tDIRECTION 372 +#define tAXIS2_PLACEMENT_3D 373 +#define tISO 374 +#define tENDISO 375 +#define tENDSEC 376 +#define tDATA 377 +#define tHEADER 378 +#define tFILE_DESCRIPTION 379 +#define tFILE_SCHEMA 380 +#define tFILE_NAME 381 +#define tMANIFOLD_SOLID_BREP 382 +#define tCLOSED_SHELL 383 +#define tADVANCED_BREP_SHAPE_REPRESENTATION 384 +#define tFACE_BOUND 385 +#define tCYLINDRICAL_SURFACE 386 +#define tCONICAL_SURFACE 387 +#define tCIRCLE 388 +#define tTRIMMED_CURVE 389 +#define tGEOMETRIC_SET 390 +#define tCOMPOSITE_CURVE_SEGMENT 391 +#define tCONTINUOUS 392 +#define tCOMPOSITE_CURVE 393 +#define tTOROIDAL_SURFACE 394 +#define tPRODUCT_DEFINITION 395 +#define tPRODUCT_DEFINITION_SHAPE 396 +#define tSHAPE_DEFINITION_REPRESENTATION 397 +#define tELLIPSE 398 +#define tTrimmed 399 +#define tSolid 400 +#define tEndSolid 401 +#define tVertex 402 +#define tFacet 403 +#define tNormal 404 +#define tOuter 405 +#define tLoopSTL 406 +#define tEndLoop 407 +#define tEndFacet 408 +#define tAFFECTPLUS 409 +#define tAFFECTMINUS 410 +#define tAFFECTTIMES 411 +#define tAFFECTDIVIDE 412 +#define tOR 413 +#define tAND 414 +#define tEQUAL 415 +#define tNOTEQUAL 416 +#define tAPPROXEQUAL 417 +#define tLESSOREQUAL 418 +#define tGREATEROREQUAL 419 +#define tCROSSPRODUCT 420 +#define tPLUSPLUS 421 +#define tMINUSMINUS 422 +#define UNARYPREC 423 extern YYSTYPE yylval; diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index c579ba3b4912a7b04aa37eb3f6750573b1fc7827..a5826ceccee23d6f4b770830432315848b40ff92 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1,6 +1,6 @@ %{ -// $Id: Gmsh.y,v 1.94 2001-08-13 18:38:56 geuzaine Exp $ +// $Id: Gmsh.y,v 1.95 2001-08-17 08:31:32 geuzaine Exp $ // // Generaliser sprintf avec des chaines de caracteres @@ -99,7 +99,7 @@ void skip_until (char *skip, char *until); %token tScalarTriangle tVectorTriangle tTensorTriangle %token tScalarLine tVectorLine tTensorLine %token tScalarPoint tVectorPoint tTensorPoint -%token tBSpline tNurbs tOrder tWith tBounds tKnots +%token tBSpline tBezier tNurbs tOrder tWith tBounds tKnots %token tColor tColorTable tFor tIn tEndFor tIf tEndIf tExit %token tReturn tCall tFunction tMesh @@ -1241,6 +1241,17 @@ Shape : vyyerror("Too few control points for BSpline %d (%d < 4)", (int)$3, List_Nbr($6)); } + | tBezier '(' FExpr ')' tAFFECT ListOfDouble tEND + { + if(List_Nbr($6) > 3){ + Cdbseg101((int)$3,MSH_SEGM_BEZIER,2,$6,NULL,-1,-1,0.,1.,NULL,NULL,NULL); + $$.Type = MSH_SEGM_BSPLN; + $$.Num = (int)$3; + } + else + vyyerror("Too few control points for Bezier %d (%d < 4)", (int)$3, + List_Nbr($6)); + } | tNurbs '(' FExpr ')' tAFFECT ListOfDouble tKnots ListOfDouble tOrder FExpr tEND { List_T *Temp; diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index df6f2ae361a8e228b3249331f25c0fb8708abc4a..7916e8ea3bd5c65b4b3ad08a5321b1e45ec0adaf 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -2,7 +2,7 @@ /* A lexical scanner generated by flex */ /* Scanner skeleton version: - * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.108 2001-08-13 18:38:56 geuzaine Exp $ + * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.109 2001-08-17 08:31:32 geuzaine Exp $ */ #define FLEX_SCANNER @@ -283,121 +283,122 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 185 -#define YY_END_OF_BUFFER 186 -static yyconst short int yy_accept[1009] = +#define YY_NUM_RULES 186 +#define YY_END_OF_BUFFER 187 +static yyconst short int yy_accept[1014] = { 0, - 0, 0, 186, 184, 1, 1, 184, 5, 178, 184, - 6, 184, 184, 184, 184, 184, 179, 14, 2, 184, - 9, 184, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 184, 184, 0, 0, 22, 178, 18, 12, 19, - 10, 20, 11, 0, 181, 0, 0, 0, 0, 3, - 4, 13, 16, 180, 179, 0, 24, 21, 25, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 68, 67, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 84, 183, 183, 183, 183, 183, - 183, 183, 183, 120, 123, 114, 117, 183, 183, 183, - 183, 183, 183, 122, 183, 125, 183, 116, 119, 183, - 183, 183, 183, 121, 124, 115, 118, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 17, 23, 0, - 0, 15, 0, 131, 132, 133, 134, 180, 0, 0, - - 182, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 40, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 53, 183, 183, 183, 183, 183, 183, 64, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 74, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 98, 183, 183, 183, 183, - 183, 183, 183, 183, 109, 183, 183, 183, 183, 183, - - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 0, 0, 0, 181, 0, 0, 180, 183, 183, 183, - 183, 26, 183, 183, 183, 28, 30, 183, 183, 183, - 183, 35, 183, 183, 183, 183, 183, 183, 48, 183, - 38, 183, 183, 183, 183, 183, 39, 148, 183, 183, - 183, 52, 183, 183, 183, 0, 183, 183, 183, 183, - 60, 183, 183, 183, 61, 183, 63, 183, 183, 183, - 183, 0, 183, 183, 142, 183, 183, 72, 183, 73, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 95, 183, 183, - - 183, 183, 183, 99, 183, 183, 97, 183, 183, 183, - 183, 183, 183, 108, 183, 183, 183, 183, 183, 183, - 113, 183, 183, 183, 183, 173, 8, 183, 183, 183, - 183, 183, 0, 0, 0, 180, 183, 183, 183, 183, - 183, 183, 183, 32, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 45, 183, - 183, 183, 183, 183, 183, 183, 0, 183, 183, 183, - 59, 183, 183, 183, 62, 183, 183, 183, 66, 0, - 183, 70, 183, 183, 75, 183, 183, 183, 183, 183, - 81, 183, 82, 146, 183, 183, 183, 85, 183, 86, - - 87, 183, 183, 183, 183, 183, 94, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 111, 183, - 183, 183, 183, 183, 183, 170, 183, 183, 172, 177, - 183, 0, 0, 183, 183, 183, 183, 27, 29, 31, - 183, 183, 183, 37, 183, 161, 183, 183, 183, 183, - 183, 183, 42, 183, 183, 183, 183, 49, 50, 183, - 183, 183, 183, 0, 154, 183, 183, 58, 183, 183, - 183, 183, 183, 183, 183, 183, 147, 0, 183, 76, - 71, 183, 183, 183, 78, 77, 183, 183, 183, 183, - 91, 90, 183, 183, 96, 93, 183, 100, 183, 104, - - 183, 183, 183, 183, 183, 183, 183, 183, 143, 183, - 112, 183, 183, 183, 7, 171, 169, 0, 0, 183, - 183, 183, 183, 33, 183, 36, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 44, 183, 183, 183, - 183, 57, 0, 183, 183, 55, 183, 183, 183, 183, - 183, 183, 183, 0, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 103, 183, 101, 183, 183, - 183, 183, 183, 110, 183, 183, 174, 183, 0, 0, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 0, - - 54, 56, 183, 183, 183, 183, 183, 65, 183, 0, - 183, 183, 79, 80, 183, 183, 183, 83, 183, 183, - 183, 183, 102, 183, 183, 183, 183, 183, 175, 176, - 0, 0, 183, 183, 183, 183, 34, 183, 183, 183, - 183, 183, 183, 183, 183, 43, 183, 144, 51, 183, - 137, 0, 183, 183, 183, 150, 183, 183, 0, 69, - 183, 183, 183, 183, 183, 92, 183, 105, 183, 183, - 183, 107, 183, 0, 0, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 47, 183, 46, - 136, 0, 140, 183, 183, 183, 183, 0, 183, 183, - - 183, 89, 183, 183, 183, 183, 183, 183, 0, 0, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 0, 183, 183, 149, 183, 0, 183, - 183, 183, 88, 183, 183, 183, 106, 183, 130, 0, - 130, 183, 183, 183, 183, 183, 183, 183, 155, 183, - 183, 183, 183, 0, 183, 183, 183, 152, 183, 183, - 183, 183, 183, 183, 138, 129, 183, 141, 129, 183, - 183, 183, 183, 183, 183, 183, 183, 0, 183, 183, - 163, 183, 135, 183, 183, 183, 162, 183, 183, 183, - 183, 183, 183, 183, 183, 41, 0, 183, 183, 183, - - 183, 183, 183, 183, 183, 183, 183, 126, 165, 159, - 183, 0, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 153, 139, 151, 183, 183, 183, - 160, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 145, 183, 183, 183, 183, 183, 166, 183, 183, - 183, 183, 183, 158, 157, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, - 183, 183, 183, 183, 183, 183, 183, 183, 164, 183, - 183, 183, 183, 183, 167, 183, 183, 128, 183, 183, - 183, 183, 183, 183, 127, 183, 183, 183, 183, 183, - - 183, 183, 183, 168, 183, 183, 156, 0 + 0, 0, 187, 185, 1, 1, 185, 5, 179, 185, + 6, 185, 185, 185, 185, 185, 180, 14, 2, 185, + 9, 185, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 185, 185, 0, 0, 22, 179, 18, 12, 19, + 10, 20, 11, 0, 182, 0, 0, 0, 0, 3, + 4, 13, 16, 181, 180, 0, 24, 21, 25, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 69, 68, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 85, 184, 184, 184, 184, + 184, 184, 184, 184, 121, 124, 115, 118, 184, 184, + 184, 184, 184, 184, 123, 184, 126, 184, 117, 120, + 184, 184, 184, 184, 122, 125, 116, 119, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 17, 23, + 0, 0, 15, 0, 132, 133, 134, 135, 181, 0, + + 0, 183, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 41, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 54, 184, 184, 184, 184, 184, 184, + 65, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 75, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 99, 184, 184, + 184, 184, 184, 184, 184, 184, 110, 184, 184, 184, + + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 0, 0, 0, 182, 0, 0, 181, 184, + 184, 184, 184, 26, 184, 184, 184, 28, 30, 184, + 184, 184, 184, 184, 36, 184, 184, 184, 184, 184, + 184, 49, 184, 39, 184, 184, 184, 184, 184, 40, + 149, 184, 184, 184, 53, 184, 184, 184, 0, 184, + 184, 184, 184, 61, 184, 184, 184, 62, 184, 64, + 184, 184, 184, 184, 0, 184, 184, 143, 184, 184, + 73, 184, 74, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + + 96, 184, 184, 184, 184, 184, 100, 184, 184, 98, + 184, 184, 184, 184, 184, 184, 109, 184, 184, 184, + 184, 184, 184, 114, 184, 184, 184, 184, 174, 8, + 184, 184, 184, 184, 184, 0, 0, 0, 181, 184, + 184, 184, 184, 184, 184, 184, 32, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 46, 184, 184, 184, 184, 184, 184, 184, + 0, 184, 184, 184, 60, 184, 184, 184, 63, 184, + 184, 184, 67, 0, 184, 71, 184, 184, 76, 184, + 184, 184, 184, 184, 82, 184, 83, 147, 184, 184, + + 184, 86, 184, 87, 88, 184, 184, 184, 184, 184, + 95, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 112, 184, 184, 184, 184, 184, 184, 171, + 184, 184, 173, 178, 184, 0, 0, 184, 184, 184, + 184, 27, 29, 31, 184, 184, 184, 35, 38, 184, + 162, 184, 184, 184, 184, 184, 184, 43, 184, 184, + 184, 184, 50, 51, 184, 184, 184, 184, 0, 155, + 184, 184, 59, 184, 184, 184, 184, 184, 184, 184, + 184, 148, 0, 184, 77, 72, 184, 184, 184, 79, + 78, 184, 184, 184, 184, 92, 91, 184, 184, 97, + + 94, 184, 101, 184, 105, 184, 184, 184, 184, 184, + 184, 184, 184, 144, 184, 113, 184, 184, 184, 7, + 172, 170, 0, 0, 184, 184, 184, 184, 33, 184, + 37, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 45, 184, 184, 184, 184, 58, 0, 184, 184, + 56, 184, 184, 184, 184, 184, 184, 184, 0, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 104, 184, 102, 184, 184, 184, 184, 184, 111, 184, + 184, 175, 184, 0, 0, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + + 184, 184, 184, 184, 0, 55, 57, 184, 184, 184, + 184, 184, 66, 184, 0, 184, 184, 80, 81, 184, + 184, 184, 84, 184, 184, 184, 184, 103, 184, 184, + 184, 184, 184, 176, 177, 0, 0, 184, 184, 184, + 184, 34, 184, 184, 184, 184, 184, 184, 184, 184, + 44, 184, 145, 52, 184, 138, 0, 184, 184, 184, + 151, 184, 184, 0, 70, 184, 184, 184, 184, 184, + 93, 184, 106, 184, 184, 184, 108, 184, 0, 0, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 48, 184, 47, 137, 0, 141, 184, 184, + + 184, 184, 0, 184, 184, 184, 90, 184, 184, 184, + 184, 184, 184, 0, 0, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 0, 184, + 184, 150, 184, 0, 184, 184, 184, 89, 184, 184, + 184, 107, 184, 131, 0, 131, 184, 184, 184, 184, + 184, 184, 184, 156, 184, 184, 184, 184, 0, 184, + 184, 184, 153, 184, 184, 184, 184, 184, 184, 139, + 130, 184, 142, 130, 184, 184, 184, 184, 184, 184, + 184, 184, 0, 184, 184, 164, 184, 136, 184, 184, + 184, 163, 184, 184, 184, 184, 184, 184, 184, 184, + + 42, 0, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 127, 166, 160, 184, 0, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 154, + 140, 152, 184, 184, 184, 161, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 146, 184, 184, 184, + 184, 184, 167, 184, 184, 184, 184, 184, 159, 158, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, + 184, 184, 184, 165, 184, 184, 184, 184, 184, 168, + 184, 184, 129, 184, 184, 184, 184, 184, 184, 128, + + 184, 184, 184, 184, 184, 184, 184, 184, 169, 184, + 184, 157, 0 } ; static yyconst int yy_ec[256] = @@ -444,239 +445,239 @@ static yyconst int yy_meta[77] = 3, 3, 3, 3, 1, 1 } ; -static yyconst short int yy_base[1014] = +static yyconst short int yy_base[1019] = { 0, - 0, 0, 1272, 51, 52, 1273, 57, 54, 70, 75, + 0, 0, 1277, 51, 52, 1278, 57, 54, 70, 75, 55, 67, 80, 81, 113, 95, 132, 73, 79, 89, - 111, 119, 125, 133, 179, 140, 181, 189, 135, 161, - 204, 83, 158, 214, 230, 110, 222, 252, 253, 297, - 307, 184, 278, 154, 212, 255, 237, 271, 268, 300, - 325, 256, 147, 1233, 1233, 1273, 360, 1273, 1273, 1273, - 1273, 1273, 1273, 1257, 366, 1256, 1255, 128, 1254, 1273, - 1273, 1273, 1273, 371, 386, 395, 1273, 1273, 1273, 0, - 1227, 1220, 1226, 1230, 1198, 1208, 1201, 117, 1194, 1216, - 1187, 1194, 1214, 1213, 1214, 83, 1216, 163, 1192, 1199, - - 1182, 361, 1205, 1206, 1185, 1184, 1193, 1178, 1211, 1205, - 1212, 1178, 1184, 203, 1210, 1200, 1183, 1170, 1169, 1165, - 1168, 1191, 1204, 1163, 1188, 0, 1157, 1161, 1186, 1149, - 1159, 1158, 125, 1182, 1186, 1150, 1163, 1149, 1182, 1160, - 1188, 1173, 1144, 1136, 0, 150, 212, 227, 1146, 176, - 1139, 1146, 1181, 0, 0, 0, 0, 1142, 264, 1137, - 1136, 1135, 1139, 0, 1159, 0, 1166, 0, 0, 1135, - 277, 1138, 249, 0, 0, 0, 0, 1135, 1126, 1140, - 1140, 1128, 1119, 1123, 1120, 1127, 1120, 1273, 1273, 1148, - 1143, 1273, 416, 1273, 1273, 1273, 1273, 421, 436, 427, - - 441, 1146, 1158, 1140, 1139, 1112, 318, 1116, 1115, 1110, - 1115, 1135, 1111, 1108, 1129, 1144, 1128, 1129, 1135, 1134, - 1105, 1103, 1103, 1096, 1109, 1106, 1096, 1094, 1100, 1132, - 1127, 1100, 1103, 1081, 1091, 1122, 1117, 184, 1090, 324, - 1079, 0, 1080, 1117, 1116, 1076, 1079, 1088, 0, 1088, - 1103, 1111, 1074, 1125, 1081, 1066, 1105, 1078, 1075, 1076, - 1114, 1064, 1095, 1077, 1068, 1055, 1072, 1094, 1067, 1083, - 1092, 1068, 1050, 1054, 1059, 1052, 1059, 1050, 1055, 1057, - 1046, 1039, 1057, 1052, 1066, 1047, 1045, 1044, 1033, 328, - 1045, 1038, 1060, 1061, 1039, 1033, 1033, 1031, 1050, 1049, - - 1021, 1032, 405, 1034, 1023, 48, 1025, 1031, 1026, 1015, - 1040, 1042, 452, 462, 471, 476, 481, 1038, 1042, 1039, - 1061, 0, 1013, 1017, 1024, 0, 1057, 1022, 1013, 1035, - 1016, 0, 1040, 1032, 1038, 1027, 1038, 1026, 0, 993, - 0, 1011, 1000, 993, 992, 997, 0, 0, 1030, 987, - 986, 0, 995, 1003, 1012, 1018, 1021, 984, 984, 991, - 0, 976, 995, 994, 0, 976, 0, 973, 1012, 1011, - 970, 1022, 970, 968, 0, 968, 965, 0, 1018, 0, - 1002, 94, 976, 969, 961, 990, 960, 997, 981, 962, - 964, 967, 962, 951, 952, 949, 950, 0, 954, 948, - - 945, 959, 983, 0, 948, 947, 0, 958, 941, 956, - 951, 972, 967, 0, 935, 940, 944, 961, 970, 936, - 0, 946, 932, 931, 925, 0, 0, 938, 941, 924, - 936, 934, 955, 958, 486, 491, 953, 958, 955, 933, - 914, 918, 917, 0, 926, 915, 944, 908, 933, 945, - 945, 930, 946, 942, 908, 915, 912, 911, 922, 909, - 920, 907, 906, 907, 381, 917, 916, 930, 304, 889, - 0, 901, 370, 483, 0, 895, 910, 911, 0, 936, - 882, 0, 881, 890, 0, 908, 895, 886, 876, 879, - 0, 899, 0, 0, 914, 885, 886, 0, 875, 0, - - 0, 881, 881, 883, 871, 878, 0, 882, 876, 861, - 860, 873, 874, 857, 897, 895, 231, 868, 0, 881, - 874, 865, 866, 854, 856, 0, 859, 854, 0, 0, - 841, 875, 885, 873, 881, 882, 868, 0, 0, 890, - 837, 850, 866, 0, 870, 0, 852, 868, 864, 858, - 837, 828, 0, 833, 844, 821, 860, 0, 0, 841, - 847, 851, 860, 849, 0, 828, 827, 0, 830, 845, - 839, 853, 856, 853, 815, 837, 0, 859, 821, 0, - 0, 839, 811, 798, 0, 0, 843, 828, 801, 818, - 0, 0, 800, 808, 0, 0, 838, 0, 809, 0, - - 808, 808, 795, 836, 832, 800, 807, 803, 0, 806, - 0, 800, 789, 794, 0, 0, 0, 808, 818, 806, - 821, 815, 811, 0, 782, 0, 816, 819, 801, 799, - 791, 807, 798, 783, 784, 784, 0, 796, 765, 792, - 793, 0, 819, 762, 776, 0, 784, 784, 784, 788, - 792, 760, 789, 806, 767, 791, 758, 762, 788, 765, - 747, 752, 744, 748, 781, 0, 750, 0, 734, 771, - 756, 742, 735, 0, 763, 733, 0, 747, 761, 769, - 759, 747, 766, 770, 727, 743, 754, 759, 761, 747, - 761, 723, 719, 730, 723, 745, 731, 736, 740, 763, - - 0, 0, 739, 745, 744, 739, 63, 0, 144, 182, - 167, 211, 0, 0, 227, 274, 250, 0, 271, 298, - 329, 292, 0, 320, 364, 333, 338, 355, 0, 0, - 353, 365, 372, 394, 385, 398, 0, 422, 380, 433, - 413, 421, 447, 412, 416, 0, 429, 0, 0, 456, - 0, 497, 485, 473, 474, 0, 479, 467, 506, 0, - 477, 491, 493, 470, 460, 0, 493, 0, 485, 484, - 460, 0, 497, 489, 503, 491, 493, 510, 507, 508, - 494, 495, 500, 505, 515, 502, 508, 0, 477, 0, - 0, 528, 0, 497, 515, 524, 508, 534, 513, 525, - - 524, 0, 492, 518, 513, 517, 504, 522, 0, 533, - 560, 535, 548, 548, 540, 537, 538, 546, 550, 543, - 558, 539, 521, 576, 566, 553, 0, 565, 579, 560, - 566, 565, 0, 566, 559, 556, 0, 559, 1273, 0, - 0, 563, 575, 636, 576, 561, 577, 575, 0, 569, - 586, 570, 554, 596, 576, 573, 574, 1273, 585, 590, - 582, 578, 592, 594, 0, 1273, 574, 0, 0, 587, - 597, 602, 590, 584, 603, 587, 579, 621, 590, 602, - 0, 612, 0, 618, 619, 628, 0, 612, 612, 611, - 635, 620, 635, 636, 625, 0, 650, 630, 630, 620, - - 628, 633, 646, 642, 625, 630, 648, 0, 628, 0, - 649, 664, 653, 644, 657, 651, 648, 658, 663, 671, - 657, 641, 650, 668, 1273, 0, 0, 653, 656, 646, - 0, 657, 670, 656, 654, 672, 675, 674, 666, 664, - 677, 0, 675, 675, 678, 681, 671, 664, 686, 666, - 667, 675, 682, 0, 0, 678, 681, 681, 688, 692, - 696, 694, 686, 699, 691, 680, 693, 707, 704, 694, - 696, 701, 694, 698, 697, 699, 698, 704, 0, 714, - 715, 716, 704, 708, 0, 710, 707, 0, 707, 708, - 723, 711, 729, 717, 0, 713, 714, 725, 734, 721, - - 718, 724, 730, 0, 725, 727, 0, 1273, 762, 765, - 768, 771, 774 + 111, 119, 125, 133, 179, 140, 181, 189, 135, 184, + 204, 83, 127, 222, 141, 208, 220, 238, 249, 293, + 267, 212, 311, 257, 268, 147, 297, 301, 218, 300, + 271, 241, 197, 1238, 1238, 1278, 353, 1278, 1278, 1278, + 1278, 1278, 1278, 1262, 361, 1261, 1260, 188, 1259, 1278, + 1278, 1278, 1278, 366, 381, 390, 1278, 1278, 1278, 0, + 1232, 1225, 1231, 1235, 1203, 1213, 1206, 131, 1199, 1221, + 1187, 1191, 1198, 1218, 1217, 1218, 83, 1220, 160, 1196, + + 1203, 1186, 281, 1209, 1210, 1189, 1188, 1197, 1182, 1215, + 1209, 1216, 1182, 1188, 353, 1214, 1204, 1187, 1174, 1173, + 1169, 1172, 1195, 1208, 1167, 1192, 0, 1161, 1165, 1190, + 1153, 1163, 1162, 206, 1186, 1190, 1154, 1167, 1153, 1186, + 1164, 1192, 1177, 1148, 1140, 0, 119, 301, 77, 1150, + 133, 1143, 1150, 1185, 0, 0, 0, 0, 1146, 208, + 1141, 1140, 1139, 1143, 0, 1163, 0, 1170, 0, 0, + 1139, 232, 1142, 230, 0, 0, 0, 0, 1139, 1130, + 1144, 1144, 1132, 1123, 1127, 1124, 1131, 1124, 1278, 1278, + 1152, 1147, 1278, 408, 1278, 1278, 1278, 1278, 413, 422, + + 428, 433, 1150, 1162, 1144, 1143, 1116, 361, 1120, 1119, + 1114, 1119, 1139, 1119, 1114, 1111, 1132, 1147, 1131, 1132, + 1138, 1137, 1108, 1106, 1106, 1099, 1112, 1109, 1099, 1097, + 1103, 1135, 1130, 1103, 1106, 1084, 1094, 1125, 1120, 280, + 1093, 356, 1082, 0, 1083, 1120, 1119, 1079, 1082, 1091, + 0, 1091, 1106, 1114, 1077, 1128, 1084, 1069, 1108, 1081, + 1078, 1079, 1117, 1067, 1098, 1080, 1071, 1058, 1075, 1097, + 1070, 1086, 1095, 1071, 1053, 1057, 1062, 1055, 1062, 1053, + 1058, 1060, 1049, 1042, 1060, 1055, 1069, 1050, 1048, 1047, + 1036, 347, 1048, 1041, 1063, 1064, 1042, 1036, 1036, 1034, + + 1053, 1052, 1024, 1035, 397, 1037, 1026, 48, 1028, 1034, + 1029, 1018, 1043, 1045, 444, 454, 463, 468, 473, 1041, + 1045, 1042, 1064, 0, 1016, 1020, 1027, 0, 1060, 1025, + 1016, 1038, 1018, 1018, 0, 1042, 1034, 1040, 1029, 1040, + 1028, 0, 995, 0, 1013, 1002, 995, 994, 999, 0, + 0, 1032, 989, 988, 0, 997, 1005, 1014, 1020, 1023, + 986, 986, 993, 0, 978, 997, 996, 0, 978, 0, + 975, 1014, 1013, 972, 1024, 972, 970, 0, 970, 967, + 0, 1020, 0, 1004, 350, 978, 971, 963, 992, 962, + 999, 983, 964, 966, 969, 964, 953, 954, 951, 952, + + 0, 956, 950, 947, 961, 985, 0, 950, 949, 0, + 960, 943, 958, 953, 974, 969, 0, 937, 942, 946, + 963, 972, 938, 0, 948, 934, 933, 927, 0, 0, + 940, 943, 926, 938, 936, 957, 960, 478, 483, 955, + 960, 957, 935, 916, 920, 919, 0, 928, 917, 946, + 911, 909, 934, 946, 946, 931, 947, 943, 909, 916, + 913, 912, 923, 910, 921, 908, 907, 908, 287, 918, + 917, 931, 345, 890, 0, 902, 428, 475, 0, 896, + 911, 912, 0, 937, 883, 0, 882, 891, 0, 909, + 896, 887, 877, 880, 0, 900, 0, 0, 915, 886, + + 887, 0, 876, 0, 0, 882, 882, 884, 872, 879, + 0, 883, 877, 862, 861, 874, 875, 858, 898, 896, + 448, 869, 0, 882, 875, 866, 867, 855, 857, 0, + 860, 855, 0, 0, 842, 876, 886, 874, 882, 883, + 869, 0, 0, 891, 838, 851, 867, 0, 0, 871, + 0, 853, 869, 865, 859, 838, 829, 0, 834, 845, + 822, 861, 0, 0, 842, 848, 852, 861, 850, 0, + 829, 828, 0, 831, 846, 840, 854, 857, 854, 816, + 838, 0, 860, 822, 0, 0, 840, 812, 799, 0, + 0, 844, 829, 802, 819, 0, 0, 801, 809, 0, + + 0, 839, 0, 810, 0, 809, 809, 796, 837, 833, + 801, 808, 804, 0, 807, 0, 801, 790, 795, 0, + 0, 0, 809, 819, 807, 822, 816, 812, 0, 783, + 0, 817, 820, 802, 800, 792, 808, 799, 784, 785, + 785, 0, 797, 766, 793, 794, 0, 820, 763, 777, + 0, 785, 785, 785, 789, 793, 761, 790, 807, 768, + 792, 759, 763, 789, 766, 748, 753, 745, 749, 782, + 0, 751, 0, 735, 772, 757, 743, 736, 0, 764, + 734, 0, 748, 762, 770, 760, 748, 767, 771, 728, + 744, 755, 760, 762, 748, 762, 724, 720, 731, 724, + + 746, 731, 734, 736, 757, 0, 0, 54, 106, 110, + 151, 203, 0, 209, 254, 221, 271, 0, 0, 280, + 304, 287, 0, 289, 295, 327, 293, 0, 343, 384, + 356, 362, 396, 0, 0, 411, 423, 413, 480, 431, + 439, 0, 478, 426, 448, 457, 464, 486, 450, 455, + 0, 460, 0, 0, 487, 0, 503, 491, 480, 481, + 0, 486, 474, 513, 0, 484, 498, 499, 476, 466, + 0, 498, 0, 490, 489, 465, 0, 502, 494, 508, + 496, 498, 515, 512, 513, 499, 500, 505, 510, 520, + 507, 513, 0, 482, 0, 0, 533, 0, 502, 520, + + 529, 513, 539, 518, 530, 529, 0, 497, 523, 518, + 522, 509, 527, 0, 538, 565, 540, 553, 553, 545, + 542, 543, 551, 555, 548, 563, 544, 526, 581, 571, + 558, 0, 570, 584, 565, 571, 570, 0, 571, 564, + 561, 0, 564, 1278, 0, 0, 568, 580, 641, 581, + 566, 582, 580, 0, 574, 591, 575, 559, 601, 581, + 578, 579, 1278, 590, 595, 587, 583, 597, 599, 0, + 1278, 579, 0, 0, 592, 602, 607, 595, 589, 608, + 592, 584, 626, 595, 607, 0, 617, 0, 623, 624, + 633, 0, 617, 617, 616, 640, 625, 640, 641, 630, + + 0, 655, 635, 635, 625, 633, 638, 651, 647, 630, + 635, 653, 0, 633, 0, 654, 669, 658, 649, 662, + 656, 653, 663, 668, 676, 662, 646, 655, 673, 1278, + 0, 0, 658, 661, 651, 0, 662, 675, 661, 659, + 677, 680, 679, 671, 669, 682, 0, 680, 680, 683, + 686, 676, 669, 691, 671, 672, 680, 687, 0, 0, + 683, 686, 686, 693, 697, 701, 699, 691, 704, 696, + 685, 698, 712, 709, 699, 701, 706, 699, 703, 702, + 704, 703, 709, 0, 719, 720, 721, 709, 713, 0, + 715, 712, 0, 712, 713, 728, 716, 734, 722, 0, + + 718, 719, 730, 739, 726, 723, 729, 735, 0, 730, + 732, 0, 1278, 767, 770, 773, 776, 779 } ; -static yyconst short int yy_def[1014] = +static yyconst short int yy_def[1019] = { 0, - 1008, 1, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - - 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1008, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1008, 1008, 1008, 1008, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1008, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1008, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1008, 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1008, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1008, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1008, 1008, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1008, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1008, 1008, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1008, - - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1008, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1008, 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1008, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1008, 1008, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1008, 1009, 1009, 1009, 1009, 1009, 1008, 1009, 1009, - - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1010, 1008, - 1011, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1008, 1009, 1009, 1009, 1009, 1008, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1008, 1012, - 1009, 1009, 1009, 1013, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1008, 1009, 1009, 1009, 1008, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1008, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1008, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1008, 1009, 1009, 1009, - - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1008, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 0, 1008, 1008, - 1008, 1008, 1008 + 1013, 1, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + + 1013, 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1013, 1013, 1013, 1013, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1013, 1013, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1013, 1013, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1013, 1013, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + + 1014, 1014, 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1013, 1013, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1014, 1014, 1014, + 1014, 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1013, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1014, 1014, 1014, + + 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1015, 1013, 1016, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1014, + 1014, 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1013, 1017, 1014, 1014, 1014, 1018, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1014, + 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + + 1014, 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1013, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1013, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + + 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, + 1014, 1014, 0, 1013, 1013, 1013, 1013, 1013 } ; -static yyconst short int yy_nxt[1350] = +static yyconst short int yy_nxt[1355] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 17, 17, 17, 17, 18, 19, @@ -687,148 +688,149 @@ static yyconst short int yy_nxt[1350] = 32, 48, 49, 32, 32, 32, 50, 32, 32, 51, 32, 32, 32, 32, 52, 53, 54, 54, 56, 54, 54, 58, 54, 57, 57, 57, 57, 57, 59, 60, - 757, 62, 54, 55, 55, 54, 55, 55, 54, 55, + 758, 62, 54, 55, 55, 54, 55, 55, 54, 55, 54, 61, 63, 70, 54, 54, 54, 71, 81, 55, - 77, 427, 55, 428, 54, 55, 72, 55, 218, 219, + 77, 430, 55, 431, 54, 55, 72, 55, 220, 221, 54, 55, 55, 55, 64, 83, 65, 65, 65, 65, - 65, 55, 78, 487, 488, 81, 54, 55, 54, 196, + 65, 55, 78, 759, 280, 760, 54, 55, 54, 281, 79, 66, 73, 74, 54, 75, 75, 75, 75, 75, - 81, 82, 83, 55, 67, 68, 69, 54, 81, 76, - 81, 55, 122, 103, 191, 81, 209, 83, 189, 758, - 84, 104, 54, 89, 55, 83, 85, 83, 138, 81, - 261, 90, 83, 81, 210, 76, 81, 262, 123, 55, - 86, 87, 88, 105, 356, 91, 83, 106, 759, 274, - - 83, 92, 93, 83, 81, 107, 81, 109, 108, 81, - 94, 179, 115, 95, 81, 110, 96, 111, 275, 128, - 116, 83, 221, 83, 357, 97, 83, 281, 98, 81, - 222, 83, 99, 124, 760, 100, 101, 81, 117, 81, - 112, 102, 113, 282, 125, 129, 83, 81, 118, 119, - 172, 120, 114, 134, 83, 81, 83, 121, 126, 761, - 241, 139, 81, 130, 83, 127, 242, 131, 135, 276, - 243, 132, 83, 180, 299, 762, 133, 81, 81, 83, - 81, 54, 277, 136, 278, 606, 141, 140, 300, 279, - 607, 142, 137, 81, 83, 83, 81, 83, 55, 182, - - 763, 143, 149, 81, 181, 173, 150, 764, 144, 145, - 83, 146, 174, 83, 147, 151, 175, 148, 176, 177, - 83, 152, 81, 287, 183, 81, 296, 153, 765, 288, - 188, 154, 81, 184, 297, 155, 185, 156, 157, 83, - 178, 164, 83, 323, 165, 166, 167, 168, 169, 83, - 81, 766, 359, 408, 158, 360, 170, 767, 324, 325, - 159, 160, 186, 768, 161, 162, 409, 83, 769, 163, - 566, 567, 171, 57, 57, 57, 57, 57, 187, 65, - 65, 65, 65, 65, 198, 198, 198, 198, 198, 770, - 771, 772, 773, 193, 570, 774, 775, 74, 199, 75, - - 75, 75, 75, 75, 200, 200, 561, 571, 201, 201, - 201, 201, 201, 76, 776, 562, 779, 226, 777, 193, - 227, 228, 778, 780, 199, 313, 313, 229, 783, 314, - 314, 314, 314, 314, 198, 198, 198, 198, 198, 76, - 201, 201, 201, 201, 201, 316, 316, 781, 315, 317, - 317, 317, 317, 317, 201, 201, 201, 201, 201, 422, - 784, 785, 782, 786, 423, 314, 314, 314, 314, 314, - 787, 424, 788, 789, 315, 314, 314, 314, 314, 314, - 435, 435, 790, 791, 436, 436, 436, 436, 436, 317, - 317, 317, 317, 317, 317, 317, 317, 317, 317, 436, - - 436, 436, 436, 436, 436, 436, 436, 436, 436, 572, - 792, 793, 794, 795, 796, 797, 798, 799, 800, 573, - 801, 802, 803, 574, 804, 805, 806, 807, 808, 809, + 81, 82, 81, 55, 67, 68, 69, 54, 81, 76, + 81, 55, 123, 104, 135, 81, 81, 83, 276, 83, + 84, 105, 81, 89, 55, 83, 85, 83, 761, 136, + 210, 90, 83, 83, 283, 76, 91, 277, 129, 83, + 86, 87, 88, 106, 137, 92, 182, 107, 211, 197, + + 284, 93, 94, 138, 81, 108, 81, 110, 109, 81, + 95, 124, 116, 96, 81, 111, 97, 112, 190, 223, + 117, 83, 54, 83, 192, 98, 83, 224, 99, 81, + 762, 83, 100, 81, 763, 101, 102, 81, 118, 55, + 113, 103, 114, 81, 126, 81, 83, 81, 119, 120, + 83, 121, 115, 130, 83, 301, 125, 122, 127, 140, + 83, 263, 83, 81, 83, 128, 54, 289, 264, 302, + 764, 131, 142, 290, 81, 132, 139, 143, 173, 133, + 83, 298, 81, 55, 134, 141, 186, 144, 765, 299, + 359, 83, 81, 81, 145, 146, 81, 147, 150, 83, + + 148, 165, 151, 149, 166, 167, 168, 169, 170, 83, + 83, 152, 566, 83, 180, 189, 171, 153, 81, 766, + 360, 567, 81, 154, 188, 81, 81, 155, 767, 181, + 768, 156, 172, 157, 158, 83, 81, 228, 174, 83, + 229, 230, 83, 83, 769, 175, 770, 231, 771, 176, + 159, 177, 178, 83, 184, 772, 160, 161, 278, 183, + 162, 163, 187, 185, 773, 164, 57, 57, 57, 57, + 57, 279, 411, 179, 65, 65, 65, 65, 65, 199, + 199, 199, 199, 199, 362, 412, 325, 363, 194, 491, + 492, 774, 74, 200, 75, 75, 75, 75, 75, 201, + + 201, 326, 327, 202, 202, 202, 202, 202, 76, 775, + 243, 571, 572, 776, 194, 777, 244, 315, 315, 200, + 245, 316, 316, 316, 316, 316, 199, 199, 199, 199, + 199, 318, 318, 778, 76, 319, 319, 319, 319, 319, + 317, 202, 202, 202, 202, 202, 202, 202, 202, 202, + 202, 425, 575, 779, 780, 781, 426, 316, 316, 316, + 316, 316, 784, 427, 785, 576, 317, 316, 316, 316, + 316, 316, 438, 438, 788, 789, 439, 439, 439, 439, + 439, 319, 319, 319, 319, 319, 319, 319, 319, 319, + 319, 439, 439, 439, 439, 439, 439, 439, 439, 439, + + 439, 577, 611, 786, 782, 790, 791, 612, 783, 792, + 793, 578, 794, 795, 796, 579, 797, 798, 787, 799, + 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, - 830, 831, 832, 833, 834, 835, 836, 837, 838, 840, - 839, 839, 842, 839, 839, 839, 839, 839, 839, 839, - 839, 839, 839, 843, 844, 845, 846, 847, 839, 839, - 839, 839, 839, 848, 849, 850, 851, 852, 853, 854, + 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, + 840, 841, 842, 843, 845, 844, 844, 847, 844, 844, + 844, 844, 844, 844, 844, 844, 844, 844, 848, 849, + 850, 851, 852, 844, 844, 844, 844, 844, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, - 865, 867, 868, 870, 871, 872, 873, 839, 874, 875, - 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, + 865, 866, 867, 868, 869, 870, 872, 873, 875, 876, + 877, 878, 844, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, - 896, 897, 898, 899, 839, 839, 866, 866, 900, 866, - 866, 866, 866, 866, 866, 866, 866, 866, 866, 901, - 902, 903, 904, 905, 866, 866, 866, 866, 866, 906, - 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, + 896, 897, 898, 899, 900, 901, 902, 903, 904, 844, + 844, 871, 871, 905, 871, 871, 871, 871, 871, 871, + 871, 871, 871, 871, 906, 907, 908, 909, 910, 871, + 871, 871, 871, 871, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, - 927, 928, 929, 866, 930, 931, 932, 933, 934, 935, + 927, 928, 929, 930, 931, 932, 933, 934, 871, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, - 866, 866, 956, 957, 958, 959, 960, 961, 962, 963, + 956, 957, 958, 959, 960, 871, 871, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, - 1004, 1005, 1006, 1007, 80, 839, 756, 839, 841, 755, - 841, 866, 754, 866, 869, 753, 869, 752, 751, 750, - 749, 748, 747, 746, 745, 744, 743, 742, 741, 740, - 739, 738, 737, 736, 735, 734, 733, 732, 731, 730, - - 729, 728, 727, 726, 725, 724, 723, 722, 721, 720, - 719, 718, 717, 716, 715, 714, 713, 712, 711, 710, - 709, 708, 707, 706, 705, 704, 703, 702, 701, 700, - 699, 698, 697, 696, 695, 694, 693, 692, 691, 690, - 689, 688, 687, 686, 685, 684, 683, 682, 681, 680, - 679, 678, 677, 676, 675, 674, 673, 672, 671, 670, - 669, 668, 667, 666, 665, 664, 663, 662, 661, 660, - 659, 658, 657, 656, 655, 654, 653, 652, 651, 650, - 649, 648, 647, 646, 645, 644, 643, 642, 641, 640, - 639, 638, 637, 636, 635, 634, 633, 632, 631, 630, - - 629, 628, 627, 626, 625, 624, 623, 622, 621, 620, - 619, 618, 617, 616, 615, 614, 613, 612, 611, 610, - 609, 608, 605, 604, 603, 602, 601, 600, 599, 598, - 597, 596, 595, 594, 593, 592, 591, 590, 589, 588, - 587, 586, 585, 584, 583, 582, 581, 580, 579, 578, - 577, 576, 575, 569, 568, 565, 564, 563, 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, - 486, 485, 484, 483, 482, 481, 480, 479, 478, 477, - 476, 475, 474, 473, 472, 471, 470, 469, 468, 467, - 466, 465, 464, 463, 462, 461, 460, 459, 458, 457, - 456, 455, 454, 453, 452, 451, 450, 449, 448, 447, - 446, 445, 444, 443, 442, 441, 440, 439, 438, 437, - 434, 433, 432, 431, 430, 429, 426, 425, 421, 420, - 419, 418, 417, 416, 415, 414, 413, 412, 411, 410, - - 407, 406, 405, 404, 403, 402, 401, 400, 399, 398, - 397, 396, 395, 394, 393, 392, 391, 390, 389, 388, - 387, 386, 385, 384, 383, 382, 381, 380, 379, 378, - 377, 376, 375, 374, 373, 372, 371, 370, 369, 368, - 367, 366, 365, 364, 363, 362, 361, 358, 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, 322, 321, - 320, 319, 318, 312, 311, 310, 309, 308, 307, 306, - 305, 304, 303, 302, 301, 298, 295, 294, 293, 292, - - 291, 290, 289, 286, 285, 284, 283, 280, 273, 272, - 271, 270, 269, 268, 267, 266, 265, 264, 263, 260, - 259, 258, 257, 256, 255, 254, 253, 252, 251, 250, - 249, 248, 247, 246, 245, 244, 240, 239, 238, 237, - 236, 235, 234, 233, 232, 231, 230, 225, 224, 223, - 220, 217, 216, 215, 214, 213, 212, 211, 208, 207, - 206, 205, 204, 203, 202, 197, 195, 194, 192, 191, - 190, 1008, 3, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008 + 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 80, + 844, 757, 844, 846, 756, 846, 871, 755, 871, 874, + 754, 874, 753, 752, 751, 750, 749, 748, 747, 746, + 745, 744, 743, 742, 741, 740, 739, 738, 737, 736, + + 735, 734, 733, 732, 731, 730, 729, 728, 727, 726, + 725, 724, 723, 722, 721, 720, 719, 718, 717, 716, + 715, 714, 713, 712, 711, 710, 709, 708, 707, 706, + 705, 704, 703, 702, 701, 700, 699, 698, 697, 696, + 695, 694, 693, 692, 691, 690, 689, 688, 687, 686, + 685, 684, 683, 682, 681, 680, 679, 678, 677, 676, + 675, 674, 673, 672, 671, 670, 669, 668, 667, 666, + 665, 664, 663, 662, 661, 660, 659, 658, 657, 656, + 655, 654, 653, 652, 651, 650, 649, 648, 647, 646, + 645, 644, 643, 642, 641, 640, 639, 638, 637, 636, + + 635, 634, 633, 632, 631, 630, 629, 628, 627, 626, + 625, 624, 623, 622, 621, 620, 619, 618, 617, 616, + 615, 614, 613, 610, 609, 608, 607, 606, 605, 604, + 603, 602, 601, 600, 599, 598, 597, 596, 595, 594, + 593, 592, 591, 590, 589, 588, 587, 586, 585, 584, + 583, 582, 581, 580, 574, 573, 570, 569, 568, 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, 490, 489, 488, 487, 486, 485, 484, 483, + 482, 481, 480, 479, 478, 477, 476, 475, 474, 473, + 472, 471, 470, 469, 468, 467, 466, 465, 464, 463, + 462, 461, 460, 459, 458, 457, 456, 455, 454, 453, + 452, 451, 450, 449, 448, 447, 446, 445, 444, 443, + 442, 441, 440, 437, 436, 435, 434, 433, 432, 429, + 428, 424, 423, 422, 421, 420, 419, 418, 417, 416, + + 415, 414, 413, 410, 409, 408, 407, 406, 405, 404, + 403, 402, 401, 400, 399, 398, 397, 396, 395, 394, + 393, 392, 391, 390, 389, 388, 387, 386, 385, 384, + 383, 382, 381, 380, 379, 378, 377, 376, 375, 374, + 373, 372, 371, 370, 369, 368, 367, 366, 365, 364, + 361, 358, 357, 356, 355, 354, 353, 352, 351, 350, + 349, 348, 347, 346, 345, 344, 343, 342, 341, 340, + 339, 338, 337, 336, 335, 334, 333, 332, 331, 330, + 329, 328, 324, 323, 322, 321, 320, 314, 313, 312, + 311, 310, 309, 308, 307, 306, 305, 304, 303, 300, + + 297, 296, 295, 294, 293, 292, 291, 288, 287, 286, + 285, 282, 275, 274, 273, 272, 271, 270, 269, 268, + 267, 266, 265, 262, 261, 260, 259, 258, 257, 256, + 255, 254, 253, 252, 251, 250, 249, 248, 247, 246, + 242, 241, 240, 239, 238, 237, 236, 235, 234, 233, + 232, 227, 226, 225, 222, 219, 218, 217, 216, 215, + 214, 213, 212, 209, 208, 207, 206, 205, 204, 203, + 198, 196, 195, 193, 192, 191, 1013, 3, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013 } ; -static yyconst short int yy_chk[1350] = +static yyconst short int yy_chk[1355] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -839,145 +841,146 @@ static yyconst short int yy_chk[1350] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 5, 7, 8, 11, 10, 7, 9, 9, 9, 9, 9, 12, 13, - 707, 14, 12, 4, 5, 9, 8, 11, 18, 7, + 708, 14, 12, 4, 5, 9, 8, 11, 18, 7, 10, 13, 14, 16, 19, 13, 14, 16, 32, 12, - 20, 306, 9, 306, 20, 18, 16, 10, 96, 96, + 20, 308, 9, 308, 20, 18, 16, 10, 97, 97, 16, 19, 13, 14, 15, 32, 15, 15, 15, 15, - 15, 20, 21, 382, 382, 36, 21, 16, 15, 68, + 15, 20, 21, 709, 149, 710, 21, 16, 15, 149, 22, 15, 16, 17, 22, 17, 17, 17, 17, 17, - 23, 23, 36, 21, 15, 15, 15, 17, 24, 17, - 29, 22, 29, 26, 68, 26, 88, 23, 53, 709, - 23, 26, 53, 24, 17, 24, 23, 29, 36, 44, - 133, 24, 26, 33, 88, 17, 30, 133, 30, 53, - 23, 23, 23, 26, 238, 24, 44, 26, 710, 146, - - 33, 24, 25, 30, 25, 26, 27, 27, 26, 42, - 25, 44, 28, 25, 28, 27, 25, 27, 146, 33, - 28, 25, 98, 27, 238, 25, 42, 150, 25, 31, - 98, 28, 25, 30, 711, 25, 25, 45, 28, 34, - 27, 25, 27, 150, 31, 34, 31, 37, 28, 28, - 42, 28, 27, 35, 45, 35, 34, 28, 31, 712, - 114, 37, 47, 34, 37, 31, 114, 34, 35, 147, - 114, 34, 35, 45, 173, 715, 34, 38, 39, 47, - 46, 52, 147, 35, 148, 517, 38, 37, 173, 148, - 517, 38, 35, 49, 38, 39, 48, 46, 52, 47, - - 716, 38, 39, 43, 46, 43, 39, 717, 38, 38, - 49, 38, 43, 48, 38, 39, 43, 38, 43, 43, - 43, 39, 40, 159, 48, 50, 171, 40, 719, 159, - 52, 40, 41, 48, 171, 40, 49, 40, 40, 40, - 43, 41, 50, 207, 41, 41, 41, 41, 41, 41, - 51, 720, 240, 290, 40, 240, 41, 721, 207, 207, - 40, 40, 50, 722, 40, 40, 290, 51, 724, 40, - 469, 469, 41, 57, 57, 57, 57, 57, 51, 65, - 65, 65, 65, 65, 74, 74, 74, 74, 74, 725, - 726, 727, 728, 65, 473, 731, 732, 75, 74, 75, - - 75, 75, 75, 75, 76, 76, 465, 473, 76, 76, - 76, 76, 76, 75, 733, 465, 735, 102, 734, 65, - 102, 102, 734, 736, 74, 193, 193, 102, 739, 193, - 193, 193, 193, 193, 198, 198, 198, 198, 198, 75, - 200, 200, 200, 200, 200, 199, 199, 738, 198, 199, - 199, 199, 199, 199, 201, 201, 201, 201, 201, 303, - 740, 741, 738, 742, 303, 313, 313, 313, 313, 313, - 743, 303, 744, 745, 198, 314, 314, 314, 314, 314, - 315, 315, 747, 750, 315, 315, 315, 315, 315, 316, - 316, 316, 316, 316, 317, 317, 317, 317, 317, 435, - - 435, 435, 435, 435, 436, 436, 436, 436, 436, 474, - 752, 753, 754, 755, 757, 758, 759, 761, 762, 474, - 763, 764, 765, 474, 767, 769, 770, 771, 773, 774, - 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, - 785, 786, 787, 789, 792, 794, 795, 796, 797, 798, - 799, 800, 801, 803, 804, 805, 806, 807, 808, 810, - 811, 811, 812, 811, 811, 811, 811, 811, 811, 811, - 811, 811, 811, 813, 814, 815, 816, 817, 811, 811, - 811, 811, 811, 818, 819, 820, 821, 822, 823, 824, - 825, 826, 828, 829, 830, 831, 832, 834, 835, 836, - - 838, 842, 843, 845, 846, 847, 848, 811, 850, 851, - 852, 853, 854, 855, 856, 857, 859, 860, 861, 862, - 863, 864, 867, 870, 871, 872, 873, 874, 875, 876, - 877, 878, 879, 880, 811, 811, 844, 844, 882, 844, - 844, 844, 844, 844, 844, 844, 844, 844, 844, 884, - 885, 886, 888, 889, 844, 844, 844, 844, 844, 890, - 891, 892, 893, 894, 895, 897, 898, 899, 900, 901, - 902, 903, 904, 905, 906, 907, 909, 911, 912, 913, - 914, 915, 916, 844, 917, 918, 919, 920, 921, 922, - 923, 924, 928, 929, 930, 932, 933, 934, 935, 936, - - 937, 938, 939, 940, 941, 943, 944, 945, 946, 947, - 844, 844, 948, 949, 950, 951, 952, 953, 956, 957, - 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, + 23, 23, 33, 21, 15, 15, 15, 17, 24, 17, + 29, 22, 29, 26, 35, 26, 35, 23, 147, 33, + 23, 26, 46, 24, 17, 24, 23, 29, 711, 35, + 88, 24, 26, 35, 151, 17, 24, 147, 33, 46, + 23, 23, 23, 26, 35, 24, 46, 26, 88, 68, + + 151, 24, 25, 35, 25, 26, 27, 27, 26, 30, + 25, 30, 28, 25, 28, 27, 25, 27, 53, 99, + 28, 25, 53, 27, 68, 25, 30, 99, 25, 31, + 712, 28, 25, 36, 714, 25, 25, 42, 28, 53, + 27, 25, 27, 49, 31, 37, 31, 34, 28, 28, + 36, 28, 27, 34, 42, 174, 30, 28, 31, 37, + 49, 134, 37, 38, 34, 31, 52, 160, 134, 174, + 715, 34, 38, 160, 39, 34, 36, 38, 42, 34, + 38, 172, 44, 52, 34, 37, 49, 38, 716, 172, + 240, 39, 41, 45, 38, 38, 51, 38, 39, 44, + + 38, 41, 39, 38, 41, 41, 41, 41, 41, 41, + 45, 39, 469, 51, 44, 52, 41, 39, 40, 717, + 240, 469, 47, 40, 51, 50, 48, 40, 720, 45, + 721, 40, 41, 40, 40, 40, 43, 103, 43, 47, + 103, 103, 50, 48, 722, 43, 724, 103, 725, 43, + 40, 43, 43, 43, 48, 726, 40, 40, 148, 47, + 40, 40, 50, 48, 727, 40, 57, 57, 57, 57, + 57, 148, 292, 43, 65, 65, 65, 65, 65, 74, + 74, 74, 74, 74, 242, 292, 208, 242, 65, 385, + 385, 729, 75, 74, 75, 75, 75, 75, 75, 76, + + 76, 208, 208, 76, 76, 76, 76, 76, 75, 730, + 115, 473, 473, 731, 65, 732, 115, 194, 194, 74, + 115, 194, 194, 194, 194, 194, 199, 199, 199, 199, + 199, 200, 200, 733, 75, 200, 200, 200, 200, 200, + 199, 201, 201, 201, 201, 201, 202, 202, 202, 202, + 202, 305, 477, 736, 737, 738, 305, 315, 315, 315, + 315, 315, 740, 305, 741, 477, 199, 316, 316, 316, + 316, 316, 317, 317, 744, 745, 317, 317, 317, 317, + 317, 318, 318, 318, 318, 318, 319, 319, 319, 319, + 319, 438, 438, 438, 438, 438, 439, 439, 439, 439, + + 439, 478, 521, 743, 739, 746, 747, 521, 739, 748, + 749, 478, 750, 752, 755, 478, 757, 758, 743, 759, + 760, 762, 763, 764, 766, 767, 768, 769, 770, 772, + 774, 775, 776, 778, 779, 780, 781, 782, 783, 784, + 785, 786, 787, 788, 789, 790, 791, 792, 794, 797, + 799, 800, 801, 802, 803, 804, 805, 806, 808, 809, + 810, 811, 812, 813, 815, 816, 816, 817, 816, 816, + 816, 816, 816, 816, 816, 816, 816, 816, 818, 819, + 820, 821, 822, 816, 816, 816, 816, 816, 823, 824, + 825, 826, 827, 828, 829, 830, 831, 833, 834, 835, + + 836, 837, 839, 840, 841, 843, 847, 848, 850, 851, + 852, 853, 816, 855, 856, 857, 858, 859, 860, 861, + 862, 864, 865, 866, 867, 868, 869, 872, 875, 876, + 877, 878, 879, 880, 881, 882, 883, 884, 885, 816, + 816, 849, 849, 887, 849, 849, 849, 849, 849, 849, + 849, 849, 849, 849, 889, 890, 891, 893, 894, 849, + 849, 849, 849, 849, 895, 896, 897, 898, 899, 900, + 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, + 912, 914, 916, 917, 918, 919, 920, 921, 849, 922, + 923, 924, 925, 926, 927, 928, 929, 933, 934, 935, + + 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, + 948, 949, 950, 951, 952, 849, 849, 953, 954, 955, + 956, 957, 958, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, - 978, 980, 981, 982, 983, 984, 986, 987, 989, 990, - 991, 992, 993, 994, 996, 997, 998, 999, 1000, 1001, - 1002, 1003, 1005, 1006, 1009, 1010, 706, 1010, 1011, 705, - 1011, 1012, 704, 1012, 1013, 703, 1013, 700, 699, 698, - 697, 696, 695, 694, 693, 692, 691, 690, 689, 688, - 687, 686, 685, 684, 683, 682, 681, 680, 679, 678, - - 676, 675, 673, 672, 671, 670, 669, 667, 665, 664, - 663, 662, 661, 660, 659, 658, 657, 656, 655, 654, - 653, 652, 651, 650, 649, 648, 647, 645, 644, 643, - 641, 640, 639, 638, 636, 635, 634, 633, 632, 631, - 630, 629, 628, 627, 625, 623, 622, 621, 620, 619, - 618, 614, 613, 612, 610, 608, 607, 606, 605, 604, - 603, 602, 601, 599, 597, 594, 593, 590, 589, 588, - 587, 584, 583, 582, 579, 578, 576, 575, 574, 573, - 572, 571, 570, 569, 567, 566, 564, 563, 562, 561, - 560, 557, 556, 555, 554, 552, 551, 550, 549, 548, - - 547, 545, 543, 542, 541, 540, 537, 536, 535, 534, - 533, 532, 531, 528, 527, 525, 524, 523, 522, 521, - 520, 518, 516, 515, 514, 513, 512, 511, 510, 509, - 508, 506, 505, 504, 503, 502, 499, 497, 496, 495, - 492, 490, 489, 488, 487, 486, 484, 483, 481, 480, - 478, 477, 476, 472, 470, 468, 467, 466, 464, 463, - 462, 461, 460, 459, 458, 457, 456, 455, 454, 453, - 452, 451, 450, 449, 448, 447, 446, 445, 443, 442, - 441, 440, 439, 438, 437, 434, 433, 432, 431, 430, - 429, 428, 425, 424, 423, 422, 420, 419, 418, 417, - - 416, 415, 413, 412, 411, 410, 409, 408, 406, 405, - 403, 402, 401, 400, 399, 397, 396, 395, 394, 393, - 392, 391, 390, 389, 388, 387, 386, 385, 384, 383, - 381, 379, 377, 376, 374, 373, 372, 371, 370, 369, - 368, 366, 364, 363, 362, 360, 359, 358, 357, 356, - 355, 354, 353, 351, 350, 349, 346, 345, 344, 343, - 342, 340, 338, 337, 336, 335, 334, 333, 331, 330, - 329, 328, 327, 325, 324, 323, 321, 320, 319, 318, - 312, 311, 310, 309, 308, 307, 305, 304, 302, 301, - 300, 299, 298, 297, 296, 295, 294, 293, 292, 291, - - 289, 288, 287, 286, 285, 284, 283, 282, 281, 280, - 279, 278, 277, 276, 275, 274, 273, 272, 271, 270, - 269, 268, 267, 266, 265, 264, 263, 262, 261, 260, - 259, 258, 257, 256, 255, 254, 253, 252, 251, 250, - 248, 247, 246, 245, 244, 243, 241, 239, 237, 236, - 235, 234, 233, 232, 231, 230, 229, 228, 227, 226, - 225, 224, 223, 222, 221, 220, 219, 218, 217, 216, - 215, 214, 213, 212, 211, 210, 209, 208, 206, 205, - 204, 203, 202, 191, 190, 187, 186, 185, 184, 183, - 182, 181, 180, 179, 178, 172, 170, 167, 165, 163, - - 162, 161, 160, 158, 153, 152, 151, 149, 144, 143, - 142, 141, 140, 139, 138, 137, 136, 135, 134, 132, - 131, 130, 129, 128, 127, 125, 124, 123, 122, 121, - 120, 119, 118, 117, 116, 115, 113, 112, 111, 110, - 109, 108, 107, 106, 105, 104, 103, 101, 100, 99, - 97, 95, 94, 93, 92, 91, 90, 89, 87, 86, - 85, 84, 83, 82, 81, 69, 67, 66, 64, 55, - 54, 3, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008 + 978, 979, 980, 981, 982, 983, 985, 986, 987, 988, + 989, 991, 992, 994, 995, 996, 997, 998, 999, 1001, + 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1010, 1011, 1014, + 1015, 705, 1015, 1016, 704, 1016, 1017, 703, 1017, 1018, + 702, 1018, 701, 700, 699, 698, 697, 696, 695, 694, + 693, 692, 691, 690, 689, 688, 687, 686, 685, 684, + + 683, 681, 680, 678, 677, 676, 675, 674, 672, 670, + 669, 668, 667, 666, 665, 664, 663, 662, 661, 660, + 659, 658, 657, 656, 655, 654, 653, 652, 650, 649, + 648, 646, 645, 644, 643, 641, 640, 639, 638, 637, + 636, 635, 634, 633, 632, 630, 628, 627, 626, 625, + 624, 623, 619, 618, 617, 615, 613, 612, 611, 610, + 609, 608, 607, 606, 604, 602, 599, 598, 595, 594, + 593, 592, 589, 588, 587, 584, 583, 581, 580, 579, + 578, 577, 576, 575, 574, 572, 571, 569, 568, 567, + 566, 565, 562, 561, 560, 559, 557, 556, 555, 554, + + 553, 552, 550, 547, 546, 545, 544, 541, 540, 539, + 538, 537, 536, 535, 532, 531, 529, 528, 527, 526, + 525, 524, 522, 520, 519, 518, 517, 516, 515, 514, + 513, 512, 510, 509, 508, 507, 506, 503, 501, 500, + 499, 496, 494, 493, 492, 491, 490, 488, 487, 485, + 484, 482, 481, 480, 476, 474, 472, 471, 470, 468, + 467, 466, 465, 464, 463, 462, 461, 460, 459, 458, + 457, 456, 455, 454, 453, 452, 451, 450, 449, 448, + 446, 445, 444, 443, 442, 441, 440, 437, 436, 435, + 434, 433, 432, 431, 428, 427, 426, 425, 423, 422, + + 421, 420, 419, 418, 416, 415, 414, 413, 412, 411, + 409, 408, 406, 405, 404, 403, 402, 400, 399, 398, + 397, 396, 395, 394, 393, 392, 391, 390, 389, 388, + 387, 386, 384, 382, 380, 379, 377, 376, 375, 374, + 373, 372, 371, 369, 367, 366, 365, 363, 362, 361, + 360, 359, 358, 357, 356, 354, 353, 352, 349, 348, + 347, 346, 345, 343, 341, 340, 339, 338, 337, 336, + 334, 333, 332, 331, 330, 329, 327, 326, 325, 323, + 322, 321, 320, 314, 313, 312, 311, 310, 309, 307, + 306, 304, 303, 302, 301, 300, 299, 298, 297, 296, + + 295, 294, 293, 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, 250, 249, 248, 247, 246, 245, 243, + 241, 239, 238, 237, 236, 235, 234, 233, 232, 231, + 230, 229, 228, 227, 226, 225, 224, 223, 222, 221, + 220, 219, 218, 217, 216, 215, 214, 213, 212, 211, + 210, 209, 207, 206, 205, 204, 203, 192, 191, 188, + 187, 186, 185, 184, 183, 182, 181, 180, 179, 173, + + 171, 168, 166, 164, 163, 162, 161, 159, 154, 153, + 152, 150, 145, 144, 143, 142, 141, 140, 139, 138, + 137, 136, 135, 133, 132, 131, 130, 129, 128, 126, + 125, 124, 123, 122, 121, 120, 119, 118, 117, 116, + 114, 113, 112, 111, 110, 109, 108, 107, 106, 105, + 104, 102, 101, 100, 98, 96, 95, 94, 93, 92, + 91, 90, 89, 87, 86, 85, 84, 83, 82, 81, + 69, 67, 66, 64, 55, 54, 3, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, + 1013, 1013, 1013, 1013 } ; static yy_state_type yy_last_accepting_state; @@ -995,7 +998,7 @@ char *yytext; #define INITIAL 0 #line 2 "Gmsh.l" -// $Id: Gmsh.yy.cpp,v 1.108 2001-08-13 18:38:56 geuzaine Exp $ +// $Id: Gmsh.yy.cpp,v 1.109 2001-08-17 08:31:32 geuzaine Exp $ #include <stdio.h> #include <stdlib.h> @@ -1038,7 +1041,7 @@ void skipline(void); && ferror( yyin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" ); -#line 1042 "Gmsh.yy.cpp" +#line 1045 "Gmsh.yy.cpp" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1192,7 +1195,7 @@ YY_DECL #line 63 "Gmsh.l" -#line 1196 "Gmsh.yy.cpp" +#line 1199 "Gmsh.yy.cpp" if ( yy_init ) { @@ -1243,13 +1246,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 >= 1009 ) + if ( yy_current_state >= 1014 ) 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] != 1273 ); + while ( yy_base[yy_current_state] != 1278 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1448,267 +1451,267 @@ return tAttractor; case 35: YY_RULE_SETUP #line 101 "Gmsh.l" -return tBump; +return tBezier; YY_BREAK case 36: YY_RULE_SETUP #line 102 "Gmsh.l" -return tBSpline; +return tBump; YY_BREAK case 37: YY_RULE_SETUP #line 103 "Gmsh.l" -return tBounds; +return tBSpline; YY_BREAK case 38: YY_RULE_SETUP -#line 105 "Gmsh.l" -return tCeil ; +#line 104 "Gmsh.l" +return tBounds; YY_BREAK case 39: YY_RULE_SETUP #line 106 "Gmsh.l" -return tCosh ; +return tCeil ; YY_BREAK case 40: YY_RULE_SETUP #line 107 "Gmsh.l" -return tCos ; +return tCosh ; YY_BREAK case 41: YY_RULE_SETUP #line 108 "Gmsh.l" -return tCharacteristic; +return tCos ; YY_BREAK case 42: YY_RULE_SETUP #line 109 "Gmsh.l" -return tCircle; +return tCharacteristic; YY_BREAK case 43: YY_RULE_SETUP #line 110 "Gmsh.l" -return tCoherence; +return tCircle; YY_BREAK case 44: YY_RULE_SETUP #line 111 "Gmsh.l" -return tComplex; +return tCoherence; YY_BREAK case 45: YY_RULE_SETUP #line 112 "Gmsh.l" -return tColor; +return tComplex; YY_BREAK case 46: YY_RULE_SETUP #line 113 "Gmsh.l" -return tColorTable; +return tColor; YY_BREAK case 47: YY_RULE_SETUP #line 114 "Gmsh.l" -return tSpline; +return tColorTable; YY_BREAK case 48: YY_RULE_SETUP #line 115 "Gmsh.l" -return tCall; +return tSpline; YY_BREAK case 49: YY_RULE_SETUP -#line 117 "Gmsh.l" -return tDelete; +#line 116 "Gmsh.l" +return tCall; YY_BREAK case 50: YY_RULE_SETUP #line 118 "Gmsh.l" -return tDilate; +return tDelete; YY_BREAK case 51: YY_RULE_SETUP #line 119 "Gmsh.l" -return tDuplicata; +return tDilate; YY_BREAK case 52: YY_RULE_SETUP #line 120 "Gmsh.l" -return tDraw; +return tDuplicata; YY_BREAK case 53: YY_RULE_SETUP -#line 122 "Gmsh.l" -return tExp ; +#line 121 "Gmsh.l" +return tDraw; YY_BREAK case 54: YY_RULE_SETUP #line 123 "Gmsh.l" -return tEllipsis; +return tExp ; YY_BREAK case 55: YY_RULE_SETUP #line 124 "Gmsh.l" -return tExtrude; +return tEllipsis; YY_BREAK case 56: YY_RULE_SETUP #line 125 "Gmsh.l" -return tElliptic; +return tExtrude; YY_BREAK case 57: YY_RULE_SETUP #line 126 "Gmsh.l" -return tELLIPSE; +return tElliptic; YY_BREAK case 58: YY_RULE_SETUP #line 127 "Gmsh.l" -return tEndFor; +return tELLIPSE; YY_BREAK case 59: YY_RULE_SETUP #line 128 "Gmsh.l" -return tEndIf; +return tEndFor; YY_BREAK case 60: YY_RULE_SETUP #line 129 "Gmsh.l" -return tExit; +return tEndIf; YY_BREAK case 61: YY_RULE_SETUP -#line 131 "Gmsh.l" -return tFabs ; +#line 130 "Gmsh.l" +return tExit; YY_BREAK case 62: YY_RULE_SETUP #line 132 "Gmsh.l" -return tFloor ; +return tFabs ; YY_BREAK case 63: YY_RULE_SETUP #line 133 "Gmsh.l" -return tFmod ; +return tFloor ; YY_BREAK case 64: YY_RULE_SETUP #line 134 "Gmsh.l" -return tFor; +return tFmod ; YY_BREAK case 65: YY_RULE_SETUP #line 135 "Gmsh.l" -return tFunction; +return tFor; YY_BREAK case 66: YY_RULE_SETUP -#line 137 "Gmsh.l" -return tHypot ; +#line 136 "Gmsh.l" +return tFunction; YY_BREAK case 67: YY_RULE_SETUP -#line 139 "Gmsh.l" -return tIn; +#line 138 "Gmsh.l" +return tHypot ; YY_BREAK case 68: YY_RULE_SETUP #line 140 "Gmsh.l" -return tIf; +return tIn; YY_BREAK case 69: YY_RULE_SETUP #line 141 "Gmsh.l" -return tIntersect; +return tIf; YY_BREAK case 70: YY_RULE_SETUP -#line 143 "Gmsh.l" -return tKnots; +#line 142 "Gmsh.l" +return tIntersect; YY_BREAK case 71: YY_RULE_SETUP -#line 145 "Gmsh.l" -return tLength; +#line 144 "Gmsh.l" +return tKnots; YY_BREAK case 72: YY_RULE_SETUP #line 146 "Gmsh.l" -return tLine; +return tLength; YY_BREAK case 73: YY_RULE_SETUP #line 147 "Gmsh.l" -return tLoop; +return tLine; YY_BREAK case 74: YY_RULE_SETUP #line 148 "Gmsh.l" -return tLog ; +return tLoop; YY_BREAK case 75: YY_RULE_SETUP #line 149 "Gmsh.l" -return tLog10 ; +return tLog ; YY_BREAK case 76: YY_RULE_SETUP #line 150 "Gmsh.l" -return tLayers; +return tLog10 ; YY_BREAK case 77: YY_RULE_SETUP -#line 152 "Gmsh.l" -return tModulo ; +#line 151 "Gmsh.l" +return tLayers; YY_BREAK case 78: YY_RULE_SETUP #line 153 "Gmsh.l" -return tMesh; +return tModulo ; YY_BREAK case 79: YY_RULE_SETUP #line 154 "Gmsh.l" -return tMPI_Rank; +return tMesh; YY_BREAK case 80: YY_RULE_SETUP #line 155 "Gmsh.l" -return tMPI_Size; +return tMPI_Rank; YY_BREAK case 81: YY_RULE_SETUP -#line 157 "Gmsh.l" -return tNurbs; +#line 156 "Gmsh.l" +return tMPI_Size; YY_BREAK case 82: YY_RULE_SETUP -#line 159 "Gmsh.l" -return tOrder; +#line 158 "Gmsh.l" +return tNurbs; YY_BREAK case 83: YY_RULE_SETUP -#line 161 "Gmsh.l" -return tPhysical; +#line 160 "Gmsh.l" +return tOrder; YY_BREAK case 84: YY_RULE_SETUP #line 162 "Gmsh.l" -return tPi; +return tPhysical; YY_BREAK case 85: YY_RULE_SETUP #line 163 "Gmsh.l" -return tPlane; +return tPi; YY_BREAK case 86: YY_RULE_SETUP #line 164 "Gmsh.l" -return tPoint; +return tPlane; YY_BREAK case 87: YY_RULE_SETUP #line 165 "Gmsh.l" -return tProgression; +return tPoint; YY_BREAK case 88: YY_RULE_SETUP @@ -1718,480 +1721,485 @@ return tProgression; case 89: YY_RULE_SETUP #line 167 "Gmsh.l" -return tParametric; +return tProgression; YY_BREAK case 90: YY_RULE_SETUP #line 168 "Gmsh.l" -return tPrintf; +return tParametric; YY_BREAK case 91: YY_RULE_SETUP #line 169 "Gmsh.l" -return tPlugin; +return tPrintf; YY_BREAK case 92: YY_RULE_SETUP -#line 171 "Gmsh.l" -return tRecombine; +#line 170 "Gmsh.l" +return tPlugin; YY_BREAK case 93: YY_RULE_SETUP #line 172 "Gmsh.l" -return tRotate; +return tRecombine; YY_BREAK case 94: YY_RULE_SETUP #line 173 "Gmsh.l" -return tRuled; +return tRotate; YY_BREAK case 95: YY_RULE_SETUP #line 174 "Gmsh.l" -return tRand; +return tRuled; YY_BREAK case 96: YY_RULE_SETUP #line 175 "Gmsh.l" -return tReturn; +return tRand; YY_BREAK case 97: YY_RULE_SETUP -#line 177 "Gmsh.l" -return tSqrt ; +#line 176 "Gmsh.l" +return tReturn; YY_BREAK case 98: YY_RULE_SETUP #line 178 "Gmsh.l" -return tSin ; +return tSqrt ; YY_BREAK case 99: YY_RULE_SETUP #line 179 "Gmsh.l" -return tSinh ; +return tSin ; YY_BREAK case 100: YY_RULE_SETUP #line 180 "Gmsh.l" -return tSpline; +return tSinh ; YY_BREAK case 101: YY_RULE_SETUP #line 181 "Gmsh.l" -return tSurface; +return tSpline; YY_BREAK case 102: YY_RULE_SETUP #line 182 "Gmsh.l" -return tSymmetry; +return tSurface; YY_BREAK case 103: YY_RULE_SETUP #line 183 "Gmsh.l" -return tSprintf ; +return tSymmetry; YY_BREAK case 104: YY_RULE_SETUP #line 184 "Gmsh.l" -return tStrCat ; +return tSprintf ; YY_BREAK case 105: YY_RULE_SETUP #line 185 "Gmsh.l" -return tStrPrefix ; +return tStrCat ; YY_BREAK case 106: YY_RULE_SETUP -#line 187 "Gmsh.l" -return tTransfinite; +#line 186 "Gmsh.l" +return tStrPrefix ; YY_BREAK case 107: YY_RULE_SETUP #line 188 "Gmsh.l" -return tTranslate; +return tTransfinite; YY_BREAK case 108: YY_RULE_SETUP #line 189 "Gmsh.l" -return tTanh ; +return tTranslate; YY_BREAK case 109: YY_RULE_SETUP #line 190 "Gmsh.l" -return tTan; +return tTanh ; YY_BREAK case 110: YY_RULE_SETUP #line 191 "Gmsh.l" -return tTrimmed; +return tTan; YY_BREAK case 111: YY_RULE_SETUP -#line 193 "Gmsh.l" -return tUsing; +#line 192 "Gmsh.l" +return tTrimmed; YY_BREAK case 112: YY_RULE_SETUP -#line 195 "Gmsh.l" -return tVolume; +#line 194 "Gmsh.l" +return tUsing; YY_BREAK case 113: YY_RULE_SETUP -#line 197 "Gmsh.l" -return tWith; +#line 196 "Gmsh.l" +return tVolume; YY_BREAK case 114: YY_RULE_SETUP -#line 199 "Gmsh.l" -return tScalarTetrahedron; +#line 198 "Gmsh.l" +return tWith; YY_BREAK case 115: YY_RULE_SETUP #line 200 "Gmsh.l" -return tVectorTetrahedron; +return tScalarTetrahedron; YY_BREAK case 116: YY_RULE_SETUP #line 201 "Gmsh.l" -return tTensorTetrahedron; +return tVectorTetrahedron; YY_BREAK case 117: YY_RULE_SETUP #line 202 "Gmsh.l" -return tScalarTriangle; +return tTensorTetrahedron; YY_BREAK case 118: YY_RULE_SETUP #line 203 "Gmsh.l" -return tVectorTriangle; +return tScalarTriangle; YY_BREAK case 119: YY_RULE_SETUP #line 204 "Gmsh.l" -return tTensorTriangle; +return tVectorTriangle; YY_BREAK case 120: YY_RULE_SETUP #line 205 "Gmsh.l" -return tScalarLine; +return tTensorTriangle; YY_BREAK case 121: YY_RULE_SETUP #line 206 "Gmsh.l" -return tVectorLine; +return tScalarLine; YY_BREAK case 122: YY_RULE_SETUP #line 207 "Gmsh.l" -return tTensorLine; +return tVectorLine; YY_BREAK case 123: YY_RULE_SETUP #line 208 "Gmsh.l" -return tScalarPoint; +return tTensorLine; YY_BREAK case 124: YY_RULE_SETUP #line 209 "Gmsh.l" -return tVectorPoint; +return tScalarPoint; YY_BREAK case 125: YY_RULE_SETUP #line 210 "Gmsh.l" -return tTensorPoint; +return tVectorPoint; YY_BREAK case 126: YY_RULE_SETUP -#line 213 "Gmsh.l" -return tCARTESIAN_POINT; +#line 211 "Gmsh.l" +return tTensorPoint; YY_BREAK case 127: YY_RULE_SETUP #line 214 "Gmsh.l" -return tB_SPLINE_SURFACE_WITH_KNOTS; +return tCARTESIAN_POINT; YY_BREAK case 128: YY_RULE_SETUP #line 215 "Gmsh.l" -return tB_SPLINE_CURVE_WITH_KNOTS; +return tB_SPLINE_SURFACE_WITH_KNOTS; YY_BREAK case 129: YY_RULE_SETUP #line 216 "Gmsh.l" -return tUNSPECIFIED; +return tB_SPLINE_CURVE_WITH_KNOTS; YY_BREAK case 130: YY_RULE_SETUP #line 217 "Gmsh.l" -return tCONTINUOUS; +return tUNSPECIFIED; YY_BREAK case 131: YY_RULE_SETUP #line 218 "Gmsh.l" -return tFALSE; +return tCONTINUOUS; YY_BREAK case 132: YY_RULE_SETUP #line 219 "Gmsh.l" -return tTRUE; +return tFALSE; YY_BREAK case 133: YY_RULE_SETUP #line 220 "Gmsh.l" -return tU; +return tTRUE; YY_BREAK case 134: YY_RULE_SETUP #line 221 "Gmsh.l" -return tV; +return tU; YY_BREAK case 135: YY_RULE_SETUP #line 222 "Gmsh.l" -return tORIENTED_EDGE; +return tV; YY_BREAK case 136: YY_RULE_SETUP #line 223 "Gmsh.l" -return tEDGE_CURVE; +return tORIENTED_EDGE; YY_BREAK case 137: YY_RULE_SETUP #line 224 "Gmsh.l" -return tEDGE_LOOP; +return tEDGE_CURVE; YY_BREAK case 138: YY_RULE_SETUP #line 225 "Gmsh.l" -return tVERTEX_POINT; +return tEDGE_LOOP; YY_BREAK case 139: YY_RULE_SETUP #line 226 "Gmsh.l" -return tFACE_OUTER_BOUND; +return tVERTEX_POINT; YY_BREAK case 140: YY_RULE_SETUP #line 227 "Gmsh.l" -return tFACE_BOUND; +return tFACE_OUTER_BOUND; YY_BREAK case 141: YY_RULE_SETUP #line 228 "Gmsh.l" -return tADVANCED_FACE; +return tFACE_BOUND; YY_BREAK case 142: YY_RULE_SETUP #line 229 "Gmsh.l" -return tLine; +return tADVANCED_FACE; YY_BREAK case 143: YY_RULE_SETUP #line 230 "Gmsh.l" -return tVECTOR; +return tLine; YY_BREAK case 144: YY_RULE_SETUP #line 231 "Gmsh.l" -return tDIRECTION; +return tVECTOR; YY_BREAK case 145: YY_RULE_SETUP #line 232 "Gmsh.l" -return tAXIS2_PLACEMENT_3D; +return tDIRECTION; YY_BREAK case 146: YY_RULE_SETUP #line 233 "Gmsh.l" -return tPLANE; +return tAXIS2_PLACEMENT_3D; YY_BREAK case 147: YY_RULE_SETUP #line 234 "Gmsh.l" -return tHEADER; +return tPLANE; YY_BREAK case 148: YY_RULE_SETUP #line 235 "Gmsh.l" -return tDATA; +return tHEADER; YY_BREAK case 149: YY_RULE_SETUP #line 236 "Gmsh.l" -return tFILE_SCHEMA; +return tDATA; YY_BREAK case 150: YY_RULE_SETUP #line 237 "Gmsh.l" -return tFILE_NAME; +return tFILE_SCHEMA; YY_BREAK case 151: YY_RULE_SETUP #line 238 "Gmsh.l" -return tFILE_DESCRIPTION; +return tFILE_NAME; YY_BREAK case 152: YY_RULE_SETUP #line 239 "Gmsh.l" -return tISO; +return tFILE_DESCRIPTION; YY_BREAK case 153: YY_RULE_SETUP #line 240 "Gmsh.l" -return tENDISO; +return tISO; YY_BREAK case 154: YY_RULE_SETUP #line 241 "Gmsh.l" -return tENDSEC; +return tENDISO; YY_BREAK case 155: YY_RULE_SETUP #line 242 "Gmsh.l" -return tCLOSED_SHELL; +return tENDSEC; YY_BREAK case 156: YY_RULE_SETUP #line 243 "Gmsh.l" -return tADVANCED_BREP_SHAPE_REPRESENTATION; +return tCLOSED_SHELL; YY_BREAK case 157: YY_RULE_SETUP #line 244 "Gmsh.l" -return tMANIFOLD_SOLID_BREP; +return tADVANCED_BREP_SHAPE_REPRESENTATION; YY_BREAK case 158: YY_RULE_SETUP #line 245 "Gmsh.l" -return tCYLINDRICAL_SURFACE; +return tMANIFOLD_SOLID_BREP; YY_BREAK case 159: YY_RULE_SETUP #line 246 "Gmsh.l" -return tCONICAL_SURFACE; +return tCYLINDRICAL_SURFACE; YY_BREAK case 160: YY_RULE_SETUP #line 247 "Gmsh.l" -return tTOROIDAL_SURFACE; +return tCONICAL_SURFACE; YY_BREAK case 161: YY_RULE_SETUP #line 248 "Gmsh.l" -return tCIRCLE; +return tTOROIDAL_SURFACE; YY_BREAK case 162: YY_RULE_SETUP #line 249 "Gmsh.l" -return tTRIMMED_CURVE; +return tCIRCLE; YY_BREAK case 163: YY_RULE_SETUP #line 250 "Gmsh.l" -return tGEOMETRIC_SET; +return tTRIMMED_CURVE; YY_BREAK case 164: YY_RULE_SETUP #line 251 "Gmsh.l" -return tCOMPOSITE_CURVE_SEGMENT; +return tGEOMETRIC_SET; YY_BREAK case 165: YY_RULE_SETUP #line 252 "Gmsh.l" -return tCOMPOSITE_CURVE; +return tCOMPOSITE_CURVE_SEGMENT; YY_BREAK case 166: YY_RULE_SETUP #line 253 "Gmsh.l" -return tPRODUCT_DEFINITION; +return tCOMPOSITE_CURVE; YY_BREAK case 167: YY_RULE_SETUP #line 254 "Gmsh.l" -return tPRODUCT_DEFINITION_SHAPE; +return tPRODUCT_DEFINITION; YY_BREAK case 168: YY_RULE_SETUP #line 255 "Gmsh.l" -return tSHAPE_DEFINITION_REPRESENTATION; +return tPRODUCT_DEFINITION_SHAPE; YY_BREAK case 169: YY_RULE_SETUP -#line 257 "Gmsh.l" -return tVertex; +#line 256 "Gmsh.l" +return tSHAPE_DEFINITION_REPRESENTATION; YY_BREAK case 170: YY_RULE_SETUP #line 258 "Gmsh.l" -return tFacet; +return tVertex; YY_BREAK case 171: YY_RULE_SETUP #line 259 "Gmsh.l" -return tNormal; +return tFacet; YY_BREAK case 172: YY_RULE_SETUP #line 260 "Gmsh.l" -return tOuter; +return tNormal; YY_BREAK case 173: YY_RULE_SETUP #line 261 "Gmsh.l" -return tLoopSTL; +return tOuter; YY_BREAK case 174: YY_RULE_SETUP #line 262 "Gmsh.l" -return tEndLoop; +return tLoopSTL; YY_BREAK case 175: YY_RULE_SETUP #line 263 "Gmsh.l" -return tEndFacet; +return tEndLoop; YY_BREAK case 176: YY_RULE_SETUP #line 264 "Gmsh.l" -{skipline();return tEndSolid;} +return tEndFacet; YY_BREAK case 177: YY_RULE_SETUP #line 265 "Gmsh.l" -{skipline();return tSolid;} +{skipline();return tEndSolid;} YY_BREAK case 178: YY_RULE_SETUP -#line 267 "Gmsh.l" -{yylval.d = (double)atoi((char*)(yytext+1)); return tDOUBLE;} +#line 266 "Gmsh.l" +{skipline();return tSolid;} YY_BREAK case 179: -#line 270 "Gmsh.l" +YY_RULE_SETUP +#line 268 "Gmsh.l" +{yylval.d = (double)atoi((char*)(yytext+1)); return tDOUBLE;} + YY_BREAK case 180: #line 271 "Gmsh.l" case 181: #line 272 "Gmsh.l" case 182: +#line 273 "Gmsh.l" +case 183: YY_RULE_SETUP -#line 272 "Gmsh.l" +#line 273 "Gmsh.l" {yylval.d = atof((char *)yytext); return tDOUBLE;} YY_BREAK -case 183: +case 184: YY_RULE_SETUP -#line 274 "Gmsh.l" +#line 275 "Gmsh.l" {yylval.c = strsave((char*)yytext); return tSTRING;} YY_BREAK -case 184: +case 185: YY_RULE_SETUP -#line 276 "Gmsh.l" +#line 277 "Gmsh.l" return yytext[0]; YY_BREAK -case 185: +case 186: YY_RULE_SETUP -#line 278 "Gmsh.l" +#line 279 "Gmsh.l" ECHO; YY_BREAK -#line 2195 "Gmsh.yy.cpp" +#line 2203 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2483,7 +2491,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1009 ) + if ( yy_current_state >= 1014 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2518,11 +2526,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1009 ) + if ( yy_current_state >= 1014 ) 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 == 1008); + yy_is_jam = (yy_current_state == 1013); return yy_is_jam ? 0 : yy_current_state; } @@ -3072,7 +3080,7 @@ int main() return 0; } #endif -#line 278 "Gmsh.l" +#line 279 "Gmsh.l" #undef yywrap