diff --git a/Numeric/Numeric.h b/Numeric/Numeric.h index 0d19f12d38798a7251d4ca76669738147741a2d9..341abd47284f80d9cf4308aa1dcc1a270f104634 100644 --- a/Numeric/Numeric.h +++ b/Numeric/Numeric.h @@ -15,8 +15,6 @@ void invert_singular_matrix3x3(double MM[3][3], double II[3][3]); // the GSL double brent(double ax, double bx, double cx, double (*f)(double), double tol, double *xmin); -void mnbrak(double *ax, double *bx, double *cx, double *fa, double *fb, - double *fc, double (*func)(double)); void newt(double x[], int n, int *check, void (*vecfunc)(int, double [], double [])); void minimize_2 (double (*f) (double, double, void *data), diff --git a/Numeric/gsl_brent.cpp b/Numeric/gsl_brent.cpp index 3cabe77250589a3695d7db8ed5c3cc5f4c80f6ec..f4dcf6693b40021d91ea7ee55f5188e0c7b93227 100644 --- a/Numeric/gsl_brent.cpp +++ b/Numeric/gsl_brent.cpp @@ -129,87 +129,4 @@ double brent(double ax, double bx, double cx, return fn1(b, NULL); } - -// Find an initial bracketting of the minimum of func. Given 2 initial -// points ax and bx, mnbrak checks in which direction func decreases, -// and takes some steps in that direction, until the function -// increases--at cx. mnbrak returns ax and cx (possibly switched), -// bracketting a minimum. - -#define MYGOLD_ 1.618034 -#define MYLIMIT_ 100.0 -#define MYTINY_ 1.0e-20 -#define SIGN(a,b)((b) >= 0.0 ? fabs(a) : -fabs(a)) - -void mnbrak(double *ax, double *bx, double *cx, - double *fa_dummy, double *fb_dummy, double *fc_dummy, - double (*func) (double)) -{ - double ulim, u, r, q; - volatile double f_a, f_b, f_c, f_u; - - f_a = (*func) (*ax); - f_b = (*func) (*bx); - if(f_b > f_a) { - double tmp; - tmp = *ax; - *ax = *bx; - *bx = tmp; - tmp = f_b; - f_b = f_a; - f_a = tmp; - } - - *cx = *bx + MYGOLD_ * (*bx - *ax); - f_c = (*func) (*cx); - - while(f_b > f_c) { - r = (*bx - *ax) * (f_b - f_c); - q = (*bx - *cx) * (f_b - f_a); - u = (*bx) - ((*bx - *cx) * q - (*bx - *ax) * r) / - (2.0 * SIGN(std::max(fabs(q - r), MYTINY_), q - r)); - ulim = *bx + MYLIMIT_ * (*cx - *bx); - - if((*bx - u) * (u - *cx) > 0.0) { - f_u = (*func) (u); - if(f_u < f_c) { - *ax = *bx; - *bx = u; - return; - } - else if(f_u > f_b) { - *cx = u; - return; - } - u = *cx + MYGOLD_ * (*cx - *bx); - f_u = (*func) (u); - } - else if((*cx - u) * (u - ulim) > 0.0) { - f_u = (*func) (u); - if(f_u < f_c) { - *bx = *cx; - *cx = u; - u = *cx + MYGOLD_ * (*cx - *bx); - f_b = f_c; - f_c = f_u; - f_u = (*func) (u); - } - } - else if((u - ulim) * (ulim - *cx) >= 0.0) { - u = ulim; - f_u = (*func) (u); - } - else { - u = *cx + MYGOLD_ * (*cx - *bx); - f_u = (*func) (u); - } - *ax = *bx; - *bx = *cx; - *cx = u; - f_a = f_b; - f_b = f_c; - f_c = f_u; - } -} - #endif diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 9a22a17e6bdcf22d8a18336d2f8483a1cec83e70..6ca79f84cb0e7b7e13ee706e1bc7a69c7cc9fce0 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -368,6 +368,7 @@ char gmsh_yyname[256] = ""; int gmsh_yyerrorstate = 0; int gmsh_yyviewindex = 0; std::map<std::string, std::vector<double> > gmsh_yysymbols; +std::map<std::string, std::string > gmsh_yystringsymbols; // Static parser variables (accessible only in this file) #if !defined(HAVE_NO_POST) @@ -376,7 +377,7 @@ static PViewDataList *ViewData; static ExtrudeParams extr; static gmshSurface *myGmshSurface = 0; static List_T *ViewValueList = 0; -static double ViewCoord[105]; +static double ViewCoord[105]; // KH: support up to order 4 mappings static int *ViewNumList = 0, ViewCoordIdx = 0; #define MAX_RECUR_LOOPS 100 static int ImbricatedLoop = 0; @@ -412,7 +413,7 @@ void FixRelativePath(const char *in, char *out); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 70 "Gmsh.y" +#line 71 "Gmsh.y" { char *c; int i; @@ -423,7 +424,7 @@ typedef union YYSTYPE List_T *l; } /* Line 193 of yacc.c. */ -#line 427 "Gmsh.tab.cpp" +#line 428 "Gmsh.tab.cpp" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -436,7 +437,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 440 "Gmsh.tab.cpp" +#line 441 "Gmsh.tab.cpp" #ifdef short # undef short @@ -651,7 +652,7 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 6253 +#define YYLAST 6283 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 143 @@ -660,7 +661,7 @@ union yyalloc /* YYNRULES -- Number of rules. */ #define YYNRULES 350 /* YYNRULES -- Number of states. */ -#define YYNSTATES 1241 +#define YYNSTATES 1238 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -751,8 +752,8 @@ static const yytype_uint16 yyprhs[] = 1883, 1891, 1893, 1897, 1899, 1901, 1904, 1908, 1913, 1919, 1922, 1926, 1930, 1936, 1941, 1943, 1945, 1949, 1956, 1958, 1960, 1964, 1968, 1978, 1986, 1988, 1994, 1998, 2005, 2007, - 2011, 2013, 2015, 2017, 2019, 2026, 2031, 2036, 2041, 2048, - 2055 + 2011, 2013, 2015, 2019, 2026, 2028, 2030, 2037, 2042, 2047, + 2052 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -959,53 +960,52 @@ static const yytype_int16 yyrhs[] = 139, 198, 139, 198, 141, -1, 4, -1, 4, 137, 92, 137, 4, -1, 140, 208, 141, -1, 4, 135, 198, 136, 137, 93, -1, 206, -1, 208, 139, 206, - -1, 210, -1, 4, -1, 5, -1, 42, -1, 37, - 133, 209, 139, 209, 134, -1, 38, 133, 209, 134, - -1, 39, 133, 209, 134, -1, 36, 133, 209, 134, - -1, 36, 133, 209, 139, 205, 134, -1, 36, 133, - 4, 137, 4, 134, -1, 36, 133, 4, 135, 198, - 136, 137, 4, 134, -1 + -1, 210, -1, 4, -1, 4, 137, 4, -1, 4, + 135, 198, 136, 137, 4, -1, 5, -1, 42, -1, + 37, 133, 209, 139, 209, 134, -1, 38, 133, 209, + 134, -1, 39, 133, 209, 134, -1, 36, 133, 209, + 134, -1, 36, 133, 209, 139, 205, 134, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 136, 136, 137, 142, 144, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 165, 169, 176, 181, 196, 209, 238, 252, 263, 278, - 283, 284, 285, 286, 287, 291, 293, 298, 300, 306, - 452, 305, 470, 477, 488, 487, 506, 513, 524, 523, - 541, 556, 576, 575, 589, 590, 591, 592, 593, 597, - 598, 605, 627, 654, 694, 703, 711, 719, 731, 738, - 743, 751, 769, 787, 796, 808, 813, 821, 841, 864, - 871, 877, 897, 918, 944, 956, 973, 977, 987, 990, - 1008, 1030, 1046, 1068, 1086, 1104, 1122, 1148, 1166, 1192, - 1212, 1230, 1248, 1274, 1291, 1310, 1328, 1367, 1373, 1379, - 1386, 1411, 1436, 1452, 1472, 1490, 1507, 1528, 1533, 1538, - 1543, 1548, 1559, 1565, 1574, 1575, 1580, 1583, 1587, 1610, - 1633, 1656, 1684, 1693, 1697, 1712, 1733, 1750, 1764, 1770, - 1776, 1785, 1799, 1847, 1865, 1880, 1899, 1911, 1935, 1939, - 1944, 1949, 1961, 1978, 1995, 2014, 2033, 2061, 2069, 2075, - 2082, 2086, 2095, 2103, 2111, 2120, 2119, 2132, 2131, 2144, - 2143, 2156, 2155, 2168, 2175, 2182, 2189, 2196, 2203, 2210, - 2217, 2224, 2232, 2231, 2243, 2242, 2254, 2253, 2265, 2264, - 2276, 2275, 2287, 2286, 2298, 2297, 2309, 2308, 2320, 2319, - 2334, 2337, 2343, 2352, 2372, 2395, 2399, 2423, 2441, 2459, - 2477, 2506, 2541, 2546, 2573, 2587, 2600, 2617, 2623, 2629, - 2632, 2641, 2651, 2652, 2653, 2654, 2655, 2656, 2657, 2658, - 2659, 2666, 2667, 2668, 2669, 2670, 2671, 2672, 2673, 2674, - 2675, 2676, 2677, 2678, 2679, 2680, 2681, 2682, 2683, 2684, - 2685, 2686, 2687, 2688, 2689, 2690, 2691, 2692, 2693, 2694, - 2695, 2696, 2697, 2699, 2700, 2701, 2702, 2703, 2704, 2705, - 2706, 2707, 2708, 2709, 2710, 2711, 2712, 2713, 2714, 2715, - 2716, 2717, 2718, 2719, 2728, 2729, 2730, 2731, 2732, 2733, - 2734, 2738, 2751, 2763, 2778, 2788, 2798, 2816, 2821, 2826, - 2836, 2846, 2854, 2858, 2862, 2866, 2870, 2877, 2881, 2885, - 2889, 2896, 2901, 2908, 2913, 2917, 2922, 2926, 2934, 2945, - 2953, 2961, 2967, 2978, 2998, 3008, 3018, 3028, 3048, 3053, - 3057, 3061, 3073, 3077, 3089, 3096, 3106, 3110, 3125, 3130, - 3137, 3141, 3148, 3152, 3160, 3168, 3182, 3196, 3200, 3219, - 3227 + 0, 137, 137, 138, 143, 145, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 166, 170, 177, 182, 197, 210, 239, 253, 264, 279, + 284, 285, 286, 287, 288, 292, 294, 299, 301, 307, + 453, 306, 471, 478, 489, 488, 507, 514, 525, 524, + 542, 557, 577, 576, 590, 591, 592, 593, 594, 598, + 599, 606, 628, 655, 695, 704, 712, 720, 732, 741, + 746, 754, 772, 790, 799, 811, 816, 824, 844, 867, + 874, 880, 900, 921, 947, 959, 976, 980, 990, 993, + 1011, 1033, 1049, 1071, 1089, 1107, 1125, 1151, 1169, 1195, + 1215, 1233, 1251, 1277, 1294, 1313, 1331, 1370, 1376, 1382, + 1389, 1414, 1439, 1455, 1475, 1493, 1510, 1531, 1536, 1541, + 1546, 1551, 1562, 1568, 1577, 1578, 1583, 1586, 1590, 1613, + 1636, 1659, 1687, 1696, 1700, 1715, 1736, 1753, 1767, 1773, + 1779, 1788, 1802, 1850, 1868, 1883, 1902, 1914, 1938, 1942, + 1947, 1952, 1964, 1981, 1998, 2017, 2036, 2064, 2072, 2078, + 2085, 2089, 2098, 2106, 2114, 2123, 2122, 2135, 2134, 2147, + 2146, 2159, 2158, 2171, 2178, 2185, 2192, 2199, 2206, 2213, + 2220, 2227, 2235, 2234, 2246, 2245, 2257, 2256, 2268, 2267, + 2279, 2278, 2290, 2289, 2301, 2300, 2312, 2311, 2323, 2322, + 2337, 2340, 2346, 2355, 2375, 2398, 2402, 2426, 2444, 2462, + 2480, 2509, 2544, 2549, 2576, 2590, 2603, 2620, 2626, 2632, + 2635, 2644, 2654, 2655, 2656, 2657, 2658, 2659, 2660, 2661, + 2662, 2669, 2670, 2671, 2672, 2673, 2674, 2675, 2676, 2677, + 2678, 2679, 2680, 2681, 2682, 2683, 2684, 2685, 2686, 2687, + 2688, 2689, 2690, 2691, 2692, 2693, 2694, 2695, 2696, 2697, + 2698, 2699, 2700, 2702, 2703, 2704, 2705, 2706, 2707, 2708, + 2709, 2710, 2711, 2712, 2713, 2714, 2715, 2716, 2717, 2718, + 2719, 2720, 2721, 2722, 2731, 2732, 2733, 2734, 2735, 2736, + 2737, 2741, 2754, 2766, 2781, 2791, 2801, 2819, 2824, 2829, + 2839, 2849, 2857, 2861, 2865, 2869, 2873, 2880, 2884, 2888, + 2892, 2899, 2904, 2911, 2916, 2920, 2925, 2929, 2937, 2948, + 2956, 2964, 2970, 2981, 3001, 3011, 3021, 3031, 3051, 3056, + 3060, 3064, 3076, 3080, 3092, 3099, 3109, 3113, 3128, 3133, + 3140, 3144, 3157, 3165, 3176, 3180, 3188, 3196, 3210, 3224, + 3228 }; #endif @@ -1113,7 +1113,7 @@ static const yytype_uint8 yyr1[] = 201, 202, 202, 203, 203, 203, 203, 203, 203, 204, 204, 204, 204, 204, 204, 204, 204, 204, 205, 205, 205, 205, 206, 206, 206, 206, 207, 207, 208, 208, - 209, 209, 210, 210, 210, 210, 210, 210, 210, 210, + 209, 209, 209, 209, 210, 210, 210, 210, 210, 210, 210 }; @@ -1154,8 +1154,8 @@ static const yytype_uint8 yyr2[] = 7, 1, 3, 1, 1, 2, 3, 4, 5, 2, 3, 3, 5, 4, 1, 1, 3, 6, 1, 1, 3, 3, 9, 7, 1, 5, 3, 6, 1, 3, - 1, 1, 1, 1, 6, 4, 4, 4, 6, 6, - 9 + 1, 1, 3, 6, 1, 1, 6, 4, 4, 4, + 6 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1170,10 +1170,10 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 156, 0, 161, 0, 0, 158, 0, 0, 0, 0, 5, 7, 6, 8, 9, 10, 11, 12, 13, 19, - 18, 14, 15, 16, 17, 284, 291, 342, 54, 285, + 18, 14, 15, 16, 17, 284, 291, 344, 54, 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, 0, 0, 343, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 345, 0, 0, 288, 289, 290, 58, 57, 56, 55, 0, 0, 0, 60, 59, 0, 0, 0, 0, 0, 0, 0, 222, 0, 0, 0, 0, 149, 0, 151, 0, 0, 0, @@ -1183,7 +1183,7 @@ static const yytype_uint16 yydefact[] = 0, 302, 0, 0, 0, 0, 0, 126, 0, 126, 0, 0, 0, 0, 126, 221, 0, 126, 0, 0, 0, 0, 0, 0, 334, 0, 0, 0, 0, 0, - 148, 0, 0, 157, 341, 342, 126, 0, 340, 126, + 148, 0, 0, 157, 341, 344, 126, 0, 340, 126, 0, 0, 0, 0, 0, 295, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1201,42 +1201,42 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 0, 0, 0, 171, 0, 126, 125, 0, 124, 0, 0, 0, 135, 0, 0, 0, 0, 0, 0, 0, 147, 0, 0, 0, 0, 0, 126, - 0, 0, 0, 0, 159, 0, 138, 0, 139, 0, - 0, 297, 0, 0, 68, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 159, 0, 0, 0, 138, 0, + 139, 0, 0, 297, 0, 0, 68, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 341, 0, 0, - 0, 0, 0, 0, 0, 223, 0, 0, 0, 0, - 54, 0, 0, 0, 0, 0, 61, 0, 240, 239, - 238, 237, 233, 234, 236, 235, 228, 227, 229, 230, - 231, 232, 108, 0, 0, 0, 0, 0, 0, 224, - 319, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 315, 0, 0, + 0, 0, 0, 0, 0, 0, 223, 0, 0, 0, + 0, 54, 0, 0, 0, 0, 0, 61, 0, 240, + 239, 238, 237, 233, 234, 236, 235, 228, 227, 229, + 230, 231, 232, 108, 0, 0, 0, 0, 0, 0, + 224, 319, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 315, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 86, 87, 0, 0, 0, 0, 0, 0, 0, - 306, 305, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 127, 0, 0, 165, 121, 215, 0, - 0, 136, 0, 0, 132, 0, 123, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 160, 0, 140, - 141, 0, 293, 299, 0, 39, 0, 0, 0, 52, - 0, 30, 31, 32, 33, 34, 242, 263, 243, 264, - 244, 265, 245, 266, 246, 267, 247, 268, 248, 269, - 249, 270, 250, 271, 262, 283, 251, 272, 0, 0, - 253, 274, 254, 275, 255, 276, 256, 277, 257, 278, - 258, 279, 0, 0, 0, 0, 0, 0, 0, 0, - 347, 0, 0, 345, 346, 79, 0, 0, 0, 0, - 0, 54, 0, 0, 0, 0, 0, 73, 0, 0, - 0, 0, 294, 0, 22, 20, 0, 0, 0, 0, - 326, 0, 0, 321, 229, 320, 330, 331, 0, 0, + 0, 0, 86, 87, 0, 0, 0, 0, 0, 0, + 0, 306, 305, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 127, 0, 0, 165, 121, 215, + 0, 0, 136, 0, 0, 132, 0, 123, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 160, 0, + 0, 342, 140, 141, 0, 293, 299, 0, 39, 0, + 0, 0, 52, 0, 30, 31, 32, 33, 34, 242, + 263, 243, 264, 244, 265, 245, 266, 246, 267, 247, + 268, 248, 269, 249, 270, 250, 271, 262, 283, 251, + 272, 0, 0, 253, 274, 254, 275, 255, 276, 256, + 277, 257, 278, 258, 279, 0, 0, 0, 0, 0, + 0, 349, 0, 0, 347, 348, 79, 0, 0, 0, + 0, 0, 54, 0, 0, 0, 0, 0, 73, 0, + 0, 0, 0, 294, 0, 22, 20, 0, 0, 0, + 0, 326, 0, 0, 321, 229, 320, 330, 331, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 316, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 316, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 117, 119, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 200, 0, 162, 0, 0, + 0, 0, 117, 119, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 200, 0, 162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 137, 0, 0, 0, 0, 0, 0, 296, 0, - 292, 0, 0, 0, 0, 0, 26, 0, 0, 0, + 0, 0, 137, 0, 0, 0, 0, 0, 0, 0, + 296, 0, 292, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 293, 64, 65, 0, 0, 0, 0, 0, 67, 69, 71, 0, 0, 338, 0, 77, 241, 21, 0, 0, @@ -1247,59 +1247,58 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 0, 0, 0, 0, 205, 0, 0, 172, 201, 0, 0, 214, 216, 134, 133, 0, 27, 28, 0, 0, 0, 335, 0, 0, 0, 152, 0, - 0, 144, 298, 143, 0, 0, 0, 0, 311, 0, - 252, 273, 259, 280, 260, 281, 261, 282, 0, 349, - 348, 344, 301, 0, 54, 0, 0, 0, 0, 62, - 0, 0, 0, 336, 23, 24, 0, 0, 90, 0, - 322, 0, 95, 0, 97, 0, 0, 93, 0, 0, - 110, 111, 0, 0, 94, 115, 318, 0, 0, 0, - 0, 88, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 146, 0, 0, 0, 0, 126, 0, 182, 0, - 184, 0, 186, 0, 0, 0, 0, 313, 0, 0, - 0, 0, 166, 0, 100, 101, 0, 0, 0, 0, - 80, 0, 300, 0, 35, 0, 0, 0, 0, 0, - 37, 0, 0, 0, 0, 74, 0, 0, 75, 0, - 339, 0, 0, 327, 0, 0, 0, 103, 0, 0, - 112, 0, 0, 0, 212, 105, 0, 0, 0, 0, - 0, 210, 213, 114, 91, 104, 113, 116, 0, 0, - 0, 310, 0, 309, 0, 0, 173, 0, 0, 174, - 0, 0, 175, 0, 128, 129, 130, 131, 0, 0, - 0, 0, 0, 0, 0, 0, 333, 0, 154, 153, - 0, 0, 0, 40, 0, 0, 0, 312, 0, 0, - 0, 0, 63, 70, 72, 0, 78, 0, 25, 0, - 0, 96, 98, 0, 0, 0, 0, 0, 0, 106, - 209, 208, 211, 84, 85, 126, 0, 120, 0, 0, - 0, 0, 0, 0, 202, 0, 0, 126, 0, 122, - 0, 0, 0, 0, 81, 82, 0, 36, 0, 0, - 0, 38, 53, 350, 0, 337, 0, 217, 218, 219, - 220, 109, 0, 0, 0, 0, 308, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 167, - 0, 0, 332, 155, 0, 0, 0, 0, 0, 76, - 0, 0, 0, 118, 0, 188, 0, 0, 190, 0, - 0, 192, 0, 0, 0, 203, 0, 163, 0, 126, - 102, 83, 0, 44, 0, 50, 0, 0, 0, 89, - 307, 176, 0, 0, 183, 177, 0, 0, 185, 178, - 0, 0, 187, 0, 0, 0, 169, 0, 0, 0, - 0, 0, 0, 0, 194, 0, 196, 0, 198, 204, - 206, 168, 164, 0, 41, 0, 48, 0, 0, 0, - 0, 179, 0, 0, 180, 0, 0, 181, 0, 0, - 0, 42, 0, 0, 150, 0, 0, 0, 0, 0, - 0, 0, 170, 0, 0, 0, 0, 0, 189, 0, - 191, 0, 193, 0, 43, 45, 0, 46, 0, 99, - 0, 0, 0, 0, 0, 51, 195, 197, 199, 47, - 49 + 0, 0, 144, 298, 143, 0, 0, 0, 0, 311, + 0, 252, 273, 259, 280, 260, 281, 261, 282, 350, + 346, 301, 0, 54, 0, 0, 0, 0, 62, 0, + 0, 0, 336, 23, 24, 0, 0, 90, 0, 322, + 0, 95, 0, 97, 0, 0, 93, 0, 0, 110, + 111, 0, 0, 94, 115, 318, 0, 0, 0, 0, + 88, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 146, 0, 0, 0, 0, 126, 0, 182, 0, 184, + 0, 186, 0, 0, 0, 0, 313, 0, 0, 0, + 0, 166, 0, 100, 101, 0, 0, 0, 0, 80, + 0, 343, 300, 0, 35, 0, 0, 0, 0, 0, + 37, 0, 0, 0, 74, 0, 0, 75, 0, 339, + 0, 0, 327, 0, 0, 0, 103, 0, 0, 112, + 0, 0, 0, 212, 105, 0, 0, 0, 0, 0, + 210, 213, 114, 91, 104, 113, 116, 0, 0, 0, + 310, 0, 309, 0, 0, 173, 0, 0, 174, 0, + 0, 175, 0, 128, 129, 130, 131, 0, 0, 0, + 0, 0, 0, 0, 0, 333, 0, 154, 153, 0, + 0, 0, 40, 0, 0, 0, 312, 0, 0, 0, + 63, 70, 72, 0, 78, 0, 25, 0, 0, 96, + 98, 0, 0, 0, 0, 0, 0, 106, 209, 208, + 211, 84, 85, 126, 0, 120, 0, 0, 0, 0, + 0, 0, 202, 0, 0, 126, 0, 122, 0, 0, + 0, 0, 81, 82, 0, 36, 0, 0, 0, 38, + 53, 0, 337, 0, 217, 218, 219, 220, 109, 0, + 0, 0, 0, 308, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 167, 0, 0, 332, + 155, 0, 0, 0, 0, 0, 76, 0, 0, 0, + 118, 0, 188, 0, 0, 190, 0, 0, 192, 0, + 0, 0, 203, 0, 163, 0, 126, 102, 83, 0, + 44, 0, 50, 0, 0, 0, 89, 307, 176, 0, + 0, 183, 177, 0, 0, 185, 178, 0, 0, 187, + 0, 0, 0, 169, 0, 0, 0, 0, 0, 0, + 0, 194, 0, 196, 0, 198, 204, 206, 168, 164, + 0, 41, 0, 48, 0, 0, 0, 0, 179, 0, + 0, 180, 0, 0, 181, 0, 0, 0, 42, 0, + 0, 150, 0, 0, 0, 0, 0, 0, 0, 170, + 0, 0, 0, 0, 0, 189, 0, 191, 0, 193, + 0, 43, 45, 0, 46, 0, 99, 0, 0, 0, + 0, 0, 51, 195, 197, 199, 47, 49 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 2, 3, 60, 646, 61, 62, 393, 943, 949, - 571, 731, 1076, 1200, 572, 1168, 1226, 573, 1202, 574, - 575, 735, 126, 215, 63, 510, 977, 533, 305, 360, - 361, 66, 67, 68, 69, 70, 306, 708, 1138, 1183, - 534, 997, 1000, 1003, 1152, 1156, 1160, 1192, 1195, 1198, - 704, 705, 72, 73, 74, 323, 129, 341, 171, 847, - 848, 325, 309, 196, 641, 764, 207, 208 + -1, 2, 3, 60, 647, 61, 62, 395, 943, 949, + 574, 733, 1074, 1197, 575, 1165, 1223, 576, 1199, 577, + 578, 737, 126, 215, 63, 511, 976, 534, 305, 360, + 361, 66, 67, 68, 69, 70, 306, 709, 1135, 1180, + 535, 996, 999, 1002, 1149, 1153, 1157, 1189, 1192, 1195, + 705, 706, 72, 73, 74, 323, 129, 341, 171, 848, + 849, 325, 309, 196, 642, 764, 207, 208 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing @@ -1307,143 +1306,142 @@ static const yytype_int16 yydefgoto[] = #define YYPACT_NINF -1024 static const yytype_int16 yypact[] = { - 2786, 25, 19, 2864, -1024, -1024, 2033, 22, -5, -71, - 26, 65, 50, -12, 4, -32, 63, 123, -55, 126, - 138, 118, -39, 130, 258, 288, 248, 269, 676, 226, - 244, -37, -37, 254, 504, 299, 317, 349, 20, 428, - 365, 303, 442, 447, 457, 335, 339, 372, 13, 9, - -1024, 388, -1024, 475, 399, -1024, 536, 539, 10, 17, + 2825, 24, 41, 2903, -1024, -1024, 2027, 43, 27, -60, + 15, 86, -82, -25, -22, -11, -14, 52, -45, 59, + 123, 72, -30, 107, 127, 140, 220, 144, 58, 172, + 175, 476, 476, 178, 454, 186, 289, 308, 10, 357, + 325, 247, 386, 390, 393, 276, 301, 343, 11, 38, + -1024, 365, -1024, 499, 383, -1024, 518, 523, 8, 33, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, - -1024, -1024, -1024, -1024, -1024, -1024, 21, 408, 554, -1024, - -1024, -1024, 134, 222, 271, 275, 283, 294, 393, 436, - 444, 450, 466, 503, 508, 538, 570, 609, 624, 628, - 636, 639, 640, 432, 445, 470, 485, -1024, 616, 493, - -1024, -1024, -1024, -1024, -1024, -1024, -1024, 2245, 2245, 2245, - -1024, -1024, 2245, 1671, 34, 626, 2245, 649, 1152, -1024, - 659, 672, 2245, 637, -1024, 2245, -1024, 2245, 2082, 2245, - 2245, 523, 2245, 2082, 2245, 2245, 527, 2082, 2245, 2245, - 1324, 533, 2245, 530, 566, 571, 1324, 577, 586, 598, - 631, 635, 657, 673, 803, -37, -37, -37, 2245, 2245, - -40, -1024, 46, -37, 681, 682, 685, 1901, 152, 743, - 1324, 1324, 24, 677, -1024, -1024, 707, 743, 694, 728, - 810, 2245, 2245, 2245, 734, 2245, 773, 787, 2245, 2245, - -1024, 2245, 881, -1024, -1024, -1024, -1024, 890, -1024, -1024, - 908, 781, 2245, 913, 778, -1024, -1024, 914, 2245, 2245, - 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, - 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, - 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, - 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, - 38, 615, 615, 615, 2245, 917, 532, 791, 791, 791, - 5153, 16, 2082, 4417, 302, 782, 920, 793, 1844, -1024, - -1024, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, - 2245, 2245, 2245, 2245, 2245, 2245, -1024, -1024, 2167, -74, - 3663, 5174, 625, 790, 2082, -1024, -1024, 2556, -1024, 217, - 5195, 5216, 2245, 5237, 348, 5258, 5279, 2245, 371, 5300, - 5321, 1470, 1188, 2575, 924, -1024, 2245, 5342, 2245, 2245, - 2245, 925, 2245, 2245, 2245, 2208, 2208, 2208, 2208, 799, - -73, -1024, -1024, 3689, 3715, -37, -37, 743, 743, 182, - 2245, 2245, 2245, 1901, 1901, 2245, 2930, 188, -1024, -1024, - 794, 2930, 91, 927, 930, -1024, 2245, 2245, 664, 2082, - 797, 2245, 2245, -1024, 5363, 5384, 5405, 847, 3741, -1024, - 800, 2594, 5426, 4440, -1024, 689, -1024, 935, -1024, 2245, - 4463, 82, 2245, 8, -1024, 5447, 4486, 5468, 4509, 5489, - 4532, 5510, 4555, 5531, 4578, 5552, 4601, 5573, 4624, 5594, - 4647, 5615, 4670, 5636, 4693, 5657, 4716, 3767, 3793, 5678, - 4739, 5699, 4762, 5720, 4785, 5741, 4808, 5762, 4831, 5783, - 4854, 3819, 3845, 3871, 3897, 3923, 3949, 563, -23, 804, - 811, 812, 2186, 813, 2245, -1024, 1324, 1324, 650, 289, - 554, 2245, 943, 946, 14, 815, -1024, 2613, 733, 880, - 660, 660, 711, 711, 711, 711, 405, 405, 791, 791, - 791, 791, -1024, 35, 2082, 2245, 947, 1866, 2245, 791, - -1024, 2245, 2082, 2082, 858, 949, 950, 5804, 952, 865, - 954, 955, 5825, 868, 957, 958, 2082, -1024, 654, 1602, - 2245, 5846, 960, 2687, 5867, 5888, 2245, 2965, 2993, 5909, - 834, 2293, -1024, 836, 837, 838, 839, -37, 2245, 2245, - -1024, -1024, 832, 833, 2245, 3975, 4001, 4027, 3637, 60, - -31, -51, 170, -1024, 311, -37, 1366, -1024, -1024, 2245, - 2245, -1024, 4877, 4900, -1024, 655, -1024, 4923, 4946, 968, - 970, 986, 859, 2245, 1508, 2245, 2245, -1024, 30, -1024, - -1024, 4969, 68, -1024, 3021, -1024, 876, 877, 874, -1024, - 1009, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, + -1024, -1024, -1024, -1024, -1024, -1024, 23, 388, 317, -1024, + -1024, -1024, -37, 173, 207, 225, 246, 275, 286, 353, + 366, 398, 422, 449, 471, 495, 544, 548, 551, 581, + 599, 600, 605, 415, 423, 433, 442, -1024, 574, 465, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, 2239, 2239, 2239, + -1024, -1024, 2239, 1665, 7, 604, 2239, 597, 337, -1024, + 612, 615, 2239, 640, -1024, 2239, -1024, 2239, 2076, 2239, + 2239, 513, 2239, 2076, 2239, 2239, 554, 2076, 2239, 2239, + 1332, 558, 2239, 542, 580, 590, 1332, 591, 603, 595, + 606, 609, 626, 630, 763, 476, 476, 476, 2239, 2239, + 174, -1024, 245, 476, 631, 656, 660, 1895, 384, 567, + 1332, 1332, 14, 645, -1024, -1024, 672, 567, 680, 694, + 764, 2239, 2239, 2239, 651, 2239, 698, 748, 2239, 2239, + -1024, 2239, 787, -1024, 458, -1024, -1024, 840, -1024, -1024, + 851, 732, 2239, 860, 733, -1024, -1024, 866, 2239, 2239, + 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, + 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, + 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, + 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, + 508, 508, 508, 508, 2239, 876, 300, 753, 753, 753, + 5164, 48, 2076, 4428, 294, 752, 885, 758, 1041, -1024, + -1024, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, 2239, + 2239, 2239, 2239, 2239, 2239, 2239, -1024, -1024, 1838, -103, + 3674, 5185, 648, 754, 2076, -1024, -1024, 2576, -1024, 497, + 5206, 5227, 2239, 5248, 535, 5269, 5290, 2239, 619, 5311, + 5332, 1464, 1187, 2607, 888, -1024, 2239, 5353, 2239, 2239, + 2239, 891, 2239, 2239, 2239, 2202, 2202, 2202, 2202, 765, + -8, -1024, -1024, 3700, 3726, 476, 476, 567, 567, 305, + 2239, 2239, 2239, 1895, 1895, 2239, 2969, 402, -1024, -1024, + 759, 2969, 267, 894, 898, -1024, 2239, 2239, 1046, 2076, + 768, 2239, 2239, -1024, 5374, 5395, 5416, 821, 3752, -1024, + 774, 2626, 5437, 4451, -1024, 2239, 911, 1370, -1024, 1502, + -1024, 2239, 4474, 253, 2239, 5, -1024, 5458, 4497, 5479, + 4520, 5500, 4543, 5521, 4566, 5542, 4589, 5563, 4612, 5584, + 4635, 5605, 4658, 5626, 4681, 5647, 4704, 5668, 4727, 3778, + 3804, 5689, 4750, 5710, 4773, 5731, 4796, 5752, 4819, 5773, + 4842, 5794, 4865, 3830, 3856, 3882, 3908, 3934, 3960, 2, + 777, 783, 784, 2180, 785, 2239, -1024, 1332, 1332, 625, + 265, 317, 2239, 919, 922, 12, 792, -1024, 2649, 629, + 701, 728, 728, 138, 138, 138, 138, 168, 168, 753, + 753, 753, 753, -1024, 47, 2076, 2239, 923, 1860, 2239, + 753, -1024, 2239, 2076, 2076, 834, 924, 925, 5815, 926, + 839, 929, 930, 5836, 843, 935, 936, 2076, -1024, 635, + 1596, 2239, 5857, 937, 2726, 5878, 5899, 2239, 2976, 3004, + 5920, 811, 6151, -1024, 812, 813, 814, 815, 476, 2239, + 2239, -1024, -1024, 808, 810, 2239, 3986, 4012, 4038, 3648, + -79, 135, -43, -66, -1024, 507, 476, 1766, -1024, -1024, + 2239, 2239, -1024, 4888, 4911, -1024, 636, -1024, 4934, 4957, + 946, 947, 948, 820, 2239, 1888, 2239, 2239, -1024, 22, + 4980, -1024, -1024, -1024, 5003, 44, -1024, 3032, -1024, 825, + 830, 824, -1024, 959, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, - -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, 2245, 2245, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, - -1024, -1024, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 1013, - -1024, 2082, 615, -1024, -1024, -1024, 2245, 4992, 1012, 1015, - 883, -1024, 84, 2245, 1020, 1021, 2313, -1024, 1022, 893, - 13, 1024, -1024, 2245, -1024, 911, 615, -22, 4053, -37, - -1024, 2082, 3049, 2638, 791, -1024, 2556, -1024, 983, 1324, - 1324, 1026, 1324, 749, 1324, 1324, 1027, 984, 1324, 1324, - 687, -1024, 2082, 2332, 1031, 900, 1036, 1037, 1040, 2274, - 1041, 1042, 1043, 1044, 1046, 1048, 1050, 1055, 221, 4079, - 4105, -1024, -1024, 3077, -37, -37, -37, 2082, 2082, 2082, - 2082, 1056, 921, 931, -11, -1024, 370, -1024, 311, 2351, - 2370, 1057, 1059, 1018, 1062, 1063, 1324, 1324, 1324, 1066, - 4131, -1024, 2657, 982, 1067, 1068, 1071, 1069, -1024, 1072, - -1024, 948, 2245, 2245, 1324, 939, -1024, 5930, 5015, 5951, - 5038, 5972, 5061, 5993, 5084, 5107, 951, 131, 953, 6014, - 430, -1024, -1024, 347, 354, 973, 1073, 2396, -1024, -1024, - -1024, 13, 2245, -1024, 700, -1024, 2293, -1024, 1077, 52, - 2245, 1, 705, -1024, 2245, 944, 23, 39, 1324, 1080, - 972, 977, 1082, 1084, 1324, 978, 1086, 1113, -1024, 723, - -1024, 1115, 2245, 1324, 1324, 1324, -1024, 253, 1324, 1324, - 1324, 1324, 1324, 1324, 1324, 494, 2245, 2245, 2245, 981, - 367, 400, 431, 727, 731, 739, 742, -1024, 1324, 2245, - -1024, -1024, 1901, -9, -1024, -1024, -1024, -1024, 987, -1024, - -1024, 1117, 1118, 1038, -1024, 2245, 2245, 2245, -1024, 1124, - 1126, -1024, 82, -1024, 2245, 4157, 4183, 747, -1024, 2245, - -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, 994, -1024, - -1024, -1024, -1024, 1324, 554, 2245, 1128, 1131, 14, -1024, - 1130, 5130, 13, -1024, -1024, -1024, 615, 4209, -1024, 1001, - 2293, 2245, -1024, -37, -1024, -37, 1132, -1024, 2245, 2245, - -1024, -1024, 1133, 2245, -1024, -1024, -1024, 1136, 4235, 1138, - 1139, 1047, 2245, 2245, 795, 1140, 1142, 1144, 1146, 1147, - 1151, -1024, 2208, 3105, 6035, 2881, 743, -37, 1153, -37, - 1154, -37, 1156, 1157, 1158, 1159, 1160, 255, 1028, 6056, - 3133, 458, -1024, 2245, -1024, -1024, 1324, 2909, 565, 6077, - -1024, 1734, -1024, 159, 2293, 2245, 2245, 1324, 1029, 751, - 2293, 1164, 1167, 1176, 2415, -1024, 1177, 1179, -1024, 1049, - -1024, 1181, 2245, -1024, 3161, 51, 58, -1024, 3189, 3217, - -1024, 3245, 1178, 2245, -1024, -1024, 1141, 1183, 2435, 2454, - 1184, -1024, -1024, -1024, -1024, -1024, -1024, -1024, 2473, 1187, - 1054, -1024, 2245, -1024, 1060, 465, -1024, 1083, 482, -1024, - 1085, 492, -1024, 1087, -1024, -1024, -1024, -1024, 1194, 1324, - 1217, 1088, 2245, 3273, 1143, 2245, -1024, 2245, -1024, -1024, - 2082, 2492, 1220, -1024, 2245, 4261, 4287, -1024, 1324, 2245, - 1223, 1096, -1024, -1024, -1024, 13, -1024, 1145, -1024, 4313, - 1226, -1024, -1024, 1228, 1229, 1230, 1231, 4339, 1099, -1024, - -1024, -1024, -1024, -1024, -1024, 743, 2937, -1024, 1901, 311, - 1901, 311, 1901, 311, -1024, 752, 1324, -1024, 3301, -1024, - 2245, 3329, 3357, 756, -1024, -1024, 1101, 2293, 2245, 2245, - 761, 2293, -1024, -1024, 1236, -1024, 2245, -1024, -1024, -1024, - -1024, -1024, 1238, 2245, 1103, 2245, -1024, 3385, 501, 194, - 3413, 522, 223, 3441, 525, 264, 1324, 1239, 1185, 1772, - 1107, 2518, -1024, -1024, 1242, 2245, 6098, 4365, 28, -1024, - 4391, 1110, 3469, -1024, 3497, 1244, 2245, 1245, 1246, 2245, - 1253, 1254, 2245, 1255, 1121, -1024, 2245, -1024, 311, -1024, - -1024, -1024, 762, -1024, 2245, -1024, 1324, 2245, 1258, -1024, - -1024, -1024, 1149, 3525, -1024, -1024, 1161, 3553, -1024, -1024, - 1162, 3581, -1024, 1274, 2537, 314, 1894, 1275, 1163, 6119, - 765, 3609, 1148, 311, 1276, 311, 1277, 311, 1279, -1024, - -1024, -1024, -1024, 311, -1024, 615, -1024, 1165, 1280, 1286, - 345, -1024, 1166, 358, -1024, 1168, 363, -1024, 1169, 366, - 766, -1024, 1170, 1324, -1024, 1173, 1287, 311, 1292, 311, - 1293, 311, -1024, 615, 1294, 615, 770, 1298, -1024, 384, - -1024, 397, -1024, 439, -1024, -1024, 771, -1024, 1301, -1024, - 1309, 1311, 1312, 615, 1313, -1024, -1024, -1024, -1024, -1024, - -1024 + -1024, 2239, 2239, -1024, -1024, -1024, -1024, -1024, -1024, -1024, + -1024, -1024, -1024, -1024, -1024, 2239, 2239, 2239, 2239, 2239, + 2239, -1024, 2076, 508, -1024, -1024, -1024, 2239, 5026, 960, + 962, 833, -1024, 13, 2239, 964, 981, 2285, -1024, 982, + 853, 11, 985, -1024, 2239, -1024, 873, 508, 205, 4064, + 476, -1024, 2076, 3060, 2677, 753, -1024, 2576, -1024, 945, + 1332, 1332, 988, 1332, 735, 1332, 1332, 993, 950, 1332, + 1332, 650, -1024, 2076, 2313, 995, 863, 997, 998, 1000, + 1119, 1001, 1003, 1005, 1006, 1008, 1009, 1010, 1015, 501, + 4090, 4116, -1024, -1024, 3088, 476, 476, 476, 2076, 2076, + 2076, 2076, 1016, 881, 892, -39, -1024, 503, -1024, 507, + 2332, 2365, 1018, 1021, 979, 1023, 1024, 1332, 1332, 1332, + 1027, 4142, -1024, 2696, 858, 1028, 1029, 897, 1033, 1045, + -1024, 1044, -1024, 921, 2239, 2239, 1332, 912, -1024, 5941, + 5049, 5962, 5072, 5983, 5095, 6004, 5118, 333, 927, 6025, + -52, -1024, -1024, 87, 302, 928, 1049, 2384, -1024, -1024, + -1024, 11, 2239, -1024, 653, -1024, 6151, -1024, 1056, 62, + 2239, 0, 658, -1024, 2239, 933, 28, 37, 1332, 1058, + 934, 939, 1060, 1061, 1332, 940, 1062, 1063, -1024, 665, + -1024, 1065, 2239, 1332, 1332, 1332, -1024, 376, 1332, 1332, + 1332, 1332, 1332, 1332, 1332, 459, 2239, 2239, 2239, 941, + 277, 435, 466, 666, 669, 670, 695, -1024, 1332, 2239, + -1024, -1024, 1895, -15, -1024, -1024, -1024, -1024, 942, -1024, + -1024, 1069, 1070, 986, -1024, 2239, 2239, 2239, -1024, 1077, + 1079, 1080, -1024, 253, -1024, 2239, 4168, 4194, 696, -1024, + 2239, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, + -1024, -1024, 1332, 317, 2239, 1082, 1095, 12, -1024, 1103, + 5141, 11, -1024, -1024, -1024, 508, 4220, -1024, 965, 6151, + 2239, -1024, 476, -1024, 476, 1105, -1024, 2239, 2239, -1024, + -1024, 1106, 2239, -1024, -1024, -1024, 1108, 4246, 1109, 1110, + 1019, 2239, 2239, 835, 1111, 1113, 1114, 1116, 1120, 1121, + -1024, 2202, 3116, 6046, 1151, 567, 476, 1123, 476, 1124, + 476, 1125, 1126, 1131, 1132, 1134, 534, 1002, 6067, 3144, + 539, -1024, 2239, -1024, -1024, 1332, 2920, 583, 6088, -1024, + 1728, -1024, -1024, 341, 6151, 2239, 2239, 1332, 1007, 703, + 6151, 1137, 1139, 2407, -1024, 1141, 1143, -1024, 1013, -1024, + 1146, 2239, -1024, 3172, 56, 85, -1024, 3200, 3228, -1024, + 3256, 1149, 2239, -1024, -1024, 1122, 1164, 2435, 2454, 1166, + -1024, -1024, -1024, -1024, -1024, -1024, -1024, 2487, 1168, 1035, + -1024, 2239, -1024, 1037, 541, -1024, 1036, 546, -1024, 1039, + 549, -1024, 1042, -1024, -1024, -1024, -1024, 1175, 1332, 1176, + 1048, 2239, 3284, 1094, 2239, -1024, 2239, -1024, -1024, 2076, + 2506, 1179, -1024, 2239, 4272, 4298, -1024, 1332, 2239, 1180, + -1024, -1024, -1024, 11, -1024, 1099, -1024, 4324, 1188, -1024, + -1024, 1189, 1193, 1194, 1216, 4350, 1053, -1024, -1024, -1024, + -1024, -1024, -1024, 567, 2948, -1024, 1895, 507, 1895, 507, + 1895, 507, -1024, 717, 1332, -1024, 3312, -1024, 2239, 3340, + 3368, 724, -1024, -1024, 1083, 6151, 2239, 2239, 729, 6151, + -1024, 1218, -1024, 2239, -1024, -1024, -1024, -1024, -1024, 1220, + 2239, 1085, 2239, -1024, 3396, 588, -13, 3424, 598, 224, + 3452, 602, 232, 1332, 1221, 1167, 2233, 1089, 2529, -1024, + -1024, 1225, 2239, 6109, 4376, 17, -1024, 4402, 1093, 3480, + -1024, 3508, 1241, 2239, 1242, 1243, 2239, 1252, 1253, 2239, + 1254, 1138, -1024, 2239, -1024, 507, -1024, -1024, -1024, 730, + -1024, 2239, -1024, 1332, 2239, 1256, -1024, -1024, -1024, 1140, + 3536, -1024, -1024, 1145, 3564, -1024, -1024, 1147, 3592, -1024, + 1275, 2557, 241, 2337, 1282, 1157, 6130, 738, 3620, 1150, + 507, 1285, 507, 1292, 507, 1293, -1024, -1024, -1024, -1024, + 507, -1024, 508, -1024, 1160, 1295, 1257, 348, -1024, 1162, + 412, -1024, 1163, 432, -1024, 1165, 451, 739, -1024, 1169, + 1332, -1024, 1171, 1298, 507, 1301, 507, 1302, 507, -1024, + 508, 1307, 508, 745, 1308, -1024, 460, -1024, 482, -1024, + 490, -1024, -1024, 749, -1024, 1310, -1024, 1312, 1313, 1315, + 508, 1316, -1024, -1024, -1024, -1024, -1024, -1024 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1024, -1024, -1024, -1024, 551, -1024, -1024, -1024, -1024, 207, + -1024, -1024, -1024, -1024, 555, -1024, -1024, -1024, -1024, 211, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, - -1024, -1024, -271, 0, -1024, -127, -1024, 1320, 5, -186, - -173, -1024, -1024, -1024, -1024, -1024, 1322, -1024, -1024, -1024, + -1024, -1024, -272, 18, -1024, -126, -1024, 1323, 4, -179, + -174, -1024, -1024, -1024, -1024, -1024, 1324, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, -1024, - -609, -677, -1024, -1024, -1024, -4, -1024, 230, -1024, -1023, - 377, 176, -65, -614, 462, -1024, -59, 3 + -687, -653, -1024, -1024, -1024, -5, -1024, 226, -1024, -1023, + 242, 298, 19, -616, 462, -1024, -59, -1 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -1453,1090 +1451,1101 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -5 static const yytype_int16 yytable[] = { - 210, 370, 128, 451, 356, 1080, 127, 878, 65, 130, - 151, 368, 565, 197, 204, 205, 146, 194, 639, 5, - 146, 204, 205, 446, 182, 211, 763, 821, 364, 882, - 365, 4, 134, 385, 1145, 131, 387, 724, 274, 141, - 141, 644, 437, 205, 132, 884, 103, 104, 105, 106, - 345, 346, 107, 103, 104, 105, 106, 1041, 875, 107, - 473, 701, 133, 701, 1042, 474, 517, 702, 703, 702, - 703, 136, 204, 205, 103, 104, 105, 106, 314, 883, - 107, 217, 318, 345, 346, 147, 166, 167, 754, 699, - 566, 567, 568, 569, 152, 885, 168, 538, 539, 823, - 347, 142, 142, 169, 103, 104, 105, 106, 143, 698, - 107, 620, 769, 267, 268, 269, 621, 483, 270, 273, - 183, 139, 278, 1170, 345, 346, 275, 276, 298, 447, - 820, 300, 932, 301, 307, 310, 311, 140, 313, 307, - 315, 316, 198, 307, 319, 320, 821, 870, 327, 570, - 206, 120, 121, 195, 640, 645, 212, 209, 213, 366, - 184, 522, 523, 214, 343, 344, 135, 725, 1146, 345, - 346, 150, 645, 344, 345, 346, 755, 756, 633, 153, - 1216, 345, 346, 137, 359, 536, 348, 374, 375, 376, - 138, 378, 359, 137, 381, 382, 144, 383, 120, 121, - 697, 438, 439, 440, 441, 727, 554, 448, 390, 513, - 514, 515, 120, 121, 395, 396, 397, 398, 399, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 145, 498, 960, 148, - 442, 170, 172, 481, 178, 860, 701, 218, 307, 219, - 483, 149, 702, 703, 452, 345, 346, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 358, 1023, 156, 701, 631, 157, 1024, 158, - 479, 702, 703, 149, 545, 345, 346, 154, 487, 450, - 700, 345, 346, 492, 308, 902, 903, 479, 307, 308, - 159, 524, 501, 308, 503, 504, 505, 535, 507, 508, - 509, 511, 511, 511, 511, 1127, 701, 155, 512, 512, - 512, 512, 702, 703, 345, 346, 525, 526, 527, 267, - 268, 528, 359, 359, 631, 220, 483, 221, 484, 164, - 806, 864, 542, 543, 1130, 307, 180, 547, 548, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 499, 293, 294, 701, 165, 561, 701, 295, 564, 702, - 703, 563, 702, 703, 173, 340, 1008, 342, 181, 113, - 114, 115, 116, 349, 222, 1133, 223, 357, 224, 647, - 225, 186, 113, 114, 115, 116, 226, 701, 227, 120, - 121, 1084, 821, 702, 703, 821, 632, 228, 821, 229, - 701, 670, 120, 121, 185, 701, 702, 703, 701, 179, - 627, 702, 703, 187, 702, 703, 188, 636, 308, 634, - 1099, 189, 1102, 635, 1105, 1181, 701, 113, 114, 115, - 116, 190, 702, 703, 113, 114, 115, 116, 191, 701, - 307, 648, 192, 627, 652, 702, 703, 653, 654, 656, - 480, 200, 863, 865, 120, 121, 1206, 483, 821, 489, - 345, 346, 307, 345, 346, 654, 673, 480, 308, 1208, - 911, 912, 679, 729, 1210, 193, 917, 1212, 918, 822, - 483, 701, 493, 821, 689, 690, 821, 702, 703, 821, - 693, 199, 821, 345, 346, 1230, 230, 324, 231, 1165, - 292, 293, 294, 331, 201, 709, 710, 295, 1231, 919, - 202, 920, 821, 203, 821, 308, 821, 174, 216, 720, - 175, 722, 723, 176, 345, 346, 747, 362, 363, 205, - 120, 121, 728, 748, 1190, 260, 1193, 727, 1196, 232, - 921, 233, 922, 1017, 1199, 520, 521, 234, 261, 235, - 1232, 345, 346, 236, 342, 237, 772, 768, 345, 346, - 103, 104, 105, 106, 737, 738, 107, 1012, 1219, 238, - 1221, 239, 1223, 262, 1058, 345, 346, 789, 739, 740, - 741, 742, 743, 744, 745, 345, 346, 307, 263, 204, - 205, 1060, 749, 264, 345, 346, 265, 166, 167, 757, - 277, 1062, 813, 814, 815, 816, 240, 168, 241, 766, - 1126, 242, 299, 243, 177, 345, 346, 307, 345, 346, - 308, 103, 104, 105, 106, 279, 312, 107, 655, 657, - 317, 1129, 120, 121, 1132, 296, 326, 444, 307, 213, - 328, 244, 308, 245, 214, 655, 7, 8, 297, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 307, 307, 307, 307, 295, 618, 329, - 619, 7, 8, 246, 330, 247, 1018, 529, 13, 14, - 530, 16, 17, 531, 19, 532, 21, 332, 22, 160, - 24, 25, 161, 27, 28, 162, 333, 163, 845, 846, - 994, 334, 529, 13, 14, 530, 16, 17, 531, 19, - 532, 21, 248, 22, 249, 24, 25, 688, 27, 28, - 728, 45, 46, 47, 866, 120, 121, 250, 871, 251, - 477, 252, 213, 253, 335, 706, 877, 214, 336, 254, - 880, 255, 256, 258, 257, 259, 45, 46, 47, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 898, 483, - 337, 630, 295, 483, 483, 671, 713, 308, 780, 980, - 781, 981, 913, 914, 915, 544, 338, 339, 30, 31, - 32, 33, 367, 35, 927, 929, 373, 961, 930, 40, - 41, 350, 351, 628, 629, 352, 483, 308, 788, 371, - 559, 937, 938, 939, 290, 291, 292, 293, 294, 872, - 944, 873, 942, 295, 483, 950, 879, 369, 308, 283, + 210, 128, 452, 356, 1078, 130, 877, 65, 370, 568, + 368, 274, 204, 205, 182, 194, 640, 754, 364, 151, + 365, 134, 823, 1142, 127, 763, 146, 211, 146, 725, + 4, 474, 387, 702, 881, 389, 475, 204, 205, 703, + 704, 5, 197, 883, 103, 104, 105, 106, 204, 205, + 107, 137, 821, 645, 137, 447, 131, 702, 138, 702, + 141, 698, 1039, 703, 704, 703, 704, 149, 874, 103, + 104, 105, 106, 133, 701, 107, 132, 217, 120, 121, + 103, 104, 105, 106, 882, 729, 107, 569, 570, 571, + 572, 1040, 136, 884, 632, 147, 218, 700, 219, 275, + 276, 160, 820, 152, 161, 755, 756, 162, 139, 163, + 183, 140, 267, 268, 269, 345, 346, 270, 273, 144, + 1167, 278, 142, 345, 346, 150, 931, 298, 1124, 143, + 300, 518, 301, 307, 310, 311, 621, 313, 307, 315, + 316, 622, 307, 319, 320, 869, 573, 327, 206, 366, + 184, 195, 641, 120, 121, 135, 153, 1143, 212, 726, + 213, 448, 314, 343, 344, 214, 318, 646, 523, 524, + 821, 198, 344, 209, 120, 121, 154, 1213, 634, 345, + 346, 729, 646, 359, 537, 145, 374, 375, 376, 155, + 378, 359, 148, 381, 382, 159, 383, 113, 114, 115, + 116, 439, 440, 441, 442, 555, 141, 392, 345, 346, + 514, 515, 516, 397, 398, 399, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, + 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, + 434, 435, 436, 437, 438, 959, 149, 170, 172, 443, + 178, 290, 291, 292, 293, 294, 156, 307, 142, 157, + 295, 158, 632, 539, 540, 699, 458, 459, 460, 461, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 449, 453, 292, 293, 294, 702, 345, 346, 480, + 295, 451, 703, 704, 702, 164, 220, 488, 221, 863, + 703, 704, 493, 702, 347, 165, 480, 307, 173, 703, + 704, 502, 205, 504, 505, 506, 179, 508, 509, 510, + 512, 512, 512, 512, 513, 513, 513, 513, 180, 769, + 222, 499, 223, 280, 484, 526, 527, 528, 267, 268, + 529, 359, 359, 103, 104, 105, 106, 181, 224, 107, + 225, 543, 544, 185, 307, 1127, 548, 549, 345, 346, + 1096, 186, 1099, 1130, 1102, 113, 114, 115, 116, 226, + 560, 227, 1178, 120, 121, 348, 564, 187, 546, 567, + 188, 340, 324, 342, 189, 120, 121, 190, 331, 349, + 345, 346, 633, 357, 113, 114, 115, 116, 228, 191, + 229, 566, 113, 114, 115, 116, 916, 1081, 917, 230, + 702, 231, 362, 363, 120, 121, 703, 704, 345, 346, + 120, 121, 120, 121, 192, 445, 308, 213, 901, 902, + 628, 308, 214, 821, 525, 308, 821, 637, 1162, 821, + 636, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 910, 911, 859, 635, 295, + 307, 649, 484, 628, 653, 1022, 193, 654, 655, 657, + 1023, 862, 864, 1187, 702, 1190, 232, 1193, 233, 1203, + 703, 704, 307, 1196, 648, 655, 674, 174, 199, 234, + 175, 235, 680, 176, 702, 200, 731, 345, 346, 821, + 703, 704, 204, 205, 690, 691, 671, 1216, 201, 1218, + 694, 1220, 202, 702, 358, 345, 346, 203, 216, 703, + 704, 236, 702, 237, 821, 710, 711, 821, 703, 704, + 821, 536, 482, 821, 103, 104, 105, 106, 260, 721, + 107, 723, 724, 1205, 702, 238, 261, 239, 345, 346, + 703, 704, 702, 821, 748, 821, 262, 821, 703, 704, + 308, 521, 522, 1207, 918, 263, 919, 166, 167, 702, + 342, 264, 240, 730, 241, 703, 704, 168, 768, 345, + 346, 1016, 1209, 385, 177, 386, 739, 740, 265, 166, + 167, 1227, 481, 279, 242, 920, 243, 921, 277, 168, + 741, 742, 743, 744, 745, 746, 169, 307, 296, 481, + 308, 297, 749, 1228, 345, 346, 345, 346, 244, 757, + 245, 1229, 30, 31, 32, 33, 484, 35, 485, 766, + 806, 747, 822, 40, 41, 299, 312, 307, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 500, + 293, 294, 345, 346, 345, 346, 295, 308, 307, 345, + 346, 772, 345, 346, 484, 1007, 490, 246, 1011, 247, + 1056, 248, 328, 249, 250, 1058, 251, 317, 1060, 629, + 630, 326, 789, 307, 307, 307, 307, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 954, 483, 372, 896, 295, 483, 953, 923, 1094, - 483, 377, 924, 308, 308, 308, 308, 964, 483, 771, - 925, 483, 380, 926, 968, 969, 947, 384, 948, 971, - 1029, 1106, 1030, 1107, 1109, 483, 386, 1114, 978, 979, - 947, 1029, 1118, 1167, 947, 1213, 1187, 1214, 988, 947, - 1233, 1228, 1234, 379, 388, 989, 389, 391, 392, 453, - 394, 359, 443, 295, 810, 811, 812, 454, 455, 1013, - 478, 500, 506, 516, 540, 537, 541, 1021, 546, 552, - 555, 1025, 1026, 622, 1022, 623, 624, 7, 8, 637, - 638, 642, 626, 658, 649, 1073, 659, 660, 1039, 662, - 663, 664, 665, 667, 668, 669, 1166, 675, 683, 1047, - 684, 685, 686, 691, 692, 716, 687, 717, 529, 13, - 14, 530, 16, 17, 531, 19, 532, 21, 1056, 22, - 837, 24, 25, 718, 27, 28, 719, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 1068, 732, - 733, 1071, 295, 1072, 734, 736, 307, 746, 751, 753, - 1077, 752, 45, 46, 47, 1081, 758, 759, 762, 761, - 765, 767, 775, 778, 784, 785, 776, 777, 791, 779, - 792, 782, 783, 793, 794, 786, 787, 795, 798, 799, - 800, 801, 931, 802, 1097, 803, 1100, 804, 1103, 805, - 359, 818, 817, 826, 819, 827, 1111, 828, 829, 830, - 834, 839, 840, 842, 1116, 1117, 560, 841, 843, 849, - 868, 844, 1120, 874, 881, 859, 887, 861, 890, 1122, - 891, 1124, 894, 831, 832, 833, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 867, 950, 888, 965, 295, 966, 838, 889, 893, 895, - 897, 916, 1153, 934, 935, 1157, 1201, 933, 1161, 936, - 940, 951, 1164, 941, 955, 956, 958, 963, 967, 970, - 1169, 972, 976, 1171, 974, 975, 982, 995, 983, 998, - 984, 1001, 985, 986, 1224, 886, 1227, 987, 280, 996, - 999, 892, 1002, 1004, 1005, 1006, 1007, 1009, 1031, 1028, - 899, 900, 901, 1032, 1239, 904, 905, 906, 907, 908, - 909, 910, 1033, 1046, 1035, 1036, 1037, 1038, 1048, 1049, - 1052, 75, 302, 1054, 1055, 928, 308, 79, 80, 81, - 1064, 1057, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 1059, 1066, 1061, 1075, 1063, 1067, 1082, - 1083, 303, 1087, 1070, 1088, 1089, 1090, 1091, 1085, 1093, - 952, 1115, 1119, 1121, 1123, 1135, 1136, 1139, 1141, 1148, - 1151, 1154, 1155, 30, 31, 32, 33, 34, 35, 1158, - 1159, 1162, 1163, 1172, 40, 41, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 1179, 1184, 1191, 1194, 295, 1197, 1204, 1189, 1098, 1173, - 1101, 1205, 1104, 1218, 109, 110, 111, 112, 1220, 1222, - 1225, 1175, 1177, 1185, 1229, 1203, 1207, 1235, 1209, 1211, - 1215, 117, 304, 1014, 1217, 1236, 119, 1237, 1238, 1240, - 876, 122, 1142, 64, 1027, 71, 125, 75, 302, 497, - 957, 0, 0, 79, 80, 81, 0, 0, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 0, - 0, 0, 0, 0, 0, 0, 0, 303, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, - 0, 0, 0, 0, 0, 0, 1065, 0, 0, 30, - 31, 32, 33, 34, 35, 0, 0, 0, 0, 0, - 40, 41, 0, 0, 0, 0, 0, 0, 0, 529, - 13, 14, 530, 16, 17, 531, 19, 532, 21, 0, - 22, 0, 24, 25, 0, 27, 28, 0, 0, 0, - 109, 110, 111, 112, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1108, 0, 0, 0, 117, 321, 0, - 0, 0, 119, 45, 46, 47, 0, 122, 0, 0, - 0, 0, 125, 0, 322, 0, 0, 0, 0, 0, - 0, 0, 0, 75, 302, 0, 0, 0, 0, 79, - 80, 81, 0, 1134, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 0, 0, 707, 0, 0, - 0, 0, 0, 303, 0, 0, 0, 0, 0, 0, - 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 30, 31, 32, 33, 34, - 35, 0, 0, 0, 0, 0, 40, 41, 0, 0, - 0, 529, 13, 14, 530, 16, 17, 531, 19, 532, - 21, 0, 22, 0, 24, 25, 0, 27, 28, 0, - 0, 0, 0, 0, 0, 0, 109, 110, 111, 112, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 117, 304, 45, 46, 47, 119, 0, - 0, 0, 0, 122, 0, 75, 302, 0, 125, 0, - 496, 79, 80, 81, 0, 0, 82, 83, 84, 85, + 294, 345, 346, 329, 252, 295, 253, 813, 814, 815, + 816, 345, 346, 330, 1017, 345, 346, 1123, 334, 846, + 847, 332, 254, 256, 255, 257, 993, 1126, 258, 335, + 259, 1129, 336, 333, 689, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 870, 484, 337, + 494, 295, 707, 338, 484, 876, 631, 339, 730, 879, + 373, 350, 865, 308, 484, 484, 672, 714, 120, 121, + 367, 656, 658, 478, 780, 213, 781, 897, 377, 484, + 214, 788, 871, 384, 872, 308, 351, 484, 656, 878, + 352, 912, 913, 914, 484, 484, 895, 922, 484, 484, + 923, 924, 369, 926, 928, 371, 960, 929, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 372, + 936, 937, 938, 295, 484, 947, 925, 948, 379, 979, + 944, 980, 1028, 380, 1029, 950, 388, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 1103, 390, 1104, 953, + 295, 942, 952, 484, 393, 1111, 837, 391, 947, 1028, + 1115, 1164, 396, 394, 1091, 963, 771, 947, 1210, 1184, + 1211, 444, 967, 968, 947, 295, 1225, 970, 1230, 454, + 1231, 1106, 455, 456, 479, 501, 977, 978, 507, 517, + 538, 541, 776, 777, 542, 779, 987, 782, 783, 547, + 988, 786, 787, 553, 556, 561, 623, 624, 625, 359, + 308, 810, 811, 812, 627, 638, 639, 1012, 643, 659, + 650, 660, 661, 663, 664, 1020, 665, 666, 668, 1021, + 1024, 1025, 669, 670, 676, 684, 685, 686, 687, 692, + 308, 693, 688, 717, 718, 719, 1037, 720, 734, 831, + 832, 833, 1163, 735, 736, 738, 751, 1045, 752, 753, + 758, 308, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 1054, 759, 762, 761, + 295, 765, 838, 767, 775, 778, 308, 308, 308, 308, + 784, 785, 791, 792, 793, 794, 1066, 795, 798, 1069, + 799, 1070, 800, 801, 307, 802, 803, 804, 1075, 805, + 885, 818, 817, 1079, 826, 819, 891, 827, 828, 829, + 830, 834, 839, 840, 841, 898, 899, 900, 1071, 842, + 903, 904, 905, 906, 907, 908, 909, 457, 930, 843, + 844, 1094, 850, 1097, 845, 1100, 867, 359, 7, 8, + 927, 860, 873, 1108, 886, 866, 889, 890, 893, 894, + 896, 1113, 1114, 880, 887, 933, 934, 935, 1117, 888, + 892, 915, 932, 939, 941, 1119, 940, 1121, 954, 530, + 13, 14, 531, 16, 17, 532, 19, 533, 21, 955, + 22, 962, 24, 25, 951, 27, 28, 950, 964, 957, + 965, 966, 969, 971, 975, 973, 974, 981, 1150, 982, + 983, 1154, 984, 1198, 1158, 796, 985, 986, 1161, 995, + 998, 1001, 1003, 45, 46, 47, 1166, 1004, 1005, 1168, + 1006, 1008, 994, 1030, 997, 1031, 1000, 1027, 1033, 1034, + 1035, 1221, 1036, 1224, 1044, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 1046, + 1047, 1236, 1050, 295, 1052, 1053, 1057, 1013, 1055, 1059, + 797, 1062, 1061, 1064, 1068, 1073, 1080, 545, 1065, 1026, + 75, 302, 1082, 1090, 1084, 1085, 79, 80, 81, 1086, + 1087, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 102, 1088, 1112, 1116, 1118, 1120, 1132, 1133, 1136, + 303, 1138, 1145, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 1148, 1151, 1152, + 1063, 295, 30, 31, 32, 33, 34, 35, 1155, 1156, + 1159, 1169, 1202, 40, 41, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 1160, + 1170, 1176, 1095, 295, 1098, 1172, 1101, 1174, 1181, 1186, + 991, 1188, 992, 109, 110, 111, 112, 1182, 1191, 1194, + 1200, 1201, 1204, 1206, 1215, 1208, 1105, 1217, 1219, 1212, + 117, 304, 1214, 1222, 1226, 119, 1232, 308, 1233, 1234, + 122, 1235, 1237, 1139, 875, 125, 64, 71, 498, 956, + 0, 0, 0, 0, 0, 75, 302, 0, 0, 0, + 0, 79, 80, 81, 0, 1131, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 0, 0, 0, - 0, 0, 0, 0, 0, 303, 0, 0, 0, 721, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 303, 0, 0, 0, 0, + 0, 0, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 31, 32, - 33, 34, 35, 0, 75, 266, 0, 0, 40, 41, - 79, 80, 81, 0, 0, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 0, 0, 109, 110, + 33, 34, 35, 0, 0, 0, 0, 0, 40, 41, + 0, 0, 0, 530, 13, 14, 531, 16, 17, 532, + 19, 533, 21, 0, 22, 0, 24, 25, 0, 27, + 28, 0, 0, 0, 0, 0, 0, 0, 109, 110, 111, 112, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 117, 304, 0, 0, 0, - 119, 0, 0, 0, 0, 122, 0, 75, 266, 205, - 125, 0, 672, 79, 80, 81, 0, 0, 82, 83, + 0, 0, 0, 0, 0, 117, 321, 45, 46, 47, + 119, 0, 0, 0, 0, 122, 0, 75, 302, 0, + 125, 0, 322, 79, 80, 81, 0, 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 0, - 103, 104, 105, 106, 0, 0, 107, 109, 110, 111, - 112, 0, 0, 0, 7, 8, 0, 0, 0, 0, - 0, 0, 0, 0, 117, 118, 0, 0, 0, 119, - 0, 0, 0, 0, 122, 0, 0, 271, 0, 125, - 0, 272, 0, 0, 0, 529, 13, 14, 530, 16, - 17, 531, 19, 532, 21, 0, 22, 0, 24, 25, + 0, 0, 0, 0, 0, 0, 0, 303, 0, 0, + 0, 562, 0, 0, 7, 8, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, + 31, 32, 33, 34, 35, 0, 0, 0, 0, 0, + 40, 41, 0, 0, 0, 530, 13, 14, 531, 16, + 17, 532, 19, 533, 21, 0, 22, 0, 24, 25, 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, 109, 110, 111, 112, 0, 0, 0, 0, 0, 0, - 456, 0, 0, 0, 0, 0, 0, 117, 118, 45, + 0, 0, 0, 0, 0, 0, 0, 117, 304, 45, 46, 47, 119, 0, 0, 0, 0, 122, 0, 75, - 266, 0, 125, 0, 1020, 79, 80, 81, 0, 0, + 302, 0, 125, 0, 497, 79, 80, 81, 0, 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 0, 0, 0, 75, 266, 7, 8, 0, 0, - 79, 80, 81, 1137, 0, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 0, 529, 13, 14, - 530, 16, 17, 531, 19, 532, 21, 0, 22, 0, - 24, 25, 0, 27, 28, 0, 0, 0, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 109, 110, 111, 112, 295, 0, 0, 0, - 0, 45, 46, 47, 0, 0, 0, 0, 0, 117, - 118, 0, 0, 0, 119, 0, 0, 0, 0, 122, - 0, 0, 650, 0, 125, 0, 651, 109, 110, 111, - 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 353, 354, 0, 0, 0, 119, - 0, 0, 0, 0, 355, 1182, 75, 76, 77, 125, - 78, 169, 79, 80, 81, 0, 0, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 0, 103, - 104, 105, 106, 0, 0, 107, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 75, 302, 0, 0, 0, - 0, 79, 80, 81, 0, 0, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 0, 0, 0, - 0, 0, 0, 0, 0, 303, 0, 0, 0, 0, - 0, 0, 0, 108, 0, 0, 0, 0, 0, 109, - 110, 111, 112, 113, 114, 115, 116, 30, 31, 32, - 33, 34, 35, 0, 0, 0, 117, 118, 40, 41, - 0, 119, 0, 120, 121, 0, 122, 0, 123, 0, - 124, 125, 0, 472, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 109, 110, - 111, 112, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 117, 304, 0, 0, 0, - 119, 75, 266, 205, 0, 122, 0, 79, 80, 81, - 125, 0, 82, 83, 84, 85, 86, 87, 88, 89, + 102, 0, 0, 0, 0, 0, 0, 0, 0, 303, + 0, 0, 0, 563, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 30, 31, 32, 33, 34, 35, 0, 75, 266, + 0, 0, 40, 41, 79, 80, 81, 0, 0, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, + 0, 0, 109, 110, 111, 112, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, + 304, 0, 0, 0, 119, 0, 0, 0, 0, 122, + 0, 75, 266, 205, 125, 0, 673, 79, 80, 81, + 0, 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 0, 103, 104, 105, 106, 75, 266, - 107, 0, 0, 0, 79, 80, 81, 0, 0, 82, + 100, 101, 102, 0, 103, 104, 105, 106, 0, 0, + 107, 109, 110, 111, 112, 0, 0, 0, 7, 8, + 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, + 0, 0, 0, 119, 0, 0, 0, 0, 122, 0, + 0, 271, 0, 125, 0, 272, 0, 0, 0, 530, + 13, 14, 531, 16, 17, 532, 19, 533, 21, 0, + 22, 0, 24, 25, 0, 27, 28, 0, 0, 0, + 0, 0, 0, 0, 109, 110, 111, 112, 0, 0, + 0, 0, 0, 0, 473, 0, 0, 0, 0, 0, + 0, 117, 118, 45, 46, 47, 119, 0, 0, 0, + 0, 122, 0, 75, 266, 0, 125, 0, 1019, 79, + 80, 81, 0, 0, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 0, 0, 0, 75, 266, + 7, 8, 0, 0, 79, 80, 81, 708, 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 796, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 109, 110, 111, 112, 295, 760, + 0, 530, 13, 14, 531, 16, 17, 532, 19, 533, + 21, 0, 22, 0, 24, 25, 0, 27, 28, 0, + 0, 0, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 109, 110, 111, 112, + 295, 0, 0, 0, 0, 45, 46, 47, 0, 0, + 0, 0, 0, 117, 118, 0, 0, 0, 119, 0, + 0, 0, 0, 122, 0, 0, 651, 0, 125, 0, + 652, 109, 110, 111, 112, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 353, 354, + 0, 0, 0, 119, 0, 0, 0, 0, 355, 722, + 75, 76, 77, 125, 78, 169, 79, 80, 81, 0, + 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 102, 0, 103, 104, 105, 106, 0, 0, 107, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, + 302, 0, 0, 0, 0, 79, 80, 81, 0, 0, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 0, 0, 0, 0, 0, 0, 0, 0, 303, + 0, 0, 0, 0, 0, 0, 0, 108, 0, 0, + 0, 0, 0, 109, 110, 111, 112, 113, 114, 115, + 116, 30, 31, 32, 33, 34, 35, 0, 0, 0, + 117, 118, 40, 41, 0, 119, 0, 120, 121, 0, + 122, 0, 123, 0, 124, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 117, 118, 0, 0, 797, 119, 0, 790, 0, - 0, 122, 0, 0, 0, 0, 125, 0, 0, 0, - 0, 109, 110, 111, 112, 0, 0, 824, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, - 0, 0, 0, 119, 0, 0, 825, 0, 122, 0, - 0, 0, 0, 125, 0, 0, 0, 0, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 869, 0, 0, 0, 295, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 1034, 0, 0, 0, 295, 0, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 1050, 0, 0, 0, 295, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 1051, 0, 0, 0, 295, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 1053, - 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 1074, 0, - 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 1140, 0, 0, 0, 295, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 1180, 0, 0, 0, 295, 0, 281, + 0, 0, 109, 110, 111, 112, 626, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, + 304, 0, 0, 0, 119, 75, 266, 205, 0, 122, + 0, 79, 80, 81, 125, 0, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 0, 103, 104, + 105, 106, 75, 266, 107, 7, 8, 0, 79, 80, + 81, 0, 0, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, 102, 0, 0, 530, 13, 14, 531, + 16, 17, 532, 19, 533, 21, 0, 22, 0, 24, + 25, 760, 27, 28, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 109, 110, + 111, 112, 295, 0, 0, 0, 0, 0, 0, 790, + 45, 46, 47, 0, 0, 117, 118, 0, 0, 0, + 119, 0, 0, 0, 0, 122, 0, 0, 824, 0, + 125, 0, 0, 0, 0, 109, 110, 111, 112, 7, + 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 117, 118, 0, 0, 0, 119, 0, 0, + 0, 825, 122, 0, 1134, 0, 0, 125, 0, 0, + 530, 13, 14, 531, 16, 17, 532, 19, 533, 21, + 868, 22, 0, 24, 25, 0, 27, 28, 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 481, 0, 0, 295, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 0, 481, 0, 0, 295, 281, 282, 283, + 292, 293, 294, 1032, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 45, 46, 47, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 556, 0, 0, 295, 281, 282, 283, 284, + 294, 1048, 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 0, 643, 0, 0, 295, 0, 0, 0, 0, 0, - 0, 0, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 774, 0, 0, 0, - 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 836, 0, 0, 0, 295, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 482, 293, 294, 0, 0, 0, 0, 295, 281, + 1049, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1179, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 499, 293, 294, 0, 0, 0, 0, 295, 281, 282, + 292, 293, 294, 1051, 0, 0, 0, 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 0, 0, 0, 0, 295, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 281, 282, 283, 284, 285, 286, 287, 288, - 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, - 295, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, -4, 1, 0, 295, - -4, 0, 0, 0, 0, 0, 0, 0, -4, -4, + 293, 294, 1072, 0, 0, 0, 295, 0, 0, 0, 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, -4, 0, 0, 0, 0, -4, -4, 676, -4, - -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, - -4, -4, -4, -4, -4, -4, -4, 0, 0, 0, - -4, -4, -4, -4, -4, -4, -4, 0, -4, -4, - -4, -4, -4, -4, 0, 0, -4, -4, 6, 0, - 0, 0, -4, -4, -4, -4, 7, 8, -4, 0, - -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, - -4, -4, 0, 0, 0, 0, 0, 0, 0, 9, - 0, 0, 0, 0, 10, 11, 0, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 0, 22, 23, - 24, 25, 26, 27, 28, 0, 0, 0, 29, 30, - 31, 32, 33, 34, 35, 0, 36, 37, 38, 39, - 40, 41, 7, 8, 42, 43, 0, 0, 0, 0, - 44, 45, 46, 47, 0, 0, 48, 0, 49, 0, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 0, 0, 0, 529, 13, 14, 530, 16, 17, 531, - 19, 532, 21, 0, 22, 0, 24, 25, 0, 27, - 28, 0, 0, 0, 0, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 45, 46, 47, - 992, 0, 993, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 1015, 0, - 1016, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 1095, 0, 1096, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 0, 0, 680, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 0, 0, 681, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 0, 0, 730, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, - 773, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 0, 0, 809, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 0, 0, 990, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 0, 0, 1011, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 0, 0, 1040, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, - 1043, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 0, 0, 1044, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 0, 0, 1045, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 0, 0, 1069, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 0, 0, 1110, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, - 1112, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 0, 0, 1113, 281, + 290, 291, 292, 293, 294, 1137, 0, 0, 0, 295, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 0, 0, 1125, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 0, 0, 1128, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 0, 0, 1131, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 292, 293, 294, 1177, 0, 0, 0, 295, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 482, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 482, 0, 0, 0, 295, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 557, 0, 0, 0, 295, 0, + 0, 0, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 644, 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, - 1149, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 0, 0, 1150, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 0, 0, 1174, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 0, 0, 1176, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 0, 0, 1178, 281, 282, 283, 284, 285, 286, 287, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 774, 0, 0, 0, 295, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 483, 293, 294, 836, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 500, 293, 294, 0, 0, 0, 0, 295, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, - 1188, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 445, 0, 0, 0, 0, 518, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 475, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 518, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 519, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 553, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 598, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 599, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 612, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 613, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 614, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 615, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 616, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 617, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 694, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 695, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 696, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 770, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 807, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 808, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 835, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 945, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 946, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 962, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 973, 281, 282, 283, 284, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 1078, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 0, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 0, 0, 0, 1079, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 0, 1086, 281, 282, 283, 284, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 0, 0, 0, 1092, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 0, 0, 0, 1144, 281, 282, 283, 284, 285, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, -4, 1, 0, 295, -4, + 0, 0, 0, 0, 0, 0, 0, -4, -4, 0, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + -4, 0, 0, 0, 0, -4, -4, 677, -4, -4, + -4, -4, -4, -4, -4, -4, -4, -4, 0, -4, + -4, -4, -4, -4, -4, -4, 0, 0, 0, -4, + -4, -4, -4, -4, -4, -4, 0, -4, -4, -4, + -4, -4, -4, 0, 0, -4, -4, 6, 0, 0, + 0, -4, -4, -4, -4, 7, 8, -4, 0, -4, + 0, -4, -4, -4, -4, -4, -4, -4, -4, -4, + -4, 0, 0, 0, 0, 0, 0, 0, 9, 0, + 0, 0, 0, 10, 11, 0, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 0, 22, 23, 24, + 25, 26, 27, 28, 0, 0, 0, 29, 30, 31, + 32, 33, 34, 35, 0, 36, 37, 38, 39, 40, + 41, 7, 8, 42, 43, 0, 0, 0, 0, 44, + 45, 46, 47, 0, 0, 48, 0, 49, 0, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 0, + 0, 0, 530, 13, 14, 531, 16, 17, 532, 19, + 533, 21, 0, 22, 0, 24, 25, 0, 27, 28, + 0, 0, 0, 0, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 45, 46, 47, 1014, + 0, 1015, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 1092, 0, 1093, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 681, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 682, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 732, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 773, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 0, 0, 809, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 989, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 1010, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 1038, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 1041, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 0, 0, 1042, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 1043, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 1067, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 1107, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 1109, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 0, 0, 1110, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 1122, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 1125, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 1128, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 1146, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 0, 0, 1147, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 1171, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 1173, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 1175, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 1185, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 446, 0, 0, 0, 0, 519, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 476, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 519, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 520, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 554, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 601, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 602, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 615, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 616, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 617, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 618, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 619, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 620, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 695, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 696, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 697, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 770, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 807, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 808, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 835, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 945, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 946, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 961, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 972, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 1076, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 1077, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 1083, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 1089, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 1141, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 1144, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 450, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 0, 0, 0, - 1147, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 0, 0, 0, 295, 0, 0, 0, 559, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 565, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 449, 281, 282, 283, 284, 285, 286, + 0, 0, 0, 580, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, - 0, 0, 295, 0, 0, 0, 558, 281, 282, 283, + 0, 0, 295, 0, 0, 0, 582, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 562, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 584, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, - 0, 0, 577, 281, 282, 283, 284, 285, 286, 287, + 0, 0, 586, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 579, 281, 282, 283, 284, + 0, 295, 0, 0, 0, 588, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 0, 0, 0, 0, 295, 0, 0, 0, 581, 281, + 0, 0, 0, 0, 295, 0, 0, 0, 590, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 583, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 592, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, - 295, 0, 0, 0, 585, 281, 282, 283, 284, 285, + 295, 0, 0, 0, 594, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 587, 281, 282, + 0, 0, 0, 295, 0, 0, 0, 596, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, - 589, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 598, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 591, 281, 282, 283, 284, 285, 286, + 0, 0, 0, 600, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, - 0, 0, 295, 0, 0, 0, 593, 281, 282, 283, + 0, 0, 295, 0, 0, 0, 604, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 595, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 606, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, - 0, 0, 597, 281, 282, 283, 284, 285, 286, 287, + 0, 0, 608, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 601, 281, 282, 283, 284, + 0, 295, 0, 0, 0, 610, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 0, 0, 0, 0, 295, 0, 0, 0, 603, 281, + 0, 0, 0, 0, 295, 0, 0, 0, 612, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 605, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 614, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, - 295, 0, 0, 0, 607, 281, 282, 283, 284, 285, + 295, 0, 0, 0, 712, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 609, 281, 282, + 0, 0, 0, 295, 0, 0, 0, 713, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, - 611, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 715, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 711, 281, 282, 283, 284, 285, 286, + 0, 0, 0, 716, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, - 0, 0, 295, 0, 0, 0, 712, 281, 282, 283, + 0, 0, 295, 0, 0, 0, 727, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 0, 0, 714, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 728, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, - 0, 0, 715, 281, 282, 283, 284, 285, 286, 287, + 0, 0, 750, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 0, 0, 726, 281, 282, 283, 284, + 0, 295, 0, 0, 0, 852, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 0, 0, 0, 0, 295, 0, 0, 0, 750, 281, + 0, 0, 0, 0, 295, 0, 0, 0, 854, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, - 0, 851, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 856, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, - 295, 0, 0, 0, 853, 281, 282, 283, 284, 285, + 295, 0, 0, 0, 858, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 0, 0, 855, 281, 282, + 0, 0, 0, 295, 0, 0, 0, 958, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, - 857, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 0, 0, 858, 281, 282, 283, 284, 285, 286, - 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, - 0, 0, 295, 0, 0, 0, 959, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 445, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 0, 0, 0, 0, 295, 0, 476, 281, + 293, 294, 0, 0, 0, 0, 295, 0, 446, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 485, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 477, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 486, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 488, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 487, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, - 295, 0, 490, 281, 282, 283, 284, 285, 286, 287, + 295, 0, 489, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 491, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, - 0, 0, 295, 0, 494, 281, 282, 283, 284, 285, + 0, 0, 295, 0, 492, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 495, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 0, 0, 0, 0, 295, 0, 502, 281, 282, 283, + 0, 0, 0, 0, 295, 0, 496, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 549, 281, 282, + 294, 0, 0, 0, 0, 295, 0, 503, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 550, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 551, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, - 557, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 552, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 576, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 558, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, - 295, 0, 578, 281, 282, 283, 284, 285, 286, 287, + 295, 0, 579, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 580, 281, 282, 283, 284, 285, 286, + 0, 295, 0, 581, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, - 0, 0, 295, 0, 582, 281, 282, 283, 284, 285, + 0, 0, 295, 0, 583, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 584, 281, 282, 283, 284, + 0, 0, 0, 295, 0, 585, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 0, 0, 0, 0, 295, 0, 586, 281, 282, 283, + 0, 0, 0, 0, 295, 0, 587, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 588, 281, 282, + 294, 0, 0, 0, 0, 295, 0, 589, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 0, 0, 0, 0, 295, 0, 590, 281, + 293, 294, 0, 0, 0, 0, 295, 0, 591, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 592, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 593, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, - 594, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 595, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 596, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 597, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, - 295, 0, 600, 281, 282, 283, 284, 285, 286, 287, + 295, 0, 599, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 602, 281, 282, 283, 284, 285, 286, + 0, 295, 0, 603, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, - 0, 0, 295, 0, 604, 281, 282, 283, 284, 285, + 0, 0, 295, 0, 605, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 606, 281, 282, 283, 284, + 0, 0, 0, 295, 0, 607, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 0, 0, 0, 0, 295, 0, 608, 281, 282, 283, + 0, 0, 0, 0, 295, 0, 609, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 610, 281, 282, + 294, 0, 0, 0, 0, 295, 0, 611, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 0, 0, 0, 0, 295, 0, 661, 281, + 293, 294, 0, 0, 0, 0, 295, 0, 613, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 666, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 662, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, - 674, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 667, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 677, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 675, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, 678, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 682, 281, 282, 283, 284, 285, 286, + 0, 295, 0, 679, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, - 0, 0, 295, 0, 850, 281, 282, 283, 284, 285, + 0, 0, 295, 0, 683, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, - 0, 0, 0, 295, 0, 852, 281, 282, 283, 284, + 0, 0, 0, 295, 0, 851, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 0, 0, 0, 0, 295, 0, 854, 281, 282, 283, + 0, 0, 0, 0, 295, 0, 853, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 0, 0, 0, 0, 295, 0, 856, 281, 282, + 294, 0, 0, 0, 0, 295, 0, 855, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 0, 0, 0, 0, 295, 0, 862, 281, + 293, 294, 0, 0, 0, 0, 295, 0, 857, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 0, 0, 0, 0, 295, 0, 991, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 861, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, - 1010, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 990, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, - 0, 1019, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 1009, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, - 295, 0, 1143, 281, 282, 283, 284, 285, 286, 287, + 295, 0, 1018, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, - 0, 295, 0, 1186 + 0, 295, 0, 1140, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 1183, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295 }; static const yytype_int16 yycheck[] = { - 59, 187, 6, 274, 177, 1028, 6, 6, 3, 6, - 49, 184, 4, 4, 4, 5, 71, 4, 4, 0, - 71, 4, 5, 7, 4, 4, 640, 704, 4, 6, - 6, 6, 6, 206, 6, 13, 209, 7, 4, 71, - 71, 6, 4, 5, 49, 6, 36, 37, 38, 39, - 123, 124, 42, 36, 37, 38, 39, 6, 6, 42, - 134, 72, 133, 72, 6, 139, 139, 78, 79, 78, - 79, 6, 4, 5, 36, 37, 38, 39, 143, 56, - 42, 78, 147, 123, 124, 140, 123, 124, 4, 140, - 82, 83, 84, 85, 133, 56, 133, 6, 7, 708, - 140, 133, 133, 140, 36, 37, 38, 39, 140, 140, - 42, 134, 134, 117, 118, 119, 139, 139, 122, 123, - 100, 133, 126, 1146, 123, 124, 92, 93, 132, 113, - 141, 135, 141, 137, 138, 139, 140, 133, 142, 143, - 144, 145, 133, 147, 148, 149, 823, 761, 152, 141, - 140, 130, 131, 140, 140, 120, 135, 140, 137, 135, - 140, 347, 348, 142, 168, 169, 140, 137, 140, 123, - 124, 53, 120, 177, 123, 124, 92, 93, 449, 49, - 1203, 123, 124, 133, 179, 358, 140, 191, 192, 193, - 140, 195, 187, 133, 198, 199, 133, 201, 130, 131, - 140, 260, 261, 262, 263, 137, 379, 272, 212, 336, - 337, 338, 130, 131, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, - 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 133, 322, 872, 133, - 264, 31, 32, 8, 34, 134, 72, 133, 272, 135, - 139, 133, 78, 79, 274, 123, 124, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 140, 134, 46, 72, 7, 49, 139, 51, - 304, 78, 79, 133, 369, 123, 124, 49, 312, 7, - 140, 123, 124, 317, 138, 62, 63, 321, 322, 143, - 51, 139, 326, 147, 328, 329, 330, 139, 332, 333, - 334, 335, 336, 337, 338, 141, 72, 49, 335, 336, - 337, 338, 78, 79, 123, 124, 350, 351, 352, 353, - 354, 355, 347, 348, 7, 133, 139, 135, 141, 133, - 139, 7, 366, 367, 141, 369, 49, 371, 372, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 72, 140, 389, 72, 132, 392, 78, - 79, 391, 78, 79, 140, 165, 141, 167, 49, 110, - 111, 112, 113, 173, 133, 141, 135, 177, 133, 474, - 135, 46, 110, 111, 112, 113, 133, 72, 135, 130, - 131, 1035, 1099, 78, 79, 1102, 137, 133, 1105, 135, - 72, 496, 130, 131, 6, 72, 78, 79, 72, 140, - 444, 78, 79, 140, 78, 79, 4, 451, 272, 449, - 1059, 4, 1061, 450, 1063, 141, 72, 110, 111, 112, - 113, 4, 78, 79, 110, 111, 112, 113, 133, 72, - 474, 475, 133, 477, 478, 78, 79, 481, 482, 483, - 304, 6, 753, 754, 130, 131, 141, 139, 1165, 141, - 123, 124, 496, 123, 124, 499, 500, 321, 322, 141, - 6, 7, 506, 562, 141, 133, 139, 141, 141, 139, - 139, 72, 141, 1190, 518, 519, 1193, 78, 79, 1196, - 524, 133, 1199, 123, 124, 141, 133, 150, 135, 1138, - 125, 126, 127, 156, 135, 539, 540, 132, 141, 139, - 4, 141, 1219, 4, 1221, 369, 1223, 43, 140, 553, - 46, 555, 556, 49, 123, 124, 621, 180, 181, 5, - 130, 131, 562, 622, 1173, 133, 1175, 137, 1177, 133, - 139, 135, 141, 8, 1183, 345, 346, 133, 133, 135, - 141, 123, 124, 133, 354, 135, 651, 646, 123, 124, - 36, 37, 38, 39, 598, 599, 42, 139, 1207, 133, - 1209, 135, 1211, 133, 139, 123, 124, 672, 612, 613, - 614, 615, 616, 617, 618, 123, 124, 621, 133, 4, - 5, 139, 626, 7, 123, 124, 133, 123, 124, 633, - 4, 139, 697, 698, 699, 700, 133, 133, 135, 643, - 139, 133, 5, 135, 140, 123, 124, 651, 123, 124, - 474, 36, 37, 38, 39, 6, 133, 42, 482, 483, - 133, 139, 130, 131, 139, 6, 133, 135, 672, 137, - 140, 133, 496, 135, 142, 499, 12, 13, 6, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 697, 698, 699, 700, 132, 135, 133, - 137, 12, 13, 133, 133, 135, 141, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 140, 54, 43, - 56, 57, 46, 59, 60, 49, 140, 51, 732, 733, - 916, 133, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 133, 54, 135, 56, 57, 517, 59, 60, - 750, 87, 88, 89, 754, 130, 131, 133, 762, 135, - 135, 133, 137, 135, 133, 535, 770, 142, 133, 133, - 774, 135, 133, 133, 135, 135, 87, 88, 89, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 792, 139, - 133, 141, 132, 139, 139, 141, 141, 621, 49, 4, - 51, 6, 806, 807, 808, 141, 133, 4, 65, 66, - 67, 68, 135, 70, 818, 819, 6, 876, 822, 76, - 77, 140, 140, 446, 447, 140, 139, 651, 141, 135, - 141, 835, 836, 837, 123, 124, 125, 126, 127, 139, - 844, 141, 842, 132, 139, 849, 141, 140, 672, 116, + 59, 6, 274, 177, 1027, 6, 6, 3, 187, 4, + 184, 4, 4, 5, 4, 4, 4, 4, 4, 49, + 6, 6, 709, 6, 6, 641, 71, 4, 71, 7, + 6, 134, 206, 72, 6, 209, 139, 4, 5, 78, + 79, 0, 4, 6, 36, 37, 38, 39, 4, 5, + 42, 133, 705, 6, 133, 7, 13, 72, 140, 72, + 71, 140, 6, 78, 79, 78, 79, 133, 6, 36, + 37, 38, 39, 133, 140, 42, 49, 78, 130, 131, + 36, 37, 38, 39, 56, 137, 42, 82, 83, 84, + 85, 6, 6, 56, 7, 140, 133, 140, 135, 92, + 93, 43, 141, 133, 46, 92, 93, 49, 133, 51, + 100, 133, 117, 118, 119, 123, 124, 122, 123, 133, + 1143, 126, 133, 123, 124, 53, 141, 132, 141, 140, + 135, 139, 137, 138, 139, 140, 134, 142, 143, 144, + 145, 139, 147, 148, 149, 761, 141, 152, 140, 135, + 140, 140, 140, 130, 131, 140, 49, 140, 135, 137, + 137, 113, 143, 168, 169, 142, 147, 120, 347, 348, + 823, 133, 177, 140, 130, 131, 49, 1200, 450, 123, + 124, 137, 120, 179, 358, 133, 191, 192, 193, 49, + 195, 187, 133, 198, 199, 51, 201, 110, 111, 112, + 113, 260, 261, 262, 263, 379, 71, 212, 123, 124, + 336, 337, 338, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 871, 133, 31, 32, 264, + 34, 123, 124, 125, 126, 127, 46, 272, 133, 49, + 132, 51, 7, 6, 7, 140, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 272, 274, 125, 126, 127, 72, 123, 124, 304, + 132, 7, 78, 79, 72, 133, 133, 312, 135, 7, + 78, 79, 317, 72, 140, 140, 321, 322, 140, 78, + 79, 326, 5, 328, 329, 330, 140, 332, 333, 334, + 335, 336, 337, 338, 335, 336, 337, 338, 49, 134, + 133, 322, 135, 6, 139, 350, 351, 352, 353, 354, + 355, 347, 348, 36, 37, 38, 39, 49, 133, 42, + 135, 366, 367, 6, 369, 141, 371, 372, 123, 124, + 1057, 46, 1059, 141, 1061, 110, 111, 112, 113, 133, + 385, 135, 141, 130, 131, 140, 391, 140, 369, 394, + 4, 165, 150, 167, 4, 130, 131, 4, 156, 173, + 123, 124, 137, 177, 110, 111, 112, 113, 133, 133, + 135, 393, 110, 111, 112, 113, 139, 1033, 141, 133, + 72, 135, 180, 181, 130, 131, 78, 79, 123, 124, + 130, 131, 130, 131, 133, 135, 138, 137, 62, 63, + 445, 143, 142, 1096, 139, 147, 1099, 452, 1135, 1102, + 451, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 6, 7, 134, 450, 132, + 475, 476, 139, 478, 479, 134, 133, 482, 483, 484, + 139, 753, 754, 1170, 72, 1172, 133, 1174, 135, 141, + 78, 79, 497, 1180, 475, 500, 501, 43, 133, 133, + 46, 135, 507, 49, 72, 6, 565, 123, 124, 1162, + 78, 79, 4, 5, 519, 520, 497, 1204, 135, 1206, + 525, 1208, 4, 72, 140, 123, 124, 4, 140, 78, + 79, 133, 72, 135, 1187, 540, 541, 1190, 78, 79, + 1193, 139, 8, 1196, 36, 37, 38, 39, 133, 554, + 42, 556, 557, 141, 72, 133, 133, 135, 123, 124, + 78, 79, 72, 1216, 623, 1218, 133, 1220, 78, 79, + 272, 345, 346, 141, 139, 133, 141, 123, 124, 72, + 354, 7, 133, 565, 135, 78, 79, 133, 647, 123, + 124, 8, 141, 135, 140, 137, 601, 602, 133, 123, + 124, 141, 304, 6, 133, 139, 135, 141, 4, 133, + 615, 616, 617, 618, 619, 620, 140, 622, 6, 321, + 322, 6, 627, 141, 123, 124, 123, 124, 133, 634, + 135, 141, 65, 66, 67, 68, 139, 70, 141, 644, + 139, 622, 139, 76, 77, 5, 133, 652, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 123, 124, 123, 124, 132, 369, 673, 123, + 124, 652, 123, 124, 139, 141, 141, 133, 139, 135, + 139, 133, 140, 135, 133, 139, 135, 133, 139, 447, + 448, 133, 673, 698, 699, 700, 701, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 865, 139, 135, 141, 132, 139, 864, 141, 1055, - 139, 137, 141, 697, 698, 699, 700, 881, 139, 649, - 141, 139, 95, 141, 888, 889, 139, 6, 141, 893, - 139, 139, 141, 141, 1067, 139, 6, 141, 902, 903, - 139, 139, 141, 141, 139, 139, 141, 141, 912, 139, - 139, 141, 141, 140, 6, 912, 135, 4, 140, 137, - 6, 916, 5, 132, 694, 695, 696, 7, 135, 933, - 140, 7, 7, 134, 7, 141, 6, 941, 141, 92, - 140, 945, 946, 139, 941, 134, 134, 12, 13, 6, - 4, 136, 139, 95, 7, 1020, 7, 7, 962, 7, - 95, 7, 7, 95, 7, 7, 1139, 7, 134, 973, - 134, 134, 134, 141, 141, 7, 137, 7, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 992, 54, - 8, 56, 57, 7, 59, 60, 137, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 1012, 133, - 133, 1015, 132, 1017, 140, 6, 1020, 4, 6, 136, - 1024, 6, 87, 88, 89, 1029, 6, 6, 135, 7, - 6, 120, 49, 7, 7, 51, 659, 660, 7, 662, - 140, 664, 665, 7, 7, 668, 669, 7, 7, 7, - 7, 7, 822, 7, 1058, 7, 1060, 7, 1062, 4, - 1055, 140, 6, 6, 133, 6, 1070, 49, 6, 6, - 4, 4, 4, 4, 1078, 1079, 141, 6, 6, 140, - 7, 133, 1086, 6, 140, 134, 6, 134, 6, 1093, - 6, 1095, 6, 716, 717, 718, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 137, 1115, 140, 883, 132, 885, 134, 140, 140, 6, - 5, 140, 1126, 6, 6, 1129, 1185, 140, 1132, 91, - 6, 137, 1136, 7, 6, 4, 6, 136, 6, 6, - 1144, 5, 95, 1147, 6, 6, 6, 917, 6, 919, - 6, 921, 6, 6, 1213, 778, 1215, 6, 6, 6, - 6, 784, 6, 6, 6, 6, 6, 139, 4, 140, - 793, 794, 795, 6, 1233, 798, 799, 800, 801, 802, - 803, 804, 6, 5, 7, 6, 137, 6, 47, 6, - 6, 3, 4, 6, 140, 818, 1020, 9, 10, 11, - 6, 141, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 140, 7, 140, 6, 140, 140, 6, - 134, 43, 6, 90, 6, 6, 6, 6, 93, 140, - 863, 140, 6, 5, 141, 6, 61, 140, 6, 139, - 6, 6, 6, 65, 66, 67, 68, 69, 70, 6, - 6, 6, 141, 5, 76, 77, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 6, 6, 6, 6, 132, 6, 6, 139, 1058, 140, - 1060, 5, 1062, 6, 106, 107, 108, 109, 6, 6, - 6, 140, 140, 140, 6, 140, 140, 6, 140, 140, - 140, 123, 124, 936, 141, 6, 128, 6, 6, 6, - 769, 133, 1115, 3, 947, 3, 138, 3, 4, 141, - 868, -1, -1, 9, 10, 11, -1, -1, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - -1, -1, -1, -1, -1, -1, -1, 43, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 12, 13, - -1, -1, -1, -1, -1, -1, 1009, -1, -1, 65, - 66, 67, 68, 69, 70, -1, -1, -1, -1, -1, - 76, 77, -1, -1, -1, -1, -1, -1, -1, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, - 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, - 106, 107, 108, 109, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1066, -1, -1, -1, 123, 124, -1, - -1, -1, 128, 87, 88, 89, -1, 133, -1, -1, - -1, -1, 138, -1, 140, -1, -1, -1, -1, -1, - -1, -1, -1, 3, 4, -1, -1, -1, -1, 9, - 10, 11, -1, 1106, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, -1, -1, 141, -1, -1, - -1, -1, -1, 43, -1, -1, -1, -1, -1, -1, - 12, 13, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 65, 66, 67, 68, 69, - 70, -1, -1, -1, -1, -1, 76, 77, -1, -1, - -1, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, -1, 54, -1, 56, 57, -1, 59, 60, -1, - -1, -1, -1, -1, -1, -1, 106, 107, 108, 109, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 123, 124, 87, 88, 89, 128, -1, - -1, -1, -1, 133, -1, 3, 4, -1, 138, -1, - 140, 9, 10, 11, -1, -1, 14, 15, 16, 17, + 127, 123, 124, 133, 133, 132, 135, 698, 699, 700, + 701, 123, 124, 133, 141, 123, 124, 139, 133, 734, + 735, 140, 133, 133, 135, 135, 915, 139, 133, 133, + 135, 139, 133, 140, 518, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 762, 139, 133, + 141, 132, 536, 133, 139, 770, 141, 4, 750, 774, + 6, 140, 754, 475, 139, 139, 141, 141, 130, 131, + 135, 483, 484, 135, 49, 137, 51, 792, 137, 139, + 142, 141, 139, 6, 141, 497, 140, 139, 500, 141, + 140, 806, 807, 808, 139, 139, 141, 141, 139, 139, + 141, 141, 140, 818, 819, 135, 875, 822, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 135, + 835, 836, 837, 132, 139, 139, 141, 141, 140, 4, + 845, 6, 139, 95, 141, 850, 6, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 139, 6, 141, 864, + 132, 843, 863, 139, 4, 141, 8, 135, 139, 139, + 141, 141, 6, 140, 1053, 880, 650, 139, 139, 141, + 141, 5, 887, 888, 139, 132, 141, 892, 139, 137, + 141, 1065, 7, 135, 140, 7, 901, 902, 7, 134, + 141, 7, 660, 661, 6, 663, 911, 665, 666, 141, + 911, 669, 670, 92, 140, 4, 139, 134, 134, 915, + 622, 695, 696, 697, 139, 6, 4, 932, 136, 95, + 7, 7, 7, 7, 95, 940, 7, 7, 95, 940, + 945, 946, 7, 7, 7, 134, 134, 134, 134, 141, + 652, 141, 137, 7, 7, 7, 961, 137, 133, 717, + 718, 719, 1136, 133, 140, 6, 6, 972, 6, 136, + 6, 673, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 991, 6, 135, 7, + 132, 6, 134, 120, 49, 7, 698, 699, 700, 701, + 7, 51, 7, 140, 7, 7, 1011, 7, 7, 1014, + 7, 1016, 7, 7, 1019, 7, 7, 7, 1023, 4, + 778, 140, 6, 1028, 6, 133, 784, 6, 49, 6, + 6, 4, 4, 4, 137, 793, 794, 795, 1019, 6, + 798, 799, 800, 801, 802, 803, 804, 6, 822, 4, + 6, 1056, 140, 1058, 133, 1060, 7, 1053, 12, 13, + 818, 134, 6, 1068, 6, 137, 6, 6, 6, 6, + 5, 1076, 1077, 140, 140, 6, 6, 91, 1083, 140, + 140, 140, 140, 6, 4, 1090, 7, 1092, 6, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 4, + 54, 136, 56, 57, 862, 59, 60, 1112, 882, 6, + 884, 6, 6, 5, 95, 6, 6, 6, 1123, 6, + 6, 1126, 6, 1182, 1129, 6, 6, 6, 1133, 6, + 6, 6, 6, 87, 88, 89, 1141, 6, 6, 1144, + 6, 139, 916, 6, 918, 6, 920, 140, 7, 6, + 137, 1210, 6, 1212, 5, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 47, + 6, 1230, 6, 132, 6, 140, 140, 935, 141, 140, + 61, 6, 140, 7, 90, 6, 6, 141, 140, 947, + 3, 4, 93, 140, 6, 6, 9, 10, 11, 6, + 6, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 6, 140, 6, 5, 141, 6, 61, 140, + 43, 6, 139, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 6, 6, 6, + 1008, 132, 65, 66, 67, 68, 69, 70, 6, 6, + 6, 5, 5, 76, 77, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 141, + 140, 6, 1056, 132, 1058, 140, 1060, 140, 6, 139, + 139, 6, 141, 106, 107, 108, 109, 140, 6, 6, + 140, 6, 140, 140, 6, 140, 1064, 6, 6, 140, + 123, 124, 141, 6, 6, 128, 6, 1019, 6, 6, + 133, 6, 6, 1112, 769, 138, 3, 3, 141, 867, + -1, -1, -1, -1, -1, 3, 4, -1, -1, -1, + -1, 9, 10, 11, -1, 1103, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, - -1, -1, -1, -1, -1, 43, -1, -1, -1, 141, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 43, -1, -1, -1, -1, + -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, 67, - 68, 69, 70, -1, 3, 4, -1, -1, 76, 77, - 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, -1, -1, 106, 107, + 68, 69, 70, -1, -1, -1, -1, -1, 76, 77, + -1, -1, -1, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, -1, 54, -1, 56, 57, -1, 59, + 60, -1, -1, -1, -1, -1, -1, -1, 106, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 123, 124, -1, -1, -1, - 128, -1, -1, -1, -1, 133, -1, 3, 4, 5, + -1, -1, -1, -1, -1, 123, 124, 87, 88, 89, + 128, -1, -1, -1, -1, 133, -1, 3, 4, -1, 138, -1, 140, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - 36, 37, 38, 39, -1, -1, 42, 106, 107, 108, - 109, -1, -1, -1, 12, 13, -1, -1, -1, -1, - -1, -1, -1, -1, 123, 124, -1, -1, -1, 128, - -1, -1, -1, -1, 133, -1, -1, 136, -1, 138, - -1, 140, -1, -1, -1, 43, 44, 45, 46, 47, + -1, -1, -1, -1, -1, -1, -1, 43, -1, -1, + -1, 141, -1, -1, 12, 13, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, + 66, 67, 68, 69, 70, -1, -1, -1, -1, -1, + 76, 77, -1, -1, -1, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, -1, -1, -1, 106, 107, 108, 109, -1, -1, -1, -1, -1, -1, - 6, -1, -1, -1, -1, -1, -1, 123, 124, 87, + -1, -1, -1, -1, -1, -1, -1, 123, 124, 87, 88, 89, 128, -1, -1, -1, -1, 133, -1, 3, 4, -1, 138, -1, 140, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, -1, -1, -1, 3, 4, 12, 13, -1, -1, - 9, 10, 11, 141, -1, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, -1, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, -1, 54, -1, - 56, 57, -1, 59, 60, -1, -1, -1, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 106, 107, 108, 109, 132, -1, -1, -1, - -1, 87, 88, 89, -1, -1, -1, -1, -1, 123, + 34, -1, -1, -1, -1, -1, -1, -1, -1, 43, + -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 65, 66, 67, 68, 69, 70, -1, 3, 4, + -1, -1, 76, 77, 9, 10, 11, -1, -1, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + -1, -1, 106, 107, 108, 109, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 123, 124, -1, -1, -1, 128, -1, -1, -1, -1, 133, - -1, -1, 136, -1, 138, -1, 140, 106, 107, 108, - 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 123, 124, -1, -1, -1, 128, - -1, -1, -1, -1, 133, 141, 3, 4, 5, 138, - 7, 140, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, -1, 36, - 37, 38, 39, -1, -1, 42, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 3, 4, -1, -1, -1, - -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, - -1, -1, -1, -1, -1, 43, -1, -1, -1, -1, - -1, -1, -1, 100, -1, -1, -1, -1, -1, 106, - 107, 108, 109, 110, 111, 112, 113, 65, 66, 67, - 68, 69, 70, -1, -1, -1, 123, 124, 76, 77, - -1, 128, -1, 130, 131, -1, 133, -1, 135, -1, - 137, 138, -1, 6, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 106, 107, - 108, 109, 6, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 123, 124, -1, -1, -1, - 128, 3, 4, 5, -1, 133, -1, 9, 10, 11, - 138, -1, 14, 15, 16, 17, 18, 19, 20, 21, + -1, 3, 4, 5, 138, -1, 140, 9, 10, 11, + -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, -1, 36, 37, 38, 39, 3, 4, - 42, -1, -1, -1, 9, 10, 11, -1, -1, 14, + 32, 33, 34, -1, 36, 37, 38, 39, -1, -1, + 42, 106, 107, 108, 109, -1, -1, -1, 12, 13, + -1, -1, -1, -1, -1, -1, -1, -1, 123, 124, + -1, -1, -1, 128, -1, -1, -1, -1, 133, -1, + -1, 136, -1, 138, -1, 140, -1, -1, -1, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, + 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, + -1, -1, -1, -1, 106, 107, 108, 109, -1, -1, + -1, -1, -1, -1, 6, -1, -1, -1, -1, -1, + -1, 123, 124, 87, 88, 89, 128, -1, -1, -1, + -1, 133, -1, 3, 4, -1, 138, -1, 140, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, -1, -1, -1, 3, 4, + 12, 13, -1, -1, 9, 10, 11, 141, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 6, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 106, 107, 108, 109, 132, 6, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 123, 124, -1, -1, 61, 128, -1, 6, -1, - -1, 133, -1, -1, -1, -1, 138, -1, -1, -1, - -1, 106, 107, 108, 109, -1, -1, 6, -1, -1, + -1, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, -1, 54, -1, 56, 57, -1, 59, 60, -1, + -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 106, 107, 108, 109, + 132, -1, -1, -1, -1, 87, 88, 89, -1, -1, + -1, -1, -1, 123, 124, -1, -1, -1, 128, -1, + -1, -1, -1, 133, -1, -1, 136, -1, 138, -1, + 140, 106, 107, 108, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 123, 124, - -1, -1, -1, 128, -1, -1, 6, -1, 133, -1, - -1, -1, -1, 138, -1, -1, -1, -1, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 6, -1, -1, -1, 132, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 6, -1, -1, -1, 132, -1, 114, 115, 116, + -1, -1, -1, 128, -1, -1, -1, -1, 133, 141, + 3, 4, 5, 138, 7, 140, 9, 10, 11, -1, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, -1, 36, 37, 38, 39, -1, -1, 42, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 3, + 4, -1, -1, -1, -1, 9, 10, 11, -1, -1, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, -1, -1, -1, -1, -1, -1, -1, -1, 43, + -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, + -1, -1, -1, 106, 107, 108, 109, 110, 111, 112, + 113, 65, 66, 67, 68, 69, 70, -1, -1, -1, + 123, 124, 76, 77, -1, 128, -1, 130, 131, -1, + 133, -1, 135, -1, 137, 138, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 106, 107, 108, 109, 6, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 123, + 124, -1, -1, -1, 128, 3, 4, 5, -1, 133, + -1, 9, 10, 11, 138, -1, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, -1, 36, 37, + 38, 39, 3, 4, 42, 12, 13, -1, 9, 10, + 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, -1, -1, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, -1, 54, -1, 56, + 57, 6, 59, 60, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 106, 107, + 108, 109, 132, -1, -1, -1, -1, -1, -1, 6, + 87, 88, 89, -1, -1, 123, 124, -1, -1, -1, + 128, -1, -1, -1, -1, 133, -1, -1, 6, -1, + 138, -1, -1, -1, -1, 106, 107, 108, 109, 12, + 13, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 123, 124, -1, -1, -1, 128, -1, -1, + -1, 6, 133, -1, 141, -1, -1, 138, -1, -1, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 6, 54, -1, 56, 57, -1, 59, 60, -1, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 6, -1, -1, -1, 132, -1, -1, + -1, -1, -1, -1, 87, 88, 89, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 6, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 6, -1, -1, -1, 132, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 6, - -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 6, -1, - -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 6, -1, -1, -1, 132, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 6, -1, -1, -1, 132, -1, 114, + 6, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, 8, -1, -1, 132, 114, 115, + 125, 126, 127, 6, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, -1, 8, -1, -1, 132, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, 8, -1, -1, 132, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - -1, 8, -1, -1, 132, -1, -1, -1, -1, -1, - -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 8, -1, -1, -1, - 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 8, -1, -1, -1, 132, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, -1, -1, -1, -1, 132, 114, + 126, 127, 6, -1, -1, -1, 132, -1, -1, -1, + -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 6, -1, -1, -1, 132, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, 114, 115, + 125, 126, 127, 6, -1, -1, -1, 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, -1, -1, -1, -1, 132, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, - 132, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, 0, 1, -1, 132, - 4, -1, -1, -1, -1, -1, -1, -1, 12, 13, + 126, 127, -1, -1, 8, -1, 132, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, 35, -1, -1, -1, -1, 40, 41, 141, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, - 54, 55, 56, 57, 58, 59, 60, -1, -1, -1, - 64, 65, 66, 67, 68, 69, 70, -1, 72, 73, - 74, 75, 76, 77, -1, -1, 80, 81, 4, -1, - -1, -1, 86, 87, 88, 89, 12, 13, 92, -1, - 94, -1, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, -1, -1, -1, -1, -1, -1, -1, 35, - -1, -1, -1, -1, 40, 41, -1, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, -1, 54, 55, - 56, 57, 58, 59, 60, -1, -1, -1, 64, 65, - 66, 67, 68, 69, 70, -1, 72, 73, 74, 75, - 76, 77, 12, 13, 80, 81, -1, -1, -1, -1, - 86, 87, 88, 89, -1, -1, 92, -1, 94, -1, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - -1, -1, -1, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, -1, 54, -1, 56, 57, -1, 59, - 60, -1, -1, -1, -1, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, 87, 88, 89, - 139, -1, 141, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, 139, -1, - 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, 139, -1, 141, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, -1, -1, 141, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, -1, -1, 141, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - -1, -1, 141, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, - 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, -1, -1, 141, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, -1, -1, 141, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, -1, -1, 141, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - -1, -1, 141, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, - 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, -1, -1, 141, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, -1, -1, 141, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, -1, -1, 141, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - -1, -1, 141, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, - 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, -1, -1, 141, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, -1, -1, 141, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, -1, -1, 141, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - -1, -1, 141, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, + 123, 124, 125, 126, 127, 8, -1, -1, -1, 132, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 8, -1, -1, -1, 132, -1, + -1, -1, -1, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 8, -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, - 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, + -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 8, -1, -1, -1, 132, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 8, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, -1, -1, 141, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, -1, -1, 141, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, -1, -1, 141, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - -1, -1, 141, 114, 115, 116, 117, 118, 119, 120, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, - 141, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, 134, -1, -1, -1, -1, 139, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, 139, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, 139, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, 139, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, 139, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, 139, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, 139, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, 139, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, 139, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, 139, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, + -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, -1, 139, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, -1, -1, -1, - -1, -1, 139, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, -1, 139, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, - -1, -1, -1, -1, 139, 114, 115, 116, 117, 118, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, 0, 1, -1, 132, 4, + -1, -1, -1, -1, -1, -1, -1, 12, 13, -1, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + 35, -1, -1, -1, -1, 40, 41, 141, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, -1, 54, + 55, 56, 57, 58, 59, 60, -1, -1, -1, 64, + 65, 66, 67, 68, 69, 70, -1, 72, 73, 74, + 75, 76, 77, -1, -1, 80, 81, 4, -1, -1, + -1, 86, 87, 88, 89, 12, 13, 92, -1, 94, + -1, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, -1, -1, -1, -1, -1, -1, -1, 35, -1, + -1, -1, -1, 40, 41, -1, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, -1, 54, 55, 56, + 57, 58, 59, 60, -1, -1, -1, 64, 65, 66, + 67, 68, 69, 70, -1, 72, 73, 74, 75, 76, + 77, 12, 13, 80, 81, -1, -1, -1, -1, 86, + 87, 88, 89, -1, -1, 92, -1, 94, -1, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, -1, + -1, -1, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, -1, 54, -1, 56, 57, -1, 59, 60, + -1, -1, -1, -1, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, 87, 88, 89, 139, + -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, 139, -1, 141, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, -1, -1, 141, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, -1, -1, 141, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, -1, -1, 141, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, + -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, -1, -1, 141, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, -1, -1, 141, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, -1, -1, 141, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, -1, -1, 141, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, + -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, -1, -1, 141, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, -1, -1, 141, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, -1, -1, 141, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, -1, -1, 141, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, + -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, -1, -1, 141, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, -1, -1, 141, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, -1, -1, 141, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, -1, -1, 141, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, + -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, -1, -1, 141, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, -1, -1, 141, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, -1, -1, 141, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, -1, -1, 141, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, + -1, 141, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, 134, -1, -1, -1, -1, 139, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, 139, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, 139, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, 139, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, 139, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, 139, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, 139, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, 139, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, 139, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, 139, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, 139, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, 139, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, 139, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, 139, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, 139, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, 139, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, 139, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, 139, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, 139, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, 139, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, -1, -1, -1, 139, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + -1, -1, -1, 139, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, 139, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, -1, 139, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + -1, 139, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + 132, -1, -1, -1, 136, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, -1, - 139, 114, 115, 116, 117, 118, 119, 120, 121, 122, + -1, -1, -1, 132, -1, -1, -1, 136, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, + 136, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, 136, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, @@ -2604,15 +2613,6 @@ static const yytype_int16 yycheck[] = 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, 136, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, -1, -1, -1, -1, 132, -1, -1, -1, - 136, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, - -1, -1, -1, 136, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, - -1, -1, 132, -1, -1, -1, 136, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, -1, -1, -1, -1, 132, -1, 134, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, 134, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, 134, @@ -2708,7 +2708,11 @@ static const yytype_int16 yycheck[] = 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, 132, -1, 134, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, - -1, 132, -1, 134 + -1, 132, -1, 134, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, 132, -1, 134, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, -1, + -1, -1, -1, 132 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -2753,43 +2757,43 @@ static const yytype_uint8 yystos[] = 140, 140, 140, 123, 124, 133, 173, 200, 140, 171, 172, 173, 203, 203, 4, 6, 135, 135, 173, 140, 172, 135, 135, 6, 198, 198, 198, 137, 198, 140, - 95, 198, 198, 198, 6, 173, 6, 173, 6, 135, - 198, 4, 140, 150, 6, 198, 198, 198, 198, 198, + 95, 198, 198, 198, 6, 135, 137, 173, 6, 173, + 6, 135, 198, 4, 140, 150, 6, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, - 198, 198, 198, 198, 198, 198, 198, 4, 209, 209, - 209, 209, 198, 5, 135, 134, 7, 113, 205, 136, - 7, 165, 166, 137, 7, 135, 6, 198, 198, 198, + 198, 198, 198, 198, 198, 198, 198, 198, 198, 209, + 209, 209, 209, 198, 5, 135, 134, 7, 113, 205, + 136, 7, 165, 166, 137, 7, 135, 6, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, - 198, 198, 6, 134, 139, 139, 134, 135, 140, 198, - 204, 8, 125, 139, 141, 134, 134, 198, 134, 141, - 134, 134, 198, 141, 134, 134, 140, 141, 205, 125, - 7, 198, 134, 198, 198, 198, 7, 198, 198, 198, - 168, 198, 210, 168, 168, 168, 134, 139, 139, 139, - 200, 200, 172, 172, 139, 198, 198, 198, 198, 43, - 46, 49, 51, 170, 183, 139, 173, 141, 6, 7, - 7, 6, 198, 198, 141, 205, 141, 198, 198, 134, - 134, 134, 92, 139, 173, 140, 8, 134, 136, 141, - 141, 198, 136, 166, 198, 4, 82, 83, 84, 85, - 141, 153, 157, 160, 162, 163, 134, 136, 134, 136, - 134, 136, 134, 136, 134, 136, 134, 136, 134, 136, - 134, 136, 134, 136, 134, 136, 134, 136, 139, 139, - 134, 136, 134, 136, 134, 136, 134, 136, 134, 136, - 134, 136, 139, 139, 139, 139, 139, 139, 135, 137, - 134, 139, 139, 134, 134, 6, 139, 198, 203, 203, - 141, 7, 137, 165, 166, 210, 198, 6, 4, 4, - 140, 207, 136, 8, 6, 120, 147, 205, 198, 7, - 136, 140, 198, 198, 198, 204, 198, 204, 95, 7, - 7, 134, 7, 95, 7, 7, 134, 95, 7, 7, - 205, 141, 140, 198, 134, 7, 141, 134, 134, 198, - 141, 141, 134, 134, 134, 134, 134, 137, 200, 198, - 198, 141, 141, 198, 139, 139, 139, 140, 140, 140, - 140, 72, 78, 79, 193, 194, 200, 141, 180, 198, - 198, 136, 136, 141, 136, 136, 7, 7, 7, 137, - 198, 141, 198, 198, 7, 137, 136, 137, 166, 209, - 141, 154, 133, 133, 140, 164, 6, 198, 198, 198, - 198, 198, 198, 198, 198, 198, 4, 205, 209, 198, + 198, 198, 198, 6, 134, 139, 139, 134, 135, 140, + 198, 204, 8, 125, 139, 141, 134, 134, 198, 134, + 141, 134, 134, 198, 141, 134, 134, 140, 141, 205, + 125, 7, 198, 134, 198, 198, 198, 7, 198, 198, + 198, 168, 198, 210, 168, 168, 168, 134, 139, 139, + 139, 200, 200, 172, 172, 139, 198, 198, 198, 198, + 43, 46, 49, 51, 170, 183, 139, 173, 141, 6, + 7, 7, 6, 198, 198, 141, 205, 141, 198, 198, + 134, 134, 134, 92, 139, 173, 140, 8, 134, 136, + 198, 4, 141, 141, 198, 136, 166, 198, 4, 82, + 83, 84, 85, 141, 153, 157, 160, 162, 163, 134, + 136, 134, 136, 134, 136, 134, 136, 134, 136, 134, + 136, 134, 136, 134, 136, 134, 136, 134, 136, 134, + 136, 139, 139, 134, 136, 134, 136, 134, 136, 134, + 136, 134, 136, 134, 136, 139, 139, 139, 139, 139, + 139, 134, 139, 139, 134, 134, 6, 139, 198, 203, + 203, 141, 7, 137, 165, 166, 210, 198, 6, 4, + 4, 140, 207, 136, 8, 6, 120, 147, 205, 198, + 7, 136, 140, 198, 198, 198, 204, 198, 204, 95, + 7, 7, 134, 7, 95, 7, 7, 134, 95, 7, + 7, 205, 141, 140, 198, 134, 7, 141, 134, 134, + 198, 141, 141, 134, 134, 134, 134, 134, 137, 200, + 198, 198, 141, 141, 198, 139, 139, 139, 140, 140, + 140, 140, 72, 78, 79, 193, 194, 200, 141, 180, + 198, 198, 136, 136, 141, 136, 136, 7, 7, 7, + 137, 198, 141, 198, 198, 7, 137, 136, 136, 137, + 166, 209, 141, 154, 133, 133, 140, 164, 6, 198, + 198, 198, 198, 198, 198, 198, 198, 205, 209, 198, 136, 6, 6, 136, 4, 92, 93, 198, 6, 6, 6, 7, 135, 206, 208, 6, 198, 120, 209, 134, 139, 200, 205, 141, 8, 49, 203, 203, 7, 203, @@ -2799,47 +2803,46 @@ static const yytype_uint8 yystos[] = 200, 200, 200, 205, 205, 205, 205, 6, 140, 133, 141, 194, 139, 193, 6, 6, 6, 6, 49, 6, 6, 203, 203, 203, 4, 139, 8, 8, 134, 4, - 4, 6, 4, 6, 133, 198, 198, 202, 203, 140, - 134, 136, 134, 136, 134, 136, 134, 136, 136, 134, - 134, 134, 134, 165, 7, 165, 166, 137, 7, 6, - 206, 198, 139, 141, 6, 6, 147, 198, 6, 141, - 198, 140, 6, 56, 6, 56, 203, 6, 140, 140, - 6, 6, 203, 140, 6, 6, 141, 5, 198, 203, - 203, 203, 62, 63, 203, 203, 203, 203, 203, 203, - 203, 6, 7, 198, 198, 198, 140, 139, 141, 139, - 141, 139, 141, 141, 141, 141, 141, 198, 203, 198, - 198, 200, 141, 140, 6, 6, 91, 198, 198, 198, - 6, 7, 166, 151, 198, 139, 139, 139, 141, 152, - 198, 137, 203, 210, 198, 6, 4, 207, 6, 136, - 206, 209, 139, 136, 198, 200, 200, 6, 198, 198, - 6, 198, 5, 139, 6, 6, 95, 169, 198, 198, - 4, 6, 6, 6, 6, 6, 6, 6, 198, 210, - 141, 134, 139, 141, 172, 200, 6, 184, 200, 6, - 185, 200, 6, 186, 6, 6, 6, 6, 141, 139, - 134, 141, 139, 198, 203, 139, 141, 8, 141, 134, - 140, 198, 210, 134, 139, 198, 198, 203, 140, 139, - 141, 4, 6, 6, 6, 7, 6, 137, 6, 198, - 141, 6, 6, 141, 141, 141, 5, 198, 47, 6, - 6, 6, 6, 6, 6, 140, 198, 141, 139, 140, - 139, 140, 139, 140, 6, 203, 7, 140, 198, 141, - 90, 198, 198, 205, 6, 6, 155, 198, 139, 139, - 202, 198, 6, 134, 206, 93, 139, 6, 6, 6, - 6, 6, 139, 140, 172, 139, 141, 198, 200, 193, - 198, 200, 193, 198, 200, 193, 139, 141, 203, 173, - 141, 198, 141, 141, 141, 140, 198, 198, 141, 6, - 198, 5, 198, 141, 198, 141, 139, 141, 141, 139, - 141, 141, 139, 141, 203, 6, 61, 141, 181, 140, - 6, 6, 152, 134, 139, 6, 140, 139, 139, 141, - 141, 6, 187, 198, 6, 6, 188, 198, 6, 6, - 189, 198, 6, 141, 198, 193, 173, 141, 158, 198, - 202, 198, 5, 140, 141, 140, 141, 140, 141, 6, - 6, 141, 141, 182, 6, 140, 134, 141, 141, 139, - 193, 6, 190, 193, 6, 191, 193, 6, 192, 193, - 156, 209, 161, 140, 6, 5, 141, 140, 141, 140, - 141, 140, 141, 139, 141, 140, 202, 141, 6, 193, - 6, 193, 6, 193, 209, 6, 159, 209, 141, 6, - 141, 141, 141, 139, 141, 6, 6, 6, 6, 209, - 6 + 4, 137, 6, 4, 6, 133, 198, 198, 202, 203, + 140, 134, 136, 134, 136, 134, 136, 134, 136, 134, + 134, 134, 165, 7, 165, 166, 137, 7, 6, 206, + 198, 139, 141, 6, 6, 147, 198, 6, 141, 198, + 140, 6, 56, 6, 56, 203, 6, 140, 140, 6, + 6, 203, 140, 6, 6, 141, 5, 198, 203, 203, + 203, 62, 63, 203, 203, 203, 203, 203, 203, 203, + 6, 7, 198, 198, 198, 140, 139, 141, 139, 141, + 139, 141, 141, 141, 141, 141, 198, 203, 198, 198, + 200, 141, 140, 6, 6, 91, 198, 198, 198, 6, + 7, 4, 166, 151, 198, 139, 139, 139, 141, 152, + 198, 203, 210, 198, 6, 4, 207, 6, 136, 206, + 209, 139, 136, 198, 200, 200, 6, 198, 198, 6, + 198, 5, 139, 6, 6, 95, 169, 198, 198, 4, + 6, 6, 6, 6, 6, 6, 6, 198, 210, 141, + 134, 139, 141, 172, 200, 6, 184, 200, 6, 185, + 200, 6, 186, 6, 6, 6, 6, 141, 139, 134, + 141, 139, 198, 203, 139, 141, 8, 141, 134, 140, + 198, 210, 134, 139, 198, 198, 203, 140, 139, 141, + 6, 6, 6, 7, 6, 137, 6, 198, 141, 6, + 6, 141, 141, 141, 5, 198, 47, 6, 6, 6, + 6, 6, 6, 140, 198, 141, 139, 140, 139, 140, + 139, 140, 6, 203, 7, 140, 198, 141, 90, 198, + 198, 205, 6, 6, 155, 198, 139, 139, 202, 198, + 6, 206, 93, 139, 6, 6, 6, 6, 6, 139, + 140, 172, 139, 141, 198, 200, 193, 198, 200, 193, + 198, 200, 193, 139, 141, 203, 173, 141, 198, 141, + 141, 141, 140, 198, 198, 141, 6, 198, 5, 198, + 141, 198, 141, 139, 141, 141, 139, 141, 141, 139, + 141, 203, 6, 61, 141, 181, 140, 6, 6, 152, + 134, 139, 6, 140, 139, 139, 141, 141, 6, 187, + 198, 6, 6, 188, 198, 6, 6, 189, 198, 6, + 141, 198, 193, 173, 141, 158, 198, 202, 198, 5, + 140, 141, 140, 141, 140, 141, 6, 6, 141, 141, + 182, 6, 140, 134, 141, 141, 139, 193, 6, 190, + 193, 6, 191, 193, 6, 192, 193, 156, 209, 161, + 140, 6, 5, 141, 140, 141, 140, 141, 140, 141, + 139, 141, 140, 202, 141, 6, 193, 6, 193, 6, + 193, 209, 6, 159, 209, 141, 6, 141, 141, 141, + 139, 141, 6, 6, 6, 6, 209, 6 }; #define yyerrok (yyerrstatus = 0) @@ -3654,96 +3657,96 @@ yyreduce: switch (yyn) { case 3: -#line 137 "Gmsh.y" +#line 138 "Gmsh.y" { yyerrok; return 1; ;} break; case 6: -#line 148 "Gmsh.y" +#line 149 "Gmsh.y" { return 1; ;} break; case 7: -#line 149 "Gmsh.y" +#line 150 "Gmsh.y" { return 1; ;} break; case 8: -#line 150 "Gmsh.y" +#line 151 "Gmsh.y" { return 1; ;} break; case 9: -#line 151 "Gmsh.y" +#line 152 "Gmsh.y" { return 1; ;} break; case 10: -#line 152 "Gmsh.y" +#line 153 "Gmsh.y" { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 11: -#line 153 "Gmsh.y" +#line 154 "Gmsh.y" { return 1; ;} break; case 12: -#line 154 "Gmsh.y" +#line 155 "Gmsh.y" { return 1; ;} break; case 13: -#line 155 "Gmsh.y" +#line 156 "Gmsh.y" { return 1; ;} break; case 14: -#line 156 "Gmsh.y" +#line 157 "Gmsh.y" { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 15: -#line 157 "Gmsh.y" +#line 158 "Gmsh.y" { return 1; ;} break; case 16: -#line 158 "Gmsh.y" +#line 159 "Gmsh.y" { return 1; ;} break; case 17: -#line 159 "Gmsh.y" +#line 160 "Gmsh.y" { return 1; ;} break; case 18: -#line 160 "Gmsh.y" +#line 161 "Gmsh.y" { return 1; ;} break; case 19: -#line 161 "Gmsh.y" +#line 162 "Gmsh.y" { return 1; ;} break; case 20: -#line 166 "Gmsh.y" +#line 167 "Gmsh.y" { (yyval.c) = (char*)"w"; ;} break; case 21: -#line 170 "Gmsh.y" +#line 171 "Gmsh.y" { (yyval.c) = (char*)"a"; ;} break; case 22: -#line 177 "Gmsh.y" +#line 178 "Gmsh.y" { Msg::Direct((yyvsp[(3) - (5)].c)); Free((yyvsp[(3) - (5)].c)); @@ -3751,7 +3754,7 @@ yyreduce: break; case 23: -#line 182 "Gmsh.y" +#line 183 "Gmsh.y" { char tmpstring[1024]; FixRelativePath((yyvsp[(6) - (7)].c), tmpstring); @@ -3769,7 +3772,7 @@ yyreduce: break; case 24: -#line 197 "Gmsh.y" +#line 198 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].l), tmpstring); @@ -3785,7 +3788,7 @@ yyreduce: break; case 25: -#line 210 "Gmsh.y" +#line 211 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (9)].c), (yyvsp[(5) - (9)].l), tmpstring); @@ -3812,7 +3815,7 @@ yyreduce: break; case 26: -#line 239 "Gmsh.y" +#line 240 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(1) - (6)].c), "View") && ViewData->finalize()){ @@ -3829,7 +3832,7 @@ yyreduce: break; case 27: -#line 253 "Gmsh.y" +#line 254 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -3843,7 +3846,7 @@ yyreduce: break; case 28: -#line 264 "Gmsh.y" +#line 265 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -3857,7 +3860,7 @@ yyreduce: break; case 29: -#line 278 "Gmsh.y" +#line 279 "Gmsh.y" { #if !defined(HAVE_NO_POST) ViewData = new PViewDataList(true); @@ -3866,27 +3869,27 @@ yyreduce: break; case 35: -#line 292 "Gmsh.y" +#line 293 "Gmsh.y" { ViewCoord[ViewCoordIdx++] = (yyvsp[(1) - (1)].d); ;} break; case 36: -#line 294 "Gmsh.y" +#line 295 "Gmsh.y" { ViewCoord[ViewCoordIdx++] = (yyvsp[(3) - (3)].d); ;} break; case 37: -#line 299 "Gmsh.y" +#line 300 "Gmsh.y" { if(ViewValueList) List_Add(ViewValueList, &(yyvsp[(1) - (1)].d)); ;} break; case 38: -#line 301 "Gmsh.y" +#line 302 "Gmsh.y" { if(ViewValueList) List_Add(ViewValueList, &(yyvsp[(3) - (3)].d)); ;} break; case 39: -#line 306 "Gmsh.y" +#line 307 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(1) - (1)].c), "SP")){ @@ -4035,12 +4038,12 @@ yyreduce: break; case 40: -#line 452 "Gmsh.y" +#line 453 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(ViewValueList){ for(int i = 0; i < 3; i++) - for(int j = 0; j < ViewCoordIdx / 3; j++) + for(int j = 0; j < ViewCoordIdx / 3; j++) List_Add(ViewValueList, &ViewCoord[3 * j + i]); } #endif @@ -4048,7 +4051,7 @@ yyreduce: break; case 41: -#line 462 "Gmsh.y" +#line 463 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(ViewValueList) (*ViewNumList)++; @@ -4057,7 +4060,7 @@ yyreduce: break; case 42: -#line 471 "Gmsh.y" +#line 472 "Gmsh.y" { #if !defined(HAVE_NO_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c))+1; i++) List_Add(ViewData->T2C, &(yyvsp[(1) - (1)].c)[i]); @@ -4067,7 +4070,7 @@ yyreduce: break; case 43: -#line 478 "Gmsh.y" +#line 479 "Gmsh.y" { #if !defined(HAVE_NO_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c))+1; i++) List_Add(ViewData->T2C, &(yyvsp[(3) - (3)].c)[i]); @@ -4077,7 +4080,7 @@ yyreduce: break; case 44: -#line 488 "Gmsh.y" +#line 489 "Gmsh.y" { #if !defined(HAVE_NO_POST) List_Add(ViewData->T2D, &(yyvsp[(3) - (8)].d)); @@ -4090,7 +4093,7 @@ yyreduce: break; case 45: -#line 498 "Gmsh.y" +#line 499 "Gmsh.y" { #if !defined(HAVE_NO_POST) ViewData->NbT2++; @@ -4099,7 +4102,7 @@ yyreduce: break; case 46: -#line 507 "Gmsh.y" +#line 508 "Gmsh.y" { #if !defined(HAVE_NO_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c))+1; i++) List_Add(ViewData->T3C, &(yyvsp[(1) - (1)].c)[i]); @@ -4109,7 +4112,7 @@ yyreduce: break; case 47: -#line 514 "Gmsh.y" +#line 515 "Gmsh.y" { #if !defined(HAVE_NO_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c))+1; i++) List_Add(ViewData->T3C, &(yyvsp[(3) - (3)].c)[i]); @@ -4119,7 +4122,7 @@ yyreduce: break; case 48: -#line 524 "Gmsh.y" +#line 525 "Gmsh.y" { #if !defined(HAVE_NO_POST) List_Add(ViewData->T3D, &(yyvsp[(3) - (10)].d)); List_Add(ViewData->T3D, &(yyvsp[(5) - (10)].d)); @@ -4131,7 +4134,7 @@ yyreduce: break; case 49: -#line 533 "Gmsh.y" +#line 534 "Gmsh.y" { #if !defined(HAVE_NO_POST) ViewData->NbT3++; @@ -4140,7 +4143,7 @@ yyreduce: break; case 50: -#line 543 "Gmsh.y" +#line 544 "Gmsh.y" { #if !defined(HAVE_NO_POST) int type = @@ -4157,7 +4160,7 @@ yyreduce: break; case 51: -#line 560 "Gmsh.y" +#line 561 "Gmsh.y" { #if !defined(HAVE_NO_POST) int type = @@ -4173,7 +4176,7 @@ yyreduce: break; case 52: -#line 576 "Gmsh.y" +#line 577 "Gmsh.y" { #if !defined(HAVE_NO_POST) ViewValueList = ViewData->Time; @@ -4182,48 +4185,48 @@ yyreduce: break; case 53: -#line 582 "Gmsh.y" +#line 583 "Gmsh.y" { ;} break; case 54: -#line 589 "Gmsh.y" +#line 590 "Gmsh.y" { (yyval.i) = 0; ;} break; case 55: -#line 590 "Gmsh.y" +#line 591 "Gmsh.y" { (yyval.i) = 1; ;} break; case 56: -#line 591 "Gmsh.y" +#line 592 "Gmsh.y" { (yyval.i) = 2; ;} break; case 57: -#line 592 "Gmsh.y" +#line 593 "Gmsh.y" { (yyval.i) = 3; ;} break; case 58: -#line 593 "Gmsh.y" +#line 594 "Gmsh.y" { (yyval.i) = 4; ;} break; case 59: -#line 597 "Gmsh.y" +#line 598 "Gmsh.y" { (yyval.i) = 1; ;} break; case 60: -#line 598 "Gmsh.y" +#line 599 "Gmsh.y" { (yyval.i) = -1; ;} break; case 61: -#line 606 "Gmsh.y" +#line 607 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ if(!(yyvsp[(2) - (4)].i)) @@ -4248,7 +4251,7 @@ yyreduce: break; case 62: -#line 628 "Gmsh.y" +#line 629 "Gmsh.y" { int index = (int)(yyvsp[(3) - (7)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (7)].c))){ @@ -4278,7 +4281,7 @@ yyreduce: break; case 63: -#line 655 "Gmsh.y" +#line 656 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (9)].l)) != List_Nbr((yyvsp[(8) - (9)].l))){ yymsg(0, "Incompatible array dimensions in affectation"); @@ -4321,7 +4324,7 @@ yyreduce: break; case 64: -#line 695 "Gmsh.y" +#line 696 "Gmsh.y" { if(gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) gmsh_yysymbols[(yyvsp[(1) - (6)].c)].clear(); @@ -4333,7 +4336,7 @@ yyreduce: break; case 65: -#line 704 "Gmsh.y" +#line 705 "Gmsh.y" { // appends to the list for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++) @@ -4344,7 +4347,7 @@ yyreduce: break; case 66: -#line 712 "Gmsh.y" +#line 713 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (3)].c)); @@ -4355,7 +4358,7 @@ yyreduce: break; case 67: -#line 720 "Gmsh.y" +#line 721 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (6)].c)); @@ -4370,14 +4373,16 @@ yyreduce: break; case 68: -#line 732 "Gmsh.y" +#line 733 "Gmsh.y" { - Msg::Warning("Named string expressions not implemented yet"); + gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)] = std::string((yyvsp[(3) - (4)].c)); + Free((yyvsp[(1) - (4)].c)); + Free((yyvsp[(3) - (4)].c)); ;} break; case 69: -#line 739 "Gmsh.y" +#line 742 "Gmsh.y" { StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(3) - (6)].c)); @@ -4385,7 +4390,7 @@ yyreduce: break; case 70: -#line 744 "Gmsh.y" +#line 747 "Gmsh.y" { StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), (yyvsp[(8) - (9)].c)); Free((yyvsp[(1) - (9)].c)); Free((yyvsp[(6) - (9)].c)); @@ -4393,7 +4398,7 @@ yyreduce: break; case 71: -#line 752 "Gmsh.y" +#line 755 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), d)){ @@ -4414,7 +4419,7 @@ yyreduce: break; case 72: -#line 770 "Gmsh.y" +#line 773 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), d)){ @@ -4435,7 +4440,7 @@ yyreduce: break; case 73: -#line 788 "Gmsh.y" +#line 791 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(3) - (5)].c), d)){ @@ -4447,7 +4452,7 @@ yyreduce: break; case 74: -#line 797 "Gmsh.y" +#line 800 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c), d)){ @@ -4459,7 +4464,7 @@ yyreduce: break; case 75: -#line 809 "Gmsh.y" +#line 812 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (8)].c), 0, (yyvsp[(5) - (8)].c), (yyvsp[(7) - (8)].u)); Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(5) - (8)].c)); @@ -4467,7 +4472,7 @@ yyreduce: break; case 76: -#line 814 "Gmsh.y" +#line 817 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (11)].c), (int)(yyvsp[(3) - (11)].d), (yyvsp[(8) - (11)].c), (yyvsp[(10) - (11)].u)); Free((yyvsp[(1) - (11)].c)); Free((yyvsp[(8) - (11)].c)); @@ -4475,7 +4480,7 @@ yyreduce: break; case 77: -#line 822 "Gmsh.y" +#line 825 "Gmsh.y" { GmshColorTable *ct = Get_ColorTable(0); if(!ct) @@ -4498,7 +4503,7 @@ yyreduce: break; case 78: -#line 842 "Gmsh.y" +#line 845 "Gmsh.y" { GmshColorTable *ct = Get_ColorTable((int)(yyvsp[(3) - (9)].d)); if(!ct) @@ -4521,7 +4526,7 @@ yyreduce: break; case 79: -#line 865 "Gmsh.y" +#line 868 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (5)].c),"Background")) GModel::current()->getFields()->background_field = (int)(yyvsp[(4) - (5)].d); @@ -4531,7 +4536,7 @@ yyreduce: break; case 80: -#line 872 "Gmsh.y" +#line 875 "Gmsh.y" { if(!GModel::current()->getFields()->new_field((int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c))) yymsg(0, "Cannot create field %i of type '%s'", (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c)); @@ -4540,7 +4545,7 @@ yyreduce: break; case 81: -#line 878 "Gmsh.y" +#line 881 "Gmsh.y" { Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); if(field){ @@ -4563,7 +4568,7 @@ yyreduce: break; case 82: -#line 898 "Gmsh.y" +#line 901 "Gmsh.y" { Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); if(field){ @@ -4587,7 +4592,7 @@ yyreduce: break; case 83: -#line 919 "Gmsh.y" +#line 922 "Gmsh.y" { Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (11)].d)); if(field){ @@ -4613,7 +4618,7 @@ yyreduce: break; case 84: -#line 945 "Gmsh.y" +#line 948 "Gmsh.y" { #if !defined(HAVE_NO_POST) try { @@ -4628,7 +4633,7 @@ yyreduce: break; case 85: -#line 957 "Gmsh.y" +#line 960 "Gmsh.y" { #if !defined(HAVE_NO_POST) try { @@ -4643,14 +4648,14 @@ yyreduce: break; case 86: -#line 974 "Gmsh.y" +#line 977 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); ;} break; case 87: -#line 978 "Gmsh.y" +#line 981 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName (std::string((yyvsp[(1) - (1)].c)), ++GModel::current()->getGEOInternals()->MaxPhysicalNum); @@ -4659,14 +4664,14 @@ yyreduce: break; case 88: -#line 987 "Gmsh.y" +#line 990 "Gmsh.y" { (yyval.l) = 0; ;} break; case 89: -#line 991 "Gmsh.y" +#line 994 "Gmsh.y" { (yyval.l) = List_Create(4, 4, sizeof(double)); Vertex *v = FindPoint((int)(yyvsp[(4) - (5)].d)); @@ -4681,7 +4686,7 @@ yyreduce: break; case 90: -#line 1009 "Gmsh.y" +#line 1012 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindPoint(num)){ @@ -4706,7 +4711,7 @@ yyreduce: break; case 91: -#line 1031 "Gmsh.y" +#line 1034 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_POINT)){ @@ -4725,7 +4730,7 @@ yyreduce: break; case 92: -#line 1047 "Gmsh.y" +#line 1050 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -4747,7 +4752,7 @@ yyreduce: break; case 93: -#line 1069 "Gmsh.y" +#line 1072 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4768,7 +4773,7 @@ yyreduce: break; case 94: -#line 1087 "Gmsh.y" +#line 1090 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4789,7 +4794,7 @@ yyreduce: break; case 95: -#line 1105 "Gmsh.y" +#line 1108 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4810,7 +4815,7 @@ yyreduce: break; case 96: -#line 1123 "Gmsh.y" +#line 1126 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindCurve(num)){ @@ -4839,7 +4844,7 @@ yyreduce: break; case 97: -#line 1149 "Gmsh.y" +#line 1152 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4860,7 +4865,7 @@ yyreduce: break; case 98: -#line 1167 "Gmsh.y" +#line 1170 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindCurve(num)){ @@ -4889,7 +4894,7 @@ yyreduce: break; case 99: -#line 1194 "Gmsh.y" +#line 1197 "Gmsh.y" { int num = (int)(yyvsp[(3) - (17)].d); if(FindCurve(num)){ @@ -4911,7 +4916,7 @@ yyreduce: break; case 100: -#line 1213 "Gmsh.y" +#line 1216 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4932,7 +4937,7 @@ yyreduce: break; case 101: -#line 1231 "Gmsh.y" +#line 1234 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4953,7 +4958,7 @@ yyreduce: break; case 102: -#line 1249 "Gmsh.y" +#line 1252 "Gmsh.y" { int num = (int)(yyvsp[(3) - (11)].d); if(List_Nbr((yyvsp[(6) - (11)].l)) + (int)(yyvsp[(10) - (11)].d) + 1 != List_Nbr((yyvsp[(8) - (11)].l))){ @@ -4982,7 +4987,7 @@ yyreduce: break; case 103: -#line 1275 "Gmsh.y" +#line 1278 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindEdgeLoop(num)){ @@ -5002,7 +5007,7 @@ yyreduce: break; case 104: -#line 1292 "Gmsh.y" +#line 1295 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_LINE)){ @@ -5021,7 +5026,7 @@ yyreduce: break; case 105: -#line 1311 "Gmsh.y" +#line 1314 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurface(num)){ @@ -5042,7 +5047,7 @@ yyreduce: break; case 106: -#line 1329 "Gmsh.y" +#line 1332 "Gmsh.y" { int num = (int)(yyvsp[(4) - (9)].d), type = 0; if(FindSurface(num)){ @@ -5084,7 +5089,7 @@ yyreduce: break; case 107: -#line 1368 "Gmsh.y" +#line 1371 "Gmsh.y" { myGmshSurface = 0; (yyval.s).Type = 0; @@ -5093,7 +5098,7 @@ yyreduce: break; case 108: -#line 1374 "Gmsh.y" +#line 1377 "Gmsh.y" { myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d)); (yyval.s).Type = 0; @@ -5102,7 +5107,7 @@ yyreduce: break; case 109: -#line 1380 "Gmsh.y" +#line 1383 "Gmsh.y" { int num = (int)(yyvsp[(4) - (10)].d); myGmshSurface = gmshParametricSurface::NewParametricSurface(num, (yyvsp[(7) - (10)].c), (yyvsp[(8) - (10)].c), (yyvsp[(9) - (10)].c)); @@ -5112,7 +5117,7 @@ yyreduce: break; case 110: -#line 1387 "Gmsh.y" +#line 1390 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -5140,7 +5145,7 @@ yyreduce: break; case 111: -#line 1412 "Gmsh.y" +#line 1415 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -5168,7 +5173,7 @@ yyreduce: break; case 112: -#line 1437 "Gmsh.y" +#line 1440 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurfaceLoop(num)){ @@ -5187,7 +5192,7 @@ yyreduce: break; case 113: -#line 1453 "Gmsh.y" +#line 1456 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_SURFACE)){ @@ -5206,7 +5211,7 @@ yyreduce: break; case 114: -#line 1473 "Gmsh.y" +#line 1476 "Gmsh.y" { yymsg(0, "'Complex Volume' command is deprecated: use 'Volume' instead"); int num = (int)(yyvsp[(4) - (8)].d); @@ -5227,7 +5232,7 @@ yyreduce: break; case 115: -#line 1491 "Gmsh.y" +#line 1494 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindVolume(num)){ @@ -5247,7 +5252,7 @@ yyreduce: break; case 116: -#line 1508 "Gmsh.y" +#line 1511 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_VOLUME)){ @@ -5266,7 +5271,7 @@ yyreduce: break; case 117: -#line 1529 "Gmsh.y" +#line 1532 "Gmsh.y" { TranslateShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -5274,7 +5279,7 @@ yyreduce: break; case 118: -#line 1534 "Gmsh.y" +#line 1537 "Gmsh.y" { RotateShapes((yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(7) - (11)].d), (yyvsp[(10) - (11)].l)); (yyval.l) = (yyvsp[(10) - (11)].l); @@ -5282,7 +5287,7 @@ yyreduce: break; case 119: -#line 1539 "Gmsh.y" +#line 1542 "Gmsh.y" { SymmetryShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(2) - (5)].v)[3], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -5290,7 +5295,7 @@ yyreduce: break; case 120: -#line 1544 "Gmsh.y" +#line 1547 "Gmsh.y" { DilatShapes((yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].l)); (yyval.l) = (yyvsp[(8) - (9)].l); @@ -5298,7 +5303,7 @@ yyreduce: break; case 121: -#line 1549 "Gmsh.y" +#line 1552 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ @@ -5312,7 +5317,7 @@ yyreduce: break; case 122: -#line 1560 "Gmsh.y" +#line 1563 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); IntersectCurvesWithSurface((yyvsp[(4) - (9)].l), (int)(yyvsp[(8) - (9)].d), (yyval.l)); @@ -5321,7 +5326,7 @@ yyreduce: break; case 123: -#line 1566 "Gmsh.y" +#line 1569 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); BoundaryShapes((yyvsp[(3) - (4)].l), (yyval.l)); @@ -5330,31 +5335,31 @@ yyreduce: break; case 124: -#line 1574 "Gmsh.y" +#line 1577 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 125: -#line 1575 "Gmsh.y" +#line 1578 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 126: -#line 1580 "Gmsh.y" +#line 1583 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); ;} break; case 127: -#line 1584 "Gmsh.y" +#line 1587 "Gmsh.y" { List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); ;} break; case 128: -#line 1588 "Gmsh.y" +#line 1591 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5380,7 +5385,7 @@ yyreduce: break; case 129: -#line 1611 "Gmsh.y" +#line 1614 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5406,7 +5411,7 @@ yyreduce: break; case 130: -#line 1634 "Gmsh.y" +#line 1637 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5432,7 +5437,7 @@ yyreduce: break; case 131: -#line 1657 "Gmsh.y" +#line 1660 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5458,7 +5463,7 @@ yyreduce: break; case 132: -#line 1685 "Gmsh.y" +#line 1688 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -5470,14 +5475,14 @@ yyreduce: break; case 133: -#line 1694 "Gmsh.y" +#line 1697 "Gmsh.y" { GModel::current()->getFields()->delete_field((int)(yyvsp[(4) - (6)].d)); ;} break; case 134: -#line 1698 "Gmsh.y" +#line 1701 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -5495,7 +5500,7 @@ yyreduce: break; case 135: -#line 1713 "Gmsh.y" +#line 1716 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Model") || !strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ GModel::current()->destroy(); @@ -5519,7 +5524,7 @@ yyreduce: break; case 136: -#line 1734 "Gmsh.y" +#line 1737 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ @@ -5534,7 +5539,7 @@ yyreduce: break; case 137: -#line 1751 "Gmsh.y" +#line 1754 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ Shape TheShape; @@ -5546,7 +5551,7 @@ yyreduce: break; case 138: -#line 1765 "Gmsh.y" +#line 1768 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 1); @@ -5555,7 +5560,7 @@ yyreduce: break; case 139: -#line 1771 "Gmsh.y" +#line 1774 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 0); @@ -5564,7 +5569,7 @@ yyreduce: break; case 140: -#line 1777 "Gmsh.y" +#line 1780 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -5576,7 +5581,7 @@ yyreduce: break; case 141: -#line 1786 "Gmsh.y" +#line 1789 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -5588,7 +5593,7 @@ yyreduce: break; case 142: -#line 1800 "Gmsh.y" +#line 1803 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ char tmpstring[1024]; @@ -5639,7 +5644,7 @@ yyreduce: break; case 143: -#line 1848 "Gmsh.y" +#line 1851 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ @@ -5660,7 +5665,7 @@ yyreduce: break; case 144: -#line 1866 "Gmsh.y" +#line 1869 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ @@ -5678,7 +5683,7 @@ yyreduce: break; case 145: -#line 1881 "Gmsh.y" +#line 1884 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ SleepInSeconds((yyvsp[(2) - (3)].d)); @@ -5700,7 +5705,7 @@ yyreduce: break; case 146: -#line 1900 "Gmsh.y" +#line 1903 "Gmsh.y" { #if !defined(HAVE_NO_POST) try { @@ -5715,7 +5720,7 @@ yyreduce: break; case 147: -#line 1912 "Gmsh.y" +#line 1915 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) @@ -5742,14 +5747,14 @@ yyreduce: break; case 148: -#line 1936 "Gmsh.y" +#line 1939 "Gmsh.y" { exit(0); ;} break; case 149: -#line 1940 "Gmsh.y" +#line 1943 "Gmsh.y" { CTX.forced_bbox = 0; SetBoundingBox(); @@ -5757,7 +5762,7 @@ yyreduce: break; case 150: -#line 1945 "Gmsh.y" +#line 1948 "Gmsh.y" { CTX.forced_bbox = 1; SetBoundingBox((yyvsp[(3) - (15)].d), (yyvsp[(5) - (15)].d), (yyvsp[(7) - (15)].d), (yyvsp[(9) - (15)].d), (yyvsp[(11) - (15)].d), (yyvsp[(13) - (15)].d)); @@ -5765,7 +5770,7 @@ yyreduce: break; case 151: -#line 1950 "Gmsh.y" +#line 1953 "Gmsh.y" { #if defined(HAVE_FLTK) Draw(); @@ -5774,7 +5779,7 @@ yyreduce: break; case 152: -#line 1962 "Gmsh.y" +#line 1965 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); @@ -5794,7 +5799,7 @@ yyreduce: break; case 153: -#line 1979 "Gmsh.y" +#line 1982 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d); @@ -5814,7 +5819,7 @@ yyreduce: break; case 154: -#line 1996 "Gmsh.y" +#line 1999 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); @@ -5836,7 +5841,7 @@ yyreduce: break; case 155: -#line 2015 "Gmsh.y" +#line 2018 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d); @@ -5858,7 +5863,7 @@ yyreduce: break; case 156: -#line 2034 "Gmsh.y" +#line 2037 "Gmsh.y" { if(ImbricatedLoop <= 0){ yymsg(0, "Invalid For/EndFor loop"); @@ -5889,7 +5894,7 @@ yyreduce: break; case 157: -#line 2062 "Gmsh.y" +#line 2065 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction((yyvsp[(2) - (2)].c), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -5900,7 +5905,7 @@ yyreduce: break; case 158: -#line 2070 "Gmsh.y" +#line 2073 "Gmsh.y" { if(!FunctionManager::Instance()->leaveFunction(&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -5909,7 +5914,7 @@ yyreduce: break; case 159: -#line 2076 "Gmsh.y" +#line 2079 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction((yyvsp[(2) - (3)].c), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -5919,20 +5924,20 @@ yyreduce: break; case 160: -#line 2083 "Gmsh.y" +#line 2086 "Gmsh.y" { if(!(yyvsp[(3) - (4)].d)) skip_until("If", "EndIf"); ;} break; case 161: -#line 2087 "Gmsh.y" +#line 2090 "Gmsh.y" { ;} break; case 162: -#line 2096 "Gmsh.y" +#line 2099 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (5)].l), @@ -5943,7 +5948,7 @@ yyreduce: break; case 163: -#line 2104 "Gmsh.y" +#line 2107 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (11)].l), @@ -5954,7 +5959,7 @@ yyreduce: break; case 164: -#line 2112 "Gmsh.y" +#line 2115 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l), @@ -5965,14 +5970,14 @@ yyreduce: break; case 165: -#line 2120 "Gmsh.y" +#line 2123 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 166: -#line 2124 "Gmsh.y" +#line 2127 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l), @@ -5983,14 +5988,14 @@ yyreduce: break; case 167: -#line 2132 "Gmsh.y" +#line 2135 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 168: -#line 2136 "Gmsh.y" +#line 2139 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l), @@ -6001,14 +6006,14 @@ yyreduce: break; case 169: -#line 2144 "Gmsh.y" +#line 2147 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 170: -#line 2148 "Gmsh.y" +#line 2151 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l), @@ -6019,14 +6024,14 @@ yyreduce: break; case 171: -#line 2156 "Gmsh.y" +#line 2159 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 172: -#line 2160 "Gmsh.y" +#line 2163 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(3) - (6)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., @@ -6036,7 +6041,7 @@ yyreduce: break; case 173: -#line 2169 "Gmsh.y" +#line 2172 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), @@ -6046,7 +6051,7 @@ yyreduce: break; case 174: -#line 2176 "Gmsh.y" +#line 2179 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), @@ -6056,7 +6061,7 @@ yyreduce: break; case 175: -#line 2183 "Gmsh.y" +#line 2186 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), @@ -6066,7 +6071,7 @@ yyreduce: break; case 176: -#line 2190 "Gmsh.y" +#line 2193 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -6076,7 +6081,7 @@ yyreduce: break; case 177: -#line 2197 "Gmsh.y" +#line 2200 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -6086,7 +6091,7 @@ yyreduce: break; case 178: -#line 2204 "Gmsh.y" +#line 2207 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -6096,7 +6101,7 @@ yyreduce: break; case 179: -#line 2211 "Gmsh.y" +#line 2214 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), @@ -6106,7 +6111,7 @@ yyreduce: break; case 180: -#line 2218 "Gmsh.y" +#line 2221 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), @@ -6116,7 +6121,7 @@ yyreduce: break; case 181: -#line 2225 "Gmsh.y" +#line 2228 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), @@ -6126,14 +6131,14 @@ yyreduce: break; case 182: -#line 2232 "Gmsh.y" +#line 2235 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 183: -#line 2236 "Gmsh.y" +#line 2239 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -6143,14 +6148,14 @@ yyreduce: break; case 184: -#line 2243 "Gmsh.y" +#line 2246 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 185: -#line 2247 "Gmsh.y" +#line 2250 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -6160,14 +6165,14 @@ yyreduce: break; case 186: -#line 2254 "Gmsh.y" +#line 2257 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 187: -#line 2258 "Gmsh.y" +#line 2261 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -6177,14 +6182,14 @@ yyreduce: break; case 188: -#line 2265 "Gmsh.y" +#line 2268 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 189: -#line 2269 "Gmsh.y" +#line 2272 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), @@ -6194,14 +6199,14 @@ yyreduce: break; case 190: -#line 2276 "Gmsh.y" +#line 2279 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 191: -#line 2280 "Gmsh.y" +#line 2283 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), @@ -6211,14 +6216,14 @@ yyreduce: break; case 192: -#line 2287 "Gmsh.y" +#line 2290 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 193: -#line 2291 "Gmsh.y" +#line 2294 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), @@ -6228,14 +6233,14 @@ yyreduce: break; case 194: -#line 2298 "Gmsh.y" +#line 2301 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 195: -#line 2302 "Gmsh.y" +#line 2305 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), @@ -6245,14 +6250,14 @@ yyreduce: break; case 196: -#line 2309 "Gmsh.y" +#line 2312 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 197: -#line 2313 "Gmsh.y" +#line 2316 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), @@ -6262,14 +6267,14 @@ yyreduce: break; case 198: -#line 2320 "Gmsh.y" +#line 2323 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 199: -#line 2324 "Gmsh.y" +#line 2327 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), @@ -6279,19 +6284,19 @@ yyreduce: break; case 200: -#line 2335 "Gmsh.y" +#line 2338 "Gmsh.y" { ;} break; case 201: -#line 2338 "Gmsh.y" +#line 2341 "Gmsh.y" { ;} break; case 202: -#line 2344 "Gmsh.y" +#line 2347 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = 1; @@ -6303,7 +6308,7 @@ yyreduce: break; case 203: -#line 2353 "Gmsh.y" +#line 2356 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); @@ -6326,7 +6331,7 @@ yyreduce: break; case 204: -#line 2373 "Gmsh.y" +#line 2376 "Gmsh.y" { yymsg(0, "Explicit region numbers in layers are deprecated"); extr.mesh.ExtrudeMesh = true; @@ -6352,14 +6357,14 @@ yyreduce: break; case 205: -#line 2396 "Gmsh.y" +#line 2399 "Gmsh.y" { extr.mesh.Recombine = true; ;} break; case 206: -#line 2400 "Gmsh.y" +#line 2403 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindSurface(num)){ @@ -6381,7 +6386,7 @@ yyreduce: break; case 207: -#line 2424 "Gmsh.y" +#line 2427 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -6402,7 +6407,7 @@ yyreduce: break; case 208: -#line 2442 "Gmsh.y" +#line 2445 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){ double d; @@ -6423,7 +6428,7 @@ yyreduce: break; case 209: -#line 2460 "Gmsh.y" +#line 2463 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){ double d; @@ -6444,7 +6449,7 @@ yyreduce: break; case 210: -#line 2478 "Gmsh.y" +#line 2481 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(4) - (8)].d)); if(!s) @@ -6476,7 +6481,7 @@ yyreduce: break; case 211: -#line 2507 "Gmsh.y" +#line 2510 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(4) - (9)].d)); if(!s) @@ -6514,7 +6519,7 @@ yyreduce: break; case 212: -#line 2542 "Gmsh.y" +#line 2545 "Gmsh.y" { yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); List_Delete((yyvsp[(7) - (8)].l)); @@ -6522,7 +6527,7 @@ yyreduce: break; case 213: -#line 2547 "Gmsh.y" +#line 2550 "Gmsh.y" { Volume *v = FindVolume((int)(yyvsp[(4) - (8)].d)); if(!v) @@ -6552,7 +6557,7 @@ yyreduce: break; case 214: -#line 2574 "Gmsh.y" +#line 2577 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -6569,7 +6574,7 @@ yyreduce: break; case 215: -#line 2588 "Gmsh.y" +#line 2591 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ double d; @@ -6585,7 +6590,7 @@ yyreduce: break; case 216: -#line 2601 "Gmsh.y" +#line 2604 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -6599,7 +6604,7 @@ yyreduce: break; case 217: -#line 2618 "Gmsh.y" +#line 2621 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s) @@ -6608,7 +6613,7 @@ yyreduce: break; case 218: -#line 2624 "Gmsh.y" +#line 2627 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s) @@ -6617,66 +6622,66 @@ yyreduce: break; case 219: -#line 2630 "Gmsh.y" +#line 2633 "Gmsh.y" { ;} break; case 220: -#line 2633 "Gmsh.y" +#line 2636 "Gmsh.y" { ;} break; case 221: -#line 2642 "Gmsh.y" +#line 2645 "Gmsh.y" { ReplaceAllDuplicates(); ;} break; case 222: -#line 2651 "Gmsh.y" +#line 2654 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 223: -#line 2652 "Gmsh.y" +#line 2655 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (3)].d); ;} break; case 224: -#line 2653 "Gmsh.y" +#line 2656 "Gmsh.y" { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} break; case 225: -#line 2654 "Gmsh.y" +#line 2657 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; case 226: -#line 2655 "Gmsh.y" +#line 2658 "Gmsh.y" { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} break; case 227: -#line 2656 "Gmsh.y" +#line 2659 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} break; case 228: -#line 2657 "Gmsh.y" +#line 2660 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} break; case 229: -#line 2658 "Gmsh.y" +#line 2661 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} break; case 230: -#line 2660 "Gmsh.y" +#line 2663 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); @@ -6686,307 +6691,307 @@ yyreduce: break; case 231: -#line 2666 "Gmsh.y" +#line 2669 "Gmsh.y" { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} break; case 232: -#line 2667 "Gmsh.y" +#line 2670 "Gmsh.y" { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} break; case 233: -#line 2668 "Gmsh.y" +#line 2671 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} break; case 234: -#line 2669 "Gmsh.y" +#line 2672 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} break; case 235: -#line 2670 "Gmsh.y" +#line 2673 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} break; case 236: -#line 2671 "Gmsh.y" +#line 2674 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} break; case 237: -#line 2672 "Gmsh.y" +#line 2675 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} break; case 238: -#line 2673 "Gmsh.y" +#line 2676 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} break; case 239: -#line 2674 "Gmsh.y" +#line 2677 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} break; case 240: -#line 2675 "Gmsh.y" +#line 2678 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} break; case 241: -#line 2676 "Gmsh.y" +#line 2679 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} break; case 242: -#line 2677 "Gmsh.y" +#line 2680 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 243: -#line 2678 "Gmsh.y" +#line 2681 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 244: -#line 2679 "Gmsh.y" +#line 2682 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 245: -#line 2680 "Gmsh.y" +#line 2683 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 246: -#line 2681 "Gmsh.y" +#line 2684 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 247: -#line 2682 "Gmsh.y" +#line 2685 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 248: -#line 2683 "Gmsh.y" +#line 2686 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 249: -#line 2684 "Gmsh.y" +#line 2687 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 250: -#line 2685 "Gmsh.y" +#line 2688 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 251: -#line 2686 "Gmsh.y" +#line 2689 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 252: -#line 2687 "Gmsh.y" +#line 2690 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 253: -#line 2688 "Gmsh.y" +#line 2691 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 254: -#line 2689 "Gmsh.y" +#line 2692 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 255: -#line 2690 "Gmsh.y" +#line 2693 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 256: -#line 2691 "Gmsh.y" +#line 2694 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 257: -#line 2692 "Gmsh.y" +#line 2695 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 258: -#line 2693 "Gmsh.y" +#line 2696 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 259: -#line 2694 "Gmsh.y" +#line 2697 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 260: -#line 2695 "Gmsh.y" +#line 2698 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 261: -#line 2696 "Gmsh.y" +#line 2699 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 262: -#line 2697 "Gmsh.y" +#line 2700 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 263: -#line 2699 "Gmsh.y" +#line 2702 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 264: -#line 2700 "Gmsh.y" +#line 2703 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 265: -#line 2701 "Gmsh.y" +#line 2704 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 266: -#line 2702 "Gmsh.y" +#line 2705 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 267: -#line 2703 "Gmsh.y" +#line 2706 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 268: -#line 2704 "Gmsh.y" +#line 2707 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 269: -#line 2705 "Gmsh.y" +#line 2708 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 270: -#line 2706 "Gmsh.y" +#line 2709 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 271: -#line 2707 "Gmsh.y" +#line 2710 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 272: -#line 2708 "Gmsh.y" +#line 2711 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 273: -#line 2709 "Gmsh.y" +#line 2712 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 274: -#line 2710 "Gmsh.y" +#line 2713 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 275: -#line 2711 "Gmsh.y" +#line 2714 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 276: -#line 2712 "Gmsh.y" +#line 2715 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 277: -#line 2713 "Gmsh.y" +#line 2716 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 278: -#line 2714 "Gmsh.y" +#line 2717 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 279: -#line 2715 "Gmsh.y" +#line 2718 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 280: -#line 2716 "Gmsh.y" +#line 2719 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 281: -#line 2717 "Gmsh.y" +#line 2720 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 282: -#line 2718 "Gmsh.y" +#line 2721 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 283: -#line 2719 "Gmsh.y" +#line 2722 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 284: -#line 2728 "Gmsh.y" +#line 2731 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 285: -#line 2729 "Gmsh.y" +#line 2732 "Gmsh.y" { (yyval.d) = 3.141592653589793; ;} break; case 286: -#line 2730 "Gmsh.y" +#line 2733 "Gmsh.y" { (yyval.d) = Msg::GetCommRank(); ;} break; case 287: -#line 2731 "Gmsh.y" +#line 2734 "Gmsh.y" { (yyval.d) = Msg::GetCommSize(); ;} break; case 288: -#line 2732 "Gmsh.y" +#line 2735 "Gmsh.y" { (yyval.d) = Get_GmshMajorVersion(); ;} break; case 289: -#line 2733 "Gmsh.y" +#line 2736 "Gmsh.y" { (yyval.d) = Get_GmshMinorVersion(); ;} break; case 290: -#line 2734 "Gmsh.y" +#line 2737 "Gmsh.y" { (yyval.d) = Get_GmshPatchVersion(); ;} break; case 291: -#line 2739 "Gmsh.y" +#line 2742 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (1)].c)); @@ -6999,7 +7004,7 @@ yyreduce: break; case 292: -#line 2752 "Gmsh.y" +#line 2755 "Gmsh.y" { char tmpstring[1024]; sprintf(tmpstring, "%s_%d", (yyvsp[(1) - (5)].c), (int)(yyvsp[(4) - (5)].d)) ; @@ -7014,7 +7019,7 @@ yyreduce: break; case 293: -#line 2764 "Gmsh.y" +#line 2767 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -7032,7 +7037,7 @@ yyreduce: break; case 294: -#line 2779 "Gmsh.y" +#line 2782 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(2) - (4)].c)); @@ -7045,7 +7050,7 @@ yyreduce: break; case 295: -#line 2789 "Gmsh.y" +#line 2792 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); @@ -7058,7 +7063,7 @@ yyreduce: break; case 296: -#line 2799 "Gmsh.y" +#line 2802 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -7076,7 +7081,7 @@ yyreduce: break; case 297: -#line 2817 "Gmsh.y" +#line 2820 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), (yyval.d)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); @@ -7084,7 +7089,7 @@ yyreduce: break; case 298: -#line 2822 "Gmsh.y" +#line 2825 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); @@ -7092,7 +7097,7 @@ yyreduce: break; case 299: -#line 2827 "Gmsh.y" +#line 2830 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ @@ -7105,7 +7110,7 @@ yyreduce: break; case 300: -#line 2837 "Gmsh.y" +#line 2840 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ @@ -7118,7 +7123,7 @@ yyreduce: break; case 301: -#line 2847 "Gmsh.y" +#line 2850 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); @@ -7126,70 +7131,70 @@ yyreduce: break; case 302: -#line 2855 "Gmsh.y" +#line 2858 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); ;} break; case 303: -#line 2859 "Gmsh.y" +#line 2862 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; ;} break; case 304: -#line 2863 "Gmsh.y" +#line 2866 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} break; case 305: -#line 2867 "Gmsh.y" +#line 2870 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; ;} break; case 306: -#line 2871 "Gmsh.y" +#line 2874 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; ;} break; case 307: -#line 2878 "Gmsh.y" +#line 2881 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d); ;} break; case 308: -#line 2882 "Gmsh.y" +#line 2885 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0; ;} break; case 309: -#line 2886 "Gmsh.y" +#line 2889 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; case 310: -#line 2890 "Gmsh.y" +#line 2893 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; case 311: -#line 2897 "Gmsh.y" +#line 2900 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); @@ -7197,14 +7202,14 @@ yyreduce: break; case 312: -#line 2902 "Gmsh.y" +#line 2905 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); ;} break; case 313: -#line 2909 "Gmsh.y" +#line 2912 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); @@ -7212,14 +7217,14 @@ yyreduce: break; case 314: -#line 2914 "Gmsh.y" +#line 2917 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 315: -#line 2918 "Gmsh.y" +#line 2921 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); @@ -7227,14 +7232,14 @@ yyreduce: break; case 316: -#line 2923 "Gmsh.y" +#line 2926 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; case 317: -#line 2927 "Gmsh.y" +#line 2930 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7245,7 +7250,7 @@ yyreduce: break; case 318: -#line 2935 "Gmsh.y" +#line 2938 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7256,7 +7261,7 @@ yyreduce: break; case 319: -#line 2946 "Gmsh.y" +#line 2949 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7267,7 +7272,7 @@ yyreduce: break; case 320: -#line 2954 "Gmsh.y" +#line 2957 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7278,7 +7283,7 @@ yyreduce: break; case 321: -#line 2962 "Gmsh.y" +#line 2965 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d)); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d += 1.) : (d -= 1.)) @@ -7287,7 +7292,7 @@ yyreduce: break; case 322: -#line 2968 "Gmsh.y" +#line 2971 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!(yyvsp[(5) - (5)].d) || ((yyvsp[(1) - (5)].d) < (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) < 0) || ((yyvsp[(1) - (5)].d) > (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) > 0)){ @@ -7301,7 +7306,7 @@ yyreduce: break; case 323: -#line 2979 "Gmsh.y" +#line 2982 "Gmsh.y" { // Returns the coordinates of a point and fills a list with it. // This allows to ensure e.g. that relative point positions are @@ -7324,7 +7329,7 @@ yyreduce: break; case 324: -#line 2999 "Gmsh.y" +#line 3002 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -7337,7 +7342,7 @@ yyreduce: break; case 325: -#line 3009 "Gmsh.y" +#line 3012 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -7350,7 +7355,7 @@ yyreduce: break; case 326: -#line 3019 "Gmsh.y" +#line 3022 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -7363,7 +7368,7 @@ yyreduce: break; case 327: -#line 3029 "Gmsh.y" +#line 3032 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -7383,7 +7388,7 @@ yyreduce: break; case 328: -#line 3049 "Gmsh.y" +#line 3052 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); @@ -7391,21 +7396,21 @@ yyreduce: break; case 329: -#line 3054 "Gmsh.y" +#line 3057 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 330: -#line 3058 "Gmsh.y" +#line 3061 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); ;} break; case 331: -#line 3062 "Gmsh.y" +#line 3065 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; @@ -7417,21 +7422,21 @@ yyreduce: break; case 332: -#line 3074 "Gmsh.y" +#line 3077 "Gmsh.y" { (yyval.u) = CTX.PACK_COLOR((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); ;} break; case 333: -#line 3078 "Gmsh.y" +#line 3081 "Gmsh.y" { (yyval.u) = CTX.PACK_COLOR((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); ;} break; case 334: -#line 3090 "Gmsh.y" +#line 3093 "Gmsh.y" { int flag; (yyval.u) = Get_ColorForString(ColorString, -1, (yyvsp[(1) - (1)].c), &flag); @@ -7441,7 +7446,7 @@ yyreduce: break; case 335: -#line 3097 "Gmsh.y" +#line 3100 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); @@ -7451,14 +7456,14 @@ yyreduce: break; case 336: -#line 3107 "Gmsh.y" +#line 3110 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; case 337: -#line 3111 "Gmsh.y" +#line 3114 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = Get_ColorTable((int)(yyvsp[(3) - (6)].d)); @@ -7473,7 +7478,7 @@ yyreduce: break; case 338: -#line 3126 "Gmsh.y" +#line 3129 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); @@ -7481,37 +7486,68 @@ yyreduce: break; case 339: -#line 3131 "Gmsh.y" +#line 3134 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); ;} break; case 340: -#line 3138 "Gmsh.y" +#line 3141 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; case 341: -#line 3142 "Gmsh.y" +#line 3145 "Gmsh.y" { - Msg::Warning("Named string expressions not implemented yet"); + if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ + yymsg(0, "Unknown string variable '%s'", (yyvsp[(1) - (1)].c)); + (yyval.c) = (yyvsp[(1) - (1)].c); + } + else{ + std::string val = gmsh_yystringsymbols[(yyvsp[(1) - (1)].c)]; + (yyval.c) = (char *)Malloc((val.size() + 1) * sizeof(char)); + strcpy((yyval.c), val.c_str()); + Free((yyvsp[(1) - (1)].c)); + } ;} break; case 342: -#line 3149 "Gmsh.y" +#line 3158 "Gmsh.y" + { + const char *val = ""; + StringOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), val); + (yyval.c) = (char*)Malloc((strlen(val) + 1) * sizeof(char)); + strcpy((yyval.c), val); + Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); + ;} + break; + + case 343: +#line 3166 "Gmsh.y" + { + const char *val = ""; + StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), val); + (yyval.c) = (char*)Malloc((strlen(val) + 1) * sizeof(char)); + strcpy((yyval.c), val); + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); + ;} + break; + + case 344: +#line 3177 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 343: -#line 3153 "Gmsh.y" + case 345: +#line 3181 "Gmsh.y" { - (yyval.c) = (char *)Malloc(32*sizeof(char)); + (yyval.c) = (char *)Malloc(32 * sizeof(char)); time_t now; time(&now); strcpy((yyval.c), ctime(&now)); @@ -7519,10 +7555,10 @@ yyreduce: ;} break; - case 344: -#line 3161 "Gmsh.y" + case 346: +#line 3189 "Gmsh.y" { - (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c))+strlen((yyvsp[(5) - (6)].c))+1)*sizeof(char)); + (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c)) + strlen((yyvsp[(5) - (6)].c)) + 1) * sizeof(char)); strcpy((yyval.c), (yyvsp[(3) - (6)].c)); strcat((yyval.c), (yyvsp[(5) - (6)].c)); Free((yyvsp[(3) - (6)].c)); @@ -7530,10 +7566,10 @@ yyreduce: ;} break; - case 345: -#line 3169 "Gmsh.y" + case 347: +#line 3197 "Gmsh.y" { - (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c))+1)*sizeof(char)); + (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; for(i = strlen((yyvsp[(3) - (4)].c)) - 1; i >= 0; i--){ if((yyvsp[(3) - (4)].c)[i] == '.'){ @@ -7547,10 +7583,10 @@ yyreduce: ;} break; - case 346: -#line 3183 "Gmsh.y" + case 348: +#line 3211 "Gmsh.y" { - (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c))+1)*sizeof(char)); + (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; for(i = strlen((yyvsp[(3) - (4)].c)) - 1; i >= 0; i--){ if((yyvsp[(3) - (4)].c)[i] == '/' || (yyvsp[(3) - (4)].c)[i] == '\\') @@ -7564,15 +7600,15 @@ yyreduce: ;} break; - case 347: -#line 3197 "Gmsh.y" + case 349: +#line 3225 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 348: -#line 3201 "Gmsh.y" + case 350: +#line 3229 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -7585,7 +7621,7 @@ yyreduce: (yyval.c) = (yyvsp[(3) - (6)].c); } else{ - (yyval.c) = (char*)Malloc((strlen(tmpstring)+1)*sizeof(char)); + (yyval.c) = (char*)Malloc((strlen(tmpstring) + 1) * sizeof(char)); strcpy((yyval.c), tmpstring); Free((yyvsp[(3) - (6)].c)); } @@ -7593,31 +7629,9 @@ yyreduce: ;} break; - case 349: -#line 3220 "Gmsh.y" - { - const char *val = ""; - StringOption(GMSH_GET, (yyvsp[(3) - (6)].c), 0, (yyvsp[(5) - (6)].c), val); - (yyval.c) = (char*)Malloc((strlen(val) + 1) * sizeof(char)); - strcpy((yyval.c), val); - Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); - ;} - break; - - case 350: -#line 3228 "Gmsh.y" - { - const char *val = ""; - StringOption(GMSH_GET, (yyvsp[(3) - (9)].c), (int)(yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].c), val); - (yyval.c) = (char*)Malloc((strlen(val) + 1) * sizeof(char)); - strcpy((yyval.c), val); - Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(8) - (9)].c)); - ;} - break; - /* Line 1267 of yacc.c. */ -#line 7621 "Gmsh.tab.cpp" +#line 7635 "Gmsh.tab.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -7831,7 +7845,7 @@ yyreturn: } -#line 3237 "Gmsh.y" +#line 3249 "Gmsh.y" int PrintListOfDouble(char *format, List_T *list, char *buffer) diff --git a/Parser/Gmsh.tab.hpp b/Parser/Gmsh.tab.hpp index 4b84c7019071501369c797c2e4c0e8d67e8bed2a..ffded7684ab6dc08950a645015b8446374142c75 100644 --- a/Parser/Gmsh.tab.hpp +++ b/Parser/Gmsh.tab.hpp @@ -288,7 +288,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 70 "Gmsh.y" +#line 71 "Gmsh.y" { char *c; int i; diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 3806432de133b25b07f7a95cbd1fcec21792ec5a..15307b1d801a319f051758622672ae1c55a2ffbc 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -43,6 +43,7 @@ char gmsh_yyname[256] = ""; int gmsh_yyerrorstate = 0; int gmsh_yyviewindex = 0; std::map<std::string, std::vector<double> > gmsh_yysymbols; +std::map<std::string, std::string > gmsh_yystringsymbols; // Static parser variables (accessible only in this file) #if !defined(HAVE_NO_POST) @@ -730,7 +731,9 @@ Affectation : } | tSTRING tAFFECT StringExpr tEND { - Msg::Warning("Named string expressions not implemented yet"); + gmsh_yystringsymbols[$1] = std::string($3); + Free($1); + Free($3); } // Option Strings @@ -3140,7 +3143,32 @@ StringExprVar : } | tSTRING { - Msg::Warning("Named string expressions not implemented yet"); + if(!gmsh_yystringsymbols.count($1)){ + yymsg(0, "Unknown string variable '%s'", $1); + $$ = $1; + } + else{ + std::string val = gmsh_yystringsymbols[$1]; + $$ = (char *)Malloc((val.size() + 1) * sizeof(char)); + strcpy($$, val.c_str()); + Free($1); + } + } + | tSTRING '.' tSTRING + { + const char *val = ""; + StringOption(GMSH_GET, $1, 0, $3, val); + $$ = (char*)Malloc((strlen(val) + 1) * sizeof(char)); + strcpy($$, val); + Free($1); Free($3); + } + | tSTRING '[' FExpr ']' '.' tSTRING + { + const char *val = ""; + StringOption(GMSH_GET, $1, (int)$3, $6, val); + $$ = (char*)Malloc((strlen(val) + 1) * sizeof(char)); + strcpy($$, val); + Free($1); Free($6); } ; @@ -3151,7 +3179,7 @@ StringExpr : } | tToday { - $$ = (char *)Malloc(32*sizeof(char)); + $$ = (char *)Malloc(32 * sizeof(char)); time_t now; time(&now); strcpy($$, ctime(&now)); @@ -3159,7 +3187,7 @@ StringExpr : } | tStrCat '(' StringExprVar ',' StringExprVar ')' { - $$ = (char *)Malloc((strlen($3)+strlen($5)+1)*sizeof(char)); + $$ = (char *)Malloc((strlen($3) + strlen($5) + 1) * sizeof(char)); strcpy($$, $3); strcat($$, $5); Free($3); @@ -3167,7 +3195,7 @@ StringExpr : } | tStrPrefix '(' StringExprVar ')' { - $$ = (char *)Malloc((strlen($3)+1)*sizeof(char)); + $$ = (char *)Malloc((strlen($3) + 1) * sizeof(char)); int i; for(i = strlen($3) - 1; i >= 0; i--){ if($3[i] == '.'){ @@ -3181,7 +3209,7 @@ StringExpr : } | tStrRelative '(' StringExprVar ')' { - $$ = (char *)Malloc((strlen($3)+1)*sizeof(char)); + $$ = (char *)Malloc((strlen($3) + 1) * sizeof(char)); int i; for(i = strlen($3) - 1; i >= 0; i--){ if($3[i] == '/' || $3[i] == '\\') @@ -3210,28 +3238,12 @@ StringExpr : $$ = $3; } else{ - $$ = (char*)Malloc((strlen(tmpstring)+1)*sizeof(char)); + $$ = (char*)Malloc((strlen(tmpstring) + 1) * sizeof(char)); strcpy($$, tmpstring); Free($3); } List_Delete($5); } - | tSprintf '(' tSTRING '.' tSTRING ')' - { - const char *val = ""; - StringOption(GMSH_GET, $3, 0, $5, val); - $$ = (char*)Malloc((strlen(val) + 1) * sizeof(char)); - strcpy($$, val); - Free($3); Free($5); - } - | tSprintf '(' tSTRING '[' FExpr ']' '.' tSTRING ')' - { - const char *val = ""; - StringOption(GMSH_GET, $3, (int)$5, $8, val); - $$ = (char*)Malloc((strlen(val) + 1) * sizeof(char)); - strcpy($$, val); - Free($3); Free($8); - } ; %% diff --git a/contrib/NR/Makefile b/contrib/NR/Makefile index 5a2b4eaaaea643be298588056f87b1c9952b9b4d..aa4392752e93af7f60d271b56640d5a9086cce84 100644 --- a/contrib/NR/Makefile +++ b/contrib/NR/Makefile @@ -20,7 +20,6 @@ SRC = brent.cpp\ lnsrch.cpp\ lubksb.cpp\ ludcmp.cpp\ - mnbrak.cpp\ newt.cpp\ nrutil.cpp @@ -58,6 +57,5 @@ fmin.o: fmin.cpp nrutil.h lnsrch.o: lnsrch.cpp nrutil.h lubksb.o: lubksb.cpp ludcmp.o: ludcmp.cpp nrutil.h -mnbrak.o: mnbrak.cpp nrutil.h newt.o: newt.cpp nrutil.h nrutil.o: nrutil.cpp ../../Common/Message.h