aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2021-02-11 10:43:31 +0100
committerGitHub <noreply@github.com>2021-02-11 10:43:31 +0100
commit93d2571d56d63bd0d2904ad7d0c7c51dc702ca33 (patch)
treec998542c62922f7d067c8da2fd72dab107114ca5
parent755d6d396ec29fdfa72d26bad28a9b17d8e1b4c6 (diff)
parent4b44a55f6f2e60230e56f5431120dd3c3e07603f (diff)
downloadPROJ-93d2571d56d63bd0d2904ad7d0c7c51dc702ca33.tar.gz
PROJ-93d2571d56d63bd0d2904ad7d0c7c51dc702ca33.zip
Merge pull request #2521 from rouault/boundcrs_proj_based_method
Allow a BoundCRS to use a PROJ string transformation
-rw-r--r--src/iso19111/operation/singleoperation.cpp12
-rw-r--r--src/wkt2_generated_parser.c1659
-rw-r--r--src/wkt2_grammar.y6
-rw-r--r--test/unit/test_operation.cpp64
4 files changed, 882 insertions, 859 deletions
diff --git a/src/iso19111/operation/singleoperation.cpp b/src/iso19111/operation/singleoperation.cpp
index 0cd7b57a..b32b61cd 100644
--- a/src/iso19111/operation/singleoperation.cpp
+++ b/src/iso19111/operation/singleoperation.cpp
@@ -2144,6 +2144,18 @@ bool SingleOperation::exportToPROJStringGeneric(
return true;
}
+ const char *prefix = "PROJ-based operation method: ";
+ if (starts_with(method()->nameStr(), prefix)) {
+ auto projString = method()->nameStr().substr(strlen(prefix));
+ try {
+ formatter->ingestPROJString(projString);
+ return true;
+ } catch (const io::ParsingException &e) {
+ throw io::FormattingException(
+ std::string("ingestPROJString() failed: ") + e.what());
+ }
+ }
+
return false;
}
diff --git a/src/wkt2_generated_parser.c b/src/wkt2_generated_parser.c
index f7bb5798..efecd75d 100644
--- a/src/wkt2_generated_parser.c
+++ b/src/wkt2_generated_parser.c
@@ -542,16 +542,16 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 106
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 3219
+#define YYLAST 2959
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 164
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 353
+#define YYNNTS 352
/* YYNRULES -- Number of rules. */
-#define YYNRULES 695
+#define YYNRULES 693
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 1429
+#define YYNSTATES 1425
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
by yylex, with out-of-bounds checking. */
@@ -680,8 +680,8 @@ static const yytype_uint16 yyrline[] =
1515, 1517, 1519, 1521, 1523, 1525, 1527, 1529, 1534, 1538,
1539, 1542, 1547, 1548, 1549, 1550, 1551, 1553, 1558, 1563,
1564, 1567, 1573, 1573, 1573, 1573, 1575, 1576, 1577, 1578,
- 1580, 1582, 1587, 1593, 1595, 1600, 1601, 1604, 1610, 1610,
- 1612, 1613, 1614, 1615, 1617, 1619
+ 1580, 1582, 1587, 1593, 1595, 1600, 1601, 1604, 1612, 1613,
+ 1614, 1615, 1617, 1619
};
#endif
@@ -897,7 +897,6 @@ static const char *const yytname[] =
"abridged_coordinate_transformation",
"abridged_coordinate_transformation_next",
"abridged_coordinate_transformation_end",
- "abridged_parameter_or_parameter_file",
"opt_end_abridged_coordinate_transformation",
"abridged_transformation_keyword", "abridged_transformation_parameter", YY_NULLPTR
};
@@ -928,10 +927,10 @@ static const yytype_uint16 yytoknum[] =
};
# endif
-#define YYPACT_NINF -1232
+#define YYPACT_NINF -1212
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-1232)))
+ (!!((Yystate) == (-1212)))
#define YYTABLE_NINF -634
@@ -942,149 +941,149 @@ static const yytype_uint16 yytoknum[] =
STATE-NUM. */
static const yytype_int16 yypact[] =
{
- 1574, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, -1232, -1232, 62, -1232, -1232,
- -1232, 98, -1232, -1232, -1232, 98, -1232, -1232, -1232, -1232,
- -1232, -1232, 98, 98, -1232, 98, -1232, -87, 98, -1232,
- 98, -1232, 98, -1232, -1232, -1232, 98, -1232, 98, -1232,
- 98, -1232, 98, -1232, 98, -1232, 98, -1232, 98, -1232,
- 98, -1232, -1232, -1232, -1232, -1232, -1232, -1232, 98, -1232,
- -1232, -1232, -1232, -1232, -1232, 98, -1232, 98, -1232, 98,
- -1232, 98, -1232, 98, -1232, 98, -1232, -1232, -1232, -24,
- -24, -24, -24, -24, -1232, 83, -24, -24, -24, -24,
- -24, -24, -24, -24, -24, -24, -24, -24, -24, 810,
- -24, -24, -24, 113, -1232, -1232, -87, -1232, -87, -1232,
- -87, -87, -1232, -87, -1232, -1232, -1232, 98, -1232, -87,
- -87, -1232, -87, -87, -87, -87, -87, -87, -87, -87,
- -87, -1232, -87, -1232, -87, -1232, -1232, -1232, -1232, 26,
- -1232, -1232, -1232, -1232, -1232, 37, 52, 179, -1232, -1232,
- -1232, -1232, 360, -1232, -87, -1232, -87, -87, -87, -1232,
- -87, 98, 1048, 212, 59, 59, 761, -24, 256, 138,
- 156, 467, 304, 360, 203, 360, 322, 360, 217, 314,
- 360, 275, 1439, -1232, -1232, -1232, 483, 69, -1232, -1232,
- 69, -1232, -1232, 69, -1232, -1232, 335, 810, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, 462, -1232, -1232, -1232, -1232,
- 252, 265, 287, 761, -1232, -87, -1232, -87, 98, -1232,
- -1232, -1232, -1232, 98, -87, 98, -87, -1232, 98, 98,
- -87, -87, -1232, -1232, -1232, -1232, -87, -87, -87, -87,
- -1232, -87, -1232, -87, -87, -87, -1232, -1232, -1232, -1232,
- 98, 98, -1232, -1232, -87, 98, -1232, -1232, 98, -87,
- -87, -1232, -87, -1232, -1232, 98, -1232, -87, -87, 98,
- -1232, -1232, -87, -87, 98, -1232, -1232, -87, -87, 98,
- -1232, -1232, -87, -87, 98, -1232, -1232, -87, -87, 98,
- -87, 98, -1232, -1232, -87, 98, -1232, -87, -1232, -1232,
- -1232, -1232, 98, -1232, -87, 98, -87, -87, -87, -87,
- -87, -1232, -87, 98, 360, -1232, 416, 462, -1232, -1232,
- 558, 360, 75, 360, 360, -24, -24, 78, 390, 102,
- -24, -24, 413, 413, 78, 102, 413, 413, 761, 416,
- 360, 466, -24, -24, 364, 360, -24, -24, 89, 477,
- 413, -24, 488, -1232, 488, -24, 477, 413, -24, 477,
- 413, -24, 477, 413, -24, -1232, -1232, 387, 104, -1232,
- -24, 413, -24, 1439, 462, 113, -1232, -24, 335, 113,
- -1232, 499, 113, -1232, 335, 461, 810, -1232, 462, -1232,
- -1232, -1232, -1232, -1232, -1232, -1232, -1232, -87, -87, 98,
- -1232, 98, -1232, -1232, -87, -87, 98, -87, -1232, -1232,
- -1232, -87, -87, -87, -1232, -87, 98, -1232, -1232, -1232,
- -1232, -1232, -1232, 98, 360, -87, -1232, -87, -87, -1232,
- -87, 98, -87, -87, 360, -87, -87, -1232, -87, -87,
- 761, 360, -1232, -87, -87, -87, -1232, -87, -87, 98,
- -1232, -1232, -87, -87, -87, 98, 360, -87, -87, -87,
- -87, -1232, 360, 360, -87, -87, 360, -87, -87, 360,
- -87, -87, -1232, -1232, 159, -1232, 360, -87, -1232, 360,
- -87, -87, -87, 287, 360, -1232, 360, -87, -1232, -87,
- 98, -87, -1232, -87, 98, 360, -1232, 481, 486, -24,
- -24, -1232, -1232, 488, -1232, 823, 479, 488, 360, 212,
- 102, 517, 360, 462, 1699, -1232, 477, 112, 112, 477,
- -24, 477, 102, -1232, 477, 477, 329, 360, 306, -1232,
- -1232, -1232, 477, 112, 112, -1232, -1232, -24, 360, 212,
- 477, 940, -1232, 477, 243, -1232, -1232, -1232, -1232, 477,
- 108, -1232, 477, 192, -1232, 477, 25, -1232, -1232, 462,
- -1232, -1232, 462, -1232, -1232, -1232, 477, 138, 1409, 360,
- 462, -1232, -1232, 499, 1212, 360, -24, 498, 1047, 360,
- -24, -1232, -87, -1232, -1232, 360, -1232, 360, -1232, -87,
- -1232, 360, -87, -1232, -87, -1232, -87, 360, -1232, -1232,
- -1232, 98, -1232, 287, 360, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -87, -1232, -1232, -1232, -1232, -87,
- -87, -87, -1232, -87, -87, -87, -87, 360, -1232, -87,
- 360, 360, 360, 360, -1232, -1232, -87, -87, 98, -1232,
- -1232, -1232, -87, 98, 360, -87, -87, -87, -87, -1232,
- -87, -1232, -87, 360, -87, 360, -87, -87, 360, -87,
- 360, -87, 360, -87, 205, 427, -1232, 497, 360, -1232,
- -1232, -1232, -1232, -87, -1232, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, -87, 98, -87, 98, -1232,
- -87, 98, -87, 98, -87, 98, -87, 98, -87, -1232,
- 98, -87, -1232, -1232, -87, -1232, -1232, -1232, 98, -87,
- -87, 98, -87, 98, -1232, -1232, -87, -1232, 98, -1232,
- -1232, -87, 486, -1232, -1232, -1232, -1232, -1232, -1232, 117,
- -1232, -24, 462, -1232, 398, 398, 398, 398, 78, 100,
- 360, 78, 360, -1232, 499, -1232, -1232, -1232, -1232, -1232,
- -1232, -24, -1232, -24, -1232, 78, 58, 360, 78, 360,
- 416, 518, -1232, 398, -1232, 89, 360, -1232, 360, -1232,
- 360, -1232, 360, -1232, 462, -1232, -1232, 462, 462, -1232,
- 430, -1232, -1232, -1232, -1232, 466, 176, 566, 530, -1232,
- -24, 547, -1232, -24, 425, -1232, 823, 281, -1232, 823,
- 333, -1232, 387, -1232, 469, -1232, 1134, 360, -24, -1232,
- -1232, -24, -1232, 823, 488, 360, 267, 47, -1232, -1232,
- -1232, -87, -1232, -87, -1232, -1232, -1232, -1232, -87, -87,
- -87, -87, -87, -87, -87, -1232, -87, -1232, -87, -1232,
- -87, -87, -87, -87, -1232, -87, -87, -1232, -87, -1232,
- -1232, -87, -87, -87, -87, -1232, -1232, -1232, -1232, -1232,
- 465, 430, -1232, 497, 462, -1232, -87, -1232, -87, -1232,
- -87, -1232, -87, -1232, -1232, 360, -87, -87, -87, -1232,
- 360, -87, -87, -1232, -87, -87, -1232, -87, -1232, -1232,
- -87, -1232, 360, -1232, -1232, -87, -87, -87, 98, -87,
- -1232, -87, -87, 360, -1232, -1232, -1232, -1232, -1232, -1232,
- 360, -87, -87, 360, 360, 360, 360, 360, 360, -1232,
- -1232, 360, 103, 360, 761, 761, 360, -1232, 306, -1232,
- -1232, 360, 746, 360, 360, 360, -1232, -1232, 462, -1232,
- -1232, -1232, 360, -1232, 338, -1232, -1232, 425, -1232, 281,
- -1232, -1232, -1232, 281, -1232, -1232, 823, -1232, 823, 387,
- -1232, -1232, -1232, 1054, -1232, 810, -1232, 416, -24, -1232,
- -87, 168, 499, -1232, -1232, -87, -87, -87, -87, -1232,
- -1232, -87, -87, -87, -1232, -1232, -87, -87, -1232, -87,
- -1232, -1232, -1232, -1232, -1232, -87, -1232, 98, -87, -1232,
- -87, -1232, -1232, -1232, 681, -1232, 360, -87, -87, -87,
- -1232, -87, -87, -87, -87, -1232, -87, -1232, -87, -1232,
- -1232, 360, -87, 360, -87, -1232, -87, 498, 98, -1232,
- -87, -1232, 623, 623, 623, 623, -1232, -1232, -1232, 360,
- 360, -1232, -1232, -24, -1232, 623, 811, -1232, -1232, 199,
- 535, 579, 281, -1232, -1232, -1232, -1232, 823, 372, 360,
- -1232, -1232, -1232, 297, 360, 98, -24, 1415, 360, -1232,
- -87, 98, -87, 98, -87, -87, 98, -1232, -1232, -87,
- -87, 370, 811, -1232, -87, -87, -1232, -87, -1232, -1232,
- -87, -1232, -87, -1232, -1232, -1232, -1232, -1232, -1232, -1232,
- -1232, -87, -1232, 98, -1232, 267, -87, -1232, -87, -87,
- -1232, 1348, -1232, -24, 1001, -1232, -24, -1232, 711, -1232,
- -24, 761, 1104, -1232, -1232, 535, 579, 579, -1232, 823,
- 360, -24, 360, 416, -1232, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, -1232, -1232, 98, -1232, 98,
- -87, -1232, -87, -1232, -87, -87, -87, -1232, -87, -87,
- -87, -1232, -1232, -87, -87, 98, -87, -1232, -1232, -1232,
- -1232, 360, -1232, -87, -87, -87, -24, -24, 1047, 2503,
- -1232, -1232, 2115, -1232, 2716, 360, 1527, -1232, -1232, -24,
- 579, -1232, 761, 360, 1340, 360, 360, -87, -87, -1232,
- -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, -1232, -87, -87, -87, -87,
- -87, 360, -1232, -87, -87, -87, -87, -87, 360, -1232,
- -87, -1232, -87, -1232, -87, -1232, -87, -1232, -1232, -87,
- 98, -1232, -1232, 761, 360, 272, 360, 679, 679, 710,
- 710, -1232, 870, 412, 679, 494, 494, -1232, 336, -1232,
- 360, -1232, -1232, 267, -87, -1232, -1232, -87, -87, -1232,
- -87, 98, -1232, -1232, -87, -87, -1232, -87, 98, -87,
- -1232, -1232, -87, -87, -1232, -87, 98, -87, -1232, -87,
- -87, -1232, -87, -87, -1232, -87, -87, -1232, -87, -1232,
- -87, -87, -1232, -87, -1232, -87, -1232, 360, 360, -1232,
- -1232, 74, -1232, 462, -1232, -1232, 870, -1232, 823, 475,
- -1232, -1232, -1232, 870, -1232, 823, 475, -1232, -1232, -1232,
- 475, -1232, -1232, 336, -1232, -1232, -1232, 336, -1232, -1232,
- -1232, -1232, -87, -1232, -87, 360, -87, -87, -87, -87,
- -87, -87, 360, -87, -87, -87, -87, -1232, -1232, -1232,
- -1232, 475, -1232, 438, -1232, -1232, 475, -1232, -1232, -1232,
- -1232, -1232, -1232, -87, 360, -87, -1232, -1232, -1232
+ 1339, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -1212, -1212, -1212, -1212, 94, -1212, -1212,
+ -1212, -106, -1212, -1212, -1212, -106, -1212, -1212, -1212, -1212,
+ -1212, -1212, -106, -106, -1212, -106, -1212, -14, -106, -1212,
+ -106, -1212, -106, -1212, -1212, -1212, -106, -1212, -106, -1212,
+ -106, -1212, -106, -1212, -106, -1212, -106, -1212, -106, -1212,
+ -106, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -106, -1212,
+ -1212, -1212, -1212, -1212, -1212, -106, -1212, -106, -1212, -106,
+ -1212, -106, -1212, -106, -1212, -106, -1212, -1212, -1212, -35,
+ -35, -35, -35, -35, -1212, 55, -35, -35, -35, -35,
+ -35, -35, -35, -35, -35, -35, -35, -35, -35, 1609,
+ -35, -35, -35, 121, -1212, -1212, -14, -1212, -14, -1212,
+ -14, -14, -1212, -14, -1212, -1212, -1212, -106, -1212, -14,
+ -14, -1212, -14, -14, -14, -14, -14, -14, -14, -14,
+ -14, -1212, -14, -1212, -14, -1212, -1212, -1212, -1212, 9,
+ -1212, -1212, -1212, -1212, -1212, 16, 29, 75, -1212, -1212,
+ -1212, -1212, 439, -1212, -14, -1212, -14, -14, -14, -1212,
+ -14, -106, 1370, 193, 122, 122, 781, -35, 137, 364,
+ 150, 519, 428, 439, 358, 439, 287, 439, 85, 241,
+ 439, 235, 1635, -1212, -1212, -1212, 191, 99, -1212, -1212,
+ 99, -1212, -1212, 99, -1212, -1212, 285, 1609, -1212, -1212,
+ -1212, -1212, -1212, -1212, -1212, 491, -1212, -1212, -1212, -1212,
+ 202, 219, 275, 781, -1212, -14, -1212, -14, -106, -1212,
+ -1212, -1212, -1212, -106, -14, -106, -14, -1212, -106, -106,
+ -14, -14, -1212, -1212, -1212, -1212, -14, -14, -14, -14,
+ -1212, -14, -1212, -14, -14, -14, -1212, -1212, -1212, -1212,
+ -106, -106, -1212, -1212, -14, -106, -1212, -1212, -106, -14,
+ -14, -1212, -14, -1212, -1212, -106, -1212, -14, -14, -106,
+ -1212, -1212, -14, -14, -106, -1212, -1212, -14, -14, -106,
+ -1212, -1212, -14, -14, -106, -1212, -1212, -14, -14, -106,
+ -14, -106, -1212, -1212, -14, -106, -1212, -14, -1212, -1212,
+ -1212, -1212, -106, -1212, -14, -106, -14, -14, -14, -14,
+ -14, -1212, -14, -106, 439, -1212, 371, 491, -1212, -1212,
+ 163, 439, 283, 439, 439, -35, -35, 56, 357, 258,
+ -35, -35, 408, 408, 56, 258, 408, 408, 781, 371,
+ 439, 457, -35, -35, 316, 439, -35, -35, 82, 447,
+ 408, -35, 476, -1212, 476, -35, 447, 408, -35, 447,
+ 408, -35, 447, 408, -35, -1212, -1212, 586, 256, -1212,
+ -35, 408, -35, 1635, 491, 121, -1212, -35, 285, 121,
+ -1212, 504, 121, -1212, 285, 495, 1609, -1212, 491, -1212,
+ -1212, -1212, -1212, -1212, -1212, -1212, -1212, -14, -14, -106,
+ -1212, -106, -1212, -1212, -14, -14, -106, -14, -1212, -1212,
+ -1212, -14, -14, -14, -1212, -14, -106, -1212, -1212, -1212,
+ -1212, -1212, -1212, -106, 439, -14, -1212, -14, -14, -1212,
+ -14, -106, -14, -14, 439, -14, -14, -1212, -14, -14,
+ 781, 439, -1212, -14, -14, -14, -1212, -14, -14, -106,
+ -1212, -1212, -14, -14, -14, -106, 439, -14, -14, -14,
+ -14, -1212, 439, 439, -14, -14, 439, -14, -14, 439,
+ -14, -14, -1212, -1212, 182, -1212, 439, -14, -1212, 439,
+ -14, -14, -14, 275, 439, -1212, 439, -14, -1212, -14,
+ -106, -14, -1212, -14, -106, 439, -1212, 500, 518, -35,
+ -35, -1212, -1212, 476, -1212, 1081, 502, 476, 439, 193,
+ 258, 545, 439, 491, 1651, -1212, 447, 107, 107, 447,
+ -35, 447, 258, -1212, 447, 447, 435, 439, 475, -1212,
+ -1212, -1212, 447, 107, 107, -1212, -1212, -35, 439, 193,
+ 447, 1611, -1212, 447, 393, -1212, -1212, -1212, -1212, 447,
+ 197, -1212, 447, 299, -1212, 447, 95, -1212, -1212, 491,
+ -1212, -1212, 491, -1212, -1212, -1212, 447, 364, 1549, 439,
+ 491, -1212, -1212, 504, 1148, 439, -35, 526, 1416, 439,
+ -35, -1212, -14, -1212, -1212, 439, -1212, 439, -1212, -14,
+ -1212, 439, -14, -1212, -14, -1212, -14, 439, -1212, -1212,
+ -1212, -106, -1212, 275, 439, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -1212, -14, -1212, -1212, -1212, -1212, -14,
+ -14, -14, -1212, -14, -14, -14, -14, 439, -1212, -14,
+ 439, 439, 439, 439, -1212, -1212, -14, -14, -106, -1212,
+ -1212, -1212, -14, -106, 439, -14, -14, -14, -14, -1212,
+ -14, -1212, -14, 439, -14, 439, -14, -14, 439, -14,
+ 439, -14, 439, -14, 406, 425, -1212, 725, 439, -1212,
+ -1212, -1212, -1212, -14, -1212, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -1212, -1212, -14, -106, -14, -106, -1212,
+ -14, -106, -14, -106, -14, -106, -14, -106, -14, -1212,
+ -106, -14, -1212, -1212, -14, -1212, -1212, -1212, -106, -14,
+ -14, -106, -14, -106, -1212, -1212, -14, -1212, -106, -1212,
+ -1212, -14, 518, -1212, -1212, -1212, -1212, -1212, -1212, 290,
+ -1212, -35, 491, -1212, 503, 503, 503, 503, 56, 139,
+ 439, 56, 439, -1212, 504, -1212, -1212, -1212, -1212, -1212,
+ -1212, -35, -1212, -35, -1212, 56, 148, 439, 56, 439,
+ 371, 555, -1212, 503, -1212, 82, 439, -1212, 439, -1212,
+ 439, -1212, 439, -1212, 491, -1212, -1212, 491, 491, -1212,
+ 429, -1212, -1212, -1212, -1212, 457, 242, 566, 662, -1212,
+ -35, 900, -1212, -35, 131, -1212, 1081, 303, -1212, 1081,
+ 452, -1212, 586, -1212, 462, -1212, 984, 439, -35, -1212,
+ -1212, -35, -1212, 1081, 476, 439, 265, 98, -1212, -1212,
+ -1212, -14, -1212, -14, -1212, -1212, -1212, -1212, -14, -14,
+ -14, -14, -14, -14, -14, -1212, -14, -1212, -14, -1212,
+ -14, -14, -14, -14, -1212, -14, -14, -1212, -14, -1212,
+ -1212, -14, -14, -14, -14, -1212, -1212, -1212, -1212, -1212,
+ 456, 429, -1212, 725, 491, -1212, -14, -1212, -14, -1212,
+ -14, -1212, -14, -1212, -1212, 439, -14, -14, -14, -1212,
+ 439, -14, -14, -1212, -14, -14, -1212, -14, -1212, -1212,
+ -14, -1212, 439, -1212, -1212, -14, -14, -14, -106, -14,
+ -1212, -14, -14, 439, -1212, -1212, -1212, -1212, -1212, -1212,
+ 439, -14, -14, 439, 439, 439, 439, 439, 439, -1212,
+ -1212, 439, 310, 439, 781, 781, 439, -1212, 475, -1212,
+ -1212, 439, 1029, 439, 439, 439, -1212, -1212, 491, -1212,
+ -1212, -1212, 439, -1212, 405, -1212, -1212, 131, -1212, 303,
+ -1212, -1212, -1212, 303, -1212, -1212, 1081, -1212, 1081, 586,
+ -1212, -1212, -1212, 1298, -1212, 1609, -1212, 371, -35, -1212,
+ -14, 1383, 439, 504, -1212, -1212, -14, -14, -14, -14,
+ -1212, -1212, -14, -14, -14, -1212, -1212, -14, -14, -1212,
+ -14, -1212, -1212, -1212, -1212, -1212, -14, -1212, -106, -14,
+ -1212, -14, -1212, -1212, -1212, 1041, -1212, 439, -14, -14,
+ -14, -1212, -14, -14, -14, -14, -1212, -14, -1212, -14,
+ -1212, -1212, 439, -14, 439, -14, -1212, -14, 526, -1212,
+ -106, -14, -14, -1212, 618, 618, 618, 618, -1212, -1212,
+ -1212, 439, 439, -1212, -1212, -35, -1212, 618, 877, -1212,
+ -1212, 255, 577, 580, 303, -1212, -1212, -1212, -1212, 1081,
+ 388, 439, -1212, -1212, -1212, 546, 439, -106, -35, -1212,
+ -1212, -1212, -14, -106, -14, -106, -14, -14, -106, -1212,
+ -1212, -14, -14, 550, 877, -1212, -14, -14, -1212, -14,
+ -1212, -1212, -14, -1212, -14, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -14, -1212, -106, -1212, 265, -14, 1292,
+ -1212, -35, 688, -1212, -35, -1212, 836, -1212, -35, 781,
+ 1086, -1212, -1212, 577, 580, 580, -1212, 1081, 439, -35,
+ 439, 371, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -106, -1212, -106, -14, -1212, -14, -1212,
+ -14, -14, -14, -1212, -14, -14, -14, -1212, -1212, -14,
+ -14, -106, -14, -1212, -1212, -1212, -1212, 439, -1212, -14,
+ -14, -14, -35, -35, 1416, 1982, -1212, -1212, 1658, -1212,
+ 2505, 439, 1448, -1212, -1212, -35, 580, -1212, 781, 439,
+ 893, 439, 439, -14, -14, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -14, -14, -14, -14, -14, 439, -1212, -14,
+ -14, -14, -14, -14, 439, -1212, -14, -1212, -14, -1212,
+ -14, -1212, -14, -1212, -1212, -14, -106, -1212, -1212, 781,
+ 439, 92, 439, 894, 894, 737, 737, -1212, 351, 485,
+ 894, 569, 569, -1212, 333, -1212, 439, -1212, -1212, 265,
+ -14, -1212, -1212, -14, -14, -1212, -14, -106, -1212, -1212,
+ -14, -14, -1212, -14, -106, -14, -1212, -1212, -14, -14,
+ -1212, -14, -106, -14, -1212, -14, -14, -1212, -14, -14,
+ -1212, -14, -14, -1212, -14, -1212, -14, -14, -1212, -14,
+ -1212, -14, -1212, 439, 439, -1212, -1212, 111, -1212, 491,
+ -1212, -1212, 351, -1212, 1081, 571, -1212, -1212, -1212, 351,
+ -1212, 1081, 571, -1212, -1212, -1212, 571, -1212, -1212, 333,
+ -1212, -1212, -1212, 333, -1212, -1212, -1212, -1212, -14, -1212,
+ -14, 439, -14, -14, -14, -14, -14, -14, 439, -14,
+ -14, -14, -14, -1212, -1212, -1212, -1212, 571, -1212, 565,
+ -1212, -1212, 571, -1212, -1212, -1212, -1212, -1212, -1212, -14,
+ 439, -14, -1212, -1212, -1212
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -1144,7 +1143,7 @@ static const yytype_uint16 yydefact[] =
190, 429, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 50, 512, 48, 513, 0, 190, 516, 0,
0, 0, 598, 606, 0, 649, 0, 0, 525, 662,
- 0, 0, 694, 80, 0, 0, 32, 0, 0, 0,
+ 0, 0, 692, 80, 0, 0, 32, 0, 0, 0,
0, 350, 355, 0, 354, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 388, 0, 0, 0, 0,
0, 0, 0, 390, 0, 0, 0, 0, 0, 415,
@@ -1186,96 +1185,96 @@ static const yytype_uint16 yydefact[] =
0, 85, 85, 137, 0, 85, 145, 0, 149, 150,
0, 79, 0, 655, 644, 638, 638, 80, 0, 80,
637, 0, 0, 0, 379, 524, 674, 675, 672, 673,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 555,
+ 0, 688, 0, 0, 0, 0, 0, 0, 0, 555,
554, 0, 0, 0, 0, 0, 0, 442, 0, 439,
441, 0, 0, 0, 0, 0, 47, 69, 0, 54,
57, 72, 0, 95, 0, 86, 99, 0, 121, 0,
122, 123, 132, 0, 124, 125, 0, 126, 0, 0,
173, 639, 640, 0, 641, 0, 643, 27, 0, 656,
- 0, 0, 0, 685, 377, 0, 0, 0, 0, 556,
- 558, 190, 518, 518, 517, 203, 190, 190, 443, 190,
- 445, 188, 186, 185, 187, 190, 467, 0, 190, 460,
- 0, 572, 64, 56, 0, 562, 0, 102, 103, 104,
- 105, 85, 85, 85, 85, 138, 0, 146, 142, 151,
- 152, 0, 80, 0, 0, 538, 378, 0, 0, 689,
- 690, 688, 0, 0, 0, 0, 521, 519, 520, 0,
- 0, 440, 462, 0, 463, 0, 0, 63, 97, 0,
- 0, 0, 0, 127, 128, 129, 130, 0, 0, 0,
- 147, 642, 654, 0, 0, 0, 0, 0, 0, 243,
- 214, 0, 209, 0, 80, 220, 0, 192, 189, 0,
- 475, 65, 0, 61, 106, 107, 108, 109, 110, 111,
- 85, 139, 0, 143, 141, 535, 530, 531, 532, 533,
- 534, 378, 528, 0, 536, 0, 0, 693, 690, 690,
- 687, 0, 213, 0, 0, 208, 0, 218, 0, 219,
- 0, 0, 0, 474, 62, 0, 0, 0, 131, 0,
- 0, 0, 0, 27, 692, 691, 183, 180, 179, 182,
- 200, 181, 201, 217, 345, 175, 177, 0, 176, 0,
- 215, 244, 0, 212, 209, 80, 0, 222, 220, 0,
- 190, 481, 479, 80, 80, 0, 112, 113, 114, 115,
- 140, 0, 527, 194, 676, 190, 0, 0, 0, 0,
- 211, 210, 0, 221, 0, 0, 0, 476, 478, 0,
- 0, 135, 0, 0, 0, 0, 0, 0, 194, 216,
- 303, 304, 305, 306, 307, 308, 309, 310, 311, 312,
- 313, 314, 315, 316, 317, 318, 319, 320, 321, 322,
- 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
- 333, 334, 335, 336, 337, 338, 297, 246, 248, 250,
- 252, 0, 245, 270, 277, 279, 281, 283, 0, 276,
- 293, 184, 80, 482, 378, 116, 190, 529, 679, 80,
- 0, 671, 695, 0, 0, 0, 0, 0, 0, 0,
- 0, 240, 0, 0, 0, 0, 0, 242, 0, 477,
- 0, 195, 678, 0, 190, 193, 344, 190, 190, 298,
- 190, 0, 241, 340, 190, 190, 247, 190, 0, 190,
- 249, 342, 190, 190, 251, 190, 0, 190, 253, 190,
- 190, 271, 190, 190, 278, 190, 190, 280, 190, 282,
- 190, 190, 284, 190, 294, 190, 480, 0, 0, 299,
- 302, 0, 300, 0, 254, 261, 0, 258, 0, 0,
- 260, 262, 269, 0, 266, 0, 0, 268, 272, 275,
- 0, 273, 285, 0, 287, 288, 289, 0, 291, 292,
- 295, 296, 676, 178, 190, 0, 190, 190, 0, 190,
- 190, 190, 0, 190, 190, 190, 190, 677, 301, 343,
- 257, 0, 255, 0, 259, 265, 0, 263, 341, 267,
- 274, 286, 290, 190, 0, 190, 256, 339, 264
+ 0, 0, 0, 0, 685, 377, 0, 0, 0, 0,
+ 556, 558, 190, 518, 518, 517, 203, 190, 190, 443,
+ 190, 445, 188, 186, 185, 187, 190, 467, 0, 190,
+ 460, 0, 572, 64, 56, 0, 562, 0, 102, 103,
+ 104, 105, 85, 85, 85, 85, 138, 0, 146, 142,
+ 151, 152, 0, 80, 0, 0, 538, 378, 0, 691,
+ 0, 688, 688, 687, 0, 0, 0, 0, 521, 519,
+ 520, 0, 0, 440, 462, 0, 463, 0, 0, 63,
+ 97, 0, 0, 0, 0, 127, 128, 129, 130, 0,
+ 0, 0, 147, 642, 654, 0, 0, 0, 0, 690,
+ 689, 243, 214, 0, 209, 0, 80, 220, 0, 192,
+ 189, 0, 475, 65, 0, 61, 106, 107, 108, 109,
+ 110, 111, 85, 139, 0, 143, 141, 535, 530, 531,
+ 532, 533, 534, 378, 528, 0, 536, 0, 0, 0,
+ 213, 0, 0, 208, 0, 218, 0, 219, 0, 0,
+ 0, 474, 62, 0, 0, 0, 131, 0, 0, 0,
+ 0, 27, 183, 180, 179, 182, 200, 181, 201, 217,
+ 345, 175, 177, 0, 176, 0, 215, 244, 0, 212,
+ 209, 80, 0, 222, 220, 0, 190, 481, 479, 80,
+ 80, 0, 112, 113, 114, 115, 140, 0, 527, 194,
+ 676, 190, 0, 0, 0, 0, 211, 210, 0, 221,
+ 0, 0, 0, 476, 478, 0, 0, 135, 0, 0,
+ 0, 0, 0, 0, 194, 216, 303, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
+ 337, 338, 297, 246, 248, 250, 252, 0, 245, 270,
+ 277, 279, 281, 283, 0, 276, 293, 184, 80, 482,
+ 378, 116, 190, 529, 679, 80, 0, 671, 693, 0,
+ 0, 0, 0, 0, 0, 0, 0, 240, 0, 0,
+ 0, 0, 0, 242, 0, 477, 0, 195, 678, 0,
+ 190, 193, 344, 190, 190, 298, 190, 0, 241, 340,
+ 190, 190, 247, 190, 0, 190, 249, 342, 190, 190,
+ 251, 190, 0, 190, 253, 190, 190, 271, 190, 190,
+ 278, 190, 190, 280, 190, 282, 190, 190, 284, 190,
+ 294, 190, 480, 0, 0, 299, 302, 0, 300, 0,
+ 254, 261, 0, 258, 0, 0, 260, 262, 269, 0,
+ 266, 0, 0, 268, 272, 275, 0, 273, 285, 0,
+ 287, 288, 289, 0, 291, 292, 295, 296, 676, 178,
+ 190, 0, 190, 190, 0, 190, 190, 190, 0, 190,
+ 190, 190, 190, 677, 301, 343, 257, 0, 255, 0,
+ 259, 265, 0, 263, 341, 267, 274, 286, 290, 190,
+ 0, 190, 256, 339, 264
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -1232, -1232, -1232, -221, -226, -189, -1232, 266, -194, 293,
- -1232, -1232, -1232, -1232, -1232, -1232, -196, -341, -654, -53,
- -782, -642, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -563,
- -250, -1232, -1232, -1232, -847, -1232, -1232, -237, 1251, 1249,
- -57, 1948, -1232, -665, -567, -574, -1232, -1232, -157, -1232,
- -1232, -156, -1232, -1232, -1232, -154, -306, -1232, -1232, -791,
- -1232, -1232, -1232, -1232, -1232, -783, -1232, -1232, -1232, -1232,
- -657, -1232, -1232, -1232, 110, -1232, -1232, -1232, -1232, -1232,
- 143, -1232, -1232, -505, -1232, -1232, -473, -1232, -1232, -1231,
- -1232, -1232, -1232, -1232, -557, 1794, -410, -1201, -544, -1232,
- -1232, -1232, -748, -930, -37, -1232, -497, -1232, -1232, -1232,
- -1232, -500, -334, 124, -1232, -1232, -290, -1018, -364, -446,
- -1004, -578, -1232, -852, -597, -1232, -1232, -1232, -1232, -602,
- -1232, -1232, -1232, -1232, -729, -588, -1232, -701, -1232, -556,
- -1232, -724, -1232, 716, -416, -148, 519, -419, 36, -102,
- -326, 101, -1232, -1232, -1232, 188, -1232, -117, -1232, -67,
- -1232, -1232, -1232, -1232, -1232, -1232, -836, -1232, -1232, -1232,
- -1232, 600, 604, 605, 607, -280, 663, -1232, -1232, -91,
- 42, -1232, -1232, -1232, -1232, -1232, -107, -1232, -1232, -1232,
- -1232, 10, -1232, 506, -105, -1232, -1232, -1232, 609, -1232,
- -1232, -1232, -644, -1232, -1232, -1232, 546, 552, 527, -204,
- 4, 277, -1232, -1232, -1232, -1232, -1232, -1232, -1232, -367,
- -794, -938, -1232, -1232, 627, 633, -1232, 197, -1232, -448,
- -1232, -1232, -1232, -192, -1232, 640, -1232, -185, -1232, 641,
- -1232, -186, -1232, 644, -1232, -187, -1232, -1232, 378, -1232,
- -1232, -1232, -1232, -1232, 540, -406, -1232, -1232, -384, -1232,
- -1232, -781, -1232, -1232, -1232, -796, -1232, -1232, 648, -1232,
- -1232, 588, -1232, 590, -1232, -1232, 190, -624, 193, 194,
- 195, 660, -1232, -1232, -1232, -1232, -1232, 671, -1232, -1232,
- -1232, -1232, 672, -1232, -1232, 673, -1232, -1232, 674, -1232,
- -1232, 675, -179, -349, 76, -1232, -1232, -1232, -1232, -1232,
- -1232, -1232, -1232, -1232, -1232, 806, -1232, 478, -253, -1232,
- -119, -209, -1232, -1232, -109, -1232, 81, -1232, -1232, -1232,
- -814, -1232, -1232, -1232, 489, -64, 816, -1232, -1232, 484,
- -1087, -552, -1232, -1001, 842, -1232, -1232, -1232, -96, -1232,
- -458, -1232, -249
+ -1212, -1212, -1212, -222, -223, -191, -1212, 272, -194, 311,
+ -1212, -1212, -1212, -1212, -1212, -1212, -196, -325, -656, -50,
+ -728, -646, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -567,
+ -230, -1212, -1212, -1212, -871, -1212, -1212, -218, 1195, 1389,
+ -57, -54, -1212, -704, -480, -392, -1212, -1212, -148, -1212,
+ -1212, -141, -1212, -1212, -1212, -134, -254, -1212, -1212, -803,
+ -1212, -1212, -1212, -1212, -1212, -788, -1212, -1212, -1212, -1212,
+ -251, -1212, -1212, -1212, 248, -1212, -1212, -1212, -1212, -1212,
+ 194, -1212, -1212, -500, -1212, -1212, -708, -1212, -1212, -401,
+ -1212, -1212, -1212, -1212, -550, 1538, -368, -1211, -499, -1212,
+ -1212, -1212, -769, -915, -51, -1212, -449, -1212, -1212, -1212,
+ -1212, -448, -342, 164, -1212, -1212, -118, -995, -321, -400,
+ -976, -674, -1212, -913, -549, -1212, -1212, -1212, -1212, -551,
+ -1212, -1212, -1212, -1212, -660, -547, -1212, -621, -1212, -755,
+ -1212, -651, -1212, 755, -419, -197, 561, -421, 30, 5,
+ -320, 132, -1212, -1212, -1212, 227, -1212, -79, -1212, -80,
+ -1212, -1212, -1212, -1212, -1212, -1212, -833, -1212, -1212, -1212,
+ -1212, 636, 638, 639, 641, -280, 1033, -1212, -1212, -75,
+ 31, -1212, -1212, -1212, -1212, -1212, -108, -1212, -1212, -1212,
+ -1212, 3, -1212, 413, -69, -1212, -1212, -1212, 646, -1212,
+ -1212, -1212, -636, -1212, -1212, -1212, 581, 583, 136, -182,
+ 4, 301, -1212, -1212, -1212, -1212, -1212, -1212, -1212, -364,
+ -814, -922, -1212, -1212, 654, 657, -1212, 220, -1212, -420,
+ -1212, -1212, -1212, -185, -1212, 671, -1212, -161, -1212, 672,
+ -1212, -189, -1212, 678, -1212, -173, -1212, -1212, 410, -1212,
+ -1212, -1212, -1212, -1212, 436, -327, -1212, -1212, -377, -1212,
+ -1212, -790, -1212, -1212, -1212, -786, -1212, -1212, 681, -1212,
+ -1212, 622, -1212, 625, -1212, -1212, 225, -609, 230, 231,
+ 237, 706, -1212, -1212, -1212, -1212, -1212, 709, -1212, -1212,
+ -1212, -1212, 711, -1212, -1212, 713, -1212, -1212, 718, -1212,
+ -1212, 719, -183, -351, 130, -1212, -1212, -1212, -1212, -1212,
+ -1212, -1212, -1212, -1212, -1212, 864, -1212, 537, -235, -1212,
+ -120, -214, -1212, -1212, -88, -1212, 104, -1212, -1212, -1212,
+ -813, -1212, -1212, -1212, 549, -36, 887, -1212, -1212, 557,
+ -1111, -488, -1212, -1007, 888, -1212, -1212, -1212, -34, -353,
+ -1212, -1212
};
/* YYDEFGOTO[NTERM-NUM]. */
@@ -1284,18 +1283,18 @@ static const yytype_int16 yydefgoto[] =
-1, 37, 38, 39, 235, 620, 237, 880, 238, 470,
239, 240, 419, 420, 241, 348, 242, 243, 894, 589,
503, 590, 504, 695, 890, 591, 809, 969, 592, 810,
- 893, 1033, 1034, 1112, 811, 812, 813, 895, 109, 215,
+ 893, 1034, 1035, 1114, 811, 812, 813, 895, 109, 215,
382, 456, 922, 609, 749, 819, 712, 713, 714, 715,
- 716, 717, 718, 905, 1036, 719, 720, 721, 910, 722,
- 723, 914, 1046, 1122, 1201, 724, 1089, 725, 917, 1048,
- 726, 727, 920, 1051, 489, 351, 41, 136, 245, 427,
- 428, 429, 615, 430, 431, 617, 729, 730, 1174, 1175,
- 1176, 1177, 1026, 1027, 874, 383, 667, 1178, 1223, 673,
- 668, 1179, 870, 1016, 448, 449, 1145, 450, 1142, 451,
- 452, 1149, 453, 649, 650, 651, 858, 1102, 1100, 1105,
- 1103, 1182, 1271, 1326, 1334, 1272, 1341, 1278, 1344, 1349,
- 1279, 1354, 1296, 1319, 1266, 1327, 1328, 1335, 1336, 1329,
- 1321, 1180, 42, 252, 353, 534, 44, 354, 253, 138,
+ 716, 717, 718, 905, 1037, 719, 720, 721, 910, 722,
+ 723, 914, 1047, 1124, 1197, 724, 1091, 725, 917, 1049,
+ 726, 727, 920, 1052, 489, 351, 41, 136, 245, 427,
+ 428, 429, 615, 430, 431, 617, 729, 730, 1170, 1171,
+ 1172, 1173, 1027, 1028, 874, 383, 667, 1174, 1219, 673,
+ 668, 1175, 870, 1017, 448, 449, 1143, 450, 1140, 451,
+ 452, 1147, 453, 649, 650, 651, 858, 1104, 1102, 1107,
+ 1105, 1178, 1267, 1322, 1330, 1268, 1337, 1274, 1340, 1345,
+ 1275, 1350, 1292, 1315, 1262, 1323, 1324, 1331, 1332, 1325,
+ 1317, 1176, 42, 252, 353, 534, 44, 354, 253, 138,
247, 538, 248, 441, 624, 435, 436, 621, 619, 254,
255, 445, 446, 634, 542, 630, 845, 631, 853, 46,
47, 48, 49, 50, 51, 454, 140, 52, 53, 256,
@@ -1303,11 +1302,11 @@ static const yytype_int16 yydefgoto[] =
56, 257, 58, 149, 203, 298, 299, 492, 59, 60,
275, 276, 787, 277, 278, 279, 258, 259, 457, 876,
936, 375, 62, 152, 284, 285, 482, 478, 963, 738,
- 680, 881, 1028, 63, 64, 65, 290, 486, 1153, 1194,
- 1195, 1284, 66, 67, 68, 69, 70, 71, 72, 73,
+ 680, 881, 1029, 63, 64, 65, 290, 486, 1151, 1190,
+ 1191, 1280, 66, 67, 68, 69, 70, 71, 72, 73,
74, 75, 76, 77, 78, 79, 210, 80, 318, 319,
506, 320, 321, 509, 937, 953, 461, 659, 941, 520,
- 746, 739, 1131, 1132, 1133, 740, 741, 1056, 81, 82,
+ 746, 739, 1133, 1134, 1135, 740, 741, 1057, 81, 82,
83, 260, 84, 261, 85, 86, 262, 770, 263, 264,
265, 87, 88, 162, 324, 325, 703, 89, 292, 293,
294, 295, 90, 303, 304, 91, 308, 309, 92, 313,
@@ -1315,8 +1314,8 @@ static const yytype_int16 yydefgoto[] =
96, 182, 97, 183, 184, 938, 218, 219, 837, 99,
186, 334, 335, 516, 336, 191, 342, 343, 927, 928,
742, 743, 100, 221, 222, 605, 939, 102, 224, 225,
- 940, 1225, 103, 748, 328, 105, 523, 848, 849, 1060,
- 1098, 524, 1061
+ 940, 1221, 103, 748, 328, 105, 523, 848, 849, 1002,
+ 524, 1062
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
@@ -1324,654 +1323,602 @@ static const yytype_int16 yydefgoto[] =
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 115, 672, 270, 236, 61, 421, 344, 479, 146, 291,
- 57, 337, 187, 188, 339, 532, 347, 943, 531, 302,
- 307, 312, 929, 613, 190, 1017, 434, 519, 421, 697,
- 906, 711, 772, 326, 789, 871, 45, 737, 907, 345,
- 926, 911, 54, 808, 931, 485, 970, 932, 1162, 349,
- 918, 205, 803, 207, 512, 925, 1095, 1110, 1101, 1054,
- 1101, 1106, 106, 1, 144, 670, 1325, 1325, 1333, 1333,
- 671, 1340, 518, 1325, 15, 5, 114, 842, 249, 192,
- 2, 193, 1, 194, 195, 464, 196, 250, 1170, 144,
- 4, 5, 198, 199, 1318, 200, 201, 202, 204, 202,
- 206, 202, 208, 209, 267, 211, 144, 212, 144, 189,
- 40, 338, 476, 33, 340, 251, 1, 5, 447, 17,
- 5, 5, 2, 134, 10, 333, 1184, 216, 266, 217,
- 220, 223, 4, 226, 289, 1396, 246, 433, 1399, 26,
- 145, 735, 1400, 29, 1106, 1403, 822, 333, 825, 1404,
- 828, 422, 831, 189, 833, 316, 1013, 249, 26, 282,
- 1394, 425, 29, 1172, 908, 145, 250, 912, 251, 370,
- 915, 1012, 17, 19, 467, 31, 32, 476, 246, 1052,
- 1423, 283, 145, 1038, 145, 1425, 484, 1077, 350, -629,
- 352, 1039, 26, 5, 1041, 525, 29, 357, 34, 359,
- -631, 502, 704, 362, 363, 1059, 735, 1049, 513, 364,
- 365, 366, 367, 626, 368, -632, 369, 202, 371, 734,
- 1094, 1190, 526, 1290, 326, 1205, 1357, 374, 956, 1113,
- 707, 710, 378, 379, 961, 380, 485, 288, 948, 968,
- 274, 384, 951, 682, 891, 386, 387, 850, 966, 731,
- 389, 390, 708, 709, 442, 392, 393, 107, 108, 21,
- 627, 2, 994, 398, 996, 1154, 15, 401, 19, 924,
- 403, 4, 661, 246, 301, 483, 560, 405, 10, 408,
- 409, 411, 412, 414, 36, 415, 1170, 600, 1114, 5,
- 311, 7, 1286, 34, 1316, 1160, 1115, 1117, 5, 251,
- 338, 1138, 1136, 340, 1125, 33, 12, 704, 1126, 1127,
- 1128, 1129, 297, 670, 587, 459, 588, 1040, 671, 317,
- 1042, 5, 1043, 5, 973, 1109, 1044, 296, 975, 31,
- 32, 5, 978, 980, 981, 709, 664, 984, 985, 323,
- 665, 987, -633, 899, 24, 903, 5, 633, 903, 493,
- 5, 903, 496, 5, 903, 499, 807, 903, 1316, 704,
- -51, 1172, 588, 1314, 315, 316, 1130, 443, 706, 707,
- 527, 528, 1196, 476, 463, 473, 341, 352, 533, 664,
- 536, 5, 687, 665, 537, 539, 540, 1091, 541, 21,
- 868, 708, 709, 694, 306, 689, 696, 691, 546, 693,
- 547, 548, 346, 549, 733, 551, 552, 762, 554, 555,
- 1289, 556, 558, 1203, 36, -30, 562, 563, 564, 326,
- 1185, 374, 1116, 1118, 1119, 1120, 569, 570, 1193, 5,
- 573, 574, 1323, 851, 1316, 531, 229, 579, 580, 1147,
- 582, 583, 5, 585, 586, 670, 1330, 444, 1310, 421,
- 671, 704, 1347, 596, 597, 598, 654, 656, 1227, 1228,
- 603, 459, 604, 532, 607, 882, 608, 1083, 1084, 1085,
- 1086, 755, 676, 678, 757, 859, 860, 861, 708, 709,
- 653, 655, 1166, 1273, 477, 1280, 1167, 1168, 1169, 517,
- 7, 751, 5, 447, 490, 521, 675, 677, 1197, 1198,
- 1199, 696, 10, 883, 903, 5, 903, 686, 522, 652,
- 903, 5, 657, 423, 660, 1331, 1316, 662, 663, 424,
- 1211, 213, 214, 251, 518, 674, -59, 17, 1217, 1218,
- 1137, -59, -59, -59, 134, 228, 685, 286, 230, 231,
- 232, 433, 688, 747, 1171, 690, 1158, 5, 692, 855,
- 856, 857, 807, 31, 32, 752, 704, 329, 330, 698,
- 706, 707, 533, 1285, 5, 533, 854, 537, 1186, 759,
- 233, 234, 1189, 704, 1173, 628, 629, 1183, 707, 246,
- 433, 1187, 587, 708, 709, 1192, 805, 764, 708, 709,
- 423, 424, 765, 766, 767, 705, 768, 769, 771, 769,
- 708, 709, 774, 884, 1350, 1350, 1067, 1068, 889, 903,
- 228, 696, 892, 230, 231, 232, 921, 1309, 785, 786,
- 788, 786, 588, 790, 1312, 791, 154, 793, 156, 795,
- 158, 1099, 160, 709, 1058, 469, 502, 913, 942, 418,
- 916, 1229, 804, 618, 971, 228, 815, 623, 230, 231,
- 232, 233, 234, 805, 967, 806, 421, 1288, 816, 897,
- 818, 900, 864, 821, 901, 824, 666, 827, 1037, 830,
- 612, 830, 991, 992, 598, 839, 840, 836, 1123, 875,
- 1164, 1165, 604, 604, 1294, 608, 1166, 1210, 1213, 844,
- 1167, 1168, 1169, 807, 847, 684, 5, 696, 892, 1323,
- 1104, 1316, 1188, 1338, 1352, 134, 228, 229, 728, 230,
- 231, 232, 233, 234, 728, 1345, 43, 1166, 728, 1099,
- 287, 1167, 1168, 1169, 622, 758, 933, 5, 5, 165,
- 1058, 1331, 1316, 166, 167, 807, 168, 704, 169, 1320,
- 705, 706, 707, 1337, 1337, 280, 1342, 1346, 1171, 1351,
- 1351, 281, 1355, 1021, 1019, 566, 170, 1022, 1023, 1024,
- 1015, 1015, 171, 5, 708, 709, 710, 683, 1282, 172,
- 173, 807, 1032, 174, 1053, 141, 507, 175, 862, 1171,
- 150, 866, 153, 268, 155, 269, 157, 699, 159, 176,
- 700, 701, 702, 502, 759, 872, 844, 1045, 878, 1047,
- 177, 178, 179, 180, 181, 769, 98, 835, 1076, 769,
- 1397, 952, 406, 954, 955, 786, 101, 1401, 958, 896,
- 3, 786, 421, 413, 962, 791, 410, 1405, 6, 228,
- 229, 1406, 230, 231, 232, 233, 234, 8, 696, 806,
- 1407, 830, 104, 974, 9, 830, 1003, 11, 1139, 977,
- 979, 830, 0, 0, 983, 830, 1424, 986, 830, 0,
- 988, 0, 16, 989, 0, 0, 0, 0, 836, 836,
- 993, 0, 608, 18, 997, 998, 20, 1166, 22, 863,
- 1111, 1167, 1168, 1169, 1001, 1002, 0, 5, 458, 25,
- 0, 27, 1316, 28, 0, 30, 873, 0, 1121, 474,
- 475, 35, 460, 462, 0, 0, 465, 466, 488, 228,
- 229, 0, 230, 231, 232, 495, 696, 0, 498, 0,
- 487, 501, 0, 0, 0, 0, 898, 494, 902, 511,
- 497, 902, 0, 500, 902, 0, 0, 902, 0, 1171,
- 902, 510, 0, 1057, 0, 0, 728, 0, 1062, 1063,
- 1064, 1065, 0, 0, 934, 952, 952, 1015, 0, 228,
- 0, 0, 230, 231, 232, 233, 234, 0, 0, 806,
- 1200, 228, 229, 1075, 230, 231, 232, 233, 234, 0,
- 1079, 1080, 1081, 0, 1082, 830, 830, 830, 0, 1087,
- 0, 1088, 0, 0, 0, 608, 0, 1093, 0, 844,
- 0, 0, 0, 1097, 0, 0, 0, 0, 1166, 1099,
- 0, 0, 1167, 1168, 1169, 1170, 0, 0, 5, 0,
- 0, 0, 0, 0, 0, 0, 0, 704, 1015, 0,
- 705, 706, 707, 635, 636, 637, 638, 639, 640, 641,
- 642, 643, 0, 1141, 0, 1144, 0, 608, 1148, 0,
- 0, 0, 1151, 1152, 708, 709, 710, 1155, 1156, 0,
- 1157, 0, 1011, 830, 5, 1159, 0, 0, 0, 0,
- 1171, 5, 1025, 704, 844, 0, 705, 706, 707, 1163,
- 704, 1097, 1097, 705, 706, 707, 0, 902, 0, 902,
- 1172, 0, 0, 902, 0, 0, 0, 736, 0, 1015,
- 708, 709, 710, 728, 0, 0, 0, 708, 709, 710,
- 0, 1166, 0, 0, 0, 1167, 1168, 1169, 1170, 0,
- 0, 5, 0, 1208, 0, 1209, 0, 1144, 608, 1212,
- 704, 1148, 1214, 705, 706, 707, 1216, 608, 0, 1220,
- 1191, 0, 0, 476, 0, 0, 1222, 1224, 0, 0,
- 0, 5, 0, 0, 0, 0, 0, 708, 709, 710,
- 704, 0, 0, 705, 706, 707, 0, 1395, 0, 0,
- 1293, 1222, 735, 1171, 0, 0, 923, 736, 0, 1398,
- 0, 0, 0, 0, 0, 0, 1402, 708, 709, 710,
- 0, 0, 902, 1172, 0, 134, 228, 229, 0, 230,
- 231, 232, 233, 234, 0, 0, 0, 728, 0, 1295,
- 1297, 1298, 1299, 1300, 0, 0, 1302, 1303, 1304, 1305,
- 1306, 476, 0, 1308, 0, 608, 0, 844, 0, 5,
- 0, 0, 608, 0, 0, 0, 0, 0, 704, 0,
- 0, 705, 706, 707, 0, 0, 0, 0, 0, 0,
- 735, 728, 0, 0, 728, 736, 0, 0, 728, 0,
- 0, 0, 728, 1361, 0, 708, 709, 710, 0, 0,
- 1366, 0, 1369, 0, 0, 0, 0, 0, 1373, 0,
- 1376, 0, 0, 0, 0, 1380, 0, 0, 1383, 0,
- 0, 0, 0, 1387, 0, 0, 110, 0, 0, 0,
- 0, 0, 0, 111, 112, 0, 113, 0, 0, 116,
- 0, 117, 0, 118, 0, 0, 0, 119, 728, 120,
- 0, 121, 0, 122, 0, 123, 728, 124, 0, 125,
- 0, 126, 0, 0, 728, 1224, 0, 0, 0, 127,
- 1411, 1413, 0, 0, 1416, 0, 128, 0, 129, 0,
- 130, 0, 131, 0, 132, 1166, 133, 5, 0, 1167,
- 1168, 1169, 1170, 0, 0, 5, 704, 0, 0, 705,
- 706, 707, 0, 0, 704, 0, 0, 705, 706, 707,
- 0, 0, 0, 736, 0, 747, 0, 0, 0, 0,
- 0, 0, 0, 708, 709, 710, 0, 0, 197, 0,
- 0, 708, 709, 710, 0, 1317, 0, 1324, 1324, 1332,
- 1332, 0, 1339, 1343, 1324, 1348, 1348, 1171, 1353, 3,
- 0, 0, 0, 0, 476, 0, 5, 6, 0, 0,
- 0, 0, 5, 0, 0, 704, 8, 1172, 705, 706,
- 707, 704, 227, 9, 705, 706, 707, 0, 0, 3,
- 0, 0, 300, 735, 305, 14, 310, 6, 0, 322,
- 0, 16, 708, 709, 710, 0, 8, 0, 708, 709,
- 710, 0, 18, 9, 0, 20, 0, 22, 0, 0,
- 0, 0, 0, 0, 0, 14, 0, 0, 25, 0,
- 27, 16, 28, 0, 30, 0, 0, 0, 0, 355,
- 35, 0, 18, 0, 356, 20, 358, 22, 0, 360,
- 361, 0, 0, 0, 0, 0, 0, 0, 25, 0,
- 27, 0, 28, 0, 30, 0, 0, 0, 0, 0,
- 35, 372, 373, 0, 0, 0, 376, 0, 0, 377,
- 0, 0, 0, 0, 5, 0, 381, 0, 0, 0,
- 385, 0, 0, 704, 0, 388, 705, 706, 707, 0,
- 391, 0, 0, 1191, 0, 394, 0, 0, 0, 0,
- 397, 0, 400, 0, 0, 0, 402, 0, 1, 2,
- 708, 709, 710, 404, 3, 0, 407, 0, 0, 4,
- 0, 5, 6, 417, 416, 0, 0, 0, 7, 0,
- 432, 8, 438, 439, 0, 0, 0, 0, 9, 10,
- 0, 11, 0, 12, 0, 0, 0, 0, 13, 472,
- 14, 0, 0, 15, 480, 0, 16, 0, 0, 0,
- 0, 0, 0, 0, 17, 0, 0, 18, 0, 19,
- 20, 21, 22, 0, 0, 0, 0, 0, 0, 0,
- 23, 24, 0, 25, 26, 27, 0, 28, 29, 30,
- 31, 32, 33, 0, 34, 35, 36, 0, 0, 0,
+ 115, 236, 270, 57, 61, 344, 337, 146, 672, 339,
+ 479, 187, 188, 532, 871, 531, 291, 307, 906, 347,
+ 943, 421, 970, 929, 931, 697, 1160, 932, 613, 326,
+ 45, 54, 434, 907, 519, 312, 911, 485, 842, 345,
+ 1018, 808, 789, 302, 421, 190, 925, 772, 803, 349,
+ 926, 1097, 512, 107, 108, 135, 137, 139, 139, 142,
+ 1, 144, 148, 139, 151, 139, 148, 139, 148, 139,
+ 148, 139, 148, 161, 163, 1055, 185, 185, 185, 192,
+ 1314, 193, 1112, 194, 195, 464, 196, 205, 1103, 207,
+ 1103, 1108, 198, 199, 106, 200, 201, 202, 204, 202,
+ 206, 202, 208, 209, 918, 211, 1166, 212, 899, 5,
+ 903, 1, 134, 903, 1312, 266, 903, 10, 711, 903,
+ 267, 289, 903, 518, 737, 1166, 1, 216, 5, 217,
+ 220, 223, 338, 226, 15, 340, 26, 145, 244, 189,
+ 29, 249, 2, 272, 15, 144, 1390, 1180, 5, 114,
+ 250, 422, 4, 282, 144, 670, 5, 704, 311, 425,
+ 671, 189, 1013, 251, 1079, 5, 1014, 17, 31, 32,
+ 1108, 1039, -629, 33, 467, 283, 333, 333, 251, -631,
+ 1053, 1168, 17, 33, 708, 709, 1040, 26, 350, 1042,
+ 352, 29, -632, 484, 525, 423, 424, 357, 1353, 359,
+ 1168, 502, 26, 362, 363, 370, 29, 1115, 513, 364,
+ 365, 366, 367, 1286, 368, 1061, 369, 202, 371, 626,
+ 326, 145, 526, 994, 1096, 996, 734, 374, 485, 274,
+ 145, 288, 378, 379, 1186, 380, 956, 968, -633, 1201,
+ 891, 384, 961, 1152, 966, 386, 387, 731, 40, 682,
+ 389, 390, 850, 948, 246, 392, 393, 951, 5, 5,
+ 627, 1050, 19, 398, 144, 329, 330, 401, 704, 903,
+ 403, 903, 661, 5, 447, 903, 560, 405, 1116, 408,
+ 409, 411, 412, 414, 1138, 415, 707, 34, 2, 7,
+ 600, 315, 316, 1117, 1119, 2, 426, 710, 4, 323,
+ 1158, 440, 137, 1282, 12, 4, 1111, 316, 708, 709,
+ 134, 228, 229, 459, 230, 231, 232, 233, 234, 476,
+ 5, 338, 481, 137, 340, 476, 341, 5, 822, 704,
+ 825, 491, 828, 5, 831, 493, 833, 587, 496, 588,
+ 145, 499, 24, 505, 246, 433, 508, 633, 735, 1093,
+ 5, 246, 346, 515, 21, 1312, 924, 709, 1162, 306,
+ 443, 442, 1163, 1164, 1165, 1192, 21, 463, 5, -30,
+ 527, 528, 807, 1312, 1310, 473, 903, 352, 533, 36,
+ 536, 1326, 483, 249, 537, 539, 540, 1343, 541, 687,
+ 1199, 36, 250, 694, 691, 664, 696, 868, 546, 665,
+ 547, 548, 1145, 549, 733, 551, 552, 1285, 554, 555,
+ 762, 556, 558, 693, 444, 326, 562, 563, 564, 689,
+ 1167, 374, 755, 19, 229, 757, 569, 570, 10, 301,
+ 573, 574, 531, 1223, 1224, 706, 707, 579, 580, 851,
+ 582, 583, 664, 585, 586, 5, 665, 1306, 34, 251,
+ 297, 296, 5, 596, 597, 598, 459, 317, 708, 709,
+ 603, 532, 604, 447, 607, 421, 608, 653, 655, 5,
+ 1182, 882, 654, 656, 1185, 614, 616, 1207, 704, 31,
+ 32, 7, 670, 675, 677, 1213, 1214, 671, 676, 678,
+ 751, 1181, 5, 5, 686, 652, 658, 458, 657, 1189,
+ 660, 696, 5, 662, 663, 1319, 973, 1312, 474, 475,
+ 975, 674, 517, 679, 978, 980, 981, 488, 521, 984,
+ 985, 1059, 685, 987, 495, 233, 234, 498, 688, 518,
+ 501, 690, 423, 154, 692, 156, 1316, 158, 511, 160,
+ 1333, 1333, 522, 1338, 1342, 698, 1347, 1347, 1269, 1351,
+ 1276, 424, 745, 1127, 10, 752, 185, 1128, 1129, 1130,
+ 1131, -51, 533, 588, 433, 533, 854, 537, 807, 759,
+ 908, 747, 670, 912, 1305, 251, 915, 671, 1162, 17,
+ 587, 1308, 1163, 1164, 1165, 805, 5, 764, 5, 286,
+ 1327, 1312, 765, 766, 767, 705, 768, 769, 771, 769,
+ 213, 214, 774, 628, 629, 31, 32, 1393, 889, 921,
+ 884, 696, 892, 588, 1397, 1132, 246, 433, 785, 786,
+ 788, 786, 477, 790, 1401, 791, 1101, 793, 1402, 795,
+ 708, 709, 490, 942, 709, 913, 502, 1060, 916, 228,
+ 1167, 469, 230, 231, 232, 804, 815, 859, 860, 861,
+ 1085, 1086, 1087, 1088, 855, 856, 857, 418, 816, 1169,
+ 818, 864, 1179, 821, 971, 824, 1183, 827, 897, 830,
+ 1188, 830, 421, 967, 598, 883, 900, 836, 875, 5,
+ 1346, 1346, 604, 604, 901, 608, 1069, 1070, 704, 844,
+ 991, 992, 706, 707, 847, 1162, 1101, 696, 892, 1163,
+ 1164, 1165, 1166, 839, 840, 5, -59, 852, 1099, 1100,
+ 807, -59, -59, -59, 704, 708, 709, 705, 706, 707,
+ 1038, 612, 1125, 1041, 1225, 1290, 1043, 869, 1044, 869,
+ 1156, 1206, 1045, 134, 228, 684, 1209, 230, 231, 232,
+ 1284, 708, 709, 710, 1162, 1106, 1184, 1334, 1163, 1164,
+ 1165, 1348, 1341, 807, 5, 43, 758, 1167, 1327, 1312,
+ 1016, 1016, 287, 622, 933, 165, 904, 166, 167, 909,
+ 168, 862, 1033, 1054, 866, 169, 1020, 1168, 919, 566,
+ 280, 618, 281, 170, 679, 623, 171, 679, 872, 807,
+ 683, 878, 1278, 502, 759, 1046, 844, 1048, 460, 462,
+ 172, 173, 465, 466, 666, 769, 1167, 174, 507, 769,
+ 175, 952, 1078, 954, 955, 786, 487, 268, 958, 896,
+ 269, 786, 699, 494, 962, 791, 497, 700, 701, 500,
+ 1118, 1120, 1121, 1122, 702, 176, 421, 510, 177, 696,
+ 178, 830, 179, 974, 1101, 830, 728, 180, 181, 977,
+ 979, 830, 728, 5, 983, 830, 728, 986, 830, 1420,
+ 988, 835, 704, 989, 98, 705, 706, 707, 836, 836,
+ 993, 406, 608, 228, 997, 998, 230, 231, 232, 233,
+ 234, 805, 1113, 806, 1001, 1003, 410, 101, 104, 708,
+ 709, 710, 1321, 1321, 1329, 1329, 413, 1336, 1123, 1321,
+ 1403, 1162, 1193, 1194, 1195, 1163, 1164, 1165, 1004, 0,
+ 5, 5, 0, 0, 1319, 0, 1312, 5, 696, 704,
+ 0, 0, 705, 706, 707, 0, 704, 0, 0, 228,
+ 229, 707, 230, 231, 232, 1051, 736, 0, 747, 0,
+ 0, 0, 0, 1058, 1056, 0, 708, 709, 710, 1064,
+ 1065, 1066, 1067, 708, 709, 1016, 952, 952, 0, 0,
+ 0, 1392, 0, 1167, 1395, 1281, 1196, 0, 1396, 0,
+ 0, 1399, 0, 0, 1077, 1400, 0, 0, 0, 0,
+ 0, 1081, 1082, 1083, 0, 1084, 830, 830, 830, 0,
+ 1089, 0, 1090, 476, 0, 0, 608, 0, 1095, 0,
+ 844, 5, 0, 0, 1001, 1001, 1419, 0, 0, 0,
+ 704, 1421, 0, 705, 706, 707, 0, 863, 0, 0,
+ 0, 869, 735, 0, 1016, 228, 923, 736, 230, 231,
+ 232, 233, 234, 0, 873, 806, 1022, 708, 709, 710,
+ 1023, 1024, 1025, 0, 679, 1139, 5, 1142, 0, 608,
+ 1146, 0, 0, 0, 1149, 1150, 0, 0, 0, 1153,
+ 1154, 0, 1155, 0, 898, 830, 902, 1157, 0, 902,
+ 0, 0, 902, 0, 0, 902, 844, 0, 902, 0,
+ 0, 1161, 0, 0, 728, 0, 0, 1177, 0, 0,
+ 1177, 0, 934, 1162, 1177, 1016, 0, 1163, 1164, 1165,
+ 1166, 0, 0, 5, 0, 869, 0, 0, 0, 0,
+ 0, 0, 704, 0, 0, 705, 706, 707, 0, 1204,
+ 0, 1205, 1187, 1142, 608, 1208, 0, 1146, 1210, 0,
+ 0, 0, 1212, 608, 0, 1216, 0, 0, 0, 708,
+ 709, 710, 1218, 1220, 0, 141, 0, 0, 869, 869,
+ 150, 0, 153, 0, 155, 1167, 157, 476, 159, 0,
+ 0, 1279, 0, 1391, 0, 5, 1289, 1218, 0, 0,
+ 0, 0, 0, 1394, 704, 1168, 0, 705, 706, 707,
+ 1398, 0, 0, 0, 0, 0, 735, 0, 0, 228,
+ 229, 736, 230, 231, 232, 233, 234, 0, 0, 806,
+ 1012, 708, 709, 710, 0, 1291, 1293, 1294, 1295, 1296,
+ 1026, 0, 1298, 1299, 1300, 1301, 1302, 0, 0, 1304,
+ 0, 608, 0, 844, 0, 902, 0, 902, 608, 228,
+ 229, 902, 230, 231, 232, 233, 234, 0, 0, 0,
+ 110, 728, 0, 0, 0, 0, 0, 111, 112, 728,
+ 113, 0, 0, 116, 0, 117, 0, 118, 0, 1357,
+ 0, 119, 0, 120, 0, 121, 1362, 122, 1365, 123,
+ 0, 124, 0, 125, 1369, 126, 1372, 0, 0, 0,
+ 0, 1376, 0, 127, 1379, 0, 0, 0, 0, 1383,
+ 128, 0, 129, 0, 130, 0, 131, 0, 132, 1162,
+ 133, 0, 0, 1163, 1164, 1165, 1166, 0, 0, 5,
+ 0, 0, 0, 0, 0, 5, 0, 0, 704, 0,
+ 0, 705, 706, 707, 704, 0, 0, 705, 706, 707,
+ 0, 1220, 902, 0, 0, 0, 1407, 1409, 0, 0,
+ 1412, 736, 197, 1, 2, 708, 709, 710, 0, 3,
+ 0, 708, 709, 710, 4, 0, 5, 6, 0, 0,
+ 0, 1167, 0, 7, 0, 0, 8, 0, 0, 0,
+ 0, 0, 0, 9, 10, 0, 11, 0, 12, 0,
+ 0, 1168, 0, 13, 0, 14, 227, 728, 15, 0,
+ 728, 16, 476, 0, 728, 0, 0, 0, 728, 17,
+ 5, 0, 18, 0, 19, 20, 21, 22, 0, 704,
+ 0, 0, 705, 706, 707, 23, 24, 0, 25, 26,
+ 27, 735, 28, 29, 30, 31, 32, 33, 0, 34,
+ 35, 36, 0, 5, 0, 0, 708, 709, 710, 0,
+ 0, 0, 704, 355, 0, 705, 706, 707, 356, 0,
+ 358, 0, 728, 360, 361, 0, 0, 0, 0, 0,
+ 728, 0, 0, 0, 0, 5, 0, 0, 728, 708,
+ 709, 710, 0, 0, 704, 372, 373, 705, 706, 707,
+ 376, 0, 0, 377, 1187, 0, 0, 0, 0, 0,
+ 381, 0, 0, 0, 385, 0, 0, 0, 0, 388,
+ 0, 708, 709, 710, 391, 0, 0, 0, 0, 394,
+ 0, 0, 0, 0, 397, 0, 400, 134, 228, 229,
+ 402, 230, 231, 232, 233, 234, 0, 404, 0, 0,
+ 407, 0, 0, 0, 0, 0, 0, 0, 416, 1313,
+ 0, 1320, 1320, 1328, 1328, 0, 1335, 1339, 1320, 1344,
+ 1344, 0, 1349, 0, 0, 0, 0, 0, 0, 3,
+ 0, 0, 0, 0, 0, 0, 5, 6, 0, 0,
+ 0, 0, 0, 0, 0, 704, 8, 0, 705, 706,
+ 707, 0, 0, 9, 0, 0, 0, 0, 0, 0,
+ 0, 0, 300, 0, 305, 14, 310, 0, 0, 322,
+ 0, 16, 708, 709, 710, 0, 0, 0, 0, 0,
+ 0, 0, 18, 0, 0, 20, 0, 22, 0, 3,
+ 0, 0, 0, 0, 529, 0, 530, 6, 25, 0,
+ 27, 535, 28, 0, 30, 0, 8, 0, 0, 0,
+ 35, 543, 0, 9, 0, 3, 11, 0, 544, 0,
+ 0, 0, 0, 6, 0, 0, 550, 0, 0, 0,
+ 0, 16, 8, 0, 0, 0, 0, 0, 0, 9,
+ 0, 0, 18, 0, 567, 20, 0, 22, 0, 0,
+ 571, 14, 0, 0, 0, 0, 0, 16, 25, 0,
+ 27, 0, 28, 0, 30, 0, 0, 0, 18, 0,
+ 35, 20, 0, 22, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 0, 25, 606, 27, 0, 28, 610,
+ 30, 0, 0, 0, 0, 0, 35, 0, 0, 0,
+ 0, 0, 0, 417, 0, 0, 0, 0, 0, 0,
+ 432, 0, 438, 439, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 0, 472,
+ 0, 0, 0, 0, 480, 1263, 1226, 1227, 1228, 1229,
+ 1230, 1231, 1232, 1264, 1233, 1234, 1235, 1236, 1237, 1238,
+ 1239, 1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248,
+ 1249, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1265, 1266,
+ 1257, 1258, 1259, 1260, 1261, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 529, 0, 530, 0, 0, 0, 0, 535, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 543, 0, 0,
- 0, 0, 0, 545, 544, 0, 0, 0, 0, 0,
- 0, 0, 550, 553, 0, 0, 0, 0, 0, 0,
- 561, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 567, 0, 0, 0, 0, 572, 571, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 761, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 545, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 553, 0, 395, 396, 0, 399, 0,
+ 561, 0, 0, 781, 0, 0, 0, 0, 783, 0,
+ 0, 0, 0, 0, 0, 572, 0, 0, 0, 0,
0, 577, 578, 0, 0, 581, 0, 0, 584, 0,
0, 0, 0, 0, 0, 593, 0, 0, 595, 0,
0, 0, 0, 601, 0, 602, 0, 0, 0, 0,
- 0, 606, 0, 0, 611, 610, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 625, 0, 0,
- 0, 632, 635, 636, 637, 638, 639, 640, 641, 642,
- 643, 644, 645, 646, 647, 648, 669, 0, 0, 0,
+ 0, 817, 0, 820, 611, 0, 823, 0, 826, 0,
+ 829, 0, 832, 0, 0, 834, 0, 625, 0, 0,
+ 0, 632, 0, 838, 0, 0, 841, 0, 843, 0,
+ 0, 0, 0, 846, 0, 0, 669, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 681, 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, 732, 0,
0, 0, 0, 0, 744, 0, 0, 0, 750, 0,
- 0, 0, 0, 0, 753, 0, 754, 0, 0, 0,
- 756, 0, 0, 0, 0, 0, 760, 0, 0, 0,
- 0, 0, 761, 763, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 753, 0, 754, 559, 0, 0,
+ 756, 0, 0, 0, 0, 565, 760, 0, 0, 0,
+ 568, 0, 0, 763, 0, 0, 0, 575, 576, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 773, 0, 0, 775,
- 776, 777, 778, 0, 0, 0, 0, 0, 0, 781,
- 0, 0, 0, 784, 783, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 594, 773, 0, 0, 775,
+ 776, 777, 778, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 784, 0, 0, 0, 0, 0, 0,
0, 0, 792, 0, 794, 0, 0, 797, 0, 799,
0, 801, 0, 0, 0, 0, 0, 814, 0, 0,
+ 1226, 1227, 1228, 1229, 1230, 1231, 1232, 0, 1233, 1234,
+ 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244,
+ 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254,
+ 1255, 1256, 0, 995, 1257, 1258, 1259, 1260, 1261, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 817, 0, 820,
- 0, 0, 823, 0, 826, 0, 829, 0, 832, 0,
- 0, 834, 0, 0, 0, 0, 0, 0, 0, 838,
- 0, 0, 841, 0, 843, 0, 0, 0, 0, 846,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 865,
0, 867, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 877, 0, 879, 0,
0, 0, 0, 0, 0, 885, 0, 886, 0, 887,
- 0, 888, 0, 0, 0, 0, 0, 135, 137, 139,
- 139, 142, 0, 0, 148, 139, 151, 139, 148, 139,
- 148, 139, 148, 139, 148, 161, 163, 0, 185, 185,
- 185, 0, 0, 0, 0, 0, 930, 0, 0, 0,
- 0, 0, 0, 0, 935, 0, 0, 0, 0, 0,
+ 0, 888, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 779, 780, 0, 0, 0, 0,
+ 782, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1075, 0, 796, 930, 798, 0, 800,
+ 0, 802, 0, 0, 935, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 395, 396, 0, 399, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1098, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 244, 0, 0, 0, 0, 272, 0, 0, 0, 0,
- 0, 0, 0, 0, 976, 0, 0, 0, 0, 982,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 990, 0, 0, 0, 0, 0, 0, 0, 995,
+ 0, 0, 1137, 0, 976, 0, 0, 0, 1141, 982,
+ 1144, 0, 0, 1148, 0, 0, 0, 0, 0, 0,
+ 0, 990, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 999, 0, 0, 0, 0, 0, 0, 1000,
- 0, 0, 1004, 1005, 1006, 1007, 1008, 1009, 0, 0,
- 1010, 0, 1014, 0, 0, 1018, 0, 0, 0, 0,
- 1020, 0, 1029, 1030, 1031, 0, 0, 0, 0, 0,
- 0, 1035, 1267, 1230, 1231, 1232, 1233, 1234, 1235, 1236,
- 1268, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245,
- 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255,
- 1256, 1257, 1258, 1259, 1260, 1269, 1270, 1261, 1262, 1263,
- 1264, 1265, 0, 559, 0, 0, 0, 0, 0, 0,
- 0, 565, 0, 0, 0, 0, 568, 0, 1073, 0,
- 0, 0, 0, 575, 576, 1078, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 426, 0,
- 1090, 594, 1092, 440, 137, 0, 0, 0, 0, 1096,
- 0, 0, 0, 0, 0, 0, 0, 0, 1107, 1108,
- 0, 0, 0, 0, 481, 137, 0, 0, 0, 0,
- 0, 0, 0, 491, 0, 0, 0, 0, 1124, 0,
- 0, 0, 0, 1134, 0, 505, 1135, 1140, 508, 0,
- 0, 0, 1143, 0, 1146, 515, 0, 1150, 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, 1161, 0, 0, 0, 0, 0,
+ 1159, 0, 1005, 1006, 1007, 1008, 1009, 1010, 0, 0,
+ 1011, 0, 1015, 0, 0, 1019, 0, 0, 0, 0,
+ 1021, 0, 1030, 1031, 1032, 0, 0, 0, 0, 0,
+ 0, 1036, 0, 0, 0, 0, 0, 0, 1202, 0,
+ 1203, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1215, 0, 0, 0,
+ 0, 1063, 0, 0, 0, 0, 944, 945, 946, 947,
+ 0, 949, 950, 0, 0, 0, 0, 0, 0, 0,
+ 0, 957, 0, 959, 960, 0, 0, 0, 0, 0,
+ 0, 964, 965, 0, 0, 0, 1080, 0, 0, 0,
+ 0, 0, 0, 0, 972, 0, 0, 0, 0, 0,
+ 0, 1092, 0, 1094, 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, 1202,
- 0, 1204, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1206, 0,
- 1207, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 1219, 0, 0, 0,
- 1221, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 779, 780, 0, 0, 1281, 0, 782, 0, 0, 0,
- 0, 0, 1287, 0, 1291, 1292, 0, 614, 616, 0,
- 0, 796, 0, 798, 0, 800, 0, 802, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 658, 0,
+ 1109, 1110, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 679, 0, 0, 0, 0,
- 1301, 0, 0, 0, 0, 0, 0, 1307, 0, 0,
+ 1126, 1309, 0, 0, 0, 1136, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 1313, 0, 1315, 0, 1322, 0, 0, 0, 0,
- 0, 0, 0, 0, 745, 0, 0, 0, 185, 1356,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 1363, 0, 0, 0, 0, 0, 0, 1368,
- 0, 0, 0, 0, 0, 0, 0, 1375, 0, 0,
+ 0, 0, 1359, 0, 0, 0, 0, 0, 0, 1364,
+ 0, 0, 0, 0, 0, 0, 0, 1371, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 1392, 1393, 0, 0,
- 0, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 0, 1237,
- 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247,
- 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257,
- 1258, 1259, 1260, 0, 1409, 1261, 1262, 1263, 1264, 1265,
- 0, 1418, 944, 945, 946, 947, 0, 949, 950, 0,
- 0, 0, 0, 0, 0, 0, 0, 957, 0, 959,
- 960, 0, 0, 1427, 0, 0, 0, 964, 965, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1198, 0, 1200,
+ 1068, 0, 0, 0, 0, 1071, 1072, 0, 1073, 0,
+ 0, 0, 0, 0, 1074, 0, 0, 1076, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 972, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 852,
+ 0, 0, 0, 0, 0, 0, 1217, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 869,
- 0, 869, 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, 904, 0,
- 0, 909, 0, 0, 0, 0, 0, 0, 0, 0,
- 919, 0, 0, 0, 0, 0, 679, 0, 0, 679,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 1066, 0, 0, 0, 0,
- 1069, 1070, 0, 1071, 0, 0, 0, 0, 0, 1072,
- 0, 0, 1074, 1274, 1230, 1231, 1232, 1233, 1234, 1235,
- 1236, 1275, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244,
- 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254,
- 1255, 1256, 1257, 1258, 1259, 1260, 1276, 1277, 1261, 1262,
- 1263, 1264, 1265, 0, 0, 0, 0, 0, 0, 0,
+ 1277, 0, 0, 0, 0, 0, 0, 0, 1283, 0,
+ 1287, 1288, 1270, 1226, 1227, 1228, 1229, 1230, 1231, 1232,
+ 1271, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241,
+ 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251,
+ 1252, 1253, 1254, 1255, 1256, 1272, 1273, 1257, 1258, 1259,
+ 1260, 1261, 0, 0, 0, 0, 1297, 0, 0, 0,
+ 0, 0, 0, 1303, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1311,
+ 0, 1318, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1352, 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, 1211, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1222,
+ 0, 0, 1388, 1389, 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,
+ 1405, 0, 0, 0, 0, 0, 0, 1414, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 1050, 0, 0,
- 0, 0, 0, 0, 0, 0, 1055, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1423,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1307, 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, 1354, 0,
+ 0, 1355, 1356, 0, 1358, 0, 0, 0, 1360, 1361,
+ 0, 1363, 0, 1366, 0, 0, 1367, 1368, 0, 1370,
+ 0, 1373, 0, 1374, 1375, 0, 1377, 1378, 0, 1380,
+ 1381, 0, 1382, 0, 1384, 1385, 0, 1386, 0, 1387,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 1215, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 1226,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 869, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 679, 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,
- 1311, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 1181, 0, 0, 1181, 0, 0, 0, 1181, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1358, 869,
- 0, 1359, 1360, 0, 1362, 0, 0, 0, 1364, 1365,
- 0, 1367, 0, 1370, 0, 0, 1371, 1372, 0, 1374,
- 0, 1377, 0, 1378, 1379, 0, 1381, 1382, 0, 1384,
- 1385, 0, 1386, 0, 1388, 1389, 0, 1390, 0, 1391,
- 0, 0, 0, 0, 869, 869, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 1283, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 1408, 0,
- 1410, 1412, 0, 1414, 1415, 1417, 0, 1419, 1420, 1421,
- 1422, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 1426, 0, 1428
+ 0, 0, 0, 0, 0, 0, 0, 0, 1404, 0,
+ 1406, 1408, 0, 1410, 1411, 1413, 0, 1415, 1416, 1417,
+ 1418, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1422, 0, 1424
};
static const yytype_int16 yycheck[] =
{
- 57, 558, 196, 192, 0, 346, 227, 374, 115, 201,
- 0, 220, 131, 132, 223, 434, 242, 853, 434, 204,
- 206, 208, 836, 528, 133, 955, 352, 411, 369, 592,
- 821, 598, 656, 212, 678, 783, 0, 604, 821, 235,
- 836, 824, 0, 697, 838, 379, 893, 841, 1135, 243,
- 832, 156, 694, 158, 403, 836, 1057, 1075, 1062, 997,
- 1064, 1065, 0, 4, 6, 7, 1297, 1298, 1299, 1300,
- 12, 1302, 25, 1304, 49, 17, 163, 742, 19, 136,
- 5, 138, 4, 140, 141, 365, 143, 28, 14, 6,
- 15, 17, 149, 150, 1295, 152, 153, 154, 155, 156,
- 157, 158, 159, 160, 195, 162, 6, 164, 6, 40,
- 0, 220, 9, 88, 223, 56, 4, 17, 16, 60,
- 17, 17, 5, 147, 35, 78, 1144, 184, 195, 186,
- 187, 188, 15, 190, 201, 1366, 61, 62, 1369, 80,
- 82, 38, 1373, 84, 1148, 1376, 720, 78, 722, 1380,
- 724, 347, 726, 40, 728, 51, 952, 19, 80, 3,
- 1361, 350, 84, 89, 821, 82, 28, 824, 56, 274,
- 827, 952, 60, 65, 368, 86, 87, 9, 61, 993,
- 1411, 25, 82, 974, 82, 1416, 378, 1034, 245, 163,
- 247, 974, 80, 17, 977, 416, 84, 254, 90, 256,
- 163, 397, 26, 260, 261, 1001, 38, 989, 404, 266,
- 267, 268, 269, 539, 271, 163, 273, 274, 275, 603,
- 1056, 1151, 418, 1224, 403, 1163, 1313, 284, 872, 1076,
- 31, 55, 289, 290, 878, 292, 570, 201, 862, 893,
- 198, 298, 866, 569, 807, 302, 303, 752, 890, 598,
- 307, 308, 53, 54, 356, 312, 313, 159, 160, 67,
- 540, 5, 927, 320, 929, 1112, 49, 324, 65, 836,
- 327, 15, 552, 61, 71, 377, 470, 334, 35, 336,
- 337, 338, 339, 340, 92, 342, 14, 513, 1079, 17,
- 73, 24, 1222, 90, 22, 1131, 1079, 1080, 17, 56,
- 409, 1097, 1096, 412, 7, 88, 39, 26, 11, 12,
- 13, 14, 202, 7, 155, 48, 157, 974, 12, 209,
- 977, 17, 979, 17, 898, 1073, 983, 23, 902, 86,
- 87, 17, 906, 907, 908, 54, 7, 911, 912, 64,
- 11, 915, 163, 816, 77, 818, 17, 543, 821, 386,
- 17, 824, 389, 17, 827, 392, 697, 830, 22, 26,
- 155, 89, 157, 1293, 50, 51, 69, 357, 30, 31,
- 427, 428, 1155, 9, 364, 371, 41, 434, 435, 7,
- 437, 17, 574, 11, 441, 442, 443, 1052, 445, 67,
- 774, 53, 54, 589, 72, 580, 592, 583, 455, 586,
- 457, 458, 150, 460, 600, 462, 463, 633, 465, 466,
- 1224, 468, 469, 1161, 92, 150, 473, 474, 475, 598,
- 1144, 478, 1079, 1080, 1081, 1082, 483, 484, 1152, 17,
- 487, 488, 20, 759, 22, 851, 149, 494, 495, 1104,
- 497, 498, 17, 500, 501, 7, 1298, 57, 1284, 790,
- 12, 26, 1304, 510, 511, 512, 547, 548, 1206, 1207,
- 517, 48, 519, 882, 521, 791, 523, 1041, 1042, 1043,
- 1044, 619, 563, 564, 622, 765, 766, 767, 53, 54,
- 547, 548, 7, 1212, 374, 1214, 11, 12, 13, 408,
- 24, 610, 17, 16, 384, 414, 563, 564, 1155, 1156,
- 1157, 697, 35, 793, 977, 17, 979, 574, 47, 546,
- 983, 17, 549, 32, 551, 21, 22, 554, 555, 33,
- 1185, 161, 162, 56, 25, 562, 156, 60, 1193, 1194,
- 1097, 161, 162, 163, 147, 148, 573, 70, 151, 152,
- 153, 62, 579, 45, 69, 582, 1120, 17, 585, 151,
- 152, 153, 893, 86, 87, 612, 26, 74, 75, 596,
- 30, 31, 619, 1220, 17, 622, 762, 624, 1146, 626,
- 154, 155, 1150, 26, 1141, 58, 59, 1144, 31, 61,
- 62, 1148, 155, 53, 54, 1152, 156, 644, 53, 54,
- 32, 33, 649, 650, 651, 29, 653, 654, 655, 656,
- 53, 54, 659, 795, 1305, 1306, 1012, 1013, 804, 1082,
- 148, 807, 808, 151, 152, 153, 147, 1282, 675, 676,
- 677, 678, 157, 680, 1289, 682, 120, 684, 122, 686,
- 124, 8, 126, 54, 1001, 369, 832, 826, 847, 346,
- 829, 1208, 695, 533, 894, 148, 703, 537, 151, 152,
- 153, 154, 155, 156, 891, 158, 997, 1224, 715, 816,
- 717, 817, 769, 720, 818, 722, 556, 724, 974, 726,
- 527, 728, 925, 926, 731, 739, 740, 734, 1088, 786,
- 1138, 1139, 739, 740, 1228, 742, 7, 1184, 1188, 746,
- 11, 12, 13, 1034, 751, 571, 17, 893, 894, 20,
- 1064, 22, 1148, 1300, 1306, 147, 148, 149, 598, 151,
- 152, 153, 154, 155, 604, 1303, 0, 7, 608, 8,
- 201, 11, 12, 13, 536, 624, 843, 17, 17, 129,
- 1097, 21, 22, 129, 129, 1076, 129, 26, 129, 1295,
- 29, 30, 31, 1299, 1300, 199, 1302, 1303, 69, 1305,
- 1306, 199, 1308, 7, 958, 478, 129, 11, 12, 13,
- 954, 955, 129, 17, 53, 54, 55, 570, 1216, 129,
- 129, 1112, 968, 129, 995, 112, 398, 129, 768, 69,
- 117, 771, 119, 195, 121, 195, 123, 597, 125, 129,
- 597, 597, 597, 989, 851, 785, 853, 986, 788, 988,
- 129, 129, 129, 129, 129, 862, 0, 731, 1034, 866,
- 1366, 868, 334, 870, 871, 872, 0, 1373, 875, 815,
- 10, 878, 1163, 339, 881, 882, 337, 1383, 18, 148,
- 149, 1387, 151, 152, 153, 154, 155, 27, 1034, 158,
- 1392, 898, 0, 900, 34, 902, 942, 37, 1097, 906,
- 907, 908, -1, -1, 911, 912, 1413, 914, 915, -1,
- 917, -1, 52, 920, -1, -1, -1, -1, 925, 926,
- 927, -1, 929, 63, 931, 932, 66, 7, 68, 769,
- 1076, 11, 12, 13, 941, 942, -1, 17, 361, 79,
- -1, 81, 22, 83, -1, 85, 786, -1, 1087, 372,
- 373, 91, 362, 363, -1, -1, 366, 367, 381, 148,
- 149, -1, 151, 152, 153, 388, 1112, -1, 391, -1,
- 380, 394, -1, -1, -1, -1, 816, 387, 818, 402,
- 390, 821, -1, 393, 824, -1, -1, 827, -1, 69,
- 830, 401, -1, 1000, -1, -1, 836, -1, 1005, 1006,
- 1007, 1008, -1, -1, 844, 1012, 1013, 1151, -1, 148,
- -1, -1, 151, 152, 153, 154, 155, -1, -1, 158,
- 1159, 148, 149, 1030, 151, 152, 153, 154, 155, -1,
- 1037, 1038, 1039, -1, 1041, 1042, 1043, 1044, -1, 1046,
- -1, 1048, -1, -1, -1, 1052, -1, 1054, -1, 1056,
- -1, -1, -1, 1060, -1, -1, -1, -1, 7, 8,
- -1, -1, 11, 12, 13, 14, -1, -1, 17, -1,
- -1, -1, -1, -1, -1, -1, -1, 26, 1222, -1,
- 29, 30, 31, 93, 94, 95, 96, 97, 98, 99,
- 100, 101, -1, 1100, -1, 1102, -1, 1104, 1105, -1,
- -1, -1, 1109, 1110, 53, 54, 55, 1114, 1115, -1,
- 1117, -1, 952, 1120, 17, 1122, -1, -1, -1, -1,
- 69, 17, 962, 26, 1131, -1, 29, 30, 31, 1136,
- 26, 1138, 1139, 29, 30, 31, -1, 977, -1, 979,
- 89, -1, -1, 983, -1, -1, -1, 43, -1, 1293,
- 53, 54, 55, 993, -1, -1, -1, 53, 54, 55,
- -1, 7, -1, -1, -1, 11, 12, 13, 14, -1,
- -1, 17, -1, 1180, -1, 1182, -1, 1184, 1185, 1186,
- 26, 1188, 1189, 29, 30, 31, 1193, 1194, -1, 1196,
- 36, -1, -1, 9, -1, -1, 1203, 1204, -1, -1,
- -1, 17, -1, -1, -1, -1, -1, 53, 54, 55,
- 26, -1, -1, 29, 30, 31, -1, 1363, -1, -1,
- 1227, 1228, 38, 69, -1, -1, 42, 43, -1, 1368,
- -1, -1, -1, -1, -1, -1, 1375, 53, 54, 55,
- -1, -1, 1082, 89, -1, 147, 148, 149, -1, 151,
- 152, 153, 154, 155, -1, -1, -1, 1097, -1, 1266,
- 1267, 1268, 1269, 1270, -1, -1, 1273, 1274, 1275, 1276,
- 1277, 9, -1, 1280, -1, 1282, -1, 1284, -1, 17,
- -1, -1, 1289, -1, -1, -1, -1, -1, 26, -1,
- -1, 29, 30, 31, -1, -1, -1, -1, -1, -1,
- 38, 1141, -1, -1, 1144, 43, -1, -1, 1148, -1,
- -1, -1, 1152, 1320, -1, 53, 54, 55, -1, -1,
- 1327, -1, 1329, -1, -1, -1, -1, -1, 1335, -1,
- 1337, -1, -1, -1, -1, 1342, -1, -1, 1345, -1,
- -1, -1, -1, 1350, -1, -1, 45, -1, -1, -1,
- -1, -1, -1, 52, 53, -1, 55, -1, -1, 58,
- -1, 60, -1, 62, -1, -1, -1, 66, 1208, 68,
- -1, 70, -1, 72, -1, 74, 1216, 76, -1, 78,
- -1, 80, -1, -1, 1224, 1392, -1, -1, -1, 88,
- 1397, 1398, -1, -1, 1401, -1, 95, -1, 97, -1,
- 99, -1, 101, -1, 103, 7, 105, 17, -1, 11,
- 12, 13, 14, -1, -1, 17, 26, -1, -1, 29,
- 30, 31, -1, -1, 26, -1, -1, 29, 30, 31,
- -1, -1, -1, 43, -1, 45, -1, -1, -1, -1,
- -1, -1, -1, 53, 54, 55, -1, -1, 147, -1,
- -1, 53, 54, 55, -1, 1295, -1, 1297, 1298, 1299,
- 1300, -1, 1302, 1303, 1304, 1305, 1306, 69, 1308, 10,
- -1, -1, -1, -1, 9, -1, 17, 18, -1, -1,
- -1, -1, 17, -1, -1, 26, 27, 89, 29, 30,
- 31, 26, 191, 34, 29, 30, 31, -1, -1, 10,
- -1, -1, 203, 38, 205, 46, 207, 18, -1, 210,
- -1, 52, 53, 54, 55, -1, 27, -1, 53, 54,
- 55, -1, 63, 34, -1, 66, -1, 68, -1, -1,
- -1, -1, -1, -1, -1, 46, -1, -1, 79, -1,
- 81, 52, 83, -1, 85, -1, -1, -1, -1, 248,
- 91, -1, 63, -1, 253, 66, 255, 68, -1, 258,
- 259, -1, -1, -1, -1, -1, -1, -1, 79, -1,
- 81, -1, 83, -1, 85, -1, -1, -1, -1, -1,
- 91, 280, 281, -1, -1, -1, 285, -1, -1, 288,
- -1, -1, -1, -1, 17, -1, 295, -1, -1, -1,
- 299, -1, -1, 26, -1, 304, 29, 30, 31, -1,
- 309, -1, -1, 36, -1, 314, -1, -1, -1, -1,
- 319, -1, 321, -1, -1, -1, 325, -1, 4, 5,
- 53, 54, 55, 332, 10, -1, 335, -1, -1, 15,
- -1, 17, 18, 344, 343, -1, -1, -1, 24, -1,
- 351, 27, 353, 354, -1, -1, -1, -1, 34, 35,
- -1, 37, -1, 39, -1, -1, -1, -1, 44, 370,
- 46, -1, -1, 49, 375, -1, 52, -1, -1, -1,
- -1, -1, -1, -1, 60, -1, -1, 63, -1, 65,
- 66, 67, 68, -1, -1, -1, -1, -1, -1, -1,
- 76, 77, -1, 79, 80, 81, -1, 83, 84, 85,
- 86, 87, 88, -1, 90, 91, 92, -1, -1, -1,
+ 57, 192, 196, 0, 0, 227, 220, 115, 558, 223,
+ 374, 131, 132, 434, 783, 434, 201, 206, 821, 242,
+ 853, 346, 893, 836, 838, 592, 1137, 841, 528, 212,
+ 0, 0, 352, 821, 411, 208, 824, 379, 742, 235,
+ 955, 697, 678, 204, 369, 133, 836, 656, 694, 243,
+ 836, 1058, 403, 159, 160, 109, 110, 111, 112, 113,
+ 4, 6, 116, 117, 118, 119, 120, 121, 122, 123,
+ 124, 125, 126, 127, 128, 997, 130, 131, 132, 136,
+ 1291, 138, 1077, 140, 141, 365, 143, 156, 1064, 158,
+ 1066, 1067, 149, 150, 0, 152, 153, 154, 155, 156,
+ 157, 158, 159, 160, 832, 162, 14, 164, 816, 17,
+ 818, 4, 147, 821, 22, 195, 824, 35, 598, 827,
+ 195, 201, 830, 25, 604, 14, 4, 184, 17, 186,
+ 187, 188, 220, 190, 49, 223, 80, 82, 192, 40,
+ 84, 19, 5, 197, 49, 6, 1357, 1142, 17, 163,
+ 28, 347, 15, 3, 6, 7, 17, 26, 73, 350,
+ 12, 40, 952, 56, 1035, 17, 952, 60, 86, 87,
+ 1146, 974, 163, 88, 368, 25, 78, 78, 56, 163,
+ 993, 89, 60, 88, 53, 54, 974, 80, 245, 977,
+ 247, 84, 163, 378, 416, 32, 33, 254, 1309, 256,
+ 89, 397, 80, 260, 261, 274, 84, 1078, 404, 266,
+ 267, 268, 269, 1220, 271, 1001, 273, 274, 275, 539,
+ 403, 82, 418, 927, 1057, 929, 603, 284, 570, 198,
+ 82, 201, 289, 290, 1149, 292, 872, 893, 163, 1161,
+ 807, 298, 878, 1114, 890, 302, 303, 598, 0, 569,
+ 307, 308, 752, 862, 61, 312, 313, 866, 17, 17,
+ 540, 989, 65, 320, 6, 74, 75, 324, 26, 977,
+ 327, 979, 552, 17, 16, 983, 470, 334, 1081, 336,
+ 337, 338, 339, 340, 1098, 342, 31, 90, 5, 24,
+ 513, 50, 51, 1081, 1082, 5, 350, 55, 15, 64,
+ 1133, 355, 356, 1218, 39, 15, 1075, 51, 53, 54,
+ 147, 148, 149, 48, 151, 152, 153, 154, 155, 9,
+ 17, 409, 376, 377, 412, 9, 41, 17, 720, 26,
+ 722, 385, 724, 17, 726, 386, 728, 155, 389, 157,
+ 82, 392, 77, 397, 61, 62, 400, 543, 38, 1053,
+ 17, 61, 150, 407, 67, 22, 836, 54, 7, 72,
+ 357, 356, 11, 12, 13, 1153, 67, 364, 17, 150,
+ 427, 428, 697, 22, 1289, 371, 1084, 434, 435, 92,
+ 437, 1294, 377, 19, 441, 442, 443, 1300, 445, 574,
+ 1159, 92, 28, 589, 583, 7, 592, 774, 455, 11,
+ 457, 458, 1106, 460, 600, 462, 463, 1220, 465, 466,
+ 633, 468, 469, 586, 57, 598, 473, 474, 475, 580,
+ 69, 478, 619, 65, 149, 622, 483, 484, 35, 71,
+ 487, 488, 851, 1202, 1203, 30, 31, 494, 495, 759,
+ 497, 498, 7, 500, 501, 17, 11, 1280, 90, 56,
+ 202, 23, 17, 510, 511, 512, 48, 209, 53, 54,
+ 517, 882, 519, 16, 521, 790, 523, 547, 548, 17,
+ 1144, 791, 547, 548, 1148, 529, 530, 1181, 26, 86,
+ 87, 24, 7, 563, 564, 1189, 1190, 12, 563, 564,
+ 610, 1142, 17, 17, 574, 546, 550, 361, 549, 1150,
+ 551, 697, 17, 554, 555, 20, 898, 22, 372, 373,
+ 902, 562, 408, 567, 906, 907, 908, 381, 414, 911,
+ 912, 1001, 573, 915, 388, 154, 155, 391, 579, 25,
+ 394, 582, 32, 120, 585, 122, 1291, 124, 402, 126,
+ 1295, 1296, 47, 1298, 1299, 596, 1301, 1302, 1208, 1304,
+ 1210, 33, 606, 7, 35, 612, 610, 11, 12, 13,
+ 14, 155, 619, 157, 62, 622, 762, 624, 893, 626,
+ 821, 45, 7, 824, 1278, 56, 827, 12, 7, 60,
+ 155, 1285, 11, 12, 13, 156, 17, 644, 17, 70,
+ 21, 22, 649, 650, 651, 29, 653, 654, 655, 656,
+ 161, 162, 659, 58, 59, 86, 87, 1362, 804, 147,
+ 795, 807, 808, 157, 1369, 69, 61, 62, 675, 676,
+ 677, 678, 374, 680, 1379, 682, 8, 684, 1383, 686,
+ 53, 54, 384, 847, 54, 826, 832, 1001, 829, 148,
+ 69, 369, 151, 152, 153, 695, 703, 765, 766, 767,
+ 1042, 1043, 1044, 1045, 151, 152, 153, 346, 715, 1139,
+ 717, 769, 1142, 720, 894, 722, 1146, 724, 816, 726,
+ 1150, 728, 997, 891, 731, 793, 817, 734, 786, 17,
+ 1301, 1302, 739, 740, 818, 742, 1013, 1014, 26, 746,
+ 925, 926, 30, 31, 751, 7, 8, 893, 894, 11,
+ 12, 13, 14, 739, 740, 17, 156, 761, 1061, 1062,
+ 1035, 161, 162, 163, 26, 53, 54, 29, 30, 31,
+ 974, 527, 1090, 974, 1204, 1224, 977, 781, 979, 783,
+ 1122, 1180, 983, 147, 148, 571, 1184, 151, 152, 153,
+ 1220, 53, 54, 55, 7, 1066, 1146, 1296, 11, 12,
+ 13, 1302, 1299, 1078, 17, 0, 624, 69, 21, 22,
+ 954, 955, 201, 536, 843, 129, 820, 129, 129, 823,
+ 129, 768, 968, 995, 771, 129, 958, 89, 832, 478,
+ 199, 533, 199, 129, 838, 537, 129, 841, 785, 1114,
+ 570, 788, 1212, 989, 851, 986, 853, 988, 362, 363,
+ 129, 129, 366, 367, 556, 862, 69, 129, 398, 866,
+ 129, 868, 1035, 870, 871, 872, 380, 195, 875, 815,
+ 195, 878, 597, 387, 881, 882, 390, 597, 597, 393,
+ 1081, 1082, 1083, 1084, 597, 129, 1161, 401, 129, 1035,
+ 129, 898, 129, 900, 8, 902, 598, 129, 129, 906,
+ 907, 908, 604, 17, 911, 912, 608, 914, 915, 1409,
+ 917, 731, 26, 920, 0, 29, 30, 31, 925, 926,
+ 927, 334, 929, 148, 931, 932, 151, 152, 153, 154,
+ 155, 156, 1078, 158, 941, 942, 337, 0, 0, 53,
+ 54, 55, 1293, 1294, 1295, 1296, 339, 1298, 1089, 1300,
+ 1388, 7, 1153, 1154, 1155, 11, 12, 13, 942, -1,
+ 17, 17, -1, -1, 20, -1, 22, 17, 1114, 26,
+ -1, -1, 29, 30, 31, -1, 26, -1, -1, 148,
+ 149, 31, 151, 152, 153, 989, 43, -1, 45, -1,
+ -1, -1, -1, 1000, 998, -1, 53, 54, 55, 1006,
+ 1007, 1008, 1009, 53, 54, 1149, 1013, 1014, -1, -1,
+ -1, 1362, -1, 69, 1365, 1216, 1157, -1, 1369, -1,
+ -1, 1372, -1, -1, 1031, 1376, -1, -1, -1, -1,
+ -1, 1038, 1039, 1040, -1, 1042, 1043, 1044, 1045, -1,
+ 1047, -1, 1049, 9, -1, -1, 1053, -1, 1055, -1,
+ 1057, 17, -1, -1, 1061, 1062, 1407, -1, -1, -1,
+ 26, 1412, -1, 29, 30, 31, -1, 769, -1, -1,
+ -1, 1075, 38, -1, 1218, 148, 42, 43, 151, 152,
+ 153, 154, 155, -1, 786, 158, 7, 53, 54, 55,
+ 11, 12, 13, -1, 1098, 1102, 17, 1104, -1, 1106,
+ 1107, -1, -1, -1, 1111, 1112, -1, -1, -1, 1116,
+ 1117, -1, 1119, -1, 816, 1122, 818, 1124, -1, 821,
+ -1, -1, 824, -1, -1, 827, 1133, -1, 830, -1,
+ -1, 1138, -1, -1, 836, -1, -1, 1141, -1, -1,
+ 1144, -1, 844, 7, 1148, 1289, -1, 11, 12, 13,
+ 14, -1, -1, 17, -1, 1159, -1, -1, -1, -1,
+ -1, -1, 26, -1, -1, 29, 30, 31, -1, 1176,
+ -1, 1178, 36, 1180, 1181, 1182, -1, 1184, 1185, -1,
+ -1, -1, 1189, 1190, -1, 1192, -1, -1, -1, 53,
+ 54, 55, 1199, 1200, -1, 112, -1, -1, 1202, 1203,
+ 117, -1, 119, -1, 121, 69, 123, 9, 125, -1,
+ -1, 1215, -1, 1359, -1, 17, 1223, 1224, -1, -1,
+ -1, -1, -1, 1364, 26, 89, -1, 29, 30, 31,
+ 1371, -1, -1, -1, -1, -1, 38, -1, -1, 148,
+ 149, 43, 151, 152, 153, 154, 155, -1, -1, 158,
+ 952, 53, 54, 55, -1, 1262, 1263, 1264, 1265, 1266,
+ 962, -1, 1269, 1270, 1271, 1272, 1273, -1, -1, 1276,
+ -1, 1278, -1, 1280, -1, 977, -1, 979, 1285, 148,
+ 149, 983, 151, 152, 153, 154, 155, -1, -1, -1,
+ 45, 993, -1, -1, -1, -1, -1, 52, 53, 1001,
+ 55, -1, -1, 58, -1, 60, -1, 62, -1, 1316,
+ -1, 66, -1, 68, -1, 70, 1323, 72, 1325, 74,
+ -1, 76, -1, 78, 1331, 80, 1333, -1, -1, -1,
+ -1, 1338, -1, 88, 1341, -1, -1, -1, -1, 1346,
+ 95, -1, 97, -1, 99, -1, 101, -1, 103, 7,
+ 105, -1, -1, 11, 12, 13, 14, -1, -1, 17,
+ -1, -1, -1, -1, -1, 17, -1, -1, 26, -1,
+ -1, 29, 30, 31, 26, -1, -1, 29, 30, 31,
+ -1, 1388, 1084, -1, -1, -1, 1393, 1394, -1, -1,
+ 1397, 43, 147, 4, 5, 53, 54, 55, -1, 10,
+ -1, 53, 54, 55, 15, -1, 17, 18, -1, -1,
+ -1, 69, -1, 24, -1, -1, 27, -1, -1, -1,
+ -1, -1, -1, 34, 35, -1, 37, -1, 39, -1,
+ -1, 89, -1, 44, -1, 46, 191, 1139, 49, -1,
+ 1142, 52, 9, -1, 1146, -1, -1, -1, 1150, 60,
+ 17, -1, 63, -1, 65, 66, 67, 68, -1, 26,
+ -1, -1, 29, 30, 31, 76, 77, -1, 79, 80,
+ 81, 38, 83, 84, 85, 86, 87, 88, -1, 90,
+ 91, 92, -1, 17, -1, -1, 53, 54, 55, -1,
+ -1, -1, 26, 248, -1, 29, 30, 31, 253, -1,
+ 255, -1, 1204, 258, 259, -1, -1, -1, -1, -1,
+ 1212, -1, -1, -1, -1, 17, -1, -1, 1220, 53,
+ 54, 55, -1, -1, 26, 280, 281, 29, 30, 31,
+ 285, -1, -1, 288, 36, -1, -1, -1, -1, -1,
+ 295, -1, -1, -1, 299, -1, -1, -1, -1, 304,
+ -1, 53, 54, 55, 309, -1, -1, -1, -1, 314,
+ -1, -1, -1, -1, 319, -1, 321, 147, 148, 149,
+ 325, 151, 152, 153, 154, 155, -1, 332, -1, -1,
+ 335, -1, -1, -1, -1, -1, -1, -1, 343, 1291,
+ -1, 1293, 1294, 1295, 1296, -1, 1298, 1299, 1300, 1301,
+ 1302, -1, 1304, -1, -1, -1, -1, -1, -1, 10,
+ -1, -1, -1, -1, -1, -1, 17, 18, -1, -1,
+ -1, -1, -1, -1, -1, 26, 27, -1, 29, 30,
+ 31, -1, -1, 34, -1, -1, -1, -1, -1, -1,
+ -1, -1, 203, -1, 205, 46, 207, -1, -1, 210,
+ -1, 52, 53, 54, 55, -1, -1, -1, -1, -1,
+ -1, -1, 63, -1, -1, 66, -1, 68, -1, 10,
+ -1, -1, -1, -1, 429, -1, 431, 18, 79, -1,
+ 81, 436, 83, -1, 85, -1, 27, -1, -1, -1,
+ 91, 446, -1, 34, -1, 10, 37, -1, 453, -1,
+ -1, -1, -1, 18, -1, -1, 461, -1, -1, -1,
+ -1, 52, 27, -1, -1, -1, -1, -1, -1, 34,
+ -1, -1, 63, -1, 479, 66, -1, 68, -1, -1,
+ 485, 46, -1, -1, -1, -1, -1, 52, 79, -1,
+ 81, -1, 83, -1, 85, -1, -1, -1, 63, -1,
+ 91, 66, -1, 68, 93, 94, 95, 96, 97, 98,
+ 99, 100, 101, -1, 79, 520, 81, -1, 83, 524,
+ 85, -1, -1, -1, -1, -1, 91, -1, -1, -1,
+ -1, -1, -1, 344, -1, -1, -1, -1, -1, -1,
+ 351, -1, 353, 354, 93, 94, 95, 96, 97, 98,
+ 99, 100, 101, 102, 103, 104, 105, 106, -1, 370,
+ -1, -1, -1, -1, 375, 107, 108, 109, 110, 111,
+ 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
+ 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
+ 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
+ 142, 143, 144, 145, 146, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 631, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 429, -1, 431, -1, -1, -1, -1, 436, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 446, -1, -1,
- -1, -1, -1, 454, 453, -1, -1, -1, -1, -1,
- -1, -1, 461, 464, -1, -1, -1, -1, -1, -1,
- 471, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 479, -1, -1, -1, -1, 486, 485, -1, -1, -1,
+ -1, -1, -1, 454, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 464, -1, 317, 318, -1, 320, -1,
+ 471, -1, -1, 668, -1, -1, -1, -1, 673, -1,
+ -1, -1, -1, -1, -1, 486, -1, -1, -1, -1,
-1, 492, 493, -1, -1, 496, -1, -1, 499, -1,
-1, -1, -1, -1, -1, 506, -1, -1, 509, -1,
-1, -1, -1, 514, -1, 516, -1, -1, -1, -1,
- -1, 520, -1, -1, 525, 524, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 538, -1, -1,
- -1, 542, 93, 94, 95, 96, 97, 98, 99, 100,
- 101, 102, 103, 104, 105, 106, 557, -1, -1, -1,
+ -1, 716, -1, 718, 525, -1, 721, -1, 723, -1,
+ 725, -1, 727, -1, -1, 730, -1, 538, -1, -1,
+ -1, 542, -1, 738, -1, -1, 741, -1, 743, -1,
+ -1, -1, -1, 748, -1, -1, 557, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 568, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 599, -1,
-1, -1, -1, -1, 605, -1, -1, -1, 609, -1,
- -1, -1, -1, -1, 615, -1, 617, -1, -1, -1,
- 621, -1, -1, -1, -1, -1, 627, -1, -1, -1,
- -1, -1, 631, 634, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 615, -1, 617, 469, -1, -1,
+ 621, -1, -1, -1, -1, 477, 627, -1, -1, -1,
+ 482, -1, -1, 634, -1, -1, -1, 489, 490, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 657, -1, -1, 660,
- 661, 662, 663, -1, -1, -1, -1, -1, -1, 668,
- -1, -1, -1, 674, 673, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 507, 657, -1, -1, 660,
+ 661, 662, 663, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 674, -1, -1, -1, -1, -1, -1,
-1, -1, 683, -1, 685, -1, -1, 688, -1, 690,
-1, 692, -1, -1, -1, -1, -1, 698, -1, -1,
+ 108, 109, 110, 111, 112, 113, 114, -1, 116, 117,
+ 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
+ 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
+ 138, 139, -1, 928, 142, 143, 144, 145, 146, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 716, -1, 718,
- -1, -1, 721, -1, 723, -1, 725, -1, 727, -1,
- -1, 730, -1, -1, -1, -1, -1, -1, -1, 738,
- -1, -1, 741, -1, 743, -1, -1, -1, -1, 748,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 770,
-1, 772, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 787, -1, 789, -1,
-1, -1, -1, -1, -1, 796, -1, 798, -1, 800,
- -1, 802, -1, -1, -1, -1, -1, 109, 110, 111,
- 112, 113, -1, -1, 116, 117, 118, 119, 120, 121,
- 122, 123, 124, 125, 126, 127, 128, -1, 130, 131,
- 132, -1, -1, -1, -1, -1, 837, -1, -1, -1,
- -1, -1, -1, -1, 845, -1, -1, -1, -1, -1,
+ -1, 802, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 666, 667, -1, -1, -1, -1,
+ 672, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 1028, -1, 687, 837, 689, -1, 691,
+ -1, 693, -1, -1, 845, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 317, 318, -1, 320, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 1060, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 192, -1, -1, -1, -1, 197, -1, -1, -1, -1,
- -1, -1, -1, -1, 905, -1, -1, -1, -1, 910,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 922, -1, -1, -1, -1, -1, -1, -1, 928,
+ -1, -1, 1097, -1, 905, -1, -1, -1, 1103, 910,
+ 1105, -1, -1, 1108, -1, -1, -1, -1, -1, -1,
+ -1, 922, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 933, -1, -1, -1, -1, -1, -1, 940,
- -1, -1, 943, 944, 945, 946, 947, 948, -1, -1,
+ 1135, -1, 943, 944, 945, 946, 947, 948, -1, -1,
951, -1, 953, -1, -1, 956, -1, -1, -1, -1,
961, -1, 963, 964, 965, -1, -1, -1, -1, -1,
- -1, 972, 107, 108, 109, 110, 111, 112, 113, 114,
- 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
- 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
- 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
- 145, 146, -1, 469, -1, -1, -1, -1, -1, -1,
- -1, 477, -1, -1, -1, -1, 482, -1, 1027, -1,
- -1, -1, -1, 489, 490, 1036, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 350, -1,
- 1051, 507, 1053, 355, 356, -1, -1, -1, -1, 1058,
- -1, -1, -1, -1, -1, -1, -1, -1, 1069, 1070,
- -1, -1, -1, -1, 376, 377, -1, -1, -1, -1,
- -1, -1, -1, 385, -1, -1, -1, -1, 1089, -1,
- -1, -1, -1, 1094, -1, 397, 1095, 1098, 400, -1,
- -1, -1, 1101, -1, 1103, 407, -1, 1106, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 1133, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 1160,
- -1, 1162, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 1177, -1,
- 1179, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 1195, -1, -1, -1,
- 1201, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 666, 667, -1, -1, 1215, -1, 672, -1, -1, -1,
- -1, -1, 1223, -1, 1225, 1226, -1, 529, 530, -1,
- -1, 687, -1, 689, -1, 691, -1, 693, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 550, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 567, -1, -1, -1, -1,
- 1271, -1, -1, -1, -1, -1, -1, 1278, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 1290, -1, 1294, -1, 1296, -1, -1, -1, -1,
- -1, -1, -1, -1, 606, -1, -1, -1, 610, 1310,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 1321, -1, -1, -1, -1, -1, -1, 1328,
- -1, -1, -1, -1, -1, -1, -1, 1336, -1, -1,
+ -1, 972, -1, -1, -1, -1, -1, -1, 1173, -1,
+ 1175, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 1191, -1, -1, -1,
+ -1, 1002, -1, -1, -1, -1, 858, 859, 860, 861,
+ -1, 863, 864, -1, -1, -1, -1, -1, -1, -1,
+ -1, 873, -1, 875, 876, -1, -1, -1, -1, -1,
+ -1, 883, 884, -1, -1, -1, 1037, -1, -1, -1,
+ -1, -1, -1, -1, 896, -1, -1, -1, -1, -1,
+ -1, 1052, -1, 1054, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 1357, 1358, -1, -1,
- -1, 108, 109, 110, 111, 112, 113, 114, -1, 116,
- 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
- 127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
- 137, 138, 139, -1, 1395, 142, 143, 144, 145, 146,
- -1, 1402, 858, 859, 860, 861, -1, 863, 864, -1,
- -1, -1, -1, -1, -1, -1, -1, 873, -1, 875,
- 876, -1, -1, 1424, -1, -1, -1, 883, 884, -1,
+ 1071, 1072, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 896, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 761,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 781,
- -1, 783, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 820, -1,
- -1, 823, -1, -1, -1, -1, -1, -1, -1, -1,
- 832, -1, -1, -1, -1, -1, 838, -1, -1, 841,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 1011, -1, -1, -1, -1,
- 1016, 1017, -1, 1019, -1, -1, -1, -1, -1, 1025,
- -1, -1, 1028, 107, 108, 109, 110, 111, 112, 113,
- 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
- 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
- 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
- 144, 145, 146, -1, -1, -1, -1, -1, -1, -1,
+ 1091, 1286, -1, -1, -1, 1096, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 1317, -1, -1, -1, -1, -1, -1, 1324,
+ -1, -1, -1, -1, -1, -1, -1, 1332, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 1158, -1, 1160,
+ 1012, -1, -1, -1, -1, 1017, 1018, -1, 1020, -1,
+ -1, -1, -1, -1, 1026, -1, -1, 1029, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 1197, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 1211, -1, -1, -1, -1, -1, -1, -1, 1219, -1,
+ 1221, 1222, 107, 108, 109, 110, 111, 112, 113, 114,
+ 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+ 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
+ 145, 146, -1, -1, -1, -1, 1267, -1, -1, -1,
+ -1, -1, -1, 1274, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 1290,
+ -1, 1292, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 1306, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 989, -1, -1,
- -1, -1, -1, -1, -1, -1, 998, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 1186, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 1201,
+ -1, -1, 1353, 1354, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 1190, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 1205,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 1391, -1, -1, -1, -1, -1, -1, 1398, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 1073, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 1420,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 1096, -1, -1, -1, -1, -1,
+ 1282, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 1310, -1,
+ -1, 1313, 1314, -1, 1316, -1, -1, -1, 1320, 1321,
+ -1, 1323, -1, 1325, -1, -1, 1328, 1329, -1, 1331,
+ -1, 1333, -1, 1335, 1336, -1, 1338, 1339, -1, 1341,
+ 1342, -1, 1344, -1, 1346, 1347, -1, 1349, -1, 1351,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 1286, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 1143, -1, -1, 1146, -1, -1, -1, 1150, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 1314, 1161,
- -1, 1317, 1318, -1, 1320, -1, -1, -1, 1324, 1325,
- -1, 1327, -1, 1329, -1, -1, 1332, 1333, -1, 1335,
- -1, 1337, -1, 1339, 1340, -1, 1342, 1343, -1, 1345,
- 1346, -1, 1348, -1, 1350, 1351, -1, 1353, -1, 1355,
- -1, -1, -1, -1, 1206, 1207, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 1219, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 1394, -1,
- 1396, 1397, -1, 1399, 1400, 1401, -1, 1403, 1404, 1405,
- 1406, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 1423, -1, 1425
+ -1, -1, -1, -1, -1, -1, -1, -1, 1390, -1,
+ 1392, 1393, -1, 1395, 1396, 1397, -1, 1399, 1400, 1401,
+ 1402, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 1419, -1, 1421
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@@ -2030,7 +1977,7 @@ static const yytype_uint16 yystos[] =
238, 205, 361, 268, 418, 372, 268, 418, 372, 268,
418, 372, 180, 184, 186, 205, 414, 412, 205, 417,
418, 372, 467, 180, 473, 205, 487, 490, 25, 422,
- 423, 490, 47, 510, 515, 167, 180, 204, 204, 202,
+ 423, 490, 47, 510, 514, 167, 180, 204, 204, 202,
202, 308, 311, 204, 309, 202, 204, 204, 315, 204,
204, 204, 328, 202, 202, 203, 204, 204, 204, 204,
202, 204, 204, 203, 204, 204, 204, 345, 204, 259,
@@ -2078,49 +2025,49 @@ static const yytype_uint16 yystos[] =
198, 194, 259, 209, 204, 209, 203, 204, 209, 204,
209, 209, 203, 204, 209, 209, 204, 209, 204, 204,
203, 482, 482, 204, 207, 202, 207, 204, 204, 203,
- 203, 204, 204, 512, 203, 203, 203, 203, 203, 203,
- 203, 238, 425, 429, 203, 172, 267, 267, 203, 373,
- 203, 7, 11, 12, 13, 238, 256, 257, 386, 203,
- 203, 203, 180, 195, 196, 203, 218, 220, 223, 229,
- 234, 229, 234, 234, 234, 169, 226, 169, 233, 184,
- 205, 237, 494, 167, 385, 205, 431, 204, 383, 429,
- 513, 516, 204, 204, 204, 204, 259, 419, 419, 259,
- 259, 259, 259, 202, 259, 204, 168, 198, 203, 204,
- 204, 204, 204, 209, 209, 209, 209, 204, 204, 230,
- 203, 207, 203, 204, 330, 507, 202, 204, 514, 8,
- 282, 284, 281, 284, 282, 283, 284, 203, 203, 266,
- 281, 180, 197, 198, 223, 229, 234, 229, 234, 234,
- 234, 169, 227, 260, 203, 7, 11, 12, 13, 14,
- 69, 426, 427, 428, 203, 202, 384, 208, 429, 516,
- 203, 204, 272, 202, 204, 270, 202, 207, 204, 275,
- 202, 204, 204, 392, 198, 204, 204, 204, 209, 204,
- 330, 202, 504, 204, 514, 514, 7, 11, 12, 13,
- 14, 69, 89, 208, 252, 253, 254, 255, 261, 265,
- 305, 205, 285, 208, 281, 305, 285, 208, 283, 285,
- 267, 36, 208, 305, 393, 394, 229, 234, 234, 234,
- 169, 228, 203, 266, 203, 385, 202, 202, 204, 204,
- 270, 207, 204, 275, 204, 259, 204, 207, 207, 202,
- 204, 203, 204, 262, 204, 505, 259, 266, 266, 208,
- 108, 109, 110, 111, 112, 113, 114, 116, 117, 118,
- 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
- 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
- 139, 142, 143, 144, 145, 146, 298, 107, 115, 140,
- 141, 286, 289, 298, 107, 115, 140, 141, 291, 294,
- 298, 203, 393, 205, 395, 234, 267, 203, 208, 494,
- 507, 203, 203, 204, 262, 204, 296, 204, 204, 204,
- 204, 203, 204, 204, 204, 204, 204, 203, 204, 207,
- 330, 259, 207, 202, 267, 203, 22, 238, 261, 297,
- 303, 304, 203, 20, 238, 253, 287, 299, 300, 303,
- 287, 21, 238, 253, 288, 301, 302, 303, 288, 238,
- 253, 290, 303, 238, 292, 299, 303, 287, 238, 293,
- 301, 303, 293, 238, 295, 303, 203, 504, 259, 259,
- 259, 204, 259, 202, 259, 259, 204, 259, 202, 204,
- 259, 259, 259, 204, 259, 202, 204, 259, 259, 259,
- 204, 259, 259, 204, 259, 259, 259, 204, 259, 259,
- 259, 259, 203, 203, 261, 180, 253, 303, 169, 253,
- 253, 303, 169, 253, 253, 303, 303, 505, 259, 203,
- 259, 204, 259, 204, 259, 259, 204, 259, 203, 259,
- 259, 259, 259, 253, 258, 253, 259, 203, 259
+ 203, 204, 513, 204, 512, 203, 203, 203, 203, 203,
+ 203, 203, 238, 425, 429, 203, 172, 267, 267, 203,
+ 373, 203, 7, 11, 12, 13, 238, 256, 257, 386,
+ 203, 203, 203, 180, 195, 196, 203, 218, 220, 223,
+ 229, 234, 229, 234, 234, 234, 169, 226, 169, 233,
+ 184, 205, 237, 494, 167, 385, 205, 431, 204, 208,
+ 383, 429, 515, 203, 204, 204, 204, 204, 259, 419,
+ 419, 259, 259, 259, 259, 202, 259, 204, 168, 198,
+ 203, 204, 204, 204, 204, 209, 209, 209, 209, 204,
+ 204, 230, 203, 207, 203, 204, 330, 507, 202, 513,
+ 513, 8, 282, 284, 281, 284, 282, 283, 284, 203,
+ 203, 266, 281, 180, 197, 198, 223, 229, 234, 229,
+ 234, 234, 234, 169, 227, 260, 203, 7, 11, 12,
+ 13, 14, 69, 426, 427, 428, 203, 202, 384, 204,
+ 272, 202, 204, 270, 202, 207, 204, 275, 202, 204,
+ 204, 392, 198, 204, 204, 204, 209, 204, 330, 202,
+ 504, 204, 7, 11, 12, 13, 14, 69, 89, 208,
+ 252, 253, 254, 255, 261, 265, 305, 205, 285, 208,
+ 281, 305, 285, 208, 283, 285, 267, 36, 208, 305,
+ 393, 394, 229, 234, 234, 234, 169, 228, 203, 266,
+ 203, 385, 202, 202, 204, 204, 270, 207, 204, 275,
+ 204, 259, 204, 207, 207, 202, 204, 203, 204, 262,
+ 204, 505, 259, 266, 266, 208, 108, 109, 110, 111,
+ 112, 113, 114, 116, 117, 118, 119, 120, 121, 122,
+ 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
+ 133, 134, 135, 136, 137, 138, 139, 142, 143, 144,
+ 145, 146, 298, 107, 115, 140, 141, 286, 289, 298,
+ 107, 115, 140, 141, 291, 294, 298, 203, 393, 205,
+ 395, 234, 267, 203, 208, 494, 507, 203, 203, 204,
+ 262, 204, 296, 204, 204, 204, 204, 203, 204, 204,
+ 204, 204, 204, 203, 204, 207, 330, 259, 207, 202,
+ 267, 203, 22, 238, 261, 297, 303, 304, 203, 20,
+ 238, 253, 287, 299, 300, 303, 287, 21, 238, 253,
+ 288, 301, 302, 303, 288, 238, 253, 290, 303, 238,
+ 292, 299, 303, 287, 238, 293, 301, 303, 293, 238,
+ 295, 303, 203, 504, 259, 259, 259, 204, 259, 202,
+ 259, 259, 204, 259, 202, 204, 259, 259, 259, 204,
+ 259, 202, 204, 259, 259, 259, 204, 259, 259, 204,
+ 259, 259, 259, 204, 259, 259, 259, 259, 203, 203,
+ 261, 180, 253, 303, 169, 253, 253, 303, 169, 253,
+ 253, 303, 303, 505, 259, 203, 259, 204, 259, 204,
+ 259, 259, 204, 259, 203, 259, 259, 259, 259, 253,
+ 258, 253, 259, 203, 259
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
@@ -2195,7 +2142,7 @@ static const yytype_uint16 yyr1[] =
497, 498, 499, 499, 499, 499, 499, 500, 501, 502,
502, 503, 504, 504, 504, 504, 505, 505, 505, 505,
506, 507, 508, 509, 510, 511, 511, 512, 513, 513,
- 514, 514, 514, 514, 515, 516
+ 513, 513, 514, 515
};
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
@@ -2269,8 +2216,8 @@ static const yytype_uint8 yyr2[] =
4, 1, 4, 1, 4, 1, 4, 1, 4, 3,
1, 6, 0, 3, 3, 3, 2, 1, 4, 3,
1, 16, 1, 1, 1, 1, 0, 6, 3, 2,
- 1, 1, 9, 1, 4, 3, 1, 6, 1, 1,
- 0, 3, 3, 2, 1, 7
+ 1, 1, 9, 1, 4, 3, 1, 4, 0, 3,
+ 3, 2, 1, 7
};
diff --git a/src/wkt2_grammar.y b/src/wkt2_grammar.y
index fc2e8bf0..b17361e2 100644
--- a/src/wkt2_grammar.y
+++ b/src/wkt2_grammar.y
@@ -1602,12 +1602,12 @@ abridged_coordinate_transformation_next:
abridged_coordinate_transformation_end:
wkt_separator operation_method
- wkt_separator
- abridged_parameter_or_parameter_file
+// At least one parameter required by WKT2. But relax that to allow things like METHOD["PROJ-based operation method: +proj=...."]
+// wkt_separator abridged_parameter_or_parameter_file
opt_end_abridged_coordinate_transformation
right_delimiter
-abridged_parameter_or_parameter_file: abridged_transformation_parameter | operation_parameter_file
+//abridged_parameter_or_parameter_file: abridged_transformation_parameter | operation_parameter_file
opt_end_abridged_coordinate_transformation:
| wkt_separator abridged_transformation_parameter opt_end_abridged_coordinate_transformation
diff --git a/test/unit/test_operation.cpp b/test/unit/test_operation.cpp
index b40ebd5e..74bddee8 100644
--- a/test/unit/test_operation.cpp
+++ b/test/unit/test_operation.cpp
@@ -5564,3 +5564,67 @@ TEST(operation,
"+step +proj=unitconvert +xy_in=rad +xy_out=deg "
"+step +proj=axisswap +order=2,1");
}
+
+// ---------------------------------------------------------------------------
+
+TEST(operation, export_of_boundCRS_with_proj_string_method) {
+
+ auto wkt =
+ "BOUNDCRS[\n"
+ " SOURCECRS[\n"
+ " GEOGCRS[\"unknown\",\n"
+ " DATUM[\"Unknown based on GRS80 ellipsoid\",\n"
+ " ELLIPSOID[\"GRS 1980\",6378137,298.257222101,\n"
+ " LENGTHUNIT[\"metre\",1],\n"
+ " ID[\"EPSG\",7019]]],\n"
+ " PRIMEM[\"Greenwich\",0,\n"
+ " ANGLEUNIT[\"degree\",0.0174532925199433],\n"
+ " ID[\"EPSG\",8901]],\n"
+ " CS[ellipsoidal,2],\n"
+ " AXIS[\"longitude\",east,\n"
+ " ORDER[1],\n"
+ " ANGLEUNIT[\"degree\",0.0174532925199433,\n"
+ " ID[\"EPSG\",9122]]],\n"
+ " AXIS[\"latitude\",north,\n"
+ " ORDER[2],\n"
+ " ANGLEUNIT[\"degree\",0.0174532925199433,\n"
+ " ID[\"EPSG\",9122]]]]],\n"
+ " TARGETCRS[\n"
+ " GEOGCRS[\"WGS 84\",\n"
+ " DATUM[\"World Geodetic System 1984\",\n"
+ " ELLIPSOID[\"WGS 84\",6378137,298.257223563,\n"
+ " LENGTHUNIT[\"metre\",1]]],\n"
+ " PRIMEM[\"Greenwich\",0,\n"
+ " ANGLEUNIT[\"degree\",0.0174532925199433]],\n"
+ " CS[ellipsoidal,2],\n"
+ " AXIS[\"geodetic latitude (Lat)\",north,\n"
+ " ORDER[1],\n"
+ " ANGLEUNIT[\"degree\",0.0174532925199433]],\n"
+ " AXIS[\"geodetic longitude (Lon)\",east,\n"
+ " ORDER[2],\n"
+ " ANGLEUNIT[\"degree\",0.0174532925199433]],\n"
+ " ID[\"EPSG\",4326]]],\n"
+ " ABRIDGEDTRANSFORMATION[\"Transformation from unknown to WGS84\",\n"
+ " METHOD[\"PROJ-based operation method: +proj=pipeline +step "
+ "+proj=unitconvert +xy_in=deg +xy_out=rad +step +proj=axisswap "
+ "+order=2,1 "
+ "+step +proj=cart +ellps=GRS80 +step +proj=helmert "
+ "+convention=coordinate_frame +exact +step +inv +proj=cart "
+ "+ellps=WGS84 "
+ "+step +proj=axisswap +order=2,1 "
+ "+step +proj=unitconvert +xy_in=rad +xy_out=deg\"]]]";
+
+ auto obj = WKTParser().createFromWKT(wkt);
+ auto boundCRS = nn_dynamic_pointer_cast<BoundCRS>(obj);
+ ASSERT_TRUE(boundCRS != nullptr);
+ EXPECT_EQ(boundCRS->transformation()->exportToPROJString(
+ PROJStringFormatter::create().get()),
+ "+proj=pipeline "
+ "+step +proj=unitconvert +xy_in=deg +xy_out=rad "
+ "+step +proj=axisswap +order=2,1 "
+ "+step +proj=cart +ellps=GRS80 "
+ "+step +proj=helmert +convention=coordinate_frame +exact "
+ "+step +inv +proj=cart +ellps=WGS84 "
+ "+step +proj=axisswap +order=2,1 "
+ "+step +proj=unitconvert +xy_in=rad +xy_out=deg");
+}