From 9c4717cdc157b8d8b64418214830770249f46ad9 Mon Sep 17 00:00:00 2001 From: Jonathan Lambrechts <jonathan.lambrechts@uclouvain.be> Date: Thu, 26 Jan 2012 14:13:06 +0000 Subject: [PATCH] add callbacks on fields --- Common/Options.cpp | 36 +- Fltk/fieldWindow.cpp | 20 +- Mesh/Field.cpp | 9 + Mesh/Field.h | 13 +- Parser/Gmsh.tab.cpp | 5954 +++++++++++++++++++++--------------------- Parser/Gmsh.tab.hpp | 13 +- Parser/Gmsh.y | 18 + Parser/Gmsh.yy.cpp | 73 +- 8 files changed, 3142 insertions(+), 2994 deletions(-) diff --git a/Common/Options.cpp b/Common/Options.cpp index 68862c5f27..17a9c47723 100644 --- a/Common/Options.cpp +++ b/Common/Options.cpp @@ -821,19 +821,31 @@ void PrintOptionsDoc() std::string field_description=f->getDescription(); Sanitize_String_Texi(field_description); fprintf(file,"%s@*\n",field_description.c_str()); - fprintf(file, "Options:@*\n"); - fprintf(file, "@table @code\n"); - for(std::map<std::string, FieldOption*>::iterator it2 = f->options.begin(); - it2 != f->options.end(); it2++){ - fprintf(file, "@item %s\n", it2->first.c_str()); - std::string val; - it2->second->getTextRepresentation(val); - Sanitize_String_Texi(val); - fprintf(file, "%s@*\ntype: %s@*\ndefault value: @code{%s}\n", - it2->second->getDescription().c_str(), - it2->second->getTypeName().c_str(), val.c_str()); + if (!f->options.empty()) { + fprintf(file, "Options:@*\n"); + fprintf(file, "@table @code\n"); + for(std::map<std::string, FieldOption*>::iterator it2 = f->options.begin(); + it2 != f->options.end(); it2++){ + fprintf(file, "@item %s\n", it2->first.c_str()); + std::string val; + it2->second->getTextRepresentation(val); + Sanitize_String_Texi(val); + fprintf(file, "%s@*\ntype: %s@*\ndefault value: @code{%s}\n", + it2->second->getDescription().c_str(), + it2->second->getTypeName().c_str(), val.c_str()); + } + fprintf(file, "@end table\n\n"); + } + if (!f->callbacks.empty()) { + fprintf(file, "Actions:@*\n"); + fprintf(file, "@table @code\n"); + for(std::map<std::string, FieldCallback*>::iterator it2 = f->callbacks.begin(); + it2 != f->callbacks.end(); it2++){ + fprintf(file, "@item %s\n", it2->first.c_str()); + fprintf(file, "%s@*\n", it2->second->getDescription().c_str()); + } + fprintf(file, "@end table\n\n"); } - fprintf(file, "@end table\n\n"); } fprintf(file, "@end ftable\n"); fclose(file); diff --git a/Fltk/fieldWindow.cpp b/Fltk/fieldWindow.cpp index 939fc2d89a..f440d8d1de 100644 --- a/Fltk/fieldWindow.cpp +++ b/Fltk/fieldWindow.cpp @@ -80,6 +80,12 @@ static void field_put_on_view_cb(Fl_Widget *w, void *data) drawContext::global()->draw(); } +static void field_callback_cb(Fl_Widget *w, void *data) +{ + FieldCallback *cb = (FieldCallback*) data; + cb->run(); +} + static void field_select_file_cb(Fl_Widget *w, void *data) { Fl_Input *input = (Fl_Input*)data; @@ -351,7 +357,8 @@ void fieldWindow::editField(Field *f) std::string help = f->getDescription(); ConvertToHTML(help); - help += std::string("<p><center><b>Options</b></center>"); + if (! f->options.empty()) + help += std::string("<p><center><b>Options</b></center>"); for(std::map<std::string, FieldOption*>::iterator it = f->options.begin(); it != f->options.end(); it++){ Fl_Widget *input; @@ -390,6 +397,17 @@ void fieldWindow::editField(Field *f) options_widget.push_back(input); yy += BH; } + if (! f->callbacks.empty()) + help += std::string("<p><center><b>Actions</b></center>"); + for(std::map<std::string, FieldCallback*>::iterator it = f->callbacks.begin(); + it != f->callbacks.end(); it++){ + Fl_Widget *btn; + help += std::string("<p><b>") + it->first + "</b>: "; + help += it->second->getDescription(); + btn = new Fl_Button(xx, yy, IW, BH, it->first.c_str()); + btn->callback(field_callback_cb, it->second); + yy += BH; + } help_display->value(help.c_str()); options_scroll->end(); diff --git a/Mesh/Field.cpp b/Mesh/Field.cpp index a4ed136c6a..8cb2b02656 100644 --- a/Mesh/Field.cpp +++ b/Mesh/Field.cpp @@ -35,6 +35,15 @@ #include "ANN/ANN.h" #endif +Field::~Field() { + for(std::map<std::string, FieldOption*>::iterator it = options.begin(); it != options.end(); ++it) { + delete it->second; + } + for(std::map<std::string, FieldCallback*>::iterator it = callbacks.begin(); it != callbacks.end(); ++it) { + delete it->second; + } +} + class FieldOptionDouble : public FieldOption { public: diff --git a/Mesh/Field.h b/Mesh/Field.h index 5512aaa8c3..4d28ebb41c 100644 --- a/Mesh/Field.h +++ b/Mesh/Field.h @@ -33,6 +33,16 @@ typedef enum { FIELD_OPTION_LIST } FieldOptionType; +class FieldCallback { + private: + std::string _help; + public: + virtual void run() = 0; + FieldCallback(const std::string help){ _help = help;} + virtual ~FieldCallback(){}; + virtual std::string getDescription(){ return _help; } +}; + class FieldOption { private: std::string _help; @@ -67,9 +77,10 @@ class FieldOption { class Field { public: Field() {} - virtual ~Field() {} + virtual ~Field(); int id; std::map<std::string, FieldOption *> options; + std::map<std::string, FieldCallback*> callbacks; virtual bool isotropic () const { return true; } // isotropic virtual double operator() (double x, double y, double z, GEntity *ge=0) = 0; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index bfeeeaeabb..5fa077aa3c 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -1,9 +1,8 @@ -/* A Bison parser, made by GNU Bison 2.4.3. */ +/* A Bison parser, made by GNU Bison 2.5. */ -/* Skeleton implementation for Bison's Yacc-like parsers in C +/* Bison implementation for Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006, - 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -45,7 +44,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.4.3" +#define YYBISON_VERSION "2.5" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -74,7 +73,7 @@ /* Copy the first part of user declarations. */ -/* Line 189 of yacc.c */ +/* Line 268 of yacc.c */ #line 1 "Gmsh.y" // Gmsh - Copyright (C) 1997-2012 C. Geuzaine, J.-F. Remacle @@ -162,8 +161,8 @@ int PrintListOfDouble(char *format, List_T *list, char *buffer); fullMatrix<double> ListOfListOfDouble2Matrix(List_T *list); -/* Line 189 of yacc.c */ -#line 167 "Gmsh.tab.cpp" +/* Line 268 of yacc.c */ +#line 166 "Gmsh.tab.cpp" /* Enabling traces. */ #ifndef YYDEBUG @@ -334,7 +333,7 @@ fullMatrix<double> ListOfListOfDouble2Matrix(List_T *list); typedef union YYSTYPE { -/* Line 214 of yacc.c */ +/* Line 293 of yacc.c */ #line 87 "Gmsh.y" char *c; @@ -347,8 +346,8 @@ typedef union YYSTYPE -/* Line 214 of yacc.c */ -#line 352 "Gmsh.tab.cpp" +/* Line 293 of yacc.c */ +#line 351 "Gmsh.tab.cpp" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -359,8 +358,8 @@ typedef union YYSTYPE /* Copy the second part of user declarations. */ -/* Line 264 of yacc.c */ -#line 364 "Gmsh.tab.cpp" +/* Line 343 of yacc.c */ +#line 363 "Gmsh.tab.cpp" #ifdef short # undef short @@ -463,11 +462,11 @@ YYID (yyi) # define alloca _alloca # else # define YYSTACK_ALLOC alloca -# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 # endif # endif # endif @@ -490,24 +489,24 @@ YYID (yyi) # ifndef YYSTACK_ALLOC_MAXIMUM # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM # endif -# if (defined __cplusplus && ! defined _STDLIB_H \ +# if (defined __cplusplus && ! defined EXIT_SUCCESS \ && ! ((defined YYMALLOC || defined malloc) \ && (defined YYFREE || defined free))) # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 +# ifndef EXIT_SUCCESS +# define EXIT_SUCCESS 0 # endif # endif # ifndef YYMALLOC # define YYMALLOC malloc -# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ # endif # endif # ifndef YYFREE # define YYFREE free -# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ +# if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \ || defined __cplusplus || defined _MSC_VER) void free (void *); /* INFRINGES ON USER NAME SPACE */ # endif @@ -536,23 +535,7 @@ union yyalloc ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + YYSTACK_GAP_MAXIMUM) -/* Copy COUNT objects from FROM to TO. The source and destination do - not overlap. */ -# ifndef YYCOPY -# if defined __GNUC__ && 1 < __GNUC__ -# define YYCOPY(To, From, Count) \ - __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -# else -# define YYCOPY(To, From, Count) \ - do \ - { \ - YYSIZE_T yyi; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (To)[yyi] = (From)[yyi]; \ - } \ - while (YYID (0)) -# endif -# endif +# define YYCOPY_NEEDED 1 /* Relocate STACK from its old location to the new one. The local variables YYSIZE and YYSTACKSIZE give the old and new number of @@ -572,19 +555,39 @@ union yyalloc #endif +#if defined YYCOPY_NEEDED && YYCOPY_NEEDED +/* Copy COUNT objects from FROM to TO. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(To, From, Count) \ + __builtin_memcpy (To, From, (Count) * sizeof (*(From))) +# else +# define YYCOPY(To, From, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (To)[yyi] = (From)[yyi]; \ + } \ + while (YYID (0)) +# endif +# endif +#endif /* !YYCOPY_NEEDED */ + /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 7603 +#define YYLAST 7595 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 158 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 87 /* YYNRULES -- Number of rules. */ -#define YYNRULES 413 +#define YYNRULES 414 /* YYNRULES -- Number of states. */ -#define YYNSTATES 1420 +#define YYNSTATES 1421 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -651,40 +654,40 @@ static const yytype_uint16 yyprhs[] = 168, 172, 173, 189, 198, 213, 214, 221, 223, 225, 227, 229, 231, 233, 235, 241, 246, 253, 261, 271, 275, 282, 287, 294, 304, 311, 321, 327, 336, 345, - 357, 364, 374, 380, 388, 398, 408, 420, 430, 440, - 441, 443, 444, 448, 454, 455, 465, 466, 469, 473, - 477, 479, 481, 482, 488, 489, 492, 500, 501, 511, - 518, 526, 531, 539, 548, 557, 565, 573, 585, 594, - 603, 604, 614, 623, 633, 637, 642, 653, 661, 669, - 678, 687, 700, 701, 711, 720, 728, 737, 738, 748, - 754, 766, 772, 782, 787, 797, 807, 809, 811, 812, - 815, 822, 829, 836, 843, 852, 863, 878, 895, 908, - 917, 926, 933, 948, 953, 960, 967, 971, 976, 982, - 986, 990, 995, 1000, 1004, 1012, 1020, 1024, 1032, 1036, - 1039, 1042, 1045, 1061, 1064, 1067, 1070, 1073, 1080, 1089, - 1098, 1109, 1111, 1114, 1116, 1120, 1125, 1127, 1133, 1145, - 1159, 1160, 1168, 1169, 1183, 1184, 1200, 1201, 1208, 1217, - 1226, 1235, 1248, 1261, 1274, 1289, 1304, 1319, 1320, 1333, - 1334, 1347, 1348, 1361, 1362, 1379, 1380, 1397, 1398, 1415, - 1416, 1435, 1436, 1455, 1456, 1475, 1477, 1480, 1486, 1494, - 1504, 1507, 1510, 1514, 1517, 1521, 1531, 1538, 1539, 1543, - 1544, 1546, 1547, 1550, 1551, 1554, 1562, 1569, 1578, 1584, - 1588, 1594, 1601, 1608, 1621, 1632, 1643, 1654, 1665, 1668, - 1672, 1679, 1681, 1683, 1686, 1692, 1700, 1702, 1706, 1709, - 1712, 1715, 1719, 1723, 1727, 1731, 1735, 1739, 1743, 1747, - 1751, 1755, 1759, 1763, 1767, 1771, 1777, 1782, 1787, 1792, - 1797, 1802, 1807, 1812, 1817, 1822, 1827, 1834, 1839, 1844, - 1849, 1854, 1859, 1864, 1871, 1878, 1885, 1890, 1895, 1900, - 1905, 1910, 1915, 1920, 1925, 1930, 1935, 1940, 1947, 1952, - 1957, 1962, 1967, 1972, 1977, 1984, 1991, 1998, 2003, 2005, - 2007, 2009, 2011, 2013, 2015, 2017, 2019, 2025, 2030, 2035, - 2038, 2044, 2048, 2055, 2060, 2068, 2075, 2077, 2080, 2083, - 2087, 2091, 2103, 2113, 2121, 2129, 2131, 2135, 2137, 2139, - 2142, 2146, 2151, 2157, 2159, 2161, 2164, 2168, 2172, 2178, - 2183, 2186, 2189, 2192, 2195, 2197, 2199, 2203, 2208, 2215, - 2217, 2219, 2223, 2227, 2237, 2245, 2247, 2253, 2257, 2264, - 2266, 2270, 2272, 2274, 2278, 2285, 2287, 2289, 2294, 2301, - 2308, 2313, 2318, 2323 + 357, 364, 374, 380, 388, 398, 408, 420, 428, 438, + 448, 449, 451, 452, 456, 462, 463, 473, 474, 477, + 481, 485, 487, 489, 490, 496, 497, 500, 508, 509, + 519, 526, 534, 539, 547, 556, 565, 573, 581, 593, + 602, 611, 612, 622, 631, 641, 645, 650, 661, 669, + 677, 686, 695, 708, 709, 719, 728, 736, 745, 746, + 756, 762, 774, 780, 790, 795, 805, 815, 817, 819, + 820, 823, 830, 837, 844, 851, 860, 871, 886, 903, + 916, 925, 934, 941, 956, 961, 968, 975, 979, 984, + 990, 994, 998, 1003, 1008, 1012, 1020, 1028, 1032, 1040, + 1044, 1047, 1050, 1053, 1069, 1072, 1075, 1078, 1081, 1088, + 1097, 1106, 1117, 1119, 1122, 1124, 1128, 1133, 1135, 1141, + 1153, 1167, 1168, 1176, 1177, 1191, 1192, 1208, 1209, 1216, + 1225, 1234, 1243, 1256, 1269, 1282, 1297, 1312, 1327, 1328, + 1341, 1342, 1355, 1356, 1369, 1370, 1387, 1388, 1405, 1406, + 1423, 1424, 1443, 1444, 1463, 1464, 1483, 1485, 1488, 1494, + 1502, 1512, 1515, 1518, 1522, 1525, 1529, 1539, 1546, 1547, + 1551, 1552, 1554, 1555, 1558, 1559, 1562, 1570, 1577, 1586, + 1592, 1596, 1602, 1609, 1616, 1629, 1640, 1651, 1662, 1673, + 1676, 1680, 1687, 1689, 1691, 1694, 1700, 1708, 1710, 1714, + 1717, 1720, 1723, 1727, 1731, 1735, 1739, 1743, 1747, 1751, + 1755, 1759, 1763, 1767, 1771, 1775, 1779, 1785, 1790, 1795, + 1800, 1805, 1810, 1815, 1820, 1825, 1830, 1835, 1842, 1847, + 1852, 1857, 1862, 1867, 1872, 1879, 1886, 1893, 1898, 1903, + 1908, 1913, 1918, 1923, 1928, 1933, 1938, 1943, 1948, 1955, + 1960, 1965, 1970, 1975, 1980, 1985, 1992, 1999, 2006, 2011, + 2013, 2015, 2017, 2019, 2021, 2023, 2025, 2027, 2033, 2038, + 2043, 2046, 2052, 2056, 2063, 2068, 2076, 2083, 2085, 2088, + 2091, 2095, 2099, 2111, 2121, 2129, 2137, 2139, 2143, 2145, + 2147, 2150, 2154, 2159, 2165, 2167, 2169, 2172, 2176, 2180, + 2186, 2191, 2194, 2197, 2200, 2203, 2205, 2207, 2211, 2216, + 2223, 2225, 2227, 2231, 2235, 2245, 2253, 2255, 2261, 2265, + 2272, 2274, 2278, 2280, 2282, 2286, 2293, 2295, 2297, 2302, + 2309, 2316, 2321, 2326, 2331 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -732,197 +735,198 @@ static const yytype_int16 yyrhs[] = 231, 151, 152, 4, 7, 231, 6, -1, 111, 150, 231, 151, 152, 4, 7, 244, 6, -1, 111, 150, 231, 151, 152, 4, 7, 155, 239, 156, 6, -1, - 71, 148, 4, 149, 152, 4, 7, 231, 6, -1, - 71, 148, 4, 149, 152, 4, 7, 244, 6, -1, - -1, 154, -1, -1, 184, 183, 4, -1, 184, 183, - 4, 7, 231, -1, -1, 184, 183, 4, 7, 155, - 231, 185, 186, 156, -1, -1, 186, 187, -1, 154, - 4, 236, -1, 154, 4, 5, -1, 231, -1, 244, - -1, -1, 106, 53, 155, 231, 156, -1, -1, 63, - 233, -1, 49, 148, 231, 149, 7, 233, 6, -1, - -1, 67, 49, 192, 148, 188, 149, 7, 236, 6, - -1, 58, 59, 236, 7, 231, 6, -1, 52, 148, - 231, 149, 7, 236, 6, -1, 72, 52, 236, 6, - -1, 56, 148, 231, 149, 7, 236, 6, -1, 50, - 148, 231, 149, 7, 236, 190, 6, -1, 51, 148, - 231, 149, 7, 236, 190, 6, -1, 98, 148, 231, - 149, 7, 236, 6, -1, 99, 148, 231, 149, 7, - 236, 6, -1, 100, 148, 231, 149, 7, 236, 102, - 236, 101, 231, 6, -1, 52, 4, 148, 231, 149, - 7, 236, 6, -1, 68, 52, 148, 231, 149, 7, - 236, 6, -1, -1, 67, 52, 193, 148, 188, 149, - 7, 236, 6, -1, 63, 55, 148, 231, 149, 7, - 236, 6, -1, 64, 55, 148, 231, 149, 7, 236, - 189, 6, -1, 12, 13, 6, -1, 13, 55, 231, - 6, -1, 60, 55, 148, 231, 149, 7, 5, 5, - 5, 6, -1, 53, 148, 231, 149, 7, 236, 6, - -1, 54, 148, 231, 149, 7, 236, 6, -1, 55, - 4, 148, 231, 149, 7, 236, 6, -1, 68, 55, - 148, 231, 149, 7, 236, 6, -1, 68, 55, 148, - 231, 149, 7, 236, 4, 155, 235, 156, 6, -1, - -1, 67, 55, 194, 148, 188, 149, 7, 236, 6, - -1, 66, 57, 148, 231, 149, 7, 236, 6, -1, - 57, 148, 231, 149, 7, 236, 6, -1, 68, 57, - 148, 231, 149, 7, 236, 6, -1, -1, 67, 57, - 195, 148, 188, 149, 7, 236, 6, -1, 74, 233, - 155, 197, 156, -1, 73, 155, 233, 154, 233, 154, - 231, 156, 155, 197, 156, -1, 75, 233, 155, 197, - 156, -1, 76, 155, 233, 154, 231, 156, 155, 197, - 156, -1, 4, 155, 197, 156, -1, 84, 52, 155, - 239, 156, 55, 155, 231, 156, -1, 81, 52, 148, - 231, 149, 155, 239, 156, 6, -1, 198, -1, 196, - -1, -1, 198, 191, -1, 198, 49, 155, 239, 156, - 6, -1, 198, 52, 155, 239, 156, 6, -1, 198, - 55, 155, 239, 156, 6, -1, 198, 57, 155, 239, - 156, 6, -1, 78, 63, 148, 231, 149, 7, 236, - 6, -1, 78, 49, 148, 231, 149, 7, 155, 235, - 156, 6, -1, 78, 63, 148, 231, 149, 7, 155, - 233, 154, 233, 154, 239, 156, 6, -1, 78, 63, - 148, 231, 149, 7, 155, 233, 154, 233, 154, 233, - 154, 239, 156, 6, -1, 78, 53, 148, 231, 149, - 7, 155, 233, 154, 239, 156, 6, -1, 78, 4, - 148, 231, 149, 7, 236, 6, -1, 78, 4, 148, - 231, 149, 7, 5, 6, -1, 78, 4, 155, 231, - 156, 6, -1, 78, 4, 148, 231, 149, 7, 155, - 233, 154, 233, 154, 239, 156, 6, -1, 82, 155, - 198, 156, -1, 82, 111, 150, 231, 151, 6, -1, - 82, 4, 150, 231, 151, 6, -1, 82, 4, 6, - -1, 82, 4, 4, 6, -1, 103, 240, 155, 198, - 156, -1, 115, 5, 6, -1, 116, 5, 6, -1, - 115, 155, 198, 156, -1, 116, 155, 198, 156, -1, - 4, 244, 6, -1, 4, 4, 150, 231, 151, 243, - 6, -1, 4, 4, 4, 150, 231, 151, 6, -1, - 4, 231, 6, -1, 71, 148, 4, 149, 152, 4, - 6, -1, 97, 4, 6, -1, 110, 6, -1, 44, - 6, -1, 41, 6, -1, 41, 155, 231, 154, 231, - 154, 231, 154, 231, 154, 231, 154, 231, 156, 6, - -1, 42, 6, -1, 45, 6, -1, 46, 6, -1, - 62, 6, -1, 105, 148, 231, 8, 231, 149, -1, - 105, 148, 231, 8, 231, 8, 231, 149, -1, 105, - 4, 106, 155, 231, 8, 231, 156, -1, 105, 4, - 106, 155, 231, 8, 231, 8, 231, 156, -1, 107, - -1, 114, 4, -1, 112, -1, 113, 4, 6, -1, - 108, 148, 231, 149, -1, 109, -1, 77, 233, 155, - 198, 156, -1, 77, 155, 233, 154, 233, 154, 231, - 156, 155, 198, 156, -1, 77, 155, 233, 154, 233, - 154, 233, 154, 231, 156, 155, 198, 156, -1, -1, - 77, 233, 155, 198, 206, 219, 156, -1, -1, 77, - 155, 233, 154, 233, 154, 231, 156, 155, 198, 207, - 219, 156, -1, -1, 77, 155, 233, 154, 233, 154, - 233, 154, 231, 156, 155, 198, 208, 219, 156, -1, - -1, 77, 155, 198, 209, 219, 156, -1, 77, 49, - 155, 231, 154, 233, 156, 6, -1, 77, 52, 155, - 231, 154, 233, 156, 6, -1, 77, 55, 155, 231, - 154, 233, 156, 6, -1, 77, 49, 155, 231, 154, - 233, 154, 233, 154, 231, 156, 6, -1, 77, 52, - 155, 231, 154, 233, 154, 233, 154, 231, 156, 6, - -1, 77, 55, 155, 231, 154, 233, 154, 233, 154, - 231, 156, 6, -1, 77, 49, 155, 231, 154, 233, + 111, 150, 231, 151, 152, 4, 6, -1, 71, 148, + 4, 149, 152, 4, 7, 231, 6, -1, 71, 148, + 4, 149, 152, 4, 7, 244, 6, -1, -1, 154, + -1, -1, 184, 183, 4, -1, 184, 183, 4, 7, + 231, -1, -1, 184, 183, 4, 7, 155, 231, 185, + 186, 156, -1, -1, 186, 187, -1, 154, 4, 236, + -1, 154, 4, 5, -1, 231, -1, 244, -1, -1, + 106, 53, 155, 231, 156, -1, -1, 63, 233, -1, + 49, 148, 231, 149, 7, 233, 6, -1, -1, 67, + 49, 192, 148, 188, 149, 7, 236, 6, -1, 58, + 59, 236, 7, 231, 6, -1, 52, 148, 231, 149, + 7, 236, 6, -1, 72, 52, 236, 6, -1, 56, + 148, 231, 149, 7, 236, 6, -1, 50, 148, 231, + 149, 7, 236, 190, 6, -1, 51, 148, 231, 149, + 7, 236, 190, 6, -1, 98, 148, 231, 149, 7, + 236, 6, -1, 99, 148, 231, 149, 7, 236, 6, + -1, 100, 148, 231, 149, 7, 236, 102, 236, 101, + 231, 6, -1, 52, 4, 148, 231, 149, 7, 236, + 6, -1, 68, 52, 148, 231, 149, 7, 236, 6, + -1, -1, 67, 52, 193, 148, 188, 149, 7, 236, + 6, -1, 63, 55, 148, 231, 149, 7, 236, 6, + -1, 64, 55, 148, 231, 149, 7, 236, 189, 6, + -1, 12, 13, 6, -1, 13, 55, 231, 6, -1, + 60, 55, 148, 231, 149, 7, 5, 5, 5, 6, + -1, 53, 148, 231, 149, 7, 236, 6, -1, 54, + 148, 231, 149, 7, 236, 6, -1, 55, 4, 148, + 231, 149, 7, 236, 6, -1, 68, 55, 148, 231, + 149, 7, 236, 6, -1, 68, 55, 148, 231, 149, + 7, 236, 4, 155, 235, 156, 6, -1, -1, 67, + 55, 194, 148, 188, 149, 7, 236, 6, -1, 66, + 57, 148, 231, 149, 7, 236, 6, -1, 57, 148, + 231, 149, 7, 236, 6, -1, 68, 57, 148, 231, + 149, 7, 236, 6, -1, -1, 67, 57, 195, 148, + 188, 149, 7, 236, 6, -1, 74, 233, 155, 197, + 156, -1, 73, 155, 233, 154, 233, 154, 231, 156, + 155, 197, 156, -1, 75, 233, 155, 197, 156, -1, + 76, 155, 233, 154, 231, 156, 155, 197, 156, -1, + 4, 155, 197, 156, -1, 84, 52, 155, 239, 156, + 55, 155, 231, 156, -1, 81, 52, 148, 231, 149, + 155, 239, 156, 6, -1, 198, -1, 196, -1, -1, + 198, 191, -1, 198, 49, 155, 239, 156, 6, -1, + 198, 52, 155, 239, 156, 6, -1, 198, 55, 155, + 239, 156, 6, -1, 198, 57, 155, 239, 156, 6, + -1, 78, 63, 148, 231, 149, 7, 236, 6, -1, + 78, 49, 148, 231, 149, 7, 155, 235, 156, 6, + -1, 78, 63, 148, 231, 149, 7, 155, 233, 154, + 233, 154, 239, 156, 6, -1, 78, 63, 148, 231, + 149, 7, 155, 233, 154, 233, 154, 233, 154, 239, + 156, 6, -1, 78, 53, 148, 231, 149, 7, 155, + 233, 154, 239, 156, 6, -1, 78, 4, 148, 231, + 149, 7, 236, 6, -1, 78, 4, 148, 231, 149, + 7, 5, 6, -1, 78, 4, 155, 231, 156, 6, + -1, 78, 4, 148, 231, 149, 7, 155, 233, 154, + 233, 154, 239, 156, 6, -1, 82, 155, 198, 156, + -1, 82, 111, 150, 231, 151, 6, -1, 82, 4, + 150, 231, 151, 6, -1, 82, 4, 6, -1, 82, + 4, 4, 6, -1, 103, 240, 155, 198, 156, -1, + 115, 5, 6, -1, 116, 5, 6, -1, 115, 155, + 198, 156, -1, 116, 155, 198, 156, -1, 4, 244, + 6, -1, 4, 4, 150, 231, 151, 243, 6, -1, + 4, 4, 4, 150, 231, 151, 6, -1, 4, 231, + 6, -1, 71, 148, 4, 149, 152, 4, 6, -1, + 97, 4, 6, -1, 110, 6, -1, 44, 6, -1, + 41, 6, -1, 41, 155, 231, 154, 231, 154, 231, + 154, 231, 154, 231, 154, 231, 156, 6, -1, 42, + 6, -1, 45, 6, -1, 46, 6, -1, 62, 6, + -1, 105, 148, 231, 8, 231, 149, -1, 105, 148, + 231, 8, 231, 8, 231, 149, -1, 105, 4, 106, + 155, 231, 8, 231, 156, -1, 105, 4, 106, 155, + 231, 8, 231, 8, 231, 156, -1, 107, -1, 114, + 4, -1, 112, -1, 113, 4, 6, -1, 108, 148, + 231, 149, -1, 109, -1, 77, 233, 155, 198, 156, + -1, 77, 155, 233, 154, 233, 154, 231, 156, 155, + 198, 156, -1, 77, 155, 233, 154, 233, 154, 233, + 154, 231, 156, 155, 198, 156, -1, -1, 77, 233, + 155, 198, 206, 219, 156, -1, -1, 77, 155, 233, + 154, 233, 154, 231, 156, 155, 198, 207, 219, 156, + -1, -1, 77, 155, 233, 154, 233, 154, 233, 154, + 231, 156, 155, 198, 208, 219, 156, -1, -1, 77, + 155, 198, 209, 219, 156, -1, 77, 49, 155, 231, + 154, 233, 156, 6, -1, 77, 52, 155, 231, 154, + 233, 156, 6, -1, 77, 55, 155, 231, 154, 233, + 156, 6, -1, 77, 49, 155, 231, 154, 233, 154, + 233, 154, 231, 156, 6, -1, 77, 52, 155, 231, 154, 233, 154, 233, 154, 231, 156, 6, -1, 77, - 52, 155, 231, 154, 233, 154, 233, 154, 233, 154, - 231, 156, 6, -1, 77, 55, 155, 231, 154, 233, - 154, 233, 154, 233, 154, 231, 156, 6, -1, -1, - 77, 49, 155, 231, 154, 233, 156, 210, 155, 219, - 156, 6, -1, -1, 77, 52, 155, 231, 154, 233, - 156, 211, 155, 219, 156, 6, -1, -1, 77, 55, - 155, 231, 154, 233, 156, 212, 155, 219, 156, 6, - -1, -1, 77, 49, 155, 231, 154, 233, 154, 233, - 154, 231, 156, 213, 155, 219, 156, 6, -1, -1, - 77, 52, 155, 231, 154, 233, 154, 233, 154, 231, - 156, 214, 155, 219, 156, 6, -1, -1, 77, 55, - 155, 231, 154, 233, 154, 233, 154, 231, 156, 215, - 155, 219, 156, 6, -1, -1, 77, 49, 155, 231, - 154, 233, 154, 233, 154, 233, 154, 231, 156, 216, - 155, 219, 156, 6, -1, -1, 77, 52, 155, 231, - 154, 233, 154, 233, 154, 233, 154, 231, 156, 217, + 55, 155, 231, 154, 233, 154, 233, 154, 231, 156, + 6, -1, 77, 49, 155, 231, 154, 233, 154, 233, + 154, 233, 154, 231, 156, 6, -1, 77, 52, 155, + 231, 154, 233, 154, 233, 154, 233, 154, 231, 156, + 6, -1, 77, 55, 155, 231, 154, 233, 154, 233, + 154, 233, 154, 231, 156, 6, -1, -1, 77, 49, + 155, 231, 154, 233, 156, 210, 155, 219, 156, 6, + -1, -1, 77, 52, 155, 231, 154, 233, 156, 211, 155, 219, 156, 6, -1, -1, 77, 55, 155, 231, - 154, 233, 154, 233, 154, 233, 154, 231, 156, 218, - 155, 219, 156, 6, -1, 220, -1, 219, 220, -1, - 85, 155, 231, 156, 6, -1, 85, 155, 236, 154, - 236, 156, 6, -1, 85, 155, 236, 154, 236, 154, - 236, 156, 6, -1, 79, 6, -1, 89, 6, -1, - 89, 91, 6, -1, 90, 6, -1, 90, 91, 6, - -1, 86, 148, 231, 149, 7, 236, 70, 231, 6, - -1, 70, 4, 150, 231, 151, 6, -1, -1, 70, - 4, 231, -1, -1, 4, -1, -1, 7, 236, -1, - -1, 7, 231, -1, 65, 52, 237, 7, 231, 221, - 6, -1, 65, 55, 237, 223, 222, 6, -1, 61, - 55, 155, 231, 156, 7, 236, 6, -1, 65, 57, - 237, 223, 6, -1, 92, 237, 6, -1, 79, 55, - 237, 224, 6, -1, 80, 55, 236, 7, 231, 6, - -1, 69, 52, 236, 7, 236, 6, -1, 69, 55, - 231, 155, 239, 156, 7, 231, 155, 239, 156, 6, - -1, 49, 155, 239, 156, 106, 55, 155, 231, 156, - 6, -1, 52, 155, 239, 156, 106, 55, 155, 231, - 156, 6, -1, 52, 155, 239, 156, 106, 57, 155, - 231, 156, 6, -1, 55, 155, 239, 156, 106, 57, - 155, 231, 156, 6, -1, 83, 6, -1, 83, 4, - 6, -1, 83, 49, 155, 239, 156, 6, -1, 120, - -1, 121, -1, 229, 6, -1, 229, 155, 236, 156, - 6, -1, 229, 155, 236, 154, 236, 156, 6, -1, - 232, -1, 148, 231, 149, -1, 139, 231, -1, 138, - 231, -1, 143, 231, -1, 231, 139, 231, -1, 231, - 138, 231, -1, 231, 140, 231, -1, 231, 141, 231, - -1, 231, 142, 231, -1, 231, 147, 231, -1, 231, - 134, 231, -1, 231, 135, 231, -1, 231, 137, 231, - -1, 231, 136, 231, -1, 231, 133, 231, -1, 231, - 132, 231, -1, 231, 131, 231, -1, 231, 130, 231, - -1, 231, 129, 231, 8, 231, -1, 14, 148, 231, - 149, -1, 15, 148, 231, 149, -1, 16, 148, 231, - 149, -1, 17, 148, 231, 149, -1, 18, 148, 231, - 149, -1, 19, 148, 231, 149, -1, 20, 148, 231, - 149, -1, 21, 148, 231, 149, -1, 22, 148, 231, - 149, -1, 24, 148, 231, 149, -1, 25, 148, 231, - 154, 231, 149, -1, 26, 148, 231, 149, -1, 27, - 148, 231, 149, -1, 28, 148, 231, 149, -1, 29, - 148, 231, 149, -1, 30, 148, 231, 149, -1, 31, - 148, 231, 149, -1, 32, 148, 231, 154, 231, 149, - -1, 33, 148, 231, 154, 231, 149, -1, 34, 148, - 231, 154, 231, 149, -1, 23, 148, 231, 149, -1, - 14, 150, 231, 151, -1, 15, 150, 231, 151, -1, - 16, 150, 231, 151, -1, 17, 150, 231, 151, -1, - 18, 150, 231, 151, -1, 19, 150, 231, 151, -1, - 20, 150, 231, 151, -1, 21, 150, 231, 151, -1, - 22, 150, 231, 151, -1, 24, 150, 231, 151, -1, - 25, 150, 231, 154, 231, 151, -1, 26, 150, 231, - 151, -1, 27, 150, 231, 151, -1, 28, 150, 231, - 151, -1, 29, 150, 231, 151, -1, 30, 150, 231, - 151, -1, 31, 150, 231, 151, -1, 32, 150, 231, - 154, 231, 151, -1, 33, 150, 231, 154, 231, 151, - -1, 34, 150, 231, 154, 231, 151, -1, 23, 150, - 231, 151, -1, 3, -1, 9, -1, 10, -1, 11, - -1, 122, -1, 123, -1, 124, -1, 4, -1, 4, - 157, 155, 231, 156, -1, 4, 150, 231, 151, -1, - 153, 4, 150, 151, -1, 4, 181, -1, 4, 150, - 231, 151, 181, -1, 4, 152, 4, -1, 4, 150, - 231, 151, 152, 4, -1, 4, 152, 4, 181, -1, - 4, 150, 231, 151, 152, 4, 181, -1, 117, 148, - 243, 154, 231, 149, -1, 234, -1, 139, 233, -1, - 138, 233, -1, 233, 139, 233, -1, 233, 138, 233, - -1, 155, 231, 154, 231, 154, 231, 154, 231, 154, - 231, 156, -1, 155, 231, 154, 231, 154, 231, 154, - 231, 156, -1, 155, 231, 154, 231, 154, 231, 156, - -1, 148, 231, 154, 231, 154, 231, 149, -1, 236, - -1, 235, 154, 236, -1, 231, -1, 238, -1, 155, - 156, -1, 155, 239, 156, -1, 139, 155, 239, 156, - -1, 231, 140, 155, 239, 156, -1, 236, -1, 5, - -1, 139, 238, -1, 231, 140, 238, -1, 231, 8, - 231, -1, 231, 8, 231, 8, 231, -1, 49, 155, - 231, 156, -1, 49, 5, -1, 52, 5, -1, 55, - 5, -1, 57, 5, -1, 196, -1, 205, -1, 4, - 150, 151, -1, 35, 150, 4, 151, -1, 4, 150, - 155, 239, 156, 151, -1, 231, -1, 238, -1, 239, - 154, 231, -1, 239, 154, 238, -1, 155, 231, 154, - 231, 154, 231, 154, 231, 156, -1, 155, 231, 154, - 231, 154, 231, 156, -1, 4, -1, 4, 152, 103, - 152, 4, -1, 155, 242, 156, -1, 4, 150, 231, - 151, 152, 104, -1, 240, -1, 242, 154, 240, -1, - 244, -1, 4, -1, 4, 152, 4, -1, 4, 150, - 231, 151, 152, 4, -1, 5, -1, 43, -1, 118, - 148, 243, 149, -1, 119, 148, 243, 154, 243, 149, - -1, 38, 148, 243, 154, 243, 149, -1, 39, 148, - 243, 149, -1, 40, 148, 243, 149, -1, 37, 148, - 243, 149, -1, 37, 148, 243, 154, 239, 149, -1 + 154, 233, 156, 212, 155, 219, 156, 6, -1, -1, + 77, 49, 155, 231, 154, 233, 154, 233, 154, 231, + 156, 213, 155, 219, 156, 6, -1, -1, 77, 52, + 155, 231, 154, 233, 154, 233, 154, 231, 156, 214, + 155, 219, 156, 6, -1, -1, 77, 55, 155, 231, + 154, 233, 154, 233, 154, 231, 156, 215, 155, 219, + 156, 6, -1, -1, 77, 49, 155, 231, 154, 233, + 154, 233, 154, 233, 154, 231, 156, 216, 155, 219, + 156, 6, -1, -1, 77, 52, 155, 231, 154, 233, + 154, 233, 154, 233, 154, 231, 156, 217, 155, 219, + 156, 6, -1, -1, 77, 55, 155, 231, 154, 233, + 154, 233, 154, 233, 154, 231, 156, 218, 155, 219, + 156, 6, -1, 220, -1, 219, 220, -1, 85, 155, + 231, 156, 6, -1, 85, 155, 236, 154, 236, 156, + 6, -1, 85, 155, 236, 154, 236, 154, 236, 156, + 6, -1, 79, 6, -1, 89, 6, -1, 89, 91, + 6, -1, 90, 6, -1, 90, 91, 6, -1, 86, + 148, 231, 149, 7, 236, 70, 231, 6, -1, 70, + 4, 150, 231, 151, 6, -1, -1, 70, 4, 231, + -1, -1, 4, -1, -1, 7, 236, -1, -1, 7, + 231, -1, 65, 52, 237, 7, 231, 221, 6, -1, + 65, 55, 237, 223, 222, 6, -1, 61, 55, 155, + 231, 156, 7, 236, 6, -1, 65, 57, 237, 223, + 6, -1, 92, 237, 6, -1, 79, 55, 237, 224, + 6, -1, 80, 55, 236, 7, 231, 6, -1, 69, + 52, 236, 7, 236, 6, -1, 69, 55, 231, 155, + 239, 156, 7, 231, 155, 239, 156, 6, -1, 49, + 155, 239, 156, 106, 55, 155, 231, 156, 6, -1, + 52, 155, 239, 156, 106, 55, 155, 231, 156, 6, + -1, 52, 155, 239, 156, 106, 57, 155, 231, 156, + 6, -1, 55, 155, 239, 156, 106, 57, 155, 231, + 156, 6, -1, 83, 6, -1, 83, 4, 6, -1, + 83, 49, 155, 239, 156, 6, -1, 120, -1, 121, + -1, 229, 6, -1, 229, 155, 236, 156, 6, -1, + 229, 155, 236, 154, 236, 156, 6, -1, 232, -1, + 148, 231, 149, -1, 139, 231, -1, 138, 231, -1, + 143, 231, -1, 231, 139, 231, -1, 231, 138, 231, + -1, 231, 140, 231, -1, 231, 141, 231, -1, 231, + 142, 231, -1, 231, 147, 231, -1, 231, 134, 231, + -1, 231, 135, 231, -1, 231, 137, 231, -1, 231, + 136, 231, -1, 231, 133, 231, -1, 231, 132, 231, + -1, 231, 131, 231, -1, 231, 130, 231, -1, 231, + 129, 231, 8, 231, -1, 14, 148, 231, 149, -1, + 15, 148, 231, 149, -1, 16, 148, 231, 149, -1, + 17, 148, 231, 149, -1, 18, 148, 231, 149, -1, + 19, 148, 231, 149, -1, 20, 148, 231, 149, -1, + 21, 148, 231, 149, -1, 22, 148, 231, 149, -1, + 24, 148, 231, 149, -1, 25, 148, 231, 154, 231, + 149, -1, 26, 148, 231, 149, -1, 27, 148, 231, + 149, -1, 28, 148, 231, 149, -1, 29, 148, 231, + 149, -1, 30, 148, 231, 149, -1, 31, 148, 231, + 149, -1, 32, 148, 231, 154, 231, 149, -1, 33, + 148, 231, 154, 231, 149, -1, 34, 148, 231, 154, + 231, 149, -1, 23, 148, 231, 149, -1, 14, 150, + 231, 151, -1, 15, 150, 231, 151, -1, 16, 150, + 231, 151, -1, 17, 150, 231, 151, -1, 18, 150, + 231, 151, -1, 19, 150, 231, 151, -1, 20, 150, + 231, 151, -1, 21, 150, 231, 151, -1, 22, 150, + 231, 151, -1, 24, 150, 231, 151, -1, 25, 150, + 231, 154, 231, 151, -1, 26, 150, 231, 151, -1, + 27, 150, 231, 151, -1, 28, 150, 231, 151, -1, + 29, 150, 231, 151, -1, 30, 150, 231, 151, -1, + 31, 150, 231, 151, -1, 32, 150, 231, 154, 231, + 151, -1, 33, 150, 231, 154, 231, 151, -1, 34, + 150, 231, 154, 231, 151, -1, 23, 150, 231, 151, + -1, 3, -1, 9, -1, 10, -1, 11, -1, 122, + -1, 123, -1, 124, -1, 4, -1, 4, 157, 155, + 231, 156, -1, 4, 150, 231, 151, -1, 153, 4, + 150, 151, -1, 4, 181, -1, 4, 150, 231, 151, + 181, -1, 4, 152, 4, -1, 4, 150, 231, 151, + 152, 4, -1, 4, 152, 4, 181, -1, 4, 150, + 231, 151, 152, 4, 181, -1, 117, 148, 243, 154, + 231, 149, -1, 234, -1, 139, 233, -1, 138, 233, + -1, 233, 139, 233, -1, 233, 138, 233, -1, 155, + 231, 154, 231, 154, 231, 154, 231, 154, 231, 156, + -1, 155, 231, 154, 231, 154, 231, 154, 231, 156, + -1, 155, 231, 154, 231, 154, 231, 156, -1, 148, + 231, 154, 231, 154, 231, 149, -1, 236, -1, 235, + 154, 236, -1, 231, -1, 238, -1, 155, 156, -1, + 155, 239, 156, -1, 139, 155, 239, 156, -1, 231, + 140, 155, 239, 156, -1, 236, -1, 5, -1, 139, + 238, -1, 231, 140, 238, -1, 231, 8, 231, -1, + 231, 8, 231, 8, 231, -1, 49, 155, 231, 156, + -1, 49, 5, -1, 52, 5, -1, 55, 5, -1, + 57, 5, -1, 196, -1, 205, -1, 4, 150, 151, + -1, 35, 150, 4, 151, -1, 4, 150, 155, 239, + 156, 151, -1, 231, -1, 238, -1, 239, 154, 231, + -1, 239, 154, 238, -1, 155, 231, 154, 231, 154, + 231, 154, 231, 156, -1, 155, 231, 154, 231, 154, + 231, 156, -1, 4, -1, 4, 152, 103, 152, 4, + -1, 155, 242, 156, -1, 4, 150, 231, 151, 152, + 104, -1, 240, -1, 242, 154, 240, -1, 244, -1, + 4, -1, 4, 152, 4, -1, 4, 150, 231, 151, + 152, 4, -1, 5, -1, 43, -1, 118, 148, 243, + 149, -1, 119, 148, 243, 154, 243, 149, -1, 38, + 148, 243, 154, 243, 149, -1, 39, 148, 243, 149, + -1, 40, 148, 243, 149, -1, 37, 148, 243, 149, + -1, 37, 148, 243, 154, 239, 149, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -936,40 +940,40 @@ static const yytype_uint16 yyrline[] = 493, 504, 503, 520, 537, 560, 559, 573, 574, 575, 576, 577, 581, 582, 588, 590, 653, 683, 716, 762, 777, 793, 802, 808, 817, 835, 853, 862, 874, 879, - 887, 907, 930, 941, 949, 971, 994, 1022, 1034, 1048, - 1048, 1050, 1052, 1063, 1075, 1074, 1087, 1088, 1092, 1103, - 1116, 1120, 1131, 1134, 1147, 1150, 1160, 1184, 1183, 1203, - 1225, 1243, 1264, 1282, 1312, 1342, 1360, 1378, 1404, 1422, - 1441, 1440, 1463, 1481, 1520, 1526, 1532, 1539, 1564, 1589, - 1606, 1623, 1655, 1654, 1678, 1696, 1713, 1730, 1729, 1755, - 1760, 1765, 1770, 1775, 1798, 1804, 1815, 1816, 1821, 1824, - 1828, 1851, 1874, 1897, 1925, 1946, 1969, 1990, 2012, 2032, - 2144, 2163, 2201, 2310, 2319, 2325, 2340, 2368, 2385, 2399, - 2405, 2411, 2420, 2434, 2476, 2493, 2508, 2527, 2539, 2563, - 2567, 2574, 2580, 2585, 2591, 2595, 2599, 2609, 2626, 2643, - 2664, 2685, 2720, 2728, 2734, 2741, 2745, 2754, 2762, 2770, - 2779, 2778, 2792, 2791, 2805, 2804, 2818, 2817, 2830, 2837, - 2844, 2851, 2858, 2865, 2872, 2879, 2886, 2894, 2893, 2906, - 2905, 2918, 2917, 2930, 2929, 2942, 2941, 2954, 2953, 2966, - 2965, 2978, 2977, 2990, 2989, 3005, 3008, 3014, 3023, 3043, - 3066, 3070, 3074, 3078, 3082, 3086, 3105, 3118, 3121, 3137, - 3140, 3153, 3156, 3162, 3165, 3172, 3228, 3298, 3303, 3370, - 3406, 3449, 3474, 3501, 3545, 3568, 3591, 3594, 3603, 3607, - 3617, 3652, 3653, 3657, 3662, 3673, 3695, 3696, 3697, 3698, - 3699, 3700, 3701, 3702, 3703, 3710, 3711, 3712, 3713, 3714, - 3715, 3716, 3717, 3718, 3719, 3720, 3721, 3722, 3723, 3724, - 3725, 3726, 3727, 3728, 3729, 3730, 3731, 3732, 3733, 3734, - 3735, 3736, 3737, 3738, 3739, 3740, 3741, 3743, 3744, 3745, - 3746, 3747, 3748, 3749, 3750, 3751, 3752, 3753, 3754, 3755, - 3756, 3757, 3758, 3759, 3760, 3761, 3762, 3763, 3772, 3773, - 3774, 3775, 3776, 3777, 3778, 3782, 3802, 3821, 3839, 3851, - 3868, 3889, 3894, 3899, 3909, 3919, 3927, 3931, 3935, 3939, - 3943, 3950, 3954, 3958, 3962, 3969, 3974, 3981, 3986, 3990, - 3995, 3999, 4007, 4018, 4022, 4034, 4042, 4050, 4057, 4068, - 4088, 4092, 4096, 4100, 4104, 4114, 4124, 4136, 4148, 4169, - 4174, 4178, 4182, 4194, 4198, 4210, 4217, 4227, 4231, 4246, - 4251, 4258, 4262, 4275, 4283, 4294, 4298, 4306, 4314, 4322, - 4330, 4344, 4358, 4362 + 887, 907, 930, 941, 949, 971, 994, 1019, 1040, 1052, + 1066, 1066, 1068, 1070, 1081, 1093, 1092, 1105, 1106, 1110, + 1121, 1134, 1138, 1149, 1152, 1165, 1168, 1178, 1202, 1201, + 1221, 1243, 1261, 1282, 1300, 1330, 1360, 1378, 1396, 1422, + 1440, 1459, 1458, 1481, 1499, 1538, 1544, 1550, 1557, 1582, + 1607, 1624, 1641, 1673, 1672, 1696, 1714, 1731, 1748, 1747, + 1773, 1778, 1783, 1788, 1793, 1816, 1822, 1833, 1834, 1839, + 1842, 1846, 1869, 1892, 1915, 1943, 1964, 1987, 2008, 2030, + 2050, 2162, 2181, 2219, 2328, 2337, 2343, 2358, 2386, 2403, + 2417, 2423, 2429, 2438, 2452, 2494, 2511, 2526, 2545, 2557, + 2581, 2585, 2592, 2598, 2603, 2609, 2613, 2617, 2627, 2644, + 2661, 2682, 2703, 2738, 2746, 2752, 2759, 2763, 2772, 2780, + 2788, 2797, 2796, 2810, 2809, 2823, 2822, 2836, 2835, 2848, + 2855, 2862, 2869, 2876, 2883, 2890, 2897, 2904, 2912, 2911, + 2924, 2923, 2936, 2935, 2948, 2947, 2960, 2959, 2972, 2971, + 2984, 2983, 2996, 2995, 3008, 3007, 3023, 3026, 3032, 3041, + 3061, 3084, 3088, 3092, 3096, 3100, 3104, 3123, 3136, 3139, + 3155, 3158, 3171, 3174, 3180, 3183, 3190, 3246, 3316, 3321, + 3388, 3424, 3467, 3492, 3519, 3563, 3586, 3609, 3612, 3621, + 3625, 3635, 3670, 3671, 3675, 3680, 3691, 3713, 3714, 3715, + 3716, 3717, 3718, 3719, 3720, 3721, 3728, 3729, 3730, 3731, + 3732, 3733, 3734, 3735, 3736, 3737, 3738, 3739, 3740, 3741, + 3742, 3743, 3744, 3745, 3746, 3747, 3748, 3749, 3750, 3751, + 3752, 3753, 3754, 3755, 3756, 3757, 3758, 3759, 3761, 3762, + 3763, 3764, 3765, 3766, 3767, 3768, 3769, 3770, 3771, 3772, + 3773, 3774, 3775, 3776, 3777, 3778, 3779, 3780, 3781, 3790, + 3791, 3792, 3793, 3794, 3795, 3796, 3800, 3820, 3839, 3857, + 3869, 3886, 3907, 3912, 3917, 3927, 3937, 3945, 3949, 3953, + 3957, 3961, 3968, 3972, 3976, 3980, 3987, 3992, 3999, 4004, + 4008, 4013, 4017, 4025, 4036, 4040, 4052, 4060, 4068, 4075, + 4086, 4106, 4110, 4114, 4118, 4122, 4132, 4142, 4154, 4166, + 4187, 4192, 4196, 4200, 4212, 4216, 4228, 4235, 4245, 4249, + 4264, 4269, 4276, 4280, 4293, 4301, 4312, 4316, 4324, 4332, + 4340, 4348, 4362, 4376, 4380 }; #endif @@ -1060,40 +1064,40 @@ static const yytype_uint8 yyr1[] = 174, 176, 175, 177, 177, 179, 178, 180, 180, 180, 180, 180, 181, 181, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, - 182, 182, 182, 182, 182, 182, 182, 182, 182, 183, - 183, 184, 184, 184, 185, 184, 186, 186, 187, 187, - 188, 188, 189, 189, 190, 190, 191, 192, 191, 191, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 183, 183, 184, 184, 184, 185, 184, 186, 186, 187, + 187, 188, 188, 189, 189, 190, 190, 191, 192, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, - 193, 191, 191, 191, 191, 191, 191, 191, 191, 191, - 191, 191, 194, 191, 191, 191, 191, 195, 191, 196, - 196, 196, 196, 196, 196, 196, 197, 197, 198, 198, - 198, 198, 198, 198, 199, 199, 199, 199, 199, 199, - 199, 199, 199, 200, 200, 200, 200, 200, 201, 202, - 202, 202, 202, 203, 203, 203, 203, 203, 203, 203, - 203, 203, 203, 203, 203, 203, 203, 204, 204, 204, - 204, 204, 204, 204, 204, 204, 204, 205, 205, 205, - 206, 205, 207, 205, 208, 205, 209, 205, 205, 205, - 205, 205, 205, 205, 205, 205, 205, 210, 205, 211, - 205, 212, 205, 213, 205, 214, 205, 215, 205, 216, - 205, 217, 205, 218, 205, 219, 219, 220, 220, 220, - 220, 220, 220, 220, 220, 220, 220, 221, 221, 222, - 222, 223, 223, 224, 224, 225, 225, 225, 225, 225, - 225, 225, 226, 226, 227, 227, 227, 227, 228, 228, - 228, 229, 229, 230, 230, 230, 231, 231, 231, 231, + 191, 193, 191, 191, 191, 191, 191, 191, 191, 191, + 191, 191, 191, 194, 191, 191, 191, 191, 195, 191, + 196, 196, 196, 196, 196, 196, 196, 197, 197, 198, + 198, 198, 198, 198, 198, 199, 199, 199, 199, 199, + 199, 199, 199, 199, 200, 200, 200, 200, 200, 201, + 202, 202, 202, 202, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 204, 204, + 204, 204, 204, 204, 204, 204, 204, 204, 205, 205, + 205, 206, 205, 207, 205, 208, 205, 209, 205, 205, + 205, 205, 205, 205, 205, 205, 205, 205, 210, 205, + 211, 205, 212, 205, 213, 205, 214, 205, 215, 205, + 216, 205, 217, 205, 218, 205, 219, 219, 220, 220, + 220, 220, 220, 220, 220, 220, 220, 220, 221, 221, + 222, 222, 223, 223, 224, 224, 225, 225, 225, 225, + 225, 225, 225, 226, 226, 227, 227, 227, 227, 228, + 228, 228, 229, 229, 230, 230, 230, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 232, 232, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, - 232, 232, 232, 232, 232, 232, 233, 233, 233, 233, - 233, 234, 234, 234, 234, 235, 235, 236, 236, 236, - 236, 236, 236, 237, 237, 238, 238, 238, 238, 238, - 238, 238, 238, 238, 238, 238, 238, 238, 238, 239, - 239, 239, 239, 240, 240, 240, 240, 241, 241, 242, - 242, 243, 243, 243, 243, 244, 244, 244, 244, 244, - 244, 244, 244, 244 + 232, 232, 232, 232, 232, 232, 232, 233, 233, 233, + 233, 233, 234, 234, 234, 234, 235, 235, 236, 236, + 236, 236, 236, 236, 237, 237, 238, 238, 238, 238, + 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, + 239, 239, 239, 239, 240, 240, 240, 240, 241, 241, + 242, 242, 243, 243, 243, 243, 244, 244, 244, 244, + 244, 244, 244, 244, 244 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1107,44 +1111,44 @@ static const yytype_uint8 yyr2[] = 3, 0, 15, 8, 14, 0, 6, 1, 1, 1, 1, 1, 1, 1, 5, 4, 6, 7, 9, 3, 6, 4, 6, 9, 6, 9, 5, 8, 8, 11, - 6, 9, 5, 7, 9, 9, 11, 9, 9, 0, - 1, 0, 3, 5, 0, 9, 0, 2, 3, 3, - 1, 1, 0, 5, 0, 2, 7, 0, 9, 6, - 7, 4, 7, 8, 8, 7, 7, 11, 8, 8, - 0, 9, 8, 9, 3, 4, 10, 7, 7, 8, - 8, 12, 0, 9, 8, 7, 8, 0, 9, 5, - 11, 5, 9, 4, 9, 9, 1, 1, 0, 2, - 6, 6, 6, 6, 8, 10, 14, 16, 12, 8, - 8, 6, 14, 4, 6, 6, 3, 4, 5, 3, - 3, 4, 4, 3, 7, 7, 3, 7, 3, 2, - 2, 2, 15, 2, 2, 2, 2, 6, 8, 8, - 10, 1, 2, 1, 3, 4, 1, 5, 11, 13, - 0, 7, 0, 13, 0, 15, 0, 6, 8, 8, - 8, 12, 12, 12, 14, 14, 14, 0, 12, 0, - 12, 0, 12, 0, 16, 0, 16, 0, 16, 0, - 18, 0, 18, 0, 18, 1, 2, 5, 7, 9, - 2, 2, 3, 2, 3, 9, 6, 0, 3, 0, - 1, 0, 2, 0, 2, 7, 6, 8, 5, 3, - 5, 6, 6, 12, 10, 10, 10, 10, 2, 3, - 6, 1, 1, 2, 5, 7, 1, 3, 2, 2, - 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 5, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 6, 4, 4, 4, - 4, 4, 4, 6, 6, 6, 4, 4, 4, 4, + 6, 9, 5, 7, 9, 9, 11, 7, 9, 9, + 0, 1, 0, 3, 5, 0, 9, 0, 2, 3, + 3, 1, 1, 0, 5, 0, 2, 7, 0, 9, + 6, 7, 4, 7, 8, 8, 7, 7, 11, 8, + 8, 0, 9, 8, 9, 3, 4, 10, 7, 7, + 8, 8, 12, 0, 9, 8, 7, 8, 0, 9, + 5, 11, 5, 9, 4, 9, 9, 1, 1, 0, + 2, 6, 6, 6, 6, 8, 10, 14, 16, 12, + 8, 8, 6, 14, 4, 6, 6, 3, 4, 5, + 3, 3, 4, 4, 3, 7, 7, 3, 7, 3, + 2, 2, 2, 15, 2, 2, 2, 2, 6, 8, + 8, 10, 1, 2, 1, 3, 4, 1, 5, 11, + 13, 0, 7, 0, 13, 0, 15, 0, 6, 8, + 8, 8, 12, 12, 12, 14, 14, 14, 0, 12, + 0, 12, 0, 12, 0, 16, 0, 16, 0, 16, + 0, 18, 0, 18, 0, 18, 1, 2, 5, 7, + 9, 2, 2, 3, 2, 3, 9, 6, 0, 3, + 0, 1, 0, 2, 0, 2, 7, 6, 8, 5, + 3, 5, 6, 6, 12, 10, 10, 10, 10, 2, + 3, 6, 1, 1, 2, 5, 7, 1, 3, 2, + 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, 4, 4, - 4, 4, 4, 4, 6, 6, 6, 4, 1, 1, - 1, 1, 1, 1, 1, 1, 5, 4, 4, 2, - 5, 3, 6, 4, 7, 6, 1, 2, 2, 3, - 3, 11, 9, 7, 7, 1, 3, 1, 1, 2, - 3, 4, 5, 1, 1, 2, 3, 3, 5, 4, - 2, 2, 2, 2, 1, 1, 3, 4, 6, 1, - 1, 3, 3, 9, 7, 1, 5, 3, 6, 1, - 3, 1, 1, 3, 6, 1, 1, 4, 6, 6, - 4, 4, 4, 6 + 4, 4, 4, 4, 6, 6, 6, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 6, 4, + 4, 4, 4, 4, 4, 6, 6, 6, 4, 1, + 1, 1, 1, 1, 1, 1, 1, 5, 4, 4, + 2, 5, 3, 6, 4, 7, 6, 1, 2, 2, + 3, 3, 11, 9, 7, 7, 1, 3, 1, 1, + 2, 3, 4, 5, 1, 1, 2, 3, 3, 5, + 4, 2, 2, 2, 2, 1, 1, 3, 4, 6, + 1, 1, 3, 3, 9, 7, 1, 5, 3, 6, + 1, 3, 1, 1, 3, 6, 1, 1, 4, 6, + 6, 4, 4, 4, 6 }; -/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state - STATE-NUM when YYTABLE doesn't specify something else to do. Zero +/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. + Performed when YYTABLE doesn't specify something else to do. Zero means the default is an error. */ static const yytype_uint16 yydefact[] = { @@ -1153,155 +1157,156 @@ static const yytype_uint16 yydefact[] = 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, 191, - 0, 196, 0, 0, 193, 0, 0, 0, 0, 271, - 272, 5, 7, 6, 8, 9, 10, 21, 11, 12, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, + 0, 197, 0, 0, 194, 0, 0, 0, 0, 272, + 273, 5, 7, 6, 8, 9, 10, 21, 11, 12, 13, 20, 19, 14, 15, 16, 17, 18, 0, 22, - 338, 345, 405, 57, 339, 340, 341, 0, 0, 0, + 339, 346, 406, 57, 340, 341, 342, 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, 406, 0, 0, 0, 0, 342, 343, 344, + 0, 0, 407, 0, 0, 0, 0, 343, 344, 345, 61, 60, 59, 58, 0, 0, 0, 63, 62, 0, - 0, 0, 0, 148, 0, 0, 0, 276, 0, 0, - 0, 0, 181, 0, 183, 180, 184, 185, 91, 0, + 0, 0, 0, 149, 0, 0, 0, 277, 0, 0, + 0, 0, 182, 0, 184, 181, 185, 186, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 186, 0, 0, 0, 0, - 0, 0, 107, 120, 132, 137, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 356, - 0, 0, 0, 0, 0, 148, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 148, 0, 268, 0, - 0, 0, 0, 345, 374, 0, 0, 0, 0, 0, - 0, 0, 384, 385, 367, 373, 0, 368, 0, 0, - 0, 0, 395, 0, 0, 0, 0, 0, 179, 0, - 0, 192, 0, 148, 0, 148, 273, 0, 0, 0, - 0, 0, 349, 32, 405, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 187, 0, 0, 0, 0, + 0, 0, 108, 121, 133, 138, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 357, + 0, 0, 0, 0, 0, 149, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 149, 0, 269, 0, + 0, 0, 0, 346, 375, 0, 0, 0, 0, 0, + 0, 0, 385, 386, 368, 374, 0, 369, 0, 0, + 0, 0, 396, 0, 0, 0, 0, 0, 180, 0, + 0, 193, 0, 149, 0, 149, 274, 0, 0, 0, + 0, 0, 350, 32, 406, 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, 0, 345, 279, 278, 280, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 147, - 0, 146, 0, 69, 176, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 346, 280, 279, 281, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 148, + 0, 147, 0, 69, 177, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 173, 124, 0, 0, 0, 89, 0, 0, 389, 390, + 174, 125, 0, 0, 0, 90, 0, 0, 390, 391, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 251, 251, + 0, 0, 0, 0, 0, 0, 0, 0, 252, 252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 358, 357, 0, 0, 0, 0, 148, - 148, 0, 0, 0, 0, 0, 0, 0, 206, 0, - 148, 0, 0, 0, 0, 0, 253, 0, 0, 0, - 166, 0, 0, 0, 269, 0, 0, 0, 0, 0, - 0, 380, 0, 381, 382, 383, 0, 278, 375, 369, - 0, 0, 0, 259, 178, 0, 0, 0, 0, 0, - 148, 0, 0, 0, 0, 194, 169, 0, 170, 0, - 0, 0, 0, 351, 0, 0, 71, 0, 0, 0, + 0, 0, 0, 359, 358, 0, 0, 0, 0, 149, + 149, 0, 0, 0, 0, 0, 0, 0, 207, 0, + 149, 0, 0, 0, 0, 0, 254, 0, 0, 0, + 167, 0, 0, 0, 270, 0, 0, 0, 0, 0, + 0, 381, 0, 382, 383, 384, 0, 279, 376, 370, + 0, 0, 0, 260, 179, 0, 0, 0, 0, 0, + 149, 0, 0, 0, 0, 195, 170, 0, 171, 0, + 0, 0, 0, 352, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 402, - 0, 401, 0, 0, 0, 0, 0, 0, 0, 0, - 277, 57, 0, 0, 0, 57, 0, 0, 0, 0, - 0, 143, 0, 0, 0, 0, 149, 65, 0, 294, - 293, 292, 291, 287, 288, 290, 289, 282, 281, 283, - 284, 285, 286, 125, 0, 0, 0, 0, 90, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 403, + 0, 402, 0, 0, 0, 0, 0, 0, 0, 0, + 278, 57, 0, 0, 0, 57, 0, 0, 0, 0, + 0, 144, 0, 0, 0, 0, 150, 65, 0, 295, + 294, 293, 292, 288, 289, 291, 290, 283, 282, 284, + 285, 286, 287, 126, 0, 0, 0, 0, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 249, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 111, 0, 0, 0, 360, - 359, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 167, 0, 0, 163, 0, 0, 0, 0, 386, 0, - 0, 0, 0, 0, 370, 377, 0, 283, 376, 0, - 0, 0, 0, 0, 0, 0, 0, 195, 0, 171, - 172, 0, 0, 0, 347, 353, 0, 42, 0, 0, - 0, 55, 0, 33, 34, 35, 36, 37, 296, 317, - 297, 318, 298, 319, 299, 320, 300, 321, 301, 322, - 302, 323, 303, 324, 304, 325, 316, 337, 305, 326, - 0, 0, 307, 328, 308, 329, 309, 330, 310, 331, - 311, 332, 312, 333, 0, 0, 0, 0, 0, 0, - 0, 0, 412, 0, 0, 410, 411, 82, 0, 407, + 0, 0, 250, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 112, 0, 0, 0, 361, + 360, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 201, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 168, 0, 0, 164, 0, 0, 0, 0, 387, 0, + 0, 0, 0, 0, 371, 378, 0, 284, 377, 0, + 0, 0, 0, 0, 0, 0, 0, 196, 0, 172, + 173, 0, 0, 0, 348, 354, 0, 42, 0, 0, + 0, 55, 0, 33, 34, 35, 36, 37, 297, 318, + 298, 319, 299, 320, 300, 321, 301, 322, 302, 323, + 303, 324, 304, 325, 305, 326, 317, 338, 306, 327, + 0, 0, 308, 329, 309, 330, 310, 331, 311, 332, + 312, 333, 313, 334, 0, 0, 0, 0, 0, 0, + 0, 0, 413, 0, 0, 411, 412, 82, 0, 408, 0, 0, 0, 0, 0, 0, 0, 0, 76, 0, - 0, 0, 0, 348, 0, 0, 0, 0, 0, 25, - 23, 0, 0, 0, 64, 92, 0, 391, 392, 0, + 0, 0, 0, 349, 0, 0, 0, 0, 0, 25, + 23, 0, 0, 0, 64, 93, 0, 392, 393, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 247, 252, 250, 0, - 258, 0, 0, 100, 101, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 139, 141, 0, + 0, 0, 0, 0, 0, 0, 248, 253, 251, 0, + 259, 0, 0, 101, 102, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 140, 142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 235, 0, 197, 0, 0, 0, 0, 0, 0, 254, - 260, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 347, 387, 379, 371, 0, 0, 0, 0, 0, 0, - 0, 168, 0, 0, 0, 0, 0, 274, 0, 0, - 350, 0, 346, 0, 0, 0, 0, 0, 29, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 403, 0, + 236, 0, 198, 0, 0, 0, 0, 0, 0, 255, + 261, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 348, 388, 380, 372, 0, 0, 0, 0, 0, 0, + 0, 169, 0, 0, 0, 0, 0, 275, 0, 0, + 351, 0, 347, 0, 0, 0, 0, 0, 29, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 404, 0, 0, 0, 0, 66, 0, 0, 0, 0, 0, 70, - 72, 74, 0, 0, 399, 0, 80, 0, 0, 0, - 0, 295, 24, 0, 0, 0, 0, 0, 0, 104, - 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 109, 0, 0, 0, 0, 0, 0, 256, 0, - 0, 0, 0, 0, 0, 0, 0, 262, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 240, 0, - 0, 241, 0, 243, 0, 207, 236, 0, 0, 0, - 161, 0, 0, 0, 261, 0, 165, 164, 270, 0, - 30, 31, 0, 378, 372, 0, 0, 0, 396, 0, - 0, 0, 187, 0, 0, 0, 175, 352, 174, 0, - 0, 0, 0, 365, 0, 306, 327, 313, 334, 314, - 335, 315, 336, 0, 413, 409, 355, 408, 0, 57, - 0, 0, 0, 0, 67, 0, 0, 0, 397, 0, - 0, 0, 0, 26, 27, 0, 0, 0, 93, 106, - 0, 0, 0, 0, 0, 110, 0, 0, 127, 128, - 0, 0, 112, 135, 0, 0, 0, 102, 0, 255, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 177, - 0, 0, 0, 0, 148, 0, 217, 0, 219, 0, - 221, 0, 367, 0, 0, 242, 244, 0, 0, 201, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 388, - 115, 116, 0, 0, 0, 0, 83, 0, 275, 354, - 0, 38, 0, 0, 0, 0, 0, 40, 0, 0, - 0, 0, 77, 0, 0, 78, 0, 400, 150, 151, - 152, 153, 0, 0, 94, 0, 105, 113, 114, 118, - 0, 0, 129, 0, 0, 257, 122, 0, 0, 248, - 134, 0, 0, 0, 0, 119, 0, 130, 136, 0, - 0, 0, 0, 364, 0, 363, 0, 0, 208, 0, - 0, 209, 0, 0, 210, 0, 0, 0, 0, 0, - 0, 0, 160, 0, 0, 159, 0, 0, 0, 154, - 0, 0, 0, 0, 394, 0, 189, 188, 0, 0, - 0, 43, 0, 0, 0, 366, 0, 0, 0, 404, - 68, 73, 75, 0, 81, 0, 28, 0, 96, 0, - 0, 0, 0, 0, 0, 123, 108, 121, 133, 138, - 0, 0, 87, 88, 148, 0, 142, 0, 0, 0, - 0, 0, 0, 0, 237, 0, 0, 148, 0, 0, - 0, 0, 0, 145, 144, 0, 0, 0, 0, 84, - 85, 0, 39, 0, 0, 0, 41, 56, 0, 398, - 0, 0, 264, 265, 266, 267, 126, 0, 0, 0, - 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 246, 0, 0, 0, 202, 0, 0, 155, - 0, 0, 0, 393, 190, 0, 0, 0, 0, 0, - 79, 0, 0, 95, 97, 0, 0, 0, 140, 0, - 223, 0, 0, 225, 0, 0, 227, 0, 0, 0, - 238, 0, 198, 0, 148, 0, 0, 0, 117, 86, - 0, 47, 0, 53, 0, 0, 0, 103, 131, 263, - 361, 211, 0, 0, 218, 212, 0, 0, 220, 213, - 0, 0, 222, 0, 0, 0, 204, 0, 158, 0, - 0, 0, 0, 0, 0, 0, 99, 98, 0, 229, - 0, 231, 0, 233, 239, 245, 203, 199, 0, 0, - 0, 0, 44, 0, 51, 0, 0, 0, 214, 0, - 0, 215, 0, 0, 216, 0, 0, 162, 0, 156, - 0, 45, 0, 0, 182, 0, 0, 0, 0, 0, - 0, 205, 0, 0, 0, 0, 0, 224, 0, 226, - 0, 228, 0, 157, 46, 48, 0, 49, 0, 0, - 0, 0, 0, 0, 54, 230, 232, 234, 50, 52 + 72, 74, 0, 0, 400, 0, 80, 0, 0, 0, + 0, 296, 24, 0, 0, 0, 0, 0, 0, 105, + 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 110, 0, 0, 0, 0, 0, 0, 257, 0, + 0, 0, 0, 0, 0, 0, 0, 263, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 241, 0, + 0, 242, 0, 244, 0, 208, 237, 0, 0, 0, + 162, 0, 0, 0, 262, 0, 166, 165, 271, 0, + 30, 31, 0, 379, 373, 0, 0, 0, 397, 0, + 0, 0, 188, 0, 0, 0, 176, 353, 175, 0, + 0, 0, 0, 366, 0, 307, 328, 314, 335, 315, + 336, 316, 337, 0, 414, 410, 356, 409, 0, 57, + 0, 0, 0, 0, 67, 0, 0, 0, 398, 0, + 0, 0, 0, 26, 27, 0, 0, 0, 94, 107, + 0, 0, 0, 0, 0, 111, 0, 0, 128, 129, + 0, 0, 113, 136, 0, 0, 0, 103, 0, 256, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 178, + 0, 0, 0, 0, 149, 0, 218, 0, 220, 0, + 222, 0, 368, 0, 0, 243, 245, 0, 0, 202, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 389, + 116, 117, 0, 0, 0, 0, 83, 87, 0, 276, + 355, 0, 38, 0, 0, 0, 0, 0, 40, 0, + 0, 0, 0, 77, 0, 0, 78, 0, 401, 151, + 152, 153, 154, 0, 0, 95, 0, 106, 114, 115, + 119, 0, 0, 130, 0, 0, 258, 123, 0, 0, + 249, 135, 0, 0, 0, 0, 120, 0, 131, 137, + 0, 0, 0, 0, 365, 0, 364, 0, 0, 209, + 0, 0, 210, 0, 0, 211, 0, 0, 0, 0, + 0, 0, 0, 161, 0, 0, 160, 0, 0, 0, + 155, 0, 0, 0, 0, 395, 0, 190, 189, 0, + 0, 0, 43, 0, 0, 0, 367, 0, 0, 0, + 405, 68, 73, 75, 0, 81, 0, 28, 0, 97, + 0, 0, 0, 0, 0, 0, 124, 109, 122, 134, + 139, 0, 0, 88, 89, 149, 0, 143, 0, 0, + 0, 0, 0, 0, 0, 238, 0, 0, 149, 0, + 0, 0, 0, 0, 146, 145, 0, 0, 0, 0, + 84, 85, 0, 39, 0, 0, 0, 41, 56, 0, + 399, 0, 0, 265, 266, 267, 268, 127, 0, 0, + 0, 0, 0, 363, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 247, 0, 0, 0, 203, 0, 0, + 156, 0, 0, 0, 394, 191, 0, 0, 0, 0, + 0, 79, 0, 0, 96, 98, 0, 0, 0, 141, + 0, 224, 0, 0, 226, 0, 0, 228, 0, 0, + 0, 239, 0, 199, 0, 149, 0, 0, 0, 118, + 86, 0, 47, 0, 53, 0, 0, 0, 104, 132, + 264, 362, 212, 0, 0, 219, 213, 0, 0, 221, + 214, 0, 0, 223, 0, 0, 0, 205, 0, 159, + 0, 0, 0, 0, 0, 0, 0, 100, 99, 0, + 230, 0, 232, 0, 234, 240, 246, 204, 200, 0, + 0, 0, 0, 44, 0, 51, 0, 0, 0, 215, + 0, 0, 216, 0, 0, 217, 0, 0, 163, 0, + 157, 0, 45, 0, 0, 183, 0, 0, 0, 0, + 0, 0, 206, 0, 0, 0, 0, 0, 225, 0, + 227, 0, 229, 0, 158, 46, 48, 0, 49, 0, + 0, 0, 0, 0, 0, 54, 231, 233, 235, 50, + 52 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 2, 3, 71, 741, 72, 73, 465, 1080, 1086, - 663, 843, 1231, 1380, 664, 1342, 1406, 665, 1382, 666, - 667, 847, 144, 262, 74, 559, 355, 1188, 1241, 1284, - 772, 1118, 1012, 536, 381, 382, 383, 384, 232, 330, - 331, 77, 78, 79, 80, 81, 82, 233, 803, 1303, - 1358, 608, 1139, 1142, 1145, 1322, 1326, 1330, 1369, 1372, - 1375, 799, 800, 907, 769, 582, 617, 84, 85, 86, + -1, 2, 3, 71, 741, 72, 73, 465, 1081, 1087, + 663, 843, 1232, 1381, 664, 1343, 1407, 665, 1383, 666, + 667, 847, 144, 262, 74, 559, 355, 1189, 1242, 1285, + 772, 1119, 1012, 536, 381, 382, 383, 384, 232, 330, + 331, 77, 78, 79, 80, 81, 82, 233, 803, 1304, + 1359, 608, 1140, 1143, 1146, 1323, 1327, 1331, 1370, 1373, + 1376, 799, 800, 907, 769, 582, 617, 84, 85, 86, 87, 88, 89, 234, 147, 394, 199, 972, 973, 236, 237, 440, 244, 732, 875, 510, 511 }; @@ -1311,376 +1316,394 @@ static const yytype_int16 yydefgoto[] = #define YYPACT_NINF -1059 static const yytype_int16 yypact[] = { - 3924, 52, 64, 4005, -1059, -1059, 1833, 57, -35, -72, - 20, 74, 89, 113, 126, 44, -104, -9, 28, 26, - 49, 60, 14, 63, 70, 123, 145, 152, 209, 193, - 197, 252, 198, 202, 292, -13, 110, 251, 172, 301, - 301, 173, 256, 41, 269, 291, 298, 13, 59, 333, - 372, 385, 1986, 388, 245, 262, 270, 15, 4, -1059, - 276, -1059, 411, 278, -1059, 433, 444, 2, 32, -1059, + 3944, 16, 63, 4025, -1059, -1059, 1866, 32, 65, -81, + 40, 90, 142, 170, 181, 47, -128, 79, 155, 14, + 156, 175, 17, 200, 218, 134, 331, 349, 386, 372, + 382, 377, 387, 402, 417, 154, 301, 426, 344, -37, + -37, 348, 376, 46, 431, 437, 452, 20, 54, 455, + 504, 507, 2019, 514, 374, 385, 413, 19, 62, -1059, + 423, -1059, 520, 380, -1059, 530, 550, 2, 37, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, - -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, 34, -1059, - -1059, 21, 286, 98, -1059, -1059, -1059, 277, 364, 367, - 415, 428, 440, 448, 468, 495, 505, 514, 547, 561, - 566, 569, 586, 587, 598, 601, 637, 638, 306, 309, - 331, 335, -1059, 465, 336, 360, 386, -1059, -1059, -1059, - -1059, -1059, -1059, -1059, 3532, 3532, 3532, -1059, -1059, 3532, - 1758, 9, 469, 457, 2427, 483, 1142, -1059, 534, 548, - 3532, 506, -1059, 3532, -1059, -1059, -1059, -1059, -1059, 3532, - 3456, 3532, 3532, 391, 3532, 3456, 3532, 3532, 416, 3456, - 3532, 3532, 2427, 424, 430, -1059, 436, 441, 1986, 1986, - 1986, 451, -1059, -1059, -1059, -1059, 459, 474, 484, 2427, - 3532, 609, 2427, 301, 301, 301, 3532, 3532, -67, -1059, - 75, 301, 476, 480, 501, 3244, 81, -100, 521, 522, - 526, 1986, 2427, 535, 43, 509, -1059, 676, -1059, 531, - 550, 544, 558, 325, -1059, 563, 33, 715, 722, 740, - 2574, 1679, -1059, -1059, 3664, -1059, 744, -1059, 747, 3532, - 3532, 3532, 602, 3532, 606, 666, 3532, 3532, -1059, 3532, - 762, -1059, 769, -1059, 797, -1059, -1059, 2427, 621, 3532, - 774, 627, -1059, -1059, -1059, 801, 3532, 3532, 3532, 3532, - 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, - 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, - 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, - 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, 315, 315, - 315, 315, 3532, 315, 315, 315, 624, 643, 643, 643, - 6322, 76, 3456, 5563, 319, 661, 809, 673, 674, -1059, - 672, 4078, 826, -1059, -1059, 3532, 3532, 3532, 3532, 3532, - 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, 3532, - -1059, -1059, 1262, 161, 4861, 29, 6343, 3456, 3696, -1059, - 232, 6364, 6385, 3532, 6406, 533, 6427, 6448, 3532, 640, - 6469, 6490, 835, 3532, 3532, 3532, 3532, 845, 849, 849, - 3532, 695, 712, 713, 717, 3532, 3532, 3532, 861, 4781, - 723, 889, -33, -1059, -1059, 4887, 4913, 301, 301, 457, - 457, 67, 3532, 3532, 3532, 3244, 3244, 3532, 4078, 93, - -1059, 3532, 3532, 3532, 3532, 3532, 869, 893, 3532, 900, - -1059, 3532, 3532, 1086, -1059, 3456, 3456, 3532, 3532, 3091, - 903, -1059, 3532, -1059, -1059, -1059, 3456, 643, -1059, -1059, - 645, 3532, 2721, -1059, -1059, 6511, 6532, 6553, 810, 4939, - -1059, 757, 3715, 6574, 5586, -1059, -1059, 1362, -1059, 1423, - 646, 3532, 5609, -36, 3532, 6, -1059, 6595, 5632, 6616, - 5655, 6637, 5678, 6658, 5701, 6679, 5724, 6700, 5747, 6721, - 5770, 6742, 5793, 6763, 5816, 6784, 5839, 6805, 5862, 4965, - 4991, 6826, 5885, 6847, 5908, 6868, 5931, 6889, 5954, 6910, - 5977, 6931, 6000, 5017, 5043, 5069, 5095, 5121, 5147, 662, - 168, -1059, 768, 788, 789, 1495, 775, 802, 779, 3532, - -1059, -1059, 2427, 665, 238, 98, 3532, 911, 938, 17, - 799, -1059, -86, 31, 30, -57, -1059, -1059, 3734, 838, - 1208, 901, 901, 763, 763, 763, 763, 395, 395, 643, - 643, 643, 643, -1059, 5, 3456, 3532, 955, -1059, 962, - 984, 3456, 3456, 896, 992, 998, 6952, 1002, 906, 1006, - 1024, 6973, 927, 1037, 1039, 3532, 6994, 4109, 7015, 7036, - 3532, 2427, 1045, 1048, 7057, 3597, 3597, 3597, 3597, 7078, - 7099, 7120, 2427, 3456, 905, -1059, 301, 3532, 3532, -1059, - -1059, 904, 907, 3532, 5173, 5199, 5225, 4835, 7, 301, - 1866, 7141, 4137, 7162, 7183, 7204, 3532, 1055, 3532, 7225, - -1059, 6023, 6046, -1059, 668, 692, 6069, 6092, -1059, 3456, - 6115, 913, 4165, 693, -1059, 3761, 3456, 643, -1059, 1058, - 1059, 1060, 916, 3532, 2033, 3532, 3532, -1059, 46, -1059, - -1059, 2427, 1063, 6138, 77, -1059, 4193, -1059, 922, 924, - 919, -1059, 1069, -1059, -1059, -1059, -1059, -1059, -1059, -1059, + -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, 41, -1059, + -1059, 21, 410, 683, -1059, -1059, -1059, 228, 263, 337, + 379, 422, 451, 457, 474, 484, 488, 502, 541, 561, + 569, 577, 585, 588, 617, 618, 622, 649, 428, 442, + 446, 447, -1059, 591, 454, 460, 468, -1059, -1059, -1059, + -1059, -1059, -1059, -1059, 3571, 3571, 3571, -1059, -1059, 3571, + 3124, 22, 621, 147, 2460, 620, 770, -1059, 623, 636, + 3571, 640, -1059, 3571, -1059, -1059, -1059, -1059, -1059, 3571, + 3495, 3571, 3571, 526, 3571, 3495, 3571, 3571, 532, 3495, + 3571, 3571, 2460, 557, 553, -1059, 568, 595, 2019, 2019, + 2019, 599, -1059, -1059, -1059, -1059, 602, 613, 614, 2460, + 3571, 653, 2460, -37, -37, -37, 3571, 3571, -23, -1059, + -3, -37, 584, 600, 637, 3277, 255, -91, 645, 652, + 660, 2019, 2460, 664, 35, 512, -1059, 810, -1059, 666, + 670, 672, 679, 99, -1059, 690, 39, 828, 836, 858, + 2607, 1710, -1059, -1059, 3684, -1059, 856, -1059, 866, 3571, + 3571, 3571, 706, 3571, 718, 771, 3571, 3571, -1059, 3571, + 880, -1059, 883, -1059, 884, -1059, -1059, 2460, 775, 3571, + 926, 779, -1059, -1059, -1059, 938, 3571, 3571, 3571, 3571, + 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, + 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, + 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, + 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, 345, 345, + 345, 345, 3571, 345, 345, 345, 165, 798, 798, 798, + 6314, 87, 3495, 5555, 219, 799, 945, 814, 815, -1059, + 804, 4098, 969, -1059, -1059, 3571, 3571, 3571, 3571, 3571, + 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, 3571, + -1059, -1059, 1194, 93, 4853, 101, 6335, 3495, 3703, -1059, + 642, 6356, 6377, 3571, 6398, 661, 6419, 6440, 3571, 678, + 6461, 6482, 978, 3571, 3571, 3571, 3571, 984, 985, 985, + 3571, 855, 864, 869, 870, 3571, 3571, 3571, 1012, 4773, + 874, 1024, -56, -1059, -1059, 4879, 4905, -37, -37, 147, + 147, 78, 3571, 3571, 3571, 3277, 3277, 3571, 4098, 302, + -1059, 3571, 3571, 3571, 3571, 3571, 1029, 1037, 3571, 1048, + -1059, 3571, 3571, 615, -1059, 3495, 3495, 3571, 3571, 3195, + 1053, -1059, 3571, -1059, -1059, -1059, 3495, 798, -1059, -1059, + 698, 3571, 2754, -1059, -1059, 6503, 6524, 6545, 955, 4931, + -1059, 919, 3735, 6566, 5578, -1059, -1059, 793, -1059, 1756, + 712, 3571, 5601, -53, 3571, 12, -1059, 6587, 5624, 6608, + 5647, 6629, 5670, 6650, 5693, 6671, 5716, 6692, 5739, 6713, + 5762, 6734, 5785, 6755, 5808, 6776, 5831, 6797, 5854, 4957, + 4983, 6818, 5877, 6839, 5900, 6860, 5923, 6881, 5946, 6902, + 5969, 6923, 5992, 5009, 5035, 5061, 5087, 5113, 5139, 726, + 158, -1059, 911, 933, 944, 1227, 921, 948, 947, 3571, + -1059, -1059, 2460, 727, 55, 683, 3571, 1081, 1100, 33, + 956, -1059, -58, 31, 34, -38, -1059, -1059, 3754, 1244, + 1374, 1000, 1000, 214, 214, 214, 214, -86, -86, 798, + 798, 798, 798, -1059, 6, 3495, 3571, 1102, -1059, 1108, + 1107, 3495, 3495, 1013, 1109, 1113, 6944, 1116, 1018, 1118, + 1119, 6965, 1021, 1121, 1123, 3571, 6986, 3831, 7007, 7028, + 3571, 2460, 1127, 1138, 7049, 3636, 3636, 3636, 3636, 7070, + 7091, 7112, 2460, 3495, 981, -1059, -37, 3571, 3571, -1059, + -1059, 989, 993, 3571, 5165, 5191, 5217, 4827, 724, -37, + 1901, 7133, 4129, 7154, 7175, 7196, 3571, 1144, 3571, 7217, + -1059, 6015, 6038, -1059, 728, 731, 6061, 6084, -1059, 3495, + 6107, 1001, 4157, 742, -1059, 3773, 3495, 798, -1059, 1146, + 1148, 1149, 999, 3571, 2066, 3571, 3571, -1059, 52, -1059, + -1059, 2460, 1151, 6130, 84, -1059, 4185, -1059, 1011, 1014, + 1006, -1059, 1158, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, - 3532, 3532, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, - -1059, -1059, -1059, -1059, 3532, 3532, 3532, 3532, 3532, 3532, - 3532, 1074, -1059, 3456, 315, -1059, -1059, -1059, 3532, -1059, - 315, 1073, 929, 19, 3532, 1076, 1077, 2383, -1059, 1078, - 934, 15, 1080, -1059, 3456, 3456, 3456, 3456, 3532, -1059, - 952, 315, 169, 5251, -1059, 1081, 301, 3696, -1059, 1034, - 2427, 2427, 1084, 2427, 798, 2427, 2427, 1089, 1036, 2427, - 2427, 2530, 1093, 1094, 1095, 1097, 3809, -1059, -1059, 1099, - -1059, 1100, 959, 7456, -1059, 963, 980, 982, 1126, 1144, - 1148, 1150, 703, 1156, 324, 5277, 5303, -1059, -1059, 4221, - 301, 301, 301, 1157, 1158, 1008, 1017, 16, 40, -29, - -1059, 352, -1059, 7, 1161, 1163, 1167, 1169, 1172, 7456, - -1059, 2677, 1015, 1174, 1177, 1181, 1133, 1183, 1184, 710, - -79, -1059, -1059, -1059, 3532, 742, 2427, 2427, 2427, 1187, - 5329, -1059, 3780, 985, 1188, 1189, 1038, -1059, 1190, 1193, - -1059, 1192, -1059, 1051, 3532, 3532, 2427, 1047, -1059, 7246, - 6161, 7267, 6184, 7288, 6207, 7309, 6230, 6253, -1059, 207, - 1057, 7330, 1061, -1059, 76, 341, 1052, 1201, 2824, -1059, - -1059, -1059, 15, 3532, -1059, 764, -1059, 765, 771, 772, - 776, 7456, -1059, 1194, 8, 3532, 3309, 10, 1054, 1149, - 1149, 2427, 1205, 1062, 1065, 1207, 1210, 2427, 1066, 1212, - 1216, -1059, 1209, 2427, 2427, 2427, 1219, 1218, -1059, 2427, - 1222, 1223, 1224, 1225, 2427, 2427, 2427, -1059, 1226, 119, - 3532, 3532, 3532, 1070, 88, 221, 275, 1085, -1059, 2427, - 3532, -1059, 1220, -1059, 1230, -1059, -1059, 3244, -11, 2133, - -1059, 1082, 1083, 2868, -1059, 3456, -1059, -1059, -1059, 1088, - -1059, -1059, 1096, 7456, -1059, 1233, 1234, 1151, -1059, 3532, - 3532, 3532, -1059, 1238, 1239, 1245, -1059, -36, -1059, 3532, - 5355, 5381, 780, -1059, 3532, -1059, -1059, -1059, -1059, -1059, - -1059, -1059, -1059, 1103, -1059, -1059, -1059, -1059, 2427, 98, - 3532, 1251, 1254, 17, -1059, 1253, 6276, 15, -1059, 1256, - 1257, 1259, 1260, -1059, -1059, 315, 5407, 3532, 7456, -1059, - 3532, 301, 1263, 1280, 1281, -1059, 3532, 3532, -1059, -1059, - 1284, 3532, -1059, -1059, 1255, 1286, 1287, 1191, 3532, -1059, - 1288, 2427, 2427, 2427, 2427, 1290, 937, 1292, 3532, -1059, - 3597, 4249, 7351, 4025, 457, 301, 1294, 301, 1296, 301, - 1297, 3532, 363, 1153, 7372, -1059, -1059, 4277, 419, -1059, - 1298, 1531, 1299, 2427, 301, 1531, 1302, 792, 3532, -1059, - -1059, -1059, 2427, 4053, 752, 7393, -1059, 3162, -1059, -1059, - 224, 7456, 3532, 3532, 2427, 1155, 793, 7456, 1307, 1306, - 1308, 3215, -1059, 1309, 1311, -1059, 1166, -1059, -1059, -1059, - -1059, -1059, 1314, 3532, 7456, 4305, 12, -1059, -1059, -1059, - 4333, 4361, -1059, 4389, 1310, -1059, -1059, 1268, 1316, 7456, - -1059, 1317, 1318, 1322, 1323, -1059, 1175, -1059, -1059, 4808, - 3276, 1326, 1178, -1059, 3532, -1059, 1179, 421, -1059, 1198, - 423, -1059, 1202, 429, -1059, 1203, 6299, 1328, 2427, 1332, - 1204, 3532, -1059, 3015, 432, -1059, 806, 470, 482, -1059, - 1350, 4417, 1261, 3532, -1059, 3532, -1059, -1059, 3456, 3561, - 1354, -1059, 3532, 5433, 5459, -1059, 2427, 3532, 1357, -1059, - -1059, -1059, -1059, 15, -1059, 1264, -1059, 5485, -1059, 1358, - 1360, 1361, 1363, 1364, 1217, -1059, -1059, -1059, -1059, -1059, - 2427, 3456, -1059, -1059, 457, 4081, -1059, 3244, 7, 3244, - 7, 3244, 7, 1365, -1059, 811, 2427, -1059, 4445, 301, - 1367, 3456, 301, -1059, -1059, 3532, 4473, 4501, 827, -1059, - -1059, 1221, 7456, 3532, 3532, 832, 7456, -1059, 1372, -1059, - 3532, 833, -1059, -1059, -1059, -1059, -1059, 3532, 836, 840, - 1227, 3532, -1059, 4529, 488, 437, 4557, 490, 439, 4585, - 511, 582, -1059, 2427, 1373, 1312, 2180, 1229, 537, -1059, - 841, 539, 3626, -1059, -1059, 1374, 3532, 7414, 5511, 37, - -1059, 5537, 1381, -1059, -1059, 4613, 1380, 1382, -1059, 4641, - 1383, 3532, 1399, 1400, 3532, 1401, 1402, 3532, 1415, 1231, - -1059, 3532, -1059, 7, -1059, 3456, 1418, 3015, -1059, -1059, - 844, -1059, 3532, -1059, 2427, 3532, 2280, -1059, -1059, -1059, - -1059, -1059, 1272, 4669, -1059, -1059, 1276, 4697, -1059, -1059, - 1277, 4725, -1059, 1427, 3645, 636, 2327, 852, -1059, 542, - 863, 1431, 1283, 7435, 864, 4753, -1059, -1059, 7, 1433, - 7, 1434, 7, 1435, -1059, -1059, -1059, -1059, 7, 1436, - 3456, 1438, -1059, 315, -1059, 1291, 1439, 654, -1059, 1293, - 677, -1059, 1295, 694, -1059, 1303, 719, -1059, 867, -1059, - 870, -1059, 1304, 2427, -1059, 1441, 7, 1443, 7, 1445, - 7, -1059, 1446, 315, 1451, 315, 871, -1059, 741, -1059, - 755, -1059, 784, -1059, -1059, -1059, 874, -1059, 1457, 1458, - 1459, 1460, 315, 1461, -1059, -1059, -1059, -1059, -1059, -1059 + 3571, 3571, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, + -1059, -1059, -1059, -1059, 3571, 3571, 3571, 3571, 3571, 3571, + 3571, 1161, -1059, 3495, 345, -1059, -1059, -1059, 3571, -1059, + 345, 1162, 1019, 36, 3571, 1163, 1165, 1520, -1059, 1166, + 1040, 19, 1187, -1059, 3495, 3495, 3495, 3495, 3571, -1059, + 1060, 345, 164, 5243, -1059, 1190, -37, 3703, -1059, 1143, + 2460, 2460, 1192, 2460, 863, 2460, 2460, 1196, 1150, 2460, + 2460, 1786, 1198, 1202, 1203, 1204, -61, -1059, -1059, 1195, + -1059, 1205, 1065, 7448, -1059, 1066, 1068, 1069, 1212, 1214, + 1215, 1217, 765, 1220, 323, 5269, 5295, -1059, -1059, 4213, + -37, -37, -37, 1221, 1224, 1071, 1079, 9, 13, 235, + -1059, 341, -1059, 724, 1225, 1228, 1229, 1230, 1231, 7448, + -1059, 2416, 1076, 1233, 1234, 1235, 1188, 1239, 1241, 781, + 272, -1059, -1059, -1059, 3571, 784, 2460, 2460, 2460, 1245, + 5321, -1059, 3800, 1045, 1246, 1247, 1092, -1059, 1248, 1252, + -1059, 1253, -1059, 1104, 3571, 3571, 2460, 1103, -1059, 7238, + 6153, 7259, 6176, 7280, 6199, 7301, 6222, 6245, -1059, 209, + 1111, 7322, 1112, -1059, 87, 320, 1110, 1256, 2563, -1059, + -1059, -1059, 19, 3571, -1059, 794, -1059, 802, 805, 811, + 824, 7448, -1059, 1258, 7, 3571, 3348, 11, 1114, 1207, + 1207, 2460, 1260, 1117, 1120, 1261, 1267, 2460, 1122, 1268, + 1270, -1059, 1274, 2460, 2460, 2460, 1276, 1275, -1059, 2460, + 1277, 1278, 1280, 1281, 2460, 2460, 2460, -1059, 1283, 131, + 3571, 3571, 3571, 1128, 221, 233, 314, 1132, -1059, 2460, + 3571, -1059, 1285, -1059, 1287, -1059, -1059, 3277, 411, 2166, + -1059, 1139, 1140, 2901, -1059, 3495, -1059, -1059, -1059, 1142, + -1059, -1059, 1147, 7448, -1059, 1293, 1295, 1201, -1059, 3571, + 3571, 3571, -1059, 1298, 212, 1299, -1059, -53, -1059, 3571, + 5347, 5373, 825, -1059, 3571, -1059, -1059, -1059, -1059, -1059, + -1059, -1059, -1059, 1154, -1059, -1059, -1059, -1059, 2460, 683, + 3571, 1302, 1305, 33, -1059, 1308, 6268, 19, -1059, 1310, + 1313, 1314, 1331, -1059, -1059, 345, 5399, 3571, 7448, -1059, + 3571, -37, 1332, 1333, 1334, -1059, 3571, 3571, -1059, -1059, + 1336, 3571, -1059, -1059, 1306, 1337, 1338, 1240, 3571, -1059, + 1339, 2460, 2460, 2460, 2460, 1341, 982, 1342, 3571, -1059, + 3636, 4241, 7343, 4045, 147, -37, 1343, -37, 1344, -37, + 1345, 3571, 406, 1200, 7364, -1059, -1059, 4269, 367, -1059, + 1346, 1548, 1364, 2460, -37, 1548, 1365, 841, 3571, -1059, + -1059, -1059, 2460, 4073, 648, 7385, -1059, -1059, 1401, -1059, + -1059, 241, 7448, 3571, 3571, 2460, 1218, 842, 7448, 1368, + 1381, 1386, 2710, -1059, 1388, 1387, -1059, 1249, -1059, -1059, + -1059, -1059, -1059, 1390, 3571, 7448, 4297, 120, -1059, -1059, + -1059, 4325, 4353, -1059, 4381, 1392, -1059, -1059, 1347, 1393, + 7448, -1059, 1396, 1397, 1402, 1403, -1059, 1259, -1059, -1059, + 4800, 2857, 1407, 1282, -1059, 3571, -1059, 1251, 371, -1059, + 1288, 378, -1059, 1290, 419, -1059, 1291, 6291, 1430, 2460, + 1435, 1292, 3571, -1059, 3048, 421, -1059, 846, 439, 450, + -1059, 1442, 4409, 1348, 3571, -1059, 3571, -1059, -1059, 3495, + 3307, 1444, -1059, 3571, 5425, 5451, -1059, 2460, 3571, 1445, + -1059, -1059, -1059, -1059, 19, -1059, 1350, -1059, 5477, -1059, + 1446, 1449, 1450, 1451, 1452, 1307, -1059, -1059, -1059, -1059, + -1059, 2460, 3495, -1059, -1059, 147, 4101, -1059, 3277, 724, + 3277, 724, 3277, 724, 1454, -1059, 852, 2460, -1059, 4437, + -37, 1455, 3495, -37, -1059, -1059, 3571, 4465, 4493, 853, + -1059, -1059, 1309, 7448, 3571, 3571, 872, 7448, -1059, 1457, + -1059, 3571, 873, -1059, -1059, -1059, -1059, -1059, 3571, 877, + 881, 1312, 3571, -1059, 4521, 505, 607, 4549, 509, 667, + 4577, 522, 741, -1059, 2460, 1463, 1400, 2213, 1317, 556, + -1059, 885, 606, 3600, -1059, -1059, 1467, 3571, 7406, 5503, + 43, -1059, 5529, 1470, -1059, -1059, 4605, 1469, 1473, -1059, + 4633, 1474, 3571, 1475, 1476, 3571, 1477, 1478, 3571, 1479, + 1330, -1059, 3571, -1059, 724, -1059, 3495, 1482, 3048, -1059, + -1059, 886, -1059, 3571, -1059, 2460, 3571, 2313, -1059, -1059, + -1059, -1059, -1059, 1335, 4661, -1059, -1059, 1340, 4689, -1059, + -1059, 1349, 4717, -1059, 1483, 3665, 785, 2360, 894, -1059, + 610, 895, 1486, 1362, 7427, 907, 4745, -1059, -1059, 724, + 1487, 724, 1488, 724, 1490, -1059, -1059, -1059, -1059, 724, + 1491, 3495, 1492, -1059, 345, -1059, 1367, 1493, 843, -1059, + 1372, 857, -1059, 1373, 887, -1059, 1375, 904, -1059, 910, + -1059, 917, -1059, 1376, 2460, -1059, 1494, 724, 1497, 724, + 1523, 724, -1059, 1526, 345, 1527, 345, 925, -1059, 935, + -1059, 1010, -1059, 1032, -1059, -1059, -1059, 932, -1059, 1528, + 1530, 1531, 1532, 345, 1535, -1059, -1059, -1059, -1059, -1059, + -1059 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1059, -1059, -1059, -1059, 584, -1059, -1059, -1059, -1059, 194, + -1059, -1059, -1059, -1059, 658, -1059, -1059, -1059, -1059, 266, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, - -1059, -1059, -312, -3, -1059, -1059, -1059, -1059, -1059, -1059, - -135, -1059, 581, 1479, -1059, -1059, -1059, -1059, 3, -398, - -201, -1059, -1059, -1059, -1059, -1059, -1059, 1482, -1059, -1059, + -1059, -1059, -313, 4, -1059, -1059, -1059, -1059, -1059, -1059, + -104, -1059, 655, 1543, -1059, -1059, -1059, -1059, 3, -398, + -202, -1059, -1059, -1059, -1059, -1059, -1059, 1544, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, -1059, - -1059, -593, -710, -1059, -1059, 1109, -1059, -1059, -1059, -1059, - -1059, -1059, -1059, -6, -1059, 45, -1059, -1058, 422, 134, - 316, 222, -695, 499, -1059, -282, 18 + -1059, -738, -768, -1059, -1059, 1169, -1059, -1059, -1059, -1059, + -1059, -1059, -1059, -6, -1059, 45, -1059, -1058, 562, -66, + 333, -117, -695, 560, -1059, -281, -2 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which - number is the opposite. If zero, do what YYDEFACT says. - If YYTABLE_NINF, syntax error. */ + number is the opposite. If YYTABLE_NINF, syntax error. */ #define YYTABLE_NINF -5 static const yytype_int16 yytable[] = { - 146, 601, 602, 145, 408, 1156, 76, 252, 245, 522, - 657, 739, 526, 324, 1004, 423, 1009, 214, 168, 242, - 150, 730, 931, 865, 148, 258, 152, 512, 513, 514, - 163, 516, 517, 518, 168, 163, 874, 254, 431, 189, - 256, 793, 190, 1313, 159, 207, 933, 419, 411, 420, - 794, 160, 457, 834, 459, 412, 795, 796, 4, 793, - 797, 798, 159, 217, 5, 218, 137, 138, 794, 734, - 149, 397, 398, 839, 795, 796, 151, 793, 797, 798, - 154, 509, 264, 521, 198, 200, 794, 206, 399, 936, - 208, 171, 795, 796, 209, 155, 797, 798, 737, 658, - 659, 660, 661, 264, 210, 397, 398, 932, 219, 137, - 138, 265, 325, 326, 118, 119, 120, 121, 1235, 156, - 122, 596, 866, 867, 215, 1039, 1040, 935, 317, 318, - 319, 934, 157, 320, 323, 118, 119, 120, 121, 161, - 740, 122, 1248, 740, 352, 1059, 329, 354, 397, 398, - 397, 398, 246, 356, 358, 361, 362, 253, 364, 358, - 366, 367, 662, 358, 370, 371, 137, 138, 216, 169, - 243, 259, 731, 260, 164, 153, 162, 995, 261, 164, - 557, 165, 172, 558, 389, 736, 735, 255, 432, 257, - 395, 396, 1314, 421, 158, 125, 126, 166, 835, 396, - 173, 130, 131, 132, 133, 397, 398, 174, 167, 610, - 938, 170, 724, 397, 398, 175, 125, 126, 171, 397, - 398, 603, 137, 138, 437, 358, 397, 398, 936, 839, - 400, 397, 398, 445, 446, 447, 410, 449, 392, 393, - 452, 453, 1045, 454, 1046, 521, 401, 609, 176, 644, - 409, 182, 177, 462, 183, 181, 1344, 184, 191, 185, + 146, 601, 602, 408, 148, 1157, 76, 252, 522, 906, + 145, 526, 739, 1004, 423, 931, 657, 1009, 163, 933, + 159, 168, 4, 242, 214, 258, 324, 160, 512, 513, + 514, 936, 516, 517, 518, 163, 874, 730, 168, 419, + 865, 420, 254, 360, 431, 149, 152, 256, 365, 1314, + 207, 457, 369, 459, 346, 347, 348, 411, 217, 834, + 218, 349, 521, 5, 412, 938, 245, 151, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + 347, 348, 397, 398, 198, 200, 349, 206, 509, 264, + 159, 265, 137, 138, 521, 208, 154, 734, 596, 209, + 932, 194, 195, 219, 934, 658, 659, 660, 661, 210, + 171, 196, 377, 378, 379, 397, 398, 737, 197, 1236, + 150, 118, 119, 120, 121, 325, 326, 122, 317, 318, + 319, 215, 399, 320, 323, 397, 398, 1039, 1040, 866, + 867, 740, 740, 1249, 352, 416, 329, 354, 155, 397, + 398, 328, 400, 356, 358, 361, 362, 253, 364, 358, + 366, 367, 164, 358, 370, 371, 137, 138, 662, 165, + 936, 259, 169, 260, 243, 216, 156, 995, 261, 164, + 130, 131, 132, 133, 389, 421, 735, 157, 731, 736, + 395, 396, 255, 172, 432, 153, 257, 158, 1315, 396, + 137, 138, 125, 126, 835, 523, 189, 723, 610, 190, + 246, 724, 130, 131, 132, 133, 397, 398, 1077, 1078, + 38, 39, 40, 41, 437, 358, 525, 161, 46, 137, + 138, 49, 603, 445, 446, 447, 839, 449, 392, 393, + 452, 453, 554, 454, 137, 138, 401, 555, 644, 429, + 409, 260, 557, 462, 143, 558, 261, 1345, 397, 398, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 1097, 192, 178, 202, 515, 179, 203, 180, - 554, 204, 377, 378, 379, 555, 358, 712, 884, 509, - 264, 527, 713, 562, 211, 1396, 525, 193, 201, 538, + 507, 508, 1098, 162, 166, 793, 515, 712, 624, 625, + 137, 138, 713, 884, 794, 519, 358, 260, 562, 633, + 795, 796, 261, 167, 797, 798, 1397, 989, 527, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 549, 550, 551, 552, 186, 416, 212, 187, 989, 188, - 213, 437, 118, 119, 120, 121, 984, 566, 122, 397, - 398, 562, 571, 130, 131, 132, 133, 576, 577, 578, - 579, 441, 841, 1171, 584, 1047, 221, 1048, 1172, 589, - 590, 591, 360, 137, 138, 220, 562, 365, 563, 222, - 723, 369, 238, 239, 194, 195, 604, 605, 606, 317, - 318, 607, 329, 329, 196, 611, 612, 613, 614, 615, - 240, 205, 619, 397, 398, 621, 622, 248, 241, 358, - 358, 626, 627, 630, 247, 266, 632, 267, 249, 1049, - 358, 1050, 860, 125, 126, 635, 637, 250, 862, 194, - 195, 263, 599, 600, 130, 131, 132, 133, 251, 196, - 393, 775, 776, 777, 308, 653, 197, 309, 656, 883, - 655, 328, 397, 398, 137, 138, 130, 131, 132, 133, - 137, 138, 312, 327, 235, 429, 359, 260, 920, 310, - 143, 359, 261, 311, 313, 359, 137, 138, 1238, 333, - 397, 398, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 442, 347, 348, 937, 793, 314, 793, - 349, 353, 268, 630, 269, 270, 794, 271, 794, 1147, - 727, 725, 795, 796, 795, 796, 797, 798, 797, 798, - 38, 39, 40, 41, 315, 346, 347, 348, 46, 363, - 350, 49, 349, 726, 523, 936, 438, 359, 936, 358, - 743, 936, 988, 990, 351, 637, 747, 397, 398, 397, - 398, 397, 398, 272, 368, 273, 332, 397, 398, 761, - 397, 398, 373, 1151, 766, 1207, 274, 1209, 275, 773, - 773, 773, 773, 1211, 375, 374, 1219, 358, 276, 376, - 277, 785, 786, 1292, 372, 1295, 278, 789, 279, 380, - 235, 235, 235, 774, 774, 774, 774, 385, 397, 398, - 809, 388, 811, 390, 391, 1255, 280, 1258, 281, 1261, - 397, 398, 386, 358, 1221, 936, 397, 398, 397, 398, - 358, 402, 387, 235, 417, 403, 1222, 830, 359, 832, - 833, 784, 1291, 282, 1294, 283, 1136, 624, 625, 397, - 398, 840, 793, 284, 801, 285, 404, 936, 633, 422, - 936, 794, 286, 936, 287, 1297, 936, 795, 796, 413, - 414, 797, 798, 438, 415, 397, 398, 397, 398, 460, - 397, 398, 424, 418, 849, 850, 425, 562, 936, 568, - 936, 1305, 936, 1307, 427, 288, 1360, 289, 851, 852, - 853, 854, 855, 856, 857, 426, 793, 358, 428, 290, - 1335, 291, 861, 430, 292, 794, 293, 294, 868, 295, - 433, 795, 796, 1102, 793, 797, 798, 434, 358, 358, - 358, 358, 881, 794, 296, 298, 297, 299, 1298, 795, - 796, 359, 359, 797, 798, 435, 300, 793, 301, 302, - 443, 303, 359, 444, 448, 1367, 794, 1370, 638, 1373, - 1165, 450, 795, 796, 793, 1376, 797, 798, 455, 137, - 138, 461, 451, 794, 519, 456, 260, 742, 463, 795, - 796, 261, 464, 797, 798, 304, 306, 305, 307, 793, - 349, 887, 1356, 1398, 562, 1400, 572, 1402, 794, 562, - 651, 634, 652, 458, 795, 796, 1250, 466, 797, 798, - 1385, 793, 710, 528, 711, 782, 529, 840, 953, 562, - 794, 722, 562, 530, 815, 793, 795, 796, 531, 143, - 797, 798, 537, 1387, 794, 924, 925, 926, 970, 971, - 795, 796, 575, 585, 797, 798, 562, 562, 816, 823, - 1389, 819, 580, 893, 793, 894, 581, 562, 825, 918, - 586, 587, 991, 794, 562, 588, 952, 996, 592, 795, - 796, 359, 594, 797, 798, 1391, 616, 638, 748, 1006, - 1008, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 595, 562, 1409, 954, 349, - 618, 344, 345, 346, 347, 348, 620, 631, 1166, 359, - 349, 1410, 645, 642, 1041, 1042, 1043, 728, 997, 562, - 998, 999, 714, 1052, 1054, 562, 562, 1000, 1001, 718, - 562, 1057, 1002, 720, 1084, 859, 1085, 715, 716, 358, - 1411, 1126, 729, 1127, 721, 359, 562, 1177, 1160, 1178, - 733, 719, 359, 1073, 1074, 1075, 877, 878, 879, 880, - 1084, 744, 1220, 1081, 1079, 1263, 745, 1264, 1087, 337, + 549, 550, 551, 552, 130, 131, 132, 133, 170, 509, + 264, 437, 344, 345, 346, 347, 348, 566, 984, 397, + 398, 349, 571, 562, 137, 138, 171, 576, 577, 578, + 579, 397, 398, 841, 584, 1045, 266, 1046, 267, 589, + 590, 591, 118, 119, 120, 121, 173, 1047, 122, 1048, + 1172, 935, 175, 397, 398, 1173, 604, 605, 606, 317, + 318, 607, 329, 329, 174, 611, 612, 613, 614, 615, + 410, 268, 619, 269, 441, 621, 622, 137, 138, 358, + 358, 626, 627, 630, 839, 202, 632, 176, 203, 178, + 358, 204, 179, 860, 180, 635, 637, 177, 742, 862, + 397, 398, 599, 600, 181, 130, 131, 132, 133, 191, + 393, 182, 397, 398, 183, 653, 609, 184, 656, 185, + 883, 397, 398, 125, 126, 137, 138, 655, 1049, 186, + 1050, 1256, 187, 1259, 188, 1262, 782, 920, 192, 397, + 398, 793, 775, 776, 777, 270, 211, 271, 936, 1239, + 794, 936, 212, 359, 936, 937, 795, 796, 359, 193, + 797, 798, 359, 201, 213, 397, 398, 220, 221, 397, + 398, 222, 819, 630, 194, 195, 397, 398, 238, 825, + 727, 1152, 239, 726, 196, 1208, 248, 272, 725, 273, + 249, 205, 1210, 240, 250, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 442, 347, 348, 358, + 743, 988, 990, 349, 251, 637, 747, 397, 398, 397, + 398, 241, 1148, 438, 359, 263, 1336, 1059, 936, 761, + 274, 247, 275, 1212, 766, 1220, 308, 397, 398, 773, + 773, 773, 773, 774, 774, 774, 774, 358, 397, 398, + 309, 785, 786, 1222, 310, 311, 859, 789, 312, 276, + 936, 277, 313, 936, 1223, 278, 936, 279, 314, 936, + 809, 1368, 811, 1371, 235, 1374, 315, 877, 878, 879, + 880, 1377, 280, 358, 281, 327, 333, 7, 8, 350, + 358, 936, 282, 936, 283, 936, 284, 830, 285, 832, + 833, 784, 351, 397, 398, 353, 1137, 397, 398, 1399, + 286, 1401, 287, 1403, 801, 359, 1166, 390, 840, 1292, + 397, 398, 422, 1295, 532, 17, 18, 533, 20, 21, + 534, 23, 535, 25, 363, 26, 1298, 793, 29, 30, + 368, 32, 33, 34, 849, 850, 794, 37, 264, 288, + 438, 289, 795, 796, 397, 398, 797, 798, 851, 852, + 853, 854, 855, 856, 857, 373, 332, 358, 374, 290, + 1306, 291, 861, 54, 55, 56, 375, 292, 868, 293, + 118, 119, 120, 121, 1103, 294, 122, 295, 358, 358, + 358, 358, 881, 296, 372, 297, 298, 793, 299, 402, + 235, 235, 235, 376, 397, 398, 794, 380, 397, 398, + 385, 388, 795, 796, 391, 403, 797, 798, 359, 359, + 1308, 386, 387, 1293, 1361, 300, 302, 301, 303, 359, + 304, 623, 305, 235, 417, 638, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 562, 1058, 1275, 1091, 349, 1084, 1282, 1279, 1283, - 1084, 746, 1286, 961, 562, 562, 1287, 1306, 1177, 750, - 1341, 1104, 749, 767, 1105, 751, 562, 1090, 1359, 753, - 1110, 1111, 754, 755, 781, 1113, 1266, 562, 1084, 1361, - 1365, 562, 1119, 1392, 1393, 1084, 1394, 1408, 1412, 359, - 1413, 756, 1129, 758, 1130, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 759, 1146, 760, 329, 349, 768, - 359, 359, 359, 359, 770, 358, 1106, 783, 1131, 358, - 787, 810, 1161, 788, 821, 826, 827, 828, 829, 837, - 844, 1169, 845, 836, 846, 848, 1173, 1174, 858, 863, - 864, 1381, 869, 870, 873, 872, 876, 882, 886, 888, - 1137, 891, 1140, 898, 1143, 1170, 897, 1187, 7, 8, - 902, 903, 904, 1336, 905, 908, 1154, 909, 910, 1157, - 1158, 1404, 911, 1407, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 1205, 912, - 1418, 913, 349, 914, 962, 532, 17, 18, 533, 20, - 21, 534, 23, 535, 25, 1218, 26, 437, 334, 29, - 30, 915, 32, 33, 34, 916, 917, 1226, 37, 1227, - 919, 927, 358, 929, 928, 930, 1232, 1067, 939, 940, - 945, 1236, 889, 890, 941, 892, 942, 895, 896, 943, - 946, 899, 900, 947, 54, 55, 56, 948, 949, 950, - 951, 958, 963, 964, 965, 358, 966, 967, 968, 969, - 1003, 1253, 974, 1256, 992, 1259, 985, 329, 993, 1010, - 987, 1015, 1011, 1018, 1024, 358, 1019, 1016, 1022, 1272, - 1017, 1021, 1023, 1028, 1029, 1044, 1055, 1277, 1278, 1031, - 1032, 1033, 1034, 1038, 1281, 1051, 1056, 1063, 1064, 1070, - 1071, 1285, 623, 1068, 1076, 1289, 1077, 1069, 955, 956, - 957, 1078, 1254, 1072, 1257, 1088, 1260, 1092, 1093, 1095, - 1114, 359, 1098, 1099, 1268, 1100, 1101, 1271, 553, 1107, - 1087, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 1323, 1108, 1109, 1327, 349, - 1112, 1331, 1115, 1116, 1120, 1334, 1125, 1117, 1128, 358, - 1138, 358, 1141, 1144, 1152, 1155, 1343, 1148, 1159, 1345, - 1176, 1179, 1180, 1014, 1181, 1193, 1183, 1184, 1185, 1020, - 1186, 1194, 1195, 1196, 1197, 1025, 1026, 1027, 1198, 1199, - 1200, 1030, 1203, 1204, 1214, 1206, 1035, 1036, 1037, 1216, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 1053, 1339, 1208, 358, 349, 1223, 1210, 1212, 1217, - 1230, 1062, 1225, 1237, 1242, 1066, 1243, 1244, 1239, 1245, - 1246, 1262, 1247, 1269, 7, 8, 1276, 359, 1280, 1300, - 1309, 359, 1301, 1288, 1304, 1316, 1318, 1333, 1319, 1321, - 1228, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 1324, 1325, 1328, 1329, 349, - 1089, 532, 17, 18, 533, 20, 21, 534, 23, 535, - 25, 1332, 26, 1249, 1338, 29, 30, 1348, 32, 33, - 34, 1350, 1352, 1354, 37, 7, 8, 1362, 1363, 1368, - 1371, 1374, 1377, 1270, 1379, 1384, 1383, 1397, 1386, 1399, - 1388, 1401, 1403, 1121, 1122, 1123, 1124, 1405, 1390, 1395, - 54, 55, 56, 1414, 1415, 1416, 1417, 1419, 1005, 438, - 1310, 1013, 532, 17, 18, 533, 20, 21, 534, 23, - 535, 25, 75, 26, 359, 83, 29, 30, 583, 32, - 33, 34, 1094, 0, 1162, 37, 0, 0, 0, 0, - 0, 717, 0, 0, 0, 0, 1175, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 359, 649, 0, - 0, 54, 55, 56, 0, 0, 0, 1337, 0, 1340, - 0, 0, 0, 0, 90, 223, 0, 359, 0, 0, - 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, + 348, 887, 404, 413, 793, 349, 562, 306, 563, 307, + 414, 125, 126, 794, 1167, 7, 8, 1251, 415, 795, + 796, 793, 418, 797, 798, 562, 424, 568, 953, 460, + 794, 425, 427, 1296, 840, 426, 795, 796, 1067, 428, + 797, 798, 562, 433, 572, 924, 925, 926, 970, 971, + 430, 434, 532, 17, 18, 533, 20, 21, 534, 23, + 535, 25, 562, 26, 634, 793, 29, 30, 448, 32, + 33, 34, 443, 435, 794, 37, 651, 996, 652, 991, + 795, 796, 444, 450, 797, 798, 710, 451, 711, 1006, + 1008, 562, 562, 722, 815, 562, 455, 816, 359, 456, + 458, 54, 55, 56, 638, 748, 562, 1299, 823, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, 347, 348, 793, 1041, 1042, 1043, 349, 893, 562, + 894, 918, 794, 1052, 1054, 461, 359, 793, 795, 796, + 463, 1057, 797, 798, 464, 562, 794, 952, 562, 358, + 954, 1357, 795, 796, 466, 349, 797, 798, 997, 649, + 998, 528, 529, 1073, 1074, 1075, 562, 793, 999, 562, + 531, 1000, 359, 1082, 530, 562, 794, 1001, 1088, 359, + 143, 1080, 795, 796, 793, 537, 797, 798, 562, 1085, + 1002, 1086, 1058, 794, 1092, 575, 1127, 1091, 1128, 795, + 796, 580, 581, 797, 798, 562, 1178, 1161, 1179, 1386, + 1085, 1105, 1221, 585, 1106, 793, 1264, 562, 1265, 1276, + 1111, 1112, 586, 1388, 794, 1114, 1267, 587, 588, 592, + 795, 796, 1120, 594, 797, 798, 1085, 1283, 1280, 1284, + 595, 1085, 1130, 1287, 1131, 562, 616, 1288, 1132, 562, + 1178, 1307, 1342, 1390, 618, 1147, 359, 329, 562, 562, + 1360, 1362, 1229, 961, 620, 358, 1107, 631, 642, 358, + 1392, 1085, 1162, 1366, 562, 714, 1393, 359, 359, 359, + 359, 1394, 1170, 1395, 645, 718, 1171, 1174, 1175, 1085, + 793, 1409, 715, 1382, 721, 1250, 1413, 728, 1414, 794, + 1138, 1410, 1141, 716, 1144, 795, 796, 719, 1188, 797, + 798, 720, 793, 1337, 729, 1271, 1155, 733, 744, 1158, + 1159, 794, 745, 1405, 746, 1408, 750, 795, 796, 749, + 751, 797, 798, 753, 754, 755, 756, 758, 759, 1206, + 760, 768, 1419, 783, 340, 341, 342, 343, 344, 345, + 346, 347, 348, 767, 770, 787, 1219, 349, 437, 788, + 810, 829, 821, 826, 781, 827, 828, 837, 1227, 844, + 1228, 846, 845, 358, 848, 858, 1411, 1233, 863, 869, + 864, 870, 1237, 872, 335, 336, 337, 338, 339, 340, + 341, 342, 343, 344, 345, 346, 347, 348, 1412, 1338, + 873, 1341, 349, 876, 962, 882, 358, 886, 888, 891, + 553, 908, 1254, 897, 1257, 902, 1260, 898, 329, 903, + 904, 905, 909, 836, 910, 911, 358, 912, 913, 914, + 1273, 915, 916, 917, 919, 927, 929, 930, 1278, 1279, + 928, 945, 939, 717, 940, 1282, 941, 942, 943, 946, + 947, 948, 1286, 949, 1379, 950, 1290, 951, 965, 958, + 963, 964, 969, 1255, 966, 1258, 967, 1261, 974, 968, + 985, 987, 992, 993, 1003, 1269, 1015, 1018, 1272, 1010, + 1011, 1088, 1016, 1019, 1022, 1017, 1023, 1021, 359, 1024, + 1028, 1029, 1051, 1044, 1031, 1032, 1324, 1033, 1034, 1328, + 1038, 1055, 1332, 1056, 1063, 1064, 1335, 1068, 1069, 1070, + 358, 1071, 358, 1072, 1076, 1079, 1089, 1344, 1093, 1094, + 1346, 1115, 889, 890, 1096, 892, 1099, 895, 896, 1100, + 1101, 899, 900, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 1102, 1108, 1109, + 1110, 349, 1113, 1116, 1117, 1121, 1118, 1126, 1129, 1139, + 1142, 1145, 1153, 1340, 1149, 358, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, + 1156, 1160, 1180, 1177, 349, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 1181, 955, 956, + 957, 349, 1182, 1185, 359, 1184, 1187, 1194, 359, 1196, + 1195, 1186, 1197, 1198, 90, 316, 264, 1207, 1199, 1200, + 94, 95, 96, 1204, 1201, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 225, 0, 0, 0, - 1215, 0, 0, 0, 0, 0, 0, 0, 0, 650, - 226, 0, 1378, 227, 0, 0, 228, 0, 229, 0, + 112, 113, 114, 115, 116, 117, 1215, 1205, 118, 119, + 120, 121, 1217, 1209, 122, 1211, 1213, 1218, 1224, 1226, + 1231, 1238, 1243, 1014, 1240, 1244, 1245, 1246, 1247, 1020, + 1263, 1270, 1248, 1281, 1277, 1025, 1026, 1027, 1289, 1301, + 1302, 1030, 1305, 1310, 1317, 1319, 1035, 1036, 1037, 1320, + 1322, 1325, 1326, 1329, 1330, 1333, 1334, 438, 1339, 1355, + 1349, 1053, 1363, 1369, 1372, 1351, 1375, 1378, 1380, 1385, + 1398, 1062, 359, 1400, 1353, 1066, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 1364, 124, 125, + 126, 349, 1384, 127, 128, 129, 871, 1387, 1389, 1402, + 1391, 1396, 1404, 1406, 1415, 359, 1416, 1417, 1418, 134, + 135, 1420, 1005, 1311, 136, 1013, 75, 83, 583, 139, + 1090, 90, 223, 1095, 142, 359, 1169, 94, 95, 96, + 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 225, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1122, 1123, 1124, 1125, 226, 0, 0, + 227, 0, 0, 228, 0, 229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 38, 39, 40, 41, 42, 0, - 0, 0, 46, 0, 0, 49, 0, 0, 0, 0, - 0, 359, 0, 359, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 1265, 0, - 0, 0, 349, 0, 0, 0, 0, 0, 124, 0, - 0, 0, 0, 127, 128, 129, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 405, - 1153, 0, 0, 0, 136, 0, 359, 0, 0, 407, - 0, 0, 90, 223, 142, 1299, 197, 439, 94, 95, + 0, 38, 39, 40, 41, 42, 0, 0, 0, 46, + 0, 0, 49, 0, 1163, 0, 0, 0, 0, 359, + 0, 359, 0, 0, 0, 0, 0, 1176, 0, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, 347, 348, 0, 0, 124, 0, 349, 0, 0, + 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 405, 1154, 0, 0, + 0, 136, 0, 0, 359, 0, 407, 0, 0, 0, + 0, 142, 0, 197, 439, 0, 0, 0, 0, 0, + 0, 1216, 0, 90, 223, 0, 0, 0, 0, 94, + 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, + 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, + 113, 114, 115, 116, 117, 225, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, + 0, 0, 227, 0, 0, 228, 0, 229, 7, 8, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1266, + 0, 0, 0, 38, 39, 40, 41, 42, 0, 0, + 0, 46, 901, 0, 49, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 532, 17, 18, 533, 20, + 21, 534, 23, 535, 25, 0, 26, 0, 0, 29, + 30, 0, 32, 33, 34, 0, 1300, 124, 37, 0, + 0, 0, 127, 128, 129, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 134, 357, + 0, 0, 0, 136, 54, 55, 56, 0, 139, 0, + 0, 0, 0, 142, 0, 0, 439, 0, 0, 90, + 91, 92, 0, 93, 0, 94, 95, 96, 0, 1348, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 0, 0, 118, 119, 120, 121, 0, 0, 122, + 0, 0, 650, 7, 8, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, + 0, 0, 0, 349, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 532, 17, 18, 533, 20, 21, 534, 23, 535, 25, + 0, 26, 0, 0, 29, 30, 0, 32, 33, 34, + 0, 0, 0, 37, 0, 0, 0, 123, 0, 0, + 0, 0, 0, 124, 125, 126, 0, 0, 127, 128, + 129, 130, 131, 132, 133, 0, 0, 0, 0, 54, + 55, 56, 0, 0, 134, 135, 0, 0, 0, 136, + 0, 137, 138, 0, 139, 0, 140, 0, 141, 142, + 0, 143, 90, 223, 224, 0, 0, 0, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 225, 0, 0, 0, 0, 0, + 114, 115, 116, 117, 225, 0, 0, 802, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, 0, - 0, 227, 0, 0, 228, 0, 229, 0, 1347, 0, + 0, 227, 0, 0, 228, 0, 229, 0, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 39, 40, 41, 42, 0, 0, 0, - 46, 90, 316, 49, 0, 0, 0, 94, 95, 96, - 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 0, 0, 0, 124, 0, 0, 0, - 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 134, 357, 0, - 0, 0, 136, 0, 0, 0, 0, 139, 0, 0, - 0, 0, 142, 0, 0, 439, 90, 91, 92, 0, - 93, 0, 94, 95, 96, 0, 0, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 0, 0, - 118, 119, 120, 121, 0, 124, 122, 0, 7, 8, - 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 134, 135, 0, 0, - 0, 136, 0, 0, 0, 0, 139, 0, 0, 321, - 0, 142, 0, 322, 0, 532, 17, 18, 533, 20, + 46, 0, 0, 49, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 532, 17, 18, 533, 20, 21, 534, 23, 535, 25, 0, 26, 0, 0, 29, - 30, 0, 32, 33, 34, 0, 0, 0, 37, 0, - 0, 0, 0, 0, 123, 0, 0, 0, 0, 0, - 124, 125, 126, 0, 0, 127, 128, 129, 130, 131, - 132, 133, 0, 0, 54, 55, 56, 0, 0, 0, - 0, 134, 135, 0, 0, 0, 136, 0, 137, 138, - 0, 139, 0, 140, 0, 141, 142, 0, 143, 90, - 223, 224, 0, 0, 0, 94, 95, 96, 0, 0, + 30, 0, 32, 33, 34, 0, 124, 0, 37, 0, + 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 134, 230, 0, + 0, 0, 136, 0, 54, 55, 56, 139, 0, 90, + 223, 1060, 142, 0, 231, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 225, 802, 0, 0, 0, 0, 0, 0, 0, + 117, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, 0, 0, 227, 0, - 0, 228, 0, 229, 0, 7, 8, 0, 0, 0, + 0, 228, 831, 229, 0, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 39, 40, 41, 42, 0, 0, 0, 46, 0, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1689,52 +1712,52 @@ static const yytype_int16 yytable[] = 33, 34, 0, 124, 0, 37, 0, 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, 230, 0, 0, 0, 136, - 0, 54, 55, 56, 139, 0, 90, 223, 1060, 142, - 0, 231, 94, 95, 96, 0, 0, 97, 98, 99, + 0, 54, 55, 56, 139, 0, 90, 223, 1347, 142, + 0, 1061, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 226, 0, 0, 227, 0, 0, 228, 831, + 0, 0, 226, 0, 0, 227, 0, 0, 228, 1303, 229, 0, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 39, 40, 41, 42, 0, 0, 0, 46, 0, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 532, 17, 18, 533, 20, 21, 534, 23, 535, 25, 0, - 26, 0, 0, 29, 30, 0, 32, 33, 34, 0, + 26, 0, 944, 29, 30, 0, 32, 33, 34, 0, 124, 0, 37, 0, 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, 230, 0, 0, 0, 136, 0, 54, 55, - 56, 139, 0, 90, 223, 1346, 142, 0, 1061, 94, + 56, 139, 0, 90, 223, 0, 142, 0, 231, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, - 0, 0, 227, 0, 0, 228, 1302, 229, 0, 7, - 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 227, 0, 0, 228, 1358, 229, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 39, 40, 41, 42, 0, 0, - 0, 46, 0, 0, 49, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 532, 17, 18, 533, - 20, 21, 534, 23, 535, 25, 0, 26, 0, 871, - 29, 30, 0, 32, 33, 34, 0, 124, 0, 37, + 0, 46, 0, 0, 49, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, + 0, 0, 0, 349, 0, 0, 0, 0, 0, 994, + 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, 230, - 0, 0, 0, 136, 0, 54, 55, 56, 139, 0, + 0, 0, 0, 136, 0, 0, 0, 0, 139, 0, 90, 223, 0, 142, 0, 231, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, 0, 0, 227, - 0, 0, 228, 1357, 229, 0, 0, 0, 0, 0, + 0, 0, 228, 0, 229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 39, 40, 41, 42, 0, 0, 0, 46, 0, 0, 49, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 901, 0, 0, 0, + 349, 0, 0, 0, 0, 0, 1183, 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 134, 230, 0, 0, 0, + 0, 0, 0, 0, 0, 134, 357, 0, 0, 0, 136, 0, 0, 0, 0, 139, 0, 90, 223, 0, - 142, 0, 231, 94, 95, 96, 0, 0, 97, 98, + 142, 0, 436, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1744,11 +1767,11 @@ static const yytype_int16 yytable[] = 41, 42, 0, 0, 0, 46, 0, 0, 49, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, - 0, 0, 0, 944, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1203, 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, 357, 0, 0, 0, 136, 0, 0, - 0, 0, 139, 0, 90, 223, 0, 142, 0, 436, + 0, 0, 139, 0, 90, 223, 0, 142, 0, 636, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 225, 0, 0, 0, @@ -1759,26 +1782,56 @@ static const yytype_int16 yytable[] = 0, 0, 46, 0, 0, 49, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 994, 0, 0, 0, 0, 0, 0, 0, 124, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, - 357, 0, 0, 0, 136, 0, 0, 0, 0, 139, - 0, 90, 223, 0, 142, 0, 636, 94, 95, 96, + 230, 0, 0, 0, 136, 0, 0, 0, 0, 139, + 0, 90, 223, 0, 142, 0, 1065, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, 0, 0, 227, 0, 0, 228, 0, 229, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 38, 39, 40, 41, 42, 0, 0, 0, 46, - 0, 0, 49, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 38, 39, 40, 41, 42, 0, 90, 316, 46, + 0, 0, 49, 94, 95, 96, 0, 0, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, 117, 0, + 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, + 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 405, 1154, 0, 0, + 0, 136, 0, 0, 0, 0, 407, 0, 90, 316, + 0, 142, 0, 197, 94, 95, 96, 0, 0, 97, + 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 124, 0, 0, 0, 0, 127, 128, 129, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 134, 135, 0, 0, 0, 136, 0, 0, + 0, 0, 139, 0, 0, 321, 0, 142, 0, 322, + 90, 316, 0, 0, 0, 0, 94, 95, 96, 0, + 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 124, 1230, 0, 0, 0, 127, 128, 129, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 134, 135, 0, 0, 0, 136, 0, + 0, 0, 0, 139, 0, 0, 628, 0, 142, 0, + 629, 90, 316, 0, 0, 0, 0, 94, 95, 96, + 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 124, 0, 0, 0, 0, 127, + 128, 129, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 405, 406, 0, 0, 0, + 136, 0, 0, 0, 0, 407, 0, 0, 0, 0, + 142, 0, 197, 0, 0, 0, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, + 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 134, 230, 0, 0, + 0, 0, 0, 0, 0, 0, 134, 135, 0, 0, 0, 136, 0, 0, 0, 0, 139, 0, 90, 223, - 0, 142, 0, 1065, 94, 95, 96, 0, 0, 97, + 0, 142, 0, 1007, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 225, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1788,91 +1841,45 @@ static const yytype_int16 yytable[] = 40, 41, 42, 0, 90, 316, 46, 0, 0, 49, 94, 95, 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 0, 0, 0, 0, + 112, 113, 114, 115, 116, 117, 1309, 0, 0, 0, 0, 0, 124, 0, 0, 0, 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 405, 1153, 0, 0, 0, 136, 0, - 0, 0, 0, 407, 0, 90, 316, 264, 142, 0, - 197, 94, 95, 96, 0, 0, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 0, 0, 118, - 119, 120, 121, 0, 0, 122, 0, 0, 124, 0, - 0, 0, 0, 127, 128, 129, 0, 0, 0, 0, - 0, 1182, 0, 0, 0, 0, 0, 0, 0, 134, - 135, 0, 0, 0, 136, 0, 0, 0, 0, 139, - 0, 0, 628, 0, 142, 0, 629, 90, 316, 0, - 0, 0, 0, 94, 95, 96, 0, 0, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 124, - 125, 126, 1202, 0, 127, 128, 129, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 134, 135, 0, 0, 0, 136, 0, 0, 0, 0, - 139, 0, 90, 316, 0, 142, 0, 1168, 94, 95, - 96, 0, 0, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 124, 349, 0, 0, 0, 127, 128, 129, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 405, 406, 0, 0, 0, 136, 0, 0, - 0, 0, 407, 0, 0, 0, 0, 142, 0, 197, - 0, 0, 0, 0, 0, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 0, 124, 0, 0, 0, - 0, 127, 128, 129, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 134, 135, 0, - 0, 0, 136, 0, 0, 0, 0, 139, 0, 90, - 223, 0, 142, 0, 1007, 94, 95, 96, 0, 0, + 0, 0, 0, 134, 357, 0, 0, 0, 136, 90, + 316, 264, 0, 139, 0, 94, 95, 96, 142, 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 225, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 226, 0, 0, 227, 0, - 0, 228, 0, 229, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, - 39, 40, 41, 42, 0, 90, 316, 46, 0, 0, - 49, 94, 95, 96, 0, 0, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 1229, 0, 0, - 0, 0, 0, 124, 0, 0, 0, 0, 127, 128, - 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 134, 357, 0, 0, 0, 136, - 90, 316, 264, 0, 139, 0, 94, 95, 96, 142, - 0, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 1308, 0, 118, 119, 120, 121, 0, 0, - 122, 0, 0, 0, 0, 0, 0, 0, 0, 124, - 0, 1355, 0, 0, 127, 128, 129, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 134, 135, 441, 0, 0, 136, 0, 0, 0, 0, - 139, 0, 0, 0, 0, 142, 0, 0, 0, 0, - 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 441, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 124, 125, 126, 0, 0, 127, - 128, 129, 0, 646, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 134, 135, 0, 0, 0, - 136, 0, 738, 0, 0, 139, 0, 0, 0, 0, - 142, 0, 0, 0, 0, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 824, - 0, 0, 0, 349, 335, 336, 337, 338, 339, 340, + 117, 1356, 0, 118, 119, 120, 121, 0, 0, 122, + 0, 0, 0, 0, 0, 0, 0, 0, 124, 0, + 0, 0, 441, 127, 128, 129, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, + 135, 441, 0, 0, 136, 0, 0, 0, 0, 139, + 0, 0, 0, 0, 142, 0, 0, 0, 0, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, 347, 348, 646, 0, 0, 0, 349, 0, 0, + 0, 0, 0, 124, 125, 126, 0, 0, 127, 128, + 129, 0, 738, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 134, 135, 0, 0, 0, 136, + 0, 824, 0, 0, 139, 0, 0, 0, 0, 142, + 0, 0, 0, 0, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 960, 0, 0, 0, 349, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 442, 347, 348, 0, 0, 0, - 0, 349, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 561, 347, 348, 0, - 0, 0, 0, 349, 335, 336, 337, 338, 339, 340, + 0, 349, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, 561, 347, 348, 0, 0, 0, 0, + 349, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 0, 0, 906, - 0, 349, 0, 0, 0, 0, 0, 0, 0, 0, - 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 0, 0, 0, 0, 349, 335, + 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, + 0, 349, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, + 349, 0, 0, 0, 0, 0, 0, 0, 0, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, -4, 1, 0, 349, -4, 0, - 0, 0, 0, 0, 0, 0, -4, -4, 335, 336, - 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - -4, 0, 0, 0, 0, -4, -4, 0, -4, -4, + 0, 0, 0, 0, 0, 0, -4, -4, 0, 0, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, + -4, 0, 0, 0, 0, -4, -4, 763, -4, -4, -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, -4, -4, -4, -4, -4, @@ -1893,559 +1900,580 @@ static const yytype_int16 yytable[] = 0, 29, 30, 0, 32, 33, 34, 0, 0, 0, 37, 0, 0, 0, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 0, 0, 54, 55, 56, 1134, - 0, 1135, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 0, 349, 0, 0, 0, 54, 55, 56, 1135, + 0, 1136, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 1163, 0, 1164, + 349, 0, 0, 0, 0, 0, 0, 1164, 0, 1165, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 1251, 0, 1252, 335, 336, + 0, 0, 0, 0, 0, 1252, 0, 1253, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 0, 0, 763, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 805, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 0, 0, 805, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 822, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, - 0, 822, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 842, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 0, 0, 842, + 349, 0, 0, 0, 0, 0, 0, 0, 0, 923, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 0, 0, 923, 335, 336, + 0, 0, 0, 0, 0, 0, 0, 1133, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 0, 0, 1132, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 1151, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 0, 0, 1150, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 1190, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, - 0, 1189, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 1191, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 0, 0, 1190, + 349, 0, 0, 0, 0, 0, 0, 0, 0, 1192, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 0, 0, 1191, 335, 336, + 0, 0, 0, 0, 0, 0, 0, 1193, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 0, 0, 1192, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 1225, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 0, 0, 1224, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 1268, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, - 0, 1267, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 1274, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 0, 0, 1273, + 349, 0, 0, 0, 0, 0, 0, 0, 0, 1275, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 0, 0, 1274, 335, 336, + 0, 0, 0, 0, 0, 0, 0, 1291, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 0, 0, 1290, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 1294, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 0, 0, 1293, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 1297, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, - 0, 1296, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 1318, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 0, 0, 1317, + 349, 0, 0, 0, 0, 0, 0, 0, 0, 1321, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 0, 0, 1320, 335, 336, + 0, 0, 0, 0, 0, 0, 0, 1350, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 0, 0, 1349, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 1352, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 0, 0, 1351, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 1354, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, - 0, 1353, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 1367, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 0, 0, 1366, - 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 0, 593, 335, 336, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, - 0, 0, 0, 1201, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 520, 0, 0, 0, 0, 597, - 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 556, 335, 336, 337, 338, + 349, 0, 0, 0, 0, 0, 0, 0, 593, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, + 0, 0, 0, 0, 0, 1202, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 349, 0, 520, 0, 0, 0, 0, 597, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 598, 335, 336, + 349, 0, 0, 0, 0, 0, 0, 556, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 643, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 597, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 0, 0, 0, 0, 0, 690, + 0, 0, 349, 0, 0, 0, 0, 0, 0, 598, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 691, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 643, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 704, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 690, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 705, 335, 336, + 349, 0, 0, 0, 0, 0, 0, 691, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 706, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 704, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 0, 0, 0, 0, 0, 707, + 0, 0, 349, 0, 0, 0, 0, 0, 0, 705, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 708, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 706, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 709, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 707, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 790, 335, 336, + 349, 0, 0, 0, 0, 0, 0, 708, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 791, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 709, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 0, 0, 0, 0, 0, 792, + 0, 0, 349, 0, 0, 0, 0, 0, 0, 790, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 885, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 791, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 921, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 792, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 922, 335, 336, + 349, 0, 0, 0, 0, 0, 0, 885, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 959, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 921, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 0, 0, 0, 0, 0, 1082, + 0, 0, 349, 0, 0, 0, 0, 0, 0, 922, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 1083, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 959, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 1103, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 1083, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 0, 0, 0, 1233, 335, 336, + 349, 0, 0, 0, 0, 0, 0, 1084, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 0, 0, 0, 1234, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 1104, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 0, 0, 0, 0, 0, 1240, + 0, 0, 349, 0, 0, 0, 0, 0, 0, 1234, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 1312, 335, 336, 337, 338, + 0, 0, 0, 0, 0, 1235, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, - 0, 1315, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 1241, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 524, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 0, 0, 648, 335, 336, + 349, 0, 0, 0, 0, 0, 0, 1313, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 654, 335, 336, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, - 0, 0, 0, 669, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 1316, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 0, 0, 671, 335, 336, 337, + 0, 0, 349, 0, 0, 0, 524, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 0, 0, 0, 0, 349, 0, 0, 0, 673, + 348, 0, 0, 0, 0, 349, 0, 0, 0, 648, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 675, 335, 336, 337, 338, 339, 340, 341, + 0, 0, 654, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 0, 0, 677, 335, 336, 337, 338, + 0, 349, 0, 0, 0, 669, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 0, 0, 0, 0, 349, 0, 0, 0, 679, 335, + 0, 0, 0, 0, 349, 0, 0, 0, 671, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, - 0, 681, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 673, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 683, 335, 336, 337, 338, 339, + 349, 0, 0, 0, 675, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 0, 0, 685, 335, 336, + 0, 0, 0, 349, 0, 0, 0, 677, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 687, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 679, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, - 0, 0, 0, 689, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 681, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 0, 0, 693, 335, 336, 337, + 0, 0, 349, 0, 0, 0, 683, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 0, 0, 0, 0, 349, 0, 0, 0, 695, + 348, 0, 0, 0, 0, 349, 0, 0, 0, 685, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 697, 335, 336, 337, 338, 339, 340, 341, + 0, 0, 687, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 0, 0, 699, 335, 336, 337, 338, + 0, 349, 0, 0, 0, 689, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 0, 0, 0, 0, 349, 0, 0, 0, 701, 335, + 0, 0, 0, 0, 349, 0, 0, 0, 693, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, - 0, 703, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 695, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 813, 335, 336, 337, 338, 339, + 349, 0, 0, 0, 697, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 0, 0, 814, 335, 336, + 0, 0, 0, 349, 0, 0, 0, 699, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 817, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 701, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, - 0, 0, 0, 818, 335, 336, 337, 338, 339, 340, + 0, 0, 0, 703, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 0, 0, 820, 335, 336, 337, + 0, 0, 349, 0, 0, 0, 813, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 0, 0, 0, 0, 349, 0, 0, 0, 838, + 348, 0, 0, 0, 0, 349, 0, 0, 0, 814, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 0, 0, 976, 335, 336, 337, 338, 339, 340, 341, + 0, 0, 817, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 0, 0, 978, 335, 336, 337, 338, + 0, 349, 0, 0, 0, 818, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 0, 0, 0, 0, 349, 0, 0, 0, 980, 335, + 0, 0, 0, 0, 349, 0, 0, 0, 820, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, - 0, 982, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 838, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 0, 0, 983, 335, 336, 337, 338, 339, + 349, 0, 0, 0, 976, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 0, 0, 1096, 335, 336, + 0, 0, 0, 349, 0, 0, 0, 978, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, 0, 0, - 1213, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 980, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, - 0, 520, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 560, 335, 336, 337, 338, 339, 340, 341, + 0, 0, 0, 982, 335, 336, 337, 338, 339, 340, + 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, + 0, 0, 349, 0, 0, 0, 983, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, + 348, 0, 0, 0, 0, 349, 0, 0, 0, 1097, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, + 0, 0, 1214, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 564, 335, 336, 337, 338, 339, 340, + 0, 349, 0, 520, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 565, 335, 336, 337, 338, 339, + 0, 0, 349, 0, 560, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 567, 335, 336, 337, 338, + 0, 0, 0, 349, 0, 564, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 0, 0, 0, 0, 349, 0, 569, 335, 336, 337, + 0, 0, 0, 0, 349, 0, 565, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 0, 0, 0, 0, 349, 0, 570, 335, 336, + 348, 0, 0, 0, 0, 349, 0, 567, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 0, 0, 0, 0, 349, 0, 573, 335, + 347, 348, 0, 0, 0, 0, 349, 0, 569, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 0, 0, 0, 0, 349, 0, 574, + 346, 347, 348, 0, 0, 0, 0, 349, 0, 570, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 639, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 573, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, - 0, 640, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 574, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 641, 335, 336, 337, 338, 339, 340, 341, + 349, 0, 639, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 647, 335, 336, 337, 338, 339, 340, + 0, 349, 0, 640, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 668, 335, 336, 337, 338, 339, + 0, 0, 349, 0, 641, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 670, 335, 336, 337, 338, + 0, 0, 0, 349, 0, 647, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 0, 0, 0, 0, 349, 0, 672, 335, 336, 337, + 0, 0, 0, 0, 349, 0, 668, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 0, 0, 0, 0, 349, 0, 674, 335, 336, + 348, 0, 0, 0, 0, 349, 0, 670, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 0, 0, 0, 0, 349, 0, 676, 335, + 347, 348, 0, 0, 0, 0, 349, 0, 672, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 0, 0, 0, 0, 349, 0, 678, + 346, 347, 348, 0, 0, 0, 0, 349, 0, 674, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 680, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 676, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, - 0, 682, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 678, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 684, 335, 336, 337, 338, 339, 340, 341, + 349, 0, 680, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 686, 335, 336, 337, 338, 339, 340, + 0, 349, 0, 682, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 688, 335, 336, 337, 338, 339, + 0, 0, 349, 0, 684, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 692, 335, 336, 337, 338, + 0, 0, 0, 349, 0, 686, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 0, 0, 0, 0, 349, 0, 694, 335, 336, 337, + 0, 0, 0, 0, 349, 0, 688, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 0, 0, 0, 0, 349, 0, 696, 335, 336, + 348, 0, 0, 0, 0, 349, 0, 692, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 0, 0, 0, 0, 349, 0, 698, 335, + 347, 348, 0, 0, 0, 0, 349, 0, 694, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 0, 0, 0, 0, 349, 0, 700, + 346, 347, 348, 0, 0, 0, 0, 349, 0, 696, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 702, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 698, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, - 0, 752, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 700, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 757, 335, 336, 337, 338, 339, 340, 341, + 349, 0, 702, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 762, 335, 336, 337, 338, 339, 340, + 0, 349, 0, 752, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 764, 335, 336, 337, 338, 339, + 0, 0, 349, 0, 757, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 765, 335, 336, 337, 338, + 0, 0, 0, 349, 0, 762, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 0, 0, 0, 0, 349, 0, 771, 335, 336, 337, + 0, 0, 0, 0, 349, 0, 764, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 0, 0, 0, 0, 349, 0, 778, 335, 336, + 348, 0, 0, 0, 0, 349, 0, 765, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 0, 0, 0, 0, 349, 0, 779, 335, + 347, 348, 0, 0, 0, 0, 349, 0, 771, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 0, 0, 0, 0, 349, 0, 780, + 346, 347, 348, 0, 0, 0, 0, 349, 0, 778, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 804, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 779, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, - 0, 806, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 780, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 807, 335, 336, 337, 338, 339, 340, 341, + 349, 0, 804, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 808, 335, 336, 337, 338, 339, 340, + 0, 349, 0, 806, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 812, 335, 336, 337, 338, 339, + 0, 0, 349, 0, 807, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349, 0, 975, 335, 336, 337, 338, + 0, 0, 0, 349, 0, 808, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, - 0, 0, 0, 0, 349, 0, 977, 335, 336, 337, + 0, 0, 0, 0, 349, 0, 812, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, - 348, 0, 0, 0, 0, 349, 0, 979, 335, 336, + 348, 0, 0, 0, 0, 349, 0, 975, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, - 347, 348, 0, 0, 0, 0, 349, 0, 981, 335, + 347, 348, 0, 0, 0, 0, 349, 0, 977, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 0, 0, 0, 0, 349, 0, 986, + 346, 347, 348, 0, 0, 0, 0, 349, 0, 979, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, 0, - 1133, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 981, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, 349, - 0, 1149, 335, 336, 337, 338, 339, 340, 341, 342, + 0, 986, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, 0, - 349, 0, 1167, 335, 336, 337, 338, 339, 340, 341, + 349, 0, 1134, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, 0, - 0, 349, 0, 1311, 335, 336, 337, 338, 339, 340, + 0, 349, 0, 1150, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, 0, - 0, 0, 349, 0, 1364, 335, 336, 337, 338, 339, + 0, 0, 349, 0, 1168, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 0, - 0, 0, 0, 349 + 0, 0, 0, 349, 0, 1312, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, + 0, 0, 0, 0, 349, 0, 1365, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, + 348, 0, 0, 0, 0, 349 }; +#define yypact_value_is_default(yystate) \ + ((yystate) == (-1059)) + +#define yytable_value_is_error(yytable_value) \ + YYID (0) + static const yytype_int16 yycheck[] = { - 6, 399, 400, 6, 205, 1063, 3, 5, 4, 321, - 4, 6, 324, 4, 6, 216, 6, 4, 4, 4, - 55, 4, 6, 4, 6, 4, 6, 309, 310, 311, - 4, 313, 314, 315, 4, 4, 731, 5, 5, 52, - 6, 70, 55, 6, 148, 4, 6, 4, 148, 6, - 79, 155, 253, 7, 255, 155, 85, 86, 6, 70, - 89, 90, 148, 4, 0, 6, 145, 146, 79, 155, - 13, 138, 139, 152, 85, 86, 148, 70, 89, 90, - 6, 4, 5, 7, 39, 40, 79, 42, 155, 799, - 49, 148, 85, 86, 53, 6, 89, 90, 155, 93, - 94, 95, 96, 5, 63, 138, 139, 91, 49, 145, - 146, 93, 103, 104, 37, 38, 39, 40, 1176, 6, - 43, 154, 103, 104, 111, 6, 7, 156, 134, 135, - 136, 91, 6, 139, 140, 37, 38, 39, 40, 148, - 135, 43, 1200, 135, 150, 156, 143, 153, 138, 139, - 138, 139, 148, 159, 160, 161, 162, 155, 164, 165, - 166, 167, 156, 169, 170, 171, 145, 146, 155, 155, - 155, 150, 155, 152, 148, 155, 148, 872, 157, 148, - 151, 155, 59, 154, 190, 155, 155, 155, 155, 155, - 196, 197, 155, 150, 150, 118, 119, 148, 152, 205, - 55, 125, 126, 127, 128, 138, 139, 55, 148, 410, - 803, 148, 524, 138, 139, 6, 118, 119, 148, 138, - 139, 154, 145, 146, 230, 231, 138, 139, 938, 152, - 155, 138, 139, 239, 240, 241, 155, 243, 193, 194, - 246, 247, 154, 249, 156, 7, 201, 154, 55, 450, - 205, 49, 55, 259, 52, 57, 1314, 55, 148, 57, + 6, 399, 400, 205, 6, 1063, 3, 5, 321, 70, + 6, 324, 6, 6, 216, 6, 4, 6, 4, 6, + 148, 4, 6, 4, 4, 4, 4, 155, 309, 310, + 311, 799, 313, 314, 315, 4, 731, 4, 4, 4, + 4, 6, 5, 160, 5, 13, 6, 6, 165, 6, + 4, 253, 169, 255, 140, 141, 142, 148, 4, 7, + 6, 147, 7, 0, 155, 803, 4, 148, 129, 130, + 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, + 141, 142, 138, 139, 39, 40, 147, 42, 4, 5, + 148, 93, 145, 146, 7, 49, 6, 155, 154, 53, + 91, 138, 139, 49, 91, 93, 94, 95, 96, 63, + 148, 148, 178, 179, 180, 138, 139, 155, 155, 1177, + 55, 37, 38, 39, 40, 103, 104, 43, 134, 135, + 136, 111, 155, 139, 140, 138, 139, 6, 7, 103, + 104, 135, 135, 1201, 150, 211, 143, 153, 6, 138, + 139, 4, 155, 159, 160, 161, 162, 155, 164, 165, + 166, 167, 148, 169, 170, 171, 145, 146, 156, 155, + 938, 150, 155, 152, 155, 155, 6, 872, 157, 148, + 125, 126, 127, 128, 190, 150, 155, 6, 155, 155, + 196, 197, 155, 59, 155, 155, 155, 150, 155, 205, + 145, 146, 118, 119, 152, 322, 52, 152, 410, 55, + 148, 524, 125, 126, 127, 128, 138, 139, 6, 7, + 73, 74, 75, 76, 230, 231, 7, 148, 81, 145, + 146, 84, 154, 239, 240, 241, 152, 243, 193, 194, + 246, 247, 149, 249, 145, 146, 201, 154, 450, 150, + 205, 152, 151, 259, 155, 154, 157, 1315, 138, 139, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, - 306, 307, 997, 52, 52, 49, 312, 55, 52, 57, - 149, 55, 178, 179, 180, 154, 322, 149, 149, 4, - 5, 324, 154, 154, 55, 1383, 7, 155, 155, 335, + 306, 307, 997, 148, 148, 70, 312, 149, 425, 426, + 145, 146, 154, 149, 79, 150, 322, 152, 154, 436, + 85, 86, 157, 148, 89, 90, 1384, 7, 324, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, 347, 348, 349, 52, 211, 55, 55, 7, 57, - 52, 357, 37, 38, 39, 40, 149, 363, 43, 138, - 139, 154, 368, 125, 126, 127, 128, 373, 374, 375, - 376, 8, 654, 149, 380, 154, 4, 156, 154, 385, - 386, 387, 160, 145, 146, 52, 154, 165, 156, 4, - 152, 169, 4, 148, 138, 139, 402, 403, 404, 405, - 406, 407, 399, 400, 148, 411, 412, 413, 414, 415, - 148, 155, 418, 138, 139, 421, 422, 6, 148, 425, - 426, 427, 428, 429, 148, 148, 432, 150, 150, 154, - 436, 156, 714, 118, 119, 441, 442, 4, 720, 138, - 139, 155, 397, 398, 125, 126, 127, 128, 4, 148, - 405, 586, 587, 588, 148, 461, 155, 148, 464, 741, - 463, 4, 138, 139, 145, 146, 125, 126, 127, 128, - 145, 146, 7, 4, 52, 150, 160, 152, 154, 148, - 155, 165, 157, 148, 148, 169, 145, 146, 1183, 6, - 138, 139, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 154, 70, 148, 70, - 147, 5, 148, 519, 150, 148, 79, 150, 79, 156, - 526, 524, 85, 86, 85, 86, 89, 90, 89, 90, - 73, 74, 75, 76, 148, 140, 141, 142, 81, 148, - 6, 84, 147, 525, 322, 1255, 230, 231, 1258, 555, - 556, 1261, 864, 865, 6, 561, 562, 138, 139, 138, - 139, 138, 139, 148, 148, 150, 144, 138, 139, 575, - 138, 139, 148, 154, 580, 154, 148, 154, 150, 585, - 586, 587, 588, 154, 148, 155, 154, 593, 148, 148, - 150, 597, 598, 156, 172, 156, 148, 603, 150, 148, - 178, 179, 180, 585, 586, 587, 588, 148, 138, 139, - 616, 189, 618, 4, 192, 1208, 148, 1210, 150, 1212, - 138, 139, 148, 629, 154, 1335, 138, 139, 138, 139, - 636, 155, 148, 211, 212, 155, 154, 643, 322, 645, - 646, 596, 154, 148, 154, 150, 1044, 425, 426, 138, - 139, 654, 70, 148, 609, 150, 155, 1367, 436, 150, - 1370, 79, 148, 1373, 150, 154, 1376, 85, 86, 148, - 148, 89, 90, 357, 148, 138, 139, 138, 139, 257, - 138, 139, 6, 148, 690, 691, 155, 154, 1398, 156, - 1400, 154, 1402, 154, 150, 148, 154, 150, 704, 705, - 706, 707, 708, 709, 710, 155, 70, 713, 150, 148, - 1303, 150, 718, 150, 148, 79, 150, 148, 724, 150, - 5, 85, 86, 1005, 70, 89, 90, 5, 734, 735, - 736, 737, 738, 79, 148, 148, 150, 150, 156, 85, - 86, 425, 426, 89, 90, 5, 148, 70, 150, 148, - 6, 150, 436, 6, 152, 1348, 79, 1350, 442, 1352, - 8, 155, 85, 86, 70, 1358, 89, 90, 6, 145, - 146, 150, 106, 79, 150, 6, 152, 555, 4, 85, - 86, 157, 155, 89, 90, 148, 148, 150, 150, 70, - 147, 746, 156, 1386, 154, 1388, 156, 1390, 79, 154, - 154, 156, 156, 6, 85, 86, 1204, 6, 89, 90, - 156, 70, 150, 152, 152, 593, 7, 820, 824, 154, - 79, 156, 154, 150, 156, 70, 85, 86, 156, 155, - 89, 90, 6, 156, 79, 790, 791, 792, 844, 845, - 85, 86, 7, 148, 89, 90, 154, 154, 156, 156, - 156, 629, 7, 55, 70, 57, 7, 154, 636, 156, - 148, 148, 865, 79, 154, 148, 156, 873, 7, 85, - 86, 555, 149, 89, 90, 156, 7, 561, 562, 885, - 886, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 6, 154, 156, 156, 147, - 7, 138, 139, 140, 141, 142, 6, 4, 156, 593, - 147, 156, 155, 103, 920, 921, 922, 6, 154, 154, - 156, 156, 154, 929, 930, 154, 154, 156, 156, 154, - 154, 937, 156, 154, 154, 713, 156, 149, 149, 945, - 156, 4, 4, 6, 522, 629, 154, 154, 156, 156, - 151, 149, 636, 959, 960, 961, 734, 735, 736, 737, - 154, 6, 156, 969, 967, 154, 4, 156, 974, 131, + 346, 347, 348, 349, 125, 126, 127, 128, 148, 4, + 5, 357, 138, 139, 140, 141, 142, 363, 149, 138, + 139, 147, 368, 154, 145, 146, 148, 373, 374, 375, + 376, 138, 139, 654, 380, 154, 148, 156, 150, 385, + 386, 387, 37, 38, 39, 40, 55, 154, 43, 156, + 149, 156, 6, 138, 139, 154, 402, 403, 404, 405, + 406, 407, 399, 400, 55, 411, 412, 413, 414, 415, + 155, 148, 418, 150, 8, 421, 422, 145, 146, 425, + 426, 427, 428, 429, 152, 49, 432, 55, 52, 52, + 436, 55, 55, 714, 57, 441, 442, 55, 555, 720, + 138, 139, 397, 398, 57, 125, 126, 127, 128, 148, + 405, 49, 138, 139, 52, 461, 154, 55, 464, 57, + 741, 138, 139, 118, 119, 145, 146, 463, 154, 52, + 156, 1209, 55, 1211, 57, 1213, 593, 154, 52, 138, + 139, 70, 586, 587, 588, 148, 55, 150, 1256, 1184, + 79, 1259, 55, 160, 1262, 154, 85, 86, 165, 155, + 89, 90, 169, 155, 52, 138, 139, 52, 4, 138, + 139, 4, 629, 519, 138, 139, 138, 139, 4, 636, + 526, 154, 148, 525, 148, 154, 6, 148, 524, 150, + 150, 155, 154, 148, 4, 129, 130, 131, 132, 133, + 134, 135, 136, 137, 138, 139, 140, 141, 142, 555, + 556, 864, 865, 147, 4, 561, 562, 138, 139, 138, + 139, 148, 156, 230, 231, 155, 1304, 156, 1336, 575, + 148, 148, 150, 154, 580, 154, 148, 138, 139, 585, + 586, 587, 588, 585, 586, 587, 588, 593, 138, 139, + 148, 597, 598, 154, 148, 148, 713, 603, 7, 148, + 1368, 150, 148, 1371, 154, 148, 1374, 150, 148, 1377, + 616, 1349, 618, 1351, 52, 1353, 148, 734, 735, 736, + 737, 1359, 148, 629, 150, 4, 6, 12, 13, 6, + 636, 1399, 148, 1401, 150, 1403, 148, 643, 150, 645, + 646, 596, 6, 138, 139, 5, 1044, 138, 139, 1387, + 148, 1389, 150, 1391, 609, 322, 8, 4, 654, 154, + 138, 139, 150, 154, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 148, 60, 154, 70, 63, 64, + 148, 66, 67, 68, 690, 691, 79, 72, 5, 148, + 357, 150, 85, 86, 138, 139, 89, 90, 704, 705, + 706, 707, 708, 709, 710, 148, 144, 713, 155, 148, + 154, 150, 718, 98, 99, 100, 148, 148, 724, 150, + 37, 38, 39, 40, 1005, 148, 43, 150, 734, 735, + 736, 737, 738, 148, 172, 150, 148, 70, 150, 155, + 178, 179, 180, 148, 138, 139, 79, 148, 138, 139, + 148, 189, 85, 86, 192, 155, 89, 90, 425, 426, + 154, 148, 148, 156, 154, 148, 148, 150, 150, 436, + 148, 156, 150, 211, 212, 442, 6, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 154, 937, 156, 990, 147, 154, 154, 156, 156, - 154, 7, 156, 8, 154, 154, 156, 156, 154, 7, - 156, 1007, 106, 581, 1010, 7, 154, 989, 156, 7, - 1016, 1017, 106, 7, 592, 1021, 1217, 154, 154, 156, - 156, 154, 1028, 156, 154, 154, 156, 156, 154, 713, - 156, 7, 1038, 106, 1040, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 7, 1051, 7, 1044, 147, 4, - 734, 735, 736, 737, 6, 1061, 1011, 152, 1040, 1065, - 156, 6, 1068, 156, 151, 7, 7, 7, 152, 6, - 148, 1077, 148, 651, 155, 6, 1082, 1083, 4, 6, - 151, 1363, 6, 6, 150, 7, 6, 135, 7, 55, - 1045, 7, 1047, 57, 1049, 1077, 7, 1103, 12, 13, - 7, 7, 7, 1304, 7, 6, 1061, 7, 149, 1064, - 1065, 1393, 149, 1395, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 1134, 149, - 1412, 149, 147, 7, 149, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 1151, 60, 1153, 6, 63, - 64, 7, 66, 67, 68, 7, 6, 1163, 72, 1165, - 4, 4, 1168, 155, 6, 148, 1172, 945, 7, 6, - 155, 1177, 750, 751, 7, 753, 7, 755, 756, 7, - 6, 759, 760, 6, 98, 99, 100, 6, 55, 6, - 6, 4, 4, 4, 156, 1201, 6, 4, 6, 148, - 6, 1207, 155, 1209, 152, 1211, 149, 1204, 7, 155, - 149, 6, 63, 6, 5, 1221, 6, 155, 6, 1225, - 155, 155, 6, 4, 6, 155, 6, 1233, 1234, 7, - 7, 7, 7, 7, 1240, 150, 6, 155, 155, 6, - 6, 1247, 156, 155, 6, 1251, 7, 151, 826, 827, - 828, 6, 1207, 102, 1209, 152, 1211, 6, 4, 6, - 5, 945, 6, 6, 1219, 6, 6, 1222, 6, 6, - 1276, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 1291, 6, 6, 1294, 147, - 6, 1297, 6, 6, 6, 1301, 6, 106, 6, 1305, - 6, 1307, 6, 6, 6, 6, 1312, 154, 6, 1315, - 155, 4, 6, 891, 6, 5, 7, 6, 152, 897, - 6, 53, 6, 6, 6, 903, 904, 905, 6, 6, - 155, 909, 6, 155, 6, 156, 914, 915, 916, 7, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 929, 1307, 155, 1360, 147, 6, 155, 155, 155, - 6, 939, 101, 6, 6, 943, 6, 6, 104, 6, - 6, 6, 155, 6, 12, 13, 155, 1061, 6, 6, - 6, 1065, 70, 156, 155, 4, 6, 156, 6, 6, - 1168, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, 6, 6, 6, 6, 147, - 988, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 6, 60, 1201, 6, 63, 64, 155, 66, 67, - 68, 155, 155, 6, 72, 12, 13, 6, 155, 6, - 6, 6, 6, 1221, 6, 6, 155, 6, 155, 6, - 155, 6, 6, 1031, 1032, 1033, 1034, 6, 155, 155, - 98, 99, 100, 6, 6, 6, 6, 6, 884, 1153, - 1276, 890, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 3, 60, 1168, 3, 63, 64, 379, 66, - 67, 68, 993, -1, 1072, 72, -1, -1, -1, -1, - -1, 6, -1, -1, -1, -1, 1084, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1201, 156, -1, - -1, 98, 99, 100, -1, -1, -1, 1305, -1, 1307, - -1, -1, -1, -1, 3, 4, -1, 1221, -1, -1, - 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, + 142, 746, 155, 148, 70, 147, 154, 148, 156, 150, + 148, 118, 119, 79, 156, 12, 13, 1205, 148, 85, + 86, 70, 148, 89, 90, 154, 6, 156, 824, 257, + 79, 155, 150, 156, 820, 155, 85, 86, 945, 150, + 89, 90, 154, 5, 156, 790, 791, 792, 844, 845, + 150, 5, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 154, 60, 156, 70, 63, 64, 152, 66, + 67, 68, 6, 5, 79, 72, 154, 873, 156, 865, + 85, 86, 6, 155, 89, 90, 150, 106, 152, 885, + 886, 154, 154, 156, 156, 154, 6, 156, 555, 6, + 6, 98, 99, 100, 561, 562, 154, 156, 156, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 70, 920, 921, 922, 147, 55, 154, + 57, 156, 79, 929, 930, 150, 593, 70, 85, 86, + 4, 937, 89, 90, 155, 154, 79, 156, 154, 945, + 156, 156, 85, 86, 6, 147, 89, 90, 154, 156, + 156, 152, 7, 959, 960, 961, 154, 70, 156, 154, + 156, 156, 629, 969, 150, 154, 79, 156, 974, 636, + 155, 967, 85, 86, 70, 6, 89, 90, 154, 154, + 156, 156, 937, 79, 990, 7, 4, 989, 6, 85, + 86, 7, 7, 89, 90, 154, 154, 156, 156, 156, + 154, 1007, 156, 148, 1010, 70, 154, 154, 156, 156, + 1016, 1017, 148, 156, 79, 1021, 1218, 148, 148, 7, + 85, 86, 1028, 149, 89, 90, 154, 154, 156, 156, + 6, 154, 1038, 156, 1040, 154, 7, 156, 1040, 154, + 154, 156, 156, 156, 7, 1051, 713, 1044, 154, 154, + 156, 156, 1169, 8, 6, 1061, 1011, 4, 103, 1065, + 156, 154, 1068, 156, 154, 154, 156, 734, 735, 736, + 737, 154, 1078, 156, 155, 154, 1078, 1083, 1084, 154, + 70, 156, 149, 1364, 522, 1202, 154, 6, 156, 79, + 1045, 156, 1047, 149, 1049, 85, 86, 149, 1104, 89, + 90, 154, 70, 1305, 4, 1222, 1061, 151, 6, 1064, + 1065, 79, 4, 1394, 7, 1396, 7, 85, 86, 106, + 7, 89, 90, 7, 106, 7, 7, 106, 7, 1135, + 7, 4, 1413, 152, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 581, 6, 156, 1152, 147, 1154, 156, + 6, 152, 151, 7, 592, 7, 7, 6, 1164, 148, + 1166, 155, 148, 1169, 6, 4, 156, 1173, 6, 6, + 151, 6, 1178, 7, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 156, 1306, + 150, 1308, 147, 6, 149, 135, 1202, 7, 55, 7, + 6, 6, 1208, 7, 1210, 7, 1212, 57, 1205, 7, + 7, 7, 7, 651, 149, 149, 1222, 149, 149, 7, + 1226, 7, 7, 6, 4, 4, 155, 148, 1234, 1235, + 6, 155, 7, 6, 6, 1241, 7, 7, 7, 6, + 6, 6, 1248, 55, 1361, 6, 1252, 6, 156, 4, + 4, 4, 148, 1208, 6, 1210, 4, 1212, 155, 6, + 149, 149, 152, 7, 6, 1220, 6, 6, 1223, 155, + 63, 1277, 155, 6, 6, 155, 6, 155, 945, 5, + 4, 6, 150, 155, 7, 7, 1292, 7, 7, 1295, + 7, 6, 1298, 6, 155, 155, 1302, 155, 151, 6, + 1306, 6, 1308, 102, 6, 6, 152, 1313, 6, 4, + 1316, 5, 750, 751, 6, 753, 6, 755, 756, 6, + 6, 759, 760, 129, 130, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 6, 6, 6, + 6, 147, 6, 6, 6, 6, 106, 6, 6, 6, + 6, 6, 6, 1308, 154, 1361, 129, 130, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + 6, 6, 4, 155, 147, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 6, 826, 827, + 828, 147, 6, 6, 1061, 7, 6, 5, 1065, 6, + 53, 152, 6, 6, 3, 4, 5, 156, 6, 6, + 9, 10, 11, 6, 155, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, -1, -1, -1, - 1148, -1, -1, -1, -1, -1, -1, -1, -1, 156, - 49, -1, 1360, 52, -1, -1, 55, -1, 57, -1, + 29, 30, 31, 32, 33, 34, 6, 155, 37, 38, + 39, 40, 7, 155, 43, 155, 155, 155, 6, 101, + 6, 6, 6, 891, 104, 6, 6, 6, 6, 897, + 6, 6, 155, 6, 155, 903, 904, 905, 156, 6, + 70, 909, 155, 6, 4, 6, 914, 915, 916, 6, + 6, 6, 6, 6, 6, 6, 156, 1154, 6, 6, + 155, 929, 6, 6, 6, 155, 6, 6, 6, 6, + 6, 939, 1169, 6, 155, 943, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 155, 117, 118, + 119, 147, 155, 122, 123, 124, 6, 155, 155, 6, + 155, 155, 6, 6, 6, 1202, 6, 6, 6, 138, + 139, 6, 884, 1277, 143, 890, 3, 3, 379, 148, + 988, 3, 4, 993, 153, 1222, 155, 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, 35, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1031, 1032, 1033, 1034, 49, -1, -1, + 52, -1, -1, 55, -1, 57, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 73, 74, 75, 76, 77, -1, - -1, -1, 81, -1, -1, 84, -1, -1, -1, -1, - -1, 1305, -1, 1307, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 1216, -1, - -1, -1, 147, -1, -1, -1, -1, -1, 117, -1, - -1, -1, -1, 122, 123, 124, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 138, - 139, -1, -1, -1, 143, -1, 1360, -1, -1, 148, - -1, -1, 3, 4, 153, 1263, 155, 156, 9, 10, + -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, + -1, -1, 84, -1, 1072, -1, -1, -1, -1, 1306, + -1, 1308, -1, -1, -1, -1, -1, 1085, -1, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, -1, -1, 117, -1, 147, -1, -1, + 122, 123, 124, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 138, 139, -1, -1, + -1, 143, -1, -1, 1361, -1, 148, -1, -1, -1, + -1, 153, -1, 155, 156, -1, -1, -1, -1, -1, + -1, 1149, -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, 35, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 49, + -1, -1, 52, -1, -1, 55, -1, 57, 12, 13, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1217, + -1, -1, -1, 73, 74, 75, 76, 77, -1, -1, + -1, 81, 6, -1, 84, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, -1, 60, -1, -1, 63, + 64, -1, 66, 67, 68, -1, 1264, 117, 72, -1, + -1, -1, 122, 123, 124, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 138, 139, + -1, -1, -1, 143, 98, 99, 100, -1, 148, -1, + -1, -1, -1, 153, -1, -1, 156, -1, -1, 3, + 4, 5, -1, 7, -1, 9, 10, 11, -1, 1317, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, -1, -1, 37, 38, 39, 40, -1, -1, 43, + -1, -1, 156, 12, 13, 129, 130, 131, 132, 133, + 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, + -1, -1, -1, 147, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + -1, 60, -1, -1, 63, 64, -1, 66, 67, 68, + -1, -1, -1, 72, -1, -1, -1, 111, -1, -1, + -1, -1, -1, 117, 118, 119, -1, -1, 122, 123, + 124, 125, 126, 127, 128, -1, -1, -1, -1, 98, + 99, 100, -1, -1, 138, 139, -1, -1, -1, 143, + -1, 145, 146, -1, 148, -1, 150, -1, 152, 153, + -1, 155, 3, 4, 5, -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, 35, -1, -1, -1, -1, -1, + 31, 32, 33, 34, 35, -1, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 49, -1, - -1, 52, -1, -1, 55, -1, 57, -1, 1316, -1, + -1, 52, -1, -1, 55, -1, 57, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, - 81, 3, 4, 84, -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, 117, -1, -1, -1, + 81, -1, -1, 84, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, -1, 60, -1, -1, 63, + 64, -1, 66, 67, 68, -1, 117, -1, 72, -1, -1, 122, 123, 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 138, 139, -1, - -1, -1, 143, -1, -1, -1, -1, 148, -1, -1, - -1, -1, 153, -1, -1, 156, 3, 4, 5, -1, - 7, -1, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, - 37, 38, 39, 40, -1, 117, 43, -1, 12, 13, - 122, 123, 124, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 138, 139, -1, -1, - -1, 143, -1, -1, -1, -1, 148, -1, -1, 151, - -1, 153, -1, 155, -1, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, -1, 60, -1, -1, 63, - 64, -1, 66, 67, 68, -1, -1, -1, 72, -1, - -1, -1, -1, -1, 111, -1, -1, -1, -1, -1, - 117, 118, 119, -1, -1, 122, 123, 124, 125, 126, - 127, 128, -1, -1, 98, 99, 100, -1, -1, -1, - -1, 138, 139, -1, -1, -1, 143, -1, 145, 146, - -1, 148, -1, 150, -1, 152, 153, -1, 155, 3, - 4, 5, -1, -1, -1, 9, 10, 11, -1, -1, + -1, -1, 143, -1, 98, 99, 100, 148, -1, 3, + 4, 5, 153, -1, 155, 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, 35, 156, -1, -1, -1, -1, -1, -1, -1, + 34, 35, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 49, -1, -1, 52, -1, - -1, 55, -1, 57, -1, 12, 13, -1, -1, -1, + -1, 55, 156, 57, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, -1, -1, 84, -1, -1, -1, -1, -1, -1, -1, -1, -1, @@ -2465,31 +2493,31 @@ static const yytype_int16 yycheck[] = 77, -1, -1, -1, 81, -1, -1, 84, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, -1, - 60, -1, -1, 63, 64, -1, 66, 67, 68, -1, + 60, -1, 6, 63, 64, -1, 66, 67, 68, -1, 117, -1, 72, -1, -1, 122, 123, 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 138, 139, -1, -1, -1, 143, -1, 98, 99, - 100, 148, -1, 3, 4, 5, 153, -1, 155, 9, + 100, 148, -1, 3, 4, -1, 153, -1, 155, 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, 35, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 49, - -1, -1, 52, -1, -1, 55, 156, 57, -1, 12, - 13, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 52, -1, -1, 55, 156, 57, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 73, 74, 75, 76, 77, -1, -1, - -1, 81, -1, -1, 84, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, -1, 60, -1, 6, - 63, 64, -1, 66, 67, 68, -1, 117, -1, 72, + -1, 81, -1, -1, 84, 129, 130, 131, 132, 133, + 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, + -1, -1, -1, 147, -1, -1, -1, -1, -1, 6, + -1, -1, -1, -1, -1, -1, -1, 117, -1, -1, -1, -1, 122, 123, 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 138, 139, - -1, -1, -1, 143, -1, 98, 99, 100, 148, -1, + -1, -1, -1, 143, -1, -1, -1, -1, 148, -1, 3, 4, -1, 153, -1, 155, 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, 35, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 49, -1, -1, 52, - -1, -1, 55, 156, 57, -1, -1, -1, -1, -1, + -1, -1, 55, -1, 57, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, -1, -1, 84, 129, 130, 131, 132, 133, 134, 135, 136, @@ -2524,7 +2552,7 @@ static const yytype_int16 yycheck[] = -1, -1, 81, -1, -1, 84, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, -1, -1, -1, -1, - 6, -1, -1, -1, -1, -1, -1, -1, 117, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 117, -1, -1, -1, -1, 122, 123, 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 138, 139, -1, -1, -1, 143, -1, -1, -1, -1, 148, @@ -2535,10 +2563,40 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, 49, -1, -1, 52, -1, -1, 55, -1, 57, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 73, 74, 75, 76, 77, -1, -1, -1, 81, - -1, -1, 84, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, - -1, 147, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 73, 74, 75, 76, 77, -1, 3, 4, 81, + -1, -1, 84, 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, 117, -1, -1, -1, -1, + 122, 123, 124, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 138, 139, -1, -1, + -1, 143, -1, -1, -1, -1, 148, -1, 3, 4, + -1, 153, -1, 155, 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, -1, -1, + -1, 117, -1, -1, -1, -1, 122, 123, 124, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 138, 139, -1, -1, -1, 143, -1, -1, + -1, -1, 148, -1, -1, 151, -1, 153, -1, 155, + 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, 117, 6, -1, -1, -1, 122, 123, 124, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 138, 139, -1, -1, -1, 143, -1, + -1, -1, -1, 148, -1, -1, 151, -1, 153, -1, + 155, 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, -1, -1, -1, 117, -1, -1, -1, -1, 122, + 123, 124, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 138, 139, -1, -1, -1, + 143, -1, -1, -1, -1, 148, -1, -1, -1, -1, + 153, -1, 155, -1, -1, -1, 129, 130, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + -1, -1, -1, -1, 147, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 117, -1, -1, -1, -1, 122, 123, 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 138, 139, -1, -1, @@ -2553,91 +2611,45 @@ static const yytype_int16 yycheck[] = 75, 76, 77, -1, 3, 4, 81, -1, -1, 84, 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, + 29, 30, 31, 32, 33, 34, 6, -1, -1, -1, -1, -1, 117, -1, -1, -1, -1, 122, 123, 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 138, 139, -1, -1, -1, 143, -1, - -1, -1, -1, 148, -1, 3, 4, 5, 153, -1, - 155, 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, 37, - 38, 39, 40, -1, -1, 43, -1, -1, 117, -1, - -1, -1, -1, 122, 123, 124, -1, -1, -1, -1, - -1, 6, -1, -1, -1, -1, -1, -1, -1, 138, - 139, -1, -1, -1, 143, -1, -1, -1, -1, 148, - -1, -1, 151, -1, 153, -1, 155, 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, 117, - 118, 119, 6, -1, 122, 123, 124, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 138, 139, -1, -1, -1, 143, -1, -1, -1, -1, - 148, -1, 3, 4, -1, 153, -1, 155, 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, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, - -1, 117, 147, -1, -1, -1, 122, 123, 124, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 138, 139, -1, -1, -1, 143, -1, -1, - -1, -1, 148, -1, -1, -1, -1, 153, -1, 155, - -1, -1, -1, -1, -1, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, - -1, -1, -1, 147, -1, -1, 117, -1, -1, -1, - -1, 122, 123, 124, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 138, 139, -1, - -1, -1, 143, -1, -1, -1, -1, 148, -1, 3, - 4, -1, 153, -1, 155, 9, 10, 11, -1, -1, + -1, -1, -1, 138, 139, -1, -1, -1, 143, 3, + 4, 5, -1, 148, -1, 9, 10, 11, 153, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 49, -1, -1, 52, -1, - -1, 55, -1, 57, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 73, - 74, 75, 76, 77, -1, 3, 4, 81, -1, -1, - 84, 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, 6, -1, -1, - -1, -1, -1, 117, -1, -1, -1, -1, 122, 123, - 124, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 34, 6, -1, 37, 38, 39, 40, -1, -1, 43, + -1, -1, -1, -1, -1, -1, -1, -1, 117, -1, + -1, -1, 8, 122, 123, 124, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 138, + 139, 8, -1, -1, 143, -1, -1, -1, -1, 148, + -1, -1, -1, -1, 153, -1, -1, -1, -1, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 8, -1, -1, -1, 147, -1, -1, + -1, -1, -1, 117, 118, 119, -1, -1, 122, 123, + 124, -1, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 138, 139, -1, -1, -1, 143, - 3, 4, 5, -1, 148, -1, 9, 10, 11, 153, - -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 6, -1, 37, 38, 39, 40, -1, -1, - 43, -1, -1, -1, -1, -1, -1, -1, -1, 117, - -1, 6, -1, -1, 122, 123, 124, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 138, 139, 8, -1, -1, 143, -1, -1, -1, -1, - 148, -1, -1, -1, -1, 153, -1, -1, -1, -1, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, 8, -1, -1, -1, 147, -1, - -1, -1, -1, -1, 117, 118, 119, -1, -1, 122, - 123, 124, -1, 8, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 138, 139, -1, -1, -1, - 143, -1, 8, -1, -1, 148, -1, -1, -1, -1, - 153, -1, -1, -1, -1, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 8, - -1, -1, -1, 147, 129, 130, 131, 132, 133, 134, + -1, 8, -1, -1, 148, -1, -1, -1, -1, 153, + -1, -1, -1, -1, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 8, -1, -1, -1, 147, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, - -1, 147, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, - -1, -1, -1, 147, 129, 130, 131, 132, 133, 134, + -1, 147, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, + 147, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, 147, 129, 130, 131, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, -1, -1, 70, - -1, 147, -1, -1, -1, -1, -1, -1, -1, -1, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, -1, -1, -1, -1, 147, 129, + 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, + -1, 147, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, + 147, -1, -1, -1, -1, -1, -1, -1, -1, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, 0, 1, -1, 147, 4, -1, - -1, -1, -1, -1, -1, -1, 12, 13, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, -1, -1, -1, -1, 147, -1, -1, -1, - 36, -1, -1, -1, -1, 41, 42, -1, 44, 45, + -1, -1, -1, -1, -1, -1, 12, 13, -1, -1, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, + 36, -1, -1, -1, -1, 41, 42, 156, 44, 45, 46, -1, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, -1, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, -1, 71, 72, 73, 74, 75, @@ -2731,20 +2743,12 @@ static const yytype_int16 yycheck[] = -1, -1, 147, -1, -1, -1, -1, -1, -1, -1, -1, 156, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, - 147, -1, -1, -1, -1, -1, -1, -1, -1, 156, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, - -1, -1, -1, -1, -1, -1, 155, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, -1, -1, -1, -1, 147, -1, -1, -1, -1, - -1, -1, -1, 155, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, - -1, -1, 147, -1, 149, -1, -1, -1, -1, 154, - 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, - 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, - -1, -1, -1, -1, -1, 154, 129, 130, 131, 132, + 147, -1, -1, -1, -1, -1, -1, -1, 155, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, -1, -1, -1, -1, 147, -1, -1, + -1, -1, -1, -1, -1, 155, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - -1, -1, -1, -1, 147, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 147, -1, 149, -1, -1, -1, -1, 154, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, -1, -1, -1, -1, -1, 154, 129, 130, @@ -2812,14 +2816,10 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, 147, -1, -1, -1, -1, -1, -1, 154, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, - 147, -1, -1, -1, 151, 129, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, - -1, -1, -1, 147, -1, -1, -1, 151, 129, 130, + 147, -1, -1, -1, -1, -1, -1, 154, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, -1, -1, - 151, 129, 130, 131, 132, 133, 134, 135, 136, 137, - 138, 139, 140, 141, 142, -1, -1, -1, -1, 147, - -1, -1, -1, 151, 129, 130, 131, 132, 133, 134, + -1, -1, -1, 154, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, -1, -1, 151, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, @@ -2888,9 +2888,14 @@ static const yytype_int16 yycheck[] = 141, 142, -1, -1, -1, -1, 147, -1, -1, -1, 151, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, 147, - -1, 149, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, - 147, -1, 149, 129, 130, 131, 132, 133, 134, 135, + -1, -1, -1, 151, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, + -1, -1, 147, -1, -1, -1, 151, 129, 130, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, -1, -1, -1, -1, 147, -1, -1, -1, 151, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, + -1, -1, 151, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, 149, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, @@ -3001,7 +3006,11 @@ static const yytype_int16 yycheck[] = 135, 136, 137, 138, 139, 140, 141, 142, -1, -1, -1, -1, 147, -1, 149, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, -1, - -1, -1, -1, 147 + -1, -1, -1, 147, -1, 149, 129, 130, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + -1, -1, -1, -1, 147, -1, 149, 129, 130, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, -1, -1, -1, -1, 147 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -3115,41 +3124,42 @@ static const yytype_uint8 yystos[] = 7, 231, 231, 231, 155, 154, 156, 154, 156, 154, 156, 150, 231, 236, 231, 6, 6, 231, 233, 156, 5, 155, 236, 155, 155, 155, 236, 239, 155, 151, - 6, 6, 102, 231, 231, 231, 6, 7, 6, 181, - 166, 231, 154, 154, 154, 156, 167, 231, 152, 236, - 244, 231, 6, 4, 241, 6, 151, 240, 6, 6, - 6, 6, 243, 154, 231, 231, 233, 6, 6, 6, - 231, 231, 6, 231, 5, 6, 6, 106, 189, 231, - 6, 236, 236, 236, 236, 6, 4, 6, 6, 231, - 231, 244, 156, 149, 154, 156, 197, 233, 6, 210, - 233, 6, 211, 233, 6, 212, 231, 156, 154, 149, - 156, 154, 6, 139, 233, 6, 235, 233, 233, 6, - 156, 231, 236, 154, 156, 8, 156, 149, 155, 231, - 244, 149, 154, 231, 231, 236, 155, 154, 156, 4, - 6, 6, 6, 7, 6, 152, 6, 231, 185, 156, - 156, 156, 156, 5, 53, 6, 6, 6, 6, 6, - 155, 155, 6, 6, 155, 231, 156, 154, 155, 154, - 155, 154, 155, 151, 6, 236, 7, 155, 231, 154, - 156, 154, 154, 6, 156, 101, 231, 231, 239, 6, - 6, 170, 231, 154, 154, 235, 231, 6, 240, 104, - 154, 186, 6, 6, 6, 6, 6, 155, 235, 239, - 197, 154, 156, 231, 233, 219, 231, 233, 219, 231, - 233, 219, 6, 154, 156, 236, 198, 156, 233, 6, - 239, 233, 231, 156, 156, 156, 155, 231, 231, 156, - 6, 231, 154, 156, 187, 231, 156, 156, 156, 231, - 156, 154, 156, 156, 154, 156, 156, 154, 156, 236, - 6, 70, 156, 207, 155, 154, 156, 154, 6, 6, - 167, 149, 154, 6, 155, 154, 4, 156, 6, 6, - 156, 6, 213, 231, 6, 6, 214, 231, 6, 6, - 215, 231, 6, 156, 231, 219, 198, 239, 6, 233, - 239, 156, 173, 231, 235, 231, 5, 236, 155, 156, - 155, 156, 155, 156, 6, 6, 156, 156, 208, 156, - 154, 156, 6, 155, 149, 156, 156, 219, 6, 216, - 219, 6, 217, 219, 6, 218, 219, 6, 239, 6, - 171, 243, 176, 155, 6, 156, 155, 156, 155, 156, - 155, 156, 156, 154, 156, 155, 235, 6, 219, 6, - 219, 6, 219, 6, 243, 6, 174, 243, 156, 156, - 156, 156, 154, 156, 6, 6, 6, 6, 243, 6 + 6, 6, 102, 231, 231, 231, 6, 6, 7, 6, + 181, 166, 231, 154, 154, 154, 156, 167, 231, 152, + 236, 244, 231, 6, 4, 241, 6, 151, 240, 6, + 6, 6, 6, 243, 154, 231, 231, 233, 6, 6, + 6, 231, 231, 6, 231, 5, 6, 6, 106, 189, + 231, 6, 236, 236, 236, 236, 6, 4, 6, 6, + 231, 231, 244, 156, 149, 154, 156, 197, 233, 6, + 210, 233, 6, 211, 233, 6, 212, 231, 156, 154, + 149, 156, 154, 6, 139, 233, 6, 235, 233, 233, + 6, 156, 231, 236, 154, 156, 8, 156, 149, 155, + 231, 244, 149, 154, 231, 231, 236, 155, 154, 156, + 4, 6, 6, 6, 7, 6, 152, 6, 231, 185, + 156, 156, 156, 156, 5, 53, 6, 6, 6, 6, + 6, 155, 155, 6, 6, 155, 231, 156, 154, 155, + 154, 155, 154, 155, 151, 6, 236, 7, 155, 231, + 154, 156, 154, 154, 6, 156, 101, 231, 231, 239, + 6, 6, 170, 231, 154, 154, 235, 231, 6, 240, + 104, 154, 186, 6, 6, 6, 6, 6, 155, 235, + 239, 197, 154, 156, 231, 233, 219, 231, 233, 219, + 231, 233, 219, 6, 154, 156, 236, 198, 156, 233, + 6, 239, 233, 231, 156, 156, 156, 155, 231, 231, + 156, 6, 231, 154, 156, 187, 231, 156, 156, 156, + 231, 156, 154, 156, 156, 154, 156, 156, 154, 156, + 236, 6, 70, 156, 207, 155, 154, 156, 154, 6, + 6, 167, 149, 154, 6, 155, 154, 4, 156, 6, + 6, 156, 6, 213, 231, 6, 6, 214, 231, 6, + 6, 215, 231, 6, 156, 231, 219, 198, 239, 6, + 233, 239, 156, 173, 231, 235, 231, 5, 236, 155, + 156, 155, 156, 155, 156, 6, 6, 156, 156, 208, + 156, 154, 156, 6, 155, 149, 156, 156, 219, 6, + 216, 219, 6, 217, 219, 6, 218, 219, 6, 239, + 6, 171, 243, 176, 155, 6, 156, 155, 156, 155, + 156, 155, 156, 156, 154, 156, 155, 235, 6, 219, + 6, 219, 6, 219, 6, 243, 6, 174, 243, 156, + 156, 156, 156, 154, 156, 6, 6, 6, 6, 243, + 6 }; #define yyerrok (yyerrstatus = 0) @@ -3185,7 +3195,6 @@ do \ { \ yychar = (Token); \ yylval = (Value); \ - yytoken = YYTRANSLATE (yychar); \ YYPOPSTACK (1); \ goto yybackup; \ } \ @@ -3227,19 +3236,10 @@ while (YYID (0)) #endif -/* YY_LOCATION_PRINT -- Print the location on the stream. - This macro was not mandated originally: define only if we know - we won't break user code: when these are the locations we know. */ +/* This macro is provided for backward compatibility. */ #ifndef YY_LOCATION_PRINT -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL -# define YY_LOCATION_PRINT(File, Loc) \ - fprintf (File, "%d.%d-%d.%d", \ - (Loc).first_line, (Loc).first_column, \ - (Loc).last_line, (Loc).last_column) -# else -# define YY_LOCATION_PRINT(File, Loc) ((void) 0) -# endif +# define YY_LOCATION_PRINT(File, Loc) ((void) 0) #endif @@ -3431,7 +3431,6 @@ int yydebug; # define YYMAXDEPTH 10000 #endif - #if YYERROR_VERBOSE @@ -3534,115 +3533,142 @@ yytnamerr (char *yyres, const char *yystr) } # endif -/* Copy into YYRESULT an error message about the unexpected token - YYCHAR while in state YYSTATE. Return the number of bytes copied, - including the terminating null byte. If YYRESULT is null, do not - copy anything; just return the number of bytes that would be - copied. As a special case, return 0 if an ordinary "syntax error" - message will do. Return YYSIZE_MAXIMUM if overflow occurs during - size calculation. */ -static YYSIZE_T -yysyntax_error (char *yyresult, int yystate, int yychar) -{ - int yyn = yypact[yystate]; +/* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message + about the unexpected token YYTOKEN for the state stack whose top is + YYSSP. - if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) - return 0; - else - { - int yytype = YYTRANSLATE (yychar); - YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); - YYSIZE_T yysize = yysize0; - YYSIZE_T yysize1; - int yysize_overflow = 0; - enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; - char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - int yyx; - -# if 0 - /* This is so xgettext sees the translatable formats that are - constructed on the fly. */ - YY_("syntax error, unexpected %s"); - YY_("syntax error, unexpected %s, expecting %s"); - YY_("syntax error, unexpected %s, expecting %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); -# endif - char *yyfmt; - char const *yyf; - static char const yyunexpected[] = "syntax error, unexpected %s"; - static char const yyexpecting[] = ", expecting %s"; - static char const yyor[] = " or %s"; - char yyformat[sizeof yyunexpected - + sizeof yyexpecting - 1 - + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) - * (sizeof yyor - 1))]; - char const *yyprefix = yyexpecting; - - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. */ - int yyxbegin = yyn < 0 ? -yyn : 0; - - /* Stay within bounds of both yycheck and yytname. */ - int yychecklim = YYLAST - yyn + 1; - int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; - int yycount = 1; - - yyarg[0] = yytname[yytype]; - yyfmt = yystpcpy (yyformat, yyunexpected); - - for (yyx = yyxbegin; yyx < yyxend; ++yyx) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - { - if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) - { - yycount = 1; - yysize = yysize0; - yyformat[sizeof yyunexpected - 1] = '\0'; - break; - } - yyarg[yycount++] = yytname[yyx]; - yysize1 = yysize + yytnamerr (0, yytname[yyx]); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; - yyfmt = yystpcpy (yyfmt, yyprefix); - yyprefix = yyor; - } + Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is + not large enough to hold the message. In that case, also set + *YYMSG_ALLOC to the required number of bytes. Return 2 if the + required number of bytes is too large to store. */ +static int +yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, + yytype_int16 *yyssp, int yytoken) +{ + YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]); + YYSIZE_T yysize = yysize0; + YYSIZE_T yysize1; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + /* Internationalized format string. */ + const char *yyformat = 0; + /* Arguments of yyformat. */ + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + /* Number of reported tokens (one for the "unexpected", one per + "expected"). */ + int yycount = 0; + + /* There are many possibilities here to consider: + - Assume YYFAIL is not used. It's too flawed to consider. See + <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html> + for details. YYERROR is fine as it does not invoke this + function. + - If this state is a consistent state with a default action, then + the only way this function was invoked is if the default action + is an error action. In that case, don't check for expected + tokens because there are none. + - The only way there can be no lookahead present (in yychar) is if + this state is a consistent state with a default action. Thus, + detecting the absence of a lookahead is sufficient to determine + that there is no unexpected or expected token to report. In that + case, just report a simple "syntax error". + - Don't assume there isn't a lookahead just because this state is a + consistent state with a default action. There might have been a + previous inconsistent state, consistent state with a non-default + action, or user semantic action that manipulated yychar. + - Of course, the expected token list depends on states to have + correct lookahead information, and it depends on the parser not + to perform extra reductions after fetching a lookahead from the + scanner and before detecting a syntax error. Thus, state merging + (from LALR or IELR) and default reductions corrupt the expected + token list. However, the list is correct for canonical LR with + one exception: it will still contain any token that will not be + accepted due to an error action in a later state. + */ + if (yytoken != YYEMPTY) + { + int yyn = yypact[*yyssp]; + yyarg[yycount++] = yytname[yytoken]; + if (!yypact_value_is_default (yyn)) + { + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. In other words, skip the first -YYN actions for + this state because they are default actions. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yyx; + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR + && !yytable_value_is_error (yytable[yyx + yyn])) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + break; + } + yyarg[yycount++] = yytname[yyx]; + yysize1 = yysize + yytnamerr (0, yytname[yyx]); + if (! (yysize <= yysize1 + && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; + } + } + } - yyf = YY_(yyformat); - yysize1 = yysize + yystrlen (yyf); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; + switch (yycount) + { +# define YYCASE_(N, S) \ + case N: \ + yyformat = S; \ + break + YYCASE_(0, YY_("syntax error")); + YYCASE_(1, YY_("syntax error, unexpected %s")); + YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); + YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); + YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); + YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); +# undef YYCASE_ + } - if (yysize_overflow) - return YYSIZE_MAXIMUM; + yysize1 = yysize + yystrlen (yyformat); + if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) + return 2; + yysize = yysize1; - if (yyresult) - { - /* Avoid sprintf, as that infringes on the user's name space. - Don't have undefined behavior even if the translation - produced a string with the wrong number of "%s"s. */ - char *yyp = yyresult; - int yyi = 0; - while ((*yyp = *yyf) != '\0') - { - if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) - { - yyp += yytnamerr (yyp, yyarg[yyi++]); - yyf += 2; - } - else - { - yyp++; - yyf++; - } - } - } - return yysize; + if (*yymsg_alloc < yysize) + { + *yymsg_alloc = 2 * yysize; + if (! (yysize <= *yymsg_alloc + && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) + *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; + return 1; } + + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + { + char *yyp = *yymsg; + int yyi = 0; + while ((*yyp = *yyformat) != '\0') + if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyformat += 2; + } + else + { + yyp++; + yyformat++; + } + } + return 0; } #endif /* YYERROR_VERBOSE */ - /*-----------------------------------------------. | Release the memory associated to this symbol. | @@ -3675,6 +3701,7 @@ yydestruct (yymsg, yytype, yyvaluep) } } + /* Prevent warnings from -Wmissing-prototypes. */ #ifdef YYPARSE_PARAM #if defined __STDC__ || defined __cplusplus @@ -3701,10 +3728,9 @@ YYSTYPE yylval; int yynerrs; - -/*-------------------------. -| yyparse or yypush_parse. | -`-------------------------*/ +/*----------. +| yyparse. | +`----------*/ #ifdef YYPARSE_PARAM #if (defined __STDC__ || defined __C99__FUNC__ \ @@ -3728,8 +3754,6 @@ yyparse () #endif #endif { - - int yystate; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; @@ -3884,7 +3908,7 @@ yybackup: /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; - if (yyn == YYPACT_NINF) + if (yypact_value_is_default (yyn)) goto yydefault; /* Not known => get a lookahead token if don't already have one. */ @@ -3915,8 +3939,8 @@ yybackup: yyn = yytable[yyn]; if (yyn <= 0) { - if (yyn == 0 || yyn == YYTABLE_NINF) - goto yyerrlab; + if (yytable_value_is_error (yyn)) + goto yyerrlab; yyn = -yyn; goto yyreduce; } @@ -3971,161 +3995,161 @@ yyreduce: { case 3: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 159 "Gmsh.y" - { yyerrok; return 1; ;} + { yyerrok; return 1; } break; case 6: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 170 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 7: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 171 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 8: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 172 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 9: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 173 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 10: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 174 "Gmsh.y" - { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} + { List_Delete((yyvsp[(1) - (1)].l)); return 1; } break; case 11: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 175 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 12: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 176 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 13: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 177 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 14: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 178 "Gmsh.y" - { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} + { List_Delete((yyvsp[(1) - (1)].l)); return 1; } break; case 15: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 179 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 16: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 180 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 17: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 181 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 18: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 182 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 19: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 183 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 20: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 184 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 21: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 185 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 22: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 186 "Gmsh.y" - { return 1; ;} + { return 1; } break; case 23: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 191 "Gmsh.y" { (yyval.c) = (char*)"w"; - ;} + } break; case 24: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 195 "Gmsh.y" { (yyval.c) = (char*)"a"; - ;} + } break; case 25: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 202 "Gmsh.y" { Msg::Direct((yyvsp[(3) - (5)].c)); Free((yyvsp[(3) - (5)].c)); - ;} + } break; case 26: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 207 "Gmsh.y" { std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(6) - (7)].c)); @@ -4139,12 +4163,12 @@ yyreduce: } Free((yyvsp[(3) - (7)].c)); Free((yyvsp[(6) - (7)].c)); - ;} + } break; case 27: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 221 "Gmsh.y" { char tmpstring[1024]; @@ -4157,12 +4181,12 @@ yyreduce: Msg::Direct(tmpstring); Free((yyvsp[(3) - (7)].c)); List_Delete((yyvsp[(5) - (7)].l)); - ;} + } break; case 28: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 234 "Gmsh.y" { char tmpstring[1024]; @@ -4185,12 +4209,12 @@ yyreduce: Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(8) - (9)].c)); List_Delete((yyvsp[(5) - (9)].l)); - ;} + } break; case 29: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 262 "Gmsh.y" { #if defined(HAVE_POST) @@ -4204,12 +4228,12 @@ yyreduce: delete ViewData; #endif Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(2) - (6)].c)); - ;} + } break; case 30: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 276 "Gmsh.y" { #if defined(HAVE_POST) @@ -4220,12 +4244,12 @@ yyreduce: } #endif Free((yyvsp[(2) - (6)].c)); - ;} + } break; case 31: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 287 "Gmsh.y" { #if defined(HAVE_POST) @@ -4236,51 +4260,51 @@ yyreduce: } #endif Free((yyvsp[(2) - (6)].c)); - ;} + } break; case 32: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 301 "Gmsh.y" { #if defined(HAVE_POST) ViewData = new PViewDataList(); #endif - ;} + } break; case 38: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 315 "Gmsh.y" - { ViewCoord.push_back((yyvsp[(1) - (1)].d)); ;} + { ViewCoord.push_back((yyvsp[(1) - (1)].d)); } break; case 39: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 317 "Gmsh.y" - { ViewCoord.push_back((yyvsp[(3) - (3)].d)); ;} + { ViewCoord.push_back((yyvsp[(3) - (3)].d)); } break; case 40: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 322 "Gmsh.y" - { if(ViewValueList) ViewValueList->push_back((yyvsp[(1) - (1)].d)); ;} + { if(ViewValueList) ViewValueList->push_back((yyvsp[(1) - (1)].d)); } break; case 41: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 324 "Gmsh.y" - { if(ViewValueList) ViewValueList->push_back((yyvsp[(3) - (3)].d)); ;} + { if(ViewValueList) ViewValueList->push_back((yyvsp[(3) - (3)].d)); } break; case 42: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 329 "Gmsh.y" { #if defined(HAVE_POST) @@ -4384,12 +4408,12 @@ yyreduce: #endif ViewCoord.clear(); Free((yyvsp[(1) - (1)].c)); - ;} + } break; case 43: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 433 "Gmsh.y" { #if defined(HAVE_POST) @@ -4399,47 +4423,47 @@ yyreduce: ViewValueList->push_back(ViewCoord[3 * j + i]); } #endif - ;} + } break; case 44: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 443 "Gmsh.y" { #if defined(HAVE_POST) if(ViewValueList) (*ViewNumList)++; #endif - ;} + } break; case 45: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 452 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(1) - (1)].c)[i]); #endif Free((yyvsp[(1) - (1)].c)); - ;} + } break; case 46: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 459 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(3) - (3)].c)[i]); #endif Free((yyvsp[(3) - (3)].c)); - ;} + } break; case 47: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 469 "Gmsh.y" { #if defined(HAVE_POST) @@ -4448,47 +4472,47 @@ yyreduce: ViewData->T2D.push_back((yyvsp[(7) - (8)].d)); ViewData->T2D.push_back(ViewData->T2C.size()); #endif - ;} + } break; case 48: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 478 "Gmsh.y" { #if defined(HAVE_POST) ViewData->NbT2++; #endif - ;} + } break; case 49: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 487 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(1) - (1)].c)[i]); #endif Free((yyvsp[(1) - (1)].c)); - ;} + } break; case 50: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 494 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(3) - (3)].c)[i]); #endif Free((yyvsp[(3) - (3)].c)); - ;} + } break; case 51: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 504 "Gmsh.y" { #if defined(HAVE_POST) @@ -4496,23 +4520,23 @@ yyreduce: ViewData->T3D.push_back((yyvsp[(7) - (10)].d)); ViewData->T3D.push_back((yyvsp[(9) - (10)].d)); ViewData->T3D.push_back(ViewData->T3C.size()); #endif - ;} + } break; case 52: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 512 "Gmsh.y" { #if defined(HAVE_POST) ViewData->NbT3++; #endif - ;} + } break; case 53: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 522 "Gmsh.y" { #if defined(HAVE_POST) @@ -4528,12 +4552,12 @@ yyreduce: ViewData->setInterpolationMatrices(type, ListOfListOfDouble2Matrix((yyvsp[(3) - (8)].l)), ListOfListOfDouble2Matrix((yyvsp[(6) - (8)].l))); #endif - ;} + } break; case 54: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 541 "Gmsh.y" { #if defined(HAVE_POST) @@ -4549,80 +4573,80 @@ yyreduce: ListOfListOfDouble2Matrix((yyvsp[(9) - (14)].l)), ListOfListOfDouble2Matrix((yyvsp[(12) - (14)].l))); #endif - ;} + } break; case 55: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 560 "Gmsh.y" { #if defined(HAVE_POST) ViewValueList = &ViewData->Time; #endif - ;} + } break; case 56: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 566 "Gmsh.y" { - ;} + } break; case 57: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 573 "Gmsh.y" - { (yyval.i) = 0; ;} + { (yyval.i) = 0; } break; case 58: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 574 "Gmsh.y" - { (yyval.i) = 1; ;} + { (yyval.i) = 1; } break; case 59: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 575 "Gmsh.y" - { (yyval.i) = 2; ;} + { (yyval.i) = 2; } break; case 60: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 576 "Gmsh.y" - { (yyval.i) = 3; ;} + { (yyval.i) = 3; } break; case 61: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 577 "Gmsh.y" - { (yyval.i) = 4; ;} + { (yyval.i) = 4; } break; case 62: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 581 "Gmsh.y" - { (yyval.i) = 1; ;} + { (yyval.i) = 1; } break; case 63: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 582 "Gmsh.y" - { (yyval.i) = -1; ;} + { (yyval.i) = -1; } break; case 65: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 591 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c)) && (yyvsp[(2) - (4)].i) && List_Nbr((yyvsp[(3) - (4)].l)) == 1){ @@ -4682,12 +4706,12 @@ yyreduce: } Free((yyvsp[(1) - (4)].c)); List_Delete((yyvsp[(3) - (4)].l)); - ;} + } break; case 66: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 654 "Gmsh.y" { gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (6)].c)]); @@ -4716,12 +4740,12 @@ yyreduce: } Free((yyvsp[(1) - (6)].c)); List_Delete((yyvsp[(5) - (6)].l)); - ;} + } break; case 67: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 684 "Gmsh.y" { int index = (int)(yyvsp[(3) - (7)].d); @@ -4754,12 +4778,12 @@ yyreduce: yymsg(0, "Variable '%s' is not a list", (yyvsp[(1) - (7)].c)); } Free((yyvsp[(1) - (7)].c)); - ;} + } break; case 68: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 717 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (9)].l)) != List_Nbr((yyvsp[(8) - (9)].l))){ @@ -4805,12 +4829,12 @@ yyreduce: Free((yyvsp[(1) - (9)].c)); List_Delete((yyvsp[(4) - (9)].l)); List_Delete((yyvsp[(8) - (9)].l)); - ;} + } break; case 69: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 763 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -4825,12 +4849,12 @@ yyreduce: yymsg(0, "Variable '%s' is a list", (yyvsp[(1) - (3)].c)); } Free((yyvsp[(1) - (3)].c)); - ;} + } break; case 70: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 778 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -4846,23 +4870,23 @@ yyreduce: yymsg(0, "Variable '%s' is not a list", (yyvsp[(1) - (6)].c)); } Free((yyvsp[(1) - (6)].c)); - ;} + } break; case 71: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 794 "Gmsh.y" { gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)] = std::string((yyvsp[(3) - (4)].c)); Free((yyvsp[(1) - (4)].c)); Free((yyvsp[(3) - (4)].c)); - ;} + } break; case 72: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 803 "Gmsh.y" { std::string tmp((yyvsp[(5) - (6)].c)); @@ -4873,7 +4897,7 @@ yyreduce: case 73: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 809 "Gmsh.y" { std::string tmp((yyvsp[(8) - (9)].c)); @@ -4884,7 +4908,7 @@ yyreduce: case 74: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 818 "Gmsh.y" { double d = 0.; @@ -4902,12 +4926,12 @@ yyreduce: NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), d); } Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(3) - (6)].c)); - ;} + } break; case 75: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 836 "Gmsh.y" { double d = 0.; @@ -4925,12 +4949,12 @@ yyreduce: NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), d); } Free((yyvsp[(1) - (9)].c)); Free((yyvsp[(6) - (9)].c)); - ;} + } break; case 76: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 854 "Gmsh.y" { double d = 0.; @@ -4939,12 +4963,12 @@ yyreduce: NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (5)].c), 0, (yyvsp[(3) - (5)].c), d); } Free((yyvsp[(1) - (5)].c)); Free((yyvsp[(3) - (5)].c)); - ;} + } break; case 77: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 863 "Gmsh.y" { double d = 0.; @@ -4953,32 +4977,32 @@ yyreduce: NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c), d); } Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(6) - (8)].c)); - ;} + } break; case 78: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 875 "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)); - ;} + } break; case 79: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 880 "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)); - ;} + } break; case 80: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 888 "Gmsh.y" { GmshColorTable *ct = GetColorTable(0); @@ -4998,12 +5022,12 @@ yyreduce: } Free((yyvsp[(1) - (6)].c)); List_Delete((yyvsp[(5) - (6)].l)); - ;} + } break; case 81: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 908 "Gmsh.y" { GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (9)].d)); @@ -5023,12 +5047,12 @@ yyreduce: } Free((yyvsp[(1) - (9)].c)); List_Delete((yyvsp[(8) - (9)].l)); - ;} + } break; case 82: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 931 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5039,12 +5063,12 @@ yyreduce: else yymsg(0, "Unknown command %s Field", (yyvsp[(1) - (5)].c)); #endif - ;} + } break; case 83: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 942 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5052,12 +5076,12 @@ yyreduce: yymsg(0, "Cannot create field %i of type '%s'", (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c)); #endif Free((yyvsp[(6) - (7)].c)); - ;} + } break; case 84: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 950 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5079,12 +5103,12 @@ yyreduce: yymsg(0, "No field with id %i", (int)(yyvsp[(3) - (9)].d)); #endif Free((yyvsp[(6) - (9)].c)); - ;} + } break; case 85: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 972 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5107,12 +5131,12 @@ yyreduce: #endif Free((yyvsp[(6) - (9)].c)); Free((yyvsp[(8) - (9)].c)); - ;} + } break; case 86: -/* Line 1464 of yacc.c */ +/* Line 1806 of yacc.c */ #line 995 "Gmsh.y" { #if defined(HAVE_MESH) @@ -5137,13 +5161,36 @@ yyreduce: #endif Free((yyvsp[(6) - (11)].c)); List_Delete((yyvsp[(9) - (11)].l)); - ;} + } break; case 87: -/* Line 1464 of yacc.c */ -#line 1023 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1020 "Gmsh.y" + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (7)].d)); + if(field){ + FieldCallback *callback = field->callbacks[(yyvsp[(6) - (7)].c)]; + if(callback) { + callback->run(); + } + else + yymsg(0, "Unknown callback '%s' in field %i of type '%s'", + (yyvsp[(6) - (7)].c), (int)(yyvsp[(3) - (7)].d), field->getName()); + } + else + yymsg(0, "No field with id %i", (int)(yyvsp[(3) - (7)].d)); +#endif + Free((yyvsp[(6) - (7)].c)); + } + break; + + case 88: + +/* Line 1806 of yacc.c */ +#line 1041 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -5154,13 +5201,13 @@ yyreduce: } #endif Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(6) - (9)].c)); - ;} + } break; - case 88: + case 89: -/* Line 1464 of yacc.c */ -#line 1035 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1053 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -5171,13 +5218,13 @@ yyreduce: } #endif Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(6) - (9)].c)); Free((yyvsp[(8) - (9)].c)); - ;} + } break; - case 92: + case 93: -/* Line 1464 of yacc.c */ -#line 1053 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1071 "Gmsh.y" { std::string key((yyvsp[(3) - (3)].c)); std::vector<double> val(1, 0.); @@ -5187,13 +5234,13 @@ yyreduce: gmsh_yysymbols[key].value = val; } Free((yyvsp[(3) - (3)].c)); - ;} + } break; - case 93: + case 94: -/* Line 1464 of yacc.c */ -#line 1064 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1082 "Gmsh.y" { std::string key((yyvsp[(3) - (5)].c)); std::vector<double> val(1, (yyvsp[(5) - (5)].d)); @@ -5203,20 +5250,20 @@ yyreduce: gmsh_yysymbols[key].value = val; } Free((yyvsp[(3) - (5)].c)); - ;} + } break; - case 94: + case 95: -/* Line 1464 of yacc.c */ -#line 1075 "Gmsh.y" - { floatOptions.clear(); charOptions.clear(); ;} +/* Line 1806 of yacc.c */ +#line 1093 "Gmsh.y" + { floatOptions.clear(); charOptions.clear(); } break; - case 95: + case 96: -/* Line 1464 of yacc.c */ -#line 1077 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1095 "Gmsh.y" { std::string key((yyvsp[(3) - (9)].c)); std::vector<double> val(1, (yyvsp[(6) - (9)].d)); @@ -5224,13 +5271,13 @@ yyreduce: Msg::ExchangeOnelabParameter(key, val, floatOptions, charOptions); gmsh_yysymbols[key].value = val; } - ;} + } break; - case 98: + case 99: -/* Line 1464 of yacc.c */ -#line 1093 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1111 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ @@ -5240,56 +5287,56 @@ yyreduce: } Free((yyvsp[(2) - (3)].c)); List_Delete((yyvsp[(3) - (3)].l)); - ;} + } break; - case 99: + case 100: -/* Line 1464 of yacc.c */ -#line 1104 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1122 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); std::string val((yyvsp[(3) - (3)].c)); charOptions[key].push_back(val); Free((yyvsp[(2) - (3)].c)); Free((yyvsp[(3) - (3)].c)); - ;} + } break; - case 100: + case 101: -/* Line 1464 of yacc.c */ -#line 1117 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1135 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); - ;} + } break; - case 101: + case 102: -/* Line 1464 of yacc.c */ -#line 1121 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1139 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName (std::string((yyvsp[(1) - (1)].c)), curPhysDim, ++GModel::current()->getGEOInternals()->MaxPhysicalNum); Free((yyvsp[(1) - (1)].c)); - ;} + } break; - case 102: + case 103: -/* Line 1464 of yacc.c */ -#line 1131 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1149 "Gmsh.y" { (yyval.l) = 0; - ;} + } break; - case 103: + case 104: -/* Line 1464 of yacc.c */ -#line 1135 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1153 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(Vertex*)); Vertex *v = FindPoint((int)(yyvsp[(4) - (5)].d)); @@ -5298,31 +5345,31 @@ yyreduce: else{ List_Add((yyval.l), &v); } - ;} + } break; - case 104: + case 105: -/* Line 1464 of yacc.c */ -#line 1147 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1165 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = 0.; - ;} + } break; - case 105: + case 106: -/* Line 1464 of yacc.c */ -#line 1151 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1169 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; - ;} + } break; - case 106: + case 107: -/* Line 1464 of yacc.c */ -#line 1161 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1179 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindPoint(num)){ @@ -5344,22 +5391,22 @@ yyreduce: } (yyval.s).Type = MSH_POINT; (yyval.s).Num = num; - ;} + } break; - case 107: + case 108: -/* Line 1464 of yacc.c */ -#line 1184 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1202 "Gmsh.y" { curPhysDim = 0; - ;} + } break; - case 108: + case 109: -/* Line 1464 of yacc.c */ -#line 1188 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1206 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_POINT)){ @@ -5374,13 +5421,13 @@ yyreduce: List_Delete((yyvsp[(8) - (9)].l)); (yyval.s).Type = MSH_PHYSICAL_POINT; (yyval.s).Num = num; - ;} + } break; - case 109: + case 110: -/* Line 1464 of yacc.c */ -#line 1204 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1222 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -5398,13 +5445,13 @@ yyreduce: // dummy values (yyval.s).Type = 0; (yyval.s).Num = 0; - ;} + } break; - case 110: + case 111: -/* Line 1464 of yacc.c */ -#line 1226 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1244 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -5421,13 +5468,13 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_SEGM_LINE; (yyval.s).Num = num; - ;} + } break; - case 111: + case 112: -/* Line 1464 of yacc.c */ -#line 1244 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1262 "Gmsh.y" { for (int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ double dnum; @@ -5447,13 +5494,13 @@ yyreduce: } } } - ;} + } break; - case 112: + case 113: -/* Line 1464 of yacc.c */ -#line 1265 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1283 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -5470,13 +5517,13 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_SEGM_SPLN; (yyval.s).Num = num; - ;} + } break; - case 113: + case 114: -/* Line 1464 of yacc.c */ -#line 1283 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1301 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); if(FindCurve(num)){ @@ -5505,13 +5552,13 @@ yyreduce: List_Delete((yyvsp[(6) - (8)].l)); (yyval.s).Type = MSH_SEGM_CIRC; (yyval.s).Num = num; - ;} + } break; - case 114: + case 115: -/* Line 1464 of yacc.c */ -#line 1313 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1331 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); if(FindCurve(num)){ @@ -5540,13 +5587,13 @@ yyreduce: List_Delete((yyvsp[(6) - (8)].l)); (yyval.s).Type = MSH_SEGM_ELLI; (yyval.s).Num = num; - ;} + } break; - case 115: + case 116: -/* Line 1464 of yacc.c */ -#line 1343 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1361 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -5563,13 +5610,13 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_SEGM_BSPLN; (yyval.s).Num = num; - ;} + } break; - case 116: + case 117: -/* Line 1464 of yacc.c */ -#line 1361 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1379 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -5586,13 +5633,13 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_SEGM_BEZIER; (yyval.s).Num = num; - ;} + } break; - case 117: + case 118: -/* Line 1464 of yacc.c */ -#line 1379 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1397 "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))){ @@ -5617,13 +5664,13 @@ yyreduce: List_Delete((yyvsp[(8) - (11)].l)); (yyval.s).Type = MSH_SEGM_NURBS; (yyval.s).Num = num; - ;} + } break; - case 118: + case 119: -/* Line 1464 of yacc.c */ -#line 1405 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1423 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindEdgeLoop(num)){ @@ -5640,13 +5687,13 @@ yyreduce: Free((yyvsp[(2) - (8)].c)); (yyval.s).Type = MSH_SEGM_LOOP; (yyval.s).Num = num; - ;} + } break; - case 119: + case 120: -/* Line 1464 of yacc.c */ -#line 1423 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1441 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindCurve(num)){ @@ -5663,22 +5710,22 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_SEGM_COMPOUND; (yyval.s).Num = num; - ;} + } break; - case 120: + case 121: -/* Line 1464 of yacc.c */ -#line 1441 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1459 "Gmsh.y" { curPhysDim = 1; - ;} + } break; - case 121: + case 122: -/* Line 1464 of yacc.c */ -#line 1445 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1463 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_LINE)){ @@ -5693,13 +5740,13 @@ yyreduce: List_Delete((yyvsp[(8) - (9)].l)); (yyval.s).Type = MSH_PHYSICAL_LINE; (yyval.s).Num = num; - ;} + } break; - case 122: + case 123: -/* Line 1464 of yacc.c */ -#line 1464 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1482 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurface(num)){ @@ -5716,13 +5763,13 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_SURF_PLAN; (yyval.s).Num = num; - ;} + } break; - case 123: + case 124: -/* Line 1464 of yacc.c */ -#line 1482 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1500 "Gmsh.y" { int num = (int)(yyvsp[(4) - (9)].d), type = 0; if(FindSurface(num)){ @@ -5760,47 +5807,47 @@ yyreduce: List_Delete((yyvsp[(7) - (9)].l)); (yyval.s).Type = type; (yyval.s).Num = num; - ;} + } break; - case 124: + case 125: -/* Line 1464 of yacc.c */ -#line 1521 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1539 "Gmsh.y" { myGmshSurface = 0; (yyval.s).Type = 0; (yyval.s).Num = 0; - ;} + } break; - case 125: + case 126: -/* Line 1464 of yacc.c */ -#line 1527 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1545 "Gmsh.y" { myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d)); (yyval.s).Type = 0; (yyval.s).Num = 0; - ;} + } break; - case 126: + case 127: -/* Line 1464 of yacc.c */ -#line 1533 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1551 "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)); (yyval.s).Type = 0; (yyval.s).Num = num; - ;} + } break; - case 127: + case 128: -/* Line 1464 of yacc.c */ -#line 1540 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1558 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -5824,13 +5871,13 @@ yyreduce: } (yyval.s).Type = 0; (yyval.s).Num = num; - ;} + } break; - case 128: + case 129: -/* Line 1464 of yacc.c */ -#line 1565 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1583 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -5854,13 +5901,13 @@ yyreduce: } (yyval.s).Type = 0; (yyval.s).Num = num; - ;} + } break; - case 129: + case 130: -/* Line 1464 of yacc.c */ -#line 1590 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1608 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurfaceLoop(num)){ @@ -5876,13 +5923,13 @@ yyreduce: Free((yyvsp[(2) - (8)].c)); (yyval.s).Type = MSH_SURF_LOOP; (yyval.s).Num = num; - ;} + } break; - case 130: + case 131: -/* Line 1464 of yacc.c */ -#line 1607 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1625 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurface(num)){ @@ -5898,13 +5945,13 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_SURF_COMPOUND; (yyval.s).Num = num; - ;} + } break; - case 131: + case 132: -/* Line 1464 of yacc.c */ -#line 1625 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1643 "Gmsh.y" { int num = (int)(yyvsp[(4) - (12)].d); if(FindSurface(num)){ @@ -5933,22 +5980,22 @@ yyreduce: Free((yyvsp[(8) - (12)].c)); (yyval.s).Type = MSH_SURF_COMPOUND; (yyval.s).Num = num; - ;} + } break; - case 132: + case 133: -/* Line 1464 of yacc.c */ -#line 1655 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1673 "Gmsh.y" { curPhysDim = 2; - ;} + } break; - case 133: + case 134: -/* Line 1464 of yacc.c */ -#line 1659 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1677 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_SURFACE)){ @@ -5963,13 +6010,13 @@ yyreduce: List_Delete((yyvsp[(8) - (9)].l)); (yyval.s).Type = MSH_PHYSICAL_SURFACE; (yyval.s).Num = num; - ;} + } break; - case 134: + case 135: -/* Line 1464 of yacc.c */ -#line 1679 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1697 "Gmsh.y" { yymsg(0, "'Complex Volume' command is deprecated: use 'Volume' instead"); int num = (int)(yyvsp[(4) - (8)].d); @@ -5986,13 +6033,13 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_VOLUME; (yyval.s).Num = num; - ;} + } break; - case 135: + case 136: -/* Line 1464 of yacc.c */ -#line 1697 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1715 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindVolume(num)){ @@ -6008,13 +6055,13 @@ yyreduce: List_Delete((yyvsp[(6) - (7)].l)); (yyval.s).Type = MSH_VOLUME; (yyval.s).Num = num; - ;} + } break; - case 136: + case 137: -/* Line 1464 of yacc.c */ -#line 1714 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1732 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindVolume(num)){ @@ -6029,22 +6076,22 @@ yyreduce: List_Delete((yyvsp[(7) - (8)].l)); (yyval.s).Type = MSH_VOLUME_COMPOUND; (yyval.s).Num = num; - ;} + } break; - case 137: + case 138: -/* Line 1464 of yacc.c */ -#line 1730 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1748 "Gmsh.y" { curPhysDim = 3; - ;} + } break; - case 138: + case 139: -/* Line 1464 of yacc.c */ -#line 1734 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1752 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_VOLUME)){ @@ -6059,53 +6106,53 @@ yyreduce: List_Delete((yyvsp[(8) - (9)].l)); (yyval.s).Type = MSH_PHYSICAL_VOLUME; (yyval.s).Num = num; - ;} + } break; - case 139: + case 140: -/* Line 1464 of yacc.c */ -#line 1756 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1774 "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); - ;} + } break; - case 140: + case 141: -/* Line 1464 of yacc.c */ -#line 1761 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1779 "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); - ;} + } break; - case 141: + case 142: -/* Line 1464 of yacc.c */ -#line 1766 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1784 "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); - ;} + } break; - case 142: + case 143: -/* Line 1464 of yacc.c */ -#line 1771 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1789 "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); - ;} + } break; - case 143: + case 144: -/* Line 1464 of yacc.c */ -#line 1776 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1794 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); if(!strcmp((yyvsp[(1) - (4)].c), "Duplicata")){ @@ -6127,69 +6174,69 @@ yyreduce: } Free((yyvsp[(1) - (4)].c)); List_Delete((yyvsp[(3) - (4)].l)); - ;} + } break; - case 144: + case 145: -/* Line 1464 of yacc.c */ -#line 1799 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1817 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); IntersectCurvesWithSurface((yyvsp[(4) - (9)].l), (int)(yyvsp[(8) - (9)].d), (yyval.l)); List_Delete((yyvsp[(4) - (9)].l)); - ;} + } break; - case 145: + case 146: -/* Line 1464 of yacc.c */ -#line 1805 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1823 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape*)); List_T *tmp = ListOfDouble2ListOfInt((yyvsp[(7) - (9)].l)); List_Delete((yyvsp[(7) - (9)].l)); SplitCurve((int)(yyvsp[(4) - (9)].d), tmp, (yyval.l)); List_Delete(tmp); - ;} + } break; - case 146: + case 147: -/* Line 1464 of yacc.c */ -#line 1815 "Gmsh.y" - { (yyval.l) = (yyvsp[(1) - (1)].l); ;} +/* Line 1806 of yacc.c */ +#line 1833 "Gmsh.y" + { (yyval.l) = (yyvsp[(1) - (1)].l); } break; - case 147: + case 148: -/* Line 1464 of yacc.c */ -#line 1816 "Gmsh.y" - { (yyval.l) = (yyvsp[(1) - (1)].l); ;} +/* Line 1806 of yacc.c */ +#line 1834 "Gmsh.y" + { (yyval.l) = (yyvsp[(1) - (1)].l); } break; - case 148: + case 149: -/* Line 1464 of yacc.c */ -#line 1821 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1839 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); - ;} + } break; - case 149: + case 150: -/* Line 1464 of yacc.c */ -#line 1825 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1843 "Gmsh.y" { List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); - ;} + } break; - case 150: + case 151: -/* Line 1464 of yacc.c */ -#line 1829 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1847 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6211,13 +6258,13 @@ yyreduce: yymsg(1, "Unknown point %d", TheShape.Num); } } - ;} + } break; - case 151: + case 152: -/* Line 1464 of yacc.c */ -#line 1852 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1870 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6239,13 +6286,13 @@ yyreduce: yymsg(1, "Unknown curve %d", TheShape.Num); } } - ;} + } break; - case 152: + case 153: -/* Line 1464 of yacc.c */ -#line 1875 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1893 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6267,13 +6314,13 @@ yyreduce: yymsg(1, "Unknown surface %d", TheShape.Num); } } - ;} + } break; - case 153: + case 154: -/* Line 1464 of yacc.c */ -#line 1898 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1916 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6295,13 +6342,13 @@ yyreduce: yymsg(1, "Unknown volume %d", TheShape.Num); } } - ;} + } break; - case 154: + case 155: -/* Line 1464 of yacc.c */ -#line 1926 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1944 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(7) - (8)].l)) == 4){ @@ -6321,13 +6368,13 @@ yyreduce: else yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (8)].d)); #endif - ;} + } break; - case 155: + case 156: -/* Line 1464 of yacc.c */ -#line 1947 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1965 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) int t = (int)(yyvsp[(4) - (10)].d); @@ -6349,13 +6396,13 @@ yyreduce: Tree_Add(GModel::current()->getGEOInternals()->LevelSets, &l); } #endif - ;} + } break; - case 156: + case 157: -/* Line 1464 of yacc.c */ -#line 1971 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 1989 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(12) - (14)].l)) == 0){ @@ -6374,13 +6421,13 @@ yyreduce: else yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (14)].d)); #endif - ;} + } break; - case 157: + case 158: -/* Line 1464 of yacc.c */ -#line 1992 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2010 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(14) - (16)].l)) == 0){ @@ -6400,13 +6447,13 @@ yyreduce: else yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (16)].d)); #endif - ;} + } break; - case 158: + case 159: -/* Line 1464 of yacc.c */ -#line 2013 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2031 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(10) - (12)].l)) == 1){ @@ -6425,13 +6472,13 @@ yyreduce: else yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (12)].d)); #endif - ;} + } break; - case 159: + case 160: -/* Line 1464 of yacc.c */ -#line 2033 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2051 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (8)].c), "Union")){ @@ -6542,13 +6589,13 @@ yyreduce: yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (8)].d)); Free((yyvsp[(2) - (8)].c)); #endif - ;} + } break; - case 160: + case 161: -/* Line 1464 of yacc.c */ -#line 2145 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2163 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (8)].c), "MathEval")){ @@ -6566,13 +6613,13 @@ yyreduce: yymsg(0, "Wrong levelset definition"); Free((yyvsp[(2) - (8)].c)); Free((yyvsp[(7) - (8)].c)); #endif - ;} + } break; - case 161: + case 162: -/* Line 1464 of yacc.c */ -#line 2164 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2182 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (6)].c), "CutMesh")){ @@ -6609,13 +6656,13 @@ yyreduce: yymsg(0, "Wrong levelset definition"); Free((yyvsp[(2) - (6)].c)); #endif - ;} + } break; - case 162: + case 163: -/* Line 1464 of yacc.c */ -#line 2203 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2221 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (14)].c), "Cylinder") && List_Nbr((yyvsp[(12) - (14)].l)) == 1){ @@ -6717,13 +6764,13 @@ yyreduce: yymsg(0, "Wrong levelset definition (%d)", (yyvsp[(4) - (14)].d)); Free((yyvsp[(2) - (14)].c)); #endif - ;} + } break; - case 163: + case 164: -/* Line 1464 of yacc.c */ -#line 2311 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2329 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -6731,24 +6778,24 @@ yyreduce: DeleteShape(TheShape.Type, TheShape.Num); } List_Delete((yyvsp[(3) - (4)].l)); - ;} + } break; - case 164: + case 165: -/* Line 1464 of yacc.c */ -#line 2320 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2338 "Gmsh.y" { #if defined(HAVE_MESH) GModel::current()->getFields()->deleteField((int)(yyvsp[(4) - (6)].d)); #endif - ;} + } break; - case 165: + case 166: -/* Line 1464 of yacc.c */ -#line 2326 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2344 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -6762,13 +6809,13 @@ yyreduce: yymsg(0, "Unknown command 'Delete %s'", (yyvsp[(2) - (6)].c)); #endif Free((yyvsp[(2) - (6)].c)); - ;} + } break; - case 166: + case 167: -/* Line 1464 of yacc.c */ -#line 2341 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2359 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ ClearProject(); @@ -6795,13 +6842,13 @@ yyreduce: yymsg(0, "Unknown object or expression to delete '%s'", (yyvsp[(2) - (3)].c)); } Free((yyvsp[(2) - (3)].c)); - ;} + } break; - case 167: + case 168: -/* Line 1464 of yacc.c */ -#line 2369 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2387 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ @@ -6812,13 +6859,13 @@ yyreduce: yymsg(0, "Unknown command 'Delete %s %s'", (yyvsp[(2) - (4)].c), (yyvsp[(3) - (4)].c)); #endif Free((yyvsp[(2) - (4)].c)); Free((yyvsp[(3) - (4)].c)); - ;} + } break; - case 168: + case 169: -/* Line 1464 of yacc.c */ -#line 2386 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2404 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ Shape TheShape; @@ -6826,35 +6873,35 @@ yyreduce: ColorShape(TheShape.Type, TheShape.Num, (yyvsp[(2) - (5)].u)); } List_Delete((yyvsp[(4) - (5)].l)); - ;} + } break; - case 169: + case 170: -/* Line 1464 of yacc.c */ -#line 2400 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2418 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 1); Free((yyvsp[(2) - (3)].c)); - ;} + } break; - case 170: + case 171: -/* Line 1464 of yacc.c */ -#line 2406 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2424 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 0); Free((yyvsp[(2) - (3)].c)); - ;} + } break; - case 171: + case 172: -/* Line 1464 of yacc.c */ -#line 2412 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2430 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -6862,13 +6909,13 @@ yyreduce: VisibilityShape(TheShape.Type, TheShape.Num, 1); } List_Delete((yyvsp[(3) - (4)].l)); - ;} + } break; - case 172: + case 173: -/* Line 1464 of yacc.c */ -#line 2421 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2439 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -6876,13 +6923,13 @@ yyreduce: VisibilityShape(TheShape.Type, TheShape.Num, 0); } List_Delete((yyvsp[(3) - (4)].l)); - ;} + } break; - case 173: + case 174: -/* Line 1464 of yacc.c */ -#line 2435 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2453 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); @@ -6923,13 +6970,13 @@ yyreduce: else yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (3)].c)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(2) - (3)].c)); - ;} + } break; - case 174: + case 175: -/* Line 1464 of yacc.c */ -#line 2477 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2495 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ @@ -6945,13 +6992,13 @@ yyreduce: yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (7)].c)); #endif Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(2) - (7)].c)); Free((yyvsp[(6) - (7)].c)); - ;} + } break; - case 175: + case 176: -/* Line 1464 of yacc.c */ -#line 2494 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2512 "Gmsh.y" { #if defined(HAVE_POST) && defined(HAVE_MESH) if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ @@ -6965,13 +7012,13 @@ yyreduce: yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (7)].c)); #endif Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(2) - (7)].c)); Free((yyvsp[(3) - (7)].c)); - ;} + } break; - case 176: + case 177: -/* Line 1464 of yacc.c */ -#line 2509 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2527 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ SleepInSeconds((yyvsp[(2) - (3)].d)); @@ -6989,13 +7036,13 @@ yyreduce: else yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (3)].c)); Free((yyvsp[(1) - (3)].c)); - ;} + } break; - case 177: + case 178: -/* Line 1464 of yacc.c */ -#line 2528 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2546 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -7006,13 +7053,13 @@ yyreduce: } #endif Free((yyvsp[(3) - (7)].c)); Free((yyvsp[(6) - (7)].c)); - ;} + } break; - case 178: + case 179: -/* Line 1464 of yacc.c */ -#line 2540 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2558 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) @@ -7035,94 +7082,94 @@ yyreduce: yymsg(0, "Unknown 'Combine' command"); #endif Free((yyvsp[(2) - (3)].c)); - ;} + } break; - case 179: + case 180: -/* Line 1464 of yacc.c */ -#line 2564 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2582 "Gmsh.y" { exit(0); - ;} + } break; - case 180: + case 181: -/* Line 1464 of yacc.c */ -#line 2568 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2586 "Gmsh.y" { // FIXME: this is a hack to force a transfer from the old DB to // the new DB. This will become unnecessary if/when we fill the // GModel directly during parsing. GModel::current()->importGEOInternals(); - ;} + } break; - case 181: + case 182: -/* Line 1464 of yacc.c */ -#line 2575 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2593 "Gmsh.y" { CTX::instance()->forcedBBox = 0; GModel::current()->importGEOInternals(); SetBoundingBox(); - ;} + } break; - case 182: + case 183: -/* Line 1464 of yacc.c */ -#line 2581 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2599 "Gmsh.y" { CTX::instance()->forcedBBox = 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)); - ;} + } break; - case 183: + case 184: -/* Line 1464 of yacc.c */ -#line 2586 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2604 "Gmsh.y" { #if defined(HAVE_OPENGL) drawContext::global()->draw(); #endif - ;} + } break; - case 184: + case 185: -/* Line 1464 of yacc.c */ -#line 2592 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2610 "Gmsh.y" { GModel::current()->createTopologyFromMesh(); - ;} + } break; - case 185: + case 186: -/* Line 1464 of yacc.c */ -#line 2596 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2614 "Gmsh.y" { GModel::current()->createTopologyFromMesh(1); - ;} + } break; - case 186: + case 187: -/* Line 1464 of yacc.c */ -#line 2600 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2618 "Gmsh.y" { GModel::current()->importGEOInternals(); GModel::current()->refineMesh(CTX::instance()->mesh.secondOrderLinear); - ;} + } break; - case 187: + case 188: -/* Line 1464 of yacc.c */ -#line 2610 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2628 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); @@ -7138,13 +7185,13 @@ yyreduce: yymsg(0, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS - 1; } - ;} + } break; - case 188: + case 189: -/* Line 1464 of yacc.c */ -#line 2627 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2645 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d); @@ -7160,13 +7207,13 @@ yyreduce: yymsg(0, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS - 1; } - ;} + } break; - case 189: + case 190: -/* Line 1464 of yacc.c */ -#line 2644 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2662 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); @@ -7186,13 +7233,13 @@ yyreduce: yymsg(0, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS - 1; } - ;} + } break; - case 190: + case 191: -/* Line 1464 of yacc.c */ -#line 2665 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2683 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d); @@ -7212,13 +7259,13 @@ yyreduce: yymsg(0, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS - 1; } - ;} + } break; - case 191: + case 192: -/* Line 1464 of yacc.c */ -#line 2686 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2704 "Gmsh.y" { if(ImbricatedLoop <= 0){ yymsg(0, "Invalid For/EndFor loop"); @@ -7252,518 +7299,518 @@ yyreduce: else ImbricatedLoop--; } - ;} + } break; - case 192: + case 193: -/* Line 1464 of yacc.c */ -#line 2721 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2739 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction ((yyvsp[(2) - (2)].c), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) yymsg(0, "Redefinition of function %s", (yyvsp[(2) - (2)].c)); skip_until(NULL, "Return"); //FIXME: wee leak $2 - ;} + } break; - case 193: + case 194: -/* Line 1464 of yacc.c */ -#line 2729 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2747 "Gmsh.y" { if(!FunctionManager::Instance()->leaveFunction (&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) yymsg(0, "Error while exiting function"); - ;} + } break; - case 194: + case 195: -/* Line 1464 of yacc.c */ -#line 2735 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2753 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction ((yyvsp[(2) - (3)].c), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) yymsg(0, "Unknown function %s", (yyvsp[(2) - (3)].c)); //FIXME: wee leak $2 - ;} + } break; - case 195: + case 196: -/* Line 1464 of yacc.c */ -#line 2742 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2760 "Gmsh.y" { if(!(yyvsp[(3) - (4)].d)) skip_until("If", "EndIf"); - ;} + } break; - case 196: + case 197: -/* Line 1464 of yacc.c */ -#line 2746 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2764 "Gmsh.y" { - ;} + } break; - case 197: + case 198: -/* Line 1464 of yacc.c */ -#line 2755 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2773 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (5)].l), (yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], 0., 0., 0., 0., 0., 0., 0., NULL, (yyval.l)); List_Delete((yyvsp[(4) - (5)].l)); - ;} + } break; - case 198: + case 199: -/* Line 1464 of yacc.c */ -#line 2763 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2781 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (11)].l), 0., 0., 0., (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), NULL, (yyval.l)); List_Delete((yyvsp[(10) - (11)].l)); - ;} + } break; - case 199: + case 200: -/* Line 1464 of yacc.c */ -#line 2771 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2789 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l), (yyvsp[(3) - (13)].v)[0], (yyvsp[(3) - (13)].v)[1], (yyvsp[(3) - (13)].v)[2], (yyvsp[(5) - (13)].v)[0], (yyvsp[(5) - (13)].v)[1], (yyvsp[(5) - (13)].v)[2], (yyvsp[(7) - (13)].v)[0], (yyvsp[(7) - (13)].v)[1], (yyvsp[(7) - (13)].v)[2], (yyvsp[(9) - (13)].d), NULL, (yyval.l)); List_Delete((yyvsp[(12) - (13)].l)); - ;} + } break; - case 200: + case 201: -/* Line 1464 of yacc.c */ -#line 2779 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2797 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 201: + case 202: -/* Line 1464 of yacc.c */ -#line 2784 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2802 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l), (yyvsp[(2) - (7)].v)[0], (yyvsp[(2) - (7)].v)[1], (yyvsp[(2) - (7)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); List_Delete((yyvsp[(4) - (7)].l)); - ;} + } break; - case 202: + case 203: -/* Line 1464 of yacc.c */ -#line 2792 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2810 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 203: + case 204: -/* Line 1464 of yacc.c */ -#line 2797 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2815 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l), 0., 0., 0., (yyvsp[(3) - (13)].v)[0], (yyvsp[(3) - (13)].v)[1], (yyvsp[(3) - (13)].v)[2], (yyvsp[(5) - (13)].v)[0], (yyvsp[(5) - (13)].v)[1], (yyvsp[(5) - (13)].v)[2], (yyvsp[(7) - (13)].d), &extr, (yyval.l)); List_Delete((yyvsp[(10) - (13)].l)); - ;} + } break; - case 204: + case 205: -/* Line 1464 of yacc.c */ -#line 2805 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2823 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 205: + case 206: -/* Line 1464 of yacc.c */ -#line 2810 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2828 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l), (yyvsp[(3) - (15)].v)[0], (yyvsp[(3) - (15)].v)[1], (yyvsp[(3) - (15)].v)[2], (yyvsp[(5) - (15)].v)[0], (yyvsp[(5) - (15)].v)[1], (yyvsp[(5) - (15)].v)[2], (yyvsp[(7) - (15)].v)[0], (yyvsp[(7) - (15)].v)[1], (yyvsp[(7) - (15)].v)[2], (yyvsp[(9) - (15)].d), &extr, (yyval.l)); List_Delete((yyvsp[(12) - (15)].l)); - ;} + } break; - case 206: + case 207: -/* Line 1464 of yacc.c */ -#line 2818 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2836 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 207: + case 208: -/* Line 1464 of yacc.c */ -#line 2823 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2841 "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., &extr, (yyval.l)); List_Delete((yyvsp[(3) - (6)].l)); - ;} + } break; - case 208: + case 209: -/* Line 1464 of yacc.c */ -#line 2831 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2849 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., NULL, (yyval.l)); - ;} + } break; - case 209: + case 210: -/* Line 1464 of yacc.c */ -#line 2838 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2856 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., NULL, (yyval.l)); - ;} + } break; - case 210: + case 211: -/* Line 1464 of yacc.c */ -#line 2845 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2863 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., NULL, (yyval.l)); - ;} + } break; - case 211: + case 212: -/* Line 1464 of yacc.c */ -#line 2852 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2870 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), NULL, (yyval.l)); - ;} + } break; - case 212: + case 213: -/* Line 1464 of yacc.c */ -#line 2859 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2877 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), NULL, (yyval.l)); - ;} + } break; - case 213: + case 214: -/* Line 1464 of yacc.c */ -#line 2866 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2884 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), NULL, (yyval.l)); - ;} + } break; - case 214: + case 215: -/* Line 1464 of yacc.c */ -#line 2873 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2891 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), NULL, (yyval.l)); - ;} + } break; - case 215: + case 216: -/* Line 1464 of yacc.c */ -#line 2880 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2898 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), NULL, (yyval.l)); - ;} + } break; - case 216: + case 217: -/* Line 1464 of yacc.c */ -#line 2887 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2905 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), NULL, (yyval.l)); - ;} + } break; - case 217: + case 218: -/* Line 1464 of yacc.c */ -#line 2894 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2912 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 218: + case 219: -/* Line 1464 of yacc.c */ -#line 2899 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2917 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); - ;} + } break; - case 219: + case 220: -/* Line 1464 of yacc.c */ -#line 2906 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2924 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 220: + case 221: -/* Line 1464 of yacc.c */ -#line 2911 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2929 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); - ;} + } break; - case 221: + case 222: -/* Line 1464 of yacc.c */ -#line 2918 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2936 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 222: + case 223: -/* Line 1464 of yacc.c */ -#line 2923 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2941 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., &extr, (yyval.l)); - ;} + } break; - case 223: + case 224: -/* Line 1464 of yacc.c */ -#line 2930 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2948 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 224: + case 225: -/* Line 1464 of yacc.c */ -#line 2935 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2953 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), &extr, (yyval.l)); - ;} + } break; - case 225: + case 226: -/* Line 1464 of yacc.c */ -#line 2942 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2960 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 226: + case 227: -/* Line 1464 of yacc.c */ -#line 2947 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2965 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), &extr, (yyval.l)); - ;} + } break; - case 227: + case 228: -/* Line 1464 of yacc.c */ -#line 2954 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2972 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 228: + case 229: -/* Line 1464 of yacc.c */ -#line 2959 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2977 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), &extr, (yyval.l)); - ;} + } break; - case 229: + case 230: -/* Line 1464 of yacc.c */ -#line 2966 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2984 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 230: + case 231: -/* Line 1464 of yacc.c */ -#line 2971 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2989 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), &extr, (yyval.l)); - ;} + } break; - case 231: + case 232: -/* Line 1464 of yacc.c */ -#line 2978 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 2996 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 232: + case 233: -/* Line 1464 of yacc.c */ -#line 2983 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3001 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), &extr, (yyval.l)); - ;} + } break; - case 233: + case 234: -/* Line 1464 of yacc.c */ -#line 2990 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3008 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; - ;} + } break; - case 234: + case 235: -/* Line 1464 of yacc.c */ -#line 2995 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3013 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), &extr, (yyval.l)); - ;} + } break; - case 235: + case 236: -/* Line 1464 of yacc.c */ -#line 3006 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3024 "Gmsh.y" { - ;} + } break; - case 236: + case 237: -/* Line 1464 of yacc.c */ -#line 3009 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3027 "Gmsh.y" { - ;} + } break; - case 237: + case 238: -/* Line 1464 of yacc.c */ -#line 3015 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3033 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = 1; @@ -7771,13 +7818,13 @@ yyreduce: extr.mesh.hLayer.clear(); extr.mesh.NbElmLayer.push_back((int)fabs((yyvsp[(3) - (5)].d))); extr.mesh.hLayer.push_back(1.); - ;} + } break; - case 238: + case 239: -/* Line 1464 of yacc.c */ -#line 3024 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3042 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); @@ -7796,13 +7843,13 @@ yyreduce: yymsg(0, "Wrong layer definition {%d, %d}", List_Nbr((yyvsp[(3) - (7)].l)), List_Nbr((yyvsp[(5) - (7)].l))); List_Delete((yyvsp[(3) - (7)].l)); List_Delete((yyvsp[(5) - (7)].l)); - ;} + } break; - case 239: + case 240: -/* Line 1464 of yacc.c */ -#line 3044 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3062 "Gmsh.y" { yymsg(0, "Explicit region numbers in layers are deprecated"); extr.mesh.ExtrudeMesh = true; @@ -7824,58 +7871,58 @@ yyreduce: List_Delete((yyvsp[(3) - (9)].l)); List_Delete((yyvsp[(5) - (9)].l)); List_Delete((yyvsp[(7) - (9)].l)); - ;} + } break; - case 240: + case 241: -/* Line 1464 of yacc.c */ -#line 3067 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3085 "Gmsh.y" { extr.mesh.Recombine = true; - ;} + } break; - case 241: + case 242: -/* Line 1464 of yacc.c */ -#line 3071 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3089 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_DBL_1; - ;} + } break; - case 242: + case 243: -/* Line 1464 of yacc.c */ -#line 3075 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3093 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_DBL_1_RECOMB; - ;} + } break; - case 243: + case 244: -/* Line 1464 of yacc.c */ -#line 3079 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3097 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_SNGL_1; - ;} + } break; - case 244: + case 245: -/* Line 1464 of yacc.c */ -#line 3083 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3101 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_SNGL_1_RECOMB; - ;} + } break; - case 245: + case 246: -/* Line 1464 of yacc.c */ -#line 3087 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3105 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindSurface(num)){ @@ -7893,35 +7940,35 @@ yyreduce: } } List_Delete((yyvsp[(6) - (9)].l)); - ;} + } break; - case 246: + case 247: -/* Line 1464 of yacc.c */ -#line 3106 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3124 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (6)].c), "Index")) extr.mesh.BoundaryLayerIndex = (yyvsp[(4) - (6)].d); else if(!strcmp((yyvsp[(2) - (6)].c), "View")) extr.mesh.ViewIndex = (yyvsp[(4) - (6)].d); Free((yyvsp[(2) - (6)].c)); - ;} + } break; - case 247: + case 248: -/* Line 1464 of yacc.c */ -#line 3118 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3136 "Gmsh.y" { (yyval.v)[0] = (yyval.v)[1] = 1.; - ;} + } break; - case 248: + case 249: -/* Line 1464 of yacc.c */ -#line 3122 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3140 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) (yyval.v)[0] = 1.; @@ -7933,22 +7980,22 @@ yyreduce: } (yyval.v)[1] = (yyvsp[(3) - (3)].d); Free((yyvsp[(2) - (3)].c)); - ;} + } break; - case 249: + case 250: -/* Line 1464 of yacc.c */ -#line 3137 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3155 "Gmsh.y" { (yyval.i) = -1; // left - ;} + } break; - case 250: + case 251: -/* Line 1464 of yacc.c */ -#line 3141 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3159 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "Right")) (yyval.i) = 1; @@ -7957,49 +8004,49 @@ yyreduce: else // alternated (yyval.i) = 0; Free((yyvsp[(1) - (1)].c)); - ;} + } break; - case 251: + case 252: -/* Line 1464 of yacc.c */ -#line 3153 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3171 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(double)); - ;} + } break; - case 252: + case 253: -/* Line 1464 of yacc.c */ -#line 3157 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3175 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); - ;} + } break; - case 253: + case 254: -/* Line 1464 of yacc.c */ -#line 3162 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3180 "Gmsh.y" { (yyval.i) = 45; - ;} + } break; - case 254: + case 255: -/* Line 1464 of yacc.c */ -#line 3166 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3184 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(2) - (2)].d); - ;} + } break; - case 255: + case 256: -/* Line 1464 of yacc.c */ -#line 3173 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3191 "Gmsh.y" { int type = (int)(yyvsp[(6) - (7)].v)[0]; double coef = fabs((yyvsp[(6) - (7)].v)[1]); @@ -8054,13 +8101,13 @@ yyreduce: } List_Delete((yyvsp[(3) - (7)].l)); } - ;} + } break; - case 256: + case 257: -/* Line 1464 of yacc.c */ -#line 3229 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3247 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (6)].l)); if(k != 0 && k != 3 && k != 4){ @@ -8129,23 +8176,23 @@ yyreduce: } } List_Delete((yyvsp[(4) - (6)].l)); - ;} + } break; - case 257: + case 258: -/* Line 1464 of yacc.c */ -#line 3299 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3317 "Gmsh.y" { yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); List_Delete((yyvsp[(7) - (8)].l)); - ;} + } break; - case 258: + case 259: -/* Line 1464 of yacc.c */ -#line 3304 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3322 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (5)].l)); if(k != 0 && k != 6 && k != 8){ @@ -8211,13 +8258,13 @@ yyreduce: } } List_Delete((yyvsp[(4) - (5)].l)); - ;} + } break; - case 259: + case 260: -/* Line 1464 of yacc.c */ -#line 3371 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3389 "Gmsh.y" { if(!(yyvsp[(2) - (3)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes); @@ -8252,13 +8299,13 @@ yyreduce: } List_Delete((yyvsp[(2) - (3)].l)); } - ;} + } break; - case 260: + case 261: -/* Line 1464 of yacc.c */ -#line 3407 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3425 "Gmsh.y" { if(!(yyvsp[(3) - (5)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces); @@ -8300,13 +8347,13 @@ yyreduce: } List_Delete((yyvsp[(3) - (5)].l)); } - ;} + } break; - case 261: + case 262: -/* Line 1464 of yacc.c */ -#line 3450 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3468 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -8325,13 +8372,13 @@ yyreduce: } } List_Delete((yyvsp[(3) - (6)].l)); - ;} + } break; - case 262: + case 263: -/* Line 1464 of yacc.c */ -#line 3475 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3493 "Gmsh.y" { if(List_Nbr((yyvsp[(5) - (6)].l)) != List_Nbr((yyvsp[(3) - (6)].l))){ yymsg(0, "Number of master (%d) different from number of slave (%d) lines", @@ -8357,13 +8404,13 @@ yyreduce: } List_Delete((yyvsp[(3) - (6)].l)); List_Delete((yyvsp[(5) - (6)].l)); - ;} + } break; - case 263: + case 264: -/* Line 1464 of yacc.c */ -#line 3503 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3521 "Gmsh.y" { if (List_Nbr((yyvsp[(5) - (12)].l)) != List_Nbr((yyvsp[(10) - (12)].l))){ yymsg(0, "Number of master surface edges (%d) different from number of " @@ -8398,13 +8445,13 @@ yyreduce: } List_Delete((yyvsp[(5) - (12)].l)); List_Delete((yyvsp[(10) - (12)].l)); - ;} + } break; - case 264: + case 265: -/* Line 1464 of yacc.c */ -#line 3546 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3564 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -8426,13 +8473,13 @@ yyreduce: else yymsg(0, "Unknown surface %d", (int)(yyvsp[(8) - (10)].d)); } - ;} + } break; - case 265: + case 266: -/* Line 1464 of yacc.c */ -#line 3569 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3587 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -8454,38 +8501,38 @@ yyreduce: else yymsg(0, "Unknown surface %d", (int)(yyvsp[(8) - (10)].d)); } - ;} + } break; - case 266: + case 267: -/* Line 1464 of yacc.c */ -#line 3592 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3610 "Gmsh.y" { - ;} + } break; - case 267: + case 268: -/* Line 1464 of yacc.c */ -#line 3595 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3613 "Gmsh.y" { - ;} + } break; - case 268: + case 269: -/* Line 1464 of yacc.c */ -#line 3604 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3622 "Gmsh.y" { ReplaceAllDuplicates(); - ;} + } break; - case 269: + case 270: -/* Line 1464 of yacc.c */ -#line 3608 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3626 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) ReplaceAllDuplicates(); @@ -8494,13 +8541,13 @@ yyreduce: else yymsg(0, "Unknown coherence command"); Free((yyvsp[(2) - (3)].c)); - ;} + } break; - case 270: + case 271: -/* Line 1464 of yacc.c */ -#line 3618 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3636 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (6)].l)) >= 2){ double d; @@ -8529,37 +8576,37 @@ yyreduce: yymsg(0, "Need at least two points to merge"); ReplaceAllDuplicates(); List_Delete((yyvsp[(4) - (6)].l)); - ;} + } break; - case 271: + case 272: -/* Line 1464 of yacc.c */ -#line 3652 "Gmsh.y" - { (yyval.c) = (char*)"Generators"; ;} +/* Line 1806 of yacc.c */ +#line 3670 "Gmsh.y" + { (yyval.c) = (char*)"Generators"; } break; - case 272: + case 273: -/* Line 1464 of yacc.c */ -#line 3653 "Gmsh.y" - { (yyval.c) = (char*)"DualGenerators"; ;} +/* Line 1806 of yacc.c */ +#line 3671 "Gmsh.y" + { (yyval.c) = (char*)"DualGenerators"; } break; - case 273: + case 274: -/* Line 1464 of yacc.c */ -#line 3658 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3676 "Gmsh.y" { std::vector<int> domain, subdomain; GModel::current()->addHomologyRequest((yyvsp[(1) - (2)].c), domain, subdomain); - ;} + } break; - case 274: + case 275: -/* Line 1464 of yacc.c */ -#line 3663 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3681 "Gmsh.y" { std::vector<int> domain, subdomain; for(int i = 0; i < List_Nbr((yyvsp[(3) - (5)].l)); i++){ @@ -8569,13 +8616,13 @@ yyreduce: } GModel::current()->addHomologyRequest((yyvsp[(1) - (5)].c), domain, subdomain); List_Delete((yyvsp[(3) - (5)].l)); - ;} + } break; - case 275: + case 276: -/* Line 1464 of yacc.c */ -#line 3674 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3692 "Gmsh.y" { std::vector<int> domain, subdomain; for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ @@ -8591,501 +8638,501 @@ yyreduce: GModel::current()->addHomologyRequest((yyvsp[(1) - (7)].c), domain, subdomain); List_Delete((yyvsp[(3) - (7)].l)); List_Delete((yyvsp[(5) - (7)].l)); - ;} - break; - - case 276: - -/* Line 1464 of yacc.c */ -#line 3695 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (1)].d); ;} + } break; case 277: -/* Line 1464 of yacc.c */ -#line 3696 "Gmsh.y" - { (yyval.d) = (yyvsp[(2) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3713 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (1)].d); } break; case 278: -/* Line 1464 of yacc.c */ -#line 3697 "Gmsh.y" - { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} +/* Line 1806 of yacc.c */ +#line 3714 "Gmsh.y" + { (yyval.d) = (yyvsp[(2) - (3)].d); } break; case 279: -/* Line 1464 of yacc.c */ -#line 3698 "Gmsh.y" - { (yyval.d) = (yyvsp[(2) - (2)].d); ;} +/* Line 1806 of yacc.c */ +#line 3715 "Gmsh.y" + { (yyval.d) = -(yyvsp[(2) - (2)].d); } break; case 280: -/* Line 1464 of yacc.c */ -#line 3699 "Gmsh.y" - { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} +/* Line 1806 of yacc.c */ +#line 3716 "Gmsh.y" + { (yyval.d) = (yyvsp[(2) - (2)].d); } break; case 281: -/* Line 1464 of yacc.c */ -#line 3700 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3717 "Gmsh.y" + { (yyval.d) = !(yyvsp[(2) - (2)].d); } break; case 282: -/* Line 1464 of yacc.c */ -#line 3701 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3718 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); } break; case 283: -/* Line 1464 of yacc.c */ -#line 3702 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3719 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); } break; case 284: -/* Line 1464 of yacc.c */ -#line 3704 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3720 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); } + break; + + case 285: + +/* Line 1806 of yacc.c */ +#line 3722 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); else (yyval.d) = (yyvsp[(1) - (3)].d) / (yyvsp[(3) - (3)].d); - ;} - break; - - case 285: - -/* Line 1464 of yacc.c */ -#line 3710 "Gmsh.y" - { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} + } break; case 286: -/* Line 1464 of yacc.c */ -#line 3711 "Gmsh.y" - { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3728 "Gmsh.y" + { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); } break; case 287: -/* Line 1464 of yacc.c */ -#line 3712 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3729 "Gmsh.y" + { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); } break; case 288: -/* Line 1464 of yacc.c */ -#line 3713 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3730 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); } break; case 289: -/* Line 1464 of yacc.c */ -#line 3714 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3731 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); } break; case 290: -/* Line 1464 of yacc.c */ -#line 3715 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3732 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); } break; case 291: -/* Line 1464 of yacc.c */ -#line 3716 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3733 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); } break; case 292: -/* Line 1464 of yacc.c */ -#line 3717 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3734 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); } break; case 293: -/* Line 1464 of yacc.c */ -#line 3718 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3735 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); } break; case 294: -/* Line 1464 of yacc.c */ -#line 3719 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} +/* Line 1806 of yacc.c */ +#line 3736 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); } break; case 295: -/* Line 1464 of yacc.c */ -#line 3720 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} +/* Line 1806 of yacc.c */ +#line 3737 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); } break; case 296: -/* Line 1464 of yacc.c */ -#line 3721 "Gmsh.y" - { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3738 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); } break; case 297: -/* Line 1464 of yacc.c */ -#line 3722 "Gmsh.y" - { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3739 "Gmsh.y" + { (yyval.d) = exp((yyvsp[(3) - (4)].d)); } break; case 298: -/* Line 1464 of yacc.c */ -#line 3723 "Gmsh.y" - { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3740 "Gmsh.y" + { (yyval.d) = log((yyvsp[(3) - (4)].d)); } break; case 299: -/* Line 1464 of yacc.c */ -#line 3724 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3741 "Gmsh.y" + { (yyval.d) = log10((yyvsp[(3) - (4)].d)); } break; case 300: -/* Line 1464 of yacc.c */ -#line 3725 "Gmsh.y" - { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3742 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); } break; case 301: -/* Line 1464 of yacc.c */ -#line 3726 "Gmsh.y" - { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3743 "Gmsh.y" + { (yyval.d) = sin((yyvsp[(3) - (4)].d)); } break; case 302: -/* Line 1464 of yacc.c */ -#line 3727 "Gmsh.y" - { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3744 "Gmsh.y" + { (yyval.d) = asin((yyvsp[(3) - (4)].d)); } break; case 303: -/* Line 1464 of yacc.c */ -#line 3728 "Gmsh.y" - { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3745 "Gmsh.y" + { (yyval.d) = cos((yyvsp[(3) - (4)].d)); } break; case 304: -/* Line 1464 of yacc.c */ -#line 3729 "Gmsh.y" - { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3746 "Gmsh.y" + { (yyval.d) = acos((yyvsp[(3) - (4)].d)); } break; case 305: -/* Line 1464 of yacc.c */ -#line 3730 "Gmsh.y" - { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3747 "Gmsh.y" + { (yyval.d) = tan((yyvsp[(3) - (4)].d)); } break; case 306: -/* Line 1464 of yacc.c */ -#line 3731 "Gmsh.y" - { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} +/* Line 1806 of yacc.c */ +#line 3748 "Gmsh.y" + { (yyval.d) = atan((yyvsp[(3) - (4)].d)); } break; case 307: -/* Line 1464 of yacc.c */ -#line 3732 "Gmsh.y" - { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3749 "Gmsh.y" + { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));} break; case 308: -/* Line 1464 of yacc.c */ -#line 3733 "Gmsh.y" - { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3750 "Gmsh.y" + { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); } break; case 309: -/* Line 1464 of yacc.c */ -#line 3734 "Gmsh.y" - { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3751 "Gmsh.y" + { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); } break; case 310: -/* Line 1464 of yacc.c */ -#line 3735 "Gmsh.y" - { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3752 "Gmsh.y" + { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); } break; case 311: -/* Line 1464 of yacc.c */ -#line 3736 "Gmsh.y" - { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3753 "Gmsh.y" + { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); } break; case 312: -/* Line 1464 of yacc.c */ -#line 3737 "Gmsh.y" - { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3754 "Gmsh.y" + { (yyval.d) = floor((yyvsp[(3) - (4)].d)); } break; case 313: -/* Line 1464 of yacc.c */ -#line 3738 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3755 "Gmsh.y" + { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); } break; case 314: -/* Line 1464 of yacc.c */ -#line 3739 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3756 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); } break; case 315: -/* Line 1464 of yacc.c */ -#line 3740 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3757 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); } break; case 316: -/* Line 1464 of yacc.c */ -#line 3741 "Gmsh.y" - { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} +/* Line 1806 of yacc.c */ +#line 3758 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); } break; case 317: -/* Line 1464 of yacc.c */ -#line 3743 "Gmsh.y" - { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3759 "Gmsh.y" + { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; } break; case 318: -/* Line 1464 of yacc.c */ -#line 3744 "Gmsh.y" - { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3761 "Gmsh.y" + { (yyval.d) = exp((yyvsp[(3) - (4)].d)); } break; case 319: -/* Line 1464 of yacc.c */ -#line 3745 "Gmsh.y" - { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3762 "Gmsh.y" + { (yyval.d) = log((yyvsp[(3) - (4)].d)); } break; case 320: -/* Line 1464 of yacc.c */ -#line 3746 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3763 "Gmsh.y" + { (yyval.d) = log10((yyvsp[(3) - (4)].d)); } break; case 321: -/* Line 1464 of yacc.c */ -#line 3747 "Gmsh.y" - { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3764 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); } break; case 322: -/* Line 1464 of yacc.c */ -#line 3748 "Gmsh.y" - { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3765 "Gmsh.y" + { (yyval.d) = sin((yyvsp[(3) - (4)].d)); } break; case 323: -/* Line 1464 of yacc.c */ -#line 3749 "Gmsh.y" - { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3766 "Gmsh.y" + { (yyval.d) = asin((yyvsp[(3) - (4)].d)); } break; case 324: -/* Line 1464 of yacc.c */ -#line 3750 "Gmsh.y" - { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3767 "Gmsh.y" + { (yyval.d) = cos((yyvsp[(3) - (4)].d)); } break; case 325: -/* Line 1464 of yacc.c */ -#line 3751 "Gmsh.y" - { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3768 "Gmsh.y" + { (yyval.d) = acos((yyvsp[(3) - (4)].d)); } break; case 326: -/* Line 1464 of yacc.c */ -#line 3752 "Gmsh.y" - { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3769 "Gmsh.y" + { (yyval.d) = tan((yyvsp[(3) - (4)].d)); } break; case 327: -/* Line 1464 of yacc.c */ -#line 3753 "Gmsh.y" - { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} +/* Line 1806 of yacc.c */ +#line 3770 "Gmsh.y" + { (yyval.d) = atan((yyvsp[(3) - (4)].d)); } break; case 328: -/* Line 1464 of yacc.c */ -#line 3754 "Gmsh.y" - { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3771 "Gmsh.y" + { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));} break; case 329: -/* Line 1464 of yacc.c */ -#line 3755 "Gmsh.y" - { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3772 "Gmsh.y" + { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); } break; case 330: -/* Line 1464 of yacc.c */ -#line 3756 "Gmsh.y" - { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3773 "Gmsh.y" + { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); } break; case 331: -/* Line 1464 of yacc.c */ -#line 3757 "Gmsh.y" - { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3774 "Gmsh.y" + { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); } break; case 332: -/* Line 1464 of yacc.c */ -#line 3758 "Gmsh.y" - { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3775 "Gmsh.y" + { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); } break; case 333: -/* Line 1464 of yacc.c */ -#line 3759 "Gmsh.y" - { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3776 "Gmsh.y" + { (yyval.d) = floor((yyvsp[(3) - (4)].d)); } break; case 334: -/* Line 1464 of yacc.c */ -#line 3760 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3777 "Gmsh.y" + { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); } break; case 335: -/* Line 1464 of yacc.c */ -#line 3761 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3778 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); } break; case 336: -/* Line 1464 of yacc.c */ -#line 3762 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} +/* Line 1806 of yacc.c */ +#line 3779 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); } break; case 337: -/* Line 1464 of yacc.c */ -#line 3763 "Gmsh.y" - { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} +/* Line 1806 of yacc.c */ +#line 3780 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); } break; case 338: -/* Line 1464 of yacc.c */ -#line 3772 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (1)].d); ;} +/* Line 1806 of yacc.c */ +#line 3781 "Gmsh.y" + { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; } break; case 339: -/* Line 1464 of yacc.c */ -#line 3773 "Gmsh.y" - { (yyval.d) = 3.141592653589793; ;} +/* Line 1806 of yacc.c */ +#line 3790 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (1)].d); } break; case 340: -/* Line 1464 of yacc.c */ -#line 3774 "Gmsh.y" - { (yyval.d) = Msg::GetCommRank(); ;} +/* Line 1806 of yacc.c */ +#line 3791 "Gmsh.y" + { (yyval.d) = 3.141592653589793; } break; case 341: -/* Line 1464 of yacc.c */ -#line 3775 "Gmsh.y" - { (yyval.d) = Msg::GetCommSize(); ;} +/* Line 1806 of yacc.c */ +#line 3792 "Gmsh.y" + { (yyval.d) = Msg::GetCommRank(); } break; case 342: -/* Line 1464 of yacc.c */ -#line 3776 "Gmsh.y" - { (yyval.d) = GetGmshMajorVersion(); ;} +/* Line 1806 of yacc.c */ +#line 3793 "Gmsh.y" + { (yyval.d) = Msg::GetCommSize(); } break; case 343: -/* Line 1464 of yacc.c */ -#line 3777 "Gmsh.y" - { (yyval.d) = GetGmshMinorVersion(); ;} +/* Line 1806 of yacc.c */ +#line 3794 "Gmsh.y" + { (yyval.d) = GetGmshMajorVersion(); } break; case 344: -/* Line 1464 of yacc.c */ -#line 3778 "Gmsh.y" - { (yyval.d) = GetGmshPatchVersion(); ;} +/* Line 1806 of yacc.c */ +#line 3795 "Gmsh.y" + { (yyval.d) = GetGmshMinorVersion(); } break; case 345: -/* Line 1464 of yacc.c */ -#line 3783 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3796 "Gmsh.y" + { (yyval.d) = GetGmshPatchVersion(); } + break; + + case 346: + +/* Line 1806 of yacc.c */ +#line 3801 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (1)].c)); @@ -9101,13 +9148,13 @@ yyreduce: (yyval.d) = s.value[0]; } Free((yyvsp[(1) - (1)].c)); - ;} + } break; - case 346: + case 347: -/* Line 1464 of yacc.c */ -#line 3803 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3821 "Gmsh.y" { char tmpstring[1024]; sprintf(tmpstring, "%s_%d", (yyvsp[(1) - (5)].c), (int)(yyvsp[(4) - (5)].d)) ; @@ -9125,13 +9172,13 @@ yyreduce: (yyval.d) = s.value[0]; } Free((yyvsp[(1) - (5)].c)); - ;} + } break; - case 347: + case 348: -/* Line 1464 of yacc.c */ -#line 3822 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3840 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -9148,13 +9195,13 @@ yyreduce: (yyval.d) = s.value[index]; } Free((yyvsp[(1) - (4)].c)); - ;} + } break; - case 348: + case 349: -/* Line 1464 of yacc.c */ -#line 3840 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3858 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(2) - (4)].c)); @@ -9165,13 +9212,13 @@ yyreduce: (yyval.d) = s.value.size(); } Free((yyvsp[(2) - (4)].c)); - ;} + } break; - case 349: + case 350: -/* Line 1464 of yacc.c */ -#line 3852 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3870 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); @@ -9187,13 +9234,13 @@ yyreduce: (yyval.d) = (s.value[0] += (yyvsp[(2) - (2)].i)); } Free((yyvsp[(1) - (2)].c)); - ;} + } break; - case 350: + case 351: -/* Line 1464 of yacc.c */ -#line 3869 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3887 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -9210,33 +9257,33 @@ yyreduce: (yyval.d) = (s.value[index] += (yyvsp[(5) - (5)].i)); } Free((yyvsp[(1) - (5)].c)); - ;} + } break; - case 351: + case 352: -/* Line 1464 of yacc.c */ -#line 3890 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3908 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), (yyval.d)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); - ;} + } break; - case 352: + case 353: -/* Line 1464 of yacc.c */ -#line 3895 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3913 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); - ;} + } break; - case 353: + case 354: -/* Line 1464 of yacc.c */ -#line 3900 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3918 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ @@ -9245,13 +9292,13 @@ yyreduce: (yyval.d) = d; } Free((yyvsp[(1) - (4)].c)); Free((yyvsp[(3) - (4)].c)); - ;} + } break; - case 354: + case 355: -/* Line 1464 of yacc.c */ -#line 3910 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3928 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ @@ -9260,196 +9307,196 @@ yyreduce: (yyval.d) = d; } Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(6) - (7)].c)); - ;} + } break; - case 355: + case 356: -/* Line 1464 of yacc.c */ -#line 3920 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3938 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); - ;} + } break; - case 356: + case 357: -/* Line 1464 of yacc.c */ -#line 3928 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3946 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); - ;} + } break; - case 357: + case 358: -/* Line 1464 of yacc.c */ -#line 3932 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3950 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; - ;} + } break; - case 358: + case 359: -/* Line 1464 of yacc.c */ -#line 3936 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3954 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; - ;} + } break; - case 359: + case 360: -/* Line 1464 of yacc.c */ -#line 3940 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3958 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; - ;} + } break; - case 360: + case 361: -/* Line 1464 of yacc.c */ -#line 3944 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3962 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; - ;} + } break; - case 361: + case 362: -/* Line 1464 of yacc.c */ -#line 3951 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3969 "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 362: + case 363: -/* Line 1464 of yacc.c */ -#line 3955 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3973 "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 363: + case 364: -/* Line 1464 of yacc.c */ -#line 3959 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3977 "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 364: + case 365: -/* Line 1464 of yacc.c */ -#line 3963 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3981 "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 365: + case 366: -/* Line 1464 of yacc.c */ -#line 3970 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3988 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); - ;} + } break; - case 366: + case 367: -/* Line 1464 of yacc.c */ -#line 3975 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 3993 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); - ;} + } break; - case 367: + case 368: -/* Line 1464 of yacc.c */ -#line 3982 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4000 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); - ;} + } break; - case 368: + case 369: -/* Line 1464 of yacc.c */ -#line 3987 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4005 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); - ;} + } break; - case 369: + case 370: -/* Line 1464 of yacc.c */ -#line 3991 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4009 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); - ;} + } break; - case 370: + case 371: -/* Line 1464 of yacc.c */ -#line 3996 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4014 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); - ;} + } break; - case 371: + case 372: -/* Line 1464 of yacc.c */ -#line 4000 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4018 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ double *pd = (double*)List_Pointer((yyval.l), i); (*pd) = - (*pd); } - ;} + } break; - case 372: + case 373: -/* Line 1464 of yacc.c */ -#line 4008 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4026 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ double *pd = (double*)List_Pointer((yyval.l), i); (*pd) *= (yyvsp[(1) - (5)].d); } - ;} + } break; - case 373: + case 374: -/* Line 1464 of yacc.c */ -#line 4019 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4037 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); - ;} + } break; - case 374: + case 375: -/* Line 1464 of yacc.c */ -#line 4023 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4041 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all")) (yyval.l) = 0; @@ -9457,51 +9504,51 @@ yyreduce: yyerror("Unknown special string for list replacement"); (yyval.l) = List_Create(2, 1, sizeof(double)); } - ;} + } break; - case 375: + case 376: -/* Line 1464 of yacc.c */ -#line 4035 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4053 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ double *pd = (double*)List_Pointer((yyval.l), i); (*pd) = - (*pd); } - ;} + } break; - case 376: + case 377: -/* Line 1464 of yacc.c */ -#line 4043 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4061 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ double *pd = (double*)List_Pointer((yyval.l), i); (*pd) *= (yyvsp[(1) - (3)].d); } - ;} + } break; - case 377: + case 378: -/* Line 1464 of yacc.c */ -#line 4051 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4069 "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.)) List_Add((yyval.l), &d); - ;} + } break; - case 378: + case 379: -/* Line 1464 of yacc.c */ -#line 4058 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4076 "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)){ @@ -9511,13 +9558,13 @@ yyreduce: else for(double d = (yyvsp[(1) - (5)].d); ((yyvsp[(5) - (5)].d) > 0) ? (d <= (yyvsp[(3) - (5)].d)) : (d >= (yyvsp[(3) - (5)].d)); d += (yyvsp[(5) - (5)].d)) List_Add((yyval.l), &d); - ;} + } break; - case 379: + case 380: -/* Line 1464 of yacc.c */ -#line 4069 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4087 "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 @@ -9536,49 +9583,49 @@ yyreduce: List_Add((yyval.l), &v->Pos.Y); List_Add((yyval.l), &v->Pos.Z); } - ;} + } break; - case 380: + case 381: -/* Line 1464 of yacc.c */ -#line 4089 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4107 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(0); - ;} + } break; - case 381: + case 382: -/* Line 1464 of yacc.c */ -#line 4093 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4111 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(1); - ;} + } break; - case 382: + case 383: -/* Line 1464 of yacc.c */ -#line 4097 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4115 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(2); - ;} + } break; - case 383: + case 384: -/* Line 1464 of yacc.c */ -#line 4101 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4119 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(3); - ;} + } break; - case 384: + case 385: -/* Line 1464 of yacc.c */ -#line 4105 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4123 "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++){ @@ -9587,13 +9634,13 @@ yyreduce: List_Add((yyval.l), &d); } List_Delete((yyvsp[(1) - (1)].l)); - ;} + } break; - case 385: + case 386: -/* Line 1464 of yacc.c */ -#line 4115 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4133 "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++){ @@ -9602,13 +9649,13 @@ yyreduce: List_Add((yyval.l), &d); } List_Delete((yyvsp[(1) - (1)].l)); - ;} + } break; - case 386: + case 387: -/* Line 1464 of yacc.c */ -#line 4125 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4143 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -9619,13 +9666,13 @@ yyreduce: List_Add((yyval.l), &s.value[i]); } Free((yyvsp[(1) - (3)].c)); - ;} + } break; - case 387: + case 388: -/* Line 1464 of yacc.c */ -#line 4137 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4155 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(3) - (4)].c))) @@ -9636,13 +9683,13 @@ yyreduce: List_Add((yyval.l), &s.value[i]); } Free((yyvsp[(3) - (4)].c)); - ;} + } break; - case 388: + case 389: -/* Line 1464 of yacc.c */ -#line 4149 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4167 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -9659,41 +9706,41 @@ yyreduce: } Free((yyvsp[(1) - (6)].c)); List_Delete((yyvsp[(4) - (6)].l)); - ;} + } break; - case 389: + case 390: -/* Line 1464 of yacc.c */ -#line 4170 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4188 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); - ;} + } break; - case 390: + case 391: -/* Line 1464 of yacc.c */ -#line 4175 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4193 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); - ;} + } break; - case 391: + case 392: -/* Line 1464 of yacc.c */ -#line 4179 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4197 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); - ;} + } break; - case 392: + case 393: -/* Line 1464 of yacc.c */ -#line 4183 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4201 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; @@ -9701,64 +9748,64 @@ yyreduce: List_Add((yyval.l), &d); } List_Delete((yyvsp[(3) - (3)].l)); - ;} + } break; - case 393: + case 394: -/* Line 1464 of yacc.c */ -#line 4195 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4213 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); - ;} + } break; - case 394: + case 395: -/* Line 1464 of yacc.c */ -#line 4199 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4217 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); - ;} + } break; - case 395: + case 396: -/* Line 1464 of yacc.c */ -#line 4211 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4229 "Gmsh.y" { int flag; (yyval.u) = GetColorForString(ColorString, -1, (yyvsp[(1) - (1)].c), &flag); if(flag) yymsg(0, "Unknown color '%s'", (yyvsp[(1) - (1)].c)); Free((yyvsp[(1) - (1)].c)); - ;} + } break; - case 396: + case 397: -/* Line 1464 of yacc.c */ -#line 4218 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4236 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); (yyval.u) = val; Free((yyvsp[(1) - (5)].c)); Free((yyvsp[(5) - (5)].c)); - ;} + } break; - case 397: + case 398: -/* Line 1464 of yacc.c */ -#line 4228 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4246 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); - ;} + } break; - case 398: + case 399: -/* Line 1464 of yacc.c */ -#line 4232 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4250 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (6)].d)); @@ -9769,41 +9816,41 @@ yyreduce: List_Add((yyval.l), &ct->table[i]); } Free((yyvsp[(1) - (6)].c)); - ;} + } break; - case 399: + case 400: -/* Line 1464 of yacc.c */ -#line 4247 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4265 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); - ;} + } break; - case 400: + case 401: -/* Line 1464 of yacc.c */ -#line 4252 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4270 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); - ;} + } break; - case 401: + case 402: -/* Line 1464 of yacc.c */ -#line 4259 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4277 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); - ;} + } break; - case 402: + case 403: -/* Line 1464 of yacc.c */ -#line 4263 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4281 "Gmsh.y" { if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown string variable '%s'", (yyvsp[(1) - (1)].c)); @@ -9815,100 +9862,100 @@ yyreduce: strcpy((yyval.c), val.c_str()); Free((yyvsp[(1) - (1)].c)); } - ;} + } break; - case 403: + case 404: -/* Line 1464 of yacc.c */ -#line 4276 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4294 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), out); (yyval.c) = (char*)Malloc((out.size() + 1) * sizeof(char)); strcpy((yyval.c), out.c_str()); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); - ;} + } break; - case 404: + case 405: -/* Line 1464 of yacc.c */ -#line 4284 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4302 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), out); (yyval.c) = (char*)Malloc((out.size() + 1) * sizeof(char)); strcpy((yyval.c), out.c_str()); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); - ;} + } break; - case 405: + case 406: -/* Line 1464 of yacc.c */ -#line 4295 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4313 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); - ;} + } break; - case 406: + case 407: -/* Line 1464 of yacc.c */ -#line 4299 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4317 "Gmsh.y" { (yyval.c) = (char *)Malloc(32 * sizeof(char)); time_t now; time(&now); strcpy((yyval.c), ctime(&now)); (yyval.c)[strlen((yyval.c)) - 1] = '\0'; - ;} + } break; - case 407: + case 408: -/* Line 1464 of yacc.c */ -#line 4307 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4325 "Gmsh.y" { const char *env = GetEnvironmentVar((yyvsp[(3) - (4)].c)); if(!env) env = ""; (yyval.c) = (char *)Malloc((sizeof(env) + 1) * sizeof(char)); strcpy((yyval.c), env); Free((yyvsp[(3) - (4)].c)); - ;} + } break; - case 408: + case 409: -/* Line 1464 of yacc.c */ -#line 4315 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4333 "Gmsh.y" { std::string s = Msg::GetString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); strcpy((yyval.c), s.c_str()); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); - ;} + } break; - case 409: + case 410: -/* Line 1464 of yacc.c */ -#line 4323 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4341 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c)) + strlen((yyvsp[(5) - (6)].c)) + 1) * sizeof(char)); strcpy((yyval.c), (yyvsp[(3) - (6)].c)); strcat((yyval.c), (yyvsp[(5) - (6)].c)); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); - ;} + } break; - case 410: + case 411: -/* Line 1464 of yacc.c */ -#line 4331 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4349 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -9921,13 +9968,13 @@ yyreduce: } if(i <= 0) strcpy((yyval.c), (yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c)); - ;} + } break; - case 411: + case 412: -/* Line 1464 of yacc.c */ -#line 4345 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4363 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -9940,22 +9987,22 @@ yyreduce: else strcpy((yyval.c), &(yyvsp[(3) - (4)].c)[i+1]); Free((yyvsp[(3) - (4)].c)); - ;} + } break; - case 412: + case 413: -/* Line 1464 of yacc.c */ -#line 4359 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4377 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); - ;} + } break; - case 413: + case 414: -/* Line 1464 of yacc.c */ -#line 4363 "Gmsh.y" +/* Line 1806 of yacc.c */ +#line 4381 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -9973,15 +10020,26 @@ yyreduce: Free((yyvsp[(3) - (6)].c)); } List_Delete((yyvsp[(5) - (6)].l)); - ;} + } break; -/* Line 1464 of yacc.c */ -#line 9983 "Gmsh.tab.cpp" +/* Line 1806 of yacc.c */ +#line 10030 "Gmsh.tab.cpp" default: break; } + /* User semantic actions sometimes alter yychar, and that requires + that yytoken be updated with the new translation. We take the + approach of translating immediately before every use of yytoken. + One alternative is translating here after every semantic action, + but that translation would be missed if the semantic action invokes + YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or + if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an + incorrect destructor might then be invoked immediately. In the + case of YYERROR or YYBACKUP, subsequent parser actions might lead + to an incorrect destructor call or verbose syntax error message + before the lookahead is translated. */ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); YYPOPSTACK (yylen); @@ -10009,6 +10067,10 @@ yyreduce: | yyerrlab -- here on detecting error | `------------------------------------*/ yyerrlab: + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); + /* If not already recovering from an error, report this error. */ if (!yyerrstatus) { @@ -10016,37 +10078,36 @@ yyerrlab: #if ! YYERROR_VERBOSE yyerror (YY_("syntax error")); #else +# define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ + yyssp, yytoken) { - YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); - if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) - { - YYSIZE_T yyalloc = 2 * yysize; - if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) - yyalloc = YYSTACK_ALLOC_MAXIMUM; - if (yymsg != yymsgbuf) - YYSTACK_FREE (yymsg); - yymsg = (char *) YYSTACK_ALLOC (yyalloc); - if (yymsg) - yymsg_alloc = yyalloc; - else - { - yymsg = yymsgbuf; - yymsg_alloc = sizeof yymsgbuf; - } - } - - if (0 < yysize && yysize <= yymsg_alloc) - { - (void) yysyntax_error (yymsg, yystate, yychar); - yyerror (yymsg); - } - else - { - yyerror (YY_("syntax error")); - if (yysize != 0) - goto yyexhaustedlab; - } + char const *yymsgp = YY_("syntax error"); + int yysyntax_error_status; + yysyntax_error_status = YYSYNTAX_ERROR; + if (yysyntax_error_status == 0) + yymsgp = yymsg; + else if (yysyntax_error_status == 1) + { + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); + if (!yymsg) + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + yysyntax_error_status = 2; + } + else + { + yysyntax_error_status = YYSYNTAX_ERROR; + yymsgp = yymsg; + } + } + yyerror (yymsgp); + if (yysyntax_error_status == 2) + goto yyexhaustedlab; } +# undef YYSYNTAX_ERROR #endif } @@ -10105,7 +10166,7 @@ yyerrlab1: for (;;) { yyn = yypact[yystate]; - if (yyn != YYPACT_NINF) + if (!yypact_value_is_default (yyn)) { yyn += YYTERROR; if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) @@ -10164,8 +10225,13 @@ yyexhaustedlab: yyreturn: if (yychar != YYEMPTY) - yydestruct ("Cleanup: discarding lookahead", - yytoken, &yylval); + { + /* Make sure we have latest lookahead translation. See comments at + user semantic actions for why this is necessary. */ + yytoken = YYTRANSLATE (yychar); + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); + } /* Do not reclaim the symbols of the rule which action triggered this YYABORT or YYACCEPT. */ YYPOPSTACK (yylen); @@ -10190,8 +10256,8 @@ yyreturn: -/* Line 1684 of yacc.c */ -#line 4383 "Gmsh.y" +/* Line 2067 of yacc.c */ +#line 4401 "Gmsh.y" int PrintListOfDouble(char *format, List_T *list, char *buffer) diff --git a/Parser/Gmsh.tab.hpp b/Parser/Gmsh.tab.hpp index 74b36e603b..dceee60cb6 100644 --- a/Parser/Gmsh.tab.hpp +++ b/Parser/Gmsh.tab.hpp @@ -1,9 +1,8 @@ -/* A Bison parser, made by GNU Bison 2.4.3. */ +/* A Bison parser, made by GNU Bison 2.5. */ -/* Skeleton interface for Bison's Yacc-like parsers in C +/* Bison interface for Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006, - 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -182,7 +181,7 @@ typedef union YYSTYPE { -/* Line 1685 of yacc.c */ +/* Line 2068 of yacc.c */ #line 87 "Gmsh.y" char *c; @@ -195,8 +194,8 @@ typedef union YYSTYPE -/* Line 1685 of yacc.c */ -#line 200 "Gmsh.tab.hpp" +/* Line 2068 of yacc.c */ +#line 199 "Gmsh.tab.hpp" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index fb00c7e205..4a2581104f 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1016,6 +1016,24 @@ Affectation : Free($6); List_Delete($9); } + | tField '[' FExpr ']' '.' tSTRING tEND + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)$3); + if(field){ + FieldCallback *callback = field->callbacks[$6]; + if(callback) { + callback->run(); + } + else + yymsg(0, "Unknown callback '%s' in field %i of type '%s'", + $6, (int)$3, field->getName()); + } + else + yymsg(0, "No field with id %i", (int)$3); +#endif + Free($6); + } // Plugins diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index e7cc92b77d..2bc746933e 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -73,7 +73,6 @@ typedef int flex_int32_t; typedef unsigned char flex_uint8_t; typedef unsigned short int flex_uint16_t; typedef unsigned int flex_uint32_t; -#endif /* ! C99 */ /* Limits of integral types. */ #ifndef INT8_MIN @@ -104,6 +103,8 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif +#endif /* ! C99 */ + #endif /* ! FLEXINT_H */ #ifdef __cplusplus @@ -160,7 +161,15 @@ typedef unsigned int flex_uint32_t; /* Size of default input buffer. */ #ifndef YY_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k. + * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. + * Ditto for the __ia64__ case accordingly. + */ +#define YY_BUF_SIZE 32768 +#else #define YY_BUF_SIZE 16384 +#endif /* __ia64__ */ #endif /* The state buf must be large enough to hold one state per character in the main buffer. @@ -172,12 +181,7 @@ typedef unsigned int flex_uint32_t; typedef struct yy_buffer_state *YY_BUFFER_STATE; #endif -#ifndef YY_TYPEDEF_YY_SIZE_T -#define YY_TYPEDEF_YY_SIZE_T -typedef size_t yy_size_t; -#endif - -extern yy_size_t gmsh_yyleng; +extern int gmsh_yyleng; extern FILE *gmsh_yyin, *gmsh_yyout; @@ -203,6 +207,11 @@ extern FILE *gmsh_yyin, *gmsh_yyout; #define unput(c) yyunput( c, (yytext_ptr) ) +#ifndef YY_TYPEDEF_YY_SIZE_T +#define YY_TYPEDEF_YY_SIZE_T +typedef size_t yy_size_t; +#endif + #ifndef YY_STRUCT_YY_BUFFER_STATE #define YY_STRUCT_YY_BUFFER_STATE struct yy_buffer_state @@ -220,7 +229,7 @@ struct yy_buffer_state /* Number of characters read into yy_ch_buf, not including EOB * characters. */ - yy_size_t yy_n_chars; + int yy_n_chars; /* Whether we "own" the buffer - i.e., we know we created it, * and can realloc() it to grow it, and should free() it to @@ -290,8 +299,8 @@ static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ /* yy_hold_char holds the character lost when gmsh_yytext is formed. */ static char yy_hold_char; -static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */ -yy_size_t gmsh_yyleng; +static int yy_n_chars; /* number of characters read into yy_ch_buf */ +int gmsh_yyleng; /* Points to current character in buffer. */ static char *yy_c_buf_p = (char *) 0; @@ -319,7 +328,7 @@ static void gmsh_yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); YY_BUFFER_STATE gmsh_yy_scan_buffer (char *base,yy_size_t size ); YY_BUFFER_STATE gmsh_yy_scan_string (yyconst char *yy_str ); -YY_BUFFER_STATE gmsh_yy_scan_bytes (yyconst char *bytes,yy_size_t len ); +YY_BUFFER_STATE gmsh_yy_scan_bytes (yyconst char *bytes,int len ); void *gmsh_yyalloc (yy_size_t ); void *gmsh_yyrealloc (void *,yy_size_t ); @@ -945,7 +954,7 @@ void skipline(void); #define YY_NO_UNISTD_H #endif -#line 949 "Gmsh.yy.cpp" +#line 958 "Gmsh.yy.cpp" #define INITIAL 0 @@ -984,7 +993,7 @@ FILE *gmsh_yyget_out (void ); void gmsh_yyset_out (FILE * out_str ); -yy_size_t gmsh_yyget_leng (void ); +int gmsh_yyget_leng (void ); char *gmsh_yyget_text (void ); @@ -1026,7 +1035,12 @@ static int input (void ); /* Amount of stuff to slurp up with each read. */ #ifndef YY_READ_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k */ +#define YY_READ_BUF_SIZE 16384 +#else #define YY_READ_BUF_SIZE 8192 +#endif /* __ia64__ */ #endif /* Copy whatever the last rule matched to the standard output. */ @@ -1034,7 +1048,7 @@ static int input (void ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO fwrite( gmsh_yytext, gmsh_yyleng, 1, gmsh_yyout ) +#define ECHO do { if (fwrite( gmsh_yytext, gmsh_yyleng, 1, gmsh_yyout )) {} } while (0) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1045,7 +1059,7 @@ static int input (void ); if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ - yy_size_t n; \ + size_t n; \ for ( n = 0; n < max_size && \ (c = getc( gmsh_yyin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ @@ -1130,7 +1144,7 @@ YY_DECL #line 49 "Gmsh.l" -#line 1134 "Gmsh.yy.cpp" +#line 1148 "Gmsh.yy.cpp" if ( !(yy_init) ) { @@ -1995,7 +2009,7 @@ YY_RULE_SETUP #line 233 "Gmsh.l" ECHO; YY_BREAK -#line 1999 "Gmsh.yy.cpp" +#line 2013 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2181,7 +2195,7 @@ static int yy_get_next_buffer (void) else { - yy_size_t num_to_read = + int num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; while ( num_to_read <= 0 ) @@ -2195,7 +2209,7 @@ static int yy_get_next_buffer (void) if ( b->yy_is_our_buffer ) { - yy_size_t new_size = b->yy_buf_size * 2; + int new_size = b->yy_buf_size * 2; if ( new_size <= 0 ) b->yy_buf_size += b->yy_buf_size / 8; @@ -2226,7 +2240,7 @@ static int yy_get_next_buffer (void) /* Read in more data. */ YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), - (yy_n_chars), num_to_read ); + (yy_n_chars), (size_t) num_to_read ); YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); } @@ -2336,7 +2350,7 @@ static int yy_get_next_buffer (void) if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) { /* need to shift things up to make room */ /* +2 for EOB chars. */ - register yy_size_t number_to_move = (yy_n_chars) + 2; + register int number_to_move = (yy_n_chars) + 2; register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; register char *source = @@ -2385,7 +2399,7 @@ static int yy_get_next_buffer (void) else { /* need more input */ - yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); + int offset = (yy_c_buf_p) - (yytext_ptr); ++(yy_c_buf_p); switch ( yy_get_next_buffer( ) ) @@ -2409,7 +2423,7 @@ static int yy_get_next_buffer (void) case EOB_ACT_END_OF_FILE: { if ( gmsh_yywrap( ) ) - return 0; + return EOF; if ( ! (yy_did_buffer_switch_on_eof) ) YY_NEW_FILE; @@ -2661,7 +2675,7 @@ void gmsh_yypop_buffer_state (void) */ static void gmsh_yyensure_buffer_stack (void) { - yy_size_t num_to_alloc; + int num_to_alloc; if (!(yy_buffer_stack)) { @@ -2753,16 +2767,17 @@ YY_BUFFER_STATE gmsh_yy_scan_string (yyconst char * yystr ) /** Setup the input buffer state to scan the given bytes. The next call to gmsh_yylex() will * scan from a @e copy of @a bytes. - * @param bytes the byte buffer to scan - * @param len the number of bytes in the buffer pointed to by @a bytes. + * @param yybytes the byte buffer to scan + * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. * * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE gmsh_yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len ) +YY_BUFFER_STATE gmsh_yy_scan_bytes (yyconst char * yybytes, int _yybytes_len ) { YY_BUFFER_STATE b; char *buf; - yy_size_t n, i; + yy_size_t n; + int i; /* Get memory for full buffer, including space for trailing EOB's. */ n = _yybytes_len + 2; @@ -2844,7 +2859,7 @@ FILE *gmsh_yyget_out (void) /** Get the length of the current token. * */ -yy_size_t gmsh_yyget_leng (void) +int gmsh_yyget_leng (void) { return gmsh_yyleng; } -- GitLab