Adds max-row-errors parameter to kea-dhcp4/6.
+1510. [security] tmark
+ Added a new parameter, "max-row-errors", to Memfile lease database
+ configuration for kea-dhcp4 and kea-dhcp6. This parameter can be
+ used to limit the number of rows discarded due to error during
+ lease file loading after which the server will abandon the effort
+ and exit. The default value of 0 disables the limit.
+ CVE:2019-6474
+ (Gitlab #805,!9-p, git TBD)
+
1508. [security] tmark
Prevent the DHCP servers from asserting when malformed
hostname or FQDN options are received. Now the servers will
// infinitely).
"lfc-interval": 3600,
+ // Maximum number of lease file read errors allowed before
+ // loading the file is abandoned. Defaults to 0 (no limit).
+ "max-row-errors": 100,
+
// Name of the lease file. In case of database it specifies the
// database name.
"name": "/tmp/kea-dhcp4.csv",
// September 2016, four database backends are supported: MySQL,
// PostgreSQL, Cassandra, and the in-memory database, Memfile.
// We'll use memfile because it doesn't require any prior set up.
+// Note, we're setting the maximum number of row read errors to 100,
+// (defaults to 0, meaning unlimited).
"lease-database": {
"type": "memfile",
- "lfc-interval": 3600
+ "lfc-interval": 3600,
+ "max-row-errors": 100
},
// The following parameters control processing expired leases. Expired
// infinitely).
"lfc-interval": 3600,
+ // Maximum number of lease file read errors allowed before
+ // loading the file is abandoned. Defaults to 0 (no limit).
+ "max-row-errors": 100,
+
// Name of the lease file. In case of database it specifies the
// database name.
"name": "/tmp/kea-dhcp6.csv",
// September 2016, four database backends are supported: MySQL,
// PostgreSQL, Cassandra, and the in-memory database, Memfile.
// We'll use memfile because it doesn't require any prior set up.
+// Note, we're setting the maximum number of row read errors to 100,
+// (defaults to 0, meaning unlimited).
"lease-database": {
"type": "memfile",
- "lfc-interval": 3600
+ "lfc-interval": 3600,
+ "max-row-errors": 100
},
// The following parameters control processing expired leases. Expired leases
disables the LFC.</simpara>
</listitem>
+ <listitem>
+ <simpara><command>max-row-errors</command>: when the server loads a
+ lease file, it is processed row by row, each row contaning a single
+ lease. If a row is flawed and cannot be processed correctly the server
+ will log it, discard the row, and go on to the next row. This parameter
+ can be used to set a limit on the number of such discards that may occur
+ after which the server will abandon the effort and exit. The default
+ value of <userinput>0</userinput> disables the limit and allows the
+ server to process the entire file, regardless of how many rows are
+ discarded.
+ </simpara>
+ </listitem>
+
</itemizedlist>
</para>
<userinput>"type": "memfile"</userinput>,
<userinput>"persist": true</userinput>,
<userinput>"name": "/tmp/kea-leases4.csv",</userinput>
- <userinput>"lfc-interval": 1800</userinput>
+ <userinput>"lfc-interval": 1800</userinput>,
+ <userinput>"max-row-errors": 100</userinput>
}
}
</screen>
This configuration selects the <filename>/tmp/kea-leases4.csv</filename> as
the storage for lease information and enables persistence (writing lease updates
to this file). It also configures the backend perform the periodic cleanup
- of the lease files, executed every 30 minutes.
+ of the lease files, executed every 30 minutes. sets the maximum number of row
+ errors to 100.
</para>
<para>It is important to know how the lease file contents are organized
disables the LFC.</simpara>
</listitem>
+ <listitem>
+ <simpara><command>max-row-errors</command>: when the server loads a
+ lease file, it is processed row by row, each row contaning a single
+ lease. If a row is flawed and cannot be processed correctly the server
+ will log it, discard the row, and go on to the next row. This parameter
+ can be used to set a limit on the number of such discards that may occur
+ after which the server will abandon the effort and exit. The default
+ value of <userinput>0</userinput> disables the limit and allows the
+ server to process the entire file, regardless of how many rows are
+ discarded.
+ </simpara>
+ </listitem>
+
</itemizedlist>
</para>
<userinput>"type": "memfile"</userinput>,
<userinput>"persist": true</userinput>,
<userinput>"name": "/tmp/kea-leases6.csv"</userinput>,
- <userinput>"lfc-interval": 1800</userinput>
+ <userinput>"lfc-interval": 1800</userinput>,
+ <userinput>"max-row-errors": 100</userinput>
}
}
</screen>
This configuration selects the <filename>/tmp/kea-leases6.csv</filename> as
the storage for lease information and enables persistence (writing lease updates
to this file). It also configures the backend perform the periodic cleanup
- of the lease files, executed every 30 minutes.
+ of the lease file every 30 minutes and sets the maximum number of row
+ errors to 100.
</para>
<para>It is important to know how the lease file contents are organized
-#line 1 "dhcp4_lexer.cc"
+#line 2 "dhcp4_lexer.cc"
-#line 3 "dhcp4_lexer.cc"
+#line 4 "dhcp4_lexer.cc"
#define YY_INT_ALIGNED short int
/* %% [3.0] code to copy yytext_ptr to yytext[] goes here, if %array \ */\
(yy_c_buf_p) = yy_cp;
/* %% [4.0] data tables for the DFA and the user's section 1 definitions go here */
-#define YY_NUM_RULES 175
-#define YY_END_OF_BUFFER 176
+#define YY_NUM_RULES 176
+#define YY_END_OF_BUFFER 177
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static const flex_int16_t yy_accept[1468] =
+static const flex_int16_t yy_accept[1478] =
{ 0,
- 168, 168, 0, 0, 0, 0, 0, 0, 0, 0,
- 176, 174, 10, 11, 174, 1, 168, 165, 168, 168,
- 174, 167, 166, 174, 174, 174, 174, 174, 161, 162,
- 174, 174, 174, 163, 164, 5, 5, 5, 174, 174,
- 174, 10, 11, 0, 0, 157, 0, 0, 0, 0,
+ 169, 169, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 175, 10, 11, 175, 1, 169, 166, 169, 169,
+ 175, 168, 167, 175, 175, 175, 175, 175, 162, 163,
+ 175, 175, 175, 164, 165, 5, 5, 5, 175, 175,
+ 175, 10, 11, 0, 0, 158, 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, 1,
- 168, 168, 0, 167, 168, 3, 2, 6, 0, 168,
+ 169, 169, 0, 168, 169, 3, 2, 6, 0, 169,
0, 0, 0, 0, 0, 0, 4, 0, 0, 9,
- 0, 158, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 160, 0, 0, 0,
+ 0, 159, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 161, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 8, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 159, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 160, 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, 67, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 68, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 173, 171, 0,
- 170, 169, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 174, 172, 0,
+ 171, 170, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 137, 0, 136, 0, 0, 73, 0, 0,
+ 0, 0, 138, 0, 137, 0, 0, 74, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 34,
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, 70, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 71, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 17,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 18, 0, 0, 0, 0, 172, 169, 0,
+ 0, 0, 18, 0, 0, 0, 0, 173, 170, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 138,
- 0, 0, 140, 0, 0, 0, 0, 0, 0, 0,
- 0, 74, 0, 0, 0, 0, 0, 0, 59, 0,
- 0, 0, 0, 0, 91, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 139,
+ 0, 0, 141, 0, 0, 0, 0, 0, 0, 0,
+ 0, 75, 0, 0, 0, 0, 0, 0, 60, 0,
+ 0, 0, 0, 0, 92, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 37, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 58, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 62, 0, 38,
+ 0, 0, 0, 0, 59, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 63, 0, 38,
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, 88, 30, 0, 0, 35,
- 0, 0, 0, 0, 0, 0, 0, 0, 12, 145,
- 0, 142, 0, 141, 0, 0, 0, 101, 0, 0,
+ 0, 0, 0, 0, 0, 89, 30, 0, 0, 35,
+ 0, 0, 0, 0, 0, 0, 0, 0, 12, 146,
+ 0, 143, 0, 142, 0, 0, 0, 102, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 81, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 82, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 32, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 61, 0, 0, 0,
- 0, 0, 0, 0, 0, 102, 0, 0, 0, 0,
+ 0, 0, 0, 0, 32, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 62, 0, 0,
+ 0, 0, 0, 0, 0, 0, 103, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 97, 0,
- 0, 0, 0, 0, 0, 0, 7, 0, 0, 143,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 98,
+ 0, 0, 0, 0, 0, 0, 0, 7, 0, 0,
+ 144, 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, 73, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 72, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 83,
- 0, 0, 0, 0, 0, 0, 0, 0, 79, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 84, 0, 0, 0, 0, 0, 0, 0, 0,
+ 80, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 65, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 76, 0, 0, 0,
- 0, 0, 0, 0, 0, 64, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 66, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 77, 0,
+ 0, 0, 0, 0, 0, 0, 0, 65, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 96, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 95, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 107, 77,
- 0, 0, 0, 0, 82, 31, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 39, 0, 0,
+ 108, 78, 0, 0, 0, 0, 0, 83, 31, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 39, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 54, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 146, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 55, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 147, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 69, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 96, 0, 0, 0, 0, 0,
- 42, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 36,
- 0, 0, 0, 29, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 70, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 97, 0, 0,
+ 0, 0, 0, 42, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 84, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 36, 0, 0, 0, 29, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 85, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 93, 0, 0, 0, 0, 0, 0, 0, 0,
- 120, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 66, 0, 0, 0,
+ 0, 0, 0, 0, 0, 94, 0, 0, 0, 0,
+ 0, 0, 0, 0, 121, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 67, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 125, 0, 0, 123, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 150, 0,
- 0, 0, 0, 0, 0, 94, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 23, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 126, 0, 0,
+ 124, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 151, 0, 0, 0, 0, 0, 0,
- 0, 0, 98, 80, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 92,
- 22, 0, 103, 0, 0, 0, 0, 0, 0, 0,
- 0, 129, 0, 0, 0, 0, 56, 0, 0, 0,
- 0, 0, 106, 33, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 53,
+ 95, 0, 0, 0, 0, 0, 0, 99, 81, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 60, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 100, 0,
+ 0, 0, 0, 0, 93, 22, 0, 104, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 130, 0, 0,
+ 0, 0, 57, 0, 0, 0, 0, 0, 107, 33,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 54, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 61,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 101, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 154, 0, 57,
- 71, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 50, 0, 0, 0, 0, 0, 0, 0, 126, 0,
- 124, 0, 118, 117, 0, 46, 0, 21, 0, 0,
- 0, 0, 0, 139, 0, 0, 87, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 115, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 104, 15,
- 0, 40, 0, 0, 0, 0, 0, 128, 0, 0,
- 0, 0, 0, 0, 51, 0, 0, 99, 0, 0,
- 0, 0, 90, 0, 0, 0, 0, 0, 0, 63,
-
- 0, 148, 0, 147, 0, 153, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 155, 0, 58, 72, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 51, 0, 0,
+ 0, 0, 0, 0, 0, 127, 0, 125, 0, 119,
+ 118, 0, 46, 0, 21, 0, 0, 0, 0, 0,
+ 140, 0, 0, 88, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 116, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 105, 15, 0, 40, 0,
+ 0, 0, 0, 0, 0, 129, 0, 0, 0, 0,
+ 0, 0, 52, 0, 0, 100, 0, 0, 0, 0,
+
+ 91, 0, 0, 0, 0, 0, 0, 64, 0, 149,
+ 0, 148, 0, 154, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 14, 0, 0, 45,
- 0, 0, 0, 0, 156, 85, 27, 0, 0, 47,
- 116, 0, 0, 0, 151, 121, 0, 0, 0, 0,
- 0, 0, 0, 0, 25, 0, 0, 24, 0, 127,
- 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 49,
+ 0, 0, 0, 0, 0, 14, 0, 0, 45, 0,
+ 0, 0, 0, 157, 86, 27, 0, 0, 47, 117,
+ 0, 0, 0, 152, 122, 0, 0, 0, 0, 0,
+ 0, 0, 0, 25, 0, 0, 24, 0, 128, 0,
+ 0, 0, 49, 0, 0, 79, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 50,
0, 0, 0, 41, 0, 0, 0, 0, 0, 0,
- 0, 105, 0, 0, 0, 26, 0, 152, 0, 0,
+ 0, 106, 0, 0, 0, 26, 0, 153, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 44,
- 0, 0, 20, 155, 55, 0, 149, 144, 28, 0,
- 0, 16, 0, 0, 133, 0, 0, 0, 0, 0,
- 0, 113, 0, 89, 0, 0, 0, 0, 0, 0,
- 0, 0, 68, 0, 0, 0, 0, 0, 0, 0,
- 0, 134, 13, 0, 0, 0, 0, 0, 122, 0,
- 0, 0, 0, 0, 0, 119, 0, 0, 0, 0,
- 0, 112, 0, 19, 0, 130, 0, 0, 0, 0,
-
- 0, 0, 0, 0, 111, 0, 0, 48, 0, 0,
- 43, 132, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 20, 156, 56, 0, 150, 145, 28, 0,
+ 0, 16, 0, 0, 134, 0, 0, 0, 0, 0,
+ 0, 114, 0, 90, 0, 0, 0, 0, 0, 0,
+ 0, 0, 69, 0, 0, 0, 0, 0, 0, 0,
+ 0, 135, 13, 0, 0, 0, 0, 0, 123, 0,
+ 0, 0, 0, 0, 0, 120, 0, 0, 0, 0,
+
+ 0, 113, 0, 19, 0, 131, 0, 0, 0, 0,
+ 0, 0, 0, 0, 112, 0, 0, 48, 0, 0,
+ 43, 133, 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, 131, 0, 86,
- 0, 0, 0, 0, 0, 0, 109, 114, 52, 0,
- 0, 0, 0, 108, 0, 0, 135, 0, 0, 0,
- 0, 0, 75, 0, 0, 110, 0
+ 0, 0, 0, 0, 0, 0, 0, 132, 0, 87,
+ 0, 0, 0, 0, 0, 0, 110, 115, 53, 0,
+ 0, 0, 0, 109, 0, 0, 136, 0, 0, 0,
+ 0, 0, 76, 0, 0, 111, 0
} ;
static const YY_CHAR yy_ec[256] =
3
} ;
-static const flex_int16_t yy_base[1480] =
+static const flex_int16_t yy_base[1490] =
{ 0,
0, 70, 19, 29, 41, 49, 52, 58, 87, 95,
- 1830, 1831, 32, 1826, 141, 0, 201, 1831, 206, 88,
- 11, 213, 1831, 1808, 114, 25, 2, 6, 1831, 1831,
- 73, 11, 17, 1831, 1831, 1831, 104, 1814, 1769, 0,
- 1806, 107, 1821, 217, 247, 1831, 1765, 185, 1764, 1770,
- 93, 58, 1762, 91, 211, 195, 14, 273, 195, 1761,
- 181, 275, 207, 211, 76, 68, 188, 1770, 232, 219,
- 296, 284, 280, 1753, 204, 302, 322, 305, 1772, 0,
- 349, 357, 370, 377, 362, 1831, 0, 1831, 301, 342,
- 296, 325, 201, 346, 359, 224, 1831, 1769, 1808, 1831,
-
- 353, 1831, 390, 1797, 357, 1755, 1765, 369, 220, 1760,
- 362, 288, 364, 374, 221, 1803, 0, 441, 366, 1747,
- 1744, 1748, 1744, 1752, 360, 1748, 1737, 1738, 76, 1754,
- 1737, 1746, 1746, 365, 1737, 365, 1738, 1736, 357, 1782,
- 1786, 1728, 1779, 1721, 1744, 1741, 1741, 1735, 268, 1728,
- 1721, 1726, 1720, 371, 1731, 1724, 1715, 1714, 1728, 379,
- 1714, 384, 1730, 1707, 415, 387, 419, 1728, 1725, 1726,
- 1724, 390, 1706, 1708, 420, 1700, 1717, 1709, 0, 386,
- 439, 425, 396, 440, 453, 1708, 1831, 0, 1751, 460,
- 1698, 1701, 437, 452, 1709, 458, 1752, 466, 1751, 462,
-
- 1750, 1831, 506, 1749, 472, 1710, 1702, 1689, 1705, 1702,
- 1701, 1692, 448, 1741, 1735, 1701, 1680, 1688, 1683, 1697,
- 1693, 1681, 1693, 1693, 1684, 1668, 1672, 1685, 1687, 1684,
- 1676, 1666, 1684, 1831, 1679, 1682, 1663, 1662, 1712, 1661,
- 1671, 1674, 496, 1670, 1658, 1669, 1705, 1652, 1708, 1645,
- 1660, 489, 1650, 1666, 1647, 1646, 1652, 1643, 1642, 1649,
- 1697, 1655, 1654, 1648, 77, 1655, 1650, 1642, 1632, 1647,
- 1646, 1641, 1645, 1626, 1642, 1628, 1634, 1641, 1629, 492,
- 1622, 1636, 1677, 1638, 485, 1629, 477, 1831, 1831, 485,
- 1831, 1831, 1616, 0, 456, 473, 1618, 520, 490, 1672,
-
- 1625, 484, 1831, 1670, 1831, 1664, 548, 1831, 474, 1606,
- 1615, 1661, 1607, 1613, 1663, 1620, 1615, 1618, 479, 1831,
- 1616, 1658, 1613, 1610, 528, 1616, 1654, 1648, 1603, 1598,
- 1595, 1644, 1603, 1592, 1608, 1640, 1588, 554, 1602, 1587,
- 1600, 1587, 1597, 1592, 1599, 1594, 1590, 496, 1588, 1591,
- 1586, 1582, 1630, 488, 1624, 1831, 1623, 1575, 1574, 1573,
- 1566, 1568, 1572, 1561, 1574, 518, 1619, 1574, 1571, 1831,
- 1574, 1563, 1563, 1575, 518, 1550, 1551, 1572, 529, 1554,
- 1603, 1550, 1564, 1563, 1549, 1561, 1560, 1559, 1558, 380,
- 1599, 1598, 1831, 1542, 1541, 572, 1554, 1831, 1831, 1553,
-
- 0, 1542, 1534, 525, 1539, 1590, 1589, 1547, 1587, 1831,
- 1535, 1585, 1831, 556, 603, 542, 1584, 1528, 1539, 1535,
- 1523, 1831, 1528, 1534, 1537, 1536, 1523, 1522, 1831, 1524,
- 1521, 538, 1519, 1521, 1831, 1529, 1526, 1511, 1524, 1519,
- 578, 1526, 1514, 1507, 1556, 1831, 1505, 1521, 1553, 1516,
- 1513, 1514, 1516, 1548, 1501, 1496, 1495, 1544, 1490, 1505,
- 1483, 1490, 1495, 1543, 1831, 1490, 1486, 1484, 1493, 1487,
- 1494, 1478, 1478, 1488, 1491, 1480, 1475, 1831, 1530, 1831,
- 1474, 1485, 1470, 1475, 1484, 1478, 1472, 1481, 1521, 1515,
- 1479, 1462, 1462, 1457, 1477, 1452, 1458, 1457, 1465, 1469,
-
- 1452, 1508, 1450, 1464, 1453, 1831, 1831, 1453, 1451, 1831,
- 1462, 1496, 1458, 0, 1442, 1459, 1497, 1447, 1831, 1831,
- 1444, 1831, 1450, 1831, 551, 569, 595, 1831, 1447, 1446,
- 1434, 1485, 1432, 1483, 1430, 1429, 1436, 1429, 1441, 1440,
- 1440, 1422, 1427, 1468, 1435, 1427, 1470, 1416, 1432, 1431,
- 1831, 1416, 1413, 1469, 1426, 1418, 1424, 1415, 1423, 1408,
- 1424, 1406, 1420, 520, 1402, 1396, 1401, 1416, 1413, 1414,
- 1411, 1452, 1409, 1831, 1395, 1397, 1406, 1404, 1441, 1440,
- 1393, 562, 1402, 1385, 1386, 1383, 1831, 1397, 1376, 1395,
- 1387, 1430, 1384, 1391, 1427, 1831, 1374, 1388, 1372, 1386,
-
- 1389, 1370, 1420, 1419, 1418, 1365, 1416, 1415, 1831, 14,
- 1377, 1377, 1375, 1358, 1363, 1365, 1831, 1371, 1361, 1831,
- 1406, 1354, 1409, 568, 501, 1352, 1350, 1357, 1400, 562,
- 1404, 544, 1398, 1397, 1396, 1350, 1340, 1393, 1346, 1354,
- 1355, 1389, 1352, 1346, 1333, 1341, 1384, 1388, 1345, 1344,
- 1831, 1345, 1338, 1327, 1340, 1343, 1338, 1339, 1336, 1335,
- 1331, 1337, 1332, 1373, 1372, 1322, 1312, 552, 1369, 1831,
- 1368, 1317, 1309, 1310, 1359, 1322, 1309, 1320, 1831, 1308,
- 1317, 1316, 1316, 1356, 1299, 1308, 1313, 1290, 1294, 1345,
- 1309, 1291, 1301, 1341, 1340, 1339, 1286, 1337, 1301, 580,
-
- 582, 1278, 1288, 579, 1831, 1338, 1284, 1294, 1294, 1277,
- 1282, 1286, 1276, 1288, 1291, 1328, 1831, 1322, 578, 1284,
- 15, 20, 86, 175, 242, 1831, 274, 374, 536, 561,
- 559, 578, 575, 576, 575, 574, 589, 585, 640, 605,
- 595, 611, 601, 1831, 611, 611, 604, 615, 613, 656,
- 600, 602, 617, 604, 662, 621, 607, 610, 1831, 1831,
- 620, 625, 630, 618, 1831, 1831, 632, 619, 613, 618,
- 636, 623, 671, 624, 674, 625, 681, 1831, 628, 632,
- 627, 685, 640, 630, 631, 627, 640, 651, 635, 653,
- 648, 649, 651, 644, 646, 647, 647, 649, 664, 703,
-
- 662, 667, 644, 1831, 669, 659, 704, 664, 654, 669,
- 670, 657, 671, 1831, 690, 698, 667, 662, 715, 680,
- 684, 723, 673, 668, 680, 675, 676, 672, 681, 676,
- 732, 691, 692, 683, 1831, 685, 696, 681, 697, 692,
- 737, 706, 690, 691, 1831, 707, 710, 693, 750, 695,
- 1831, 712, 715, 695, 713, 751, 711, 707, 702, 720,
- 719, 720, 706, 721, 713, 720, 710, 728, 713, 1831,
- 721, 727, 772, 1831, 723, 728, 770, 723, 735, 729,
- 734, 732, 730, 732, 742, 785, 731, 731, 788, 734,
- 746, 1831, 734, 742, 740, 745, 757, 741, 746, 756,
-
- 757, 762, 801, 760, 776, 781, 763, 761, 757, 809,
- 754, 1831, 754, 774, 763, 768, 775, 816, 817, 766,
- 1831, 814, 763, 766, 765, 785, 782, 787, 788, 774,
- 782, 791, 771, 788, 795, 835, 1831, 836, 837, 790,
- 800, 802, 791, 787, 794, 803, 846, 795, 793, 795,
- 812, 851, 803, 802, 808, 806, 804, 857, 858, 854,
- 1831, 818, 811, 802, 821, 809, 819, 816, 821, 817,
- 830, 830, 1831, 814, 815, 1831, 816, 874, 815, 834,
- 835, 832, 818, 839, 838, 822, 827, 845, 1831, 835,
- 868, 859, 889, 831, 853, 1831, 836, 838, 855, 853,
-
- 845, 849, 1831, 1831, 859, 859, 895, 844, 897, 846,
- 904, 849, 860, 852, 858, 854, 873, 874, 875, 1831,
- 1831, 874, 1831, 859, 861, 880, 870, 863, 875, 917,
- 883, 1831, 875, 925, 868, 927, 1831, 928, 872, 878,
- 885, 927, 1831, 1831, 877, 879, 893, 898, 881, 938,
- 897, 898, 899, 937, 891, 896, 945, 895, 947, 1831,
- 896, 949, 950, 892, 952, 913, 954, 898, 910, 915,
- 901, 931, 960, 1831, 919, 912, 963, 912, 927, 914,
- 910, 926, 931, 918, 914, 972, 927, 932, 1831, 933,
- 926, 935, 936, 933, 923, 926, 926, 931, 984, 985,
-
- 930, 988, 984, 927, 942, 935, 994, 1831, 949, 1831,
- 1831, 954, 946, 956, 942, 943, 1002, 948, 958, 1006,
- 1831, 956, 956, 958, 960, 1011, 954, 957, 1831, 976,
- 1831, 960, 1831, 1831, 974, 1831, 968, 1831, 1018, 969,
- 1020, 1021, 1003, 1831, 1023, 982, 1831, 970, 978, 972,
- 971, 974, 974, 975, 982, 972, 1831, 994, 980, 981,
- 996, 996, 999, 999, 996, 1038, 1002, 995, 1831, 1831,
- 1005, 1831, 1002, 1007, 1008, 1005, 1047, 1831, 998, 999,
- 999, 1005, 1004, 1015, 1831, 1054, 1003, 1831, 1004, 1004,
- 1006, 1012, 1831, 1014, 1066, 1017, 1020, 1069, 1032, 1831,
-
- 1029, 1831, 1026, 1831, 1049, 1831, 1074, 1075, 1076, 1035,
- 1021, 1079, 1080, 1035, 1025, 1030, 1084, 1085, 1081, 1046,
- 1042, 1084, 1034, 1039, 1037, 1094, 1052, 1096, 1056, 1098,
- 1061, 1051, 1045, 1061, 1061, 1105, 1049, 1066, 1065, 1049,
- 1105, 1106, 1055, 1108, 1073, 1074, 1831, 1074, 1061, 1831,
- 1072, 1119, 1079, 1092, 1831, 1831, 1831, 1066, 1123, 1831,
- 1831, 1072, 1070, 1084, 1831, 1831, 1074, 1123, 1068, 1073,
- 1131, 1081, 1091, 1092, 1831, 1135, 1090, 1831, 1137, 1831,
- 1082, 1097, 1085, 1100, 1104, 1831, 1138, 1106, 1099, 1108,
- 1090, 1097, 1151, 1112, 1111, 1154, 1155, 1156, 1107, 1831,
-
- 1158, 1159, 1160, 1831, 1110, 1110, 1163, 1109, 1108, 1166,
- 1121, 1831, 1163, 1116, 1113, 1831, 1127, 1831, 1130, 1173,
- 1128, 1175, 1136, 1119, 1121, 1118, 1134, 1135, 1144, 1831,
- 1134, 1184, 1831, 1831, 1831, 1180, 1831, 1831, 1831, 1181,
- 1138, 1831, 1136, 1143, 1831, 1140, 1145, 1143, 1193, 1194,
- 1139, 1831, 1154, 1831, 1155, 1145, 1157, 1200, 1144, 1152,
- 1153, 1166, 1831, 1165, 1153, 1207, 1168, 1159, 1168, 1170,
- 1174, 1831, 1831, 1213, 1158, 1215, 1175, 1217, 1831, 1213,
- 1177, 1178, 1165, 1160, 1181, 1831, 1182, 1183, 1226, 1185,
- 1188, 1831, 1229, 1831, 1192, 1831, 1174, 1232, 1233, 1178,
-
- 1195, 1181, 1181, 1183, 1831, 1188, 1198, 1831, 1184, 1196,
- 1831, 1831, 1201, 1195, 1199, 1190, 1242, 1191, 1199, 1208,
- 1201, 1196, 1211, 1202, 1209, 1196, 1211, 1216, 1259, 1218,
- 1261, 1206, 1222, 1213, 1227, 1223, 1216, 1831, 1268, 1831,
- 1269, 1270, 1227, 1226, 1227, 1217, 1831, 1831, 1831, 1275,
- 1219, 1235, 1278, 1831, 1274, 1225, 1831, 1224, 1226, 1237,
- 1284, 1235, 1831, 1244, 1287, 1831, 1831, 1293, 1298, 1303,
- 1308, 1313, 1318, 1323, 1326, 1300, 1305, 1307, 1320
+ 1840, 1841, 32, 1836, 141, 0, 201, 1841, 206, 88,
+ 11, 213, 1841, 1818, 114, 25, 2, 6, 1841, 1841,
+ 73, 11, 17, 1841, 1841, 1841, 104, 1824, 1779, 0,
+ 1816, 107, 1831, 217, 247, 1841, 1775, 185, 1774, 1780,
+ 93, 58, 1772, 91, 211, 195, 14, 273, 195, 1771,
+ 181, 275, 207, 211, 76, 68, 188, 1780, 232, 219,
+ 296, 284, 280, 1763, 204, 302, 322, 305, 1782, 0,
+ 349, 357, 370, 377, 362, 1841, 0, 1841, 301, 342,
+ 296, 325, 201, 346, 359, 224, 1841, 1779, 1818, 1841,
+
+ 353, 1841, 390, 1807, 357, 1765, 1775, 369, 220, 1770,
+ 362, 288, 364, 374, 221, 1813, 0, 441, 366, 1757,
+ 1754, 1758, 1754, 1762, 360, 1758, 1747, 1748, 76, 1764,
+ 1747, 1756, 1756, 365, 1747, 365, 1748, 1746, 357, 1792,
+ 1796, 1738, 1789, 1731, 1754, 1751, 1751, 1745, 268, 1738,
+ 1731, 1736, 1730, 371, 1741, 1734, 1725, 1724, 1738, 379,
+ 1724, 384, 1740, 1717, 415, 387, 419, 1738, 1735, 1736,
+ 1734, 390, 1716, 1718, 420, 1710, 1727, 1719, 0, 386,
+ 439, 425, 396, 440, 453, 1718, 1841, 0, 1761, 460,
+ 1708, 1711, 437, 452, 1719, 458, 1762, 466, 1761, 462,
+
+ 1760, 1841, 506, 1759, 472, 1720, 1712, 1699, 1715, 1712,
+ 1711, 1702, 448, 1751, 1745, 1711, 1690, 1698, 1693, 1707,
+ 1703, 1691, 1703, 1703, 1694, 1678, 1682, 1695, 1697, 1694,
+ 1686, 1676, 1694, 1841, 1689, 1692, 1673, 1672, 1722, 1671,
+ 1681, 1684, 496, 1680, 1668, 1679, 1715, 1662, 1718, 1655,
+ 1670, 489, 1660, 1676, 1657, 1656, 1662, 1653, 1652, 1659,
+ 1707, 1665, 1664, 1658, 77, 1665, 1660, 1652, 1642, 1657,
+ 1656, 1651, 1655, 1636, 1652, 1638, 1644, 1651, 1639, 492,
+ 1632, 1646, 1687, 1648, 485, 1639, 477, 1841, 1841, 485,
+ 1841, 1841, 1626, 0, 456, 473, 1628, 520, 490, 1682,
+
+ 1635, 484, 1841, 1680, 1841, 1674, 548, 1841, 474, 1616,
+ 1625, 1671, 1617, 1623, 1673, 1630, 1625, 1628, 479, 1841,
+ 1626, 1668, 1623, 1620, 528, 1626, 1664, 1658, 1613, 1608,
+ 1605, 1654, 1613, 1602, 1618, 1650, 1598, 554, 1612, 1597,
+ 1610, 1597, 1607, 1602, 1609, 1604, 1600, 496, 1598, 1601,
+ 1596, 1592, 1640, 488, 1634, 1841, 1633, 1585, 1584, 1583,
+ 1576, 1578, 1582, 1571, 1584, 518, 1629, 1584, 1581, 1841,
+ 1584, 1573, 1573, 1585, 518, 1560, 1561, 1582, 529, 1564,
+ 1613, 1560, 1574, 1573, 1559, 1571, 1570, 1569, 1568, 380,
+ 1609, 1608, 1841, 1552, 1551, 572, 1564, 1841, 1841, 1563,
+
+ 0, 1552, 1544, 525, 1549, 1600, 1599, 1557, 1597, 1841,
+ 1545, 1595, 1841, 556, 603, 542, 1594, 1538, 1549, 1545,
+ 1533, 1841, 1538, 1544, 1547, 1546, 1533, 1532, 1841, 1534,
+ 1531, 538, 1529, 1531, 1841, 1539, 1536, 1521, 1534, 1529,
+ 578, 1536, 1524, 1517, 1566, 1841, 1515, 1531, 1563, 1526,
+ 1523, 1524, 1526, 1558, 1511, 1506, 1505, 1554, 1500, 543,
+ 1494, 1501, 1506, 1554, 1841, 1501, 1497, 1495, 1504, 1498,
+ 1505, 1489, 1489, 1499, 1502, 1491, 1486, 1841, 1541, 1841,
+ 1485, 1496, 1481, 1486, 1495, 1489, 1483, 1492, 1532, 1526,
+ 1490, 1473, 1473, 1468, 1488, 1463, 1469, 1468, 1476, 1480,
+
+ 1463, 1519, 1461, 1475, 1464, 1841, 1841, 1464, 1462, 1841,
+ 1473, 1507, 1469, 0, 1453, 1470, 1508, 1458, 1841, 1841,
+ 1455, 1841, 1461, 1841, 551, 569, 597, 1841, 1458, 1457,
+ 1445, 1496, 1443, 1494, 1441, 1440, 1447, 1440, 1452, 1451,
+ 1451, 1433, 1438, 1479, 1446, 1438, 1481, 1427, 1443, 1442,
+ 1841, 1427, 1424, 1480, 1437, 1429, 1435, 1426, 1434, 1419,
+ 1435, 1417, 1431, 520, 1413, 1407, 1412, 1427, 1424, 1425,
+ 1404, 1421, 1462, 1419, 1841, 1405, 1407, 1416, 1414, 1451,
+ 1450, 1403, 562, 1412, 1395, 1396, 1393, 1841, 1407, 1386,
+ 1405, 1397, 1440, 1394, 1401, 1437, 1841, 1384, 1398, 1382,
+
+ 1396, 1399, 1380, 1430, 1429, 1428, 1375, 1426, 1425, 1841,
+ 14, 1387, 1387, 1385, 1368, 1373, 1375, 1841, 1381, 1371,
+ 1841, 1416, 1364, 1419, 571, 501, 1362, 1360, 1367, 1410,
+ 568, 1414, 575, 1408, 1407, 1406, 1360, 1350, 1403, 1356,
+ 1364, 1365, 1399, 1362, 1356, 1343, 1351, 1394, 1398, 1355,
+ 1354, 1841, 1355, 1348, 1337, 1350, 1353, 1348, 1349, 1346,
+ 1345, 1341, 1347, 1342, 1383, 1382, 1332, 1322, 552, 1374,
+ 1378, 1841, 1377, 1326, 1318, 1319, 1368, 1331, 1318, 1329,
+ 1841, 1317, 1326, 1325, 1325, 1365, 1308, 1317, 1322, 1299,
+ 1303, 1354, 1318, 1300, 1310, 1350, 1349, 1348, 1295, 1346,
+
+ 1310, 579, 581, 1287, 1297, 578, 1841, 1347, 1293, 1303,
+ 1303, 1286, 1291, 1295, 1285, 1297, 1300, 1337, 1841, 1331,
+ 602, 11, 24, 90, 178, 234, 285, 1841, 360, 546,
+ 536, 553, 561, 593, 591, 583, 581, 581, 592, 594,
+ 648, 607, 597, 613, 603, 1841, 613, 613, 606, 617,
+ 615, 659, 603, 605, 620, 607, 665, 624, 610, 613,
+ 1841, 1841, 623, 628, 633, 621, 631, 1841, 1841, 636,
+ 623, 617, 622, 640, 627, 675, 628, 678, 629, 685,
+ 1841, 632, 636, 631, 689, 644, 634, 635, 631, 644,
+ 655, 639, 657, 652, 653, 655, 648, 650, 651, 651,
+
+ 653, 668, 707, 666, 671, 648, 1841, 673, 663, 708,
+ 668, 658, 673, 674, 661, 675, 1841, 694, 702, 671,
+ 666, 719, 684, 688, 727, 677, 672, 684, 679, 680,
+ 676, 685, 680, 736, 695, 696, 687, 1841, 689, 700,
+ 685, 701, 696, 741, 710, 694, 695, 1841, 711, 714,
+ 697, 754, 699, 1841, 716, 719, 699, 717, 755, 715,
+ 711, 708, 707, 725, 724, 725, 711, 726, 718, 725,
+ 715, 733, 718, 1841, 726, 732, 777, 1841, 728, 733,
+ 775, 728, 740, 734, 739, 737, 735, 737, 747, 790,
+ 736, 736, 793, 739, 751, 1841, 739, 747, 745, 750,
+
+ 762, 746, 751, 761, 762, 767, 806, 765, 781, 787,
+ 768, 766, 762, 814, 759, 1841, 759, 779, 768, 773,
+ 780, 821, 822, 771, 1841, 819, 768, 771, 770, 790,
+ 787, 792, 793, 779, 787, 796, 776, 792, 800, 840,
+ 1841, 841, 842, 795, 805, 807, 796, 792, 799, 808,
+ 796, 852, 801, 799, 801, 818, 857, 809, 808, 814,
+ 812, 810, 863, 864, 860, 1841, 824, 817, 808, 827,
+ 815, 825, 822, 827, 823, 836, 836, 1841, 820, 821,
+ 1841, 822, 880, 821, 840, 841, 839, 824, 845, 844,
+ 828, 833, 851, 1841, 841, 874, 865, 895, 837, 859,
+
+ 1841, 842, 844, 861, 859, 851, 855, 1841, 1841, 865,
+ 865, 901, 850, 903, 852, 910, 855, 866, 858, 864,
+ 860, 879, 880, 881, 1841, 1841, 880, 1841, 865, 867,
+ 886, 876, 869, 881, 923, 889, 878, 1841, 882, 932,
+ 875, 934, 1841, 935, 879, 885, 892, 934, 1841, 1841,
+ 884, 886, 900, 905, 888, 945, 904, 905, 906, 944,
+ 898, 903, 952, 902, 954, 1841, 903, 956, 957, 899,
+ 959, 920, 961, 905, 917, 922, 908, 938, 967, 1841,
+ 926, 919, 970, 919, 934, 921, 917, 933, 938, 925,
+ 921, 979, 934, 939, 1841, 940, 933, 942, 943, 940,
+
+ 930, 933, 933, 938, 991, 992, 937, 995, 991, 934,
+ 949, 942, 946, 1002, 1841, 957, 1841, 1841, 962, 954,
+ 965, 950, 951, 1010, 956, 967, 1014, 1841, 964, 964,
+ 966, 968, 1019, 962, 965, 1841, 984, 1841, 968, 1841,
+ 1841, 982, 1841, 976, 1841, 1026, 977, 1028, 1029, 1011,
+ 1841, 1031, 990, 1841, 978, 986, 980, 979, 982, 982,
+ 983, 990, 980, 1841, 1002, 988, 989, 1004, 1004, 1007,
+ 1007, 1004, 1046, 1010, 1003, 1841, 1841, 1013, 1841, 1010,
+ 1015, 1016, 1013, 1055, 1005, 1841, 1007, 1008, 1008, 1014,
+ 1013, 1024, 1841, 1063, 1012, 1841, 1013, 1013, 1015, 1021,
+
+ 1841, 1023, 1075, 1026, 1029, 1078, 1041, 1841, 1038, 1841,
+ 1035, 1841, 1058, 1841, 1083, 1084, 1085, 1044, 1030, 1088,
+ 1089, 1044, 1034, 1039, 1093, 1094, 1090, 1055, 1051, 1093,
+ 1043, 1048, 1046, 1103, 1061, 1105, 1065, 1107, 1070, 1060,
+ 1054, 1112, 1071, 1071, 1115, 1059, 1076, 1075, 1059, 1115,
+ 1116, 1065, 1118, 1083, 1084, 1841, 1084, 1071, 1841, 1082,
+ 1129, 1089, 1103, 1841, 1841, 1841, 1075, 1133, 1841, 1841,
+ 1082, 1080, 1094, 1841, 1841, 1084, 1133, 1078, 1083, 1141,
+ 1091, 1101, 1102, 1841, 1145, 1100, 1841, 1147, 1841, 1092,
+ 1107, 1095, 1841, 1110, 1114, 1841, 1148, 1116, 1109, 1118,
+
+ 1100, 1107, 1161, 1122, 1121, 1164, 1165, 1166, 1117, 1841,
+ 1168, 1169, 1170, 1841, 1120, 1120, 1173, 1119, 1118, 1176,
+ 1131, 1841, 1173, 1126, 1123, 1841, 1137, 1841, 1140, 1183,
+ 1138, 1185, 1146, 1129, 1131, 1128, 1144, 1145, 1154, 1841,
+ 1144, 1194, 1841, 1841, 1841, 1190, 1841, 1841, 1841, 1191,
+ 1148, 1841, 1146, 1153, 1841, 1150, 1155, 1153, 1203, 1204,
+ 1149, 1841, 1164, 1841, 1165, 1155, 1167, 1210, 1154, 1162,
+ 1163, 1176, 1841, 1175, 1163, 1217, 1178, 1169, 1178, 1180,
+ 1184, 1841, 1841, 1223, 1168, 1225, 1185, 1227, 1841, 1223,
+ 1187, 1188, 1175, 1170, 1191, 1841, 1192, 1193, 1236, 1195,
+
+ 1198, 1841, 1239, 1841, 1202, 1841, 1184, 1242, 1243, 1188,
+ 1205, 1191, 1191, 1193, 1841, 1198, 1208, 1841, 1194, 1206,
+ 1841, 1841, 1211, 1205, 1209, 1200, 1252, 1201, 1209, 1218,
+ 1211, 1206, 1221, 1212, 1219, 1206, 1221, 1226, 1269, 1228,
+ 1271, 1216, 1232, 1223, 1237, 1233, 1226, 1841, 1278, 1841,
+ 1279, 1280, 1237, 1236, 1237, 1227, 1841, 1841, 1841, 1285,
+ 1229, 1245, 1288, 1841, 1284, 1235, 1841, 1234, 1236, 1247,
+ 1294, 1245, 1841, 1254, 1297, 1841, 1841, 1303, 1308, 1313,
+ 1318, 1323, 1328, 1333, 1336, 1310, 1315, 1317, 1330
} ;
-static const flex_int16_t yy_def[1480] =
+static const flex_int16_t yy_def[1490] =
{ 0,
- 1468, 1468, 1469, 1469, 1468, 1468, 1468, 1468, 1468, 1468,
- 1467, 1467, 1467, 1467, 1467, 1470, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1471,
- 1467, 1467, 1467, 1472, 15, 1467, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1473, 45, 45,
+ 1478, 1478, 1479, 1479, 1478, 1478, 1478, 1478, 1478, 1478,
+ 1477, 1477, 1477, 1477, 1477, 1480, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1481,
+ 1477, 1477, 1477, 1482, 15, 1477, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1483, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1470,
- 1467, 1467, 1467, 1467, 1467, 1467, 1474, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1471, 1467,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1480,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1484, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1481, 1477,
- 1472, 1467, 1467, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 1475, 45, 1473, 45, 45,
+ 1482, 1477, 1477, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1485, 45, 1483, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1474, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1476, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 1484, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1486, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1475, 1467, 1473, 45, 45, 45, 45, 45, 45, 45,
+ 1485, 1477, 1483, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1467, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 1477, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1477, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1487, 45, 45, 45, 45, 45, 45,
- 45, 45, 1467, 45, 1467, 45, 1473, 1467, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1467,
+ 45, 45, 1477, 45, 1477, 45, 1483, 1477, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1477,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 1467, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1467,
+ 45, 45, 45, 45, 45, 1477, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1477,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 1467, 45, 45, 45, 45, 1467, 1467, 1467,
+ 45, 45, 1477, 45, 45, 45, 45, 1477, 1477, 1477,
- 1478, 45, 45, 45, 45, 45, 45, 45, 45, 1467,
- 45, 45, 1467, 45, 1473, 45, 45, 45, 45, 45,
- 45, 1467, 45, 45, 45, 45, 45, 45, 1467, 45,
- 45, 45, 45, 45, 1467, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 1467, 45, 45, 45, 45,
+ 1488, 45, 45, 45, 45, 45, 45, 45, 45, 1477,
+ 45, 45, 1477, 45, 1483, 45, 45, 45, 45, 45,
+ 45, 1477, 45, 45, 45, 45, 45, 45, 1477, 45,
+ 45, 45, 45, 45, 1477, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1477, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 1467, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1467, 45, 1467,
+ 45, 45, 45, 45, 1477, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 1477,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 1467, 1467, 45, 45, 1467,
- 45, 45, 1467, 1479, 45, 45, 45, 45, 1467, 1467,
- 45, 1467, 45, 1467, 45, 45, 45, 1467, 45, 45,
+ 45, 45, 45, 45, 45, 1477, 1477, 45, 45, 1477,
+ 45, 45, 1477, 1489, 45, 45, 45, 45, 1477, 1477,
+ 45, 1477, 45, 1477, 45, 45, 45, 1477, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1467, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 1477, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1467, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 1467, 45, 45, 45,
- 45, 45, 45, 45, 45, 1467, 45, 45, 45, 45,
+ 45, 45, 45, 45, 1477, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 45,
+ 45, 45, 45, 45, 45, 45, 1477, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1467, 45,
- 45, 45, 45, 45, 45, 45, 1467, 45, 45, 1467,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1477,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 45,
+ 1477, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1467, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1467,
- 45, 45, 45, 45, 45, 45, 45, 45, 1467, 45,
+ 45, 1477, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 1477, 45, 45, 45, 45, 45, 45, 45, 45,
+ 1477, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 1467, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 1467, 45, 45, 45,
- 45, 45, 45, 45, 45, 1467, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 1477, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 1477, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1467, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1467, 1467,
- 45, 45, 45, 45, 1467, 1467, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1467, 45, 45,
+ 45, 45, 45, 45, 45, 1477, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 1477, 1477, 45, 45, 45, 45, 45, 1477, 1477, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 1477, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1467, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1467, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 1477, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 1477, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 45,
+ 45, 45, 45, 1477, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 1467, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 1467, 45, 45, 45, 45, 45,
- 1467, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1467,
- 45, 45, 45, 1467, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 1477, 45, 45, 45, 1477, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 1467, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1477, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 1467, 45, 45, 45, 45, 45, 45, 45, 45,
- 1467, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 1467, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1477, 45, 45, 45, 45,
+ 45, 45, 45, 45, 1477, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 1477, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1477, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 45,
+ 1477, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 1477, 45, 45, 45, 45, 45, 45,
+
+ 1477, 45, 45, 45, 45, 45, 45, 1477, 1477, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1467, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 1467, 45, 45, 1467, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1467, 45,
- 45, 45, 45, 45, 45, 1467, 45, 45, 45, 45,
-
- 45, 45, 1467, 1467, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1467,
- 1467, 45, 1467, 45, 45, 45, 45, 45, 45, 45,
- 45, 1467, 45, 45, 45, 45, 1467, 45, 45, 45,
- 45, 45, 1467, 1467, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1467,
+ 45, 45, 45, 45, 1477, 1477, 45, 1477, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 45,
+ 45, 45, 1477, 45, 45, 45, 45, 45, 1477, 1477,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1467, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1467, 45,
+ 45, 45, 45, 45, 45, 1477, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1477,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 1477, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1467, 45, 1467,
- 1467, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1467, 45, 45, 45, 45, 45, 45, 45, 1467, 45,
- 1467, 45, 1467, 1467, 45, 1467, 45, 1467, 45, 45,
- 45, 45, 45, 1467, 45, 45, 1467, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 1467, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1467, 1467,
- 45, 1467, 45, 45, 45, 45, 45, 1467, 45, 45,
- 45, 45, 45, 45, 1467, 45, 45, 1467, 45, 45,
- 45, 45, 1467, 45, 45, 45, 45, 45, 45, 1467,
-
- 45, 1467, 45, 1467, 45, 1467, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 1477, 45, 1477, 1477, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 45,
+ 45, 45, 45, 45, 45, 1477, 45, 1477, 45, 1477,
+ 1477, 45, 1477, 45, 1477, 45, 45, 45, 45, 45,
+ 1477, 45, 45, 1477, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 1477, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1477, 1477, 45, 1477, 45,
+ 45, 45, 45, 45, 45, 1477, 45, 45, 45, 45,
+ 45, 45, 1477, 45, 45, 1477, 45, 45, 45, 45,
+
+ 1477, 45, 45, 45, 45, 45, 45, 1477, 45, 1477,
+ 45, 1477, 45, 1477, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 1467, 45, 45, 1467,
- 45, 45, 45, 45, 1467, 1467, 1467, 45, 45, 1467,
- 1467, 45, 45, 45, 1467, 1467, 45, 45, 45, 45,
- 45, 45, 45, 45, 1467, 45, 45, 1467, 45, 1467,
- 45, 45, 45, 45, 45, 1467, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1467,
-
- 45, 45, 45, 1467, 45, 45, 45, 45, 45, 45,
- 45, 1467, 45, 45, 45, 1467, 45, 1467, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1467,
- 45, 45, 1467, 1467, 1467, 45, 1467, 1467, 1467, 45,
- 45, 1467, 45, 45, 1467, 45, 45, 45, 45, 45,
- 45, 1467, 45, 1467, 45, 45, 45, 45, 45, 45,
- 45, 45, 1467, 45, 45, 45, 45, 45, 45, 45,
- 45, 1467, 1467, 45, 45, 45, 45, 45, 1467, 45,
- 45, 45, 45, 45, 45, 1467, 45, 45, 45, 45,
- 45, 1467, 45, 1467, 45, 1467, 45, 45, 45, 45,
-
- 45, 45, 45, 45, 1467, 45, 45, 1467, 45, 45,
- 1467, 1467, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1467, 45, 1467,
- 45, 45, 45, 45, 45, 45, 1467, 1467, 1467, 45,
- 45, 45, 45, 1467, 45, 45, 1467, 45, 45, 45,
- 45, 45, 1467, 45, 45, 1467, 0, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467
+ 45, 45, 45, 45, 45, 1477, 45, 45, 1477, 45,
+ 45, 45, 45, 1477, 1477, 1477, 45, 45, 1477, 1477,
+ 45, 45, 45, 1477, 1477, 45, 45, 45, 45, 45,
+ 45, 45, 45, 1477, 45, 45, 1477, 45, 1477, 45,
+ 45, 45, 1477, 45, 45, 1477, 45, 45, 45, 45,
+
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1477,
+ 45, 45, 45, 1477, 45, 45, 45, 45, 45, 45,
+ 45, 1477, 45, 45, 45, 1477, 45, 1477, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1477,
+ 45, 45, 1477, 1477, 1477, 45, 1477, 1477, 1477, 45,
+ 45, 1477, 45, 45, 1477, 45, 45, 45, 45, 45,
+ 45, 1477, 45, 1477, 45, 45, 45, 45, 45, 45,
+ 45, 45, 1477, 45, 45, 45, 45, 45, 45, 45,
+ 45, 1477, 1477, 45, 45, 45, 45, 45, 1477, 45,
+ 45, 45, 45, 45, 45, 1477, 45, 45, 45, 45,
+
+ 45, 1477, 45, 1477, 45, 1477, 45, 45, 45, 45,
+ 45, 45, 45, 45, 1477, 45, 45, 1477, 45, 45,
+ 1477, 1477, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1477, 45, 1477,
+ 45, 45, 45, 45, 45, 45, 1477, 1477, 1477, 45,
+ 45, 45, 45, 1477, 45, 45, 1477, 45, 45, 45,
+ 45, 45, 1477, 45, 45, 1477, 0, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477
} ;
-static const flex_int16_t yy_nxt[1903] =
+static const flex_int16_t yy_nxt[1913] =
{ 0,
- 1467, 13, 14, 13, 1467, 15, 16, 1467, 17, 18,
- 19, 20, 21, 22, 22, 22, 23, 24, 86, 705,
- 37, 14, 37, 87, 25, 26, 38, 1467, 706, 27,
+ 1477, 13, 14, 13, 1477, 15, 16, 1477, 17, 18,
+ 19, 20, 21, 22, 22, 22, 23, 24, 86, 707,
+ 37, 14, 37, 87, 25, 26, 38, 1477, 708, 27,
37, 14, 37, 42, 28, 42, 38, 92, 93, 29,
115, 30, 13, 14, 13, 91, 92, 25, 31, 93,
- 13, 14, 13, 13, 14, 13, 32, 40, 818, 13,
- 14, 13, 33, 40, 115, 92, 93, 819, 91, 34,
+ 13, 14, 13, 13, 14, 13, 32, 40, 820, 13,
+ 14, 13, 33, 40, 115, 92, 93, 821, 91, 34,
35, 13, 14, 13, 95, 15, 16, 96, 17, 18,
19, 20, 21, 22, 22, 22, 23, 24, 13, 14,
13, 109, 39, 91, 25, 26, 13, 14, 13, 27,
39, 85, 85, 85, 28, 42, 41, 42, 42, 29,
42, 30, 83, 108, 41, 111, 94, 25, 31, 109,
217, 218, 89, 137, 89, 139, 32, 90, 90, 90,
- 138, 374, 33, 140, 375, 83, 108, 820, 111, 34,
+ 138, 374, 33, 140, 375, 83, 108, 822, 111, 34,
35, 44, 44, 44, 45, 45, 46, 45, 45, 45,
45, 45, 45, 45, 45, 47, 45, 45, 45, 45,
45, 48, 45, 49, 50, 45, 51, 45, 52, 53,
74, 75, 76, 77, 78, 79, 57, 45, 45, 45,
45, 45, 81, 105, 82, 82, 82, 81, 114, 84,
- 84, 84, 102, 105, 81, 83, 84, 84, 84, 821,
+ 84, 84, 102, 105, 81, 83, 84, 84, 84, 823,
83, 108, 123, 112, 141, 124, 182, 83, 125, 105,
126, 114, 127, 113, 142, 200, 143, 164, 83, 119,
194, 165, 133, 83, 108, 120, 112, 103, 121, 182,
83, 45, 149, 134, 182, 136, 150, 45, 200, 45,
45, 113, 45, 135, 45, 45, 45, 194, 117, 145,
- 146, 45, 45, 147, 45, 45, 151, 185, 822, 148,
+ 146, 45, 45, 147, 45, 45, 151, 185, 824, 148,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 90, 90, 90, 45, 128, 197,
111, 45, 129, 160, 180, 130, 131, 161, 114, 45,
- 242, 823, 155, 45, 243, 45, 118, 162, 132, 152,
+ 242, 825, 155, 45, 243, 45, 118, 162, 132, 152,
156, 153, 157, 154, 112, 166, 197, 158, 159, 167,
180, 175, 168, 181, 113, 90, 90, 90, 102, 169,
170, 176, 85, 85, 85, 171, 177, 172, 81, 173,
84, 84, 84, 103, 190, 101, 83, 193, 196, 198,
183, 83, 101, 190, 83, 199, 211, 196, 223, 83,
- 224, 230, 226, 184, 231, 212, 213, 824, 232, 287,
+ 224, 230, 226, 184, 231, 212, 213, 826, 232, 287,
204, 197, 190, 193, 83, 262, 196, 198, 227, 287,
101, 205, 199, 504, 101, 196, 505, 248, 101, 254,
255, 257, 271, 272, 258, 259, 101, 287, 280, 289,
292, 398, 390, 296, 318, 302, 348, 402, 300, 398,
319, 404, 404, 304, 409, 309, 412, 403, 306, 307,
- 307, 307, 426, 478, 398, 719, 307, 307, 307, 307,
+ 307, 307, 426, 478, 398, 721, 307, 307, 307, 307,
307, 307, 399, 360, 406, 407, 466, 409, 432, 427,
- 404, 416, 433, 408, 412, 396, 467, 361, 719, 307,
+ 404, 416, 433, 408, 412, 396, 467, 361, 721, 307,
307, 307, 307, 307, 307, 459, 460, 349, 517, 446,
- 350, 415, 415, 415, 447, 661, 662, 679, 415, 415,
+ 350, 415, 415, 415, 447, 662, 663, 681, 415, 415,
415, 415, 415, 415, 487, 517, 492, 510, 488, 479,
- 493, 624, 511, 551, 541, 525, 517, 526, 552, 727,
- 728, 415, 415, 415, 415, 415, 415, 542, 825, 543,
-
- 620, 625, 718, 527, 680, 626, 763, 724, 624, 764,
- 448, 816, 525, 725, 526, 449, 45, 45, 45, 826,
- 827, 828, 829, 45, 45, 45, 45, 45, 45, 625,
- 718, 794, 796, 797, 830, 802, 831, 832, 795, 816,
- 798, 803, 833, 834, 799, 835, 45, 45, 45, 45,
- 45, 45, 836, 837, 838, 839, 840, 841, 842, 843,
- 844, 845, 847, 848, 849, 850, 846, 851, 852, 853,
+ 493, 625, 511, 551, 541, 525, 517, 526, 552, 827,
+ 570, 415, 415, 415, 415, 415, 415, 542, 828, 543,
+
+ 571, 626, 621, 527, 682, 720, 765, 627, 625, 766,
+ 448, 829, 525, 726, 526, 449, 45, 45, 45, 727,
+ 729, 730, 830, 45, 45, 45, 45, 45, 45, 626,
+ 797, 799, 800, 720, 805, 819, 831, 798, 832, 801,
+ 806, 833, 834, 802, 835, 836, 45, 45, 45, 45,
+ 45, 45, 837, 838, 839, 840, 841, 842, 843, 844,
+ 845, 846, 847, 819, 848, 850, 851, 852, 853, 849,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
- 865, 866, 867, 864, 868, 869, 870, 871, 872, 873,
+ 864, 865, 866, 867, 869, 870, 871, 868, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
- 924, 925, 926, 927, 928, 906, 929, 930, 905, 931,
- 932, 933, 934, 935, 936, 937, 939, 940, 941, 942,
+ 924, 925, 926, 927, 928, 929, 930, 931, 932, 910,
+ 933, 934, 909, 935, 936, 937, 938, 939, 940, 941,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
- 953, 954, 955, 956, 958, 959, 960, 961, 962, 963,
- 964, 965, 966, 967, 957, 968, 969, 970, 971, 972,
+ 953, 954, 955, 956, 957, 958, 959, 960, 961, 963,
+ 964, 965, 966, 967, 968, 969, 970, 971, 972, 962,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
- 983, 984, 985, 986, 987, 988, 989, 990, 991, 993,
- 992, 938, 994, 995, 996, 997, 998, 999, 1000, 1001,
+ 983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
+ 993, 994, 995, 996, 998, 942, 997, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
- 1012, 1013, 1014, 1015, 1016, 1017, 991, 992, 1018, 1019,
- 1020, 1021, 1023, 1025, 1026, 1027, 1022, 1028, 1029, 1030,
- 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
+ 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
+ 1022, 996, 1023, 997, 1024, 1025, 1026, 1028, 1030, 1031,
+ 1032, 1027, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060,
- 1061, 1062, 1063, 1064, 1024, 1065, 1066, 1067, 1068, 1069,
+ 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1029,
1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
- 1090, 1091, 1092, 1093, 1094, 1072, 1095, 1096, 1097, 1098,
- 1099, 1073, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107,
+ 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099,
+ 1100, 1078, 1101, 1102, 1103, 1104, 1105, 1079, 1106, 1107,
1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
- 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1127, 1128,
- 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138,
- 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1149,
- 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159,
+ 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127,
+ 1128, 1129, 1130, 1131, 1132, 1134, 1135, 1136, 1137, 1138,
+ 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148,
+ 1149, 1150, 1151, 1152, 1153, 1154, 1156, 1157, 1158, 1159,
1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169,
- 1170, 1171, 1143, 1172, 1173, 1174, 1175, 1177, 1126, 1178,
+ 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1150,
- 1179, 1180, 1181, 1182, 1176, 1183, 1184, 1185, 1186, 1187,
- 1148, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196,
- 1197, 1198, 1199, 1200, 1201, 1202, 1204, 1205, 1206, 1207,
- 1203, 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216,
+ 1179, 1180, 1181, 1182, 1184, 1133, 1185, 1186, 1187, 1188,
+ 1189, 1183, 1190, 1191, 1192, 1193, 1194, 1155, 1195, 1196,
+ 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205, 1206,
+ 1207, 1208, 1209, 1210, 1212, 1213, 1214, 1215, 1211, 1216,
1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226,
- 1205, 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235,
+ 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1213, 1235,
1236, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245,
1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255,
1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265,
1266, 1267, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275,
- 1277, 1278, 1279, 1280, 1281, 1254, 1282, 1283, 1284, 1285,
- 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295,
+ 1276, 1277, 1278, 1279, 1280, 1281, 1282, 1283, 1284, 1286,
+ 1287, 1288, 1289, 1290, 1263, 1291, 1292, 1293, 1294, 1295,
1296, 1297, 1298, 1299, 1300, 1301, 1302, 1303, 1304, 1305,
- 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1315,
+ 1306, 1307, 1308, 1309, 1310, 1311, 1313, 1312, 1314, 1315,
1316, 1317, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1325,
- 1326, 1327, 1328, 1329, 1302, 1276, 1330, 1331, 1332, 1333,
- 1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341, 1342, 1343,
+ 1326, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334, 1335,
+ 1336, 1337, 1338, 1339, 1285, 1312, 1340, 1341, 1342, 1343,
1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351, 1352, 1353,
1354, 1355, 1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363,
1364, 1365, 1366, 1367, 1368, 1369, 1370, 1371, 1372, 1373,
1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, 1442, 1443,
1444, 1445, 1446, 1447, 1448, 1449, 1450, 1451, 1452, 1453,
1454, 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462, 1463,
- 1464, 1465, 1466, 12, 12, 12, 12, 12, 36, 36,
+ 1464, 1465, 1466, 1467, 1468, 1469, 1470, 1471, 1472, 1473,
+ 1474, 1475, 1476, 12, 12, 12, 12, 12, 36, 36,
36, 36, 36, 80, 294, 80, 80, 80, 99, 401,
99, 514, 99, 101, 101, 101, 101, 101, 116, 116,
116, 116, 116, 179, 101, 179, 179, 179, 201, 201,
- 201, 817, 815, 814, 813, 812, 811, 810, 809, 808,
- 807, 806, 805, 804, 801, 800, 793, 792, 791, 790,
- 789, 788, 787, 786, 785, 784, 783, 782, 781, 780,
- 779, 778, 777, 776, 775, 774, 773, 772, 771, 770,
- 769, 768, 767, 766, 765, 762, 761, 760, 759, 758,
- 757, 756, 755, 754, 753, 752, 751, 750, 749, 748,
- 747, 746, 745, 744, 743, 742, 741, 740, 739, 738,
-
- 737, 736, 735, 734, 733, 732, 731, 730, 729, 726,
- 723, 722, 721, 720, 717, 716, 715, 714, 713, 712,
- 711, 710, 709, 708, 707, 704, 703, 702, 701, 700,
- 699, 698, 697, 696, 695, 694, 693, 692, 691, 690,
- 689, 688, 687, 686, 685, 684, 683, 682, 681, 678,
- 677, 676, 675, 674, 673, 672, 671, 670, 669, 668,
- 667, 666, 665, 664, 663, 660, 659, 658, 657, 656,
- 655, 654, 653, 652, 651, 650, 649, 648, 647, 646,
- 645, 644, 643, 642, 641, 640, 639, 638, 637, 636,
- 635, 634, 633, 632, 631, 630, 629, 628, 627, 623,
-
- 622, 621, 620, 619, 618, 617, 616, 615, 614, 613,
- 612, 611, 610, 609, 608, 607, 606, 605, 604, 603,
- 602, 601, 600, 599, 598, 597, 596, 595, 594, 593,
- 592, 591, 590, 589, 588, 587, 586, 585, 584, 583,
- 582, 581, 580, 579, 578, 577, 576, 575, 574, 573,
- 572, 571, 570, 569, 568, 567, 566, 565, 564, 563,
+ 201, 818, 817, 816, 815, 814, 813, 812, 811, 810,
+ 809, 808, 807, 804, 803, 796, 795, 794, 793, 792,
+ 791, 790, 789, 788, 787, 786, 785, 784, 783, 782,
+ 781, 780, 779, 778, 777, 776, 775, 774, 773, 772,
+ 771, 770, 769, 768, 767, 764, 763, 762, 761, 760,
+ 759, 758, 757, 756, 755, 754, 753, 752, 751, 750,
+
+ 749, 748, 747, 746, 745, 744, 743, 742, 741, 740,
+ 739, 738, 737, 736, 735, 734, 733, 732, 731, 728,
+ 725, 724, 723, 722, 719, 718, 717, 716, 715, 714,
+ 713, 712, 711, 710, 709, 706, 705, 704, 703, 702,
+ 701, 700, 699, 698, 697, 696, 695, 694, 693, 692,
+ 691, 690, 689, 688, 687, 686, 685, 684, 683, 680,
+ 679, 678, 677, 676, 675, 674, 673, 672, 671, 670,
+ 669, 668, 667, 666, 665, 664, 661, 660, 659, 658,
+ 657, 656, 655, 654, 653, 652, 651, 650, 649, 648,
+ 647, 646, 645, 644, 643, 642, 641, 640, 639, 638,
+
+ 637, 636, 635, 634, 633, 632, 631, 630, 629, 628,
+ 624, 623, 622, 621, 620, 619, 618, 617, 616, 615,
+ 614, 613, 612, 611, 610, 609, 608, 607, 606, 605,
+ 604, 603, 602, 601, 600, 599, 598, 597, 596, 595,
+ 594, 593, 592, 591, 590, 589, 588, 587, 586, 585,
+ 584, 583, 582, 581, 580, 579, 578, 577, 576, 575,
+ 574, 573, 572, 569, 568, 567, 566, 565, 564, 563,
562, 561, 560, 559, 558, 557, 556, 555, 554, 553,
550, 549, 548, 547, 546, 545, 544, 540, 539, 538,
537, 536, 535, 534, 533, 532, 531, 530, 529, 528,
- 524, 523, 522, 521, 520, 519, 518, 516, 515, 513,
+ 524, 523, 522, 521, 520, 519, 518, 516, 515, 513,
512, 509, 508, 507, 506, 503, 502, 501, 500, 499,
498, 497, 496, 495, 494, 491, 490, 489, 486, 485,
484, 483, 482, 481, 480, 477, 476, 475, 474, 473,
434, 431, 430, 429, 428, 425, 424, 423, 422, 421,
420, 419, 418, 417, 414, 413, 411, 410, 405, 400,
397, 394, 393, 392, 391, 389, 388, 387, 386, 385,
- 384, 383, 382, 381, 380, 379, 378, 377, 376, 373,
+ 384, 383, 382, 381, 380, 379, 378, 377, 376, 373,
372, 371, 370, 369, 368, 367, 366, 365, 364, 363,
362, 358, 357, 356, 355, 354, 353, 352, 351, 347,
346, 345, 344, 343, 342, 341, 340, 339, 338, 337,
297, 295, 293, 286, 285, 284, 282, 281, 279, 278,
277, 276, 261, 260, 256, 253, 252, 251, 250, 249,
247, 246, 245, 244, 241, 240, 239, 238, 237, 236,
- 235, 234, 233, 229, 228, 225, 222, 221, 220, 219,
+ 235, 234, 233, 229, 228, 225, 222, 221, 220, 219,
216, 215, 214, 210, 209, 208, 207, 206, 202, 195,
192, 191, 189, 187, 186, 178, 163, 144, 122, 110,
- 107, 106, 104, 43, 100, 98, 97, 88, 43, 1467,
- 11, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
-
- 1467, 1467
+ 107, 106, 104, 43, 100, 98, 97, 88, 43, 1477,
+ 11, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477
} ;
-static const flex_int16_t yy_chk[1903] =
+static const flex_int16_t yy_chk[1913] =
{ 0,
0, 1, 1, 1, 0, 1, 1, 0, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 21, 610,
- 3, 3, 3, 21, 1, 1, 3, 0, 610, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 21, 611,
+ 3, 3, 3, 21, 1, 1, 3, 0, 611, 1,
4, 4, 4, 13, 1, 13, 4, 27, 28, 1,
57, 1, 5, 5, 5, 26, 32, 1, 1, 33,
- 6, 6, 6, 7, 7, 7, 1, 7, 721, 8,
- 8, 8, 1, 8, 57, 27, 28, 722, 26, 1,
+ 6, 6, 6, 7, 7, 7, 1, 7, 722, 8,
+ 8, 8, 1, 8, 57, 27, 28, 723, 26, 1,
1, 2, 2, 2, 32, 2, 2, 33, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 9, 9,
9, 52, 5, 31, 2, 2, 10, 10, 10, 2,
6, 20, 20, 20, 2, 37, 9, 37, 42, 2,
42, 2, 20, 51, 10, 54, 31, 2, 2, 52,
129, 129, 25, 65, 25, 66, 2, 25, 25, 25,
- 65, 265, 2, 66, 265, 20, 51, 723, 54, 2,
+ 65, 265, 2, 66, 265, 20, 51, 724, 54, 2,
2, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 17, 48, 17, 17, 17, 19, 56, 19,
- 19, 19, 44, 59, 22, 17, 22, 22, 22, 724,
+ 19, 19, 44, 59, 22, 17, 22, 22, 22, 725,
19, 64, 61, 55, 67, 61, 93, 22, 61, 48,
61, 56, 61, 55, 67, 115, 67, 75, 17, 59,
109, 75, 63, 19, 64, 59, 55, 44, 59, 96,
22, 45, 70, 63, 93, 64, 70, 45, 115, 45,
45, 55, 45, 63, 45, 45, 45, 109, 58, 69,
- 69, 45, 45, 69, 45, 58, 70, 96, 725, 69,
+ 69, 45, 45, 69, 45, 58, 70, 96, 726, 69,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
84, 84, 84, 101, 105, 103, 81, 108, 111, 113,
94, 84, 103, 119, 82, 114, 125, 154, 134, 85,
- 134, 139, 136, 95, 139, 125, 125, 728, 139, 180,
+ 134, 139, 136, 95, 139, 125, 125, 729, 139, 180,
119, 172, 105, 108, 84, 165, 111, 113, 136, 183,
103, 119, 114, 390, 103, 154, 390, 154, 103, 160,
160, 162, 166, 166, 162, 162, 103, 180, 172, 182,
185, 287, 280, 190, 213, 196, 243, 295, 194, 290,
213, 296, 309, 198, 299, 205, 302, 295, 200, 203,
- 203, 203, 319, 366, 287, 625, 203, 203, 203, 203,
+ 203, 203, 319, 366, 287, 626, 203, 203, 203, 203,
203, 203, 290, 252, 298, 298, 354, 299, 325, 319,
- 296, 309, 325, 298, 302, 285, 354, 252, 625, 203,
+ 296, 309, 325, 298, 302, 285, 354, 252, 626, 203,
203, 203, 203, 203, 203, 348, 348, 243, 404, 338,
- 243, 307, 307, 307, 338, 564, 564, 582, 307, 307,
+ 243, 307, 307, 307, 338, 564, 564, 583, 307, 307,
307, 307, 307, 307, 375, 416, 379, 396, 375, 366,
- 379, 525, 396, 441, 432, 414, 404, 414, 441, 632,
- 632, 307, 307, 307, 307, 307, 307, 432, 729, 432,
-
- 527, 526, 624, 416, 582, 527, 668, 630, 525, 668,
- 338, 719, 414, 630, 414, 338, 415, 415, 415, 730,
- 731, 732, 733, 415, 415, 415, 415, 415, 415, 526,
- 624, 700, 701, 701, 734, 704, 735, 736, 700, 719,
- 701, 704, 737, 738, 701, 739, 415, 415, 415, 415,
- 415, 415, 740, 741, 742, 743, 745, 746, 747, 748,
- 749, 750, 751, 752, 753, 754, 750, 755, 756, 757,
- 758, 761, 762, 763, 764, 767, 768, 769, 770, 771,
- 772, 773, 774, 771, 775, 776, 777, 779, 780, 781,
- 782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
-
- 792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
- 802, 803, 805, 806, 807, 808, 809, 810, 811, 812,
- 813, 815, 816, 817, 818, 819, 820, 821, 822, 823,
- 824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
- 834, 836, 837, 838, 839, 816, 840, 841, 815, 842,
- 843, 844, 846, 847, 848, 849, 850, 852, 853, 854,
- 855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
- 865, 866, 867, 868, 869, 871, 872, 873, 875, 876,
- 877, 878, 879, 880, 868, 881, 882, 883, 884, 885,
- 886, 887, 888, 889, 890, 891, 893, 894, 895, 896,
-
- 897, 898, 899, 900, 901, 902, 903, 904, 905, 907,
- 906, 849, 908, 909, 910, 911, 913, 914, 915, 916,
- 917, 918, 919, 920, 922, 923, 924, 925, 926, 927,
- 928, 929, 930, 931, 932, 933, 905, 906, 934, 935,
- 936, 938, 939, 940, 941, 942, 938, 943, 944, 945,
- 946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
- 956, 957, 958, 959, 960, 962, 963, 964, 965, 966,
- 967, 968, 969, 970, 971, 972, 974, 975, 977, 978,
- 979, 980, 981, 982, 939, 983, 984, 985, 986, 987,
- 988, 990, 991, 992, 993, 994, 995, 997, 998, 999,
-
- 1000, 1001, 1002, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
- 1012, 1013, 1014, 1015, 1016, 991, 1017, 1018, 1019, 1022,
- 1024, 992, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1033,
- 1034, 1035, 1036, 1038, 1039, 1040, 1041, 1042, 1045, 1046,
- 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056,
- 1057, 1058, 1059, 1061, 1062, 1063, 1064, 1065, 1066, 1067,
- 1068, 1069, 1070, 1071, 1072, 1073, 1075, 1076, 1077, 1078,
- 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
- 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099,
- 1100, 1101, 1072, 1102, 1103, 1104, 1105, 1106, 1054, 1107,
-
- 1109, 1112, 1113, 1114, 1105, 1115, 1116, 1117, 1118, 1119,
- 1077, 1120, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1130,
- 1132, 1135, 1137, 1139, 1140, 1141, 1142, 1143, 1145, 1146,
- 1141, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156,
- 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167,
- 1143, 1168, 1171, 1173, 1174, 1175, 1176, 1177, 1179, 1180,
- 1181, 1182, 1183, 1184, 1186, 1187, 1189, 1190, 1191, 1192,
- 1194, 1195, 1196, 1197, 1198, 1199, 1201, 1203, 1205, 1207,
- 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217,
- 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1225, 1226,
-
- 1227, 1228, 1229, 1230, 1231, 1205, 1232, 1233, 1234, 1235,
- 1236, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245,
- 1246, 1248, 1249, 1251, 1252, 1253, 1254, 1258, 1259, 1262,
- 1263, 1264, 1267, 1268, 1269, 1270, 1271, 1272, 1273, 1274,
- 1276, 1277, 1279, 1281, 1282, 1283, 1284, 1285, 1287, 1288,
- 1289, 1290, 1291, 1292, 1254, 1226, 1293, 1294, 1295, 1296,
- 1297, 1298, 1299, 1301, 1302, 1303, 1305, 1306, 1307, 1308,
- 1309, 1310, 1311, 1313, 1314, 1315, 1317, 1319, 1320, 1321,
- 1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1331, 1332,
- 1336, 1340, 1341, 1343, 1344, 1346, 1347, 1348, 1349, 1350,
-
- 1351, 1353, 1355, 1356, 1357, 1358, 1359, 1360, 1361, 1362,
- 1364, 1365, 1366, 1367, 1368, 1369, 1370, 1371, 1374, 1375,
- 1376, 1377, 1378, 1380, 1381, 1382, 1383, 1384, 1385, 1387,
- 1388, 1389, 1390, 1391, 1393, 1395, 1397, 1398, 1399, 1400,
- 1401, 1402, 1403, 1404, 1406, 1407, 1409, 1410, 1413, 1414,
- 1415, 1416, 1417, 1418, 1419, 1420, 1421, 1422, 1423, 1424,
+ 379, 525, 396, 441, 432, 414, 404, 414, 441, 730,
+ 460, 307, 307, 307, 307, 307, 307, 432, 731, 432,
+
+ 460, 526, 527, 416, 583, 625, 669, 527, 525, 669,
+ 338, 732, 414, 631, 414, 338, 415, 415, 415, 631,
+ 633, 633, 733, 415, 415, 415, 415, 415, 415, 526,
+ 702, 703, 703, 625, 706, 721, 734, 702, 735, 703,
+ 706, 736, 737, 703, 738, 739, 415, 415, 415, 415,
+ 415, 415, 740, 741, 742, 743, 744, 745, 747, 748,
+ 749, 750, 751, 721, 752, 753, 754, 755, 756, 752,
+ 757, 758, 759, 760, 763, 764, 765, 766, 767, 770,
+ 771, 772, 773, 774, 775, 776, 777, 774, 778, 779,
+ 780, 782, 783, 784, 785, 786, 787, 788, 789, 790,
+
+ 791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
+ 801, 802, 803, 804, 805, 806, 808, 809, 810, 811,
+ 812, 813, 814, 815, 816, 818, 819, 820, 821, 822,
+ 823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
+ 833, 834, 835, 836, 837, 839, 840, 841, 842, 819,
+ 843, 844, 818, 845, 846, 847, 849, 850, 851, 852,
+ 853, 855, 856, 857, 858, 859, 860, 861, 862, 863,
+ 864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
+ 875, 876, 877, 879, 880, 881, 882, 883, 884, 872,
+ 885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
+
+ 895, 897, 898, 899, 900, 901, 902, 903, 904, 905,
+ 906, 907, 908, 909, 911, 852, 910, 912, 913, 914,
+ 915, 917, 918, 919, 920, 921, 922, 923, 924, 926,
+ 927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
+ 937, 909, 938, 910, 939, 940, 942, 943, 944, 945,
+ 946, 942, 947, 948, 949, 950, 951, 952, 953, 954,
+ 955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
+ 965, 967, 968, 969, 970, 971, 972, 973, 974, 975,
+ 976, 977, 979, 980, 982, 983, 984, 985, 986, 943,
+ 987, 988, 989, 990, 991, 992, 993, 995, 996, 997,
+
+ 998, 999, 1000, 1002, 1003, 1004, 1005, 1006, 1007, 1010,
+ 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
+ 1021, 996, 1022, 1023, 1024, 1027, 1029, 997, 1030, 1031,
+ 1032, 1033, 1034, 1035, 1036, 1037, 1039, 1040, 1041, 1042,
+ 1044, 1045, 1046, 1047, 1048, 1051, 1052, 1053, 1054, 1055,
+ 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065,
+ 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076,
+ 1077, 1078, 1079, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
+ 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1096, 1097, 1098,
+ 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1078,
+
+ 1108, 1109, 1110, 1111, 1112, 1060, 1113, 1114, 1116, 1119,
+ 1120, 1111, 1121, 1122, 1123, 1124, 1125, 1083, 1126, 1127,
+ 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1137, 1139, 1142,
+ 1144, 1146, 1147, 1148, 1149, 1150, 1152, 1153, 1148, 1155,
+ 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1165, 1166,
+ 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1150, 1175,
+ 1178, 1180, 1181, 1182, 1183, 1184, 1185, 1187, 1188, 1189,
+ 1190, 1191, 1192, 1194, 1195, 1197, 1198, 1199, 1200, 1202,
+ 1203, 1204, 1205, 1206, 1207, 1209, 1211, 1213, 1215, 1216,
+ 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226,
+
+ 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1233, 1234, 1235,
+ 1236, 1237, 1238, 1239, 1213, 1240, 1241, 1242, 1243, 1244,
+ 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254,
+ 1255, 1257, 1258, 1260, 1261, 1262, 1267, 1263, 1268, 1271,
+ 1272, 1273, 1276, 1277, 1278, 1279, 1280, 1281, 1282, 1283,
+ 1285, 1286, 1288, 1290, 1291, 1292, 1294, 1295, 1297, 1298,
+ 1299, 1300, 1301, 1302, 1234, 1263, 1303, 1304, 1305, 1306,
+ 1307, 1308, 1309, 1311, 1312, 1313, 1315, 1316, 1317, 1318,
+ 1319, 1320, 1321, 1323, 1324, 1325, 1327, 1329, 1330, 1331,
+ 1332, 1333, 1334, 1335, 1336, 1337, 1338, 1339, 1341, 1342,
+
+ 1346, 1350, 1351, 1353, 1354, 1356, 1357, 1358, 1359, 1360,
+ 1361, 1363, 1365, 1366, 1367, 1368, 1369, 1370, 1371, 1372,
+ 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381, 1384, 1385,
+ 1386, 1387, 1388, 1390, 1391, 1392, 1393, 1394, 1395, 1397,
+ 1398, 1399, 1400, 1401, 1403, 1405, 1407, 1408, 1409, 1410,
+ 1411, 1412, 1413, 1414, 1416, 1417, 1419, 1420, 1423, 1424,
1425, 1426, 1427, 1428, 1429, 1430, 1431, 1432, 1433, 1434,
- 1435, 1436, 1437, 1439, 1441, 1442, 1443, 1444, 1445, 1446,
- 1450, 1451, 1452, 1453, 1455, 1456, 1458, 1459, 1460, 1461,
- 1462, 1464, 1465, 1468, 1468, 1468, 1468, 1468, 1469, 1469,
-
- 1469, 1469, 1469, 1470, 1476, 1470, 1470, 1470, 1471, 1477,
- 1471, 1478, 1471, 1472, 1472, 1472, 1472, 1472, 1473, 1473,
- 1473, 1473, 1473, 1474, 1479, 1474, 1474, 1474, 1475, 1475,
- 1475, 720, 718, 716, 715, 714, 713, 712, 711, 710,
- 709, 708, 707, 706, 703, 702, 699, 698, 697, 696,
- 695, 694, 693, 692, 691, 690, 689, 688, 687, 686,
- 685, 684, 683, 682, 681, 680, 678, 677, 676, 675,
- 674, 673, 672, 671, 669, 667, 666, 665, 664, 663,
- 662, 661, 660, 659, 658, 657, 656, 655, 654, 653,
- 652, 650, 649, 648, 647, 646, 645, 644, 643, 642,
-
- 641, 640, 639, 638, 637, 636, 635, 634, 633, 631,
- 629, 628, 627, 626, 623, 622, 621, 619, 618, 616,
- 615, 614, 613, 612, 611, 608, 607, 606, 605, 604,
- 603, 602, 601, 600, 599, 598, 597, 595, 594, 593,
- 592, 591, 590, 589, 588, 586, 585, 584, 583, 581,
- 580, 579, 578, 577, 576, 575, 573, 572, 571, 570,
- 569, 568, 567, 566, 565, 563, 562, 561, 560, 559,
- 558, 557, 556, 555, 554, 553, 552, 550, 549, 548,
- 547, 546, 545, 544, 543, 542, 541, 540, 539, 538,
- 537, 536, 535, 534, 533, 532, 531, 530, 529, 523,
-
- 521, 518, 517, 516, 515, 513, 512, 511, 509, 508,
- 505, 504, 503, 502, 501, 500, 499, 498, 497, 496,
- 495, 494, 493, 492, 491, 490, 489, 488, 487, 486,
- 485, 484, 483, 482, 481, 479, 477, 476, 475, 474,
- 473, 472, 471, 470, 469, 468, 467, 466, 464, 463,
- 462, 461, 460, 459, 458, 457, 456, 455, 454, 453,
+ 1435, 1436, 1437, 1438, 1439, 1440, 1441, 1442, 1443, 1444,
+ 1445, 1446, 1447, 1449, 1451, 1452, 1453, 1454, 1455, 1456,
+ 1460, 1461, 1462, 1463, 1465, 1466, 1468, 1469, 1470, 1471,
+
+ 1472, 1474, 1475, 1478, 1478, 1478, 1478, 1478, 1479, 1479,
+ 1479, 1479, 1479, 1480, 1486, 1480, 1480, 1480, 1481, 1487,
+ 1481, 1488, 1481, 1482, 1482, 1482, 1482, 1482, 1483, 1483,
+ 1483, 1483, 1483, 1484, 1489, 1484, 1484, 1484, 1485, 1485,
+ 1485, 720, 718, 717, 716, 715, 714, 713, 712, 711,
+ 710, 709, 708, 705, 704, 701, 700, 699, 698, 697,
+ 696, 695, 694, 693, 692, 691, 690, 689, 688, 687,
+ 686, 685, 684, 683, 682, 680, 679, 678, 677, 676,
+ 675, 674, 673, 671, 670, 668, 667, 666, 665, 664,
+ 663, 662, 661, 660, 659, 658, 657, 656, 655, 654,
+
+ 653, 651, 650, 649, 648, 647, 646, 645, 644, 643,
+ 642, 641, 640, 639, 638, 637, 636, 635, 634, 632,
+ 630, 629, 628, 627, 624, 623, 622, 620, 619, 617,
+ 616, 615, 614, 613, 612, 609, 608, 607, 606, 605,
+ 604, 603, 602, 601, 600, 599, 598, 596, 595, 594,
+ 593, 592, 591, 590, 589, 587, 586, 585, 584, 582,
+ 581, 580, 579, 578, 577, 576, 574, 573, 572, 571,
+ 570, 569, 568, 567, 566, 565, 563, 562, 561, 560,
+ 559, 558, 557, 556, 555, 554, 553, 552, 550, 549,
+ 548, 547, 546, 545, 544, 543, 542, 541, 540, 539,
+
+ 538, 537, 536, 535, 534, 533, 532, 531, 530, 529,
+ 523, 521, 518, 517, 516, 515, 513, 512, 511, 509,
+ 508, 505, 504, 503, 502, 501, 500, 499, 498, 497,
+ 496, 495, 494, 493, 492, 491, 490, 489, 488, 487,
+ 486, 485, 484, 483, 482, 481, 479, 477, 476, 475,
+ 474, 473, 472, 471, 470, 469, 468, 467, 466, 464,
+ 463, 462, 461, 459, 458, 457, 456, 455, 454, 453,
452, 451, 450, 449, 448, 447, 445, 444, 443, 442,
440, 439, 438, 437, 436, 434, 433, 431, 430, 428,
427, 426, 425, 424, 423, 421, 420, 419, 418, 417,
- 412, 411, 409, 408, 407, 406, 405, 403, 402, 400,
+ 412, 411, 409, 408, 407, 406, 405, 403, 402, 400,
397, 395, 394, 392, 391, 389, 388, 387, 386, 385,
384, 383, 382, 381, 380, 378, 377, 376, 374, 373,
372, 371, 369, 368, 367, 365, 364, 363, 362, 361,
326, 324, 323, 322, 321, 318, 317, 316, 315, 314,
313, 312, 311, 310, 306, 304, 301, 300, 297, 293,
286, 284, 283, 282, 281, 279, 278, 277, 276, 275,
- 274, 273, 272, 271, 270, 269, 268, 267, 266, 264,
+ 274, 273, 272, 271, 270, 269, 268, 267, 266, 264,
263, 262, 261, 260, 259, 258, 257, 256, 255, 254,
253, 251, 250, 249, 248, 247, 246, 245, 244, 242,
241, 240, 239, 238, 237, 236, 235, 233, 232, 231,
191, 189, 186, 178, 177, 176, 174, 173, 171, 170,
169, 168, 164, 163, 161, 159, 158, 157, 156, 155,
153, 152, 151, 150, 148, 147, 146, 145, 144, 143,
- 142, 141, 140, 138, 137, 135, 133, 132, 131, 130,
+ 142, 141, 140, 138, 137, 135, 133, 132, 131, 130,
128, 127, 126, 124, 123, 122, 121, 120, 116, 110,
107, 106, 104, 99, 98, 79, 74, 68, 60, 53,
50, 49, 47, 43, 41, 39, 38, 24, 14, 11,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
- 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467,
-
- 1467, 1467
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+
+ 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477, 1477,
+ 1477, 1477
} ;
static yy_state_type yy_last_accepting_state;
extern int yy_flex_debug;
int yy_flex_debug = 1;
-static const flex_int16_t yy_rule_linenum[175] =
+static const flex_int16_t yy_rule_linenum[176] =
{ 0,
147, 149, 151, 156, 157, 162, 163, 164, 176, 179,
184, 191, 200, 209, 218, 227, 236, 245, 255, 264,
273, 282, 291, 300, 309, 318, 327, 336, 345, 354,
366, 375, 384, 393, 402, 413, 424, 435, 446, 456,
- 466, 477, 488, 499, 510, 521, 532, 543, 554, 565,
- 576, 587, 596, 605, 615, 624, 634, 648, 664, 673,
- 682, 691, 700, 721, 742, 751, 761, 770, 781, 790,
- 799, 808, 817, 826, 836, 845, 854, 863, 872, 881,
- 890, 899, 908, 917, 926, 936, 947, 959, 968, 977,
- 987, 997, 1007, 1017, 1027, 1037, 1046, 1056, 1065, 1074,
-
- 1083, 1092, 1102, 1112, 1121, 1131, 1140, 1149, 1158, 1167,
+ 466, 477, 488, 499, 510, 521, 532, 543, 554, 563,
+ 574, 585, 596, 605, 614, 624, 633, 643, 657, 673,
+ 682, 691, 700, 709, 730, 751, 760, 770, 779, 790,
+ 799, 808, 817, 826, 835, 845, 854, 863, 872, 881,
+ 890, 899, 908, 917, 926, 935, 945, 956, 968, 977,
+ 986, 996, 1006, 1016, 1026, 1036, 1046, 1055, 1065, 1074,
+
+ 1083, 1092, 1101, 1111, 1121, 1130, 1140, 1149, 1158, 1167,
1176, 1185, 1194, 1203, 1212, 1221, 1230, 1239, 1248, 1257,
1266, 1275, 1284, 1293, 1302, 1311, 1320, 1329, 1338, 1347,
- 1356, 1365, 1374, 1383, 1392, 1401, 1411, 1421, 1431, 1441,
- 1451, 1461, 1471, 1481, 1491, 1500, 1509, 1518, 1527, 1536,
- 1545, 1554, 1565, 1576, 1589, 1602, 1617, 1716, 1721, 1726,
- 1731, 1732, 1733, 1734, 1735, 1736, 1738, 1756, 1769, 1774,
- 1778, 1780, 1782, 1784
+ 1356, 1365, 1374, 1383, 1392, 1401, 1410, 1420, 1430, 1440,
+ 1450, 1460, 1470, 1480, 1490, 1500, 1509, 1518, 1527, 1536,
+ 1545, 1554, 1563, 1574, 1585, 1598, 1611, 1626, 1725, 1730,
+ 1735, 1740, 1741, 1742, 1743, 1744, 1745, 1747, 1765, 1778,
+ 1783, 1787, 1789, 1791, 1793
} ;
/* The intent behind this definition is that it'll catch
/* To avoid the call to exit... oops! */
#define YY_FATAL_ERROR(msg) isc::dhcp::Parser4Context::fatal(msg)
-#line 1751 "dhcp4_lexer.cc"
+#line 1757 "dhcp4_lexer.cc"
/* noyywrap disables automatic rewinding for the next file to parse. Since we
always parse only a single string, there's no need to do any wraps. And
using yywrap requires linking with -lfl, which provides the default yywrap
by moving it ahead by yyleng bytes. yyleng specifies the length of the
currently matched token. */
#define YY_USER_ACTION driver.loc_.columns(yyleng);
-#line 1777 "dhcp4_lexer.cc"
-#line 1778 "dhcp4_lexer.cc"
+#line 1783 "dhcp4_lexer.cc"
+#line 1784 "dhcp4_lexer.cc"
#define INITIAL 0
#define COMMENT 1
}
-#line 2108 "dhcp4_lexer.cc"
+#line 2114 "dhcp4_lexer.cc"
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 1468 )
+ if ( yy_current_state >= 1478 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
++yy_cp;
}
- while ( yy_current_state != 1467 );
+ while ( yy_current_state != 1477 );
yy_cp = (yy_last_accepting_cpos);
yy_current_state = (yy_last_accepting_state);
{
if ( yy_act == 0 )
fprintf( stderr, "--scanner backing up\n" );
- else if ( yy_act < 175 )
+ else if ( yy_act < 176 )
fprintf( stderr, "--accepting rule at line %ld (\"%s\")\n",
(long)yy_rule_linenum[yy_act], yytext );
- else if ( yy_act == 175 )
+ else if ( yy_act == 176 )
fprintf( stderr, "--accepting default rule (\"%s\")\n",
yytext );
- else if ( yy_act == 176 )
+ else if ( yy_act == 177 )
fprintf( stderr, "--(end of buffer or a NUL)\n" );
else
fprintf( stderr, "--EOF (start condition %d)\n", YY_START );
case 49:
YY_RULE_SETUP
#line 554 "dhcp4_lexer.ll"
+{
+ switch(driver.ctx_) {
+ case isc::dhcp::Parser4Context::LEASE_DATABASE:
+ return isc::dhcp::Dhcp4Parser::make_MAX_ROW_ERRORS(driver.loc_);
+ default:
+ return isc::dhcp::Dhcp4Parser::make_STRING("max_row_errors", driver.loc_);
+ }
+}
+ YY_BREAK
+case 50:
+YY_RULE_SETUP
+#line 563 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 50:
+case 51:
YY_RULE_SETUP
-#line 565 "dhcp4_lexer.ll"
+#line 574 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 51:
+case 52:
YY_RULE_SETUP
-#line 576 "dhcp4_lexer.ll"
+#line 585 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 52:
+case 53:
YY_RULE_SETUP
-#line 587 "dhcp4_lexer.ll"
+#line 596 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 53:
+case 54:
YY_RULE_SETUP
-#line 596 "dhcp4_lexer.ll"
+#line 605 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 54:
+case 55:
YY_RULE_SETUP
-#line 605 "dhcp4_lexer.ll"
+#line 614 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 55:
+case 56:
YY_RULE_SETUP
-#line 615 "dhcp4_lexer.ll"
+#line 624 "dhcp4_lexer.ll"
{
switch (driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 56:
+case 57:
YY_RULE_SETUP
-#line 624 "dhcp4_lexer.ll"
+#line 633 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 57:
+case 58:
YY_RULE_SETUP
-#line 634 "dhcp4_lexer.ll"
+#line 643 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 58:
+case 59:
YY_RULE_SETUP
-#line 648 "dhcp4_lexer.ll"
+#line 657 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::LEASE_DATABASE:
}
}
YY_BREAK
-case 59:
+case 60:
YY_RULE_SETUP
-#line 664 "dhcp4_lexer.ll"
+#line 673 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OPTION_DATA:
}
}
YY_BREAK
-case 60:
+case 61:
YY_RULE_SETUP
-#line 673 "dhcp4_lexer.ll"
+#line 682 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OPTION_DATA:
}
}
YY_BREAK
-case 61:
+case 62:
YY_RULE_SETUP
-#line 682 "dhcp4_lexer.ll"
+#line 691 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 62:
+case 63:
YY_RULE_SETUP
-#line 691 "dhcp4_lexer.ll"
+#line 700 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::POOLS:
}
}
YY_BREAK
-case 63:
+case 64:
YY_RULE_SETUP
-#line 700 "dhcp4_lexer.ll"
+#line 709 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 64:
+case 65:
YY_RULE_SETUP
-#line 721 "dhcp4_lexer.ll"
+#line 730 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 65:
+case 66:
YY_RULE_SETUP
-#line 742 "dhcp4_lexer.ll"
+#line 751 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 66:
+case 67:
YY_RULE_SETUP
-#line 751 "dhcp4_lexer.ll"
+#line 760 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 67:
+case 68:
YY_RULE_SETUP
-#line 761 "dhcp4_lexer.ll"
+#line 770 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 68:
+case 69:
YY_RULE_SETUP
-#line 770 "dhcp4_lexer.ll"
+#line 779 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 69:
+case 70:
YY_RULE_SETUP
-#line 781 "dhcp4_lexer.ll"
+#line 790 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 70:
+case 71:
YY_RULE_SETUP
-#line 790 "dhcp4_lexer.ll"
+#line 799 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 71:
+case 72:
YY_RULE_SETUP
-#line 799 "dhcp4_lexer.ll"
+#line 808 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 72:
+case 73:
YY_RULE_SETUP
-#line 808 "dhcp4_lexer.ll"
+#line 817 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 73:
+case 74:
YY_RULE_SETUP
-#line 817 "dhcp4_lexer.ll"
+#line 826 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 74:
+case 75:
YY_RULE_SETUP
-#line 826 "dhcp4_lexer.ll"
+#line 835 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OPTION_DEF:
}
}
YY_BREAK
-case 75:
+case 76:
YY_RULE_SETUP
-#line 836 "dhcp4_lexer.ll"
+#line 845 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 76:
+case 77:
YY_RULE_SETUP
-#line 845 "dhcp4_lexer.ll"
+#line 854 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::CONFIG:
}
}
YY_BREAK
-case 77:
+case 78:
YY_RULE_SETUP
-#line 854 "dhcp4_lexer.ll"
+#line 863 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::LOGGING:
}
}
YY_BREAK
-case 78:
+case 79:
YY_RULE_SETUP
-#line 863 "dhcp4_lexer.ll"
+#line 872 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::LOGGERS:
}
}
YY_BREAK
-case 79:
+case 80:
YY_RULE_SETUP
-#line 872 "dhcp4_lexer.ll"
+#line 881 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OUTPUT_OPTIONS:
}
}
YY_BREAK
-case 80:
+case 81:
YY_RULE_SETUP
-#line 881 "dhcp4_lexer.ll"
+#line 890 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::LOGGERS:
}
}
YY_BREAK
-case 81:
+case 82:
YY_RULE_SETUP
-#line 890 "dhcp4_lexer.ll"
+#line 899 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OUTPUT_OPTIONS:
}
}
YY_BREAK
-case 82:
+case 83:
YY_RULE_SETUP
-#line 899 "dhcp4_lexer.ll"
+#line 908 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OUTPUT_OPTIONS:
}
}
YY_BREAK
-case 83:
+case 84:
YY_RULE_SETUP
-#line 908 "dhcp4_lexer.ll"
+#line 917 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OUTPUT_OPTIONS:
}
}
YY_BREAK
-case 84:
+case 85:
YY_RULE_SETUP
-#line 917 "dhcp4_lexer.ll"
+#line 926 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::LOGGERS:
}
}
YY_BREAK
-case 85:
+case 86:
YY_RULE_SETUP
-#line 926 "dhcp4_lexer.ll"
+#line 935 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 86:
+case 87:
YY_RULE_SETUP
-#line 936 "dhcp4_lexer.ll"
+#line 945 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 87:
+case 88:
YY_RULE_SETUP
-#line 947 "dhcp4_lexer.ll"
+#line 956 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 88:
+case 89:
YY_RULE_SETUP
-#line 959 "dhcp4_lexer.ll"
+#line 968 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::CLIENT_CLASSES:
}
}
YY_BREAK
-case 89:
+case 90:
YY_RULE_SETUP
-#line 968 "dhcp4_lexer.ll"
+#line 977 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::CLIENT_CLASSES:
}
}
YY_BREAK
-case 90:
+case 91:
YY_RULE_SETUP
-#line 977 "dhcp4_lexer.ll"
+#line 986 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 91:
+case 92:
YY_RULE_SETUP
-#line 987 "dhcp4_lexer.ll"
+#line 996 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::HOST_RESERVATION_IDENTIFIERS:
}
}
YY_BREAK
-case 92:
+case 93:
YY_RULE_SETUP
-#line 997 "dhcp4_lexer.ll"
+#line 1006 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::HOST_RESERVATION_IDENTIFIERS:
}
}
YY_BREAK
-case 93:
+case 94:
YY_RULE_SETUP
-#line 1007 "dhcp4_lexer.ll"
+#line 1016 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::HOST_RESERVATION_IDENTIFIERS:
}
}
YY_BREAK
-case 94:
+case 95:
YY_RULE_SETUP
-#line 1017 "dhcp4_lexer.ll"
+#line 1026 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::HOST_RESERVATION_IDENTIFIERS:
}
}
YY_BREAK
-case 95:
+case 96:
YY_RULE_SETUP
-#line 1027 "dhcp4_lexer.ll"
+#line 1036 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::HOST_RESERVATION_IDENTIFIERS:
}
}
YY_BREAK
-case 96:
+case 97:
YY_RULE_SETUP
-#line 1037 "dhcp4_lexer.ll"
+#line 1046 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::RESERVATIONS:
}
}
YY_BREAK
-case 97:
+case 98:
YY_RULE_SETUP
-#line 1046 "dhcp4_lexer.ll"
+#line 1055 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OPTION_DEF:
}
}
YY_BREAK
-case 98:
+case 99:
YY_RULE_SETUP
-#line 1056 "dhcp4_lexer.ll"
+#line 1065 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OPTION_DATA:
}
}
YY_BREAK
-case 99:
+case 100:
YY_RULE_SETUP
-#line 1065 "dhcp4_lexer.ll"
+#line 1074 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OPTION_DEF:
}
}
YY_BREAK
-case 100:
+case 101:
YY_RULE_SETUP
-#line 1074 "dhcp4_lexer.ll"
+#line 1083 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OPTION_DEF:
}
}
YY_BREAK
-case 101:
+case 102:
YY_RULE_SETUP
-#line 1083 "dhcp4_lexer.ll"
+#line 1092 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::OPTION_DEF:
}
}
YY_BREAK
-case 102:
+case 103:
YY_RULE_SETUP
-#line 1092 "dhcp4_lexer.ll"
+#line 1101 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 103:
+case 104:
YY_RULE_SETUP
-#line 1102 "dhcp4_lexer.ll"
+#line 1111 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::RELAY:
}
}
YY_BREAK
-case 104:
+case 105:
YY_RULE_SETUP
-#line 1112 "dhcp4_lexer.ll"
+#line 1121 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::RELAY:
}
}
YY_BREAK
-case 105:
+case 106:
YY_RULE_SETUP
-#line 1121 "dhcp4_lexer.ll"
+#line 1130 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 106:
+case 107:
YY_RULE_SETUP
-#line 1131 "dhcp4_lexer.ll"
+#line 1140 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::HOOKS_LIBRARIES:
}
}
YY_BREAK
-case 107:
+case 108:
YY_RULE_SETUP
-#line 1140 "dhcp4_lexer.ll"
+#line 1149 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::HOOKS_LIBRARIES:
}
}
YY_BREAK
-case 108:
+case 109:
YY_RULE_SETUP
-#line 1149 "dhcp4_lexer.ll"
+#line 1158 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 109:
+case 110:
YY_RULE_SETUP
-#line 1158 "dhcp4_lexer.ll"
+#line 1167 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 110:
+case 111:
YY_RULE_SETUP
-#line 1167 "dhcp4_lexer.ll"
+#line 1176 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 111:
+case 112:
YY_RULE_SETUP
-#line 1176 "dhcp4_lexer.ll"
+#line 1185 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 112:
+case 113:
YY_RULE_SETUP
-#line 1185 "dhcp4_lexer.ll"
+#line 1194 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 113:
+case 114:
YY_RULE_SETUP
-#line 1194 "dhcp4_lexer.ll"
+#line 1203 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 114:
+case 115:
YY_RULE_SETUP
-#line 1203 "dhcp4_lexer.ll"
+#line 1212 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 115:
+case 116:
YY_RULE_SETUP
-#line 1212 "dhcp4_lexer.ll"
+#line 1221 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 116:
+case 117:
YY_RULE_SETUP
-#line 1221 "dhcp4_lexer.ll"
+#line 1230 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 117:
+case 118:
YY_RULE_SETUP
-#line 1230 "dhcp4_lexer.ll"
+#line 1239 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::CONTROL_SOCKET:
}
}
YY_BREAK
-case 118:
+case 119:
YY_RULE_SETUP
-#line 1239 "dhcp4_lexer.ll"
+#line 1248 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::CONTROL_SOCKET:
}
}
YY_BREAK
-case 119:
+case 120:
YY_RULE_SETUP
-#line 1248 "dhcp4_lexer.ll"
+#line 1257 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 120:
+case 121:
YY_RULE_SETUP
-#line 1257 "dhcp4_lexer.ll"
+#line 1266 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 121:
+case 122:
YY_RULE_SETUP
-#line 1266 "dhcp4_lexer.ll"
+#line 1275 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 122:
+case 123:
YY_RULE_SETUP
-#line 1275 "dhcp4_lexer.ll"
+#line 1284 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 123:
+case 124:
YY_RULE_SETUP
-#line 1284 "dhcp4_lexer.ll"
+#line 1293 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 124:
+case 125:
YY_RULE_SETUP
-#line 1293 "dhcp4_lexer.ll"
+#line 1302 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 125:
+case 126:
YY_RULE_SETUP
-#line 1302 "dhcp4_lexer.ll"
+#line 1311 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 126:
+case 127:
YY_RULE_SETUP
-#line 1311 "dhcp4_lexer.ll"
+#line 1320 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 127:
+case 128:
YY_RULE_SETUP
-#line 1320 "dhcp4_lexer.ll"
+#line 1329 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 128:
+case 129:
YY_RULE_SETUP
-#line 1329 "dhcp4_lexer.ll"
+#line 1338 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 129:
+case 130:
YY_RULE_SETUP
-#line 1338 "dhcp4_lexer.ll"
+#line 1347 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 130:
+case 131:
YY_RULE_SETUP
-#line 1347 "dhcp4_lexer.ll"
+#line 1356 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 131:
+case 132:
YY_RULE_SETUP
-#line 1356 "dhcp4_lexer.ll"
+#line 1365 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 132:
+case 133:
YY_RULE_SETUP
-#line 1365 "dhcp4_lexer.ll"
+#line 1374 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 133:
+case 134:
YY_RULE_SETUP
-#line 1374 "dhcp4_lexer.ll"
+#line 1383 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 134:
+case 135:
YY_RULE_SETUP
-#line 1383 "dhcp4_lexer.ll"
+#line 1392 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 135:
+case 136:
YY_RULE_SETUP
-#line 1392 "dhcp4_lexer.ll"
+#line 1401 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP_DDNS:
}
}
YY_BREAK
-case 136:
+case 137:
YY_RULE_SETUP
-#line 1401 "dhcp4_lexer.ll"
+#line 1410 "dhcp4_lexer.ll"
{
/* dhcp-ddns value keywords are case insensitive */
if (driver.ctx_ == isc::dhcp::Parser4Context::NCR_PROTOCOL) {
return isc::dhcp::Dhcp4Parser::make_STRING(tmp, driver.loc_);
}
YY_BREAK
-case 137:
+case 138:
YY_RULE_SETUP
-#line 1411 "dhcp4_lexer.ll"
+#line 1420 "dhcp4_lexer.ll"
{
/* dhcp-ddns value keywords are case insensitive */
if (driver.ctx_ == isc::dhcp::Parser4Context::NCR_PROTOCOL) {
return isc::dhcp::Dhcp4Parser::make_STRING(tmp, driver.loc_);
}
YY_BREAK
-case 138:
+case 139:
YY_RULE_SETUP
-#line 1421 "dhcp4_lexer.ll"
+#line 1430 "dhcp4_lexer.ll"
{
/* dhcp-ddns value keywords are case insensitive */
if (driver.ctx_ == isc::dhcp::Parser4Context::NCR_FORMAT) {
return isc::dhcp::Dhcp4Parser::make_STRING(tmp, driver.loc_);
}
YY_BREAK
-case 139:
+case 140:
YY_RULE_SETUP
-#line 1431 "dhcp4_lexer.ll"
+#line 1440 "dhcp4_lexer.ll"
{
/* dhcp-ddns value keywords are case insensitive */
if (driver.ctx_ == isc::dhcp::Parser4Context::REPLACE_CLIENT_NAME) {
return isc::dhcp::Dhcp4Parser::make_STRING(tmp, driver.loc_);
}
YY_BREAK
-case 140:
+case 141:
YY_RULE_SETUP
-#line 1441 "dhcp4_lexer.ll"
+#line 1450 "dhcp4_lexer.ll"
{
/* dhcp-ddns value keywords are case insensitive */
if (driver.ctx_ == isc::dhcp::Parser4Context::REPLACE_CLIENT_NAME) {
return isc::dhcp::Dhcp4Parser::make_STRING(tmp, driver.loc_);
}
YY_BREAK
-case 141:
+case 142:
YY_RULE_SETUP
-#line 1451 "dhcp4_lexer.ll"
+#line 1460 "dhcp4_lexer.ll"
{
/* dhcp-ddns value keywords are case insensitive */
if (driver.ctx_ == isc::dhcp::Parser4Context::REPLACE_CLIENT_NAME) {
return isc::dhcp::Dhcp4Parser::make_STRING(tmp, driver.loc_);
}
YY_BREAK
-case 142:
+case 143:
YY_RULE_SETUP
-#line 1461 "dhcp4_lexer.ll"
+#line 1470 "dhcp4_lexer.ll"
{
/* dhcp-ddns value keywords are case insensitive */
if (driver.ctx_ == isc::dhcp::Parser4Context::REPLACE_CLIENT_NAME) {
return isc::dhcp::Dhcp4Parser::make_STRING(tmp, driver.loc_);
}
YY_BREAK
-case 143:
+case 144:
YY_RULE_SETUP
-#line 1471 "dhcp4_lexer.ll"
+#line 1480 "dhcp4_lexer.ll"
{
/* dhcp-ddns value keywords are case insensitive */
if (driver.ctx_ == isc::dhcp::Parser4Context::REPLACE_CLIENT_NAME) {
return isc::dhcp::Dhcp4Parser::make_STRING(tmp, driver.loc_);
}
YY_BREAK
-case 144:
+case 145:
YY_RULE_SETUP
-#line 1481 "dhcp4_lexer.ll"
+#line 1490 "dhcp4_lexer.ll"
{
/* dhcp-ddns value keywords are case insensitive */
if (driver.ctx_ == isc::dhcp::Parser4Context::REPLACE_CLIENT_NAME) {
return isc::dhcp::Dhcp4Parser::make_STRING(tmp, driver.loc_);
}
YY_BREAK
-case 145:
+case 146:
YY_RULE_SETUP
-#line 1491 "dhcp4_lexer.ll"
+#line 1500 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::CONFIG:
}
}
YY_BREAK
-case 146:
+case 147:
YY_RULE_SETUP
-#line 1500 "dhcp4_lexer.ll"
+#line 1509 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::CONFIG:
}
}
YY_BREAK
-case 147:
+case 148:
YY_RULE_SETUP
-#line 1509 "dhcp4_lexer.ll"
+#line 1518 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::CONFIG:
}
}
YY_BREAK
-case 148:
+case 149:
YY_RULE_SETUP
-#line 1518 "dhcp4_lexer.ll"
+#line 1527 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 149:
+case 150:
YY_RULE_SETUP
-#line 1527 "dhcp4_lexer.ll"
+#line 1536 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 150:
+case 151:
YY_RULE_SETUP
-#line 1536 "dhcp4_lexer.ll"
+#line 1545 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::SUBNET4:
}
}
YY_BREAK
-case 151:
+case 152:
YY_RULE_SETUP
-#line 1545 "dhcp4_lexer.ll"
+#line 1554 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 152:
+case 153:
YY_RULE_SETUP
-#line 1554 "dhcp4_lexer.ll"
+#line 1563 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 153:
+case 154:
YY_RULE_SETUP
-#line 1565 "dhcp4_lexer.ll"
+#line 1574 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 154:
+case 155:
YY_RULE_SETUP
-#line 1576 "dhcp4_lexer.ll"
+#line 1585 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 155:
+case 156:
YY_RULE_SETUP
-#line 1589 "dhcp4_lexer.ll"
+#line 1598 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 156:
+case 157:
YY_RULE_SETUP
-#line 1602 "dhcp4_lexer.ll"
+#line 1611 "dhcp4_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
}
}
YY_BREAK
-case 157:
+case 158:
YY_RULE_SETUP
-#line 1617 "dhcp4_lexer.ll"
+#line 1626 "dhcp4_lexer.ll"
{
/* A string has been matched. It contains the actual string and single quotes.
We need to get those quotes out of the way and just use its content, e.g.
return isc::dhcp::Dhcp4Parser::make_STRING(decoded, driver.loc_);
}
YY_BREAK
-case 158:
-/* rule 158 can match eol */
+case 159:
+/* rule 159 can match eol */
YY_RULE_SETUP
-#line 1716 "dhcp4_lexer.ll"
+#line 1725 "dhcp4_lexer.ll"
{
/* Bad string with a forbidden control character inside */
driver.error(driver.loc_, "Invalid control in " + std::string(yytext));
}
YY_BREAK
-case 159:
-/* rule 159 can match eol */
+case 160:
+/* rule 160 can match eol */
YY_RULE_SETUP
-#line 1721 "dhcp4_lexer.ll"
+#line 1730 "dhcp4_lexer.ll"
{
/* Bad string with a bad escape inside */
driver.error(driver.loc_, "Bad escape in " + std::string(yytext));
}
YY_BREAK
-case 160:
+case 161:
YY_RULE_SETUP
-#line 1726 "dhcp4_lexer.ll"
+#line 1735 "dhcp4_lexer.ll"
{
/* Bad string with an open escape at the end */
driver.error(driver.loc_, "Overflow escape in " + std::string(yytext));
}
YY_BREAK
-case 161:
+case 162:
YY_RULE_SETUP
-#line 1731 "dhcp4_lexer.ll"
+#line 1740 "dhcp4_lexer.ll"
{ return isc::dhcp::Dhcp4Parser::make_LSQUARE_BRACKET(driver.loc_); }
YY_BREAK
-case 162:
+case 163:
YY_RULE_SETUP
-#line 1732 "dhcp4_lexer.ll"
+#line 1741 "dhcp4_lexer.ll"
{ return isc::dhcp::Dhcp4Parser::make_RSQUARE_BRACKET(driver.loc_); }
YY_BREAK
-case 163:
+case 164:
YY_RULE_SETUP
-#line 1733 "dhcp4_lexer.ll"
+#line 1742 "dhcp4_lexer.ll"
{ return isc::dhcp::Dhcp4Parser::make_LCURLY_BRACKET(driver.loc_); }
YY_BREAK
-case 164:
+case 165:
YY_RULE_SETUP
-#line 1734 "dhcp4_lexer.ll"
+#line 1743 "dhcp4_lexer.ll"
{ return isc::dhcp::Dhcp4Parser::make_RCURLY_BRACKET(driver.loc_); }
YY_BREAK
-case 165:
+case 166:
YY_RULE_SETUP
-#line 1735 "dhcp4_lexer.ll"
+#line 1744 "dhcp4_lexer.ll"
{ return isc::dhcp::Dhcp4Parser::make_COMMA(driver.loc_); }
YY_BREAK
-case 166:
+case 167:
YY_RULE_SETUP
-#line 1736 "dhcp4_lexer.ll"
+#line 1745 "dhcp4_lexer.ll"
{ return isc::dhcp::Dhcp4Parser::make_COLON(driver.loc_); }
YY_BREAK
-case 167:
+case 168:
YY_RULE_SETUP
-#line 1738 "dhcp4_lexer.ll"
+#line 1747 "dhcp4_lexer.ll"
{
/* An integer was found. */
std::string tmp(yytext);
return isc::dhcp::Dhcp4Parser::make_INTEGER(integer, driver.loc_);
}
YY_BREAK
-case 168:
+case 169:
YY_RULE_SETUP
-#line 1756 "dhcp4_lexer.ll"
+#line 1765 "dhcp4_lexer.ll"
{
/* A floating point was found. */
std::string tmp(yytext);
return isc::dhcp::Dhcp4Parser::make_FLOAT(fp, driver.loc_);
}
YY_BREAK
-case 169:
+case 170:
YY_RULE_SETUP
-#line 1769 "dhcp4_lexer.ll"
+#line 1778 "dhcp4_lexer.ll"
{
string tmp(yytext);
return isc::dhcp::Dhcp4Parser::make_BOOLEAN(tmp == "true", driver.loc_);
}
YY_BREAK
-case 170:
+case 171:
YY_RULE_SETUP
-#line 1774 "dhcp4_lexer.ll"
+#line 1783 "dhcp4_lexer.ll"
{
return isc::dhcp::Dhcp4Parser::make_NULL_TYPE(driver.loc_);
}
YY_BREAK
-case 171:
+case 172:
YY_RULE_SETUP
-#line 1778 "dhcp4_lexer.ll"
+#line 1787 "dhcp4_lexer.ll"
driver.error (driver.loc_, "JSON true reserved keyword is lower case only");
YY_BREAK
-case 172:
+case 173:
YY_RULE_SETUP
-#line 1780 "dhcp4_lexer.ll"
+#line 1789 "dhcp4_lexer.ll"
driver.error (driver.loc_, "JSON false reserved keyword is lower case only");
YY_BREAK
-case 173:
+case 174:
YY_RULE_SETUP
-#line 1782 "dhcp4_lexer.ll"
+#line 1791 "dhcp4_lexer.ll"
driver.error (driver.loc_, "JSON null reserved keyword is lower case only");
YY_BREAK
-case 174:
+case 175:
YY_RULE_SETUP
-#line 1784 "dhcp4_lexer.ll"
+#line 1793 "dhcp4_lexer.ll"
driver.error (driver.loc_, "Invalid character: " + std::string(yytext));
YY_BREAK
case YY_STATE_EOF(INITIAL):
-#line 1786 "dhcp4_lexer.ll"
+#line 1795 "dhcp4_lexer.ll"
{
if (driver.states_.empty()) {
return isc::dhcp::Dhcp4Parser::make_END(driver.loc_);
BEGIN(DIR_EXIT);
}
YY_BREAK
-case 175:
+case 176:
YY_RULE_SETUP
-#line 1809 "dhcp4_lexer.ll"
+#line 1818 "dhcp4_lexer.ll"
ECHO;
YY_BREAK
-#line 4390 "dhcp4_lexer.cc"
+#line 4408 "dhcp4_lexer.cc"
case YY_END_OF_BUFFER:
{
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 1468 )
+ if ( yy_current_state >= 1478 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 1468 )
+ if ( yy_current_state >= 1478 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
- yy_is_jam = (yy_current_state == 1467);
+ yy_is_jam = (yy_current_state == 1477);
return yy_is_jam ? 0 : yy_current_state;
}
/* %ok-for-header */
-#line 1809 "dhcp4_lexer.ll"
+#line 1818 "dhcp4_lexer.ll"
using namespace isc::dhcp;
}
}
+\"max-row-errors\" {
+ switch(driver.ctx_) {
+ case isc::dhcp::Parser4Context::LEASE_DATABASE:
+ return isc::dhcp::Dhcp4Parser::make_MAX_ROW_ERRORS(driver.loc_);
+ default:
+ return isc::dhcp::Dhcp4Parser::make_STRING("max_row_errors", driver.loc_);
+ }
+}
+
\"valid-lifetime\" {
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
{
switch (that.type_get ())
{
- case 185: // value
- case 189: // map_value
- case 230: // socket_type
- case 233: // outbound_interface_value
- case 255: // db_type
- case 337: // hr_mode
- case 486: // ncr_protocol_value
- case 493: // replace_client_name_value
+ case 186: // value
+ case 190: // map_value
+ case 231: // socket_type
+ case 234: // outbound_interface_value
+ case 256: // db_type
+ case 339: // hr_mode
+ case 488: // ncr_protocol_value
+ case 495: // replace_client_name_value
value.YY_MOVE_OR_COPY< ElementPtr > (YY_MOVE (that.value));
break;
- case 168: // "boolean"
+ case 169: // "boolean"
value.YY_MOVE_OR_COPY< bool > (YY_MOVE (that.value));
break;
- case 167: // "floating point"
+ case 168: // "floating point"
value.YY_MOVE_OR_COPY< double > (YY_MOVE (that.value));
break;
- case 166: // "integer"
+ case 167: // "integer"
value.YY_MOVE_OR_COPY< int64_t > (YY_MOVE (that.value));
break;
- case 165: // "constant string"
+ case 166: // "constant string"
value.YY_MOVE_OR_COPY< std::string > (YY_MOVE (that.value));
break;
break;
}
-#if 201103L <= YY_CPLUSPLUS
+#if defined __cplusplus && 201103L <= __cplusplus
// that is emptied.
that.state = empty_state;
#endif
{
switch (that.type_get ())
{
- case 185: // value
- case 189: // map_value
- case 230: // socket_type
- case 233: // outbound_interface_value
- case 255: // db_type
- case 337: // hr_mode
- case 486: // ncr_protocol_value
- case 493: // replace_client_name_value
+ case 186: // value
+ case 190: // map_value
+ case 231: // socket_type
+ case 234: // outbound_interface_value
+ case 256: // db_type
+ case 339: // hr_mode
+ case 488: // ncr_protocol_value
+ case 495: // replace_client_name_value
value.move< ElementPtr > (YY_MOVE (that.value));
break;
- case 168: // "boolean"
+ case 169: // "boolean"
value.move< bool > (YY_MOVE (that.value));
break;
- case 167: // "floating point"
+ case 168: // "floating point"
value.move< double > (YY_MOVE (that.value));
break;
- case 166: // "integer"
+ case 167: // "integer"
value.move< int64_t > (YY_MOVE (that.value));
break;
- case 165: // "constant string"
+ case 166: // "constant string"
value.move< std::string > (YY_MOVE (that.value));
break;
that.type = empty_symbol;
}
-#if YY_CPLUSPLUS < 201103L
+#if !defined __cplusplus || __cplusplus < 201103L
Dhcp4Parser::stack_symbol_type&
Dhcp4Parser::stack_symbol_type::operator= (stack_symbol_type& that)
{
state = that.state;
switch (that.type_get ())
{
- case 185: // value
- case 189: // map_value
- case 230: // socket_type
- case 233: // outbound_interface_value
- case 255: // db_type
- case 337: // hr_mode
- case 486: // ncr_protocol_value
- case 493: // replace_client_name_value
+ case 186: // value
+ case 190: // map_value
+ case 231: // socket_type
+ case 234: // outbound_interface_value
+ case 256: // db_type
+ case 339: // hr_mode
+ case 488: // ncr_protocol_value
+ case 495: // replace_client_name_value
value.move< ElementPtr > (that.value);
break;
- case 168: // "boolean"
+ case 169: // "boolean"
value.move< bool > (that.value);
break;
- case 167: // "floating point"
+ case 168: // "floating point"
value.move< double > (that.value);
break;
- case 166: // "integer"
+ case 167: // "integer"
value.move< int64_t > (that.value);
break;
- case 165: // "constant string"
+ case 166: // "constant string"
value.move< std::string > (that.value);
break;
<< yysym.location << ": ";
switch (yytype)
{
- case 165: // "constant string"
+ case 166: // "constant string"
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< std::string > (); }
#line 401 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 166: // "integer"
+ case 167: // "integer"
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< int64_t > (); }
#line 408 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 167: // "floating point"
+ case 168: // "floating point"
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< double > (); }
#line 415 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 168: // "boolean"
+ case 169: // "boolean"
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< bool > (); }
#line 422 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 185: // value
+ case 186: // value
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 429 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 189: // map_value
+ case 190: // map_value
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 436 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 230: // socket_type
+ case 231: // socket_type
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 443 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 233: // outbound_interface_value
+ case 234: // outbound_interface_value
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 450 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 255: // db_type
+ case 256: // db_type
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 457 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 337: // hr_mode
+ case 339: // hr_mode
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 464 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 486: // ncr_protocol_value
+ case 488: // ncr_protocol_value
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 471 "dhcp4_parser.cc" // lalr1.cc:672
break;
- case 493: // replace_client_name_value
+ case 495: // replace_client_name_value
-#line 245 "dhcp4_parser.yy" // lalr1.cc:672
+#line 246 "dhcp4_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 478 "dhcp4_parser.cc" // lalr1.cc:672
break;
void
Dhcp4Parser::yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym)
{
-#if 201103L <= YY_CPLUSPLUS
+#if defined __cplusplus && 201103L <= __cplusplus
yypush_ (m, stack_symbol_type (s, std::move (sym)));
#else
stack_symbol_type ss (s, sym);
when using variants. */
switch (yyr1_[yyn])
{
- case 185: // value
- case 189: // map_value
- case 230: // socket_type
- case 233: // outbound_interface_value
- case 255: // db_type
- case 337: // hr_mode
- case 486: // ncr_protocol_value
- case 493: // replace_client_name_value
+ case 186: // value
+ case 190: // map_value
+ case 231: // socket_type
+ case 234: // outbound_interface_value
+ case 256: // db_type
+ case 339: // hr_mode
+ case 488: // ncr_protocol_value
+ case 495: // replace_client_name_value
yylhs.value.emplace< ElementPtr > ();
break;
- case 168: // "boolean"
+ case 169: // "boolean"
yylhs.value.emplace< bool > ();
break;
- case 167: // "floating point"
+ case 168: // "floating point"
yylhs.value.emplace< double > ();
break;
- case 166: // "integer"
+ case 167: // "integer"
yylhs.value.emplace< int64_t > ();
break;
- case 165: // "constant string"
+ case 166: // "constant string"
yylhs.value.emplace< std::string > ();
break;
switch (yyn)
{
case 2:
-#line 254 "dhcp4_parser.yy" // lalr1.cc:907
+#line 255 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.NO_KEYWORD; }
#line 738 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 4:
-#line 255 "dhcp4_parser.yy" // lalr1.cc:907
+#line 256 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.CONFIG; }
#line 744 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 6:
-#line 256 "dhcp4_parser.yy" // lalr1.cc:907
+#line 257 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.DHCP4; }
#line 750 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 8:
-#line 257 "dhcp4_parser.yy" // lalr1.cc:907
+#line 258 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.INTERFACES_CONFIG; }
#line 756 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 10:
-#line 258 "dhcp4_parser.yy" // lalr1.cc:907
+#line 259 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.SUBNET4; }
#line 762 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 12:
-#line 259 "dhcp4_parser.yy" // lalr1.cc:907
+#line 260 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.POOLS; }
#line 768 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 14:
-#line 260 "dhcp4_parser.yy" // lalr1.cc:907
+#line 261 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.RESERVATIONS; }
#line 774 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 16:
-#line 261 "dhcp4_parser.yy" // lalr1.cc:907
+#line 262 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.DHCP4; }
#line 780 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 18:
-#line 262 "dhcp4_parser.yy" // lalr1.cc:907
+#line 263 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.OPTION_DEF; }
#line 786 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 20:
-#line 263 "dhcp4_parser.yy" // lalr1.cc:907
+#line 264 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.OPTION_DATA; }
#line 792 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 22:
-#line 264 "dhcp4_parser.yy" // lalr1.cc:907
+#line 265 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.HOOKS_LIBRARIES; }
#line 798 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 24:
-#line 265 "dhcp4_parser.yy" // lalr1.cc:907
+#line 266 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.DHCP_DDNS; }
#line 804 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 26:
-#line 266 "dhcp4_parser.yy" // lalr1.cc:907
+#line 267 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.LOGGING; }
#line 810 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 28:
-#line 267 "dhcp4_parser.yy" // lalr1.cc:907
+#line 268 "dhcp4_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.CONFIG_CONTROL; }
#line 816 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 30:
-#line 275 "dhcp4_parser.yy" // lalr1.cc:907
+#line 276 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location))); }
#line 822 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 31:
-#line 276 "dhcp4_parser.yy" // lalr1.cc:907
+#line 277 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new DoubleElement(yystack_[0].value.as< double > (), ctx.loc2pos(yystack_[0].location))); }
#line 828 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 32:
-#line 277 "dhcp4_parser.yy" // lalr1.cc:907
+#line 278 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location))); }
#line 834 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 33:
-#line 278 "dhcp4_parser.yy" // lalr1.cc:907
+#line 279 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location))); }
#line 840 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 34:
-#line 279 "dhcp4_parser.yy" // lalr1.cc:907
+#line 280 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new NullElement(ctx.loc2pos(yystack_[0].location))); }
#line 846 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 35:
-#line 280 "dhcp4_parser.yy" // lalr1.cc:907
+#line 281 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ctx.stack_.back(); ctx.stack_.pop_back(); }
#line 852 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 36:
-#line 281 "dhcp4_parser.yy" // lalr1.cc:907
+#line 282 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ctx.stack_.back(); ctx.stack_.pop_back(); }
#line 858 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 37:
-#line 284 "dhcp4_parser.yy" // lalr1.cc:907
+#line 285 "dhcp4_parser.yy" // lalr1.cc:907
{
// Push back the JSON value on the stack
ctx.stack_.push_back(yystack_[0].value.as< ElementPtr > ());
break;
case 38:
-#line 289 "dhcp4_parser.yy" // lalr1.cc:907
+#line 290 "dhcp4_parser.yy" // lalr1.cc:907
{
// This code is executed when we're about to start parsing
// the content of the map
break;
case 39:
-#line 294 "dhcp4_parser.yy" // lalr1.cc:907
+#line 295 "dhcp4_parser.yy" // lalr1.cc:907
{
// map parsing completed. If we ever want to do any wrap up
// (maybe some sanity checking), this would be the best place
break;
case 40:
-#line 300 "dhcp4_parser.yy" // lalr1.cc:907
+#line 301 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ctx.stack_.back(); ctx.stack_.pop_back(); }
#line 894 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 43:
-#line 307 "dhcp4_parser.yy" // lalr1.cc:907
+#line 308 "dhcp4_parser.yy" // lalr1.cc:907
{
// map containing a single entry
ctx.stack_.back()->set(yystack_[2].value.as< std::string > (), yystack_[0].value.as< ElementPtr > ());
break;
case 44:
-#line 311 "dhcp4_parser.yy" // lalr1.cc:907
+#line 312 "dhcp4_parser.yy" // lalr1.cc:907
{
// map consisting of a shorter map followed by
// comma and string:value
break;
case 45:
-#line 318 "dhcp4_parser.yy" // lalr1.cc:907
+#line 319 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(l);
break;
case 46:
-#line 321 "dhcp4_parser.yy" // lalr1.cc:907
+#line 322 "dhcp4_parser.yy" // lalr1.cc:907
{
// list parsing complete. Put any sanity checking here
}
break;
case 49:
-#line 329 "dhcp4_parser.yy" // lalr1.cc:907
+#line 330 "dhcp4_parser.yy" // lalr1.cc:907
{
// List consisting of a single element.
ctx.stack_.back()->add(yystack_[0].value.as< ElementPtr > ());
break;
case 50:
-#line 333 "dhcp4_parser.yy" // lalr1.cc:907
+#line 334 "dhcp4_parser.yy" // lalr1.cc:907
{
// List ending with , and a value.
ctx.stack_.back()->add(yystack_[0].value.as< ElementPtr > ());
break;
case 51:
-#line 340 "dhcp4_parser.yy" // lalr1.cc:907
+#line 341 "dhcp4_parser.yy" // lalr1.cc:907
{
// List parsing about to start
}
break;
case 52:
-#line 342 "dhcp4_parser.yy" // lalr1.cc:907
+#line 343 "dhcp4_parser.yy" // lalr1.cc:907
{
// list parsing complete. Put any sanity checking here
//ctx.stack_.pop_back();
break;
case 55:
-#line 351 "dhcp4_parser.yy" // lalr1.cc:907
+#line 352 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(s);
break;
case 56:
-#line 355 "dhcp4_parser.yy" // lalr1.cc:907
+#line 356 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(s);
break;
case 57:
-#line 366 "dhcp4_parser.yy" // lalr1.cc:907
+#line 367 "dhcp4_parser.yy" // lalr1.cc:907
{
const std::string& where = ctx.contextName();
const std::string& keyword = yystack_[1].value.as< std::string > ();
break;
case 58:
-#line 376 "dhcp4_parser.yy" // lalr1.cc:907
+#line 377 "dhcp4_parser.yy" // lalr1.cc:907
{
// This code is executed when we're about to start parsing
// the content of the map
break;
case 59:
-#line 381 "dhcp4_parser.yy" // lalr1.cc:907
+#line 382 "dhcp4_parser.yy" // lalr1.cc:907
{
// map parsing completed. If we ever want to do any wrap up
// (maybe some sanity checking), this would be the best place
break;
case 68:
-#line 405 "dhcp4_parser.yy" // lalr1.cc:907
+#line 406 "dhcp4_parser.yy" // lalr1.cc:907
{
// This code is executed when we're about to start parsing
// the content of the map
break;
case 69:
-#line 412 "dhcp4_parser.yy" // lalr1.cc:907
+#line 413 "dhcp4_parser.yy" // lalr1.cc:907
{
// No global parameter is required
ctx.stack_.pop_back();
break;
case 70:
-#line 420 "dhcp4_parser.yy" // lalr1.cc:907
+#line 421 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the Dhcp4 map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
break;
case 71:
-#line 424 "dhcp4_parser.yy" // lalr1.cc:907
+#line 425 "dhcp4_parser.yy" // lalr1.cc:907
{
// No global parameter is required
// parsing completed
break;
case 108:
-#line 471 "dhcp4_parser.yy" // lalr1.cc:907
+#line 472 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("valid-lifetime", prf);
break;
case 109:
-#line 476 "dhcp4_parser.yy" // lalr1.cc:907
+#line 477 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("renew-timer", prf);
break;
case 110:
-#line 481 "dhcp4_parser.yy" // lalr1.cc:907
+#line 482 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("rebind-timer", prf);
break;
case 111:
-#line 486 "dhcp4_parser.yy" // lalr1.cc:907
+#line 487 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr dpp(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("decline-probation-period", dpp);
break;
case 112:
-#line 491 "dhcp4_parser.yy" // lalr1.cc:907
+#line 492 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
break;
case 113:
-#line 493 "dhcp4_parser.yy" // lalr1.cc:907
+#line 494 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr stag(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("server-tag", stag);
break;
case 114:
-#line 499 "dhcp4_parser.yy" // lalr1.cc:907
+#line 500 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr echo(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("echo-client-id", echo);
break;
case 115:
-#line 504 "dhcp4_parser.yy" // lalr1.cc:907
+#line 505 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr match(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("match-client-id", match);
break;
case 116:
-#line 509 "dhcp4_parser.yy" // lalr1.cc:907
+#line 510 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("authoritative", prf);
break;
case 117:
-#line 515 "dhcp4_parser.yy" // lalr1.cc:907
+#line 516 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("interfaces-config", i);
break;
case 118:
-#line 520 "dhcp4_parser.yy" // lalr1.cc:907
+#line 521 "dhcp4_parser.yy" // lalr1.cc:907
{
// No interfaces config param is required
ctx.stack_.pop_back();
break;
case 128:
-#line 539 "dhcp4_parser.yy" // lalr1.cc:907
+#line 540 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the interfaces-config map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
break;
case 129:
-#line 543 "dhcp4_parser.yy" // lalr1.cc:907
+#line 544 "dhcp4_parser.yy" // lalr1.cc:907
{
// No interfaces config param is required
// parsing completed
break;
case 130:
-#line 548 "dhcp4_parser.yy" // lalr1.cc:907
+#line 549 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("interfaces", l);
break;
case 131:
-#line 553 "dhcp4_parser.yy" // lalr1.cc:907
+#line 554 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
break;
case 132:
-#line 558 "dhcp4_parser.yy" // lalr1.cc:907
+#line 559 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.DHCP_SOCKET_TYPE);
}
break;
case 133:
-#line 560 "dhcp4_parser.yy" // lalr1.cc:907
+#line 561 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("dhcp-socket-type", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
break;
case 134:
-#line 565 "dhcp4_parser.yy" // lalr1.cc:907
+#line 566 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("raw", ctx.loc2pos(yystack_[0].location))); }
#line 1224 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 135:
-#line 566 "dhcp4_parser.yy" // lalr1.cc:907
+#line 567 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("udp", ctx.loc2pos(yystack_[0].location))); }
#line 1230 "dhcp4_parser.cc" // lalr1.cc:907
break;
case 136:
-#line 569 "dhcp4_parser.yy" // lalr1.cc:907
+#line 570 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.OUTBOUND_INTERFACE);
}
break;
case 137:
-#line 571 "dhcp4_parser.yy" // lalr1.cc:907
+#line 572 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("outbound-interface", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
break;
case 138:
-#line 576 "dhcp4_parser.yy" // lalr1.cc:907
+#line 577 "dhcp4_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("same-as-inbound", ctx.loc2pos(yystack_[0].location)));
}
break;
case 139:
-#line 578 "dhcp4_parser.yy" // lalr1.cc:907
+#line 579 "dhcp4_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("use-routing", ctx.loc2pos(yystack_[0].location)));
}
break;
case 140:
-#line 582 "dhcp4_parser.yy" // lalr1.cc:907
+#line 583 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("re-detect", b);
break;
case 141:
-#line 588 "dhcp4_parser.yy" // lalr1.cc:907
+#line 589 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("lease-database", i);
break;
case 142:
-#line 593 "dhcp4_parser.yy" // lalr1.cc:907
+#line 594 "dhcp4_parser.yy" // lalr1.cc:907
{
// The type parameter is required
ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
break;
case 143:
-#line 600 "dhcp4_parser.yy" // lalr1.cc:907
+#line 601 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("sanity-checks", m);
break;
case 144:
-#line 605 "dhcp4_parser.yy" // lalr1.cc:907
+#line 606 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
break;
case 148:
-#line 615 "dhcp4_parser.yy" // lalr1.cc:907
+#line 616 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
break;
case 149:
-#line 617 "dhcp4_parser.yy" // lalr1.cc:907
+#line 618 "dhcp4_parser.yy" // lalr1.cc:907
{
if ( (string(yystack_[0].value.as< std::string > ()) == "none") ||
break;
case 150:
-#line 633 "dhcp4_parser.yy" // lalr1.cc:907
+#line 634 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hosts-database", i);
break;
case 151:
-#line 638 "dhcp4_parser.yy" // lalr1.cc:907
+#line 639 "dhcp4_parser.yy" // lalr1.cc:907
{
// The type parameter is required
ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
break;
case 152:
-#line 645 "dhcp4_parser.yy" // lalr1.cc:907
+#line 646 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hosts-databases", l);
break;
case 153:
-#line 650 "dhcp4_parser.yy" // lalr1.cc:907
+#line 651 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
break;
case 158:
-#line 663 "dhcp4_parser.yy" // lalr1.cc:907
+#line 664 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
break;
case 159:
-#line 667 "dhcp4_parser.yy" // lalr1.cc:907
+#line 668 "dhcp4_parser.yy" // lalr1.cc:907
{
// The type parameter is required
ctx.require("type", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
#line 1404 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 180:
-#line 697 "dhcp4_parser.yy" // lalr1.cc:907
+ case 181:
+#line 699 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.DATABASE_TYPE);
}
#line 1412 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 181:
-#line 699 "dhcp4_parser.yy" // lalr1.cc:907
+ case 182:
+#line 701 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("type", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
#line 1421 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 182:
-#line 704 "dhcp4_parser.yy" // lalr1.cc:907
+ case 183:
+#line 706 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("memfile", ctx.loc2pos(yystack_[0].location))); }
#line 1427 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 183:
-#line 705 "dhcp4_parser.yy" // lalr1.cc:907
+ case 184:
+#line 707 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("mysql", ctx.loc2pos(yystack_[0].location))); }
#line 1433 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 184:
-#line 706 "dhcp4_parser.yy" // lalr1.cc:907
+ case 185:
+#line 708 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("postgresql", ctx.loc2pos(yystack_[0].location))); }
#line 1439 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 185:
-#line 707 "dhcp4_parser.yy" // lalr1.cc:907
+ case 186:
+#line 709 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("cql", ctx.loc2pos(yystack_[0].location))); }
#line 1445 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 186:
-#line 710 "dhcp4_parser.yy" // lalr1.cc:907
+ case 187:
+#line 712 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1453 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 187:
-#line 712 "dhcp4_parser.yy" // lalr1.cc:907
+ case 188:
+#line 714 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr user(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("user", user);
#line 1463 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 188:
-#line 718 "dhcp4_parser.yy" // lalr1.cc:907
+ case 189:
+#line 720 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1471 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 189:
-#line 720 "dhcp4_parser.yy" // lalr1.cc:907
+ case 190:
+#line 722 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr pwd(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("password", pwd);
#line 1481 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 190:
-#line 726 "dhcp4_parser.yy" // lalr1.cc:907
+ case 191:
+#line 728 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1489 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 191:
-#line 728 "dhcp4_parser.yy" // lalr1.cc:907
+ case 192:
+#line 730 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr h(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("host", h);
#line 1499 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 192:
-#line 734 "dhcp4_parser.yy" // lalr1.cc:907
+ case 193:
+#line 736 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr p(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("port", p);
#line 1508 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 193:
-#line 739 "dhcp4_parser.yy" // lalr1.cc:907
+ case 194:
+#line 741 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1516 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 194:
-#line 741 "dhcp4_parser.yy" // lalr1.cc:907
+ case 195:
+#line 743 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr name(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("name", name);
#line 1526 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 195:
-#line 747 "dhcp4_parser.yy" // lalr1.cc:907
+ case 196:
+#line 749 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr n(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("persist", n);
#line 1535 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 196:
-#line 752 "dhcp4_parser.yy" // lalr1.cc:907
+ case 197:
+#line 754 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("lfc-interval", n);
#line 1544 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 197:
-#line 757 "dhcp4_parser.yy" // lalr1.cc:907
+ case 198:
+#line 759 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr n(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("readonly", n);
#line 1553 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 198:
-#line 762 "dhcp4_parser.yy" // lalr1.cc:907
+ case 199:
+#line 764 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("connect-timeout", n);
#line 1562 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 199:
-#line 767 "dhcp4_parser.yy" // lalr1.cc:907
+ case 200:
+#line 769 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("request-timeout", n);
#line 1571 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 200:
-#line 772 "dhcp4_parser.yy" // lalr1.cc:907
+ case 201:
+#line 774 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("tcp-keepalive", n);
#line 1580 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 201:
-#line 777 "dhcp4_parser.yy" // lalr1.cc:907
+ case 202:
+#line 779 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr n(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("tcp-nodelay", n);
#line 1589 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 202:
-#line 782 "dhcp4_parser.yy" // lalr1.cc:907
+ case 203:
+#line 784 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1597 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 203:
-#line 784 "dhcp4_parser.yy" // lalr1.cc:907
+ case 204:
+#line 786 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr cp(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("contact-points", cp);
#line 1607 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 204:
-#line 790 "dhcp4_parser.yy" // lalr1.cc:907
+ case 205:
+#line 792 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1615 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 205:
-#line 792 "dhcp4_parser.yy" // lalr1.cc:907
+ case 206:
+#line 794 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr ks(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("keyspace", ks);
#line 1625 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 206:
-#line 798 "dhcp4_parser.yy" // lalr1.cc:907
+ case 207:
+#line 800 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("max-reconnect-tries", n);
#line 1634 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 207:
-#line 803 "dhcp4_parser.yy" // lalr1.cc:907
+ case 208:
+#line 805 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("reconnect-wait-time", n);
#line 1643 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 208:
-#line 808 "dhcp4_parser.yy" // lalr1.cc:907
+ case 209:
+#line 810 "dhcp4_parser.yy" // lalr1.cc:907
+ {
+ ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
+ ctx.stack_.back()->set("max-row-errors", n);
+}
+#line 1652 "dhcp4_parser.cc" // lalr1.cc:907
+ break;
+
+ case 210:
+#line 815 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("host-reservation-identifiers", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.HOST_RESERVATION_IDENTIFIERS);
}
-#line 1654 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1663 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 209:
-#line 813 "dhcp4_parser.yy" // lalr1.cc:907
+ case 211:
+#line 820 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1663 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1672 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 217:
-#line 829 "dhcp4_parser.yy" // lalr1.cc:907
+ case 219:
+#line 836 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr duid(new StringElement("duid", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(duid);
}
-#line 1672 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1681 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 218:
-#line 834 "dhcp4_parser.yy" // lalr1.cc:907
+ case 220:
+#line 841 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr hwaddr(new StringElement("hw-address", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(hwaddr);
}
-#line 1681 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1690 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 219:
-#line 839 "dhcp4_parser.yy" // lalr1.cc:907
+ case 221:
+#line 846 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr circuit(new StringElement("circuit-id", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(circuit);
}
-#line 1690 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1699 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 220:
-#line 844 "dhcp4_parser.yy" // lalr1.cc:907
+ case 222:
+#line 851 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr client(new StringElement("client-id", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(client);
}
-#line 1699 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1708 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 221:
-#line 849 "dhcp4_parser.yy" // lalr1.cc:907
+ case 223:
+#line 856 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr flex_id(new StringElement("flex-id", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(flex_id);
}
-#line 1708 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1717 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 222:
-#line 854 "dhcp4_parser.yy" // lalr1.cc:907
+ case 224:
+#line 861 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hooks-libraries", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.HOOKS_LIBRARIES);
}
-#line 1719 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1728 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 223:
-#line 859 "dhcp4_parser.yy" // lalr1.cc:907
+ case 225:
+#line 866 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1728 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1737 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 228:
-#line 872 "dhcp4_parser.yy" // lalr1.cc:907
+ case 230:
+#line 879 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 1738 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1747 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 229:
-#line 876 "dhcp4_parser.yy" // lalr1.cc:907
+ case 231:
+#line 883 "dhcp4_parser.yy" // lalr1.cc:907
{
// The library hooks parameter is required
ctx.require("library", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 1748 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1757 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 230:
-#line 882 "dhcp4_parser.yy" // lalr1.cc:907
+ case 232:
+#line 889 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the hooks-libraries list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 1758 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1767 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 231:
-#line 886 "dhcp4_parser.yy" // lalr1.cc:907
+ case 233:
+#line 893 "dhcp4_parser.yy" // lalr1.cc:907
{
// The library hooks parameter is required
ctx.require("library", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 1768 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1777 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 237:
-#line 901 "dhcp4_parser.yy" // lalr1.cc:907
+ case 239:
+#line 908 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1776 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1785 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 238:
-#line 903 "dhcp4_parser.yy" // lalr1.cc:907
+ case 240:
+#line 910 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr lib(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("library", lib);
ctx.leave();
}
-#line 1786 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1795 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 239:
-#line 909 "dhcp4_parser.yy" // lalr1.cc:907
+ case 241:
+#line 916 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1794 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1803 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 240:
-#line 911 "dhcp4_parser.yy" // lalr1.cc:907
+ case 242:
+#line 918 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("parameters", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 1803 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1812 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 241:
-#line 917 "dhcp4_parser.yy" // lalr1.cc:907
+ case 243:
+#line 924 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("expired-leases-processing", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.EXPIRED_LEASES_PROCESSING);
}
-#line 1814 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1823 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 242:
-#line 922 "dhcp4_parser.yy" // lalr1.cc:907
+ case 244:
+#line 929 "dhcp4_parser.yy" // lalr1.cc:907
{
// No expired lease parameter is required
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1824 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1833 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 251:
-#line 940 "dhcp4_parser.yy" // lalr1.cc:907
+ case 253:
+#line 947 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("reclaim-timer-wait-time", value);
}
-#line 1833 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1842 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 252:
-#line 945 "dhcp4_parser.yy" // lalr1.cc:907
+ case 254:
+#line 952 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("flush-reclaimed-timer-wait-time", value);
}
-#line 1842 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1851 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 253:
-#line 950 "dhcp4_parser.yy" // lalr1.cc:907
+ case 255:
+#line 957 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hold-reclaimed-time", value);
}
-#line 1851 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1860 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 254:
-#line 955 "dhcp4_parser.yy" // lalr1.cc:907
+ case 256:
+#line 962 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("max-reclaim-leases", value);
}
-#line 1860 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1869 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 255:
-#line 960 "dhcp4_parser.yy" // lalr1.cc:907
+ case 257:
+#line 967 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("max-reclaim-time", value);
}
-#line 1869 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1878 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 256:
-#line 965 "dhcp4_parser.yy" // lalr1.cc:907
+ case 258:
+#line 972 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("unwarned-reclaim-cycles", value);
}
-#line 1878 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1887 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 257:
-#line 973 "dhcp4_parser.yy" // lalr1.cc:907
+ case 259:
+#line 980 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("subnet4", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.SUBNET4);
}
-#line 1889 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1898 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 258:
-#line 978 "dhcp4_parser.yy" // lalr1.cc:907
+ case 260:
+#line 985 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1898 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1907 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 263:
-#line 998 "dhcp4_parser.yy" // lalr1.cc:907
+ case 265:
+#line 1005 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 1908 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1917 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 264:
-#line 1002 "dhcp4_parser.yy" // lalr1.cc:907
+ case 266:
+#line 1009 "dhcp4_parser.yy" // lalr1.cc:907
{
// Once we reached this place, the subnet parsing is now complete.
// If we want to, we can implement default values here.
ctx.require("subnet", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 1934 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1943 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 265:
-#line 1024 "dhcp4_parser.yy" // lalr1.cc:907
+ case 267:
+#line 1031 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the subnet4 list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 1944 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1953 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 266:
-#line 1028 "dhcp4_parser.yy" // lalr1.cc:907
+ case 268:
+#line 1035 "dhcp4_parser.yy" // lalr1.cc:907
{
// The subnet subnet4 parameter is required
ctx.require("subnet", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 1954 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1963 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 293:
-#line 1066 "dhcp4_parser.yy" // lalr1.cc:907
+ case 295:
+#line 1073 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1962 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1971 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 294:
-#line 1068 "dhcp4_parser.yy" // lalr1.cc:907
+ case 296:
+#line 1075 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr subnet(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("subnet", subnet);
ctx.leave();
}
-#line 1972 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1981 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 295:
-#line 1074 "dhcp4_parser.yy" // lalr1.cc:907
+ case 297:
+#line 1081 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1980 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1989 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 296:
-#line 1076 "dhcp4_parser.yy" // lalr1.cc:907
+ case 298:
+#line 1083 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr iface(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("4o6-interface", iface);
ctx.leave();
}
-#line 1990 "dhcp4_parser.cc" // lalr1.cc:907
+#line 1999 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 297:
-#line 1082 "dhcp4_parser.yy" // lalr1.cc:907
+ case 299:
+#line 1089 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1998 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2007 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 298:
-#line 1084 "dhcp4_parser.yy" // lalr1.cc:907
+ case 300:
+#line 1091 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr iface(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("4o6-interface-id", iface);
ctx.leave();
}
-#line 2008 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2017 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 299:
-#line 1090 "dhcp4_parser.yy" // lalr1.cc:907
+ case 301:
+#line 1097 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2016 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2025 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 300:
-#line 1092 "dhcp4_parser.yy" // lalr1.cc:907
+ case 302:
+#line 1099 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr iface(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("4o6-subnet", iface);
ctx.leave();
}
-#line 2026 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2035 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 301:
-#line 1098 "dhcp4_parser.yy" // lalr1.cc:907
+ case 303:
+#line 1105 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2034 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2043 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 302:
-#line 1100 "dhcp4_parser.yy" // lalr1.cc:907
+ case 304:
+#line 1107 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr iface(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("interface", iface);
ctx.leave();
}
-#line 2044 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2053 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 303:
-#line 1106 "dhcp4_parser.yy" // lalr1.cc:907
+ case 305:
+#line 1113 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2052 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2061 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 304:
-#line 1108 "dhcp4_parser.yy" // lalr1.cc:907
+ case 306:
+#line 1115 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr cls(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("client-class", cls);
ctx.leave();
}
-#line 2062 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2071 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 305:
-#line 1114 "dhcp4_parser.yy" // lalr1.cc:907
+ case 307:
+#line 1121 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("require-client-classes", c);
ctx.stack_.push_back(c);
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2073 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2082 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 306:
-#line 1119 "dhcp4_parser.yy" // lalr1.cc:907
+ case 308:
+#line 1126 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2082 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2091 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 307:
-#line 1124 "dhcp4_parser.yy" // lalr1.cc:907
+ case 309:
+#line 1131 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.RESERVATION_MODE);
}
-#line 2090 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2099 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 308:
-#line 1126 "dhcp4_parser.yy" // lalr1.cc:907
+ case 310:
+#line 1133 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("reservation-mode", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 2099 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2108 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 309:
-#line 1131 "dhcp4_parser.yy" // lalr1.cc:907
+ case 311:
+#line 1138 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("disabled", ctx.loc2pos(yystack_[0].location))); }
-#line 2105 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2114 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 310:
-#line 1132 "dhcp4_parser.yy" // lalr1.cc:907
+ case 312:
+#line 1139 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("out-of-pool", ctx.loc2pos(yystack_[0].location))); }
-#line 2111 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2120 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 311:
-#line 1133 "dhcp4_parser.yy" // lalr1.cc:907
+ case 313:
+#line 1140 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("global", ctx.loc2pos(yystack_[0].location))); }
-#line 2117 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2126 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 312:
-#line 1134 "dhcp4_parser.yy" // lalr1.cc:907
+ case 314:
+#line 1141 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("all", ctx.loc2pos(yystack_[0].location))); }
-#line 2123 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2132 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 313:
-#line 1137 "dhcp4_parser.yy" // lalr1.cc:907
+ case 315:
+#line 1144 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr id(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("id", id);
}
-#line 2132 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2141 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 314:
-#line 1144 "dhcp4_parser.yy" // lalr1.cc:907
+ case 316:
+#line 1151 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("shared-networks", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.SHARED_NETWORK);
}
-#line 2143 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2152 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 315:
-#line 1149 "dhcp4_parser.yy" // lalr1.cc:907
+ case 317:
+#line 1156 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2152 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2161 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 320:
-#line 1164 "dhcp4_parser.yy" // lalr1.cc:907
+ case 322:
+#line 1171 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2162 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2171 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 321:
-#line 1168 "dhcp4_parser.yy" // lalr1.cc:907
+ case 323:
+#line 1175 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
}
-#line 2170 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2179 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 343:
-#line 1201 "dhcp4_parser.yy" // lalr1.cc:907
+ case 345:
+#line 1208 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("option-def", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.OPTION_DEF);
}
-#line 2181 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2190 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 344:
-#line 1206 "dhcp4_parser.yy" // lalr1.cc:907
+ case 346:
+#line 1213 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2190 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2199 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 345:
-#line 1214 "dhcp4_parser.yy" // lalr1.cc:907
+ case 347:
+#line 1221 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2199 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2208 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 346:
-#line 1217 "dhcp4_parser.yy" // lalr1.cc:907
+ case 348:
+#line 1224 "dhcp4_parser.yy" // lalr1.cc:907
{
// parsing completed
}
-#line 2207 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2216 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 351:
-#line 1233 "dhcp4_parser.yy" // lalr1.cc:907
+ case 353:
+#line 1240 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2217 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2226 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 352:
-#line 1237 "dhcp4_parser.yy" // lalr1.cc:907
+ case 354:
+#line 1244 "dhcp4_parser.yy" // lalr1.cc:907
{
// The name, code and type option def parameters are required.
ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.require("type", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 2229 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2238 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 353:
-#line 1248 "dhcp4_parser.yy" // lalr1.cc:907
+ case 355:
+#line 1255 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the option-def list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2239 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2248 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 354:
-#line 1252 "dhcp4_parser.yy" // lalr1.cc:907
+ case 356:
+#line 1259 "dhcp4_parser.yy" // lalr1.cc:907
{
// The name, code and type option def parameters are required.
ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.require("type", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 2251 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2260 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 370:
-#line 1284 "dhcp4_parser.yy" // lalr1.cc:907
+ case 372:
+#line 1291 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr code(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("code", code);
}
-#line 2260 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2269 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 372:
-#line 1291 "dhcp4_parser.yy" // lalr1.cc:907
+ case 374:
+#line 1298 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2268 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2277 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 373:
-#line 1293 "dhcp4_parser.yy" // lalr1.cc:907
+ case 375:
+#line 1300 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("type", prf);
ctx.leave();
}
-#line 2278 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2287 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 374:
-#line 1299 "dhcp4_parser.yy" // lalr1.cc:907
+ case 376:
+#line 1306 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2286 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2295 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 375:
-#line 1301 "dhcp4_parser.yy" // lalr1.cc:907
+ case 377:
+#line 1308 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr rtypes(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("record-types", rtypes);
ctx.leave();
}
-#line 2296 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2305 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 376:
-#line 1307 "dhcp4_parser.yy" // lalr1.cc:907
+ case 378:
+#line 1314 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2304 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2313 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 377:
-#line 1309 "dhcp4_parser.yy" // lalr1.cc:907
+ case 379:
+#line 1316 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr space(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("space", space);
ctx.leave();
}
-#line 2314 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2323 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 379:
-#line 1317 "dhcp4_parser.yy" // lalr1.cc:907
+ case 381:
+#line 1324 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2322 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2331 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 380:
-#line 1319 "dhcp4_parser.yy" // lalr1.cc:907
+ case 382:
+#line 1326 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr encap(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("encapsulate", encap);
ctx.leave();
}
-#line 2332 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2341 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 381:
-#line 1325 "dhcp4_parser.yy" // lalr1.cc:907
+ case 383:
+#line 1332 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr array(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("array", array);
}
-#line 2341 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2350 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 382:
-#line 1334 "dhcp4_parser.yy" // lalr1.cc:907
+ case 384:
+#line 1341 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("option-data", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.OPTION_DATA);
}
-#line 2352 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2361 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 383:
-#line 1339 "dhcp4_parser.yy" // lalr1.cc:907
+ case 385:
+#line 1346 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2361 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2370 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 388:
-#line 1358 "dhcp4_parser.yy" // lalr1.cc:907
+ case 390:
+#line 1365 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2371 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2380 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 389:
-#line 1362 "dhcp4_parser.yy" // lalr1.cc:907
+ case 391:
+#line 1369 "dhcp4_parser.yy" // lalr1.cc:907
{
/// @todo: the code or name parameters are required.
ctx.stack_.pop_back();
}
-#line 2380 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2389 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 390:
-#line 1370 "dhcp4_parser.yy" // lalr1.cc:907
+ case 392:
+#line 1377 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the option-data list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2390 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2399 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 391:
-#line 1374 "dhcp4_parser.yy" // lalr1.cc:907
+ case 393:
+#line 1381 "dhcp4_parser.yy" // lalr1.cc:907
{
/// @todo: the code or name parameters are required.
// parsing completed
}
-#line 2399 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2408 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 406:
-#line 1407 "dhcp4_parser.yy" // lalr1.cc:907
+ case 408:
+#line 1414 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2407 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2416 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 407:
-#line 1409 "dhcp4_parser.yy" // lalr1.cc:907
+ case 409:
+#line 1416 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr data(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("data", data);
ctx.leave();
}
-#line 2417 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2426 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 410:
-#line 1419 "dhcp4_parser.yy" // lalr1.cc:907
+ case 412:
+#line 1426 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr space(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("csv-format", space);
}
-#line 2426 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2435 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 411:
-#line 1424 "dhcp4_parser.yy" // lalr1.cc:907
+ case 413:
+#line 1431 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr persist(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("always-send", persist);
}
-#line 2435 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2444 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 412:
-#line 1432 "dhcp4_parser.yy" // lalr1.cc:907
+ case 414:
+#line 1439 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("pools", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.POOLS);
}
-#line 2446 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2455 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 413:
-#line 1437 "dhcp4_parser.yy" // lalr1.cc:907
+ case 415:
+#line 1444 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2455 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2464 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 418:
-#line 1452 "dhcp4_parser.yy" // lalr1.cc:907
+ case 420:
+#line 1459 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2465 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2474 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 419:
-#line 1456 "dhcp4_parser.yy" // lalr1.cc:907
+ case 421:
+#line 1463 "dhcp4_parser.yy" // lalr1.cc:907
{
// The pool parameter is required.
ctx.require("pool", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 2475 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2484 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 420:
-#line 1462 "dhcp4_parser.yy" // lalr1.cc:907
+ case 422:
+#line 1469 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the pool list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2485 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2494 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 421:
-#line 1466 "dhcp4_parser.yy" // lalr1.cc:907
+ case 423:
+#line 1473 "dhcp4_parser.yy" // lalr1.cc:907
{
// The pool parameter is required.
ctx.require("pool", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 2495 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2504 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 431:
-#line 1485 "dhcp4_parser.yy" // lalr1.cc:907
+ case 433:
+#line 1492 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2503 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2512 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 432:
-#line 1487 "dhcp4_parser.yy" // lalr1.cc:907
+ case 434:
+#line 1494 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr pool(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("pool", pool);
ctx.leave();
}
-#line 2513 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2522 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 433:
-#line 1493 "dhcp4_parser.yy" // lalr1.cc:907
+ case 435:
+#line 1500 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2521 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2530 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 434:
-#line 1495 "dhcp4_parser.yy" // lalr1.cc:907
+ case 436:
+#line 1502 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr parent = ctx.stack_.back();
ElementPtr user_context = yystack_[0].value.as< ElementPtr > ();
parent->set("user-context", user_context);
ctx.leave();
}
-#line 2548 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2557 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 435:
-#line 1518 "dhcp4_parser.yy" // lalr1.cc:907
+ case 437:
+#line 1525 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2556 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2565 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 436:
-#line 1520 "dhcp4_parser.yy" // lalr1.cc:907
+ case 438:
+#line 1527 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr parent = ctx.stack_.back();
ElementPtr user_context(new MapElement(ctx.loc2pos(yystack_[3].location)));
parent->set("user-context", user_context);
ctx.leave();
}
-#line 2585 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2594 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 437:
-#line 1548 "dhcp4_parser.yy" // lalr1.cc:907
+ case 439:
+#line 1555 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("reservations", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.RESERVATIONS);
}
-#line 2596 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2605 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 438:
-#line 1553 "dhcp4_parser.yy" // lalr1.cc:907
+ case 440:
+#line 1560 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2605 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2614 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 443:
-#line 1566 "dhcp4_parser.yy" // lalr1.cc:907
+ case 445:
+#line 1573 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2615 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2624 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 444:
-#line 1570 "dhcp4_parser.yy" // lalr1.cc:907
+ case 446:
+#line 1577 "dhcp4_parser.yy" // lalr1.cc:907
{
/// @todo: an identifier parameter is required.
ctx.stack_.pop_back();
}
-#line 2624 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2633 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 445:
-#line 1575 "dhcp4_parser.yy" // lalr1.cc:907
+ case 447:
+#line 1582 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the reservations list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2634 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2643 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 446:
-#line 1579 "dhcp4_parser.yy" // lalr1.cc:907
+ case 448:
+#line 1586 "dhcp4_parser.yy" // lalr1.cc:907
{
/// @todo: an identifier parameter is required.
// parsing completed
}
-#line 2643 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2652 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 466:
-#line 1610 "dhcp4_parser.yy" // lalr1.cc:907
+ case 468:
+#line 1617 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2651 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2660 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 467:
-#line 1612 "dhcp4_parser.yy" // lalr1.cc:907
+ case 469:
+#line 1619 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr next_server(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("next-server", next_server);
ctx.leave();
}
-#line 2661 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2670 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 468:
-#line 1618 "dhcp4_parser.yy" // lalr1.cc:907
+ case 470:
+#line 1625 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2669 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2678 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 469:
-#line 1620 "dhcp4_parser.yy" // lalr1.cc:907
+ case 471:
+#line 1627 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr srv(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("server-hostname", srv);
ctx.leave();
}
-#line 2679 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2688 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 470:
-#line 1626 "dhcp4_parser.yy" // lalr1.cc:907
+ case 472:
+#line 1633 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2687 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2696 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 471:
-#line 1628 "dhcp4_parser.yy" // lalr1.cc:907
+ case 473:
+#line 1635 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr bootfile(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("boot-file-name", bootfile);
ctx.leave();
}
-#line 2697 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2706 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 472:
-#line 1634 "dhcp4_parser.yy" // lalr1.cc:907
+ case 474:
+#line 1641 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2705 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2714 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 473:
-#line 1636 "dhcp4_parser.yy" // lalr1.cc:907
+ case 475:
+#line 1643 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr addr(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("ip-address", addr);
ctx.leave();
}
-#line 2715 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2724 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 474:
-#line 1642 "dhcp4_parser.yy" // lalr1.cc:907
+ case 476:
+#line 1649 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("ip-addresses", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2726 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2735 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 475:
-#line 1647 "dhcp4_parser.yy" // lalr1.cc:907
+ case 477:
+#line 1654 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2735 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2744 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 476:
-#line 1652 "dhcp4_parser.yy" // lalr1.cc:907
+ case 478:
+#line 1659 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2743 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2752 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 477:
-#line 1654 "dhcp4_parser.yy" // lalr1.cc:907
+ case 479:
+#line 1661 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr d(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("duid", d);
ctx.leave();
}
-#line 2753 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2762 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 478:
-#line 1660 "dhcp4_parser.yy" // lalr1.cc:907
+ case 480:
+#line 1667 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2761 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2770 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 479:
-#line 1662 "dhcp4_parser.yy" // lalr1.cc:907
+ case 481:
+#line 1669 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr hw(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hw-address", hw);
ctx.leave();
}
-#line 2771 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2780 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 480:
-#line 1668 "dhcp4_parser.yy" // lalr1.cc:907
+ case 482:
+#line 1675 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2779 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2788 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 481:
-#line 1670 "dhcp4_parser.yy" // lalr1.cc:907
+ case 483:
+#line 1677 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr hw(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("client-id", hw);
ctx.leave();
}
-#line 2789 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2798 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 482:
-#line 1676 "dhcp4_parser.yy" // lalr1.cc:907
+ case 484:
+#line 1683 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2797 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2806 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 483:
-#line 1678 "dhcp4_parser.yy" // lalr1.cc:907
+ case 485:
+#line 1685 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr hw(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("circuit-id", hw);
ctx.leave();
}
-#line 2807 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2816 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 484:
-#line 1684 "dhcp4_parser.yy" // lalr1.cc:907
+ case 486:
+#line 1691 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2815 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2824 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 485:
-#line 1686 "dhcp4_parser.yy" // lalr1.cc:907
+ case 487:
+#line 1693 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr hw(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("flex-id", hw);
ctx.leave();
}
-#line 2825 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2834 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 486:
-#line 1692 "dhcp4_parser.yy" // lalr1.cc:907
+ case 488:
+#line 1699 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2833 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2842 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 487:
-#line 1694 "dhcp4_parser.yy" // lalr1.cc:907
+ case 489:
+#line 1701 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr host(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hostname", host);
ctx.leave();
}
-#line 2843 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2852 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 488:
-#line 1700 "dhcp4_parser.yy" // lalr1.cc:907
+ case 490:
+#line 1707 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("client-classes", c);
ctx.stack_.push_back(c);
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2854 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2863 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 489:
-#line 1705 "dhcp4_parser.yy" // lalr1.cc:907
+ case 491:
+#line 1712 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2863 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2872 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 490:
-#line 1713 "dhcp4_parser.yy" // lalr1.cc:907
+ case 492:
+#line 1720 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("relay", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.RELAY);
}
-#line 2874 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2883 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 491:
-#line 1718 "dhcp4_parser.yy" // lalr1.cc:907
+ case 493:
+#line 1725 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2883 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2892 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 494:
-#line 1730 "dhcp4_parser.yy" // lalr1.cc:907
+ case 496:
+#line 1737 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("client-classes", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.CLIENT_CLASSES);
}
-#line 2894 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2903 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 495:
-#line 1735 "dhcp4_parser.yy" // lalr1.cc:907
+ case 497:
+#line 1742 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2903 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2912 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 498:
-#line 1744 "dhcp4_parser.yy" // lalr1.cc:907
+ case 500:
+#line 1751 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2913 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2922 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 499:
-#line 1748 "dhcp4_parser.yy" // lalr1.cc:907
+ case 501:
+#line 1755 "dhcp4_parser.yy" // lalr1.cc:907
{
// The name client class parameter is required.
ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 2923 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2932 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 516:
-#line 1777 "dhcp4_parser.yy" // lalr1.cc:907
+ case 518:
+#line 1784 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2931 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2940 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 517:
-#line 1779 "dhcp4_parser.yy" // lalr1.cc:907
+ case 519:
+#line 1786 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr test(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("test", test);
ctx.leave();
}
-#line 2941 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2950 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 518:
-#line 1785 "dhcp4_parser.yy" // lalr1.cc:907
+ case 520:
+#line 1792 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("only-if-required", b);
}
-#line 2950 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2959 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 519:
-#line 1794 "dhcp4_parser.yy" // lalr1.cc:907
+ case 521:
+#line 1801 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr time(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("dhcp4o6-port", time);
}
-#line 2959 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2968 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 520:
-#line 1801 "dhcp4_parser.yy" // lalr1.cc:907
+ case 522:
+#line 1808 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("control-socket", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.CONTROL_SOCKET);
}
-#line 2970 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2979 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 521:
-#line 1806 "dhcp4_parser.yy" // lalr1.cc:907
+ case 523:
+#line 1813 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2979 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2988 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 529:
-#line 1822 "dhcp4_parser.yy" // lalr1.cc:907
+ case 531:
+#line 1829 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2987 "dhcp4_parser.cc" // lalr1.cc:907
+#line 2996 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 530:
-#line 1824 "dhcp4_parser.yy" // lalr1.cc:907
+ case 532:
+#line 1831 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr stype(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("socket-type", stype);
ctx.leave();
}
-#line 2997 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3006 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 531:
-#line 1830 "dhcp4_parser.yy" // lalr1.cc:907
+ case 533:
+#line 1837 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3005 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3014 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 532:
-#line 1832 "dhcp4_parser.yy" // lalr1.cc:907
+ case 534:
+#line 1839 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr name(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("socket-name", name);
ctx.leave();
}
-#line 3015 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3024 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 533:
-#line 1841 "dhcp4_parser.yy" // lalr1.cc:907
+ case 535:
+#line 1848 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3023 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3032 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 534:
-#line 1843 "dhcp4_parser.yy" // lalr1.cc:907
+ case 536:
+#line 1850 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr qc = yystack_[0].value.as< ElementPtr > ();
ctx.stack_.back()->set("dhcp-queue-control", qc);
ctx.leave();
}
-#line 3061 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3070 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 535:
-#line 1879 "dhcp4_parser.yy" // lalr1.cc:907
+ case 537:
+#line 1886 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("dhcp-ddns", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.DHCP_DDNS);
}
-#line 3072 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3081 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 536:
-#line 1884 "dhcp4_parser.yy" // lalr1.cc:907
+ case 538:
+#line 1891 "dhcp4_parser.yy" // lalr1.cc:907
{
// The enable updates DHCP DDNS parameter is required.
ctx.require("enable-updates", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3083 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3092 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 537:
-#line 1891 "dhcp4_parser.yy" // lalr1.cc:907
+ case 539:
+#line 1898 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the dhcp-ddns map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 3093 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3102 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 538:
-#line 1895 "dhcp4_parser.yy" // lalr1.cc:907
+ case 540:
+#line 1902 "dhcp4_parser.yy" // lalr1.cc:907
{
// The enable updates DHCP DDNS parameter is required.
ctx.require("enable-updates", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 3103 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3112 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 559:
-#line 1925 "dhcp4_parser.yy" // lalr1.cc:907
+ case 561:
+#line 1932 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("enable-updates", b);
}
-#line 3112 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3121 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 560:
-#line 1930 "dhcp4_parser.yy" // lalr1.cc:907
+ case 562:
+#line 1937 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3120 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3129 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 561:
-#line 1932 "dhcp4_parser.yy" // lalr1.cc:907
+ case 563:
+#line 1939 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("qualifying-suffix", s);
ctx.leave();
}
-#line 3130 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3139 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 562:
-#line 1938 "dhcp4_parser.yy" // lalr1.cc:907
+ case 564:
+#line 1945 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3138 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3147 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 563:
-#line 1940 "dhcp4_parser.yy" // lalr1.cc:907
+ case 565:
+#line 1947 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("server-ip", s);
ctx.leave();
}
-#line 3148 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3157 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 564:
-#line 1946 "dhcp4_parser.yy" // lalr1.cc:907
+ case 566:
+#line 1953 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr i(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("server-port", i);
}
-#line 3157 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3166 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 565:
-#line 1951 "dhcp4_parser.yy" // lalr1.cc:907
+ case 567:
+#line 1958 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3165 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3174 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 566:
-#line 1953 "dhcp4_parser.yy" // lalr1.cc:907
+ case 568:
+#line 1960 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("sender-ip", s);
ctx.leave();
}
-#line 3175 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3184 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 567:
-#line 1959 "dhcp4_parser.yy" // lalr1.cc:907
+ case 569:
+#line 1966 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr i(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("sender-port", i);
}
-#line 3184 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3193 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 568:
-#line 1964 "dhcp4_parser.yy" // lalr1.cc:907
+ case 570:
+#line 1971 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr i(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("max-queue-size", i);
}
-#line 3193 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3202 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 569:
-#line 1969 "dhcp4_parser.yy" // lalr1.cc:907
+ case 571:
+#line 1976 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NCR_PROTOCOL);
}
-#line 3201 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3210 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 570:
-#line 1971 "dhcp4_parser.yy" // lalr1.cc:907
+ case 572:
+#line 1978 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("ncr-protocol", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3210 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3219 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 571:
-#line 1977 "dhcp4_parser.yy" // lalr1.cc:907
+ case 573:
+#line 1984 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("UDP", ctx.loc2pos(yystack_[0].location))); }
-#line 3216 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3225 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 572:
-#line 1978 "dhcp4_parser.yy" // lalr1.cc:907
+ case 574:
+#line 1985 "dhcp4_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("TCP", ctx.loc2pos(yystack_[0].location))); }
-#line 3222 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3231 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 573:
-#line 1981 "dhcp4_parser.yy" // lalr1.cc:907
+ case 575:
+#line 1988 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NCR_FORMAT);
}
-#line 3230 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3239 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 574:
-#line 1983 "dhcp4_parser.yy" // lalr1.cc:907
+ case 576:
+#line 1990 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr json(new StringElement("JSON", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("ncr-format", json);
ctx.leave();
}
-#line 3240 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3249 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 575:
-#line 1989 "dhcp4_parser.yy" // lalr1.cc:907
+ case 577:
+#line 1996 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("override-no-update", b);
}
-#line 3249 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3258 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 576:
-#line 1994 "dhcp4_parser.yy" // lalr1.cc:907
+ case 578:
+#line 2001 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("override-client-update", b);
}
-#line 3258 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3267 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 577:
-#line 1999 "dhcp4_parser.yy" // lalr1.cc:907
+ case 579:
+#line 2006 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.REPLACE_CLIENT_NAME);
}
-#line 3266 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3275 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 578:
-#line 2001 "dhcp4_parser.yy" // lalr1.cc:907
+ case 580:
+#line 2008 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("replace-client-name", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3275 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3284 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 579:
-#line 2007 "dhcp4_parser.yy" // lalr1.cc:907
+ case 581:
+#line 2014 "dhcp4_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("when-present", ctx.loc2pos(yystack_[0].location)));
}
-#line 3283 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3292 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 580:
-#line 2010 "dhcp4_parser.yy" // lalr1.cc:907
+ case 582:
+#line 2017 "dhcp4_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("never", ctx.loc2pos(yystack_[0].location)));
}
-#line 3291 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3300 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 581:
-#line 2013 "dhcp4_parser.yy" // lalr1.cc:907
+ case 583:
+#line 2020 "dhcp4_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("always", ctx.loc2pos(yystack_[0].location)));
}
-#line 3299 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3308 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 582:
-#line 2016 "dhcp4_parser.yy" // lalr1.cc:907
+ case 584:
+#line 2023 "dhcp4_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("when-not-present", ctx.loc2pos(yystack_[0].location)));
}
-#line 3307 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3316 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 583:
-#line 2019 "dhcp4_parser.yy" // lalr1.cc:907
+ case 585:
+#line 2026 "dhcp4_parser.yy" // lalr1.cc:907
{
error(yystack_[0].location, "boolean values for the replace-client-name are "
"no longer supported");
}
-#line 3316 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3325 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 584:
-#line 2025 "dhcp4_parser.yy" // lalr1.cc:907
+ case 586:
+#line 2032 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3324 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3333 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 585:
-#line 2027 "dhcp4_parser.yy" // lalr1.cc:907
+ case 587:
+#line 2034 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("generated-prefix", s);
ctx.leave();
}
-#line 3334 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3343 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 586:
-#line 2033 "dhcp4_parser.yy" // lalr1.cc:907
+ case 588:
+#line 2040 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3342 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3351 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 587:
-#line 2035 "dhcp4_parser.yy" // lalr1.cc:907
+ case 589:
+#line 2042 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hostname-char-set", s);
ctx.leave();
}
-#line 3352 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3361 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 588:
-#line 2041 "dhcp4_parser.yy" // lalr1.cc:907
+ case 590:
+#line 2048 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3360 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3369 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 589:
-#line 2043 "dhcp4_parser.yy" // lalr1.cc:907
+ case 591:
+#line 2050 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hostname-char-replacement", s);
ctx.leave();
}
-#line 3370 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3379 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 590:
-#line 2052 "dhcp4_parser.yy" // lalr1.cc:907
+ case 592:
+#line 2059 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3378 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3387 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 591:
-#line 2054 "dhcp4_parser.yy" // lalr1.cc:907
+ case 593:
+#line 2061 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("Dhcp6", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3387 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3396 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 592:
-#line 2059 "dhcp4_parser.yy" // lalr1.cc:907
+ case 594:
+#line 2066 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3395 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3404 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 593:
-#line 2061 "dhcp4_parser.yy" // lalr1.cc:907
+ case 595:
+#line 2068 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("DhcpDdns", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3404 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3413 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 594:
-#line 2066 "dhcp4_parser.yy" // lalr1.cc:907
+ case 596:
+#line 2073 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3412 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3421 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 595:
-#line 2068 "dhcp4_parser.yy" // lalr1.cc:907
+ case 597:
+#line 2075 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("Control-agent", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3421 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3430 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 596:
-#line 2073 "dhcp4_parser.yy" // lalr1.cc:907
+ case 598:
+#line 2080 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("config-control", i);
ctx.stack_.push_back(i);
ctx.enter(ctx.CONFIG_CONTROL);
}
-#line 3432 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3441 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 597:
-#line 2078 "dhcp4_parser.yy" // lalr1.cc:907
+ case 599:
+#line 2085 "dhcp4_parser.yy" // lalr1.cc:907
{
// No config control params are required
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3442 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3451 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 598:
-#line 2084 "dhcp4_parser.yy" // lalr1.cc:907
+ case 600:
+#line 2091 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the config-control map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 3452 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3461 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 599:
-#line 2088 "dhcp4_parser.yy" // lalr1.cc:907
+ case 601:
+#line 2095 "dhcp4_parser.yy" // lalr1.cc:907
{
// No config_control params are required
// parsing completed
}
-#line 3461 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3470 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 603:
-#line 2102 "dhcp4_parser.yy" // lalr1.cc:907
+ case 605:
+#line 2109 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("config-databases", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.CONFIG_DATABASE);
}
-#line 3472 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3481 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 604:
-#line 2107 "dhcp4_parser.yy" // lalr1.cc:907
+ case 606:
+#line 2114 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3481 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3490 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 605:
-#line 2117 "dhcp4_parser.yy" // lalr1.cc:907
+ case 607:
+#line 2124 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("Logging", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.LOGGING);
}
-#line 3492 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3501 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 606:
-#line 2122 "dhcp4_parser.yy" // lalr1.cc:907
+ case 608:
+#line 2129 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3501 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3510 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 607:
-#line 2127 "dhcp4_parser.yy" // lalr1.cc:907
+ case 609:
+#line 2134 "dhcp4_parser.yy" // lalr1.cc:907
{
// Parse the Logging map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 3511 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3520 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 608:
-#line 2131 "dhcp4_parser.yy" // lalr1.cc:907
+ case 610:
+#line 2138 "dhcp4_parser.yy" // lalr1.cc:907
{
// parsing completed
}
-#line 3519 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3528 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 612:
-#line 2147 "dhcp4_parser.yy" // lalr1.cc:907
+ case 614:
+#line 2154 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("loggers", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.LOGGERS);
}
-#line 3530 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3539 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 613:
-#line 2152 "dhcp4_parser.yy" // lalr1.cc:907
+ case 615:
+#line 2159 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3539 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3548 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 616:
-#line 2164 "dhcp4_parser.yy" // lalr1.cc:907
+ case 618:
+#line 2171 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(l);
ctx.stack_.push_back(l);
}
-#line 3549 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3558 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 617:
-#line 2168 "dhcp4_parser.yy" // lalr1.cc:907
+ case 619:
+#line 2175 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
}
-#line 3557 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3566 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 627:
-#line 2185 "dhcp4_parser.yy" // lalr1.cc:907
+ case 629:
+#line 2192 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr dl(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("debuglevel", dl);
}
-#line 3566 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3575 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 628:
-#line 2190 "dhcp4_parser.yy" // lalr1.cc:907
+ case 630:
+#line 2197 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3574 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3583 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 629:
-#line 2192 "dhcp4_parser.yy" // lalr1.cc:907
+ case 631:
+#line 2199 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr sev(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("severity", sev);
ctx.leave();
}
-#line 3584 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3593 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 630:
-#line 2198 "dhcp4_parser.yy" // lalr1.cc:907
+ case 632:
+#line 2205 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("output_options", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.OUTPUT_OPTIONS);
}
-#line 3595 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3604 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 631:
-#line 2203 "dhcp4_parser.yy" // lalr1.cc:907
+ case 633:
+#line 2210 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3604 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3613 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 634:
-#line 2212 "dhcp4_parser.yy" // lalr1.cc:907
+ case 636:
+#line 2219 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 3614 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3623 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 635:
-#line 2216 "dhcp4_parser.yy" // lalr1.cc:907
+ case 637:
+#line 2223 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
}
-#line 3622 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3631 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 642:
-#line 2230 "dhcp4_parser.yy" // lalr1.cc:907
+ case 644:
+#line 2237 "dhcp4_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3630 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3639 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 643:
-#line 2232 "dhcp4_parser.yy" // lalr1.cc:907
+ case 645:
+#line 2239 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr sev(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("output", sev);
ctx.leave();
}
-#line 3640 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3649 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 644:
-#line 2238 "dhcp4_parser.yy" // lalr1.cc:907
+ case 646:
+#line 2245 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr flush(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("flush", flush);
}
-#line 3649 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3658 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 645:
-#line 2243 "dhcp4_parser.yy" // lalr1.cc:907
+ case 647:
+#line 2250 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr maxsize(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("maxsize", maxsize);
}
-#line 3658 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3667 "dhcp4_parser.cc" // lalr1.cc:907
break;
- case 646:
-#line 2248 "dhcp4_parser.yy" // lalr1.cc:907
+ case 648:
+#line 2255 "dhcp4_parser.yy" // lalr1.cc:907
{
ElementPtr maxver(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("maxver", maxver);
}
-#line 3667 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3676 "dhcp4_parser.cc" // lalr1.cc:907
break;
-#line 3671 "dhcp4_parser.cc" // lalr1.cc:907
+#line 3680 "dhcp4_parser.cc" // lalr1.cc:907
default:
break;
}
}
- const short Dhcp4Parser::yypact_ninf_ = -797;
+ const short Dhcp4Parser::yypact_ninf_ = -800;
const signed char Dhcp4Parser::yytable_ninf_ = -1;
const short
Dhcp4Parser::yypact_[] =
{
- 403, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, 43, 35, 38, 50, 58,
- 60, 64, 103, 110, 142, 148, 161, 163, 185, 189,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, 35, -20,
- 17, 71, 32, 152, -15, 239, 146, 242, 54, -25,
- 361, 76, 206, -797, 219, 224, 233, 237, 244, -797,
- -797, -797, -797, -797, 287, -797, 55, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, 295, 297, 299, -797,
- -797, -797, -797, -797, -797, 303, 326, 354, 364, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, 367, -797, -797, -797, -797, 61, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, 369, -797, 72, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, 371, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, 86, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, 135, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, 273, 286, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, 342, -797, -797,
- 375, -797, -797, -797, 382, -797, -797, 345, 362, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, 383, 385, -797, -797, -797, -797, 387, 388,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, 138, -797, -797, -797, 386, -797, -797, 389,
- -797, 392, 396, -797, -797, 397, 398, -797, -797, -797,
- -797, -797, -797, -797, 166, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, 186, -797, -797, -797, 187, -797, -797, -797,
- 35, 35, -797, 77, 405, 408, 409, 410, 411, -797,
- 17, -797, 415, 418, 422, 250, 259, 265, 430, 432,
- 435, 436, 437, 438, 278, 279, 280, 282, 439, 445,
- 446, 463, 464, 465, 466, 467, 468, 469, 470, 471,
- 472, 311, 488, 489, 490, 71, -797, 491, 492, 493,
- 332, 32, -797, 497, 498, 499, 500, 501, 504, 343,
- 506, 507, 509, 152, -797, 510, -15, -797, 511, 512,
- 513, 514, 515, 516, 517, 518, -797, 239, -797, 519,
- 520, 365, 523, 524, 526, 366, -797, 242, 528, 368,
- 373, -797, 54, 529, 531, -13, -797, 374, 533, 535,
- 378, 541, 380, 381, 544, 545, 384, 400, 546, 566,
- 568, 569, 361, -797, 570, 76, -797, 571, 206, -797,
- -797, -797, 572, 573, 574, 35, 35, 35, -797, 575,
- 576, 577, -797, -797, -797, 412, 413, 420, 579, 580,
- 583, -797, -797, -797, -797, 424, 585, 586, 587, 588,
- 589, 429, 172, 590, 592, 593, 594, 595, -797, 596,
- 589, 597, -797, 600, 304, 309, -797, -797, 441, 442,
- 443, 604, 447, 448, -797, 600, 449, 603, -797, 450,
- -797, 600, 451, 452, 453, 454, 455, 456, 457, -797,
- 458, 459, -797, 460, 461, 462, -797, -797, 473, -797,
- -797, -797, 474, 35, -797, -797, 475, 476, -797, 477,
- -797, -797, 11, 479, -797, -797, -29, 478, 480, 481,
- -797, 623, -797, 624, -797, 35, 71, 76, -797, -797,
- -797, 206, 32, 578, -797, -797, -797, 414, 414, 625,
- -797, 626, 627, 628, 629, -797, -797, -797, -797, -797,
- -797, -797, -797, 66, 630, 637, 640, 5, 95, -797,
- 361, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, 641, -797, -797, -797, -797, 263, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, 642, 625, -797, 190, 196, 231, 238, -797, 261,
- -797, -797, -797, -797, -797, -797, 646, 647, 648, 649,
- 650, -797, -797, 651, 652, 653, 654, 655, -797, 262,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, 270, -797,
- 656, 657, -797, -797, 658, 660, -797, -797, 659, 663,
- -797, -797, 661, 665, -797, -797, 664, 666, -797, -797,
- -797, -797, -797, -797, 211, -797, -797, -797, -797, -797,
- -797, -797, 232, -797, -797, 667, 668, -797, -797, 669,
- 671, -797, 672, 673, 674, 675, 676, 677, 274, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, 276, -797, -797, -797, 277, 496, -797, 678, 679,
- -797, -797, -797, -797, 622, -797, 335, -797, 680, -797,
- -797, -797, -797, 681, 578, -797, 683, 684, 685, 686,
- 434, 525, 530, 527, 532, 687, 688, 534, 536, 537,
- 538, 539, 414, -797, -797, 414, -797, 625, 152, -797,
- 626, 242, -797, 627, 54, -797, 628, 195, -797, 629,
- 66, -797, 234, 630, -797, 239, -797, 637, -25, -797,
- 640, 540, 542, 543, 547, 548, 549, 5, -797, 690,
- 693, 95, -797, -797, -797, 695, 696, -15, -797, 641,
- 701, -797, 10, 642, -797, -797, 551, -797, 347, 552,
- 553, 554, -797, -797, -797, -797, -797, 555, 556, -797,
- -797, -797, -797, -797, -797, 284, -797, 285, -797, 702,
- -797, 703, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, 292, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, 708, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, 714, 720, -797,
- -797, -797, -797, -797, 716, -797, 319, -797, -797, -797,
- -797, -797, -797, -797, -797, 560, 561, -797, -797, 562,
- 337, -797, 600, -797, 724, -797, -797, -797, -797, -797,
- 339, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, 195, -797, 725, 563, -797, 234, -797, -797, -797,
- -797, -797, -797, -797, 726, 567, 728, 10, -797, -797,
- 581, -797, -797, 729, -797, 582, -797, -797, 730, -797,
- -797, 349, -797, -10, 730, -797, -797, 731, 732, 734,
- 346, -797, -797, -797, -797, -797, -797, 735, 584, 607,
- 610, -10, -797, 598, -797, -797, -797, -797, -797
+ 318, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, 43, 35, 38, 58, 67,
+ 97, 99, 107, 109, 117, 131, 135, 139, 149, 158,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, 35, -12,
+ 17, 71, 32, 153, 55, 183, 77, 40, 391, -45,
+ 453, 28, 164, -800, 214, 194, 225, 240, 255, -800,
+ -800, -800, -800, -800, 268, -800, 61, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, 272, 279, 281, -800,
+ -800, -800, -800, -800, -800, 285, 295, 306, 317, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, 322, -800, -800, -800, -800, 68, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, 336, -800, 72, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, 337, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, 86, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, 112, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, 327, 339, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, 342, -800, -800,
+ 341, -800, -800, -800, 343, -800, -800, 350, 357, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, 359, 360, -800, -800, -800, -800, 363, 362,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, 133, -800, -800, -800, 364, -800, -800, 369,
+ -800, 371, 375, -800, -800, 382, 383, -800, -800, -800,
+ -800, -800, -800, -800, 147, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, 188, -800, -800, -800, 191, -800, -800, -800,
+ 35, 35, -800, 224, 387, 389, 392, 395, 396, -800,
+ 17, -800, 397, 398, 403, 226, 243, 244, 405, 410,
+ 411, 414, 415, 418, 259, 260, 270, 287, 430, 432,
+ 458, 459, 460, 462, 463, 480, 481, 482, 483, 484,
+ 485, 323, 487, 488, 489, 71, -800, 490, 491, 492,
+ 328, 32, -800, 494, 495, 496, 497, 498, 499, 338,
+ 500, 504, 505, 153, -800, 506, 55, -800, 507, 509,
+ 510, 511, 512, 513, 514, 515, -800, 183, -800, 516,
+ 517, 355, 519, 520, 522, 358, -800, 40, 524, 365,
+ 366, -800, 391, 528, 529, -14, -800, 367, 533, 535,
+ 374, 538, 377, 378, 542, 543, 379, 380, 546, 548,
+ 550, 551, 453, -800, 552, 28, -800, 554, 164, -800,
+ -800, -800, 555, 553, 556, 35, 35, 35, -800, 557,
+ 558, 560, -800, -800, -800, 402, 404, 419, 579, 580,
+ 583, -800, -800, -800, -800, 423, 585, 588, 589, 590,
+ 591, 431, 269, 594, 595, 596, 597, 598, -800, 599,
+ 591, 600, -800, 603, 62, 103, -800, -800, 437, 438,
+ 443, 605, 445, 446, -800, 603, 447, 607, -800, 449,
+ -800, 603, 450, 451, 452, 454, 455, 456, 457, -800,
+ 461, 464, -800, 465, 466, 467, -800, -800, 468, -800,
+ -800, -800, 469, 35, -800, -800, 470, 471, -800, 472,
+ -800, -800, 11, 428, -800, -800, 26, 473, 474, 475,
+ -800, 619, -800, 620, -800, 35, 71, 28, -800, -800,
+ -800, 164, 32, 539, -800, -800, -800, 400, 400, 621,
+ -800, 622, 635, 636, 637, -800, -800, -800, -800, -800,
+ -800, -800, -800, 76, 638, 639, 640, 115, -29, -800,
+ 453, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, 641, -800, -800, -800, -800, 207, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, 642, 621, -800, 197, 233, 235, 236, -800, 246,
+ -800, -800, -800, -800, -800, -800, 592, 646, 647, 648,
+ 649, -800, -800, 650, 651, 652, 653, 654, 655, -800,
+ 254, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ 265, -800, 656, 623, -800, -800, 657, 658, -800, -800,
+ 659, 661, -800, -800, 660, 664, -800, -800, 662, 666,
+ -800, -800, -800, -800, -800, -800, 187, -800, -800, -800,
+ -800, -800, -800, -800, 253, -800, -800, 665, 667, -800,
+ -800, 668, 669, -800, 671, 672, 673, 674, 675, 676,
+ 266, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, 267, -800, -800, -800, 288, 518, -800,
+ 677, 670, -800, -800, -800, -800, 678, -800, 292, -800,
+ 679, -800, -800, -800, -800, 683, 539, -800, 684, 685,
+ 686, 687, 493, 523, 526, 525, 530, 691, 692, 531,
+ 532, 534, 536, 537, 540, 400, -800, -800, 400, -800,
+ 621, 153, -800, 622, 40, -800, 635, 391, -800, 636,
+ 238, -800, 637, 76, -800, 223, 638, -800, 183, -800,
+ 639, -45, -800, 640, 541, 544, 545, 547, 549, 559,
+ 115, -800, 696, 698, -29, -800, -800, -800, 699, 701,
+ 55, -800, 641, 705, -800, 74, 642, -800, -800, 561,
+ -800, 347, 562, 563, 564, -800, -800, -800, -800, -800,
+ 565, 566, -800, -800, -800, -800, -800, -800, -800, 303,
+ -800, 304, -800, 702, -800, 707, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, 314,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, 709, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, 710, 714, -800, -800, -800, -800, -800, 711, -800,
+ 320, -800, -800, -800, -800, -800, -800, -800, -800, 567,
+ 568, -800, -800, 569, 321, -800, 603, -800, 716, -800,
+ -800, -800, -800, -800, 329, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, 238, -800, 717, 570, -800,
+ 223, -800, -800, -800, -800, -800, -800, -800, 718, 571,
+ 719, 74, -800, -800, 574, -800, -800, 720, -800, 575,
+ -800, -800, 729, -800, -800, 330, -800, -85, 729, -800,
+ -800, 733, 738, 739, 331, -800, -800, -800, -800, -800,
+ -800, 740, 576, 581, 582, -85, -800, 584, -800, -800,
+ -800, -800, -800
};
const unsigned short
20, 22, 24, 26, 28, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 45, 38, 34, 33, 30, 31, 32, 37, 3,
- 35, 36, 58, 5, 70, 7, 128, 9, 265, 11,
- 420, 13, 445, 15, 345, 17, 353, 19, 390, 21,
- 230, 23, 537, 25, 607, 27, 598, 29, 47, 41,
- 0, 0, 0, 0, 0, 447, 0, 355, 392, 0,
+ 35, 36, 58, 5, 70, 7, 128, 9, 267, 11,
+ 422, 13, 447, 15, 347, 17, 355, 19, 392, 21,
+ 232, 23, 539, 25, 609, 27, 600, 29, 47, 41,
+ 0, 0, 0, 0, 0, 449, 0, 357, 394, 0,
0, 0, 0, 49, 0, 48, 0, 0, 42, 68,
- 605, 590, 592, 594, 0, 67, 0, 60, 62, 64,
- 65, 66, 63, 596, 117, 143, 0, 0, 0, 466,
- 468, 470, 141, 150, 152, 0, 0, 0, 0, 112,
- 257, 343, 382, 314, 433, 435, 307, 208, 494, 437,
- 222, 241, 0, 520, 533, 535, 107, 0, 72, 74,
+ 607, 592, 594, 596, 0, 67, 0, 60, 62, 64,
+ 65, 66, 63, 598, 117, 143, 0, 0, 0, 468,
+ 470, 472, 141, 150, 152, 0, 0, 0, 0, 112,
+ 259, 345, 384, 316, 435, 437, 309, 210, 496, 439,
+ 224, 243, 0, 522, 535, 537, 107, 0, 72, 74,
75, 76, 77, 105, 94, 95, 96, 80, 81, 102,
82, 83, 84, 88, 89, 78, 106, 79, 86, 87,
100, 101, 103, 97, 98, 99, 85, 90, 91, 92,
93, 104, 130, 132, 136, 0, 127, 0, 119, 121,
- 122, 123, 124, 125, 126, 295, 297, 299, 412, 293,
- 301, 0, 305, 303, 490, 292, 269, 270, 271, 282,
- 283, 0, 267, 274, 287, 288, 289, 275, 277, 278,
- 280, 276, 272, 273, 290, 291, 279, 284, 285, 286,
- 281, 431, 430, 426, 427, 425, 0, 422, 424, 428,
- 429, 488, 476, 478, 482, 480, 486, 484, 472, 465,
- 459, 463, 464, 0, 448, 449, 460, 461, 462, 456,
- 451, 457, 453, 454, 455, 458, 452, 0, 372, 193,
- 0, 376, 374, 379, 0, 368, 369, 0, 356, 357,
- 359, 371, 360, 361, 362, 378, 363, 364, 365, 366,
- 367, 406, 0, 0, 404, 405, 408, 409, 0, 393,
- 394, 396, 397, 398, 399, 400, 401, 402, 403, 237,
- 239, 234, 0, 232, 235, 236, 0, 560, 562, 0,
- 565, 0, 0, 569, 573, 0, 0, 577, 584, 586,
- 588, 558, 556, 557, 0, 539, 541, 542, 543, 544,
- 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
- 555, 612, 0, 609, 611, 603, 0, 600, 602, 46,
+ 122, 123, 124, 125, 126, 297, 299, 301, 414, 295,
+ 303, 0, 307, 305, 492, 294, 271, 272, 273, 284,
+ 285, 0, 269, 276, 289, 290, 291, 277, 279, 280,
+ 282, 278, 274, 275, 292, 293, 281, 286, 287, 288,
+ 283, 433, 432, 428, 429, 427, 0, 424, 426, 430,
+ 431, 490, 478, 480, 484, 482, 488, 486, 474, 467,
+ 461, 465, 466, 0, 450, 451, 462, 463, 464, 458,
+ 453, 459, 455, 456, 457, 460, 454, 0, 374, 194,
+ 0, 378, 376, 381, 0, 370, 371, 0, 358, 359,
+ 361, 373, 362, 363, 364, 380, 365, 366, 367, 368,
+ 369, 408, 0, 0, 406, 407, 410, 411, 0, 395,
+ 396, 398, 399, 400, 401, 402, 403, 404, 405, 239,
+ 241, 236, 0, 234, 237, 238, 0, 562, 564, 0,
+ 567, 0, 0, 571, 575, 0, 0, 579, 586, 588,
+ 590, 560, 558, 559, 0, 541, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 614, 0, 611, 613, 605, 0, 602, 604, 46,
0, 0, 39, 0, 0, 0, 0, 0, 0, 57,
0, 59, 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, 71, 0, 0, 0,
0, 0, 129, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 266, 0, 0, 421, 0, 0,
- 0, 0, 0, 0, 0, 0, 446, 0, 346, 0,
- 0, 0, 0, 0, 0, 0, 354, 0, 0, 0,
- 0, 391, 0, 0, 0, 0, 231, 0, 0, 0,
+ 0, 0, 0, 0, 268, 0, 0, 423, 0, 0,
+ 0, 0, 0, 0, 0, 0, 448, 0, 348, 0,
+ 0, 0, 0, 0, 0, 0, 356, 0, 0, 0,
+ 0, 393, 0, 0, 0, 0, 233, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 538, 0, 0, 608, 0, 0, 599,
+ 0, 0, 0, 540, 0, 0, 610, 0, 0, 601,
50, 43, 0, 0, 0, 0, 0, 0, 61, 0,
0, 0, 114, 115, 116, 0, 0, 0, 0, 0,
0, 108, 109, 110, 111, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 519, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 521, 0,
0, 0, 73, 0, 0, 0, 140, 120, 0, 0,
- 0, 0, 0, 0, 313, 0, 0, 0, 268, 0,
- 423, 0, 0, 0, 0, 0, 0, 0, 0, 450,
- 0, 0, 370, 0, 0, 0, 381, 358, 0, 410,
- 411, 395, 0, 0, 233, 559, 0, 0, 564, 0,
- 567, 568, 0, 0, 575, 576, 0, 0, 0, 0,
- 540, 0, 610, 0, 601, 0, 0, 0, 591, 593,
- 595, 0, 0, 0, 467, 469, 471, 0, 0, 154,
- 113, 259, 347, 384, 316, 40, 434, 436, 309, 310,
- 311, 312, 308, 0, 0, 439, 224, 0, 0, 534,
- 0, 51, 131, 134, 135, 133, 138, 139, 137, 296,
- 298, 300, 414, 294, 302, 306, 304, 0, 432, 489,
- 477, 479, 483, 481, 487, 485, 473, 373, 194, 377,
- 375, 380, 407, 238, 240, 561, 563, 566, 571, 572,
- 570, 574, 579, 580, 581, 582, 583, 578, 585, 587,
- 589, 0, 154, 44, 0, 0, 0, 0, 148, 0,
- 145, 147, 180, 186, 188, 190, 0, 0, 0, 0,
- 0, 202, 204, 0, 0, 0, 0, 0, 179, 0,
- 160, 162, 163, 164, 165, 166, 167, 168, 169, 170,
- 171, 175, 176, 177, 172, 178, 173, 174, 0, 158,
- 0, 155, 156, 263, 0, 260, 261, 351, 0, 348,
- 349, 388, 0, 385, 386, 320, 0, 317, 318, 217,
- 218, 219, 220, 221, 0, 210, 212, 213, 214, 215,
- 216, 498, 0, 496, 443, 0, 440, 441, 228, 0,
- 225, 226, 0, 0, 0, 0, 0, 0, 0, 243,
- 245, 246, 247, 248, 249, 250, 529, 531, 528, 526,
- 527, 0, 522, 524, 525, 0, 53, 418, 0, 415,
- 416, 474, 492, 493, 0, 616, 0, 614, 0, 69,
- 606, 597, 118, 0, 0, 144, 0, 0, 0, 0,
+ 0, 0, 0, 0, 315, 0, 0, 0, 270, 0,
+ 425, 0, 0, 0, 0, 0, 0, 0, 0, 452,
+ 0, 0, 372, 0, 0, 0, 383, 360, 0, 412,
+ 413, 397, 0, 0, 235, 561, 0, 0, 566, 0,
+ 569, 570, 0, 0, 577, 578, 0, 0, 0, 0,
+ 542, 0, 612, 0, 603, 0, 0, 0, 593, 595,
+ 597, 0, 0, 0, 469, 471, 473, 0, 0, 154,
+ 113, 261, 349, 386, 318, 40, 436, 438, 311, 312,
+ 313, 314, 310, 0, 0, 441, 226, 0, 0, 536,
+ 0, 51, 131, 134, 135, 133, 138, 139, 137, 298,
+ 300, 302, 416, 296, 304, 308, 306, 0, 434, 491,
+ 479, 481, 485, 483, 489, 487, 475, 375, 195, 379,
+ 377, 382, 409, 240, 242, 563, 565, 568, 573, 574,
+ 572, 576, 581, 582, 583, 584, 585, 580, 587, 589,
+ 591, 0, 154, 44, 0, 0, 0, 0, 148, 0,
+ 145, 147, 181, 187, 189, 191, 0, 0, 0, 0,
+ 0, 203, 205, 0, 0, 0, 0, 0, 0, 180,
+ 0, 160, 162, 163, 164, 165, 166, 167, 168, 169,
+ 170, 171, 175, 176, 177, 172, 178, 173, 174, 179,
+ 0, 158, 0, 155, 156, 265, 0, 262, 263, 353,
+ 0, 350, 351, 390, 0, 387, 388, 322, 0, 319,
+ 320, 219, 220, 221, 222, 223, 0, 212, 214, 215,
+ 216, 217, 218, 500, 0, 498, 445, 0, 442, 443,
+ 230, 0, 227, 228, 0, 0, 0, 0, 0, 0,
+ 0, 245, 247, 248, 249, 250, 251, 252, 531, 533,
+ 530, 528, 529, 0, 524, 526, 527, 0, 53, 420,
+ 0, 417, 418, 476, 494, 495, 0, 618, 0, 616,
+ 0, 69, 608, 599, 118, 0, 0, 144, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 142, 151, 0, 153, 0, 0, 258,
- 0, 355, 344, 0, 392, 383, 0, 0, 315, 0,
- 0, 209, 500, 0, 495, 447, 438, 0, 0, 223,
- 0, 0, 0, 0, 0, 0, 0, 0, 242, 0,
- 0, 0, 521, 536, 55, 0, 54, 0, 413, 0,
- 0, 491, 0, 0, 613, 604, 0, 146, 0, 0,
- 0, 0, 192, 195, 196, 197, 198, 0, 0, 206,
- 207, 199, 200, 201, 161, 0, 157, 0, 262, 0,
- 350, 0, 387, 342, 339, 327, 328, 330, 331, 324,
- 325, 326, 337, 338, 336, 0, 322, 329, 340, 341,
- 332, 333, 334, 335, 319, 211, 516, 0, 514, 515,
- 507, 508, 512, 513, 509, 510, 511, 0, 501, 502,
- 504, 505, 506, 497, 0, 442, 0, 227, 251, 252,
- 253, 254, 255, 256, 244, 0, 0, 523, 52, 0,
- 0, 417, 0, 630, 0, 628, 626, 620, 624, 625,
- 0, 618, 622, 623, 621, 615, 149, 182, 183, 184,
- 185, 181, 187, 189, 191, 203, 205, 159, 264, 352,
- 389, 0, 321, 0, 0, 499, 0, 444, 229, 530,
- 532, 56, 419, 475, 0, 0, 0, 0, 617, 323,
- 0, 518, 503, 0, 627, 0, 619, 517, 0, 629,
- 634, 0, 632, 0, 0, 631, 642, 0, 0, 0,
- 0, 636, 638, 639, 640, 641, 633, 0, 0, 0,
- 0, 0, 635, 0, 644, 645, 646, 637, 643
+ 0, 0, 0, 0, 0, 0, 142, 151, 0, 153,
+ 0, 0, 260, 0, 357, 346, 0, 394, 385, 0,
+ 0, 317, 0, 0, 211, 502, 0, 497, 449, 440,
+ 0, 0, 225, 0, 0, 0, 0, 0, 0, 0,
+ 0, 244, 0, 0, 0, 523, 538, 55, 0, 54,
+ 0, 415, 0, 0, 493, 0, 0, 615, 606, 0,
+ 146, 0, 0, 0, 0, 193, 196, 197, 198, 199,
+ 0, 0, 207, 208, 200, 201, 202, 209, 161, 0,
+ 157, 0, 264, 0, 352, 0, 389, 344, 341, 329,
+ 330, 332, 333, 326, 327, 328, 339, 340, 338, 0,
+ 324, 331, 342, 343, 334, 335, 336, 337, 321, 213,
+ 518, 0, 516, 517, 509, 510, 514, 515, 511, 512,
+ 513, 0, 503, 504, 506, 507, 508, 499, 0, 444,
+ 0, 229, 253, 254, 255, 256, 257, 258, 246, 0,
+ 0, 525, 52, 0, 0, 419, 0, 632, 0, 630,
+ 628, 622, 626, 627, 0, 620, 624, 625, 623, 617,
+ 149, 183, 184, 185, 186, 182, 188, 190, 192, 204,
+ 206, 159, 266, 354, 391, 0, 323, 0, 0, 501,
+ 0, 446, 231, 532, 534, 56, 421, 477, 0, 0,
+ 0, 0, 619, 325, 0, 520, 505, 0, 629, 0,
+ 621, 519, 0, 631, 636, 0, 634, 0, 0, 633,
+ 644, 0, 0, 0, 0, 638, 640, 641, 642, 643,
+ 635, 0, 0, 0, 0, 0, 637, 0, 646, 647,
+ 648, 639, 645
};
const short
Dhcp4Parser::yypgoto_[] =
{
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -46, -797, -451, -797,
- 121, -797, -797, -797, -797, -797, -797, -501, -797, -797,
- -797, -70, -797, -797, -797, 312, -797, -797, -797, -797,
- 107, 348, -47, -44, 4, -797, -797, -797, -797, 12,
- 15, -797, -797, 158, 340, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -52, -797, -797, -797, -797, -797, -797, 82, -797,
- -72, -797, -563, -59, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -26, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -81, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -90, -797, -797, -797, -83, 321, -797, -797,
- -797, -797, -797, -797, -797, -61, -797, -797, -797, -797,
- -797, -797, -796, -797, -797, -797, -43, -797, -797, -797,
- -34, 377, -797, -797, -797, -797, -797, -797, -797, -797,
- -795, -797, -68, -797, -55, -797, 19, -797, -797, -797,
- -797, -797, -797, -797, -38, -797, -797, -184, -63, -797,
- -797, -797, -797, -797, -16, -797, -797, -797, -18, -797,
- 372, -797, -66, -797, -797, -797, -797, -797, -64, -797,
- -797, -797, -797, -797, -19, -797, -797, -797, -22, -797,
- -797, -797, -14, -797, 379, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -45, -797, -797, -797,
- -40, 425, -797, -797, -57, -797, -39, -797, -62, -797,
- -797, -797, 7, -797, -797, -797, -8, -797, 407, -7,
- -797, -3, -797, 8, -797, 192, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -790, -797, -797, -797, -797, -797, 14,
- -797, -797, -797, -141, -797, -797, -797, -797, -797, -797,
- -797, -797, -2, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, 240, 390, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, -797, -797, -797, -797, -797, -797, -797, -797, -797,
- -797, 267, 391, -797, -797, -797, -797, -797, -797, 281,
- 395, -797, -797, -797, -12, -797, -797, -144, -797, -797,
- -797, -797, -797, -797, -160, -797, -797, -176, -797, -797,
- -797, -797, -797
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -46, -800, -443, -800,
+ 171, -800, -800, -800, -800, -800, -800, -501, -800, -800,
+ -800, -70, -800, -800, -800, 386, -800, -800, -800, -800,
+ 106, 352, -47, -44, 4, -800, -800, -800, -800, 12,
+ 15, -800, -800, 142, 351, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -43, -800, -800, -800, -800, -800, -800, 93, -800,
+ -54, -800, -563, -59, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -26, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -75, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -74, -800, -800, -800, -65, 334, -800,
+ -800, -800, -800, -800, -800, -800, -61, -800, -800, -800,
+ -800, -800, -800, -799, -800, -800, -800, -36, -800, -800,
+ -800, -41, 381, -800, -800, -800, -800, -800, -800, -800,
+ -800, -798, -800, -68, -800, -55, -800, 19, -800, -800,
+ -800, -800, -800, -800, -800, -32, -800, -800, -192, -63,
+ -800, -800, -800, -800, -800, -20, -800, -800, -800, -17,
+ -800, 373, -800, -66, -800, -800, -800, -800, -800, -64,
+ -800, -800, -800, -800, -800, -19, -800, -800, -800, -16,
+ -800, -800, -800, -15, -800, 388, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -42, -800, -800,
+ -800, -38, 401, -800, -800, -57, -800, -39, -800, -62,
+ -800, -800, -800, 7, -800, -800, -800, -1, -800, 417,
+ -7, -800, -3, -800, 8, -800, 221, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -793, -800, -800, -800, -800, -800,
+ 14, -800, -800, -800, -166, -800, -800, -800, -800, -800,
+ -800, -800, -800, -2, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, 241, 393, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, -800, -800, -800, -800, -800, -800, -800, -800,
+ -800, -800, 273, 385, -800, -800, -800, -800, -800, -800,
+ 280, 394, -800, -800, -800, -10, -800, -800, -143, -800,
+ -800, -800, -800, -800, -800, -158, -800, -800, -174, -800,
+ -800, -800, -800, -800
};
const short
{
-1, 15, 16, 17, 18, 19, 20, 21, 22, 23,
24, 25, 26, 27, 28, 29, 38, 39, 40, 69,
- 596, 87, 88, 41, 68, 84, 85, 612, 776, 855,
- 856, 688, 43, 70, 96, 97, 98, 354, 45, 71,
+ 596, 87, 88, 41, 68, 84, 85, 612, 778, 858,
+ 859, 689, 43, 70, 96, 97, 98, 354, 45, 71,
137, 138, 139, 140, 141, 142, 143, 378, 144, 145,
146, 147, 363, 177, 178, 47, 72, 179, 397, 180,
398, 615, 181, 399, 618, 182, 148, 371, 149, 364,
- 669, 670, 671, 793, 150, 372, 151, 373, 710, 711,
- 712, 815, 689, 690, 691, 796, 971, 692, 797, 693,
- 798, 694, 799, 695, 696, 430, 697, 698, 699, 700,
- 701, 702, 703, 704, 805, 705, 806, 706, 707, 152,
- 386, 734, 735, 736, 737, 738, 739, 740, 153, 389,
- 749, 750, 751, 838, 61, 79, 302, 303, 304, 443,
- 305, 444, 154, 390, 758, 759, 760, 761, 762, 763,
- 764, 765, 155, 379, 714, 715, 716, 818, 49, 73,
- 201, 202, 203, 407, 204, 403, 205, 404, 206, 405,
- 207, 408, 208, 411, 209, 410, 156, 385, 602, 211,
- 157, 382, 726, 727, 728, 827, 905, 906, 158, 380,
- 55, 76, 718, 719, 720, 821, 57, 77, 267, 268,
- 269, 270, 271, 272, 273, 429, 274, 433, 275, 432,
- 276, 277, 434, 278, 159, 381, 722, 723, 724, 824,
- 59, 78, 288, 289, 290, 291, 292, 438, 293, 294,
- 295, 296, 213, 406, 778, 779, 780, 857, 51, 74,
- 226, 227, 228, 415, 160, 383, 161, 384, 162, 388,
- 745, 746, 747, 835, 53, 75, 243, 244, 245, 163,
- 368, 164, 369, 165, 370, 249, 425, 783, 860, 250,
- 419, 251, 420, 252, 422, 253, 421, 254, 424, 255,
- 423, 256, 418, 220, 412, 784, 166, 387, 742, 743,
- 832, 927, 928, 929, 930, 931, 983, 932, 167, 168,
- 392, 771, 772, 773, 849, 774, 850, 169, 393, 170,
- 394, 63, 80, 324, 325, 326, 327, 448, 328, 449,
- 329, 330, 451, 331, 332, 333, 454, 650, 334, 455,
- 335, 336, 337, 458, 657, 338, 459, 339, 460, 340,
- 461, 99, 356, 100, 357, 101, 358, 171, 362, 67,
- 82, 346, 347, 348, 467, 102, 355, 65, 81, 342,
- 343, 344, 464, 786, 787, 862, 960, 961, 962, 963,
- 996, 964, 994, 1011, 1012, 1013, 1020, 1021, 1022, 1027,
- 1023, 1024, 1025
+ 669, 670, 671, 795, 150, 372, 151, 373, 712, 713,
+ 714, 818, 690, 691, 692, 798, 975, 693, 799, 694,
+ 800, 695, 801, 696, 697, 430, 698, 699, 700, 701,
+ 702, 703, 704, 705, 807, 706, 808, 707, 708, 709,
+ 152, 386, 736, 737, 738, 739, 740, 741, 742, 153,
+ 389, 751, 752, 753, 841, 61, 79, 302, 303, 304,
+ 443, 305, 444, 154, 390, 760, 761, 762, 763, 764,
+ 765, 766, 767, 155, 379, 716, 717, 718, 821, 49,
+ 73, 201, 202, 203, 407, 204, 403, 205, 404, 206,
+ 405, 207, 408, 208, 411, 209, 410, 156, 385, 602,
+ 211, 157, 382, 728, 729, 730, 830, 909, 910, 158,
+ 380, 55, 76, 720, 721, 722, 824, 57, 77, 267,
+ 268, 269, 270, 271, 272, 273, 429, 274, 433, 275,
+ 432, 276, 277, 434, 278, 159, 381, 724, 725, 726,
+ 827, 59, 78, 288, 289, 290, 291, 292, 438, 293,
+ 294, 295, 296, 213, 406, 780, 781, 782, 860, 51,
+ 74, 226, 227, 228, 415, 160, 383, 161, 384, 162,
+ 388, 747, 748, 749, 838, 53, 75, 243, 244, 245,
+ 163, 368, 164, 369, 165, 370, 249, 425, 785, 863,
+ 250, 419, 251, 420, 252, 422, 253, 421, 254, 424,
+ 255, 423, 256, 418, 220, 412, 786, 166, 387, 744,
+ 745, 835, 931, 932, 933, 934, 935, 987, 936, 167,
+ 168, 392, 773, 774, 775, 852, 776, 853, 169, 393,
+ 170, 394, 63, 80, 324, 325, 326, 327, 448, 328,
+ 449, 329, 330, 451, 331, 332, 333, 454, 650, 334,
+ 455, 335, 336, 337, 458, 657, 338, 459, 339, 460,
+ 340, 461, 99, 356, 100, 357, 101, 358, 171, 362,
+ 67, 82, 346, 347, 348, 467, 102, 355, 65, 81,
+ 342, 343, 344, 464, 788, 789, 865, 964, 965, 966,
+ 967, 1000, 968, 998, 1015, 1016, 1017, 1024, 1025, 1026,
+ 1031, 1027, 1028, 1029
};
const unsigned short
{
95, 136, 176, 195, 222, 239, 223, 265, 284, 301,
321, 216, 286, 257, 287, 183, 214, 229, 241, 224,
- 279, 297, 83, 322, 625, 708, 196, 89, 648, 197,
- 629, 900, 901, 184, 215, 230, 242, 913, 280, 298,
- 31, 323, 32, 30, 33, 42, 172, 173, 122, 595,
- 174, 266, 285, 175, 212, 225, 240, 44, 360, 595,
- 221, 124, 125, 361, 395, 46, 217, 48, 246, 396,
- 218, 50, 247, 192, 259, 401, 193, 198, 299, 300,
- 402, 219, 103, 248, 104, 199, 124, 125, 200, 413,
+ 279, 297, 83, 322, 625, 710, 196, 89, 648, 197,
+ 629, 904, 905, 184, 215, 230, 242, 917, 280, 298,
+ 31, 323, 32, 30, 33, 42, 172, 173, 124, 125,
+ 174, 266, 285, 175, 212, 225, 240, 595, 1020, 299,
+ 300, 1021, 1022, 1023, 360, 44, 217, 595, 246, 361,
+ 218, 395, 247, 258, 46, 401, 396, 198, 613, 614,
+ 402, 219, 103, 248, 104, 199, 768, 769, 200, 413,
299, 300, 210, 105, 414, 106, 107, 108, 109, 110,
- 111, 112, 113, 114, 652, 653, 654, 655, 124, 125,
- 52, 752, 753, 754, 755, 756, 757, 54, 259, 281,
- 260, 261, 282, 283, 115, 116, 117, 118, 119, 120,
- 124, 125, 1016, 121, 122, 1017, 1018, 1019, 416, 656,
- 94, 445, 649, 417, 123, 86, 446, 124, 125, 56,
- 94, 953, 126, 954, 955, 58, 90, 127, 128, 729,
- 730, 731, 732, 129, 733, 91, 92, 93, 60, 462,
- 62, 124, 125, 130, 463, 94, 131, 107, 108, 109,
- 110, 111, 94, 132, 133, 900, 901, 134, 135, 465,
- 468, 913, 64, 395, 466, 469, 66, 94, 789, 465,
- 34, 35, 36, 37, 790, 115, 116, 117, 121, 766,
- 767, 185, 186, 187, 830, 122, 341, 831, 345, 94,
- 107, 108, 109, 110, 111, 349, 188, 350, 124, 125,
- 189, 190, 191, 126, 468, 833, 94, 351, 834, 791,
- 192, 401, 472, 193, 129, 352, 792, 353, 115, 116,
- 117, 194, 885, 120, 598, 599, 600, 601, 122, 259,
- 94, 109, 110, 111, 794, 812, 109, 110, 111, 795,
- 813, 124, 125, 812, 190, 258, 126, 847, 814, 851,
- 462, 426, 848, 192, 852, 853, 193, 812, 413, 427,
- 95, 359, 977, 978, 194, 981, 121, 122, 259, 365,
- 982, 366, 122, 367, 470, 471, 259, 374, 260, 261,
- 124, 125, 262, 263, 264, 124, 125, 94, 124, 125,
- 613, 614, 445, 916, 917, 136, 231, 988, 616, 617,
- 375, 176, 232, 233, 234, 235, 236, 237, 863, 238,
- 416, 864, 997, 195, 183, 992, 222, 998, 223, 1031,
- 428, 216, 1014, 436, 1032, 1015, 214, 239, 376, 229,
- 94, 224, 184, 238, 781, 437, 196, 265, 377, 197,
- 241, 391, 284, 400, 215, 409, 286, 230, 287, 431,
- 279, 967, 968, 969, 970, 297, 435, 439, 242, 440,
- 447, 442, 321, 450, 212, 441, 452, 225, 280, 94,
- 453, 456, 457, 298, 94, 322, 217, 94, 240, 473,
- 218, 266, 474, 475, 476, 477, 285, 198, 482, 479,
- 246, 219, 480, 323, 247, 199, 481, 483, 200, 578,
- 579, 580, 210, 484, 485, 248, 486, 124, 125, 487,
- 488, 489, 490, 495, 491, 492, 493, 672, 494, 496,
- 497, 993, 673, 674, 675, 676, 677, 678, 679, 680,
- 681, 682, 683, 684, 685, 686, 687, 498, 499, 500,
- 501, 502, 503, 504, 505, 506, 507, 508, 259, 306,
- 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
- 317, 318, 509, 510, 511, 513, 514, 515, 319, 320,
- 516, 518, 519, 520, 521, 522, 136, 644, 523, 524,
- 525, 526, 176, 527, 529, 531, 532, 533, 534, 535,
- 536, 537, 538, 540, 541, 183, 94, 543, 544, 663,
- 545, 542, 548, 552, 546, 553, 549, 556, 768, 557,
- 321, 550, 555, 184, 558, 559, 560, 561, 562, 563,
- 566, 769, 564, 322, 1, 2, 3, 4, 5, 6,
- 7, 8, 9, 10, 11, 12, 13, 14, 565, 770,
- 567, 323, 568, 569, 571, 573, 575, 584, 585, 94,
- 576, 577, 581, 582, 583, 586, 587, 588, 589, 590,
- 591, 592, 593, 594, 597, 603, 32, 604, 605, 606,
- 872, 668, 607, 608, 610, 611, 619, 620, 621, 622,
- 627, 651, 623, 624, 626, 628, 630, 631, 632, 633,
- 634, 635, 636, 637, 638, 639, 640, 641, 661, 662,
- 861, 609, 709, 713, 717, 721, 725, 741, 642, 643,
- 645, 646, 647, 658, 744, 659, 660, 748, 777, 785,
- 800, 801, 802, 803, 804, 807, 808, 809, 810, 811,
- 817, 854, 816, 820, 819, 822, 823, 825, 826, 829,
- 828, 837, 478, 836, 840, 839, 841, 842, 843, 844,
- 845, 846, 859, 664, 858, 866, 865, 868, 869, 870,
- 871, 877, 878, 873, 945, 875, 874, 946, 876, 949,
- 879, 948, 880, 881, 882, 952, 938, 883, 939, 940,
- 979, 980, 984, 941, 942, 943, 966, 972, 973, 974,
- 975, 976, 985, 986, 987, 989, 990, 991, 995, 1000,
- 1003, 1001, 1005, 1004, 1008, 1028, 1029, 1010, 1030, 1033,
- 667, 517, 867, 512, 788, 886, 1007, 1009, 195, 915,
- 937, 265, 1034, 884, 284, 936, 216, 893, 286, 902,
- 287, 214, 918, 1038, 279, 239, 554, 297, 301, 920,
- 908, 196, 903, 1035, 197, 922, 1036, 888, 241, 215,
- 894, 768, 280, 895, 887, 298, 944, 222, 909, 223,
- 528, 914, 956, 923, 769, 266, 242, 999, 285, 212,
- 229, 899, 224, 889, 892, 958, 919, 890, 907, 547,
- 891, 217, 770, 921, 951, 218, 240, 950, 230, 782,
- 910, 551, 198, 959, 911, 924, 219, 934, 246, 925,
- 199, 896, 247, 200, 539, 912, 957, 210, 225, 897,
- 926, 530, 898, 248, 935, 1002, 904, 933, 666, 947,
- 775, 965, 570, 1006, 1026, 1037, 0, 0, 665, 574,
- 572, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 111, 112, 113, 114, 48, 259, 50, 260, 261, 124,
+ 125, 262, 263, 264, 52, 416, 54, 124, 125, 122,
+ 417, 94, 616, 617, 56, 115, 116, 117, 118, 119,
+ 120, 221, 124, 125, 121, 122, 445, 94, 58, 259,
+ 121, 446, 60, 649, 192, 123, 62, 193, 124, 125,
+ 462, 124, 125, 126, 86, 463, 64, 90, 127, 128,
+ 652, 653, 654, 655, 129, 66, 91, 92, 93, 341,
+ 731, 732, 733, 734, 130, 735, 345, 131, 107, 108,
+ 109, 110, 111, 94, 132, 133, 904, 905, 134, 135,
+ 833, 465, 917, 834, 468, 656, 466, 350, 94, 469,
+ 395, 34, 35, 36, 37, 791, 94, 115, 116, 117,
+ 109, 110, 111, 185, 186, 187, 957, 122, 958, 959,
+ 349, 94, 754, 755, 756, 757, 758, 759, 188, 351,
+ 124, 125, 189, 190, 191, 126, 465, 94, 468, 401,
+ 94, 792, 192, 793, 794, 193, 129, 122, 352, 796,
+ 109, 110, 111, 194, 797, 889, 836, 815, 353, 837,
+ 124, 125, 816, 107, 108, 109, 110, 111, 815, 850,
+ 854, 231, 359, 817, 851, 855, 365, 232, 233, 234,
+ 235, 236, 237, 366, 238, 367, 121, 122, 259, 374,
+ 95, 462, 115, 116, 117, 866, 856, 120, 867, 375,
+ 124, 125, 122, 259, 470, 471, 815, 413, 238, 783,
+ 376, 981, 982, 920, 921, 124, 125, 985, 190, 94,
+ 126, 377, 986, 445, 416, 136, 391, 192, 992, 996,
+ 193, 176, 1001, 1018, 1035, 426, 1019, 1002, 194, 1036,
+ 400, 409, 427, 195, 183, 431, 222, 435, 223, 94,
+ 428, 216, 598, 599, 600, 601, 214, 239, 436, 229,
+ 437, 224, 184, 439, 440, 442, 196, 265, 447, 197,
+ 241, 441, 284, 450, 215, 452, 286, 230, 287, 453,
+ 279, 971, 972, 973, 974, 297, 456, 457, 242, 94,
+ 472, 473, 321, 474, 212, 482, 475, 225, 280, 476,
+ 477, 479, 480, 298, 94, 322, 217, 481, 240, 485,
+ 218, 266, 483, 484, 486, 487, 285, 198, 488, 489,
+ 246, 219, 490, 323, 247, 199, 491, 492, 200, 578,
+ 579, 580, 210, 672, 495, 248, 496, 493, 673, 674,
+ 675, 676, 677, 678, 679, 680, 681, 682, 683, 684,
+ 685, 686, 687, 688, 494, 997, 259, 281, 260, 261,
+ 282, 283, 497, 498, 499, 259, 500, 501, 124, 125,
+ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
+ 11, 12, 13, 14, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 513, 514, 515, 516, 518, 519,
+ 520, 521, 522, 523, 525, 524, 136, 644, 526, 527,
+ 529, 531, 176, 532, 533, 534, 535, 536, 537, 538,
+ 540, 541, 542, 543, 544, 183, 545, 546, 548, 663,
+ 124, 125, 552, 553, 549, 550, 555, 556, 770, 557,
+ 321, 558, 559, 184, 560, 561, 562, 563, 564, 565,
+ 566, 771, 567, 322, 568, 569, 571, 94, 573, 575,
+ 576, 651, 668, 577, 581, 582, 94, 583, 584, 772,
+ 585, 323, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 318, 586, 587, 588, 589, 590,
+ 591, 319, 320, 592, 593, 594, 802, 597, 32, 603,
+ 604, 605, 606, 619, 620, 607, 608, 610, 611, 621,
+ 622, 623, 624, 626, 627, 628, 630, 631, 632, 94,
+ 633, 634, 635, 636, 661, 662, 820, 637, 711, 715,
+ 638, 639, 640, 641, 642, 643, 645, 646, 647, 658,
+ 659, 660, 719, 723, 727, 743, 746, 750, 779, 787,
+ 803, 804, 805, 806, 809, 810, 811, 812, 813, 814,
+ 875, 823, 819, 822, 826, 825, 828, 829, 831, 832,
+ 840, 839, 843, 862, 842, 844, 845, 846, 847, 848,
+ 849, 609, 664, 861, 857, 868, 864, 869, 871, 872,
+ 873, 874, 876, 877, 878, 880, 881, 879, 882, 883,
+ 949, 884, 950, 885, 953, 952, 886, 887, 942, 956,
+ 983, 943, 944, 988, 945, 984, 946, 990, 989, 991,
+ 999, 1004, 1007, 1009, 667, 1012, 947, 970, 976, 977,
+ 978, 979, 980, 993, 994, 995, 1014, 1032, 1008, 1005,
+ 1011, 1013, 1033, 1034, 1037, 1038, 478, 512, 1039, 1040,
+ 1042, 195, 517, 870, 265, 790, 888, 284, 919, 216,
+ 897, 286, 906, 287, 214, 922, 890, 279, 239, 941,
+ 297, 301, 924, 912, 196, 907, 940, 197, 926, 554,
+ 891, 241, 215, 898, 770, 280, 899, 892, 298, 948,
+ 222, 913, 223, 1003, 528, 960, 927, 771, 266, 242,
+ 918, 285, 212, 229, 903, 224, 894, 893, 962, 923,
+ 547, 911, 895, 896, 217, 772, 925, 530, 218, 240,
+ 955, 230, 954, 914, 1006, 198, 963, 915, 928, 219,
+ 551, 246, 929, 199, 900, 247, 200, 938, 916, 961,
+ 210, 225, 901, 930, 539, 902, 248, 939, 784, 908,
+ 937, 777, 951, 574, 666, 570, 969, 665, 1010, 572,
+ 1030, 1041, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 893, 0, 902, 0, 0, 918, 0, 0, 0,
- 0, 0, 0, 920, 908, 0, 903, 956, 0, 922,
- 0, 0, 0, 0, 894, 0, 0, 895, 0, 0,
- 958, 0, 909, 0, 0, 0, 0, 923, 0, 0,
- 0, 0, 0, 0, 0, 899, 0, 0, 959, 0,
- 919, 0, 907, 0, 0, 0, 0, 921, 0, 0,
- 0, 957, 0, 0, 910, 0, 0, 0, 911, 924,
- 0, 0, 0, 925, 0, 896, 0, 0, 0, 912,
- 0, 0, 0, 897, 926, 0, 898, 0, 0, 0,
- 904
+ 0, 0, 0, 0, 0, 897, 0, 906, 0, 0,
+ 922, 0, 0, 0, 0, 0, 0, 924, 912, 0,
+ 907, 960, 0, 926, 0, 0, 0, 0, 898, 0,
+ 0, 899, 0, 0, 962, 0, 913, 0, 0, 0,
+ 0, 927, 0, 0, 0, 0, 0, 0, 0, 903,
+ 0, 0, 963, 0, 923, 0, 911, 0, 0, 0,
+ 0, 925, 0, 0, 0, 961, 0, 0, 914, 0,
+ 0, 0, 915, 928, 0, 0, 0, 929, 0, 900,
+ 0, 0, 0, 916, 0, 0, 0, 901, 930, 0,
+ 902, 0, 0, 0, 908
};
const short
70, 71, 72, 73, 74, 75, 74, 77, 78, 79,
80, 73, 78, 76, 78, 72, 73, 74, 75, 74,
77, 78, 68, 80, 525, 588, 73, 10, 17, 73,
- 531, 827, 827, 72, 73, 74, 75, 827, 77, 78,
- 5, 80, 7, 0, 9, 7, 14, 15, 63, 500,
- 18, 77, 78, 21, 73, 74, 75, 7, 3, 510,
- 75, 76, 77, 8, 3, 7, 73, 7, 75, 8,
- 73, 7, 75, 88, 64, 3, 91, 73, 103, 104,
- 8, 73, 11, 75, 13, 73, 76, 77, 73, 3,
- 103, 104, 73, 22, 8, 24, 25, 26, 27, 28,
- 29, 30, 31, 32, 133, 134, 135, 136, 76, 77,
- 7, 106, 107, 108, 109, 110, 111, 7, 64, 65,
- 66, 67, 68, 69, 53, 54, 55, 56, 57, 58,
- 76, 77, 142, 62, 63, 145, 146, 147, 3, 168,
- 165, 3, 131, 8, 73, 165, 8, 76, 77, 7,
- 165, 141, 81, 143, 144, 7, 139, 86, 87, 93,
- 94, 95, 96, 92, 98, 148, 149, 150, 7, 3,
- 7, 76, 77, 102, 8, 165, 105, 25, 26, 27,
- 28, 29, 165, 112, 113, 981, 981, 116, 117, 3,
- 3, 981, 7, 3, 8, 8, 7, 165, 8, 3,
- 165, 166, 167, 168, 8, 53, 54, 55, 62, 114,
- 115, 59, 60, 61, 3, 63, 140, 6, 12, 165,
- 25, 26, 27, 28, 29, 6, 74, 3, 76, 77,
- 78, 79, 80, 81, 3, 3, 165, 4, 6, 8,
- 88, 3, 165, 91, 92, 8, 8, 3, 53, 54,
- 55, 99, 815, 58, 82, 83, 84, 85, 63, 64,
- 165, 27, 28, 29, 3, 3, 27, 28, 29, 8,
- 8, 76, 77, 3, 79, 33, 81, 3, 8, 3,
- 3, 8, 8, 88, 8, 8, 91, 3, 3, 3,
- 360, 4, 8, 8, 99, 3, 62, 63, 64, 4,
- 8, 4, 63, 4, 350, 351, 64, 4, 66, 67,
- 76, 77, 70, 71, 72, 76, 77, 165, 76, 77,
- 16, 17, 3, 89, 90, 395, 87, 8, 19, 20,
- 4, 401, 93, 94, 95, 96, 97, 98, 3, 100,
- 3, 6, 3, 413, 401, 8, 416, 8, 416, 3,
- 8, 413, 3, 8, 8, 6, 413, 427, 4, 416,
- 165, 416, 401, 100, 101, 3, 413, 437, 4, 413,
- 427, 4, 442, 4, 413, 4, 442, 416, 442, 4,
- 437, 34, 35, 36, 37, 442, 4, 4, 427, 4,
- 4, 3, 462, 4, 413, 8, 4, 416, 437, 165,
- 4, 4, 4, 442, 165, 462, 413, 165, 427, 4,
- 413, 437, 4, 4, 4, 4, 442, 413, 168, 4,
- 427, 413, 4, 462, 427, 413, 4, 168, 413, 475,
- 476, 477, 413, 168, 4, 427, 4, 76, 77, 4,
- 4, 4, 4, 4, 166, 166, 166, 33, 166, 4,
- 4, 952, 38, 39, 40, 41, 42, 43, 44, 45,
- 46, 47, 48, 49, 50, 51, 52, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 166, 64, 118,
- 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
- 129, 130, 4, 4, 4, 4, 4, 4, 137, 138,
- 168, 4, 4, 4, 4, 4, 576, 553, 4, 166,
+ 531, 830, 830, 72, 73, 74, 75, 830, 77, 78,
+ 5, 80, 7, 0, 9, 7, 14, 15, 77, 78,
+ 18, 77, 78, 21, 73, 74, 75, 500, 143, 104,
+ 105, 146, 147, 148, 3, 7, 73, 510, 75, 8,
+ 73, 3, 75, 33, 7, 3, 8, 73, 16, 17,
+ 8, 73, 11, 75, 13, 73, 115, 116, 73, 3,
+ 104, 105, 73, 22, 8, 24, 25, 26, 27, 28,
+ 29, 30, 31, 32, 7, 65, 7, 67, 68, 77,
+ 78, 71, 72, 73, 7, 3, 7, 77, 78, 64,
+ 8, 166, 19, 20, 7, 54, 55, 56, 57, 58,
+ 59, 76, 77, 78, 63, 64, 3, 166, 7, 65,
+ 63, 8, 7, 132, 89, 74, 7, 92, 77, 78,
+ 3, 77, 78, 82, 166, 8, 7, 140, 87, 88,
+ 134, 135, 136, 137, 93, 7, 149, 150, 151, 141,
+ 94, 95, 96, 97, 103, 99, 12, 106, 25, 26,
+ 27, 28, 29, 166, 113, 114, 985, 985, 117, 118,
+ 3, 3, 985, 6, 3, 169, 8, 3, 166, 8,
+ 3, 166, 167, 168, 169, 8, 166, 54, 55, 56,
+ 27, 28, 29, 60, 61, 62, 142, 64, 144, 145,
+ 6, 166, 107, 108, 109, 110, 111, 112, 75, 4,
+ 77, 78, 79, 80, 81, 82, 3, 166, 3, 3,
+ 166, 8, 89, 8, 8, 92, 93, 64, 8, 3,
+ 27, 28, 29, 100, 8, 818, 3, 3, 3, 6,
+ 77, 78, 8, 25, 26, 27, 28, 29, 3, 3,
+ 3, 88, 4, 8, 8, 8, 4, 94, 95, 96,
+ 97, 98, 99, 4, 101, 4, 63, 64, 65, 4,
+ 360, 3, 54, 55, 56, 3, 8, 59, 6, 4,
+ 77, 78, 64, 65, 350, 351, 3, 3, 101, 102,
+ 4, 8, 8, 90, 91, 77, 78, 3, 80, 166,
+ 82, 4, 8, 3, 3, 395, 4, 89, 8, 8,
+ 92, 401, 3, 3, 3, 8, 6, 8, 100, 8,
+ 4, 4, 3, 413, 401, 4, 416, 4, 416, 166,
+ 8, 413, 83, 84, 85, 86, 413, 427, 8, 416,
+ 3, 416, 401, 4, 4, 3, 413, 437, 4, 413,
+ 427, 8, 442, 4, 413, 4, 442, 416, 442, 4,
+ 437, 34, 35, 36, 37, 442, 4, 4, 427, 166,
+ 166, 4, 462, 4, 413, 169, 4, 416, 437, 4,
+ 4, 4, 4, 442, 166, 462, 413, 4, 427, 4,
+ 413, 437, 169, 169, 4, 4, 442, 413, 4, 4,
+ 427, 413, 4, 462, 427, 413, 167, 167, 413, 475,
+ 476, 477, 413, 33, 4, 427, 4, 167, 38, 39,
+ 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
+ 50, 51, 52, 53, 167, 956, 65, 66, 67, 68,
+ 69, 70, 4, 4, 4, 65, 4, 4, 77, 78,
+ 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
+ 162, 163, 164, 165, 4, 4, 4, 4, 4, 4,
+ 167, 4, 4, 4, 4, 4, 4, 169, 4, 4,
+ 4, 4, 4, 4, 4, 167, 576, 553, 4, 4,
4, 4, 582, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 582, 165, 4, 4, 575,
- 4, 166, 4, 4, 168, 4, 168, 4, 608, 4,
- 610, 168, 168, 582, 166, 4, 166, 166, 4, 4,
- 4, 608, 168, 610, 151, 152, 153, 154, 155, 156,
- 157, 158, 159, 160, 161, 162, 163, 164, 168, 608,
- 4, 610, 4, 4, 4, 4, 4, 165, 165, 165,
- 7, 7, 7, 7, 7, 165, 7, 7, 5, 165,
- 5, 5, 5, 5, 165, 5, 7, 5, 5, 5,
- 166, 23, 7, 7, 7, 5, 165, 165, 165, 5,
- 7, 132, 165, 165, 165, 165, 165, 165, 165, 165,
- 165, 165, 165, 165, 165, 165, 165, 165, 5, 5,
- 8, 510, 7, 7, 7, 7, 7, 7, 165, 165,
- 165, 165, 165, 165, 7, 165, 165, 7, 7, 7,
+ 4, 4, 167, 4, 4, 582, 4, 169, 4, 575,
+ 77, 78, 4, 4, 169, 169, 169, 4, 608, 4,
+ 610, 167, 4, 582, 167, 167, 4, 4, 169, 169,
+ 4, 608, 4, 610, 4, 4, 4, 166, 4, 4,
+ 7, 133, 23, 7, 7, 7, 166, 7, 166, 608,
+ 166, 610, 119, 120, 121, 122, 123, 124, 125, 126,
+ 127, 128, 129, 130, 131, 166, 7, 7, 5, 166,
+ 5, 138, 139, 5, 5, 5, 4, 166, 7, 5,
+ 5, 5, 5, 166, 166, 7, 7, 7, 5, 166,
+ 5, 166, 166, 166, 7, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 5, 5, 3, 166, 7, 7,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 7, 7, 7, 7, 7, 7, 7, 7,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 3, 165, 6, 3, 6, 6, 3, 6, 3, 3,
- 6, 3, 360, 6, 3, 6, 4, 4, 4, 4,
- 4, 4, 3, 576, 6, 4, 6, 4, 4, 4,
- 4, 4, 4, 168, 4, 168, 166, 4, 166, 3,
- 166, 6, 166, 166, 166, 4, 166, 168, 166, 166,
- 8, 8, 4, 166, 166, 166, 165, 165, 165, 165,
- 165, 165, 8, 3, 8, 165, 165, 165, 4, 4,
- 4, 168, 4, 166, 5, 4, 4, 7, 4, 4,
- 582, 401, 794, 395, 662, 817, 165, 165, 818, 830,
- 840, 821, 168, 812, 824, 838, 818, 827, 824, 827,
- 824, 818, 832, 165, 821, 835, 445, 824, 838, 832,
- 827, 818, 827, 166, 818, 832, 166, 820, 835, 818,
- 827, 851, 821, 827, 818, 824, 847, 857, 827, 857,
- 413, 829, 862, 832, 851, 821, 835, 981, 824, 818,
- 857, 827, 857, 821, 826, 862, 832, 823, 827, 437,
- 824, 818, 851, 832, 859, 818, 835, 857, 857, 627,
- 827, 442, 818, 862, 827, 832, 818, 835, 835, 832,
- 818, 827, 835, 818, 427, 827, 862, 818, 857, 827,
- 832, 416, 827, 835, 837, 986, 827, 833, 581, 851,
- 610, 863, 462, 997, 1014, 1031, -1, -1, 577, 468,
- 465, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 167, 3, 6, 6, 3, 6, 6, 3, 6, 3,
+ 3, 6, 3, 3, 6, 4, 4, 4, 4, 4,
+ 4, 510, 576, 6, 166, 6, 8, 4, 4, 4,
+ 4, 4, 169, 167, 169, 4, 4, 167, 167, 167,
+ 4, 167, 4, 167, 3, 6, 169, 167, 167, 4,
+ 8, 167, 167, 4, 167, 8, 167, 3, 8, 8,
+ 4, 4, 4, 4, 582, 5, 167, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 7, 4, 167, 169,
+ 166, 166, 4, 4, 4, 169, 360, 395, 167, 167,
+ 166, 821, 401, 796, 824, 662, 815, 827, 833, 821,
+ 830, 827, 830, 827, 821, 835, 820, 824, 838, 843,
+ 827, 841, 835, 830, 821, 830, 841, 821, 835, 445,
+ 821, 838, 821, 830, 854, 824, 830, 823, 827, 850,
+ 860, 830, 860, 985, 413, 865, 835, 854, 824, 838,
+ 832, 827, 821, 860, 830, 860, 826, 824, 865, 835,
+ 437, 830, 827, 829, 821, 854, 835, 416, 821, 838,
+ 862, 860, 860, 830, 990, 821, 865, 830, 835, 821,
+ 442, 838, 835, 821, 830, 838, 821, 838, 830, 865,
+ 821, 860, 830, 835, 427, 830, 838, 840, 627, 830,
+ 836, 610, 854, 468, 581, 462, 866, 577, 1001, 465,
+ 1018, 1035, -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, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 981, -1, 981, -1, -1, 986, -1, -1, -1,
- -1, -1, -1, 986, 981, -1, 981, 997, -1, 986,
- -1, -1, -1, -1, 981, -1, -1, 981, -1, -1,
- 997, -1, 981, -1, -1, -1, -1, 986, -1, -1,
- -1, -1, -1, -1, -1, 981, -1, -1, 997, -1,
- 986, -1, 981, -1, -1, -1, -1, 986, -1, -1,
- -1, 997, -1, -1, 981, -1, -1, -1, 981, 986,
- -1, -1, -1, 986, -1, 981, -1, -1, -1, 981,
- -1, -1, -1, 981, 986, -1, 981, -1, -1, -1,
- 981
+ -1, -1, -1, -1, -1, 985, -1, 985, -1, -1,
+ 990, -1, -1, -1, -1, -1, -1, 990, 985, -1,
+ 985, 1001, -1, 990, -1, -1, -1, -1, 985, -1,
+ -1, 985, -1, -1, 1001, -1, 985, -1, -1, -1,
+ -1, 990, -1, -1, -1, -1, -1, -1, -1, 985,
+ -1, -1, 1001, -1, 990, -1, 985, -1, -1, -1,
+ -1, 990, -1, -1, -1, 1001, -1, -1, 985, -1,
+ -1, -1, 985, 990, -1, -1, -1, 990, -1, 985,
+ -1, -1, -1, 985, -1, -1, -1, 985, 990, -1,
+ 985, -1, -1, -1, 985
};
const unsigned short
Dhcp4Parser::yystos_[] =
{
- 0, 151, 152, 153, 154, 155, 156, 157, 158, 159,
- 160, 161, 162, 163, 164, 170, 171, 172, 173, 174,
- 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
- 0, 5, 7, 9, 165, 166, 167, 168, 185, 186,
- 187, 192, 7, 201, 7, 207, 7, 224, 7, 317,
- 7, 397, 7, 413, 7, 349, 7, 355, 7, 379,
- 7, 293, 7, 470, 7, 516, 7, 508, 193, 188,
- 202, 208, 225, 318, 398, 414, 350, 356, 380, 294,
- 471, 517, 509, 185, 194, 195, 165, 190, 191, 10,
- 139, 148, 149, 150, 165, 200, 203, 204, 205, 500,
- 502, 504, 514, 11, 13, 22, 24, 25, 26, 27,
- 28, 29, 30, 31, 32, 53, 54, 55, 56, 57,
- 58, 62, 63, 73, 76, 77, 81, 86, 87, 92,
- 102, 105, 112, 113, 116, 117, 200, 209, 210, 211,
- 212, 213, 214, 215, 217, 218, 219, 220, 235, 237,
- 243, 245, 278, 287, 301, 311, 335, 339, 347, 373,
- 403, 405, 407, 418, 420, 422, 445, 457, 458, 466,
- 468, 506, 14, 15, 18, 21, 200, 222, 223, 226,
- 228, 231, 234, 403, 405, 59, 60, 61, 74, 78,
- 79, 80, 88, 91, 99, 200, 211, 212, 213, 218,
- 219, 319, 320, 321, 323, 325, 327, 329, 331, 333,
- 335, 338, 373, 391, 403, 405, 407, 418, 420, 422,
- 442, 75, 200, 331, 333, 373, 399, 400, 401, 403,
- 405, 87, 93, 94, 95, 96, 97, 98, 100, 200,
- 373, 403, 405, 415, 416, 417, 418, 420, 422, 424,
- 428, 430, 432, 434, 436, 438, 440, 347, 33, 64,
- 66, 67, 70, 71, 72, 200, 263, 357, 358, 359,
- 360, 361, 362, 363, 365, 367, 369, 370, 372, 403,
- 405, 65, 68, 69, 200, 263, 361, 367, 381, 382,
- 383, 384, 385, 387, 388, 389, 390, 403, 405, 103,
- 104, 200, 295, 296, 297, 299, 118, 119, 120, 121,
- 122, 123, 124, 125, 126, 127, 128, 129, 130, 137,
- 138, 200, 403, 405, 472, 473, 474, 475, 477, 479,
- 480, 482, 483, 484, 487, 489, 490, 491, 494, 496,
- 498, 140, 518, 519, 520, 12, 510, 511, 512, 6,
- 3, 4, 8, 3, 206, 515, 501, 503, 505, 4,
- 3, 8, 507, 221, 238, 4, 4, 4, 419, 421,
- 423, 236, 244, 246, 4, 4, 4, 4, 216, 312,
- 348, 374, 340, 404, 406, 336, 279, 446, 408, 288,
- 302, 4, 459, 467, 469, 3, 8, 227, 229, 232,
- 4, 3, 8, 324, 326, 328, 392, 322, 330, 4,
- 334, 332, 443, 3, 8, 402, 3, 8, 441, 429,
- 431, 435, 433, 439, 437, 425, 8, 3, 8, 364,
- 264, 4, 368, 366, 371, 4, 8, 3, 386, 4,
- 4, 8, 3, 298, 300, 3, 8, 4, 476, 478,
- 4, 481, 4, 4, 485, 488, 4, 4, 492, 495,
- 497, 499, 3, 8, 521, 3, 8, 513, 3, 8,
- 185, 185, 165, 4, 4, 4, 4, 4, 204, 4,
- 4, 4, 168, 168, 168, 4, 4, 4, 4, 4,
- 4, 166, 166, 166, 166, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 4, 4, 4, 4, 166, 4,
- 4, 4, 210, 4, 4, 4, 168, 223, 4, 4,
- 4, 4, 4, 4, 166, 4, 4, 4, 320, 4,
- 400, 4, 4, 4, 4, 4, 4, 4, 4, 417,
- 4, 4, 166, 4, 4, 4, 168, 359, 4, 168,
- 168, 383, 4, 4, 296, 168, 4, 4, 166, 4,
- 166, 166, 4, 4, 168, 168, 4, 4, 4, 4,
- 473, 4, 519, 4, 511, 4, 7, 7, 185, 185,
- 185, 7, 7, 7, 165, 165, 165, 7, 7, 5,
- 165, 5, 5, 5, 5, 187, 189, 165, 82, 83,
- 84, 85, 337, 5, 5, 5, 5, 7, 7, 189,
- 7, 5, 196, 16, 17, 230, 19, 20, 233, 165,
- 165, 165, 5, 165, 165, 196, 165, 7, 165, 196,
- 165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
- 165, 165, 165, 165, 185, 165, 165, 165, 17, 131,
- 486, 132, 133, 134, 135, 136, 168, 493, 165, 165,
- 165, 5, 5, 185, 209, 518, 510, 222, 23, 239,
- 240, 241, 33, 38, 39, 40, 41, 42, 43, 44,
- 45, 46, 47, 48, 49, 50, 51, 52, 200, 251,
- 252, 253, 256, 258, 260, 262, 263, 265, 266, 267,
- 268, 269, 270, 271, 272, 274, 276, 277, 251, 7,
- 247, 248, 249, 7, 313, 314, 315, 7, 351, 352,
- 353, 7, 375, 376, 377, 7, 341, 342, 343, 93,
- 94, 95, 96, 98, 280, 281, 282, 283, 284, 285,
- 286, 7, 447, 448, 7, 409, 410, 411, 7, 289,
- 290, 291, 106, 107, 108, 109, 110, 111, 303, 304,
- 305, 306, 307, 308, 309, 310, 114, 115, 200, 403,
- 405, 460, 461, 462, 464, 472, 197, 7, 393, 394,
- 395, 101, 424, 426, 444, 7, 522, 523, 247, 8,
- 8, 8, 8, 242, 3, 8, 254, 257, 259, 261,
- 4, 4, 4, 4, 4, 273, 275, 4, 4, 4,
- 4, 4, 3, 8, 8, 250, 6, 3, 316, 6,
- 3, 354, 6, 3, 378, 6, 3, 344, 6, 3,
- 3, 6, 449, 3, 6, 412, 6, 3, 292, 6,
- 3, 4, 4, 4, 4, 4, 4, 3, 8, 463,
- 465, 3, 8, 8, 165, 198, 199, 396, 6, 3,
- 427, 8, 524, 3, 6, 6, 4, 240, 4, 4,
- 4, 4, 166, 168, 166, 168, 166, 4, 4, 166,
- 166, 166, 166, 168, 252, 251, 249, 319, 315, 357,
- 353, 381, 377, 200, 211, 212, 213, 218, 219, 263,
- 311, 329, 331, 333, 335, 345, 346, 373, 403, 405,
- 418, 420, 422, 442, 343, 281, 89, 90, 200, 263,
- 347, 373, 403, 405, 418, 420, 422, 450, 451, 452,
- 453, 454, 456, 448, 415, 411, 295, 291, 166, 166,
- 166, 166, 166, 166, 304, 4, 4, 461, 6, 3,
- 399, 395, 4, 141, 143, 144, 200, 263, 403, 405,
- 525, 526, 527, 528, 530, 523, 165, 34, 35, 36,
- 37, 255, 165, 165, 165, 165, 165, 8, 8, 8,
- 8, 3, 8, 455, 4, 8, 3, 8, 8, 165,
- 165, 165, 8, 196, 531, 4, 529, 3, 8, 346,
- 4, 168, 452, 4, 166, 4, 526, 165, 5, 165,
- 7, 532, 533, 534, 3, 6, 142, 145, 146, 147,
- 535, 536, 537, 539, 540, 541, 533, 538, 4, 4,
- 4, 3, 8, 4, 168, 166, 166, 536, 165
+ 0, 152, 153, 154, 155, 156, 157, 158, 159, 160,
+ 161, 162, 163, 164, 165, 171, 172, 173, 174, 175,
+ 176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
+ 0, 5, 7, 9, 166, 167, 168, 169, 186, 187,
+ 188, 193, 7, 202, 7, 208, 7, 225, 7, 319,
+ 7, 399, 7, 415, 7, 351, 7, 357, 7, 381,
+ 7, 295, 7, 472, 7, 518, 7, 510, 194, 189,
+ 203, 209, 226, 320, 400, 416, 352, 358, 382, 296,
+ 473, 519, 511, 186, 195, 196, 166, 191, 192, 10,
+ 140, 149, 150, 151, 166, 201, 204, 205, 206, 502,
+ 504, 506, 516, 11, 13, 22, 24, 25, 26, 27,
+ 28, 29, 30, 31, 32, 54, 55, 56, 57, 58,
+ 59, 63, 64, 74, 77, 78, 82, 87, 88, 93,
+ 103, 106, 113, 114, 117, 118, 201, 210, 211, 212,
+ 213, 214, 215, 216, 218, 219, 220, 221, 236, 238,
+ 244, 246, 280, 289, 303, 313, 337, 341, 349, 375,
+ 405, 407, 409, 420, 422, 424, 447, 459, 460, 468,
+ 470, 508, 14, 15, 18, 21, 201, 223, 224, 227,
+ 229, 232, 235, 405, 407, 60, 61, 62, 75, 79,
+ 80, 81, 89, 92, 100, 201, 212, 213, 214, 219,
+ 220, 321, 322, 323, 325, 327, 329, 331, 333, 335,
+ 337, 340, 375, 393, 405, 407, 409, 420, 422, 424,
+ 444, 76, 201, 333, 335, 375, 401, 402, 403, 405,
+ 407, 88, 94, 95, 96, 97, 98, 99, 101, 201,
+ 375, 405, 407, 417, 418, 419, 420, 422, 424, 426,
+ 430, 432, 434, 436, 438, 440, 442, 349, 33, 65,
+ 67, 68, 71, 72, 73, 201, 264, 359, 360, 361,
+ 362, 363, 364, 365, 367, 369, 371, 372, 374, 405,
+ 407, 66, 69, 70, 201, 264, 363, 369, 383, 384,
+ 385, 386, 387, 389, 390, 391, 392, 405, 407, 104,
+ 105, 201, 297, 298, 299, 301, 119, 120, 121, 122,
+ 123, 124, 125, 126, 127, 128, 129, 130, 131, 138,
+ 139, 201, 405, 407, 474, 475, 476, 477, 479, 481,
+ 482, 484, 485, 486, 489, 491, 492, 493, 496, 498,
+ 500, 141, 520, 521, 522, 12, 512, 513, 514, 6,
+ 3, 4, 8, 3, 207, 517, 503, 505, 507, 4,
+ 3, 8, 509, 222, 239, 4, 4, 4, 421, 423,
+ 425, 237, 245, 247, 4, 4, 4, 4, 217, 314,
+ 350, 376, 342, 406, 408, 338, 281, 448, 410, 290,
+ 304, 4, 461, 469, 471, 3, 8, 228, 230, 233,
+ 4, 3, 8, 326, 328, 330, 394, 324, 332, 4,
+ 336, 334, 445, 3, 8, 404, 3, 8, 443, 431,
+ 433, 437, 435, 441, 439, 427, 8, 3, 8, 366,
+ 265, 4, 370, 368, 373, 4, 8, 3, 388, 4,
+ 4, 8, 3, 300, 302, 3, 8, 4, 478, 480,
+ 4, 483, 4, 4, 487, 490, 4, 4, 494, 497,
+ 499, 501, 3, 8, 523, 3, 8, 515, 3, 8,
+ 186, 186, 166, 4, 4, 4, 4, 4, 205, 4,
+ 4, 4, 169, 169, 169, 4, 4, 4, 4, 4,
+ 4, 167, 167, 167, 167, 4, 4, 4, 4, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 167, 4,
+ 4, 4, 211, 4, 4, 4, 169, 224, 4, 4,
+ 4, 4, 4, 4, 167, 4, 4, 4, 322, 4,
+ 402, 4, 4, 4, 4, 4, 4, 4, 4, 419,
+ 4, 4, 167, 4, 4, 4, 169, 361, 4, 169,
+ 169, 385, 4, 4, 298, 169, 4, 4, 167, 4,
+ 167, 167, 4, 4, 169, 169, 4, 4, 4, 4,
+ 475, 4, 521, 4, 513, 4, 7, 7, 186, 186,
+ 186, 7, 7, 7, 166, 166, 166, 7, 7, 5,
+ 166, 5, 5, 5, 5, 188, 190, 166, 83, 84,
+ 85, 86, 339, 5, 5, 5, 5, 7, 7, 190,
+ 7, 5, 197, 16, 17, 231, 19, 20, 234, 166,
+ 166, 166, 5, 166, 166, 197, 166, 7, 166, 197,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 186, 166, 166, 166, 17, 132,
+ 488, 133, 134, 135, 136, 137, 169, 495, 166, 166,
+ 166, 5, 5, 186, 210, 520, 512, 223, 23, 240,
+ 241, 242, 33, 38, 39, 40, 41, 42, 43, 44,
+ 45, 46, 47, 48, 49, 50, 51, 52, 53, 201,
+ 252, 253, 254, 257, 259, 261, 263, 264, 266, 267,
+ 268, 269, 270, 271, 272, 273, 275, 277, 278, 279,
+ 252, 7, 248, 249, 250, 7, 315, 316, 317, 7,
+ 353, 354, 355, 7, 377, 378, 379, 7, 343, 344,
+ 345, 94, 95, 96, 97, 99, 282, 283, 284, 285,
+ 286, 287, 288, 7, 449, 450, 7, 411, 412, 413,
+ 7, 291, 292, 293, 107, 108, 109, 110, 111, 112,
+ 305, 306, 307, 308, 309, 310, 311, 312, 115, 116,
+ 201, 405, 407, 462, 463, 464, 466, 474, 198, 7,
+ 395, 396, 397, 102, 426, 428, 446, 7, 524, 525,
+ 248, 8, 8, 8, 8, 243, 3, 8, 255, 258,
+ 260, 262, 4, 4, 4, 4, 4, 274, 276, 4,
+ 4, 4, 4, 4, 4, 3, 8, 8, 251, 6,
+ 3, 318, 6, 3, 356, 6, 3, 380, 6, 3,
+ 346, 6, 3, 3, 6, 451, 3, 6, 414, 6,
+ 3, 294, 6, 3, 4, 4, 4, 4, 4, 4,
+ 3, 8, 465, 467, 3, 8, 8, 166, 199, 200,
+ 398, 6, 3, 429, 8, 526, 3, 6, 6, 4,
+ 241, 4, 4, 4, 4, 167, 169, 167, 169, 167,
+ 4, 4, 167, 167, 167, 167, 169, 167, 253, 252,
+ 250, 321, 317, 359, 355, 383, 379, 201, 212, 213,
+ 214, 219, 220, 264, 313, 331, 333, 335, 337, 347,
+ 348, 375, 405, 407, 420, 422, 424, 444, 345, 283,
+ 90, 91, 201, 264, 349, 375, 405, 407, 420, 422,
+ 424, 452, 453, 454, 455, 456, 458, 450, 417, 413,
+ 297, 293, 167, 167, 167, 167, 167, 167, 306, 4,
+ 4, 463, 6, 3, 401, 397, 4, 142, 144, 145,
+ 201, 264, 405, 407, 527, 528, 529, 530, 532, 525,
+ 166, 34, 35, 36, 37, 256, 166, 166, 166, 166,
+ 166, 8, 8, 8, 8, 3, 8, 457, 4, 8,
+ 3, 8, 8, 166, 166, 166, 8, 197, 533, 4,
+ 531, 3, 8, 348, 4, 169, 454, 4, 167, 4,
+ 528, 166, 5, 166, 7, 534, 535, 536, 3, 6,
+ 143, 146, 147, 148, 537, 538, 539, 541, 542, 543,
+ 535, 540, 4, 4, 4, 3, 8, 4, 169, 167,
+ 167, 538, 166
};
const unsigned short
Dhcp4Parser::yyr1_[] =
{
- 0, 169, 171, 170, 172, 170, 173, 170, 174, 170,
- 175, 170, 176, 170, 177, 170, 178, 170, 179, 170,
- 180, 170, 181, 170, 182, 170, 183, 170, 184, 170,
- 185, 185, 185, 185, 185, 185, 185, 186, 188, 187,
- 189, 190, 190, 191, 191, 193, 192, 194, 194, 195,
- 195, 197, 196, 198, 198, 199, 199, 200, 202, 201,
- 203, 203, 204, 204, 204, 204, 204, 204, 206, 205,
- 208, 207, 209, 209, 210, 210, 210, 210, 210, 210,
- 210, 210, 210, 210, 210, 210, 210, 210, 210, 210,
- 210, 210, 210, 210, 210, 210, 210, 210, 210, 210,
- 210, 210, 210, 210, 210, 210, 210, 210, 211, 212,
- 213, 214, 216, 215, 217, 218, 219, 221, 220, 222,
- 222, 223, 223, 223, 223, 223, 223, 223, 225, 224,
- 227, 226, 229, 228, 230, 230, 232, 231, 233, 233,
- 234, 236, 235, 238, 237, 239, 239, 240, 242, 241,
- 244, 243, 246, 245, 247, 247, 248, 248, 250, 249,
- 251, 251, 252, 252, 252, 252, 252, 252, 252, 252,
- 252, 252, 252, 252, 252, 252, 252, 252, 252, 252,
- 254, 253, 255, 255, 255, 255, 257, 256, 259, 258,
- 261, 260, 262, 264, 263, 265, 266, 267, 268, 269,
- 270, 271, 273, 272, 275, 274, 276, 277, 279, 278,
- 280, 280, 281, 281, 281, 281, 281, 282, 283, 284,
- 285, 286, 288, 287, 289, 289, 290, 290, 292, 291,
- 294, 293, 295, 295, 295, 296, 296, 298, 297, 300,
- 299, 302, 301, 303, 303, 304, 304, 304, 304, 304,
- 304, 305, 306, 307, 308, 309, 310, 312, 311, 313,
- 313, 314, 314, 316, 315, 318, 317, 319, 319, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 322, 321, 324, 323, 326, 325, 328,
- 327, 330, 329, 332, 331, 334, 333, 336, 335, 337,
- 337, 337, 337, 338, 340, 339, 341, 341, 342, 342,
- 344, 343, 345, 345, 346, 346, 346, 346, 346, 346,
- 346, 346, 346, 346, 346, 346, 346, 346, 346, 346,
- 346, 346, 346, 348, 347, 350, 349, 351, 351, 352,
- 352, 354, 353, 356, 355, 357, 357, 358, 358, 359,
- 359, 359, 359, 359, 359, 359, 359, 359, 359, 360,
- 361, 362, 364, 363, 366, 365, 368, 367, 369, 371,
- 370, 372, 374, 373, 375, 375, 376, 376, 378, 377,
- 380, 379, 381, 381, 382, 382, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 384, 386, 385, 387, 388,
- 389, 390, 392, 391, 393, 393, 394, 394, 396, 395,
- 398, 397, 399, 399, 400, 400, 400, 400, 400, 400,
- 400, 402, 401, 404, 403, 406, 405, 408, 407, 409,
- 409, 410, 410, 412, 411, 414, 413, 415, 415, 416,
- 416, 417, 417, 417, 417, 417, 417, 417, 417, 417,
- 417, 417, 417, 417, 417, 417, 419, 418, 421, 420,
+ 0, 170, 172, 171, 173, 171, 174, 171, 175, 171,
+ 176, 171, 177, 171, 178, 171, 179, 171, 180, 171,
+ 181, 171, 182, 171, 183, 171, 184, 171, 185, 171,
+ 186, 186, 186, 186, 186, 186, 186, 187, 189, 188,
+ 190, 191, 191, 192, 192, 194, 193, 195, 195, 196,
+ 196, 198, 197, 199, 199, 200, 200, 201, 203, 202,
+ 204, 204, 205, 205, 205, 205, 205, 205, 207, 206,
+ 209, 208, 210, 210, 211, 211, 211, 211, 211, 211,
+ 211, 211, 211, 211, 211, 211, 211, 211, 211, 211,
+ 211, 211, 211, 211, 211, 211, 211, 211, 211, 211,
+ 211, 211, 211, 211, 211, 211, 211, 211, 212, 213,
+ 214, 215, 217, 216, 218, 219, 220, 222, 221, 223,
+ 223, 224, 224, 224, 224, 224, 224, 224, 226, 225,
+ 228, 227, 230, 229, 231, 231, 233, 232, 234, 234,
+ 235, 237, 236, 239, 238, 240, 240, 241, 243, 242,
+ 245, 244, 247, 246, 248, 248, 249, 249, 251, 250,
+ 252, 252, 253, 253, 253, 253, 253, 253, 253, 253,
+ 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
+ 253, 255, 254, 256, 256, 256, 256, 258, 257, 260,
+ 259, 262, 261, 263, 265, 264, 266, 267, 268, 269,
+ 270, 271, 272, 274, 273, 276, 275, 277, 278, 279,
+ 281, 280, 282, 282, 283, 283, 283, 283, 283, 284,
+ 285, 286, 287, 288, 290, 289, 291, 291, 292, 292,
+ 294, 293, 296, 295, 297, 297, 297, 298, 298, 300,
+ 299, 302, 301, 304, 303, 305, 305, 306, 306, 306,
+ 306, 306, 306, 307, 308, 309, 310, 311, 312, 314,
+ 313, 315, 315, 316, 316, 318, 317, 320, 319, 321,
+ 321, 322, 322, 322, 322, 322, 322, 322, 322, 322,
+ 322, 322, 322, 322, 322, 322, 322, 322, 322, 322,
+ 322, 322, 322, 322, 322, 324, 323, 326, 325, 328,
+ 327, 330, 329, 332, 331, 334, 333, 336, 335, 338,
+ 337, 339, 339, 339, 339, 340, 342, 341, 343, 343,
+ 344, 344, 346, 345, 347, 347, 348, 348, 348, 348,
+ 348, 348, 348, 348, 348, 348, 348, 348, 348, 348,
+ 348, 348, 348, 348, 348, 350, 349, 352, 351, 353,
+ 353, 354, 354, 356, 355, 358, 357, 359, 359, 360,
+ 360, 361, 361, 361, 361, 361, 361, 361, 361, 361,
+ 361, 362, 363, 364, 366, 365, 368, 367, 370, 369,
+ 371, 373, 372, 374, 376, 375, 377, 377, 378, 378,
+ 380, 379, 382, 381, 383, 383, 384, 384, 385, 385,
+ 385, 385, 385, 385, 385, 385, 385, 386, 388, 387,
+ 389, 390, 391, 392, 394, 393, 395, 395, 396, 396,
+ 398, 397, 400, 399, 401, 401, 402, 402, 402, 402,
+ 402, 402, 402, 404, 403, 406, 405, 408, 407, 410,
+ 409, 411, 411, 412, 412, 414, 413, 416, 415, 417,
+ 417, 418, 418, 419, 419, 419, 419, 419, 419, 419,
+ 419, 419, 419, 419, 419, 419, 419, 419, 421, 420,
423, 422, 425, 424, 427, 426, 429, 428, 431, 430,
433, 432, 435, 434, 437, 436, 439, 438, 441, 440,
- 443, 442, 444, 444, 446, 445, 447, 447, 449, 448,
- 450, 450, 451, 451, 452, 452, 452, 452, 452, 452,
- 452, 452, 452, 452, 452, 453, 455, 454, 456, 457,
- 459, 458, 460, 460, 461, 461, 461, 461, 461, 463,
- 462, 465, 464, 467, 466, 469, 468, 471, 470, 472,
- 472, 473, 473, 473, 473, 473, 473, 473, 473, 473,
- 473, 473, 473, 473, 473, 473, 473, 473, 473, 474,
- 476, 475, 478, 477, 479, 481, 480, 482, 483, 485,
- 484, 486, 486, 488, 487, 489, 490, 492, 491, 493,
- 493, 493, 493, 493, 495, 494, 497, 496, 499, 498,
+ 443, 442, 445, 444, 446, 446, 448, 447, 449, 449,
+ 451, 450, 452, 452, 453, 453, 454, 454, 454, 454,
+ 454, 454, 454, 454, 454, 454, 454, 455, 457, 456,
+ 458, 459, 461, 460, 462, 462, 463, 463, 463, 463,
+ 463, 465, 464, 467, 466, 469, 468, 471, 470, 473,
+ 472, 474, 474, 475, 475, 475, 475, 475, 475, 475,
+ 475, 475, 475, 475, 475, 475, 475, 475, 475, 475,
+ 475, 476, 478, 477, 480, 479, 481, 483, 482, 484,
+ 485, 487, 486, 488, 488, 490, 489, 491, 492, 494,
+ 493, 495, 495, 495, 495, 495, 497, 496, 499, 498,
501, 500, 503, 502, 505, 504, 507, 506, 509, 508,
- 510, 510, 511, 513, 512, 515, 514, 517, 516, 518,
- 518, 519, 521, 520, 522, 522, 524, 523, 525, 525,
- 526, 526, 526, 526, 526, 526, 526, 527, 529, 528,
- 531, 530, 532, 532, 534, 533, 535, 535, 536, 536,
- 536, 536, 538, 537, 539, 540, 541
+ 511, 510, 512, 512, 513, 515, 514, 517, 516, 519,
+ 518, 520, 520, 521, 523, 522, 524, 524, 526, 525,
+ 527, 527, 528, 528, 528, 528, 528, 528, 528, 529,
+ 531, 530, 533, 532, 534, 534, 536, 535, 537, 537,
+ 538, 538, 538, 538, 540, 539, 541, 542, 543
};
const unsigned char
0, 6, 0, 6, 0, 1, 1, 3, 0, 4,
1, 3, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 0, 4, 1, 1, 1, 1, 0, 4, 0, 4,
- 0, 4, 3, 0, 4, 3, 3, 3, 3, 3,
- 3, 3, 0, 4, 0, 4, 3, 3, 0, 6,
- 1, 3, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 0, 6, 0, 1, 1, 3, 0, 4,
- 0, 4, 1, 3, 1, 1, 1, 0, 4, 0,
- 4, 0, 6, 1, 3, 1, 1, 1, 1, 1,
- 1, 3, 3, 3, 3, 3, 3, 0, 6, 0,
- 1, 1, 3, 0, 4, 0, 4, 1, 3, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 0, 4, 0, 4, 0, 4, 0,
- 4, 0, 4, 0, 4, 0, 4, 0, 4, 1,
- 1, 1, 1, 3, 0, 6, 0, 1, 1, 3,
- 0, 4, 1, 3, 1, 1, 1, 1, 1, 1,
+ 1, 0, 4, 1, 1, 1, 1, 0, 4, 0,
+ 4, 0, 4, 3, 0, 4, 3, 3, 3, 3,
+ 3, 3, 3, 0, 4, 0, 4, 3, 3, 3,
+ 0, 6, 1, 3, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 0, 6, 0, 1, 1, 3,
+ 0, 4, 0, 4, 1, 3, 1, 1, 1, 0,
+ 4, 0, 4, 0, 6, 1, 3, 1, 1, 1,
+ 1, 1, 1, 3, 3, 3, 3, 3, 3, 0,
+ 6, 0, 1, 1, 3, 0, 4, 0, 4, 1,
+ 3, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 0, 6, 0, 4, 0, 1, 1,
- 3, 0, 4, 0, 4, 0, 1, 1, 3, 1,
+ 1, 1, 1, 1, 1, 0, 4, 0, 4, 0,
+ 4, 0, 4, 0, 4, 0, 4, 0, 4, 0,
+ 4, 1, 1, 1, 1, 3, 0, 6, 0, 1,
+ 1, 3, 0, 4, 1, 3, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 3, 1, 0, 4, 0, 4, 0, 4, 1, 0,
- 4, 3, 0, 6, 0, 1, 1, 3, 0, 4,
- 0, 4, 0, 1, 1, 3, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 0, 4, 1, 1,
- 3, 3, 0, 6, 0, 1, 1, 3, 0, 4,
- 0, 4, 1, 3, 1, 1, 1, 1, 1, 1,
- 1, 0, 4, 0, 4, 0, 4, 0, 6, 0,
+ 1, 1, 1, 1, 1, 0, 6, 0, 4, 0,
1, 1, 3, 0, 4, 0, 4, 0, 1, 1,
3, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 0, 4, 0, 4,
+ 1, 1, 3, 1, 0, 4, 0, 4, 0, 4,
+ 1, 0, 4, 3, 0, 6, 0, 1, 1, 3,
+ 0, 4, 0, 4, 0, 1, 1, 3, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 0, 4,
+ 1, 1, 3, 3, 0, 6, 0, 1, 1, 3,
+ 0, 4, 0, 4, 1, 3, 1, 1, 1, 1,
+ 1, 1, 1, 0, 4, 0, 4, 0, 4, 0,
+ 6, 0, 1, 1, 3, 0, 4, 0, 4, 0,
+ 1, 1, 3, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 0, 4,
0, 4, 0, 4, 0, 4, 0, 4, 0, 4,
0, 4, 0, 4, 0, 4, 0, 4, 0, 4,
- 0, 6, 1, 1, 0, 6, 1, 3, 0, 4,
- 0, 1, 1, 3, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 0, 4, 3, 3,
- 0, 6, 1, 3, 1, 1, 1, 1, 1, 0,
- 4, 0, 4, 0, 4, 0, 6, 0, 4, 1,
- 3, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 3,
- 0, 4, 0, 4, 3, 0, 4, 3, 3, 0,
- 4, 1, 1, 0, 4, 3, 3, 0, 4, 1,
- 1, 1, 1, 1, 0, 4, 0, 4, 0, 4,
- 0, 4, 0, 4, 0, 4, 0, 6, 0, 4,
- 1, 3, 1, 0, 6, 0, 6, 0, 4, 1,
- 3, 1, 0, 6, 1, 3, 0, 4, 1, 3,
- 1, 1, 1, 1, 1, 1, 1, 3, 0, 4,
- 0, 6, 1, 3, 0, 4, 1, 3, 1, 1,
- 1, 1, 0, 4, 3, 3, 3
+ 0, 4, 0, 6, 1, 1, 0, 6, 1, 3,
+ 0, 4, 0, 1, 1, 3, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 0, 4,
+ 3, 3, 0, 6, 1, 3, 1, 1, 1, 1,
+ 1, 0, 4, 0, 4, 0, 4, 0, 6, 0,
+ 4, 1, 3, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 3, 0, 4, 0, 4, 3, 0, 4, 3,
+ 3, 0, 4, 1, 1, 0, 4, 3, 3, 0,
+ 4, 1, 1, 1, 1, 1, 0, 4, 0, 4,
+ 0, 4, 0, 4, 0, 4, 0, 4, 0, 6,
+ 0, 4, 1, 3, 1, 0, 6, 0, 6, 0,
+ 4, 1, 3, 1, 0, 6, 1, 3, 0, 4,
+ 1, 3, 1, 1, 1, 1, 1, 1, 1, 3,
+ 0, 4, 0, 6, 1, 3, 0, 4, 1, 3,
+ 1, 1, 1, 1, 0, 4, 3, 3, 3
};
"\"readonly\"", "\"connect-timeout\"", "\"contact-points\"",
"\"keyspace\"", "\"max-reconnect-tries\"", "\"reconnect-wait-time\"",
"\"request-timeout\"", "\"tcp-keepalive\"", "\"tcp-nodelay\"",
- "\"valid-lifetime\"", "\"renew-timer\"", "\"rebind-timer\"",
- "\"decline-probation-period\"", "\"server-tag\"", "\"subnet4\"",
- "\"4o6-interface\"", "\"4o6-interface-id\"", "\"4o6-subnet\"",
- "\"option-def\"", "\"option-data\"", "\"name\"", "\"data\"", "\"code\"",
- "\"space\"", "\"csv-format\"", "\"always-send\"", "\"record-types\"",
- "\"encapsulate\"", "\"array\"", "\"shared-networks\"", "\"pools\"",
- "\"pool\"", "\"user-context\"", "\"comment\"", "\"subnet\"",
- "\"interface\"", "\"id\"", "\"reservation-mode\"", "\"disabled\"",
- "\"out-of-pool\"", "\"global\"", "\"all\"",
- "\"host-reservation-identifiers\"", "\"client-classes\"",
+ "\"max-row-errors\"", "\"valid-lifetime\"", "\"renew-timer\"",
+ "\"rebind-timer\"", "\"decline-probation-period\"", "\"server-tag\"",
+ "\"subnet4\"", "\"4o6-interface\"", "\"4o6-interface-id\"",
+ "\"4o6-subnet\"", "\"option-def\"", "\"option-data\"", "\"name\"",
+ "\"data\"", "\"code\"", "\"space\"", "\"csv-format\"", "\"always-send\"",
+ "\"record-types\"", "\"encapsulate\"", "\"array\"",
+ "\"shared-networks\"", "\"pools\"", "\"pool\"", "\"user-context\"",
+ "\"comment\"", "\"subnet\"", "\"interface\"", "\"id\"",
+ "\"reservation-mode\"", "\"disabled\"", "\"out-of-pool\"", "\"global\"",
+ "\"all\"", "\"host-reservation-identifiers\"", "\"client-classes\"",
"\"require-client-classes\"", "\"test\"", "\"only-if-required\"",
"\"client-class\"", "\"reservations\"", "\"duid\"", "\"hw-address\"",
"\"circuit-id\"", "\"client-id\"", "\"hostname\"", "\"flex-id\"",
"host", "$@36", "port", "name", "$@37", "persist", "lfc_interval",
"readonly", "connect_timeout", "request_timeout", "tcp_keepalive",
"tcp_nodelay", "contact_points", "$@38", "keyspace", "$@39",
- "max_reconnect_tries", "reconnect_wait_time",
+ "max_reconnect_tries", "reconnect_wait_time", "max_row_errors",
"host_reservation_identifiers", "$@40",
"host_reservation_identifiers_list", "host_reservation_identifier",
"duid_id", "hw_address_id", "circuit_id", "client_id", "flex_id",
const unsigned short
Dhcp4Parser::yyrline_[] =
{
- 0, 254, 254, 254, 255, 255, 256, 256, 257, 257,
- 258, 258, 259, 259, 260, 260, 261, 261, 262, 262,
- 263, 263, 264, 264, 265, 265, 266, 266, 267, 267,
- 275, 276, 277, 278, 279, 280, 281, 284, 289, 289,
- 300, 303, 304, 307, 311, 318, 318, 325, 326, 329,
- 333, 340, 340, 347, 348, 351, 355, 366, 376, 376,
- 392, 393, 397, 398, 399, 400, 401, 402, 405, 405,
- 420, 420, 429, 430, 435, 436, 437, 438, 439, 440,
- 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
- 451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
- 461, 462, 463, 464, 465, 466, 467, 468, 471, 476,
- 481, 486, 491, 491, 499, 504, 509, 515, 515, 526,
- 527, 530, 531, 532, 533, 534, 535, 536, 539, 539,
- 548, 548, 558, 558, 565, 566, 569, 569, 576, 578,
- 582, 588, 588, 600, 600, 610, 611, 613, 615, 615,
- 633, 633, 645, 645, 655, 656, 659, 660, 663, 663,
- 673, 674, 677, 678, 679, 680, 681, 682, 683, 684,
- 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
- 697, 697, 704, 705, 706, 707, 710, 710, 718, 718,
- 726, 726, 734, 739, 739, 747, 752, 757, 762, 767,
- 772, 777, 782, 782, 790, 790, 798, 803, 808, 808,
- 818, 819, 822, 823, 824, 825, 826, 829, 834, 839,
- 844, 849, 854, 854, 864, 865, 868, 869, 872, 872,
- 882, 882, 892, 893, 894, 897, 898, 901, 901, 909,
- 909, 917, 917, 928, 929, 932, 933, 934, 935, 936,
- 937, 940, 945, 950, 955, 960, 965, 973, 973, 986,
- 987, 990, 991, 998, 998, 1024, 1024, 1035, 1036, 1040,
- 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050,
- 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060,
- 1061, 1062, 1063, 1066, 1066, 1074, 1074, 1082, 1082, 1090,
- 1090, 1098, 1098, 1106, 1106, 1114, 1114, 1124, 1124, 1131,
- 1132, 1133, 1134, 1137, 1144, 1144, 1155, 1156, 1160, 1161,
- 1164, 1164, 1172, 1173, 1176, 1177, 1178, 1179, 1180, 1181,
- 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191,
- 1192, 1193, 1194, 1201, 1201, 1214, 1214, 1223, 1224, 1227,
- 1228, 1233, 1233, 1248, 1248, 1262, 1263, 1266, 1267, 1270,
- 1271, 1272, 1273, 1274, 1275, 1276, 1277, 1278, 1279, 1282,
- 1284, 1289, 1291, 1291, 1299, 1299, 1307, 1307, 1315, 1317,
- 1317, 1325, 1334, 1334, 1346, 1347, 1352, 1353, 1358, 1358,
- 1370, 1370, 1382, 1383, 1388, 1389, 1394, 1395, 1396, 1397,
- 1398, 1399, 1400, 1401, 1402, 1405, 1407, 1407, 1415, 1417,
- 1419, 1424, 1432, 1432, 1444, 1445, 1448, 1449, 1452, 1452,
- 1462, 1462, 1472, 1473, 1476, 1477, 1478, 1479, 1480, 1481,
- 1482, 1485, 1485, 1493, 1493, 1518, 1518, 1548, 1548, 1558,
- 1559, 1562, 1563, 1566, 1566, 1575, 1575, 1584, 1585, 1588,
- 1589, 1593, 1594, 1595, 1596, 1597, 1598, 1599, 1600, 1601,
- 1602, 1603, 1604, 1605, 1606, 1607, 1610, 1610, 1618, 1618,
- 1626, 1626, 1634, 1634, 1642, 1642, 1652, 1652, 1660, 1660,
- 1668, 1668, 1676, 1676, 1684, 1684, 1692, 1692, 1700, 1700,
- 1713, 1713, 1723, 1724, 1730, 1730, 1740, 1741, 1744, 1744,
- 1754, 1755, 1758, 1759, 1762, 1763, 1764, 1765, 1766, 1767,
- 1768, 1769, 1770, 1771, 1772, 1775, 1777, 1777, 1785, 1794,
- 1801, 1801, 1811, 1812, 1815, 1816, 1817, 1818, 1819, 1822,
- 1822, 1830, 1830, 1841, 1841, 1879, 1879, 1891, 1891, 1901,
- 1902, 1905, 1906, 1907, 1908, 1909, 1910, 1911, 1912, 1913,
- 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1925,
- 1930, 1930, 1938, 1938, 1946, 1951, 1951, 1959, 1964, 1969,
- 1969, 1977, 1978, 1981, 1981, 1989, 1994, 1999, 1999, 2007,
- 2010, 2013, 2016, 2019, 2025, 2025, 2033, 2033, 2041, 2041,
- 2052, 2052, 2059, 2059, 2066, 2066, 2073, 2073, 2084, 2084,
- 2094, 2095, 2099, 2102, 2102, 2117, 2117, 2127, 2127, 2138,
- 2139, 2143, 2147, 2147, 2159, 2160, 2164, 2164, 2172, 2173,
- 2176, 2177, 2178, 2179, 2180, 2181, 2182, 2185, 2190, 2190,
- 2198, 2198, 2208, 2209, 2212, 2212, 2220, 2221, 2224, 2225,
- 2226, 2227, 2230, 2230, 2238, 2243, 2248
+ 0, 255, 255, 255, 256, 256, 257, 257, 258, 258,
+ 259, 259, 260, 260, 261, 261, 262, 262, 263, 263,
+ 264, 264, 265, 265, 266, 266, 267, 267, 268, 268,
+ 276, 277, 278, 279, 280, 281, 282, 285, 290, 290,
+ 301, 304, 305, 308, 312, 319, 319, 326, 327, 330,
+ 334, 341, 341, 348, 349, 352, 356, 367, 377, 377,
+ 393, 394, 398, 399, 400, 401, 402, 403, 406, 406,
+ 421, 421, 430, 431, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 472, 477,
+ 482, 487, 492, 492, 500, 505, 510, 516, 516, 527,
+ 528, 531, 532, 533, 534, 535, 536, 537, 540, 540,
+ 549, 549, 559, 559, 566, 567, 570, 570, 577, 579,
+ 583, 589, 589, 601, 601, 611, 612, 614, 616, 616,
+ 634, 634, 646, 646, 656, 657, 660, 661, 664, 664,
+ 674, 675, 678, 679, 680, 681, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 699, 699, 706, 707, 708, 709, 712, 712, 720,
+ 720, 728, 728, 736, 741, 741, 749, 754, 759, 764,
+ 769, 774, 779, 784, 784, 792, 792, 800, 805, 810,
+ 815, 815, 825, 826, 829, 830, 831, 832, 833, 836,
+ 841, 846, 851, 856, 861, 861, 871, 872, 875, 876,
+ 879, 879, 889, 889, 899, 900, 901, 904, 905, 908,
+ 908, 916, 916, 924, 924, 935, 936, 939, 940, 941,
+ 942, 943, 944, 947, 952, 957, 962, 967, 972, 980,
+ 980, 993, 994, 997, 998, 1005, 1005, 1031, 1031, 1042,
+ 1043, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055,
+ 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065,
+ 1066, 1067, 1068, 1069, 1070, 1073, 1073, 1081, 1081, 1089,
+ 1089, 1097, 1097, 1105, 1105, 1113, 1113, 1121, 1121, 1131,
+ 1131, 1138, 1139, 1140, 1141, 1144, 1151, 1151, 1162, 1163,
+ 1167, 1168, 1171, 1171, 1179, 1180, 1183, 1184, 1185, 1186,
+ 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196,
+ 1197, 1198, 1199, 1200, 1201, 1208, 1208, 1221, 1221, 1230,
+ 1231, 1234, 1235, 1240, 1240, 1255, 1255, 1269, 1270, 1273,
+ 1274, 1277, 1278, 1279, 1280, 1281, 1282, 1283, 1284, 1285,
+ 1286, 1289, 1291, 1296, 1298, 1298, 1306, 1306, 1314, 1314,
+ 1322, 1324, 1324, 1332, 1341, 1341, 1353, 1354, 1359, 1360,
+ 1365, 1365, 1377, 1377, 1389, 1390, 1395, 1396, 1401, 1402,
+ 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1412, 1414, 1414,
+ 1422, 1424, 1426, 1431, 1439, 1439, 1451, 1452, 1455, 1456,
+ 1459, 1459, 1469, 1469, 1479, 1480, 1483, 1484, 1485, 1486,
+ 1487, 1488, 1489, 1492, 1492, 1500, 1500, 1525, 1525, 1555,
+ 1555, 1565, 1566, 1569, 1570, 1573, 1573, 1582, 1582, 1591,
+ 1592, 1595, 1596, 1600, 1601, 1602, 1603, 1604, 1605, 1606,
+ 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1617, 1617,
+ 1625, 1625, 1633, 1633, 1641, 1641, 1649, 1649, 1659, 1659,
+ 1667, 1667, 1675, 1675, 1683, 1683, 1691, 1691, 1699, 1699,
+ 1707, 1707, 1720, 1720, 1730, 1731, 1737, 1737, 1747, 1748,
+ 1751, 1751, 1761, 1762, 1765, 1766, 1769, 1770, 1771, 1772,
+ 1773, 1774, 1775, 1776, 1777, 1778, 1779, 1782, 1784, 1784,
+ 1792, 1801, 1808, 1808, 1818, 1819, 1822, 1823, 1824, 1825,
+ 1826, 1829, 1829, 1837, 1837, 1848, 1848, 1886, 1886, 1898,
+ 1898, 1908, 1909, 1912, 1913, 1914, 1915, 1916, 1917, 1918,
+ 1919, 1920, 1921, 1922, 1923, 1924, 1925, 1926, 1927, 1928,
+ 1929, 1932, 1937, 1937, 1945, 1945, 1953, 1958, 1958, 1966,
+ 1971, 1976, 1976, 1984, 1985, 1988, 1988, 1996, 2001, 2006,
+ 2006, 2014, 2017, 2020, 2023, 2026, 2032, 2032, 2040, 2040,
+ 2048, 2048, 2059, 2059, 2066, 2066, 2073, 2073, 2080, 2080,
+ 2091, 2091, 2101, 2102, 2106, 2109, 2109, 2124, 2124, 2134,
+ 2134, 2145, 2146, 2150, 2154, 2154, 2166, 2167, 2171, 2171,
+ 2179, 2180, 2183, 2184, 2185, 2186, 2187, 2188, 2189, 2192,
+ 2197, 2197, 2205, 2205, 2215, 2216, 2219, 2219, 2227, 2228,
+ 2231, 2232, 2233, 2234, 2237, 2237, 2245, 2250, 2255
};
// Print the state stack on the debug stream.
#line 14 "dhcp4_parser.yy" // lalr1.cc:1218
} } // isc::dhcp
-#line 4947 "dhcp4_parser.cc" // lalr1.cc:1218
-#line 2253 "dhcp4_parser.yy" // lalr1.cc:1219
+#line 4959 "dhcp4_parser.cc" // lalr1.cc:1218
+#line 2260 "dhcp4_parser.yy" // lalr1.cc:1219
void
# include <string>
# include <vector>
-#if defined __cplusplus
-# define YY_CPLUSPLUS __cplusplus
-#else
-# define YY_CPLUSPLUS 199711L
-#endif
-
// Support move semantics when possible.
-#if 201103L <= YY_CPLUSPLUS
+#if defined __cplusplus && 201103L <= __cplusplus
# define YY_MOVE std::move
# define YY_MOVE_OR_COPY move
# define YY_MOVE_REF(Type) Type&&
#line 14 "dhcp4_parser.yy" // lalr1.cc:404
namespace isc { namespace dhcp {
-#line 168 "dhcp4_parser.h" // lalr1.cc:404
+#line 162 "dhcp4_parser.h" // lalr1.cc:404
/// A stack with random access from its top.
template <typename T, typename S = std::vector<T> >
return *new (yyas_<T> ()) T ();
}
-# if 201103L <= YY_CPLUSPLUS
+# if defined __cplusplus && 201103L <= __cplusplus
/// Instantiate a \a T in here from \a t.
template <typename T, typename U>
T&
void
move (self_type& other)
{
-# if 201103L <= YY_CPLUSPLUS
+# if defined __cplusplus && 201103L <= __cplusplus
emplace<T> (std::move (other.as<T> ()));
# else
emplace<T> ();
other.destroy<T> ();
}
-# if 201103L <= YY_CPLUSPLUS
+# if defined __cplusplus && 201103L <= __cplusplus
/// Move the content of \a other to this.
template <typename T>
void
TOKEN_REQUEST_TIMEOUT = 305,
TOKEN_TCP_KEEPALIVE = 306,
TOKEN_TCP_NODELAY = 307,
- TOKEN_VALID_LIFETIME = 308,
- TOKEN_RENEW_TIMER = 309,
- TOKEN_REBIND_TIMER = 310,
- TOKEN_DECLINE_PROBATION_PERIOD = 311,
- TOKEN_SERVER_TAG = 312,
- TOKEN_SUBNET4 = 313,
- TOKEN_SUBNET_4O6_INTERFACE = 314,
- TOKEN_SUBNET_4O6_INTERFACE_ID = 315,
- TOKEN_SUBNET_4O6_SUBNET = 316,
- TOKEN_OPTION_DEF = 317,
- TOKEN_OPTION_DATA = 318,
- TOKEN_NAME = 319,
- TOKEN_DATA = 320,
- TOKEN_CODE = 321,
- TOKEN_SPACE = 322,
- TOKEN_CSV_FORMAT = 323,
- TOKEN_ALWAYS_SEND = 324,
- TOKEN_RECORD_TYPES = 325,
- TOKEN_ENCAPSULATE = 326,
- TOKEN_ARRAY = 327,
- TOKEN_SHARED_NETWORKS = 328,
- TOKEN_POOLS = 329,
- TOKEN_POOL = 330,
- TOKEN_USER_CONTEXT = 331,
- TOKEN_COMMENT = 332,
- TOKEN_SUBNET = 333,
- TOKEN_INTERFACE = 334,
- TOKEN_ID = 335,
- TOKEN_RESERVATION_MODE = 336,
- TOKEN_DISABLED = 337,
- TOKEN_OUT_OF_POOL = 338,
- TOKEN_GLOBAL = 339,
- TOKEN_ALL = 340,
- TOKEN_HOST_RESERVATION_IDENTIFIERS = 341,
- TOKEN_CLIENT_CLASSES = 342,
- TOKEN_REQUIRE_CLIENT_CLASSES = 343,
- TOKEN_TEST = 344,
- TOKEN_ONLY_IF_REQUIRED = 345,
- TOKEN_CLIENT_CLASS = 346,
- TOKEN_RESERVATIONS = 347,
- TOKEN_DUID = 348,
- TOKEN_HW_ADDRESS = 349,
- TOKEN_CIRCUIT_ID = 350,
- TOKEN_CLIENT_ID = 351,
- TOKEN_HOSTNAME = 352,
- TOKEN_FLEX_ID = 353,
- TOKEN_RELAY = 354,
- TOKEN_IP_ADDRESS = 355,
- TOKEN_IP_ADDRESSES = 356,
- TOKEN_HOOKS_LIBRARIES = 357,
- TOKEN_LIBRARY = 358,
- TOKEN_PARAMETERS = 359,
- TOKEN_EXPIRED_LEASES_PROCESSING = 360,
- TOKEN_RECLAIM_TIMER_WAIT_TIME = 361,
- TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 362,
- TOKEN_HOLD_RECLAIMED_TIME = 363,
- TOKEN_MAX_RECLAIM_LEASES = 364,
- TOKEN_MAX_RECLAIM_TIME = 365,
- TOKEN_UNWARNED_RECLAIM_CYCLES = 366,
- TOKEN_DHCP4O6_PORT = 367,
- TOKEN_CONTROL_SOCKET = 368,
- TOKEN_SOCKET_TYPE = 369,
- TOKEN_SOCKET_NAME = 370,
- TOKEN_DHCP_QUEUE_CONTROL = 371,
- TOKEN_DHCP_DDNS = 372,
- TOKEN_ENABLE_UPDATES = 373,
- TOKEN_QUALIFYING_SUFFIX = 374,
- TOKEN_SERVER_IP = 375,
- TOKEN_SERVER_PORT = 376,
- TOKEN_SENDER_IP = 377,
- TOKEN_SENDER_PORT = 378,
- TOKEN_MAX_QUEUE_SIZE = 379,
- TOKEN_NCR_PROTOCOL = 380,
- TOKEN_NCR_FORMAT = 381,
- TOKEN_OVERRIDE_NO_UPDATE = 382,
- TOKEN_OVERRIDE_CLIENT_UPDATE = 383,
- TOKEN_REPLACE_CLIENT_NAME = 384,
- TOKEN_GENERATED_PREFIX = 385,
- TOKEN_TCP = 386,
- TOKEN_JSON = 387,
- TOKEN_WHEN_PRESENT = 388,
- TOKEN_NEVER = 389,
- TOKEN_ALWAYS = 390,
- TOKEN_WHEN_NOT_PRESENT = 391,
- TOKEN_HOSTNAME_CHAR_SET = 392,
- TOKEN_HOSTNAME_CHAR_REPLACEMENT = 393,
- TOKEN_LOGGING = 394,
- TOKEN_LOGGERS = 395,
- TOKEN_OUTPUT_OPTIONS = 396,
- TOKEN_OUTPUT = 397,
- TOKEN_DEBUGLEVEL = 398,
- TOKEN_SEVERITY = 399,
- TOKEN_FLUSH = 400,
- TOKEN_MAXSIZE = 401,
- TOKEN_MAXVER = 402,
- TOKEN_DHCP6 = 403,
- TOKEN_DHCPDDNS = 404,
- TOKEN_CONTROL_AGENT = 405,
- TOKEN_TOPLEVEL_JSON = 406,
- TOKEN_TOPLEVEL_DHCP4 = 407,
- TOKEN_SUB_DHCP4 = 408,
- TOKEN_SUB_INTERFACES4 = 409,
- TOKEN_SUB_SUBNET4 = 410,
- TOKEN_SUB_POOL4 = 411,
- TOKEN_SUB_RESERVATION = 412,
- TOKEN_SUB_OPTION_DEFS = 413,
- TOKEN_SUB_OPTION_DEF = 414,
- TOKEN_SUB_OPTION_DATA = 415,
- TOKEN_SUB_HOOKS_LIBRARY = 416,
- TOKEN_SUB_DHCP_DDNS = 417,
- TOKEN_SUB_LOGGING = 418,
- TOKEN_SUB_CONFIG_CONTROL = 419,
- TOKEN_STRING = 420,
- TOKEN_INTEGER = 421,
- TOKEN_FLOAT = 422,
- TOKEN_BOOLEAN = 423
+ TOKEN_MAX_ROW_ERRORS = 308,
+ TOKEN_VALID_LIFETIME = 309,
+ TOKEN_RENEW_TIMER = 310,
+ TOKEN_REBIND_TIMER = 311,
+ TOKEN_DECLINE_PROBATION_PERIOD = 312,
+ TOKEN_SERVER_TAG = 313,
+ TOKEN_SUBNET4 = 314,
+ TOKEN_SUBNET_4O6_INTERFACE = 315,
+ TOKEN_SUBNET_4O6_INTERFACE_ID = 316,
+ TOKEN_SUBNET_4O6_SUBNET = 317,
+ TOKEN_OPTION_DEF = 318,
+ TOKEN_OPTION_DATA = 319,
+ TOKEN_NAME = 320,
+ TOKEN_DATA = 321,
+ TOKEN_CODE = 322,
+ TOKEN_SPACE = 323,
+ TOKEN_CSV_FORMAT = 324,
+ TOKEN_ALWAYS_SEND = 325,
+ TOKEN_RECORD_TYPES = 326,
+ TOKEN_ENCAPSULATE = 327,
+ TOKEN_ARRAY = 328,
+ TOKEN_SHARED_NETWORKS = 329,
+ TOKEN_POOLS = 330,
+ TOKEN_POOL = 331,
+ TOKEN_USER_CONTEXT = 332,
+ TOKEN_COMMENT = 333,
+ TOKEN_SUBNET = 334,
+ TOKEN_INTERFACE = 335,
+ TOKEN_ID = 336,
+ TOKEN_RESERVATION_MODE = 337,
+ TOKEN_DISABLED = 338,
+ TOKEN_OUT_OF_POOL = 339,
+ TOKEN_GLOBAL = 340,
+ TOKEN_ALL = 341,
+ TOKEN_HOST_RESERVATION_IDENTIFIERS = 342,
+ TOKEN_CLIENT_CLASSES = 343,
+ TOKEN_REQUIRE_CLIENT_CLASSES = 344,
+ TOKEN_TEST = 345,
+ TOKEN_ONLY_IF_REQUIRED = 346,
+ TOKEN_CLIENT_CLASS = 347,
+ TOKEN_RESERVATIONS = 348,
+ TOKEN_DUID = 349,
+ TOKEN_HW_ADDRESS = 350,
+ TOKEN_CIRCUIT_ID = 351,
+ TOKEN_CLIENT_ID = 352,
+ TOKEN_HOSTNAME = 353,
+ TOKEN_FLEX_ID = 354,
+ TOKEN_RELAY = 355,
+ TOKEN_IP_ADDRESS = 356,
+ TOKEN_IP_ADDRESSES = 357,
+ TOKEN_HOOKS_LIBRARIES = 358,
+ TOKEN_LIBRARY = 359,
+ TOKEN_PARAMETERS = 360,
+ TOKEN_EXPIRED_LEASES_PROCESSING = 361,
+ TOKEN_RECLAIM_TIMER_WAIT_TIME = 362,
+ TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 363,
+ TOKEN_HOLD_RECLAIMED_TIME = 364,
+ TOKEN_MAX_RECLAIM_LEASES = 365,
+ TOKEN_MAX_RECLAIM_TIME = 366,
+ TOKEN_UNWARNED_RECLAIM_CYCLES = 367,
+ TOKEN_DHCP4O6_PORT = 368,
+ TOKEN_CONTROL_SOCKET = 369,
+ TOKEN_SOCKET_TYPE = 370,
+ TOKEN_SOCKET_NAME = 371,
+ TOKEN_DHCP_QUEUE_CONTROL = 372,
+ TOKEN_DHCP_DDNS = 373,
+ TOKEN_ENABLE_UPDATES = 374,
+ TOKEN_QUALIFYING_SUFFIX = 375,
+ TOKEN_SERVER_IP = 376,
+ TOKEN_SERVER_PORT = 377,
+ TOKEN_SENDER_IP = 378,
+ TOKEN_SENDER_PORT = 379,
+ TOKEN_MAX_QUEUE_SIZE = 380,
+ TOKEN_NCR_PROTOCOL = 381,
+ TOKEN_NCR_FORMAT = 382,
+ TOKEN_OVERRIDE_NO_UPDATE = 383,
+ TOKEN_OVERRIDE_CLIENT_UPDATE = 384,
+ TOKEN_REPLACE_CLIENT_NAME = 385,
+ TOKEN_GENERATED_PREFIX = 386,
+ TOKEN_TCP = 387,
+ TOKEN_JSON = 388,
+ TOKEN_WHEN_PRESENT = 389,
+ TOKEN_NEVER = 390,
+ TOKEN_ALWAYS = 391,
+ TOKEN_WHEN_NOT_PRESENT = 392,
+ TOKEN_HOSTNAME_CHAR_SET = 393,
+ TOKEN_HOSTNAME_CHAR_REPLACEMENT = 394,
+ TOKEN_LOGGING = 395,
+ TOKEN_LOGGERS = 396,
+ TOKEN_OUTPUT_OPTIONS = 397,
+ TOKEN_OUTPUT = 398,
+ TOKEN_DEBUGLEVEL = 399,
+ TOKEN_SEVERITY = 400,
+ TOKEN_FLUSH = 401,
+ TOKEN_MAXSIZE = 402,
+ TOKEN_MAXVER = 403,
+ TOKEN_DHCP6 = 404,
+ TOKEN_DHCPDDNS = 405,
+ TOKEN_CONTROL_AGENT = 406,
+ TOKEN_TOPLEVEL_JSON = 407,
+ TOKEN_TOPLEVEL_DHCP4 = 408,
+ TOKEN_SUB_DHCP4 = 409,
+ TOKEN_SUB_INTERFACES4 = 410,
+ TOKEN_SUB_SUBNET4 = 411,
+ TOKEN_SUB_POOL4 = 412,
+ TOKEN_SUB_RESERVATION = 413,
+ TOKEN_SUB_OPTION_DEFS = 414,
+ TOKEN_SUB_OPTION_DEF = 415,
+ TOKEN_SUB_OPTION_DATA = 416,
+ TOKEN_SUB_HOOKS_LIBRARY = 417,
+ TOKEN_SUB_DHCP_DDNS = 418,
+ TOKEN_SUB_LOGGING = 419,
+ TOKEN_SUB_CONFIG_CONTROL = 420,
+ TOKEN_STRING = 421,
+ TOKEN_INTEGER = 422,
+ TOKEN_FLOAT = 423,
+ TOKEN_BOOLEAN = 424
};
};
/// Constructor for valueless symbols, and symbols from each type.
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, ElementPtr&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const ElementPtr& v, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, bool&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const bool& v, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, double&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const double& v, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, int64_t&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const int64_t& v, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, std::string&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const std::string& v, const location_type& l);
-#endif
+ basic_symbol (typename Base::kind_type t, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (ElementPtr) v, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (bool) v, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (double) v, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (int64_t) v, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (std::string) v, YY_RVREF (location_type) l);
/// Destroy the symbol.
location_type location;
private:
-#if YY_CPLUSPLUS < 201103L
+#if !defined __cplusplus || __cplusplus < 201103L
/// Assignment operator.
basic_symbol& operator= (const basic_symbol& other);
#endif
symbol_type
make_TCP_NODELAY (YY_COPY (location_type) l);
+ static
+ symbol_type
+ make_MAX_ROW_ERRORS (YY_COPY (location_type) l);
+
static
symbol_type
make_VALID_LIFETIME (YY_COPY (location_type) l);
stack_symbol_type (YY_RVREF (stack_symbol_type) that);
/// Steal the contents from \a sym to build this.
stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) sym);
-#if YY_CPLUSPLUS < 201103L
+#if !defined __cplusplus || __cplusplus < 201103L
/// Assignment, needed by push_back by some old implementations.
/// Moves the contents of that.
stack_symbol_type& operator= (stack_symbol_type& that);
enum
{
yyeof_ = 0,
- yylast_ = 1000, ///< Last index in yytable_.
- yynnts_ = 373, ///< Number of nonterminal symbols.
+ yylast_ = 1004, ///< Last index in yytable_.
+ yynnts_ = 374, ///< Number of nonterminal symbols.
yyfinal_ = 30, ///< Termination state number.
yyterror_ = 1,
yyerrcode_ = 256,
- yyntokens_ = 169 ///< Number of tokens.
+ yyntokens_ = 170 ///< Number of tokens.
};
135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
- 165, 166, 167, 168
+ 165, 166, 167, 168, 169
};
- const unsigned user_token_number_max_ = 423;
+ const unsigned user_token_number_max_ = 424;
const token_number_type undef_token_ = 2;
if (static_cast<int> (t) <= yyeof_)
{
switch (other.type_get ())
{
- case 185: // value
- case 189: // map_value
- case 230: // socket_type
- case 233: // outbound_interface_value
- case 255: // db_type
- case 337: // hr_mode
- case 486: // ncr_protocol_value
- case 493: // replace_client_name_value
+ case 186: // value
+ case 190: // map_value
+ case 231: // socket_type
+ case 234: // outbound_interface_value
+ case 256: // db_type
+ case 339: // hr_mode
+ case 488: // ncr_protocol_value
+ case 495: // replace_client_name_value
value.YY_MOVE_OR_COPY< ElementPtr > (YY_MOVE (other.value));
break;
- case 168: // "boolean"
+ case 169: // "boolean"
value.YY_MOVE_OR_COPY< bool > (YY_MOVE (other.value));
break;
- case 167: // "floating point"
+ case 168: // "floating point"
value.YY_MOVE_OR_COPY< double > (YY_MOVE (other.value));
break;
- case 166: // "integer"
+ case 167: // "integer"
value.YY_MOVE_OR_COPY< int64_t > (YY_MOVE (other.value));
break;
- case 165: // "constant string"
+ case 166: // "constant string"
value.YY_MOVE_OR_COPY< std::string > (YY_MOVE (other.value));
break;
// Implementation of basic_symbol constructor for each type.
-# if 201103L <= YY_CPLUSPLUS
- template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, location_type&& l)
- : Base (t)
- , location (std::move (l))
- {}
-#else
- template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const location_type& l)
- : Base (t)
- , location (l)
- {}
-#endif
-# if 201103L <= YY_CPLUSPLUS
- template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, ElementPtr&& v, location_type&& l)
- : Base (t)
- , value (std::move (v))
- , location (std::move (l))
- {}
-#else
template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const ElementPtr& v, const location_type& l)
+ Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (location_type) l)
: Base (t)
- , value (v)
- , location (l)
+ , location (YY_MOVE (l))
{}
-#endif
-# if 201103L <= YY_CPLUSPLUS
- template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, bool&& v, location_type&& l)
- : Base (t)
- , value (std::move (v))
- , location (std::move (l))
- {}
-#else
- template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const bool& v, const location_type& l)
- : Base (t)
- , value (v)
- , location (l)
- {}
-#endif
-# if 201103L <= YY_CPLUSPLUS
- template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, double&& v, location_type&& l)
- : Base (t)
- , value (std::move (v))
- , location (std::move (l))
- {}
-#else
+
template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const double& v, const location_type& l)
+ Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (ElementPtr) v, YY_RVREF (location_type) l)
: Base (t)
- , value (v)
- , location (l)
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#endif
-# if 201103L <= YY_CPLUSPLUS
+
template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, int64_t&& v, location_type&& l)
+ Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (bool) v, YY_RVREF (location_type) l)
: Base (t)
- , value (std::move (v))
- , location (std::move (l))
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#else
+
template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const int64_t& v, const location_type& l)
+ Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (double) v, YY_RVREF (location_type) l)
: Base (t)
- , value (v)
- , location (l)
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#endif
-# if 201103L <= YY_CPLUSPLUS
+
template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, std::string&& v, location_type&& l)
+ Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (int64_t) v, YY_RVREF (location_type) l)
: Base (t)
- , value (std::move (v))
- , location (std::move (l))
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#else
+
template <typename Base>
- Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const std::string& v, const location_type& l)
+ Dhcp4Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (std::string) v, YY_RVREF (location_type) l)
: Base (t)
- , value (v)
- , location (l)
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#endif
+
template <typename Base>
// Type destructor.
switch (yytype)
{
- case 185: // value
- case 189: // map_value
- case 230: // socket_type
- case 233: // outbound_interface_value
- case 255: // db_type
- case 337: // hr_mode
- case 486: // ncr_protocol_value
- case 493: // replace_client_name_value
+ case 186: // value
+ case 190: // map_value
+ case 231: // socket_type
+ case 234: // outbound_interface_value
+ case 256: // db_type
+ case 339: // hr_mode
+ case 488: // ncr_protocol_value
+ case 495: // replace_client_name_value
value.template destroy< ElementPtr > ();
break;
- case 168: // "boolean"
+ case 169: // "boolean"
value.template destroy< bool > ();
break;
- case 167: // "floating point"
+ case 168: // "floating point"
value.template destroy< double > ();
break;
- case 166: // "integer"
+ case 167: // "integer"
value.template destroy< int64_t > ();
break;
- case 165: // "constant string"
+ case 166: // "constant string"
value.template destroy< std::string > ();
break;
super_type::move (s);
switch (this->type_get ())
{
- case 185: // value
- case 189: // map_value
- case 230: // socket_type
- case 233: // outbound_interface_value
- case 255: // db_type
- case 337: // hr_mode
- case 486: // ncr_protocol_value
- case 493: // replace_client_name_value
+ case 186: // value
+ case 190: // map_value
+ case 231: // socket_type
+ case 234: // outbound_interface_value
+ case 256: // db_type
+ case 339: // hr_mode
+ case 488: // ncr_protocol_value
+ case 495: // replace_client_name_value
value.move< ElementPtr > (YY_MOVE (s.value));
break;
- case 168: // "boolean"
+ case 169: // "boolean"
value.move< bool > (YY_MOVE (s.value));
break;
- case 167: // "floating point"
+ case 168: // "floating point"
value.move< double > (YY_MOVE (s.value));
break;
- case 166: // "integer"
+ case 167: // "integer"
value.move< int64_t > (YY_MOVE (s.value));
break;
- case 165: // "constant string"
+ case 166: // "constant string"
value.move< std::string > (YY_MOVE (s.value));
break;
385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
- 415, 416, 417, 418, 419, 420, 421, 422, 423
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424
};
return static_cast<token_type> (yytoken_number_[type]);
}
return symbol_type (token::TOKEN_TCP_NODELAY, YY_MOVE (l));
}
+ inline
+ Dhcp4Parser::symbol_type
+ Dhcp4Parser::make_MAX_ROW_ERRORS (YY_COPY (location_type) l)
+ {
+ return symbol_type (token::TOKEN_MAX_ROW_ERRORS, YY_MOVE (l));
+ }
+
inline
Dhcp4Parser::symbol_type
Dhcp4Parser::make_VALID_LIFETIME (YY_COPY (location_type) l)
#line 14 "dhcp4_parser.yy" // lalr1.cc:404
} } // isc::dhcp
-#line 3297 "dhcp4_parser.h" // lalr1.cc:404
+#line 3232 "dhcp4_parser.h" // lalr1.cc:404
-/* Copyright (C) 2016-2018 Internet Systems Consortium, Inc. ("ISC")
+/* Copyright (C) 2016-2019 Internet Systems Consortium, Inc. ("ISC")
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
REQUEST_TIMEOUT "request-timeout"
TCP_KEEPALIVE "tcp-keepalive"
TCP_NODELAY "tcp-nodelay"
+ MAX_ROW_ERRORS "max-row-errors"
VALID_LIFETIME "valid-lifetime"
RENEW_TIMER "renew-timer"
| tcp_keepalive
| tcp_nodelay
| keyspace
+ | max_row_errors
| unknown_map_entry
;
ctx.stack_.back()->set("reconnect-wait-time", n);
};
+max_row_errors: MAX_ROW_ERRORS COLON INTEGER {
+ ElementPtr n(new IntElement($3, ctx.loc2pos(@3)));
+ ctx.stack_.back()->set("max-row-errors", n);
+};
+
host_reservation_identifiers: HOST_RESERVATION_IDENTIFIERS {
ElementPtr l(new ListElement(ctx.loc2pos(@1)));
ctx.stack_.back()->set("host-reservation-identifiers", l);
-// Generated 201811271343
// A Bison parser, made by GNU Bison 3.2.1.
// Locations for Bison parsers in C++
-// Generated 201811271343
// A Bison parser, made by GNU Bison 3.2.1.
// Starting with Bison 3.2, this file is useless: the structure it
-// Generated 201811271343
// A Bison parser, made by GNU Bison 3.2.1.
// Starting with Bison 3.2, this file is useless: the structure it
-#line 1 "dhcp6_lexer.cc"
+#line 2 "dhcp6_lexer.cc"
-#line 3 "dhcp6_lexer.cc"
+#line 4 "dhcp6_lexer.cc"
#define YY_INT_ALIGNED short int
/* %% [3.0] code to copy yytext_ptr to yytext[] goes here, if %array \ */\
(yy_c_buf_p) = yy_cp;
/* %% [4.0] data tables for the DFA and the user's section 1 definitions go here */
-#define YY_NUM_RULES 179
-#define YY_END_OF_BUFFER 180
+#define YY_NUM_RULES 180
+#define YY_END_OF_BUFFER 181
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static const flex_int16_t yy_accept[1453] =
+static const flex_int16_t yy_accept[1463] =
{ 0,
- 172, 172, 0, 0, 0, 0, 0, 0, 0, 0,
- 180, 178, 10, 11, 178, 1, 172, 169, 172, 172,
- 178, 171, 170, 178, 178, 178, 178, 178, 165, 166,
- 178, 178, 178, 167, 168, 5, 5, 5, 178, 178,
- 178, 10, 11, 0, 0, 161, 0, 0, 0, 0,
+ 173, 173, 0, 0, 0, 0, 0, 0, 0, 0,
+ 181, 179, 10, 11, 179, 1, 173, 170, 173, 173,
+ 179, 172, 171, 179, 179, 179, 179, 179, 166, 167,
+ 179, 179, 179, 168, 169, 5, 5, 5, 179, 179,
+ 179, 10, 11, 0, 0, 162, 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, 1, 172,
- 172, 0, 171, 172, 3, 2, 6, 0, 172, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1, 173,
+ 173, 0, 172, 173, 3, 2, 6, 0, 173, 0,
0, 0, 0, 0, 0, 4, 0, 0, 9, 0,
- 162, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 164, 0, 0, 0,
+ 163, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 165, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2, 0, 0,
0, 0, 0, 0, 0, 8, 0, 0, 0, 0,
- 139, 0, 0, 140, 0, 0, 0, 0, 0, 0,
+ 140, 0, 0, 141, 0, 0, 0, 0, 0, 0,
- 0, 0, 163, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 164, 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, 94, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 95, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 177, 175, 0, 174, 173, 0, 0, 0, 0, 0,
+ 178, 176, 0, 175, 174, 0, 0, 0, 0, 0,
- 0, 0, 138, 0, 0, 28, 0, 27, 0, 0,
- 101, 0, 0, 0, 0, 0, 0, 0, 0, 53,
+ 0, 0, 139, 0, 0, 28, 0, 27, 0, 0,
+ 102, 0, 0, 0, 0, 0, 0, 0, 0, 53,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 98,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 99,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 176, 173, 0, 0, 0, 0, 0, 0, 0, 0,
- 29, 0, 0, 31, 0, 0, 0, 0, 0, 102,
- 0, 0, 0, 0, 0, 0, 79, 0, 0, 0,
- 0, 0, 0, 123, 0, 0, 0, 0, 0, 0,
+ 177, 174, 0, 0, 0, 0, 0, 0, 0, 0,
+ 29, 0, 0, 31, 0, 0, 0, 0, 0, 103,
+ 0, 0, 0, 0, 0, 0, 80, 0, 0, 0,
+ 0, 0, 0, 124, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 56, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 78, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 88,
+ 0, 0, 0, 0, 0, 0, 79, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 89,
0, 57, 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, 118,
- 143, 49, 0, 54, 0, 0, 0, 0, 0, 0,
- 158, 37, 0, 34, 0, 33, 0, 0, 0, 131,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 119,
+ 144, 49, 0, 54, 0, 0, 0, 0, 0, 0,
+ 159, 37, 0, 34, 0, 33, 0, 0, 0, 132,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 110, 0, 0, 0, 0, 0, 0, 0, 0, 142,
+ 111, 0, 0, 0, 0, 0, 0, 0, 0, 143,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 51, 0, 0, 32, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 81, 0,
+ 0, 0, 0, 0, 0, 0, 51, 0, 0, 32,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 82,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 132, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 127, 0, 0, 0, 0, 0, 0,
- 7, 35, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 133, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 128, 0, 0, 0, 0, 0,
+ 0, 7, 35, 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,
- 100, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 101, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 112, 0, 0, 0, 0, 0, 0, 109, 0, 0,
- 0, 0, 0, 0, 0, 0, 83, 0, 0, 0,
+ 0, 0, 113, 0, 0, 0, 0, 0, 0, 110,
+ 0, 0, 0, 0, 0, 0, 0, 0, 84, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 91,
- 0, 0, 0, 0, 0, 0, 0, 0, 106, 0,
- 0, 0, 0, 90, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 126, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 136, 107,
- 0, 0, 0, 0, 111, 50, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 58, 0, 0, 0,
+ 0, 92, 0, 0, 0, 0, 0, 0, 0, 0,
+ 107, 0, 0, 0, 0, 91, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 127, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-
- 0, 0, 0, 0, 0, 74, 0, 0, 0, 0,
- 0, 0, 159, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 97,
+ 137, 108, 0, 0, 0, 0, 0, 112, 50, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 58,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 125, 0, 0, 0, 0, 0, 0, 61, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 55, 82, 0, 0, 0, 122,
- 0, 0, 0, 48, 0, 0, 0, 0, 0, 0,
+
+ 0, 0, 0, 0, 0, 0, 0, 0, 75, 0,
+ 0, 0, 0, 0, 0, 160, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 98, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 126, 0, 0, 0, 0, 0, 0,
+ 61, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 55, 83,
+ 0, 0, 0, 123, 0, 0, 0, 48, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 114, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 115, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 157, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 158, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 92, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 93, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 40, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 16,
- 0, 137, 14, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 128, 113, 0, 0, 0, 0, 0,
+ 0, 0, 40, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 16, 0, 138, 14, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 129, 114,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 124, 141, 0, 39, 0, 133, 0, 0, 0,
- 0, 0, 0, 0, 0, 20, 0, 0, 0, 76,
- 0, 0, 0, 0, 135, 52, 0, 84, 0, 0,
+ 0, 0, 0, 0, 0, 0, 125, 142, 0, 39,
+ 0, 134, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 20, 0, 0, 0, 77, 0, 0, 0, 0,
+ 136, 52, 0, 85, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 74,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 73, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 80, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 130, 0, 0,
+ 0, 81, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 131, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 103, 0, 0, 0, 0, 0,
-
- 77, 99, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 70, 0, 0, 0, 0, 0, 0,
- 17, 15, 0, 155, 154, 0, 65, 0, 0, 0,
- 0, 0, 30, 117, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 152, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 93, 0, 121, 42, 0,
- 59, 0, 0, 0, 0, 19, 0, 0, 0, 0,
- 0, 0, 95, 71, 0, 0, 129, 0, 0, 0,
- 0, 0, 120, 0, 0, 0, 0, 89, 0, 160,
- 0, 0, 0, 0, 0, 0, 0, 0, 87, 0,
-
- 0, 144, 0, 0, 0, 0, 0, 0, 0, 0,
+
+ 104, 0, 0, 0, 0, 0, 0, 78, 100, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 71, 0, 0, 0, 0, 0, 0, 17, 15, 0,
+ 156, 155, 0, 65, 0, 0, 0, 0, 0, 30,
+ 118, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 153, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 94, 0, 122, 42, 0, 59, 0, 0,
+ 0, 0, 0, 19, 0, 0, 0, 0, 0, 0,
+ 96, 72, 0, 0, 130, 0, 0, 0, 0, 0,
+ 121, 0, 0, 0, 0, 90, 0, 161, 0, 0,
+
+ 0, 0, 0, 0, 0, 0, 88, 0, 0, 145,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 41, 0, 64, 0, 0, 0, 115, 46, 0, 0,
- 66, 153, 0, 0, 12, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 44, 0, 0, 43, 18, 0,
- 0, 0, 0, 108, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 69, 0, 0,
- 60, 0, 0, 85, 0, 0, 0, 0, 0, 134,
- 0, 0, 0, 45, 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, 41,
+ 0, 64, 0, 0, 0, 116, 46, 0, 0, 66,
+ 154, 0, 0, 12, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 44, 0, 0, 43, 18, 0, 0,
+ 0, 68, 0, 109, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 70, 0, 0,
+ 60, 0, 0, 86, 0, 0, 0, 0, 0, 135,
+ 0, 0, 0, 45, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 63, 0, 0,
- 75, 0, 36, 47, 0, 0, 0, 0, 0, 24,
- 0, 0, 0, 0, 0, 0, 150, 0, 119, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 96, 0,
+ 76, 0, 36, 47, 0, 0, 0, 0, 0, 24,
+ 0, 0, 0, 0, 0, 0, 151, 0, 120, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 97, 0,
0, 0, 0, 0, 0, 0, 0, 0, 25, 38,
0, 0, 0, 0, 0, 13, 0, 0, 0, 0,
- 0, 0, 0, 156, 0, 0, 0, 0, 0, 0,
- 149, 0, 0, 21, 68, 0, 0, 0, 0, 0,
- 0, 0, 86, 0, 0, 148, 0, 0, 67, 0,
- 0, 62, 0, 23, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 157, 0, 0, 0, 0, 0, 0,
+ 150, 0, 0, 21, 69, 0, 0, 0, 0, 0,
+ 0, 0, 87, 0, 0, 149, 0, 0, 67, 0,
+ 0, 62, 0, 23, 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, 22, 0, 104, 116, 0, 0, 0, 0, 0,
- 0, 146, 151, 72, 0, 0, 0, 0, 145, 0,
- 0, 26, 0, 0, 0, 0, 0, 105, 0, 0,
- 147, 0
+ 0, 22, 0, 105, 117, 0, 0, 0, 0, 0,
+ 0, 147, 152, 73, 0, 0, 0, 0, 146, 0,
+ 0, 26, 0, 0, 0, 0, 0, 106, 0, 0,
+ 148, 0
} ;
static const YY_CHAR yy_ec[256] =
3
} ;
-static const flex_int16_t yy_base[1465] =
+static const flex_int16_t yy_base[1475] =
{ 0,
0, 70, 19, 29, 41, 49, 52, 58, 87, 95,
- 1817, 1818, 32, 1813, 141, 0, 201, 1818, 206, 88,
- 11, 213, 1818, 1795, 114, 25, 2, 6, 1818, 1818,
- 73, 11, 17, 1818, 1818, 1818, 104, 1801, 1756, 0,
- 1793, 107, 1808, 217, 241, 1818, 185, 1752, 1758, 1778,
+ 1827, 1828, 32, 1823, 141, 0, 201, 1828, 206, 88,
+ 11, 213, 1828, 1805, 114, 25, 2, 6, 1828, 1828,
+ 73, 11, 17, 1828, 1828, 1828, 104, 1811, 1766, 0,
+ 1803, 107, 1818, 217, 241, 1828, 185, 1762, 1768, 1788,
93, 58, 190, 91, 211, 200, 14, 267, 213, 175,
- 269, 64, 231, 184, 187, 75, 1759, 274, 215, 290,
- 278, 297, 1742, 207, 302, 316, 316, 1761, 0, 355,
- 360, 372, 377, 380, 1818, 0, 1818, 295, 383, 227,
- 296, 283, 327, 361, 293, 1818, 1758, 1797, 1818, 237,
-
- 1818, 394, 363, 1745, 1755, 1794, 375, 321, 403, 1749,
- 369, 378, 376, 382, 388, 1792, 0, 445, 407, 1736,
- 1744, 364, 1740, 1729, 1730, 372, 1746, 1729, 1738, 387,
- 308, 378, 1732, 1730, 391, 1719, 1775, 416, 1722, 1773,
- 1715, 1738, 1735, 1735, 1729, 214, 1722, 1715, 1720, 1714,
- 382, 1725, 1718, 1709, 1708, 1722, 362, 1758, 1707, 414,
- 1719, 1722, 1706, 441, 1707, 417, 1719, 1716, 1717, 1715,
- 422, 1697, 1702, 1698, 1690, 1707, 1699, 0, 422, 450,
- 440, 446, 454, 470, 1698, 1818, 0, 476, 1689, 1692,
- 1818, 465, 447, 1818, 1744, 1699, 477, 1742, 481, 1741,
-
- 477, 1740, 1818, 521, 1739, 489, 1700, 1695, 1694, 1685,
- 465, 1734, 1728, 1694, 1673, 1681, 1687, 1675, 1689, 1685,
- 1686, 1686, 1681, 1673, 1675, 1659, 1663, 1676, 1678, 1675,
- 1667, 1657, 1660, 1674, 1818, 1660, 1668, 1671, 1652, 1651,
- 1701, 1650, 1660, 1698, 510, 1659, 1647, 1658, 1694, 490,
- 1698, 1635, 1650, 9, 1640, 1656, 1637, 1639, 1635, 1641,
- 1632, 1631, 1644, 1637, 1639, 1643, 1642, 1636, 80, 1643,
- 1638, 1630, 1620, 1635, 1630, 1634, 1615, 1631, 1617, 1623,
- 1630, 1618, 230, 1611, 1625, 1624, 1627, 1609, 1617, 491,
- 1818, 1818, 492, 1818, 1818, 1604, 0, 376, 1606, 508,
-
- 501, 1660, 1818, 1613, 480, 1818, 1658, 1818, 1652, 562,
- 1818, 480, 1594, 1604, 1654, 1611, 1606, 1609, 304, 1818,
- 1607, 1649, 1604, 1601, 1602, 303, 1606, 1644, 1594, 1589,
- 1586, 1582, 1584, 1633, 1592, 1581, 1597, 1629, 1577, 568,
- 1590, 1590, 1573, 1574, 1587, 1574, 1584, 1579, 1586, 1581,
- 1566, 451, 1575, 1578, 1573, 1569, 1617, 501, 497, 1818,
- 1611, 1563, 1562, 1555, 1557, 1561, 1550, 1557, 1562, 550,
- 1607, 1562, 503, 1559, 1563, 1561, 1550, 1550, 1562, 496,
- 1537, 1538, 1559, 511, 1541, 1538, 1552, 1551, 1537, 1549,
- 1548, 1547, 1546, 507, 1587, 1586, 1585, 1529, 583, 1542,
-
- 1818, 1818, 1541, 0, 518, 1529, 1580, 1579, 1537, 1577,
- 1818, 1525, 1575, 1818, 541, 617, 520, 1574, 1516, 1818,
- 1521, 1527, 1530, 1529, 1516, 1515, 1818, 1517, 1514, 1526,
- 543, 1511, 1513, 1818, 1519, 1504, 1506, 1517, 1515, 1510,
- 585, 1517, 1505, 1498, 1547, 1818, 1496, 1512, 1544, 1548,
- 1506, 1500, 1502, 1503, 1505, 1537, 1490, 1485, 1484, 1486,
- 1479, 1494, 1472, 1479, 1484, 1532, 1818, 1479, 1475, 1529,
- 1482, 1476, 1483, 1468, 1478, 1481, 1470, 1469, 1464, 1818,
- 1519, 1818, 1463, 1462, 1455, 1472, 1509, 1456, 1461, 1470,
- 1464, 1458, 1467, 586, 1502, 1466, 1449, 1449, 1444, 1440,
-
- 1446, 1445, 1453, 1457, 1440, 1496, 1438, 1452, 1441, 1818,
- 1818, 1818, 1441, 1818, 1451, 1485, 1447, 0, 1488, 1438,
- 1818, 1818, 1435, 1818, 1441, 1818, 562, 562, 593, 1818,
- 1479, 1426, 1477, 1424, 1423, 1430, 1423, 1435, 1434, 1418,
- 1433, 1415, 1462, 1429, 1465, 1411, 1413, 1425, 1425, 1424,
- 1818, 1409, 1406, 1462, 1419, 1411, 1417, 1408, 1416, 1818,
- 1401, 1412, 1416, 1398, 1412, 555, 1394, 1388, 1393, 1390,
- 1405, 1406, 1403, 1444, 1401, 1818, 1387, 1389, 1818, 1397,
- 1434, 1433, 575, 1396, 1379, 1380, 1385, 1376, 1818, 1390,
- 1376, 608, 1368, 1389, 1386, 1378, 1421, 1375, 1382, 1418,
-
- 1818, 1366, 1364, 1378, 1362, 1376, 1379, 1411, 1410, 1409,
- 1356, 1407, 1406, 1818, 599, 1368, 1368, 1366, 1355, 1357,
- 1818, 1818, 1400, 1348, 1403, 581, 588, 1346, 1361, 1400,
- 575, 1394, 1393, 1392, 1346, 1336, 1389, 1351, 1341, 1349,
- 1385, 1348, 1330, 1338, 1340, 1344, 1379, 1383, 1340, 1339,
- 1818, 1340, 1333, 1322, 1335, 1338, 1333, 1328, 1333, 1330,
- 1329, 1325, 1331, 1326, 1367, 1366, 1310, 1306, 569, 1363,
- 1818, 1362, 1311, 1303, 1354, 1317, 1304, 1818, 1304, 1313,
- 1312, 1312, 1296, 1351, 1294, 1307, 1818, 1299, 1291, 1300,
- 1293, 1304, 1281, 1285, 1336, 1300, 1282, 1280, 1291, 1331,
-
- 1330, 1329, 1276, 1292, 576, 594, 1269, 1279, 588, 1818,
- 1329, 1275, 1285, 1285, 1274, 1278, 1285, 1322, 1818, 1316,
- 592, 1278, 1270, 1818, 1266, 1279, 1259, 1262, 1258, 1275,
- 11, 65, 79, 184, 220, 300, 426, 389, 419, 469,
- 551, 562, 1818, 583, 587, 582, 602, 600, 644, 586,
- 590, 610, 611, 598, 661, 620, 606, 609, 1818, 1818,
- 625, 624, 629, 617, 1818, 1818, 631, 618, 616, 634,
- 621, 621, 670, 622, 678, 679, 1818, 626, 640, 640,
- 683, 633, 635, 629, 687, 642, 632, 633, 629, 639,
- 643, 654, 638, 656, 651, 653, 646, 648, 660, 650,
-
- 665, 704, 663, 668, 645, 1818, 670, 660, 705, 654,
- 669, 670, 1818, 689, 697, 666, 680, 668, 663, 675,
- 670, 671, 667, 676, 671, 722, 728, 687, 678, 1818,
- 690, 675, 691, 681, 693, 687, 732, 700, 685, 686,
- 1818, 703, 706, 689, 691, 747, 692, 1818, 709, 712,
- 692, 711, 749, 709, 705, 700, 718, 717, 703, 718,
- 710, 706, 724, 709, 1818, 1818, 717, 762, 717, 1818,
- 725, 720, 771, 1818, 722, 727, 769, 723, 724, 736,
- 730, 734, 732, 730, 741, 784, 730, 786, 787, 733,
- 745, 1818, 733, 741, 739, 744, 756, 740, 754, 755,
-
- 756, 772, 777, 759, 746, 747, 767, 756, 761, 768,
- 809, 810, 759, 763, 1818, 808, 759, 777, 774, 812,
- 763, 781, 782, 768, 776, 785, 765, 780, 787, 829,
- 830, 1818, 785, 832, 833, 786, 796, 798, 782, 783,
- 790, 799, 842, 791, 790, 807, 846, 798, 802, 800,
- 798, 851, 852, 804, 854, 850, 810, 1818, 815, 808,
- 799, 818, 812, 807, 817, 814, 819, 815, 827, 1818,
- 811, 1818, 1818, 812, 870, 811, 830, 831, 828, 814,
- 835, 817, 822, 829, 862, 853, 883, 828, 830, 847,
- 845, 837, 841, 1818, 1818, 851, 849, 852, 836, 837,
-
- 895, 850, 855, 842, 853, 845, 851, 847, 865, 867,
- 868, 1818, 1818, 866, 1818, 868, 1818, 853, 855, 874,
- 864, 914, 869, 911, 877, 1818, 869, 861, 920, 1818,
- 921, 870, 877, 919, 1818, 1818, 879, 1818, 870, 870,
- 873, 887, 892, 875, 886, 933, 892, 893, 894, 932,
- 890, 939, 940, 1818, 889, 942, 943, 885, 945, 906,
- 890, 902, 892, 922, 951, 1818, 952, 901, 916, 903,
- 899, 915, 920, 908, 908, 961, 920, 1818, 922, 921,
- 923, 916, 925, 926, 923, 913, 916, 916, 973, 922,
- 975, 976, 921, 979, 1818, 917, 932, 925, 983, 938,
-
- 1818, 1818, 934, 944, 929, 947, 933, 992, 993, 940,
- 950, 997, 956, 1818, 948, 948, 950, 952, 1003, 948,
- 1818, 1818, 950, 1818, 1818, 964, 1818, 958, 1008, 959,
- 1010, 992, 1818, 1818, 956, 964, 958, 957, 960, 960,
- 961, 1019, 969, 1818, 965, 1022, 977, 968, 983, 983,
- 986, 986, 983, 1025, 989, 1818, 981, 1818, 1818, 991,
- 1818, 993, 994, 991, 1033, 1818, 984, 984, 990, 989,
- 1001, 1001, 1818, 1818, 1040, 989, 1818, 1006, 991, 991,
- 993, 999, 1818, 1052, 1005, 1054, 1017, 1818, 1014, 1818,
- 1033, 1058, 1059, 1018, 1004, 1062, 1063, 1018, 1818, 1008,
-
- 1066, 1818, 1006, 1063, 1028, 1024, 1066, 1016, 1021, 1019,
- 1076, 1034, 1078, 1079, 1042, 1031, 1025, 1041, 1085, 1029,
- 1046, 1031, 1046, 1030, 1086, 1087, 1088, 1037, 1090, 1055,
- 1818, 1041, 1818, 1052, 1099, 1071, 1818, 1818, 1045, 1102,
- 1818, 1818, 1051, 1049, 1818, 1105, 1053, 1102, 1047, 1052,
- 1111, 1061, 1071, 1072, 1818, 1115, 1070, 1818, 1818, 1061,
- 1076, 1064, 1079, 1818, 1116, 1084, 1077, 1078, 1087, 1069,
- 1075, 1078, 1130, 1091, 1091, 1134, 1085, 1818, 1136, 1137,
- 1818, 1087, 1087, 1818, 1091, 1086, 1085, 1143, 1098, 1818,
- 1140, 1093, 1090, 1818, 1104, 1107, 1150, 1105, 1152, 1095,
-
- 1097, 1105, 1095, 1111, 1112, 1106, 1122, 1818, 1112, 1162,
- 1818, 1158, 1818, 1818, 1159, 1116, 1124, 1115, 1122, 1818,
- 1119, 1124, 1122, 1172, 1173, 1118, 1818, 1133, 1818, 1123,
- 1135, 1136, 1179, 1123, 1131, 1125, 1133, 1146, 1818, 1145,
- 1133, 1187, 1137, 1149, 1140, 1149, 1151, 1155, 1818, 1818,
- 1194, 1139, 1155, 1197, 1198, 1818, 1194, 1158, 1155, 1160,
- 1147, 1142, 1163, 1818, 1206, 1165, 1166, 1209, 1168, 1171,
- 1818, 1212, 1175, 1818, 1818, 1157, 1215, 1164, 1217, 1162,
- 1179, 1165, 1818, 1165, 1167, 1818, 1172, 1182, 1818, 1168,
- 1180, 1818, 1176, 1818, 1186, 1180, 1184, 1175, 1227, 1176,
-
- 1184, 1193, 1186, 1181, 1182, 1197, 1188, 1195, 1182, 1197,
- 1202, 1245, 1204, 1247, 1248, 1193, 1209, 1200, 1214, 1210,
- 1203, 1818, 1255, 1818, 1818, 1256, 1257, 1214, 1213, 1214,
- 1204, 1818, 1818, 1818, 1262, 1206, 1222, 1265, 1818, 1261,
- 1212, 1818, 1211, 1213, 1224, 1271, 1222, 1818, 1231, 1274,
- 1818, 1818, 1280, 1285, 1290, 1295, 1300, 1305, 1310, 1313,
- 1287, 1292, 1294, 1307
+ 269, 64, 231, 184, 187, 75, 1769, 274, 215, 290,
+ 278, 297, 1752, 207, 302, 316, 316, 1771, 0, 355,
+ 360, 372, 377, 380, 1828, 0, 1828, 295, 383, 227,
+ 296, 283, 327, 361, 293, 1828, 1768, 1807, 1828, 237,
+
+ 1828, 394, 363, 1755, 1765, 1804, 375, 321, 403, 1759,
+ 369, 378, 376, 382, 388, 1802, 0, 445, 407, 1746,
+ 1754, 364, 1750, 1739, 1740, 372, 1756, 1739, 1748, 387,
+ 308, 378, 1742, 1740, 391, 1729, 1785, 416, 1732, 1783,
+ 1725, 1748, 1745, 1745, 1739, 214, 1732, 1725, 1730, 1724,
+ 382, 1735, 1728, 1719, 1718, 1732, 362, 1768, 1717, 414,
+ 1729, 1732, 1716, 441, 1717, 417, 1729, 1726, 1727, 1725,
+ 422, 1707, 1712, 1708, 1700, 1717, 1709, 0, 422, 450,
+ 440, 446, 454, 470, 1708, 1828, 0, 476, 1699, 1702,
+ 1828, 465, 447, 1828, 1754, 1709, 477, 1752, 481, 1751,
+
+ 477, 1750, 1828, 521, 1749, 489, 1710, 1705, 1704, 1695,
+ 465, 1744, 1738, 1704, 1683, 1691, 1697, 1685, 1699, 1695,
+ 1696, 1696, 1691, 1683, 1685, 1669, 1673, 1686, 1688, 1685,
+ 1677, 1667, 1670, 1684, 1828, 1670, 1678, 1681, 1662, 1661,
+ 1711, 1660, 1670, 1708, 510, 1669, 1657, 1668, 1704, 490,
+ 1708, 1645, 1660, 9, 1650, 1666, 1647, 1649, 1645, 1651,
+ 1642, 1641, 1654, 1647, 1649, 1653, 1652, 1646, 80, 1653,
+ 1648, 1640, 1630, 1645, 1640, 1644, 1625, 1641, 1627, 1633,
+ 1640, 1628, 230, 1621, 1635, 1634, 1637, 1619, 1627, 491,
+ 1828, 1828, 492, 1828, 1828, 1614, 0, 376, 1616, 508,
+
+ 501, 1670, 1828, 1623, 480, 1828, 1668, 1828, 1662, 562,
+ 1828, 480, 1604, 1614, 1664, 1621, 1616, 1619, 304, 1828,
+ 1617, 1659, 1614, 1611, 1612, 303, 1616, 1654, 1604, 1599,
+ 1596, 1592, 1594, 1643, 1602, 1591, 1607, 1639, 1587, 568,
+ 1600, 1600, 1583, 1584, 1597, 1584, 1594, 1589, 1596, 1591,
+ 1576, 451, 1585, 1588, 1583, 1579, 1627, 501, 497, 1828,
+ 1621, 1573, 1572, 1565, 1567, 1571, 1560, 1567, 1572, 550,
+ 1617, 1572, 503, 1569, 1573, 1571, 1560, 1560, 1572, 496,
+ 1547, 1548, 1569, 511, 1551, 1548, 1562, 1561, 1547, 1559,
+ 1558, 1557, 1556, 507, 1597, 1596, 1595, 1539, 583, 1552,
+
+ 1828, 1828, 1551, 0, 518, 1539, 1590, 1589, 1547, 1587,
+ 1828, 1535, 1585, 1828, 541, 617, 520, 1584, 1526, 1828,
+ 1531, 1537, 1540, 1539, 1526, 1525, 1828, 1527, 1524, 1536,
+ 543, 1521, 1523, 1828, 1529, 1514, 1516, 1527, 1525, 1520,
+ 585, 1527, 1515, 1508, 1557, 1828, 1506, 1522, 1554, 1558,
+ 1516, 1510, 1512, 1513, 1515, 1547, 1500, 1495, 1494, 1496,
+ 1489, 544, 1483, 1490, 1495, 1543, 1828, 1490, 1486, 1540,
+ 1493, 1487, 1494, 1479, 1489, 1492, 1481, 1480, 1475, 1828,
+ 1530, 1828, 1474, 1473, 1466, 1483, 1520, 1467, 1472, 1481,
+ 1475, 1469, 1478, 593, 1513, 1477, 1460, 1460, 1455, 1451,
+
+ 1457, 1456, 1464, 1468, 1451, 1507, 1449, 1463, 1452, 1828,
+ 1828, 1828, 1452, 1828, 1462, 1496, 1458, 0, 1499, 1449,
+ 1828, 1828, 1446, 1828, 1452, 1828, 562, 562, 607, 1828,
+ 1490, 1437, 1488, 1435, 1434, 1441, 1434, 1446, 1445, 1429,
+ 1444, 1426, 1473, 1440, 1476, 1422, 1424, 1436, 1436, 1435,
+ 1828, 1420, 1417, 1473, 1430, 1422, 1428, 1419, 1427, 1828,
+ 1412, 1423, 1427, 1409, 1423, 568, 1405, 1399, 1404, 1401,
+ 1416, 1417, 1396, 1413, 1454, 1411, 1828, 1397, 1399, 1828,
+ 1407, 1444, 1443, 591, 1406, 1389, 1390, 1395, 1386, 1828,
+ 1400, 1386, 610, 1378, 1399, 1396, 1388, 1431, 1385, 1392,
+
+ 1428, 1828, 1376, 1374, 1388, 1372, 1386, 1389, 1421, 1420,
+ 1419, 1366, 1417, 1416, 1828, 611, 1378, 1378, 1376, 1365,
+ 1367, 1828, 1828, 1410, 1358, 1413, 566, 580, 1356, 1371,
+ 1410, 589, 1404, 1403, 1402, 1356, 1346, 1399, 1361, 1351,
+ 1359, 1395, 1358, 1340, 1348, 1350, 1354, 1389, 1393, 1350,
+ 1349, 1828, 1350, 1343, 1332, 1345, 1348, 1343, 1338, 1343,
+ 1340, 1339, 1335, 1341, 1336, 1377, 1376, 1320, 1316, 564,
+ 1368, 1372, 1828, 1371, 1320, 1312, 1363, 1326, 1313, 1828,
+ 1313, 1322, 1321, 1321, 1305, 1360, 1303, 1316, 1828, 1308,
+ 1300, 1309, 1302, 1313, 1290, 1294, 1345, 1309, 1291, 1289,
+
+ 1300, 1340, 1339, 1338, 1285, 1301, 585, 593, 1278, 1288,
+ 590, 1828, 1338, 1284, 1294, 1294, 1283, 1287, 1294, 1331,
+ 1828, 1325, 592, 1287, 1279, 1828, 1275, 1288, 1268, 1271,
+ 1267, 15, 76, 67, 199, 222, 295, 373, 442, 404,
+ 487, 500, 570, 569, 1828, 600, 601, 594, 605, 603,
+ 649, 594, 597, 619, 620, 607, 664, 623, 609, 612,
+ 1828, 1828, 628, 627, 632, 620, 630, 1828, 1828, 635,
+ 622, 620, 638, 625, 625, 674, 626, 682, 683, 1828,
+ 630, 644, 644, 687, 637, 639, 633, 691, 646, 636,
+ 637, 633, 643, 647, 658, 642, 660, 655, 657, 650,
+
+ 652, 664, 654, 669, 708, 667, 672, 649, 1828, 674,
+ 664, 709, 658, 673, 674, 1828, 693, 701, 670, 684,
+ 672, 667, 679, 674, 675, 671, 680, 675, 726, 732,
+ 691, 682, 1828, 694, 679, 695, 685, 697, 691, 736,
+ 704, 689, 690, 1828, 707, 710, 693, 695, 751, 696,
+ 1828, 713, 716, 696, 715, 753, 713, 709, 706, 705,
+ 723, 722, 708, 723, 715, 711, 729, 714, 1828, 1828,
+ 722, 767, 722, 1828, 730, 725, 776, 1828, 727, 732,
+ 774, 728, 729, 741, 735, 739, 737, 735, 746, 789,
+ 735, 791, 792, 738, 750, 1828, 738, 746, 744, 749,
+
+ 761, 745, 759, 760, 761, 777, 782, 764, 752, 752,
+ 772, 761, 766, 773, 814, 815, 764, 768, 1828, 813,
+ 764, 782, 779, 817, 768, 786, 787, 773, 781, 790,
+ 770, 785, 792, 834, 835, 1828, 790, 837, 838, 791,
+ 801, 803, 787, 788, 795, 804, 792, 848, 797, 796,
+ 813, 852, 804, 808, 806, 804, 857, 858, 810, 860,
+ 856, 816, 1828, 821, 814, 805, 824, 818, 813, 823,
+ 820, 825, 821, 833, 1828, 817, 1828, 1828, 818, 876,
+ 817, 836, 837, 835, 820, 841, 823, 828, 835, 868,
+ 859, 889, 834, 836, 853, 851, 843, 847, 1828, 1828,
+
+ 857, 855, 858, 842, 843, 901, 856, 861, 848, 859,
+ 851, 857, 853, 871, 873, 874, 1828, 1828, 872, 1828,
+ 874, 1828, 859, 861, 880, 870, 920, 875, 917, 883,
+ 872, 1828, 876, 868, 927, 1828, 928, 877, 884, 926,
+ 1828, 1828, 886, 1828, 877, 877, 880, 894, 899, 882,
+ 893, 940, 899, 900, 901, 939, 897, 946, 947, 1828,
+ 896, 949, 950, 892, 952, 913, 897, 909, 899, 929,
+ 958, 1828, 959, 908, 923, 910, 906, 922, 927, 915,
+ 915, 968, 927, 1828, 929, 928, 930, 923, 932, 933,
+ 930, 920, 923, 923, 980, 929, 982, 983, 928, 986,
+
+ 1828, 924, 939, 932, 935, 991, 946, 1828, 1828, 942,
+ 952, 939, 955, 941, 1000, 1002, 948, 958, 1005, 964,
+ 1828, 956, 956, 958, 960, 1011, 956, 1828, 1828, 958,
+ 1828, 1828, 972, 1828, 966, 1016, 967, 1018, 1000, 1828,
+ 1828, 964, 972, 966, 965, 968, 968, 969, 1027, 977,
+ 1828, 973, 1030, 985, 976, 991, 991, 994, 994, 991,
+ 1033, 997, 1828, 989, 1828, 1828, 999, 1828, 1001, 1002,
+ 999, 1041, 991, 1828, 993, 993, 999, 998, 1010, 1010,
+ 1828, 1828, 1049, 998, 1828, 1015, 1000, 1000, 1002, 1008,
+ 1828, 1061, 1014, 1063, 1026, 1828, 1023, 1828, 1042, 1067,
+
+ 1068, 1027, 1013, 1071, 1072, 1027, 1828, 1017, 1075, 1828,
+ 1015, 1072, 1037, 1033, 1075, 1025, 1030, 1028, 1085, 1043,
+ 1087, 1088, 1051, 1040, 1034, 1092, 1052, 1095, 1039, 1056,
+ 1041, 1056, 1040, 1096, 1097, 1098, 1047, 1100, 1065, 1828,
+ 1051, 1828, 1062, 1109, 1081, 1828, 1828, 1055, 1112, 1828,
+ 1828, 1061, 1059, 1828, 1115, 1063, 1112, 1057, 1062, 1121,
+ 1071, 1081, 1082, 1828, 1125, 1080, 1828, 1828, 1071, 1086,
+ 1074, 1828, 1089, 1828, 1126, 1094, 1087, 1088, 1097, 1079,
+ 1085, 1088, 1140, 1102, 1101, 1144, 1095, 1828, 1146, 1147,
+ 1828, 1097, 1097, 1828, 1101, 1096, 1095, 1153, 1108, 1828,
+
+ 1150, 1103, 1100, 1828, 1114, 1117, 1160, 1115, 1162, 1105,
+ 1107, 1115, 1105, 1121, 1122, 1116, 1132, 1828, 1122, 1172,
+ 1828, 1168, 1828, 1828, 1169, 1126, 1134, 1125, 1132, 1828,
+ 1129, 1134, 1132, 1182, 1183, 1128, 1828, 1143, 1828, 1133,
+ 1145, 1146, 1189, 1133, 1141, 1135, 1143, 1156, 1828, 1155,
+ 1143, 1197, 1147, 1159, 1150, 1159, 1161, 1165, 1828, 1828,
+ 1204, 1149, 1165, 1207, 1208, 1828, 1204, 1168, 1165, 1170,
+ 1157, 1152, 1173, 1828, 1216, 1175, 1176, 1219, 1178, 1181,
+ 1828, 1222, 1185, 1828, 1828, 1167, 1225, 1174, 1227, 1172,
+ 1189, 1175, 1828, 1175, 1177, 1828, 1182, 1192, 1828, 1178,
+
+ 1190, 1828, 1186, 1828, 1196, 1190, 1194, 1185, 1237, 1186,
+ 1194, 1203, 1196, 1191, 1192, 1207, 1198, 1205, 1192, 1207,
+ 1212, 1255, 1214, 1257, 1258, 1203, 1219, 1210, 1224, 1220,
+ 1213, 1828, 1265, 1828, 1828, 1266, 1267, 1224, 1223, 1224,
+ 1214, 1828, 1828, 1828, 1272, 1216, 1232, 1275, 1828, 1271,
+ 1222, 1828, 1221, 1223, 1234, 1281, 1232, 1828, 1241, 1284,
+ 1828, 1828, 1290, 1295, 1300, 1305, 1310, 1315, 1320, 1323,
+ 1297, 1302, 1304, 1317
} ;
-static const flex_int16_t yy_def[1465] =
+static const flex_int16_t yy_def[1475] =
{ 0,
- 1453, 1453, 1454, 1454, 1453, 1453, 1453, 1453, 1453, 1453,
- 1452, 1452, 1452, 1452, 1452, 1455, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1456,
- 1452, 1452, 1452, 1457, 15, 1452, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1458, 45, 45,
+ 1463, 1463, 1464, 1464, 1463, 1463, 1463, 1463, 1463, 1463,
+ 1462, 1462, 1462, 1462, 1462, 1465, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1466,
+ 1462, 1462, 1462, 1467, 15, 1462, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1468, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1455, 1452,
- 1452, 1452, 1452, 1452, 1452, 1459, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1456, 1452, 1457,
+ 45, 45, 45, 45, 45, 45, 45, 45, 1465, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1469, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1466, 1462, 1467,
- 1452, 1452, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 1460, 45, 1458, 45, 45,
+ 1462, 1462, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1470, 45, 1468, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1459, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1461, 45, 45, 45,
- 1452, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1469, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1471, 45, 45, 45,
+ 1462, 45, 45, 1462, 45, 45, 45, 45, 45, 45,
- 45, 1460, 1452, 1458, 45, 45, 45, 45, 45, 45,
+ 45, 1470, 1462, 1468, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 1452, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 1462, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1462, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1472, 45, 45, 45,
- 45, 45, 1452, 45, 45, 1452, 45, 1452, 45, 1458,
- 1452, 45, 45, 45, 45, 45, 45, 45, 45, 1452,
+ 45, 45, 1462, 45, 45, 1462, 45, 1462, 45, 1468,
+ 1462, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1452,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1452, 1452, 1452, 1463, 45, 45, 45, 45, 45, 45,
- 1452, 45, 45, 1452, 45, 1458, 45, 45, 45, 1452,
- 45, 45, 45, 45, 45, 45, 1452, 45, 45, 45,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 1452, 45, 45, 45, 45,
+ 1462, 1462, 1462, 1473, 45, 45, 45, 45, 45, 45,
+ 1462, 45, 45, 1462, 45, 1468, 45, 45, 45, 1462,
+ 45, 45, 45, 45, 45, 45, 1462, 45, 45, 45,
+ 45, 45, 45, 1462, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1462, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 1452, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1452,
- 45, 1452, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 1462, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
+ 45, 1462, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1452,
- 1452, 1452, 45, 1452, 45, 45, 1452, 1464, 45, 45,
- 1452, 1452, 45, 1452, 45, 1452, 45, 45, 45, 1452,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
+ 1462, 1462, 45, 1462, 45, 45, 1462, 1474, 45, 45,
+ 1462, 1462, 45, 1462, 45, 1462, 45, 45, 45, 1462,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1452, 45, 45, 45, 45, 45, 45, 45, 45, 1452,
+ 1462, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 1452, 45, 45, 1452, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1452, 45,
+ 45, 45, 45, 45, 45, 45, 1462, 45, 45, 1462,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1452, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
- 1452, 1452, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 1462, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 1462, 45, 45, 45, 45, 45,
+ 45, 1462, 1462, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1452, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 1462, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1452, 45, 45, 45, 45, 45, 45, 1452, 45, 45,
- 45, 45, 45, 45, 45, 45, 1452, 45, 45, 45,
+ 45, 45, 1462, 45, 45, 45, 45, 45, 45, 1462,
+ 45, 45, 45, 45, 45, 45, 45, 45, 1462, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1452,
- 45, 45, 45, 45, 45, 45, 45, 45, 1452, 45,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 1452, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1452, 1452,
- 45, 45, 45, 45, 1452, 1452, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 1452, 45, 45, 45,
+ 45, 1462, 45, 45, 45, 45, 45, 45, 45, 45,
+ 1462, 45, 45, 45, 45, 1462, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 1462, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
-
- 45, 45, 45, 45, 45, 1452, 45, 45, 45, 45,
- 45, 45, 1452, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1452,
+ 1462, 1462, 45, 45, 45, 45, 45, 1462, 1462, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1452, 45, 45, 45, 45, 45, 45, 1452, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 1452, 1452, 45, 45, 45, 1452,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
+
+ 45, 45, 45, 45, 45, 45, 45, 45, 1462, 45,
+ 45, 45, 45, 45, 45, 1462, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 1462, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 1462, 45, 45, 45, 45, 45, 45,
+ 1462, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 1462, 1462,
+ 45, 45, 45, 1462, 45, 45, 45, 1462, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 1452, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1462, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 1452, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 1462, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 1452, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 1462, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1452, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 1452,
- 45, 1452, 1452, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1452, 1452, 45, 45, 45, 45, 45,
+ 45, 45, 1462, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 1462, 45, 1462, 1462, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 1462, 1462,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 1452, 1452, 45, 1452, 45, 1452, 45, 45, 45,
- 45, 45, 45, 45, 45, 1452, 45, 45, 45, 1452,
- 45, 45, 45, 45, 1452, 1452, 45, 1452, 45, 45,
+ 45, 45, 45, 45, 45, 45, 1462, 1462, 45, 1462,
+ 45, 1462, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 1462, 45, 45, 45, 1462, 45, 45, 45, 45,
+ 1462, 1462, 45, 1462, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 1452, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1452, 45, 45,
+ 45, 1462, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 1462, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 1452, 45, 45, 45, 45, 45,
-
- 1452, 1452, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
- 1452, 1452, 45, 1452, 1452, 45, 1452, 45, 45, 45,
- 45, 45, 1452, 1452, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 1452, 45, 1452, 1452, 45,
- 1452, 45, 45, 45, 45, 1452, 45, 45, 45, 45,
- 45, 45, 1452, 1452, 45, 45, 1452, 45, 45, 45,
- 45, 45, 1452, 45, 45, 45, 45, 1452, 45, 1452,
- 45, 45, 45, 45, 45, 45, 45, 45, 1452, 45,
-
- 45, 1452, 45, 45, 45, 45, 45, 45, 45, 45,
+
+ 1462, 45, 45, 45, 45, 45, 45, 1462, 1462, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 1462, 45, 45, 45, 45, 45, 45, 1462, 1462, 45,
+ 1462, 1462, 45, 1462, 45, 45, 45, 45, 45, 1462,
+ 1462, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 1462, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 1462, 45, 1462, 1462, 45, 1462, 45, 45,
+ 45, 45, 45, 1462, 45, 45, 45, 45, 45, 45,
+ 1462, 1462, 45, 45, 1462, 45, 45, 45, 45, 45,
+ 1462, 45, 45, 45, 45, 1462, 45, 1462, 45, 45,
+
+ 45, 45, 45, 45, 45, 45, 1462, 45, 45, 1462,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 1452, 45, 1452, 45, 45, 45, 1452, 1452, 45, 45,
- 1452, 1452, 45, 45, 1452, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 1452, 45, 45, 1452, 1452, 45,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 1452, 45, 45,
- 1452, 45, 45, 1452, 45, 45, 45, 45, 45, 1452,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
-
- 45, 45, 45, 45, 45, 45, 45, 1452, 45, 45,
- 1452, 45, 1452, 1452, 45, 45, 45, 45, 45, 1452,
- 45, 45, 45, 45, 45, 45, 1452, 45, 1452, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1452, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 1452, 1452,
- 45, 45, 45, 45, 45, 1452, 45, 45, 45, 45,
- 45, 45, 45, 1452, 45, 45, 45, 45, 45, 45,
- 1452, 45, 45, 1452, 1452, 45, 45, 45, 45, 45,
- 45, 45, 1452, 45, 45, 1452, 45, 45, 1452, 45,
- 45, 1452, 45, 1452, 45, 45, 45, 45, 45, 45,
-
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 1462,
+ 45, 1462, 45, 45, 45, 1462, 1462, 45, 45, 1462,
+ 1462, 45, 45, 1462, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 1462, 45, 45, 1462, 1462, 45, 45,
+ 45, 1462, 45, 1462, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1462, 45, 45,
+ 1462, 45, 45, 1462, 45, 45, 45, 45, 45, 1462,
+
+ 45, 45, 45, 1462, 45, 45, 45, 45, 45, 45,
+ 45, 45, 45, 45, 45, 45, 45, 1462, 45, 45,
+ 1462, 45, 1462, 1462, 45, 45, 45, 45, 45, 1462,
+ 45, 45, 45, 45, 45, 45, 1462, 45, 1462, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 1462, 45,
+ 45, 45, 45, 45, 45, 45, 45, 45, 1462, 1462,
+ 45, 45, 45, 45, 45, 1462, 45, 45, 45, 45,
+ 45, 45, 45, 1462, 45, 45, 45, 45, 45, 45,
+ 1462, 45, 45, 1462, 1462, 45, 45, 45, 45, 45,
+ 45, 45, 1462, 45, 45, 1462, 45, 45, 1462, 45,
+
+ 45, 1462, 45, 1462, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 1452, 45, 1452, 1452, 45, 45, 45, 45, 45,
- 45, 1452, 1452, 1452, 45, 45, 45, 45, 1452, 45,
- 45, 1452, 45, 45, 45, 45, 45, 1452, 45, 45,
- 1452, 0, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452
+ 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
+ 45, 1462, 45, 1462, 1462, 45, 45, 45, 45, 45,
+ 45, 1462, 1462, 1462, 45, 45, 45, 45, 1462, 45,
+ 45, 1462, 45, 45, 45, 45, 45, 1462, 45, 45,
+ 1462, 0, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462
} ;
-static const flex_int16_t yy_nxt[1890] =
+static const flex_int16_t yy_nxt[1900] =
{ 0,
- 1452, 13, 14, 13, 1452, 15, 16, 1452, 17, 18,
+ 1462, 13, 14, 13, 1462, 15, 16, 1462, 17, 18,
19, 20, 21, 22, 22, 22, 23, 24, 85, 363,
- 37, 14, 37, 86, 25, 26, 38, 1452, 1452, 27,
+ 37, 14, 37, 86, 25, 26, 38, 1462, 1462, 27,
37, 14, 37, 42, 28, 42, 38, 91, 92, 29,
115, 30, 13, 14, 13, 90, 91, 25, 31, 92,
- 13, 14, 13, 13, 14, 13, 32, 40, 824, 13,
+ 13, 14, 13, 13, 14, 13, 32, 40, 826, 13,
14, 13, 33, 40, 115, 91, 92, 364, 90, 34,
35, 13, 14, 13, 94, 15, 16, 95, 17, 18,
19, 20, 21, 22, 22, 22, 23, 24, 13, 14,
39, 84, 84, 84, 28, 42, 41, 42, 42, 29,
42, 30, 82, 107, 41, 111, 93, 25, 31, 108,
- 130, 138, 88, 825, 88, 826, 32, 89, 89, 89,
+ 130, 138, 88, 827, 88, 828, 32, 89, 89, 89,
131, 139, 33, 140, 379, 82, 107, 380, 111, 34,
35, 44, 44, 44, 45, 45, 46, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 80, 103, 81, 81, 81, 80, 109, 83,
83, 83, 101, 114, 80, 82, 83, 83, 83, 121,
82, 133, 122, 112, 123, 306, 124, 82, 134, 103,
- 394, 103, 101, 113, 135, 827, 114, 110, 82, 136,
+ 394, 103, 101, 113, 135, 829, 114, 110, 82, 136,
163, 107, 137, 82, 164, 179, 112, 102, 146, 244,
82, 45, 147, 45, 45, 45, 45, 119, 45, 45,
45, 113, 117, 120, 107, 45, 45, 102, 45, 45,
- 245, 179, 148, 828, 45, 132, 45, 45, 45, 45,
+ 245, 179, 148, 830, 45, 132, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 89, 89,
128, 142, 143, 45, 180, 144, 152, 45, 181, 45,
118, 145, 129, 149, 153, 150, 154, 151, 112, 114,
157, 155, 156, 158, 159, 165, 181, 424, 113, 166,
- 180, 193, 167, 224, 160, 179, 184, 161, 829, 168,
+ 180, 193, 167, 224, 160, 179, 184, 161, 831, 168,
169, 171, 114, 172, 425, 170, 225, 173, 84, 84,
84, 80, 175, 81, 81, 81, 113, 176, 193, 82,
88, 182, 88, 174, 82, 89, 89, 89, 80, 180,
188, 82, 82, 192, 82, 197, 100, 82, 194, 198,
209, 199, 201, 200, 405, 183, 215, 216, 197, 210,
211, 235, 256, 257, 82, 226, 217, 82, 188, 192,
- 221, 830, 222, 197, 100, 201, 198, 195, 100, 199,
- 200, 227, 100, 405, 188, 230, 250, 831, 231, 223,
+ 221, 832, 222, 197, 100, 201, 198, 195, 100, 199,
+ 200, 227, 100, 405, 188, 230, 250, 833, 231, 223,
100, 266, 232, 198, 100, 290, 100, 187, 204, 204,
- 204, 205, 832, 236, 292, 204, 204, 204, 204, 204,
+ 204, 205, 834, 236, 292, 204, 204, 204, 204, 204,
204, 260, 206, 276, 261, 262, 302, 277, 291, 290,
283, 278, 291, 290, 267, 268, 269, 292, 204, 204,
204, 204, 204, 204, 292, 270, 298, 271, 301, 272,
273, 305, 274, 302, 291, 307, 309, 293, 294, 298,
461, 462, 413, 317, 305, 401, 401, 295, 405, 298,
352, 318, 407, 408, 305, 410, 301, 319, 307, 413,
- 833, 409, 312, 309, 310, 310, 310, 359, 401, 402,
+ 835, 409, 312, 309, 310, 310, 310, 359, 401, 402,
413, 310, 310, 310, 310, 310, 310, 417, 410, 468,
484, 519, 492, 519, 485, 480, 493, 470, 497, 469,
- 508, 834, 498, 509, 310, 310, 310, 310, 310, 310,
+ 508, 836, 498, 509, 310, 310, 310, 310, 310, 310,
527, 353, 528, 446, 354, 416, 416, 416, 447, 519,
- 678, 529, 416, 416, 416, 416, 416, 416, 514, 541,
- 551, 601, 626, 515, 627, 552, 602, 527, 622, 528,
-
- 662, 663, 542, 628, 710, 416, 416, 416, 416, 416,
- 416, 481, 721, 687, 711, 720, 835, 679, 688, 626,
- 725, 726, 627, 763, 448, 815, 764, 797, 836, 449,
- 45, 45, 45, 837, 798, 721, 838, 45, 45, 45,
- 45, 45, 45, 720, 804, 799, 839, 840, 843, 841,
- 805, 844, 800, 815, 842, 689, 801, 845, 846, 847,
+ 837, 529, 416, 416, 416, 416, 416, 416, 514, 541,
+ 551, 572, 627, 515, 628, 552, 680, 527, 602, 528,
+
+ 722, 573, 542, 603, 723, 416, 416, 416, 416, 416,
+ 416, 481, 623, 663, 664, 689, 712, 629, 765, 627,
+ 690, 766, 628, 838, 448, 818, 713, 723, 722, 449,
+ 45, 45, 45, 681, 727, 728, 800, 45, 45, 45,
+ 45, 45, 45, 801, 802, 839, 807, 840, 841, 842,
+ 843, 803, 808, 818, 844, 804, 846, 691, 847, 845,
45, 45, 45, 45, 45, 45, 848, 849, 850, 851,
- 852, 853, 854, 855, 856, 857, 858, 859, 861, 862,
- 863, 860, 864, 865, 866, 867, 868, 869, 870, 871,
+ 852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
+ 862, 863, 865, 866, 867, 864, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
- 882, 883, 884, 885, 886, 887, 888, 890, 891, 892,
- 893, 894, 895, 896, 897, 898, 899, 900, 889, 901,
- 902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
+ 882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
+ 892, 894, 895, 896, 897, 898, 899, 900, 901, 902,
+ 903, 904, 893, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
- 922, 923, 924, 925, 903, 926, 927, 902, 928, 929,
- 930, 931, 932, 935, 936, 937, 938, 933, 939, 940,
- 941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
- 952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
- 951, 962, 963, 964, 965, 966, 967, 968, 969, 970,
+ 922, 923, 924, 925, 926, 927, 928, 929, 907, 930,
+ 931, 906, 932, 933, 934, 935, 936, 939, 940, 941,
+ 942, 937, 943, 944, 945, 946, 947, 948, 949, 950,
+ 951, 952, 953, 954, 955, 957, 958, 959, 960, 961,
+ 962, 963, 964, 965, 966, 956, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
- 981, 982, 983, 984, 985, 987, 986, 988, 934, 989,
- 990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
+ 981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
+ 992, 991, 938, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
- 1010, 1011, 985, 986, 1012, 1013, 1014, 1015, 1017, 1019,
- 1020, 1021, 1016, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
+ 1010, 1011, 1012, 1013, 1014, 1015, 1016, 990, 991, 1017,
+ 1018, 1019, 1020, 1022, 1024, 1025, 1026, 1021, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048,
1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
- 1018, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067,
+ 1059, 1060, 1061, 1062, 1063, 1023, 1064, 1065, 1066, 1067,
1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077,
- 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1064,
- 1087, 1088, 1089, 1090, 1091, 1065, 1092, 1093, 1094, 1095,
- 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105,
+ 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
+ 1088, 1089, 1090, 1091, 1092, 1070, 1093, 1094, 1095, 1096,
+ 1097, 1071, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105,
1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
- 1116, 1117, 1118, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
- 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1136, 1137,
- 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147,
+ 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
+ 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136,
+ 1137, 1138, 1139, 1140, 1141, 1143, 1144, 1145, 1146, 1147,
1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157,
- 1158, 1159, 1160, 1132, 1161, 1162, 1163, 1165, 1166, 1167,
- 1168, 1169, 1170, 1119, 1164, 1171, 1172, 1173, 1174, 1135,
+ 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167,
+ 1139, 1168, 1169, 1170, 1172, 1173, 1174, 1175, 1176, 1177,
- 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184,
+ 1126, 1171, 1178, 1179, 1180, 1181, 1142, 1182, 1183, 1184,
1185, 1186, 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194,
1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204,
- 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1191,
- 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223,
+ 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1214,
+ 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1199, 1222, 1223,
1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233,
1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1242, 1243,
1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253,
- 1254, 1255, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1236,
- 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271, 1272, 1273,
+ 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263,
+ 1264, 1266, 1267, 1268, 1269, 1270, 1271, 1272, 1245, 1273,
1274, 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1282, 1283,
- 1284, 1286, 1287, 1288, 1289, 1285, 1290, 1291, 1292, 1293,
- 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 1303,
- 1304, 1305, 1306, 1279, 1307, 1308, 1309, 1256, 1310, 1311,
- 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321,
+ 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293,
+ 1294, 1296, 1297, 1298, 1299, 1295, 1300, 1301, 1302, 1303,
+ 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1313,
+ 1314, 1315, 1316, 1289, 1317, 1318, 1265, 1319, 1320, 1321,
1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1330, 1331,
1332, 1333, 1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341,
1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351,
1422, 1423, 1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431,
1432, 1433, 1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441,
1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1451,
+ 1452, 1453, 1454, 1455, 1456, 1457, 1458, 1459, 1460, 1461,
12, 12, 12, 12, 12, 36, 36, 36, 36, 36,
- 79, 297, 79, 79, 79, 98, 404, 98, 518, 98,
+ 79, 297, 79, 79, 79, 98, 404, 98, 518, 98,
100, 100, 100, 100, 100, 116, 116, 116, 116, 116,
- 178, 100, 178, 178, 178, 202, 202, 202, 823, 822,
- 821, 820, 819, 818, 817, 816, 814, 813, 812, 811,
- 810, 809, 808, 807, 806, 803, 802, 796, 795, 794,
- 793, 792, 791, 790, 789, 788, 787, 786, 785, 784,
- 783, 782, 781, 780, 779, 778, 777, 776, 775, 774,
- 773, 772, 771, 770, 769, 768, 767, 766, 765, 762,
- 761, 760, 759, 758, 757, 756, 755, 754, 753, 752,
- 751, 750, 749, 748, 747, 746, 745, 744, 743, 742,
- 741, 740, 739, 738, 737, 736, 735, 734, 733, 732,
-
- 731, 730, 729, 728, 727, 724, 723, 722, 719, 718,
- 717, 716, 715, 714, 713, 712, 709, 708, 707, 706,
- 705, 704, 703, 702, 701, 700, 699, 698, 697, 696,
- 695, 694, 693, 692, 691, 690, 686, 685, 684, 683,
- 682, 681, 680, 677, 676, 675, 674, 673, 672, 671,
- 670, 669, 668, 667, 666, 665, 664, 661, 660, 659,
- 658, 657, 656, 655, 654, 653, 652, 651, 650, 649,
- 648, 647, 646, 645, 644, 643, 642, 641, 640, 639,
- 638, 637, 636, 635, 634, 633, 632, 631, 630, 629,
- 625, 624, 623, 622, 621, 620, 619, 618, 617, 616,
-
- 615, 614, 613, 612, 611, 610, 609, 608, 607, 606,
- 605, 604, 603, 600, 599, 598, 597, 596, 595, 594,
- 593, 592, 591, 590, 589, 588, 587, 586, 585, 584,
- 583, 582, 581, 580, 579, 578, 577, 576, 575, 574,
- 573, 572, 571, 570, 569, 568, 567, 566, 565, 564,
+ 178, 100, 178, 178, 178, 202, 202, 202, 825, 824,
+ 823, 822, 821, 820, 819, 817, 816, 815, 814, 813,
+ 812, 811, 810, 809, 806, 805, 799, 798, 797, 796,
+ 795, 794, 793, 792, 791, 790, 789, 788, 787, 786,
+ 785, 784, 783, 782, 781, 780, 779, 778, 777, 776,
+ 775, 774, 773, 772, 771, 770, 769, 768, 767, 764,
+ 763, 762, 761, 760, 759, 758, 757, 756, 755, 754,
+ 753, 752, 751, 750, 749, 748, 747, 746, 745, 744,
+
+ 743, 742, 741, 740, 739, 738, 737, 736, 735, 734,
+ 733, 732, 731, 730, 729, 726, 725, 724, 721, 720,
+ 719, 718, 717, 716, 715, 714, 711, 710, 709, 708,
+ 707, 706, 705, 704, 703, 702, 701, 700, 699, 698,
+ 697, 696, 695, 694, 693, 692, 688, 687, 686, 685,
+ 684, 683, 682, 679, 678, 677, 676, 675, 674, 673,
+ 672, 671, 670, 669, 668, 667, 666, 665, 662, 661,
+ 660, 659, 658, 657, 656, 655, 654, 653, 652, 651,
+ 650, 649, 648, 647, 646, 645, 644, 643, 642, 641,
+ 640, 639, 638, 637, 636, 635, 634, 633, 632, 631,
+
+ 630, 626, 625, 624, 623, 622, 621, 620, 619, 618,
+ 617, 616, 615, 614, 613, 612, 611, 610, 609, 608,
+ 607, 606, 605, 604, 601, 600, 599, 598, 597, 596,
+ 595, 594, 593, 592, 591, 590, 589, 588, 587, 586,
+ 585, 584, 583, 582, 581, 580, 579, 578, 577, 576,
+ 575, 574, 571, 570, 569, 568, 567, 566, 565, 564,
563, 562, 561, 560, 559, 558, 557, 556, 555, 554,
553, 550, 549, 548, 547, 546, 545, 544, 543, 540,
539, 538, 537, 536, 535, 534, 533, 532, 531, 530,
526, 525, 524, 523, 522, 521, 520, 517, 516, 513,
- 512, 511, 510, 507, 506, 505, 504, 503, 502, 501,
+ 512, 511, 510, 507, 506, 505, 504, 503, 502, 501,
500, 499, 496, 495, 494, 491, 490, 489, 488, 487,
486, 483, 482, 479, 478, 477, 476, 475, 474, 473,
472, 471, 467, 466, 465, 464, 463, 460, 459, 458,
419, 418, 415, 414, 412, 411, 406, 403, 400, 399,
398, 397, 396, 395, 393, 392, 391, 390, 389, 388,
387, 386, 385, 384, 383, 382, 381, 378, 377, 376,
- 375, 374, 373, 372, 371, 370, 369, 368, 367, 366,
+ 375, 374, 373, 372, 371, 370, 369, 368, 367, 366,
365, 362, 361, 360, 358, 357, 356, 355, 351, 350,
349, 348, 347, 346, 345, 344, 343, 342, 341, 340,
339, 338, 337, 336, 335, 334, 333, 332, 331, 330,
281, 280, 279, 275, 265, 264, 263, 259, 258, 255,
254, 253, 252, 251, 249, 248, 247, 246, 243, 242,
241, 240, 239, 238, 237, 234, 233, 229, 228, 220,
- 219, 218, 214, 213, 212, 208, 207, 203, 196, 191,
+ 219, 218, 214, 213, 212, 208, 207, 203, 196, 191,
190, 189, 186, 185, 177, 162, 141, 106, 105, 104,
- 43, 99, 97, 96, 87, 43, 1452, 11, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452
+ 43, 99, 97, 96, 87, 43, 1462, 11, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462
+
} ;
-static const flex_int16_t yy_chk[1890] =
+static const flex_int16_t yy_chk[1900] =
{ 0,
0, 1, 1, 1, 0, 1, 1, 0, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 21, 254,
3, 3, 3, 21, 1, 1, 3, 0, 0, 1,
4, 4, 4, 13, 1, 13, 4, 27, 28, 1,
57, 1, 5, 5, 5, 26, 32, 1, 1, 33,
- 6, 6, 6, 7, 7, 7, 1, 7, 731, 8,
+ 6, 6, 6, 7, 7, 7, 1, 7, 732, 8,
8, 8, 1, 8, 57, 27, 28, 254, 26, 1,
1, 2, 2, 2, 32, 2, 2, 33, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 9, 9,
6, 20, 20, 20, 2, 37, 9, 37, 42, 2,
42, 2, 20, 51, 10, 54, 31, 2, 2, 52,
- 62, 66, 25, 732, 25, 733, 2, 25, 25, 25,
+ 62, 66, 25, 733, 25, 734, 2, 25, 25, 25,
62, 66, 2, 66, 269, 20, 51, 269, 54, 2,
2, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 17, 47, 17, 17, 17, 19, 53, 19,
19, 19, 44, 56, 22, 17, 22, 22, 22, 60,
19, 64, 60, 55, 60, 283, 60, 22, 64, 47,
- 283, 59, 100, 55, 65, 734, 56, 53, 17, 65,
+ 283, 59, 100, 55, 65, 735, 56, 53, 17, 65,
74, 63, 65, 19, 74, 90, 55, 44, 69, 146,
22, 45, 69, 45, 45, 45, 45, 59, 45, 45,
45, 55, 58, 59, 63, 45, 45, 100, 45, 58,
- 146, 90, 69, 735, 45, 63, 45, 45, 45, 45,
+ 146, 90, 69, 736, 45, 63, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
45, 45, 45, 45, 45, 45, 45, 58, 88, 88,
61, 68, 68, 58, 91, 68, 71, 58, 95, 58,
58, 68, 61, 70, 71, 70, 71, 70, 76, 77,
72, 71, 71, 72, 72, 75, 92, 319, 76, 75,
- 91, 108, 75, 131, 72, 93, 95, 72, 736, 75,
+ 91, 108, 75, 131, 72, 93, 95, 72, 737, 75,
75, 76, 77, 76, 319, 75, 131, 76, 80, 80,
80, 81, 77, 81, 81, 81, 76, 77, 108, 80,
82, 93, 82, 76, 81, 82, 82, 82, 83, 94,
103, 83, 80, 107, 84, 111, 102, 81, 109, 112,
122, 113, 115, 114, 298, 94, 126, 126, 151, 122,
122, 138, 157, 157, 83, 132, 126, 84, 103, 107,
- 130, 737, 130, 111, 102, 115, 112, 109, 102, 113,
- 114, 132, 102, 298, 119, 135, 151, 738, 135, 130,
+ 130, 738, 130, 111, 102, 115, 112, 109, 102, 113,
+ 114, 132, 102, 298, 119, 135, 151, 739, 135, 130,
102, 164, 135, 171, 102, 179, 102, 102, 118, 118,
- 118, 119, 739, 138, 181, 118, 118, 118, 118, 118,
+ 118, 119, 740, 138, 181, 118, 118, 118, 118, 118,
118, 160, 119, 166, 160, 160, 193, 166, 180, 182,
171, 166, 183, 179, 164, 164, 164, 181, 118, 118,
118, 118, 118, 118, 184, 164, 188, 164, 192, 164,
164, 197, 164, 193, 180, 199, 201, 182, 183, 206,
352, 352, 305, 211, 250, 290, 293, 184, 312, 188,
245, 211, 300, 300, 197, 301, 192, 211, 199, 359,
- 740, 300, 206, 201, 204, 204, 204, 250, 290, 293,
+ 741, 300, 206, 201, 204, 204, 204, 250, 290, 293,
305, 204, 204, 204, 204, 204, 204, 312, 301, 358,
373, 405, 380, 417, 373, 370, 380, 359, 384, 358,
- 394, 741, 384, 394, 204, 204, 204, 204, 204, 204,
+ 394, 742, 384, 394, 204, 204, 204, 204, 204, 204,
415, 245, 415, 340, 245, 310, 310, 310, 340, 405,
- 583, 417, 310, 310, 310, 310, 310, 310, 399, 431,
- 441, 494, 527, 399, 528, 441, 494, 415, 529, 415,
-
- 566, 566, 431, 529, 615, 310, 310, 310, 310, 310,
- 310, 370, 627, 592, 615, 626, 742, 583, 592, 527,
- 631, 631, 528, 669, 340, 721, 669, 705, 744, 340,
- 416, 416, 416, 745, 705, 627, 746, 416, 416, 416,
- 416, 416, 416, 626, 709, 706, 747, 748, 750, 749,
- 709, 751, 706, 721, 749, 592, 706, 752, 753, 754,
- 416, 416, 416, 416, 416, 416, 755, 756, 757, 758,
- 761, 762, 763, 764, 767, 768, 769, 770, 771, 772,
- 773, 770, 774, 775, 776, 778, 779, 780, 781, 782,
- 783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
-
- 793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
- 803, 804, 805, 807, 808, 809, 810, 811, 799, 812,
- 814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
- 824, 825, 826, 827, 828, 829, 831, 832, 833, 834,
- 835, 836, 837, 838, 815, 839, 840, 814, 842, 843,
- 844, 845, 846, 847, 849, 850, 851, 846, 852, 853,
- 854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
- 864, 867, 868, 869, 871, 872, 873, 875, 876, 877,
- 863, 878, 879, 880, 881, 882, 883, 884, 885, 886,
- 887, 888, 889, 890, 891, 893, 894, 895, 896, 897,
-
- 898, 899, 900, 901, 902, 904, 903, 905, 846, 906,
- 907, 908, 909, 910, 911, 912, 913, 914, 916, 917,
- 918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
- 928, 929, 902, 903, 930, 931, 933, 934, 935, 936,
- 937, 938, 934, 939, 940, 941, 942, 943, 944, 945,
- 946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
- 956, 957, 959, 960, 961, 962, 963, 964, 965, 966,
- 967, 968, 969, 971, 974, 975, 976, 977, 978, 979,
- 935, 980, 981, 982, 983, 984, 985, 986, 987, 988,
- 989, 990, 991, 992, 993, 996, 997, 998, 999, 1000,
-
- 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 985,
- 1010, 1011, 1014, 1016, 1018, 986, 1019, 1020, 1021, 1022,
- 1023, 1024, 1025, 1027, 1028, 1029, 1031, 1032, 1033, 1034,
- 1037, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047,
- 1048, 1049, 1050, 1051, 1052, 1053, 1055, 1056, 1057, 1058,
- 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1067, 1068, 1069,
- 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1079, 1080,
- 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
- 1091, 1092, 1093, 1064, 1094, 1096, 1097, 1098, 1099, 1100,
- 1103, 1104, 1105, 1050, 1097, 1106, 1107, 1108, 1109, 1067,
-
- 1110, 1111, 1112, 1113, 1115, 1116, 1117, 1118, 1119, 1120,
- 1123, 1126, 1128, 1129, 1130, 1131, 1132, 1135, 1136, 1137,
- 1138, 1139, 1140, 1141, 1142, 1143, 1145, 1146, 1147, 1148,
- 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1157, 1160, 1132,
- 1162, 1163, 1164, 1165, 1167, 1168, 1169, 1170, 1171, 1172,
- 1175, 1176, 1178, 1179, 1180, 1181, 1182, 1184, 1185, 1186,
- 1187, 1189, 1191, 1192, 1193, 1194, 1195, 1196, 1197, 1198,
- 1200, 1201, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210,
- 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1191,
- 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228,
-
- 1229, 1230, 1232, 1234, 1235, 1236, 1239, 1240, 1243, 1244,
- 1246, 1247, 1248, 1249, 1250, 1246, 1251, 1252, 1253, 1254,
- 1256, 1257, 1260, 1261, 1262, 1263, 1265, 1266, 1267, 1268,
- 1269, 1270, 1271, 1236, 1272, 1273, 1274, 1211, 1275, 1276,
- 1277, 1279, 1280, 1282, 1283, 1285, 1286, 1287, 1288, 1289,
- 1291, 1292, 1293, 1295, 1296, 1297, 1298, 1299, 1300, 1301,
- 1302, 1303, 1304, 1305, 1306, 1307, 1309, 1310, 1312, 1315,
- 1316, 1317, 1318, 1319, 1321, 1322, 1323, 1324, 1325, 1326,
- 1328, 1330, 1331, 1332, 1333, 1334, 1335, 1336, 1337, 1338,
- 1340, 1341, 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1351,
-
- 1352, 1353, 1354, 1355, 1357, 1358, 1359, 1360, 1361, 1362,
- 1363, 1365, 1366, 1367, 1368, 1369, 1370, 1372, 1373, 1376,
- 1377, 1378, 1379, 1380, 1381, 1382, 1384, 1385, 1387, 1388,
- 1390, 1391, 1393, 1395, 1396, 1397, 1398, 1399, 1400, 1401,
- 1402, 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411,
+ 743, 417, 310, 310, 310, 310, 310, 310, 399, 431,
+ 441, 462, 527, 399, 528, 441, 584, 415, 494, 415,
+
+ 627, 462, 431, 494, 628, 310, 310, 310, 310, 310,
+ 310, 370, 529, 566, 566, 593, 616, 529, 670, 527,
+ 593, 670, 528, 744, 340, 723, 616, 628, 627, 340,
+ 416, 416, 416, 584, 632, 632, 707, 416, 416, 416,
+ 416, 416, 416, 707, 708, 746, 711, 747, 748, 749,
+ 750, 708, 711, 723, 751, 708, 752, 593, 753, 751,
+ 416, 416, 416, 416, 416, 416, 754, 755, 756, 757,
+ 758, 759, 760, 763, 764, 765, 766, 767, 770, 771,
+ 772, 773, 774, 775, 776, 773, 777, 778, 779, 781,
+ 782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
+
+ 792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
+ 802, 803, 804, 805, 806, 807, 808, 810, 811, 812,
+ 813, 814, 802, 815, 817, 818, 819, 820, 821, 822,
+ 823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
+ 834, 835, 836, 837, 838, 839, 840, 841, 818, 842,
+ 843, 817, 845, 846, 847, 848, 849, 850, 852, 853,
+ 854, 849, 855, 856, 857, 858, 859, 860, 861, 862,
+ 863, 864, 865, 866, 867, 868, 871, 872, 873, 875,
+ 876, 877, 879, 880, 881, 867, 882, 883, 884, 885,
+ 886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
+
+ 897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
+ 908, 907, 849, 909, 910, 911, 912, 913, 914, 915,
+ 916, 917, 918, 920, 921, 922, 923, 924, 925, 926,
+ 927, 928, 929, 930, 931, 932, 933, 906, 907, 934,
+ 935, 937, 938, 939, 940, 941, 942, 938, 943, 944,
+ 945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
+ 955, 956, 957, 958, 959, 960, 961, 962, 964, 965,
+ 966, 967, 968, 969, 970, 971, 972, 973, 974, 976,
+ 979, 980, 981, 982, 983, 939, 984, 985, 986, 987,
+ 988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
+
+ 998, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
+ 1010, 1011, 1012, 1013, 1014, 990, 1015, 1016, 1019, 1021,
+ 1023, 991, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
+ 1033, 1034, 1035, 1037, 1038, 1039, 1040, 1043, 1045, 1046,
+ 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056,
+ 1057, 1058, 1059, 1061, 1062, 1063, 1064, 1065, 1066, 1067,
+ 1068, 1069, 1070, 1071, 1073, 1074, 1075, 1076, 1077, 1078,
+ 1079, 1080, 1081, 1082, 1083, 1085, 1086, 1087, 1088, 1089,
+ 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099,
+ 1070, 1100, 1102, 1103, 1104, 1105, 1106, 1107, 1110, 1111,
+
+ 1056, 1103, 1112, 1113, 1114, 1115, 1073, 1116, 1117, 1118,
+ 1119, 1120, 1122, 1123, 1124, 1125, 1126, 1127, 1130, 1133,
+ 1135, 1136, 1137, 1138, 1139, 1142, 1143, 1144, 1145, 1146,
+ 1147, 1148, 1149, 1150, 1152, 1153, 1154, 1155, 1156, 1157,
+ 1158, 1159, 1160, 1161, 1162, 1164, 1167, 1139, 1169, 1170,
+ 1171, 1172, 1173, 1175, 1176, 1177, 1178, 1179, 1180, 1183,
+ 1184, 1186, 1187, 1188, 1189, 1190, 1192, 1193, 1194, 1195,
+ 1197, 1199, 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1208,
+ 1209, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1218,
+ 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1199, 1227,
+
+ 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237,
+ 1238, 1239, 1241, 1243, 1244, 1245, 1248, 1249, 1252, 1253,
+ 1255, 1256, 1257, 1258, 1259, 1255, 1260, 1261, 1262, 1263,
+ 1265, 1266, 1269, 1270, 1271, 1273, 1275, 1276, 1277, 1278,
+ 1279, 1280, 1281, 1245, 1282, 1283, 1219, 1284, 1285, 1286,
+ 1287, 1289, 1290, 1292, 1293, 1295, 1296, 1297, 1298, 1299,
+ 1301, 1302, 1303, 1305, 1306, 1307, 1308, 1309, 1310, 1311,
+ 1312, 1313, 1314, 1315, 1316, 1317, 1319, 1320, 1322, 1325,
+ 1326, 1327, 1328, 1329, 1331, 1332, 1333, 1334, 1335, 1336,
+ 1338, 1340, 1341, 1342, 1343, 1344, 1345, 1346, 1347, 1348,
+
+ 1350, 1351, 1352, 1353, 1354, 1355, 1356, 1357, 1358, 1361,
+ 1362, 1363, 1364, 1365, 1367, 1368, 1369, 1370, 1371, 1372,
+ 1373, 1375, 1376, 1377, 1378, 1379, 1380, 1382, 1383, 1386,
+ 1387, 1388, 1389, 1390, 1391, 1392, 1394, 1395, 1397, 1398,
+ 1400, 1401, 1403, 1405, 1406, 1407, 1408, 1409, 1410, 1411,
1412, 1413, 1414, 1415, 1416, 1417, 1418, 1419, 1420, 1421,
- 1423, 1426, 1427, 1428, 1429, 1430, 1431, 1435, 1436, 1437,
- 1438, 1440, 1441, 1443, 1444, 1445, 1446, 1447, 1449, 1450,
- 1453, 1453, 1453, 1453, 1453, 1454, 1454, 1454, 1454, 1454,
- 1455, 1461, 1455, 1455, 1455, 1456, 1462, 1456, 1463, 1456,
-
- 1457, 1457, 1457, 1457, 1457, 1458, 1458, 1458, 1458, 1458,
- 1459, 1464, 1459, 1459, 1459, 1460, 1460, 1460, 730, 729,
- 728, 727, 726, 725, 723, 722, 720, 718, 717, 716,
- 715, 714, 713, 712, 711, 708, 707, 704, 703, 702,
- 701, 700, 699, 698, 697, 696, 695, 694, 693, 692,
- 691, 690, 689, 688, 686, 685, 684, 683, 682, 681,
- 680, 679, 677, 676, 675, 674, 673, 672, 670, 668,
- 667, 666, 665, 664, 663, 662, 661, 660, 659, 658,
- 657, 656, 655, 654, 653, 652, 650, 649, 648, 647,
- 646, 645, 644, 643, 642, 641, 640, 639, 638, 637,
-
- 636, 635, 634, 633, 632, 630, 629, 628, 625, 624,
- 623, 620, 619, 618, 617, 616, 613, 612, 611, 610,
- 609, 608, 607, 606, 605, 604, 603, 602, 600, 599,
- 598, 597, 596, 595, 594, 593, 591, 590, 588, 587,
- 586, 585, 584, 582, 581, 580, 578, 577, 575, 574,
- 573, 572, 571, 570, 569, 568, 567, 565, 564, 563,
- 562, 561, 559, 558, 557, 556, 555, 554, 553, 552,
- 550, 549, 548, 547, 546, 545, 544, 543, 542, 541,
- 540, 539, 538, 537, 536, 535, 534, 533, 532, 531,
- 525, 523, 520, 519, 517, 516, 515, 513, 509, 508,
-
- 507, 506, 505, 504, 503, 502, 501, 500, 499, 498,
- 497, 496, 495, 493, 492, 491, 490, 489, 488, 487,
- 486, 485, 484, 483, 481, 479, 478, 477, 476, 475,
- 474, 473, 472, 471, 470, 469, 468, 466, 465, 464,
- 463, 462, 461, 460, 459, 458, 457, 456, 455, 454,
+ 1422, 1423, 1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431,
+ 1433, 1436, 1437, 1438, 1439, 1440, 1441, 1445, 1446, 1447,
+ 1448, 1450, 1451, 1453, 1454, 1455, 1456, 1457, 1459, 1460,
+ 1463, 1463, 1463, 1463, 1463, 1464, 1464, 1464, 1464, 1464,
+
+ 1465, 1471, 1465, 1465, 1465, 1466, 1472, 1466, 1473, 1466,
+ 1467, 1467, 1467, 1467, 1467, 1468, 1468, 1468, 1468, 1468,
+ 1469, 1474, 1469, 1469, 1469, 1470, 1470, 1470, 731, 730,
+ 729, 728, 727, 725, 724, 722, 720, 719, 718, 717,
+ 716, 715, 714, 713, 710, 709, 706, 705, 704, 703,
+ 702, 701, 700, 699, 698, 697, 696, 695, 694, 693,
+ 692, 691, 690, 688, 687, 686, 685, 684, 683, 682,
+ 681, 679, 678, 677, 676, 675, 674, 672, 671, 669,
+ 668, 667, 666, 665, 664, 663, 662, 661, 660, 659,
+ 658, 657, 656, 655, 654, 653, 651, 650, 649, 648,
+
+ 647, 646, 645, 644, 643, 642, 641, 640, 639, 638,
+ 637, 636, 635, 634, 633, 631, 630, 629, 626, 625,
+ 624, 621, 620, 619, 618, 617, 614, 613, 612, 611,
+ 610, 609, 608, 607, 606, 605, 604, 603, 601, 600,
+ 599, 598, 597, 596, 595, 594, 592, 591, 589, 588,
+ 587, 586, 585, 583, 582, 581, 579, 578, 576, 575,
+ 574, 573, 572, 571, 570, 569, 568, 567, 565, 564,
+ 563, 562, 561, 559, 558, 557, 556, 555, 554, 553,
+ 552, 550, 549, 548, 547, 546, 545, 544, 543, 542,
+ 541, 540, 539, 538, 537, 536, 535, 534, 533, 532,
+
+ 531, 525, 523, 520, 519, 517, 516, 515, 513, 509,
+ 508, 507, 506, 505, 504, 503, 502, 501, 500, 499,
+ 498, 497, 496, 495, 493, 492, 491, 490, 489, 488,
+ 487, 486, 485, 484, 483, 481, 479, 478, 477, 476,
+ 475, 474, 473, 472, 471, 470, 469, 468, 466, 465,
+ 464, 463, 461, 460, 459, 458, 457, 456, 455, 454,
453, 452, 451, 450, 449, 448, 447, 445, 444, 443,
442, 440, 439, 438, 437, 436, 435, 433, 432, 430,
429, 428, 426, 425, 424, 423, 422, 421, 419, 418,
413, 412, 410, 409, 408, 407, 406, 403, 400, 398,
- 397, 396, 395, 393, 392, 391, 390, 389, 388, 387,
+ 397, 396, 395, 393, 392, 391, 390, 389, 388, 387,
386, 385, 383, 382, 381, 379, 378, 377, 376, 375,
374, 372, 371, 369, 368, 367, 366, 365, 364, 363,
362, 361, 357, 356, 355, 354, 353, 351, 350, 349,
314, 313, 309, 307, 304, 302, 299, 296, 289, 288,
287, 286, 285, 284, 282, 281, 280, 279, 278, 277,
276, 275, 274, 273, 272, 271, 270, 268, 267, 266,
- 265, 264, 263, 262, 261, 260, 259, 258, 257, 256,
+ 265, 264, 263, 262, 261, 260, 259, 258, 257, 256,
255, 253, 252, 251, 249, 248, 247, 246, 244, 243,
242, 241, 240, 239, 238, 237, 236, 234, 233, 232,
231, 230, 229, 228, 227, 226, 225, 224, 223, 222,
169, 168, 167, 165, 163, 162, 161, 159, 158, 156,
155, 154, 153, 152, 150, 149, 148, 147, 145, 144,
143, 142, 141, 140, 139, 137, 136, 134, 133, 129,
- 128, 127, 125, 124, 123, 121, 120, 116, 110, 106,
+ 128, 127, 125, 124, 123, 121, 120, 116, 110, 106,
105, 104, 98, 97, 78, 73, 67, 50, 49, 48,
- 43, 41, 39, 38, 24, 14, 11, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452,
- 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452, 1452
+ 43, 41, 39, 38, 24, 14, 11, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
+ 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462
+
} ;
static yy_state_type yy_last_accepting_state;
extern int yy_flex_debug;
int yy_flex_debug = 1;
-static const flex_int16_t yy_rule_linenum[179] =
+static const flex_int16_t yy_rule_linenum[180] =
{ 0,
149, 151, 153, 158, 159, 164, 165, 166, 178, 181,
186, 193, 202, 211, 220, 229, 238, 247, 256, 265,
368, 378, 387, 397, 407, 417, 427, 436, 445, 454,
463, 472, 481, 490, 499, 508, 517, 527, 536, 549,
558, 567, 576, 585, 596, 607, 618, 629, 641, 652,
- 663, 674, 685, 696, 707, 718, 729, 740, 751, 762,
- 773, 784, 793, 802, 812, 821, 830, 845, 861, 870,
- 879, 888, 897, 906, 915, 924, 933, 942, 951, 973,
- 995, 1004, 1014, 1024, 1033, 1043, 1054, 1063, 1072, 1081,
-
- 1090, 1099, 1109, 1118, 1127, 1136, 1145, 1154, 1163, 1172,
- 1181, 1190, 1200, 1209, 1218, 1228, 1240, 1253, 1262, 1271,
- 1281, 1291, 1300, 1311, 1321, 1330, 1340, 1350, 1359, 1368,
- 1377, 1386, 1396, 1405, 1415, 1424, 1433, 1442, 1451, 1460,
+ 663, 674, 685, 696, 707, 718, 729, 740, 749, 760,
+ 771, 782, 793, 802, 811, 821, 830, 839, 854, 870,
+ 879, 888, 897, 906, 915, 924, 933, 942, 951, 960,
+ 982, 1004, 1013, 1023, 1033, 1042, 1052, 1063, 1072, 1081,
+
+ 1090, 1099, 1108, 1118, 1127, 1136, 1145, 1154, 1163, 1172,
+ 1181, 1190, 1199, 1209, 1218, 1227, 1237, 1249, 1262, 1271,
+ 1280, 1290, 1300, 1309, 1320, 1330, 1339, 1349, 1359, 1368,
+ 1377, 1386, 1395, 1405, 1414, 1424, 1433, 1442, 1451, 1460,
1469, 1478, 1487, 1496, 1505, 1514, 1523, 1532, 1541, 1550,
1559, 1568, 1577, 1586, 1595, 1604, 1613, 1622, 1631, 1640,
- 1650, 1749, 1754, 1759, 1764, 1765, 1766, 1767, 1768, 1769,
- 1771, 1789, 1802, 1807, 1811, 1813, 1815, 1817
+ 1649, 1659, 1758, 1763, 1768, 1773, 1774, 1775, 1776, 1777,
+ 1778, 1780, 1798, 1811, 1816, 1820, 1822, 1824, 1826
} ;
/* The intent behind this definition is that it'll catch
/* To avoid the call to exit... oops! */
#define YY_FATAL_ERROR(msg) isc::dhcp::Parser6Context::fatal(msg)
-#line 1742 "dhcp6_lexer.cc"
+#line 1750 "dhcp6_lexer.cc"
/* noyywrap disables automatic rewinding for the next file to parse. Since we
always parse only a single string, there's no need to do any wraps. And
using yywrap requires linking with -lfl, which provides the default yywrap
by moving it ahead by yyleng bytes. yyleng specifies the length of the
currently matched token. */
#define YY_USER_ACTION driver.loc_.columns(yyleng);
-#line 1768 "dhcp6_lexer.cc"
-#line 1769 "dhcp6_lexer.cc"
+#line 1776 "dhcp6_lexer.cc"
+#line 1777 "dhcp6_lexer.cc"
#define INITIAL 0
#define COMMENT 1
}
-#line 2101 "dhcp6_lexer.cc"
+#line 2109 "dhcp6_lexer.cc"
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 1453 )
+ if ( yy_current_state >= 1463 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
++yy_cp;
}
- while ( yy_current_state != 1452 );
+ while ( yy_current_state != 1462 );
yy_cp = (yy_last_accepting_cpos);
yy_current_state = (yy_last_accepting_state);
{
if ( yy_act == 0 )
fprintf( stderr, "--scanner backing up\n" );
- else if ( yy_act < 179 )
+ else if ( yy_act < 180 )
fprintf( stderr, "--accepting rule at line %ld (\"%s\")\n",
(long)yy_rule_linenum[yy_act], yytext );
- else if ( yy_act == 179 )
+ else if ( yy_act == 180 )
fprintf( stderr, "--accepting default rule (\"%s\")\n",
yytext );
- else if ( yy_act == 180 )
+ else if ( yy_act == 181 )
fprintf( stderr, "--(end of buffer or a NUL)\n" );
else
fprintf( stderr, "--EOF (start condition %d)\n", YY_START );
case 68:
YY_RULE_SETUP
#line 740 "dhcp6_lexer.ll"
+{
+ switch(driver.ctx_) {
+ case isc::dhcp::Parser6Context::LEASE_DATABASE:
+ return isc::dhcp::Dhcp6Parser::make_MAX_ROW_ERRORS(driver.loc_);
+ default:
+ return isc::dhcp::Dhcp6Parser::make_STRING("max_row_errors", driver.loc_);
+ }
+}
+ YY_BREAK
+case 69:
+YY_RULE_SETUP
+#line 749 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 69:
+case 70:
YY_RULE_SETUP
-#line 751 "dhcp6_lexer.ll"
+#line 760 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 70:
+case 71:
YY_RULE_SETUP
-#line 762 "dhcp6_lexer.ll"
+#line 771 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 71:
+case 72:
YY_RULE_SETUP
-#line 773 "dhcp6_lexer.ll"
+#line 782 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 72:
+case 73:
YY_RULE_SETUP
-#line 784 "dhcp6_lexer.ll"
+#line 793 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 73:
+case 74:
YY_RULE_SETUP
-#line 793 "dhcp6_lexer.ll"
+#line 802 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 74:
+case 75:
YY_RULE_SETUP
-#line 802 "dhcp6_lexer.ll"
+#line 811 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 75:
+case 76:
YY_RULE_SETUP
-#line 812 "dhcp6_lexer.ll"
+#line 821 "dhcp6_lexer.ll"
{
switch (driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 76:
+case 77:
YY_RULE_SETUP
-#line 821 "dhcp6_lexer.ll"
+#line 830 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 77:
+case 78:
YY_RULE_SETUP
-#line 830 "dhcp6_lexer.ll"
+#line 839 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 78:
+case 79:
YY_RULE_SETUP
-#line 845 "dhcp6_lexer.ll"
+#line 854 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::LEASE_DATABASE:
}
}
YY_BREAK
-case 79:
+case 80:
YY_RULE_SETUP
-#line 861 "dhcp6_lexer.ll"
+#line 870 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OPTION_DATA:
}
}
YY_BREAK
-case 80:
+case 81:
YY_RULE_SETUP
-#line 870 "dhcp6_lexer.ll"
+#line 879 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OPTION_DATA:
}
}
YY_BREAK
-case 81:
+case 82:
YY_RULE_SETUP
-#line 879 "dhcp6_lexer.ll"
+#line 888 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 82:
+case 83:
YY_RULE_SETUP
-#line 888 "dhcp6_lexer.ll"
+#line 897 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 83:
+case 84:
YY_RULE_SETUP
-#line 897 "dhcp6_lexer.ll"
+#line 906 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::PD_POOLS:
}
}
YY_BREAK
-case 84:
+case 85:
YY_RULE_SETUP
-#line 906 "dhcp6_lexer.ll"
+#line 915 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::PD_POOLS:
}
}
YY_BREAK
-case 85:
+case 86:
YY_RULE_SETUP
-#line 915 "dhcp6_lexer.ll"
+#line 924 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::PD_POOLS:
}
}
YY_BREAK
-case 86:
+case 87:
YY_RULE_SETUP
-#line 924 "dhcp6_lexer.ll"
+#line 933 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::PD_POOLS:
}
}
YY_BREAK
-case 87:
+case 88:
YY_RULE_SETUP
-#line 933 "dhcp6_lexer.ll"
+#line 942 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::PD_POOLS:
}
}
YY_BREAK
-case 88:
+case 89:
YY_RULE_SETUP
-#line 942 "dhcp6_lexer.ll"
+#line 951 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::POOLS:
}
}
YY_BREAK
-case 89:
+case 90:
YY_RULE_SETUP
-#line 951 "dhcp6_lexer.ll"
+#line 960 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 90:
+case 91:
YY_RULE_SETUP
-#line 973 "dhcp6_lexer.ll"
+#line 982 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 91:
+case 92:
YY_RULE_SETUP
-#line 995 "dhcp6_lexer.ll"
+#line 1004 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 92:
+case 93:
YY_RULE_SETUP
-#line 1004 "dhcp6_lexer.ll"
+#line 1013 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 93:
+case 94:
YY_RULE_SETUP
-#line 1014 "dhcp6_lexer.ll"
+#line 1023 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 94:
+case 95:
YY_RULE_SETUP
-#line 1024 "dhcp6_lexer.ll"
+#line 1033 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 95:
+case 96:
YY_RULE_SETUP
-#line 1033 "dhcp6_lexer.ll"
+#line 1042 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 96:
+case 97:
YY_RULE_SETUP
-#line 1043 "dhcp6_lexer.ll"
+#line 1052 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 97:
+case 98:
YY_RULE_SETUP
-#line 1054 "dhcp6_lexer.ll"
+#line 1063 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 98:
+case 99:
YY_RULE_SETUP
-#line 1063 "dhcp6_lexer.ll"
+#line 1072 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 99:
+case 100:
YY_RULE_SETUP
-#line 1072 "dhcp6_lexer.ll"
+#line 1081 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 100:
+case 101:
YY_RULE_SETUP
-#line 1081 "dhcp6_lexer.ll"
+#line 1090 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 101:
+case 102:
YY_RULE_SETUP
-#line 1090 "dhcp6_lexer.ll"
+#line 1099 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::RESERVATION_MODE:
}
}
YY_BREAK
-case 102:
+case 103:
YY_RULE_SETUP
-#line 1099 "dhcp6_lexer.ll"
+#line 1108 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OPTION_DEF:
}
}
YY_BREAK
-case 103:
+case 104:
YY_RULE_SETUP
-#line 1109 "dhcp6_lexer.ll"
+#line 1118 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 104:
+case 105:
YY_RULE_SETUP
-#line 1118 "dhcp6_lexer.ll"
+#line 1127 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 105:
+case 106:
YY_RULE_SETUP
-#line 1127 "dhcp6_lexer.ll"
+#line 1136 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 106:
+case 107:
YY_RULE_SETUP
-#line 1136 "dhcp6_lexer.ll"
+#line 1145 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::CONFIG:
}
}
YY_BREAK
-case 107:
+case 108:
YY_RULE_SETUP
-#line 1145 "dhcp6_lexer.ll"
+#line 1154 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::LOGGING:
}
}
YY_BREAK
-case 108:
+case 109:
YY_RULE_SETUP
-#line 1154 "dhcp6_lexer.ll"
+#line 1163 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::LOGGERS:
}
}
YY_BREAK
-case 109:
+case 110:
YY_RULE_SETUP
-#line 1163 "dhcp6_lexer.ll"
+#line 1172 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OUTPUT_OPTIONS:
}
}
YY_BREAK
-case 110:
+case 111:
YY_RULE_SETUP
-#line 1172 "dhcp6_lexer.ll"
+#line 1181 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OUTPUT_OPTIONS:
}
}
YY_BREAK
-case 111:
+case 112:
YY_RULE_SETUP
-#line 1181 "dhcp6_lexer.ll"
+#line 1190 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OUTPUT_OPTIONS:
}
}
YY_BREAK
-case 112:
+case 113:
YY_RULE_SETUP
-#line 1190 "dhcp6_lexer.ll"
+#line 1199 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OUTPUT_OPTIONS:
}
}
YY_BREAK
-case 113:
+case 114:
YY_RULE_SETUP
-#line 1200 "dhcp6_lexer.ll"
+#line 1209 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::LOGGERS:
}
}
YY_BREAK
-case 114:
+case 115:
YY_RULE_SETUP
-#line 1209 "dhcp6_lexer.ll"
+#line 1218 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::LOGGERS:
}
}
YY_BREAK
-case 115:
+case 116:
YY_RULE_SETUP
-#line 1218 "dhcp6_lexer.ll"
+#line 1227 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 116:
+case 117:
YY_RULE_SETUP
-#line 1228 "dhcp6_lexer.ll"
+#line 1237 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 117:
+case 118:
YY_RULE_SETUP
-#line 1240 "dhcp6_lexer.ll"
+#line 1249 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 118:
+case 119:
YY_RULE_SETUP
-#line 1253 "dhcp6_lexer.ll"
+#line 1262 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::CLIENT_CLASSES:
}
}
YY_BREAK
-case 119:
+case 120:
YY_RULE_SETUP
-#line 1262 "dhcp6_lexer.ll"
+#line 1271 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::CLIENT_CLASSES:
}
}
YY_BREAK
-case 120:
+case 121:
YY_RULE_SETUP
-#line 1271 "dhcp6_lexer.ll"
+#line 1280 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 121:
+case 122:
YY_RULE_SETUP
-#line 1281 "dhcp6_lexer.ll"
+#line 1290 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::RESERVATIONS:
}
}
YY_BREAK
-case 122:
+case 123:
YY_RULE_SETUP
-#line 1291 "dhcp6_lexer.ll"
+#line 1300 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::RESERVATIONS:
}
}
YY_BREAK
-case 123:
+case 124:
YY_RULE_SETUP
-#line 1300 "dhcp6_lexer.ll"
+#line 1309 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::MAC_SOURCES:
}
}
YY_BREAK
-case 124:
+case 125:
YY_RULE_SETUP
-#line 1311 "dhcp6_lexer.ll"
+#line 1320 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::HOST_RESERVATION_IDENTIFIERS:
}
}
YY_BREAK
-case 125:
+case 126:
YY_RULE_SETUP
-#line 1321 "dhcp6_lexer.ll"
+#line 1330 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::RESERVATIONS:
}
}
YY_BREAK
-case 126:
+case 127:
YY_RULE_SETUP
-#line 1330 "dhcp6_lexer.ll"
+#line 1339 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::HOST_RESERVATION_IDENTIFIERS:
}
}
YY_BREAK
-case 127:
+case 128:
YY_RULE_SETUP
-#line 1340 "dhcp6_lexer.ll"
+#line 1349 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OPTION_DEF:
}
}
YY_BREAK
-case 128:
+case 129:
YY_RULE_SETUP
-#line 1350 "dhcp6_lexer.ll"
+#line 1359 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OPTION_DATA:
}
}
YY_BREAK
-case 129:
+case 130:
YY_RULE_SETUP
-#line 1359 "dhcp6_lexer.ll"
+#line 1368 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OPTION_DEF:
}
}
YY_BREAK
-case 130:
+case 131:
YY_RULE_SETUP
-#line 1368 "dhcp6_lexer.ll"
+#line 1377 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OPTION_DEF:
}
}
YY_BREAK
-case 131:
+case 132:
YY_RULE_SETUP
-#line 1377 "dhcp6_lexer.ll"
+#line 1386 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::OPTION_DEF:
}
}
YY_BREAK
-case 132:
+case 133:
YY_RULE_SETUP
-#line 1386 "dhcp6_lexer.ll"
+#line 1395 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SUBNET6:
}
}
YY_BREAK
-case 133:
+case 134:
YY_RULE_SETUP
-#line 1396 "dhcp6_lexer.ll"
+#line 1405 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::RELAY:
}
}
YY_BREAK
-case 134:
+case 135:
YY_RULE_SETUP
-#line 1405 "dhcp6_lexer.ll"
+#line 1414 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 135:
+case 136:
YY_RULE_SETUP
-#line 1415 "dhcp6_lexer.ll"
+#line 1424 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::HOOKS_LIBRARIES:
}
}
YY_BREAK
-case 136:
+case 137:
YY_RULE_SETUP
-#line 1424 "dhcp6_lexer.ll"
+#line 1433 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::HOOKS_LIBRARIES:
}
}
YY_BREAK
-case 137:
+case 138:
YY_RULE_SETUP
-#line 1433 "dhcp6_lexer.ll"
+#line 1442 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 138:
+case 139:
YY_RULE_SETUP
-#line 1442 "dhcp6_lexer.ll"
+#line 1451 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DUID_TYPE:
}
}
YY_BREAK
-case 139:
+case 140:
YY_RULE_SETUP
-#line 1451 "dhcp6_lexer.ll"
+#line 1460 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DUID_TYPE:
}
}
YY_BREAK
-case 140:
+case 141:
YY_RULE_SETUP
-#line 1460 "dhcp6_lexer.ll"
+#line 1469 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DUID_TYPE:
}
}
YY_BREAK
-case 141:
+case 142:
YY_RULE_SETUP
-#line 1469 "dhcp6_lexer.ll"
+#line 1478 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SERVER_ID:
}
}
YY_BREAK
-case 142:
+case 143:
YY_RULE_SETUP
-#line 1478 "dhcp6_lexer.ll"
+#line 1487 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SERVER_ID:
}
}
YY_BREAK
-case 143:
+case 144:
YY_RULE_SETUP
-#line 1487 "dhcp6_lexer.ll"
+#line 1496 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SERVER_ID:
}
}
YY_BREAK
-case 144:
+case 145:
YY_RULE_SETUP
-#line 1496 "dhcp6_lexer.ll"
+#line 1505 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::SERVER_ID:
}
}
YY_BREAK
-case 145:
+case 146:
YY_RULE_SETUP
-#line 1505 "dhcp6_lexer.ll"
+#line 1514 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 146:
+case 147:
YY_RULE_SETUP
-#line 1514 "dhcp6_lexer.ll"
+#line 1523 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 147:
+case 148:
YY_RULE_SETUP
-#line 1523 "dhcp6_lexer.ll"
+#line 1532 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 148:
+case 149:
YY_RULE_SETUP
-#line 1532 "dhcp6_lexer.ll"
+#line 1541 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 149:
+case 150:
YY_RULE_SETUP
-#line 1541 "dhcp6_lexer.ll"
+#line 1550 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 150:
+case 151:
YY_RULE_SETUP
-#line 1550 "dhcp6_lexer.ll"
+#line 1559 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 151:
+case 152:
YY_RULE_SETUP
-#line 1559 "dhcp6_lexer.ll"
+#line 1568 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
}
}
YY_BREAK
-case 152:
+case 153:
YY_RULE_SETUP
-#line 1568 "dhcp6_lexer.ll"
+#line 1577 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 153:
+case 154:
YY_RULE_SETUP
-#line 1577 "dhcp6_lexer.ll"
+#line 1586 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 154:
+case 155:
YY_RULE_SETUP
-#line 1586 "dhcp6_lexer.ll"
+#line 1595 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::CONTROL_SOCKET:
}
}
YY_BREAK
-case 155:
+case 156:
YY_RULE_SETUP
-#line 1595 "dhcp6_lexer.ll"
+#line 1604 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::CONTROL_SOCKET:
}
}
YY_BREAK
-case 156:
+case 157:
YY_RULE_SETUP
-#line 1604 "dhcp6_lexer.ll"
+#line 1613 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 157:
+case 158:
YY_RULE_SETUP
-#line 1613 "dhcp6_lexer.ll"
+#line 1622 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
}
}
YY_BREAK
-case 158:
+case 159:
YY_RULE_SETUP
-#line 1622 "dhcp6_lexer.ll"
+#line 1631 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::CONFIG:
}
}
YY_BREAK
-case 159:
+case 160:
YY_RULE_SETUP
-#line 1631 "dhcp6_lexer.ll"
+#line 1640 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::CONFIG:
}
}
YY_BREAK
-case 160:
+case 161:
YY_RULE_SETUP
-#line 1640 "dhcp6_lexer.ll"
+#line 1649 "dhcp6_lexer.ll"
{
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::CONFIG:
}
}
YY_BREAK
-case 161:
+case 162:
YY_RULE_SETUP
-#line 1650 "dhcp6_lexer.ll"
+#line 1659 "dhcp6_lexer.ll"
{
/* A string has been matched. It contains the actual string and single quotes.
We need to get those quotes out of the way and just use its content, e.g.
return isc::dhcp::Dhcp6Parser::make_STRING(decoded, driver.loc_);
}
YY_BREAK
-case 162:
-/* rule 162 can match eol */
+case 163:
+/* rule 163 can match eol */
YY_RULE_SETUP
-#line 1749 "dhcp6_lexer.ll"
+#line 1758 "dhcp6_lexer.ll"
{
/* Bad string with a forbidden control character inside */
driver.error(driver.loc_, "Invalid control in " + std::string(yytext));
}
YY_BREAK
-case 163:
-/* rule 163 can match eol */
+case 164:
+/* rule 164 can match eol */
YY_RULE_SETUP
-#line 1754 "dhcp6_lexer.ll"
+#line 1763 "dhcp6_lexer.ll"
{
/* Bad string with a bad escape inside */
driver.error(driver.loc_, "Bad escape in " + std::string(yytext));
}
YY_BREAK
-case 164:
+case 165:
YY_RULE_SETUP
-#line 1759 "dhcp6_lexer.ll"
+#line 1768 "dhcp6_lexer.ll"
{
/* Bad string with an open escape at the end */
driver.error(driver.loc_, "Overflow escape in " + std::string(yytext));
}
YY_BREAK
-case 165:
+case 166:
YY_RULE_SETUP
-#line 1764 "dhcp6_lexer.ll"
+#line 1773 "dhcp6_lexer.ll"
{ return isc::dhcp::Dhcp6Parser::make_LSQUARE_BRACKET(driver.loc_); }
YY_BREAK
-case 166:
+case 167:
YY_RULE_SETUP
-#line 1765 "dhcp6_lexer.ll"
+#line 1774 "dhcp6_lexer.ll"
{ return isc::dhcp::Dhcp6Parser::make_RSQUARE_BRACKET(driver.loc_); }
YY_BREAK
-case 167:
+case 168:
YY_RULE_SETUP
-#line 1766 "dhcp6_lexer.ll"
+#line 1775 "dhcp6_lexer.ll"
{ return isc::dhcp::Dhcp6Parser::make_LCURLY_BRACKET(driver.loc_); }
YY_BREAK
-case 168:
+case 169:
YY_RULE_SETUP
-#line 1767 "dhcp6_lexer.ll"
+#line 1776 "dhcp6_lexer.ll"
{ return isc::dhcp::Dhcp6Parser::make_RCURLY_BRACKET(driver.loc_); }
YY_BREAK
-case 169:
+case 170:
YY_RULE_SETUP
-#line 1768 "dhcp6_lexer.ll"
+#line 1777 "dhcp6_lexer.ll"
{ return isc::dhcp::Dhcp6Parser::make_COMMA(driver.loc_); }
YY_BREAK
-case 170:
+case 171:
YY_RULE_SETUP
-#line 1769 "dhcp6_lexer.ll"
+#line 1778 "dhcp6_lexer.ll"
{ return isc::dhcp::Dhcp6Parser::make_COLON(driver.loc_); }
YY_BREAK
-case 171:
+case 172:
YY_RULE_SETUP
-#line 1771 "dhcp6_lexer.ll"
+#line 1780 "dhcp6_lexer.ll"
{
/* An integer was found. */
std::string tmp(yytext);
return isc::dhcp::Dhcp6Parser::make_INTEGER(integer, driver.loc_);
}
YY_BREAK
-case 172:
+case 173:
YY_RULE_SETUP
-#line 1789 "dhcp6_lexer.ll"
+#line 1798 "dhcp6_lexer.ll"
{
/* A floating point was found. */
std::string tmp(yytext);
return isc::dhcp::Dhcp6Parser::make_FLOAT(fp, driver.loc_);
}
YY_BREAK
-case 173:
+case 174:
YY_RULE_SETUP
-#line 1802 "dhcp6_lexer.ll"
+#line 1811 "dhcp6_lexer.ll"
{
string tmp(yytext);
return isc::dhcp::Dhcp6Parser::make_BOOLEAN(tmp == "true", driver.loc_);
}
YY_BREAK
-case 174:
+case 175:
YY_RULE_SETUP
-#line 1807 "dhcp6_lexer.ll"
+#line 1816 "dhcp6_lexer.ll"
{
return isc::dhcp::Dhcp6Parser::make_NULL_TYPE(driver.loc_);
}
YY_BREAK
-case 175:
+case 176:
YY_RULE_SETUP
-#line 1811 "dhcp6_lexer.ll"
+#line 1820 "dhcp6_lexer.ll"
driver.error (driver.loc_, "JSON true reserved keyword is lower case only");
YY_BREAK
-case 176:
+case 177:
YY_RULE_SETUP
-#line 1813 "dhcp6_lexer.ll"
+#line 1822 "dhcp6_lexer.ll"
driver.error (driver.loc_, "JSON false reserved keyword is lower case only");
YY_BREAK
-case 177:
+case 178:
YY_RULE_SETUP
-#line 1815 "dhcp6_lexer.ll"
+#line 1824 "dhcp6_lexer.ll"
driver.error (driver.loc_, "JSON null reserved keyword is lower case only");
YY_BREAK
-case 178:
+case 179:
YY_RULE_SETUP
-#line 1817 "dhcp6_lexer.ll"
+#line 1826 "dhcp6_lexer.ll"
driver.error (driver.loc_, "Invalid character: " + std::string(yytext));
YY_BREAK
case YY_STATE_EOF(INITIAL):
-#line 1819 "dhcp6_lexer.ll"
+#line 1828 "dhcp6_lexer.ll"
{
if (driver.states_.empty()) {
return isc::dhcp::Dhcp6Parser::make_END(driver.loc_);
BEGIN(DIR_EXIT);
}
YY_BREAK
-case 179:
+case 180:
YY_RULE_SETUP
-#line 1842 "dhcp6_lexer.ll"
+#line 1851 "dhcp6_lexer.ll"
ECHO;
YY_BREAK
-#line 4425 "dhcp6_lexer.cc"
+#line 4445 "dhcp6_lexer.cc"
case YY_END_OF_BUFFER:
{
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 1453 )
+ if ( yy_current_state >= 1463 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 1453 )
+ if ( yy_current_state >= 1463 )
yy_c = yy_meta[yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
- yy_is_jam = (yy_current_state == 1452);
+ yy_is_jam = (yy_current_state == 1462);
return yy_is_jam ? 0 : yy_current_state;
}
/* %ok-for-header */
-#line 1842 "dhcp6_lexer.ll"
+#line 1851 "dhcp6_lexer.ll"
using namespace isc::dhcp;
}
}
+\"max-row-errors\" {
+ switch(driver.ctx_) {
+ case isc::dhcp::Parser6Context::LEASE_DATABASE:
+ return isc::dhcp::Dhcp6Parser::make_MAX_ROW_ERRORS(driver.loc_);
+ default:
+ return isc::dhcp::Dhcp6Parser::make_STRING("max_row_errors", driver.loc_);
+ }
+}
+
\"preferred-lifetime\" {
switch(driver.ctx_) {
case isc::dhcp::Parser6Context::DHCP6:
{
switch (that.type_get ())
{
- case 191: // value
- case 195: // map_value
- case 247: // db_type
- case 336: // hr_mode
- case 472: // duid_type
- case 507: // ncr_protocol_value
- case 514: // replace_client_name_value
+ case 192: // value
+ case 196: // map_value
+ case 248: // db_type
+ case 338: // hr_mode
+ case 474: // duid_type
+ case 509: // ncr_protocol_value
+ case 516: // replace_client_name_value
value.YY_MOVE_OR_COPY< ElementPtr > (YY_MOVE (that.value));
break;
- case 173: // "boolean"
+ case 174: // "boolean"
value.YY_MOVE_OR_COPY< bool > (YY_MOVE (that.value));
break;
- case 172: // "floating point"
+ case 173: // "floating point"
value.YY_MOVE_OR_COPY< double > (YY_MOVE (that.value));
break;
- case 171: // "integer"
+ case 172: // "integer"
value.YY_MOVE_OR_COPY< int64_t > (YY_MOVE (that.value));
break;
- case 170: // "constant string"
+ case 171: // "constant string"
value.YY_MOVE_OR_COPY< std::string > (YY_MOVE (that.value));
break;
break;
}
-#if 201103L <= YY_CPLUSPLUS
+#if defined __cplusplus && 201103L <= __cplusplus
// that is emptied.
that.state = empty_state;
#endif
{
switch (that.type_get ())
{
- case 191: // value
- case 195: // map_value
- case 247: // db_type
- case 336: // hr_mode
- case 472: // duid_type
- case 507: // ncr_protocol_value
- case 514: // replace_client_name_value
+ case 192: // value
+ case 196: // map_value
+ case 248: // db_type
+ case 338: // hr_mode
+ case 474: // duid_type
+ case 509: // ncr_protocol_value
+ case 516: // replace_client_name_value
value.move< ElementPtr > (YY_MOVE (that.value));
break;
- case 173: // "boolean"
+ case 174: // "boolean"
value.move< bool > (YY_MOVE (that.value));
break;
- case 172: // "floating point"
+ case 173: // "floating point"
value.move< double > (YY_MOVE (that.value));
break;
- case 171: // "integer"
+ case 172: // "integer"
value.move< int64_t > (YY_MOVE (that.value));
break;
- case 170: // "constant string"
+ case 171: // "constant string"
value.move< std::string > (YY_MOVE (that.value));
break;
that.type = empty_symbol;
}
-#if YY_CPLUSPLUS < 201103L
+#if !defined __cplusplus || __cplusplus < 201103L
Dhcp6Parser::stack_symbol_type&
Dhcp6Parser::stack_symbol_type::operator= (stack_symbol_type& that)
{
state = that.state;
switch (that.type_get ())
{
- case 191: // value
- case 195: // map_value
- case 247: // db_type
- case 336: // hr_mode
- case 472: // duid_type
- case 507: // ncr_protocol_value
- case 514: // replace_client_name_value
+ case 192: // value
+ case 196: // map_value
+ case 248: // db_type
+ case 338: // hr_mode
+ case 474: // duid_type
+ case 509: // ncr_protocol_value
+ case 516: // replace_client_name_value
value.move< ElementPtr > (that.value);
break;
- case 173: // "boolean"
+ case 174: // "boolean"
value.move< bool > (that.value);
break;
- case 172: // "floating point"
+ case 173: // "floating point"
value.move< double > (that.value);
break;
- case 171: // "integer"
+ case 172: // "integer"
value.move< int64_t > (that.value);
break;
- case 170: // "constant string"
+ case 171: // "constant string"
value.move< std::string > (that.value);
break;
<< yysym.location << ": ";
switch (yytype)
{
- case 170: // "constant string"
+ case 171: // "constant string"
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< std::string > (); }
#line 398 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 171: // "integer"
+ case 172: // "integer"
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< int64_t > (); }
#line 405 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 172: // "floating point"
+ case 173: // "floating point"
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< double > (); }
#line 412 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 173: // "boolean"
+ case 174: // "boolean"
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< bool > (); }
#line 419 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 191: // value
+ case 192: // value
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 426 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 195: // map_value
+ case 196: // map_value
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 433 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 247: // db_type
+ case 248: // db_type
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 440 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 336: // hr_mode
+ case 338: // hr_mode
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 447 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 472: // duid_type
+ case 474: // duid_type
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 454 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 507: // ncr_protocol_value
+ case 509: // ncr_protocol_value
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 461 "dhcp6_parser.cc" // lalr1.cc:672
break;
- case 514: // replace_client_name_value
+ case 516: // replace_client_name_value
-#line 248 "dhcp6_parser.yy" // lalr1.cc:672
+#line 249 "dhcp6_parser.yy" // lalr1.cc:672
{ yyoutput << yysym.value.template as< ElementPtr > (); }
#line 468 "dhcp6_parser.cc" // lalr1.cc:672
break;
void
Dhcp6Parser::yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym)
{
-#if 201103L <= YY_CPLUSPLUS
+#if defined __cplusplus && 201103L <= __cplusplus
yypush_ (m, stack_symbol_type (s, std::move (sym)));
#else
stack_symbol_type ss (s, sym);
when using variants. */
switch (yyr1_[yyn])
{
- case 191: // value
- case 195: // map_value
- case 247: // db_type
- case 336: // hr_mode
- case 472: // duid_type
- case 507: // ncr_protocol_value
- case 514: // replace_client_name_value
+ case 192: // value
+ case 196: // map_value
+ case 248: // db_type
+ case 338: // hr_mode
+ case 474: // duid_type
+ case 509: // ncr_protocol_value
+ case 516: // replace_client_name_value
yylhs.value.emplace< ElementPtr > ();
break;
- case 173: // "boolean"
+ case 174: // "boolean"
yylhs.value.emplace< bool > ();
break;
- case 172: // "floating point"
+ case 173: // "floating point"
yylhs.value.emplace< double > ();
break;
- case 171: // "integer"
+ case 172: // "integer"
yylhs.value.emplace< int64_t > ();
break;
- case 170: // "constant string"
+ case 171: // "constant string"
yylhs.value.emplace< std::string > ();
break;
switch (yyn)
{
case 2:
-#line 257 "dhcp6_parser.yy" // lalr1.cc:907
+#line 258 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.NO_KEYWORD; }
#line 727 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 4:
-#line 258 "dhcp6_parser.yy" // lalr1.cc:907
+#line 259 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.CONFIG; }
#line 733 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 6:
-#line 259 "dhcp6_parser.yy" // lalr1.cc:907
+#line 260 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.DHCP6; }
#line 739 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 8:
-#line 260 "dhcp6_parser.yy" // lalr1.cc:907
+#line 261 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.INTERFACES_CONFIG; }
#line 745 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 10:
-#line 261 "dhcp6_parser.yy" // lalr1.cc:907
+#line 262 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.SUBNET6; }
#line 751 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 12:
-#line 262 "dhcp6_parser.yy" // lalr1.cc:907
+#line 263 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.POOLS; }
#line 757 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 14:
-#line 263 "dhcp6_parser.yy" // lalr1.cc:907
+#line 264 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.PD_POOLS; }
#line 763 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 16:
-#line 264 "dhcp6_parser.yy" // lalr1.cc:907
+#line 265 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.RESERVATIONS; }
#line 769 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 18:
-#line 265 "dhcp6_parser.yy" // lalr1.cc:907
+#line 266 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.DHCP6; }
#line 775 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 20:
-#line 266 "dhcp6_parser.yy" // lalr1.cc:907
+#line 267 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.OPTION_DEF; }
#line 781 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 22:
-#line 267 "dhcp6_parser.yy" // lalr1.cc:907
+#line 268 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.OPTION_DATA; }
#line 787 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 24:
-#line 268 "dhcp6_parser.yy" // lalr1.cc:907
+#line 269 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.HOOKS_LIBRARIES; }
#line 793 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 26:
-#line 269 "dhcp6_parser.yy" // lalr1.cc:907
+#line 270 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.DHCP_DDNS; }
#line 799 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 28:
-#line 270 "dhcp6_parser.yy" // lalr1.cc:907
+#line 271 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.LOGGING; }
#line 805 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 30:
-#line 271 "dhcp6_parser.yy" // lalr1.cc:907
+#line 272 "dhcp6_parser.yy" // lalr1.cc:907
{ ctx.ctx_ = ctx.CONFIG_CONTROL; }
#line 811 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 32:
-#line 279 "dhcp6_parser.yy" // lalr1.cc:907
+#line 280 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location))); }
#line 817 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 33:
-#line 280 "dhcp6_parser.yy" // lalr1.cc:907
+#line 281 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new DoubleElement(yystack_[0].value.as< double > (), ctx.loc2pos(yystack_[0].location))); }
#line 823 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 34:
-#line 281 "dhcp6_parser.yy" // lalr1.cc:907
+#line 282 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location))); }
#line 829 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 35:
-#line 282 "dhcp6_parser.yy" // lalr1.cc:907
+#line 283 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location))); }
#line 835 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 36:
-#line 283 "dhcp6_parser.yy" // lalr1.cc:907
+#line 284 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new NullElement(ctx.loc2pos(yystack_[0].location))); }
#line 841 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 37:
-#line 284 "dhcp6_parser.yy" // lalr1.cc:907
+#line 285 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ctx.stack_.back(); ctx.stack_.pop_back(); }
#line 847 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 38:
-#line 285 "dhcp6_parser.yy" // lalr1.cc:907
+#line 286 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ctx.stack_.back(); ctx.stack_.pop_back(); }
#line 853 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 39:
-#line 288 "dhcp6_parser.yy" // lalr1.cc:907
+#line 289 "dhcp6_parser.yy" // lalr1.cc:907
{
// Push back the JSON value on the stack
ctx.stack_.push_back(yystack_[0].value.as< ElementPtr > ());
break;
case 40:
-#line 293 "dhcp6_parser.yy" // lalr1.cc:907
+#line 294 "dhcp6_parser.yy" // lalr1.cc:907
{
// This code is executed when we're about to start parsing
// the content of the map
break;
case 41:
-#line 298 "dhcp6_parser.yy" // lalr1.cc:907
+#line 299 "dhcp6_parser.yy" // lalr1.cc:907
{
// map parsing completed. If we ever want to do any wrap up
// (maybe some sanity checking), this would be the best place
break;
case 42:
-#line 304 "dhcp6_parser.yy" // lalr1.cc:907
+#line 305 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ctx.stack_.back(); ctx.stack_.pop_back(); }
#line 889 "dhcp6_parser.cc" // lalr1.cc:907
break;
case 45:
-#line 311 "dhcp6_parser.yy" // lalr1.cc:907
+#line 312 "dhcp6_parser.yy" // lalr1.cc:907
{
// map containing a single entry
ctx.stack_.back()->set(yystack_[2].value.as< std::string > (), yystack_[0].value.as< ElementPtr > ());
break;
case 46:
-#line 315 "dhcp6_parser.yy" // lalr1.cc:907
+#line 316 "dhcp6_parser.yy" // lalr1.cc:907
{
// map consisting of a shorter map followed by
// comma and string:value
break;
case 47:
-#line 322 "dhcp6_parser.yy" // lalr1.cc:907
+#line 323 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(l);
break;
case 48:
-#line 325 "dhcp6_parser.yy" // lalr1.cc:907
+#line 326 "dhcp6_parser.yy" // lalr1.cc:907
{
// list parsing complete. Put any sanity checking here
}
break;
case 51:
-#line 333 "dhcp6_parser.yy" // lalr1.cc:907
+#line 334 "dhcp6_parser.yy" // lalr1.cc:907
{
// List consisting of a single element.
ctx.stack_.back()->add(yystack_[0].value.as< ElementPtr > ());
break;
case 52:
-#line 337 "dhcp6_parser.yy" // lalr1.cc:907
+#line 338 "dhcp6_parser.yy" // lalr1.cc:907
{
// List ending with , and a value.
ctx.stack_.back()->add(yystack_[0].value.as< ElementPtr > ());
break;
case 53:
-#line 344 "dhcp6_parser.yy" // lalr1.cc:907
+#line 345 "dhcp6_parser.yy" // lalr1.cc:907
{
// List parsing about to start
}
break;
case 54:
-#line 346 "dhcp6_parser.yy" // lalr1.cc:907
+#line 347 "dhcp6_parser.yy" // lalr1.cc:907
{
// list parsing complete. Put any sanity checking here
//ctx.stack_.pop_back();
break;
case 57:
-#line 355 "dhcp6_parser.yy" // lalr1.cc:907
+#line 356 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(s);
break;
case 58:
-#line 359 "dhcp6_parser.yy" // lalr1.cc:907
+#line 360 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(s);
break;
case 59:
-#line 370 "dhcp6_parser.yy" // lalr1.cc:907
+#line 371 "dhcp6_parser.yy" // lalr1.cc:907
{
const std::string& where = ctx.contextName();
const std::string& keyword = yystack_[1].value.as< std::string > ();
break;
case 60:
-#line 380 "dhcp6_parser.yy" // lalr1.cc:907
+#line 381 "dhcp6_parser.yy" // lalr1.cc:907
{
// This code is executed when we're about to start parsing
// the content of the map
break;
case 61:
-#line 385 "dhcp6_parser.yy" // lalr1.cc:907
+#line 386 "dhcp6_parser.yy" // lalr1.cc:907
{
// map parsing completed. If we ever want to do any wrap up
// (maybe some sanity checking), this would be the best place
break;
case 70:
-#line 408 "dhcp6_parser.yy" // lalr1.cc:907
+#line 409 "dhcp6_parser.yy" // lalr1.cc:907
{
// This code is executed when we're about to start parsing
// the content of the map
break;
case 71:
-#line 415 "dhcp6_parser.yy" // lalr1.cc:907
+#line 416 "dhcp6_parser.yy" // lalr1.cc:907
{
// No global parameter is required
ctx.stack_.pop_back();
break;
case 72:
-#line 423 "dhcp6_parser.yy" // lalr1.cc:907
+#line 424 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the Dhcp6 map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
break;
case 73:
-#line 427 "dhcp6_parser.yy" // lalr1.cc:907
+#line 428 "dhcp6_parser.yy" // lalr1.cc:907
{
// No global parameter is required
// parsing completed
break;
case 108:
-#line 472 "dhcp6_parser.yy" // lalr1.cc:907
+#line 473 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("preferred-lifetime", prf);
break;
case 109:
-#line 477 "dhcp6_parser.yy" // lalr1.cc:907
+#line 478 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("valid-lifetime", prf);
break;
case 110:
-#line 482 "dhcp6_parser.yy" // lalr1.cc:907
+#line 483 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("renew-timer", prf);
break;
case 111:
-#line 487 "dhcp6_parser.yy" // lalr1.cc:907
+#line 488 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("rebind-timer", prf);
break;
case 112:
-#line 492 "dhcp6_parser.yy" // lalr1.cc:907
+#line 493 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr dpp(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("decline-probation-period", dpp);
break;
case 113:
-#line 497 "dhcp6_parser.yy" // lalr1.cc:907
+#line 498 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
break;
case 114:
-#line 499 "dhcp6_parser.yy" // lalr1.cc:907
+#line 500 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr stag(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("server-tag", stag);
break;
case 115:
-#line 505 "dhcp6_parser.yy" // lalr1.cc:907
+#line 506 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("interfaces-config", i);
break;
case 116:
-#line 510 "dhcp6_parser.yy" // lalr1.cc:907
+#line 511 "dhcp6_parser.yy" // lalr1.cc:907
{
// No interfaces config param is required
ctx.stack_.pop_back();
break;
case 117:
-#line 516 "dhcp6_parser.yy" // lalr1.cc:907
+#line 517 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the interfaces-config map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
break;
case 118:
-#line 520 "dhcp6_parser.yy" // lalr1.cc:907
+#line 521 "dhcp6_parser.yy" // lalr1.cc:907
{
// No interfaces config param is required
// parsing completed
break;
case 126:
-#line 536 "dhcp6_parser.yy" // lalr1.cc:907
+#line 537 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("interfaces", l);
break;
case 127:
-#line 541 "dhcp6_parser.yy" // lalr1.cc:907
+#line 542 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
break;
case 128:
-#line 546 "dhcp6_parser.yy" // lalr1.cc:907
+#line 547 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("re-detect", b);
break;
case 129:
-#line 552 "dhcp6_parser.yy" // lalr1.cc:907
+#line 553 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("lease-database", i);
break;
case 130:
-#line 557 "dhcp6_parser.yy" // lalr1.cc:907
+#line 558 "dhcp6_parser.yy" // lalr1.cc:907
{
// The type parameter is required
ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
break;
case 131:
-#line 564 "dhcp6_parser.yy" // lalr1.cc:907
+#line 565 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hosts-database", i);
break;
case 132:
-#line 569 "dhcp6_parser.yy" // lalr1.cc:907
+#line 570 "dhcp6_parser.yy" // lalr1.cc:907
{
// The type parameter is required
ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
break;
case 133:
-#line 576 "dhcp6_parser.yy" // lalr1.cc:907
+#line 577 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hosts-databases", l);
break;
case 134:
-#line 581 "dhcp6_parser.yy" // lalr1.cc:907
+#line 582 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
break;
case 139:
-#line 594 "dhcp6_parser.yy" // lalr1.cc:907
+#line 595 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
break;
case 140:
-#line 598 "dhcp6_parser.yy" // lalr1.cc:907
+#line 599 "dhcp6_parser.yy" // lalr1.cc:907
{
// The type parameter is required
ctx.require("type", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
#line 1271 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 161:
-#line 628 "dhcp6_parser.yy" // lalr1.cc:907
+ case 162:
+#line 630 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.DATABASE_TYPE);
}
#line 1279 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 162:
-#line 630 "dhcp6_parser.yy" // lalr1.cc:907
+ case 163:
+#line 632 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("type", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
#line 1288 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 163:
-#line 635 "dhcp6_parser.yy" // lalr1.cc:907
+ case 164:
+#line 637 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("memfile", ctx.loc2pos(yystack_[0].location))); }
#line 1294 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 164:
-#line 636 "dhcp6_parser.yy" // lalr1.cc:907
+ case 165:
+#line 638 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("mysql", ctx.loc2pos(yystack_[0].location))); }
#line 1300 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 165:
-#line 637 "dhcp6_parser.yy" // lalr1.cc:907
+ case 166:
+#line 639 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("postgresql", ctx.loc2pos(yystack_[0].location))); }
#line 1306 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 166:
-#line 638 "dhcp6_parser.yy" // lalr1.cc:907
+ case 167:
+#line 640 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("cql", ctx.loc2pos(yystack_[0].location))); }
#line 1312 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 167:
-#line 641 "dhcp6_parser.yy" // lalr1.cc:907
+ case 168:
+#line 643 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1320 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 168:
-#line 643 "dhcp6_parser.yy" // lalr1.cc:907
+ case 169:
+#line 645 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr user(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("user", user);
#line 1330 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 169:
-#line 649 "dhcp6_parser.yy" // lalr1.cc:907
+ case 170:
+#line 651 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1338 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 170:
-#line 651 "dhcp6_parser.yy" // lalr1.cc:907
+ case 171:
+#line 653 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr pwd(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("password", pwd);
#line 1348 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 171:
-#line 657 "dhcp6_parser.yy" // lalr1.cc:907
+ case 172:
+#line 659 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1356 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 172:
-#line 659 "dhcp6_parser.yy" // lalr1.cc:907
+ case 173:
+#line 661 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr h(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("host", h);
#line 1366 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 173:
-#line 665 "dhcp6_parser.yy" // lalr1.cc:907
+ case 174:
+#line 667 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr p(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("port", p);
#line 1375 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 174:
-#line 670 "dhcp6_parser.yy" // lalr1.cc:907
+ case 175:
+#line 672 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1383 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 175:
-#line 672 "dhcp6_parser.yy" // lalr1.cc:907
+ case 176:
+#line 674 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr name(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("name", name);
#line 1393 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 176:
-#line 678 "dhcp6_parser.yy" // lalr1.cc:907
+ case 177:
+#line 680 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr n(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("persist", n);
#line 1402 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 177:
-#line 683 "dhcp6_parser.yy" // lalr1.cc:907
+ case 178:
+#line 685 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("lfc-interval", n);
#line 1411 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 178:
-#line 688 "dhcp6_parser.yy" // lalr1.cc:907
+ case 179:
+#line 690 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr n(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("readonly", n);
#line 1420 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 179:
-#line 693 "dhcp6_parser.yy" // lalr1.cc:907
+ case 180:
+#line 695 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("connect-timeout", n);
#line 1429 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 180:
-#line 698 "dhcp6_parser.yy" // lalr1.cc:907
+ case 181:
+#line 700 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("reconnect-wait-time", n);
#line 1438 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 181:
-#line 703 "dhcp6_parser.yy" // lalr1.cc:907
+ case 182:
+#line 705 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("request-timeout", n);
#line 1447 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 182:
-#line 708 "dhcp6_parser.yy" // lalr1.cc:907
+ case 183:
+#line 710 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("tcp-keepalive", n);
#line 1456 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 183:
-#line 713 "dhcp6_parser.yy" // lalr1.cc:907
+ case 184:
+#line 715 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr n(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("tcp-nodelay", n);
#line 1465 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 184:
-#line 718 "dhcp6_parser.yy" // lalr1.cc:907
+ case 185:
+#line 720 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1473 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 185:
-#line 720 "dhcp6_parser.yy" // lalr1.cc:907
+ case 186:
+#line 722 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr cp(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("contact-points", cp);
#line 1483 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 186:
-#line 726 "dhcp6_parser.yy" // lalr1.cc:907
+ case 187:
+#line 728 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("max-reconnect-tries", n);
#line 1492 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 187:
-#line 731 "dhcp6_parser.yy" // lalr1.cc:907
+ case 188:
+#line 733 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
#line 1500 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 188:
-#line 733 "dhcp6_parser.yy" // lalr1.cc:907
+ case 189:
+#line 735 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr ks(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("keyspace", ks);
#line 1510 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 189:
-#line 739 "dhcp6_parser.yy" // lalr1.cc:907
+ case 190:
+#line 741 "dhcp6_parser.yy" // lalr1.cc:907
+ {
+ ElementPtr n(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
+ ctx.stack_.back()->set("max-row-errors", n);
+}
+#line 1519 "dhcp6_parser.cc" // lalr1.cc:907
+ break;
+
+ case 191:
+#line 746 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("sanity-checks", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.SANITY_CHECKS);
}
-#line 1521 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1530 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 190:
-#line 744 "dhcp6_parser.yy" // lalr1.cc:907
+ case 192:
+#line 751 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1530 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1539 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 194:
-#line 754 "dhcp6_parser.yy" // lalr1.cc:907
+ case 196:
+#line 761 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1538 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1547 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 195:
-#line 756 "dhcp6_parser.yy" // lalr1.cc:907
+ case 197:
+#line 763 "dhcp6_parser.yy" // lalr1.cc:907
{
if ( (string(yystack_[0].value.as< std::string > ()) == "none") ||
", supported values are: none, warn, fix, fix-del, del");
}
}
-#line 1558 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1567 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 196:
-#line 772 "dhcp6_parser.yy" // lalr1.cc:907
+ case 198:
+#line 779 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("mac-sources", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.MAC_SOURCES);
}
-#line 1569 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1578 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 197:
-#line 777 "dhcp6_parser.yy" // lalr1.cc:907
+ case 199:
+#line 784 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1578 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1587 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 202:
-#line 790 "dhcp6_parser.yy" // lalr1.cc:907
+ case 204:
+#line 797 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr duid(new StringElement("duid", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(duid);
}
-#line 1587 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1596 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 203:
-#line 795 "dhcp6_parser.yy" // lalr1.cc:907
+ case 205:
+#line 802 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr duid(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(duid);
}
-#line 1596 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1605 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 204:
-#line 800 "dhcp6_parser.yy" // lalr1.cc:907
+ case 206:
+#line 807 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("host-reservation-identifiers", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.HOST_RESERVATION_IDENTIFIERS);
}
-#line 1607 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1616 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 205:
-#line 805 "dhcp6_parser.yy" // lalr1.cc:907
+ case 207:
+#line 812 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1616 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1625 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 211:
-#line 819 "dhcp6_parser.yy" // lalr1.cc:907
+ case 213:
+#line 826 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr hwaddr(new StringElement("hw-address", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(hwaddr);
}
-#line 1625 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1634 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 212:
-#line 824 "dhcp6_parser.yy" // lalr1.cc:907
+ case 214:
+#line 831 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr flex_id(new StringElement("flex-id", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(flex_id);
}
-#line 1634 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1643 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 213:
-#line 831 "dhcp6_parser.yy" // lalr1.cc:907
+ case 215:
+#line 838 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("relay-supplied-options", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1645 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1654 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 214:
-#line 836 "dhcp6_parser.yy" // lalr1.cc:907
+ case 216:
+#line 843 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1654 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1663 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 215:
-#line 841 "dhcp6_parser.yy" // lalr1.cc:907
+ case 217:
+#line 848 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hooks-libraries", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.HOOKS_LIBRARIES);
}
-#line 1665 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1674 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 216:
-#line 846 "dhcp6_parser.yy" // lalr1.cc:907
+ case 218:
+#line 853 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1674 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1683 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 221:
-#line 859 "dhcp6_parser.yy" // lalr1.cc:907
+ case 223:
+#line 866 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 1684 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1693 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 222:
-#line 863 "dhcp6_parser.yy" // lalr1.cc:907
+ case 224:
+#line 870 "dhcp6_parser.yy" // lalr1.cc:907
{
// The library hooks parameter is required
ctx.require("library", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 1694 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1703 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 223:
-#line 869 "dhcp6_parser.yy" // lalr1.cc:907
+ case 225:
+#line 876 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the hooks-libraries list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 1704 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1713 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 224:
-#line 873 "dhcp6_parser.yy" // lalr1.cc:907
+ case 226:
+#line 880 "dhcp6_parser.yy" // lalr1.cc:907
{
// The library hooks parameter is required
ctx.require("library", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 1714 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1723 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 230:
-#line 888 "dhcp6_parser.yy" // lalr1.cc:907
+ case 232:
+#line 895 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1722 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1731 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 231:
-#line 890 "dhcp6_parser.yy" // lalr1.cc:907
+ case 233:
+#line 897 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr lib(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("library", lib);
ctx.leave();
}
-#line 1732 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1741 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 232:
-#line 896 "dhcp6_parser.yy" // lalr1.cc:907
+ case 234:
+#line 903 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1740 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1749 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 233:
-#line 898 "dhcp6_parser.yy" // lalr1.cc:907
+ case 235:
+#line 905 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("parameters", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 1749 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1758 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 234:
-#line 904 "dhcp6_parser.yy" // lalr1.cc:907
+ case 236:
+#line 911 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("expired-leases-processing", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.EXPIRED_LEASES_PROCESSING);
}
-#line 1760 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1769 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 235:
-#line 909 "dhcp6_parser.yy" // lalr1.cc:907
+ case 237:
+#line 916 "dhcp6_parser.yy" // lalr1.cc:907
{
// No expired lease parameter is required
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1770 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1779 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 244:
-#line 927 "dhcp6_parser.yy" // lalr1.cc:907
+ case 246:
+#line 934 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("reclaim-timer-wait-time", value);
}
-#line 1779 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1788 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 245:
-#line 932 "dhcp6_parser.yy" // lalr1.cc:907
+ case 247:
+#line 939 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("flush-reclaimed-timer-wait-time", value);
}
-#line 1788 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1797 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 246:
-#line 937 "dhcp6_parser.yy" // lalr1.cc:907
+ case 248:
+#line 944 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hold-reclaimed-time", value);
}
-#line 1797 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1806 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 247:
-#line 942 "dhcp6_parser.yy" // lalr1.cc:907
+ case 249:
+#line 949 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("max-reclaim-leases", value);
}
-#line 1806 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1815 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 248:
-#line 947 "dhcp6_parser.yy" // lalr1.cc:907
+ case 250:
+#line 954 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("max-reclaim-time", value);
}
-#line 1815 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1824 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 249:
-#line 952 "dhcp6_parser.yy" // lalr1.cc:907
+ case 251:
+#line 959 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr value(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("unwarned-reclaim-cycles", value);
}
-#line 1824 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1833 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 250:
-#line 960 "dhcp6_parser.yy" // lalr1.cc:907
+ case 252:
+#line 967 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("subnet6", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.SUBNET6);
}
-#line 1835 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1844 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 251:
-#line 965 "dhcp6_parser.yy" // lalr1.cc:907
+ case 253:
+#line 972 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1844 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1853 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 256:
-#line 985 "dhcp6_parser.yy" // lalr1.cc:907
+ case 258:
+#line 992 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 1854 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1863 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 257:
-#line 989 "dhcp6_parser.yy" // lalr1.cc:907
+ case 259:
+#line 996 "dhcp6_parser.yy" // lalr1.cc:907
{
// Once we reached this place, the subnet parsing is now complete.
// If we want to, we can implement default values here.
ctx.require("subnet", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 1880 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1889 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 258:
-#line 1011 "dhcp6_parser.yy" // lalr1.cc:907
+ case 260:
+#line 1018 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the subnet6 list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 1890 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1899 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 259:
-#line 1015 "dhcp6_parser.yy" // lalr1.cc:907
+ case 261:
+#line 1022 "dhcp6_parser.yy" // lalr1.cc:907
{
// The subnet subnet6 parameter is required
ctx.require("subnet", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 1900 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1909 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 282:
-#line 1049 "dhcp6_parser.yy" // lalr1.cc:907
+ case 284:
+#line 1056 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1908 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1917 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 283:
-#line 1051 "dhcp6_parser.yy" // lalr1.cc:907
+ case 285:
+#line 1058 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr subnet(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("subnet", subnet);
ctx.leave();
}
-#line 1918 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1927 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 284:
-#line 1057 "dhcp6_parser.yy" // lalr1.cc:907
+ case 286:
+#line 1064 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1926 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1935 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 285:
-#line 1059 "dhcp6_parser.yy" // lalr1.cc:907
+ case 287:
+#line 1066 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr iface(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("interface", iface);
ctx.leave();
}
-#line 1936 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1945 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 286:
-#line 1065 "dhcp6_parser.yy" // lalr1.cc:907
+ case 288:
+#line 1072 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1944 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1953 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 287:
-#line 1067 "dhcp6_parser.yy" // lalr1.cc:907
+ case 289:
+#line 1074 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr iface(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("interface-id", iface);
ctx.leave();
}
-#line 1954 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1963 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 288:
-#line 1073 "dhcp6_parser.yy" // lalr1.cc:907
+ case 290:
+#line 1080 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1962 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1971 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 289:
-#line 1075 "dhcp6_parser.yy" // lalr1.cc:907
+ case 291:
+#line 1082 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr cls(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("client-class", cls);
ctx.leave();
}
-#line 1972 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1981 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 290:
-#line 1081 "dhcp6_parser.yy" // lalr1.cc:907
+ case 292:
+#line 1088 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("require-client-classes", c);
ctx.stack_.push_back(c);
ctx.enter(ctx.NO_KEYWORD);
}
-#line 1983 "dhcp6_parser.cc" // lalr1.cc:907
+#line 1992 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 291:
-#line 1086 "dhcp6_parser.yy" // lalr1.cc:907
+ case 293:
+#line 1093 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 1992 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2001 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 292:
-#line 1091 "dhcp6_parser.yy" // lalr1.cc:907
+ case 294:
+#line 1098 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.RESERVATION_MODE);
}
-#line 2000 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2009 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 293:
-#line 1093 "dhcp6_parser.yy" // lalr1.cc:907
+ case 295:
+#line 1100 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("reservation-mode", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 2009 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2018 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 294:
-#line 1098 "dhcp6_parser.yy" // lalr1.cc:907
+ case 296:
+#line 1105 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("disabled", ctx.loc2pos(yystack_[0].location))); }
-#line 2015 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2024 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 295:
-#line 1099 "dhcp6_parser.yy" // lalr1.cc:907
+ case 297:
+#line 1106 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("out-of-pool", ctx.loc2pos(yystack_[0].location))); }
-#line 2021 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2030 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 296:
-#line 1100 "dhcp6_parser.yy" // lalr1.cc:907
+ case 298:
+#line 1107 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("global", ctx.loc2pos(yystack_[0].location))); }
-#line 2027 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2036 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 297:
-#line 1101 "dhcp6_parser.yy" // lalr1.cc:907
+ case 299:
+#line 1108 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("all", ctx.loc2pos(yystack_[0].location))); }
-#line 2033 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2042 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 298:
-#line 1104 "dhcp6_parser.yy" // lalr1.cc:907
+ case 300:
+#line 1111 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr id(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("id", id);
}
-#line 2042 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2051 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 299:
-#line 1109 "dhcp6_parser.yy" // lalr1.cc:907
+ case 301:
+#line 1116 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr rc(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("rapid-commit", rc);
}
-#line 2051 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2060 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 300:
-#line 1117 "dhcp6_parser.yy" // lalr1.cc:907
+ case 302:
+#line 1124 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("shared-networks", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.SHARED_NETWORK);
}
-#line 2062 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2071 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 301:
-#line 1122 "dhcp6_parser.yy" // lalr1.cc:907
+ case 303:
+#line 1129 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2071 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2080 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 306:
-#line 1137 "dhcp6_parser.yy" // lalr1.cc:907
+ case 308:
+#line 1144 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2081 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2090 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 307:
-#line 1141 "dhcp6_parser.yy" // lalr1.cc:907
+ case 309:
+#line 1148 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
}
-#line 2089 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2098 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 327:
-#line 1172 "dhcp6_parser.yy" // lalr1.cc:907
+ case 329:
+#line 1179 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("option-def", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.OPTION_DEF);
}
-#line 2100 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2109 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 328:
-#line 1177 "dhcp6_parser.yy" // lalr1.cc:907
+ case 330:
+#line 1184 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2109 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2118 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 329:
-#line 1185 "dhcp6_parser.yy" // lalr1.cc:907
+ case 331:
+#line 1192 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2118 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2127 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 330:
-#line 1188 "dhcp6_parser.yy" // lalr1.cc:907
+ case 332:
+#line 1195 "dhcp6_parser.yy" // lalr1.cc:907
{
// parsing completed
}
-#line 2126 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2135 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 335:
-#line 1204 "dhcp6_parser.yy" // lalr1.cc:907
+ case 337:
+#line 1211 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2136 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2145 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 336:
-#line 1208 "dhcp6_parser.yy" // lalr1.cc:907
+ case 338:
+#line 1215 "dhcp6_parser.yy" // lalr1.cc:907
{
// The name, code and type option def parameters are required.
ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.require("type", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 2148 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2157 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 337:
-#line 1219 "dhcp6_parser.yy" // lalr1.cc:907
+ case 339:
+#line 1226 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the option-def list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2158 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2167 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 338:
-#line 1223 "dhcp6_parser.yy" // lalr1.cc:907
+ case 340:
+#line 1230 "dhcp6_parser.yy" // lalr1.cc:907
{
// The name, code and type option def parameters are required.
ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.require("type", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 2170 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2179 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 354:
-#line 1255 "dhcp6_parser.yy" // lalr1.cc:907
+ case 356:
+#line 1262 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr code(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("code", code);
}
-#line 2179 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2188 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 356:
-#line 1262 "dhcp6_parser.yy" // lalr1.cc:907
+ case 358:
+#line 1269 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2187 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2196 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 357:
-#line 1264 "dhcp6_parser.yy" // lalr1.cc:907
+ case 359:
+#line 1271 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("type", prf);
ctx.leave();
}
-#line 2197 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2206 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 358:
-#line 1270 "dhcp6_parser.yy" // lalr1.cc:907
+ case 360:
+#line 1277 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2205 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2214 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 359:
-#line 1272 "dhcp6_parser.yy" // lalr1.cc:907
+ case 361:
+#line 1279 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr rtypes(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("record-types", rtypes);
ctx.leave();
}
-#line 2215 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2224 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 360:
-#line 1278 "dhcp6_parser.yy" // lalr1.cc:907
+ case 362:
+#line 1285 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2223 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2232 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 361:
-#line 1280 "dhcp6_parser.yy" // lalr1.cc:907
+ case 363:
+#line 1287 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr space(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("space", space);
ctx.leave();
}
-#line 2233 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2242 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 363:
-#line 1288 "dhcp6_parser.yy" // lalr1.cc:907
+ case 365:
+#line 1295 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2241 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2250 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 364:
-#line 1290 "dhcp6_parser.yy" // lalr1.cc:907
+ case 366:
+#line 1297 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr encap(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("encapsulate", encap);
ctx.leave();
}
-#line 2251 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2260 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 365:
-#line 1296 "dhcp6_parser.yy" // lalr1.cc:907
+ case 367:
+#line 1303 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr array(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("array", array);
}
-#line 2260 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2269 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 366:
-#line 1305 "dhcp6_parser.yy" // lalr1.cc:907
+ case 368:
+#line 1312 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("option-data", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.OPTION_DATA);
}
-#line 2271 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2280 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 367:
-#line 1310 "dhcp6_parser.yy" // lalr1.cc:907
+ case 369:
+#line 1317 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2280 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2289 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 372:
-#line 1329 "dhcp6_parser.yy" // lalr1.cc:907
+ case 374:
+#line 1336 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2290 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2299 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 373:
-#line 1333 "dhcp6_parser.yy" // lalr1.cc:907
+ case 375:
+#line 1340 "dhcp6_parser.yy" // lalr1.cc:907
{
/// @todo: the code or name parameters are required.
ctx.stack_.pop_back();
}
-#line 2299 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2308 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 374:
-#line 1341 "dhcp6_parser.yy" // lalr1.cc:907
+ case 376:
+#line 1348 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the option-data list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2309 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2318 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 375:
-#line 1345 "dhcp6_parser.yy" // lalr1.cc:907
+ case 377:
+#line 1352 "dhcp6_parser.yy" // lalr1.cc:907
{
/// @todo: the code or name parameters are required.
// parsing completed
}
-#line 2318 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2327 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 390:
-#line 1378 "dhcp6_parser.yy" // lalr1.cc:907
+ case 392:
+#line 1385 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2326 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2335 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 391:
-#line 1380 "dhcp6_parser.yy" // lalr1.cc:907
+ case 393:
+#line 1387 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr data(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("data", data);
ctx.leave();
}
-#line 2336 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2345 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 394:
-#line 1390 "dhcp6_parser.yy" // lalr1.cc:907
+ case 396:
+#line 1397 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr space(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("csv-format", space);
}
-#line 2345 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2354 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 395:
-#line 1395 "dhcp6_parser.yy" // lalr1.cc:907
+ case 397:
+#line 1402 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr persist(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("always-send", persist);
}
-#line 2354 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2363 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 396:
-#line 1403 "dhcp6_parser.yy" // lalr1.cc:907
+ case 398:
+#line 1410 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("pools", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.POOLS);
}
-#line 2365 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2374 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 397:
-#line 1408 "dhcp6_parser.yy" // lalr1.cc:907
+ case 399:
+#line 1415 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2374 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2383 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 402:
-#line 1423 "dhcp6_parser.yy" // lalr1.cc:907
+ case 404:
+#line 1430 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2384 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2393 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 403:
-#line 1427 "dhcp6_parser.yy" // lalr1.cc:907
+ case 405:
+#line 1434 "dhcp6_parser.yy" // lalr1.cc:907
{
// The pool parameter is required.
ctx.require("pool", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 2394 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2403 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 404:
-#line 1433 "dhcp6_parser.yy" // lalr1.cc:907
+ case 406:
+#line 1440 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the pool list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2404 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2413 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 405:
-#line 1437 "dhcp6_parser.yy" // lalr1.cc:907
+ case 407:
+#line 1444 "dhcp6_parser.yy" // lalr1.cc:907
{
// The pool parameter is required.
ctx.require("pool", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
}
-#line 2413 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2422 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 415:
-#line 1455 "dhcp6_parser.yy" // lalr1.cc:907
+ case 417:
+#line 1462 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2421 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2430 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 416:
-#line 1457 "dhcp6_parser.yy" // lalr1.cc:907
+ case 418:
+#line 1464 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr pool(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("pool", pool);
ctx.leave();
}
-#line 2431 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2440 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 417:
-#line 1463 "dhcp6_parser.yy" // lalr1.cc:907
+ case 419:
+#line 1470 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2439 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2448 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 418:
-#line 1465 "dhcp6_parser.yy" // lalr1.cc:907
+ case 420:
+#line 1472 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr parent = ctx.stack_.back();
ElementPtr user_context = yystack_[0].value.as< ElementPtr > ();
parent->set("user-context", user_context);
ctx.leave();
}
-#line 2466 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2475 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 419:
-#line 1488 "dhcp6_parser.yy" // lalr1.cc:907
+ case 421:
+#line 1495 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2474 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2483 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 420:
-#line 1490 "dhcp6_parser.yy" // lalr1.cc:907
+ case 422:
+#line 1497 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr parent = ctx.stack_.back();
ElementPtr user_context(new MapElement(ctx.loc2pos(yystack_[3].location)));
parent->set("user-context", user_context);
ctx.leave();
}
-#line 2503 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2512 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 421:
-#line 1518 "dhcp6_parser.yy" // lalr1.cc:907
+ case 423:
+#line 1525 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("pd-pools", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.PD_POOLS);
}
-#line 2514 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2523 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 422:
-#line 1523 "dhcp6_parser.yy" // lalr1.cc:907
+ case 424:
+#line 1530 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2523 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2532 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 427:
-#line 1538 "dhcp6_parser.yy" // lalr1.cc:907
+ case 429:
+#line 1545 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2533 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2542 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 428:
-#line 1542 "dhcp6_parser.yy" // lalr1.cc:907
+ case 430:
+#line 1549 "dhcp6_parser.yy" // lalr1.cc:907
{
// The prefix, prefix len and delegated len parameters are required.
ctx.require("prefix", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.require("delegated-len", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 2545 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2554 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 429:
-#line 1550 "dhcp6_parser.yy" // lalr1.cc:907
+ case 431:
+#line 1557 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the pd-pool list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2555 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2564 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 430:
-#line 1554 "dhcp6_parser.yy" // lalr1.cc:907
+ case 432:
+#line 1561 "dhcp6_parser.yy" // lalr1.cc:907
{
// The prefix, prefix len and delegated len parameters are required.
ctx.require("prefix", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.require("delegated-len", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 2567 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2576 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 444:
-#line 1579 "dhcp6_parser.yy" // lalr1.cc:907
+ case 446:
+#line 1586 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2575 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2584 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 445:
-#line 1581 "dhcp6_parser.yy" // lalr1.cc:907
+ case 447:
+#line 1588 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("prefix", prf);
ctx.leave();
}
-#line 2585 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2594 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 446:
-#line 1587 "dhcp6_parser.yy" // lalr1.cc:907
+ case 448:
+#line 1594 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("prefix-len", prf);
}
-#line 2594 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2603 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 447:
-#line 1592 "dhcp6_parser.yy" // lalr1.cc:907
+ case 449:
+#line 1599 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2602 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2611 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 448:
-#line 1594 "dhcp6_parser.yy" // lalr1.cc:907
+ case 450:
+#line 1601 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("excluded-prefix", prf);
ctx.leave();
}
-#line 2612 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2621 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 449:
-#line 1600 "dhcp6_parser.yy" // lalr1.cc:907
+ case 451:
+#line 1607 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr prf(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("excluded-prefix-len", prf);
}
-#line 2621 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2630 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 450:
-#line 1605 "dhcp6_parser.yy" // lalr1.cc:907
+ case 452:
+#line 1612 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr deleg(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("delegated-len", deleg);
}
-#line 2630 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2639 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 451:
-#line 1613 "dhcp6_parser.yy" // lalr1.cc:907
+ case 453:
+#line 1620 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("reservations", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.RESERVATIONS);
}
-#line 2641 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2650 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 452:
-#line 1618 "dhcp6_parser.yy" // lalr1.cc:907
+ case 454:
+#line 1625 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2650 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2659 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 457:
-#line 1631 "dhcp6_parser.yy" // lalr1.cc:907
+ case 459:
+#line 1638 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2660 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2669 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 458:
-#line 1635 "dhcp6_parser.yy" // lalr1.cc:907
+ case 460:
+#line 1642 "dhcp6_parser.yy" // lalr1.cc:907
{
/// @todo: an identifier parameter is required.
ctx.stack_.pop_back();
}
-#line 2669 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2678 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 459:
-#line 1640 "dhcp6_parser.yy" // lalr1.cc:907
+ case 461:
+#line 1647 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the reservations list entry map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 2679 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2688 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 460:
-#line 1644 "dhcp6_parser.yy" // lalr1.cc:907
+ case 462:
+#line 1651 "dhcp6_parser.yy" // lalr1.cc:907
{
/// @todo: an identifier parameter is required.
// parsing completed
}
-#line 2688 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2697 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 476:
-#line 1671 "dhcp6_parser.yy" // lalr1.cc:907
+ case 478:
+#line 1678 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("ip-addresses", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2699 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2708 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 477:
-#line 1676 "dhcp6_parser.yy" // lalr1.cc:907
+ case 479:
+#line 1683 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2708 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2717 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 478:
-#line 1681 "dhcp6_parser.yy" // lalr1.cc:907
+ case 480:
+#line 1688 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("prefixes", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2719 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2728 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 479:
-#line 1686 "dhcp6_parser.yy" // lalr1.cc:907
+ case 481:
+#line 1693 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2728 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2737 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 480:
-#line 1691 "dhcp6_parser.yy" // lalr1.cc:907
+ case 482:
+#line 1698 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2736 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2745 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 481:
-#line 1693 "dhcp6_parser.yy" // lalr1.cc:907
+ case 483:
+#line 1700 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr d(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("duid", d);
ctx.leave();
}
-#line 2746 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2755 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 482:
-#line 1699 "dhcp6_parser.yy" // lalr1.cc:907
+ case 484:
+#line 1706 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2754 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2763 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 483:
-#line 1701 "dhcp6_parser.yy" // lalr1.cc:907
+ case 485:
+#line 1708 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr hw(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hw-address", hw);
ctx.leave();
}
-#line 2764 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2773 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 484:
-#line 1707 "dhcp6_parser.yy" // lalr1.cc:907
+ case 486:
+#line 1714 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2772 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2781 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 485:
-#line 1709 "dhcp6_parser.yy" // lalr1.cc:907
+ case 487:
+#line 1716 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr host(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hostname", host);
ctx.leave();
}
-#line 2782 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2791 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 486:
-#line 1715 "dhcp6_parser.yy" // lalr1.cc:907
+ case 488:
+#line 1722 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2790 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2799 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 487:
-#line 1717 "dhcp6_parser.yy" // lalr1.cc:907
+ case 489:
+#line 1724 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr hw(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("flex-id", hw);
ctx.leave();
}
-#line 2800 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2809 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 488:
-#line 1723 "dhcp6_parser.yy" // lalr1.cc:907
+ case 490:
+#line 1730 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("client-classes", c);
ctx.stack_.push_back(c);
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2811 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2820 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 489:
-#line 1728 "dhcp6_parser.yy" // lalr1.cc:907
+ case 491:
+#line 1735 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2820 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2829 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 490:
-#line 1736 "dhcp6_parser.yy" // lalr1.cc:907
+ case 492:
+#line 1743 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("relay", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.RELAY);
}
-#line 2831 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2840 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 491:
-#line 1741 "dhcp6_parser.yy" // lalr1.cc:907
+ case 493:
+#line 1748 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2840 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2849 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 494:
-#line 1750 "dhcp6_parser.yy" // lalr1.cc:907
+ case 496:
+#line 1757 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2848 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2857 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 495:
-#line 1752 "dhcp6_parser.yy" // lalr1.cc:907
+ case 497:
+#line 1759 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr addr(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("ip-address", addr);
ctx.leave();
}
-#line 2858 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2867 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 496:
-#line 1761 "dhcp6_parser.yy" // lalr1.cc:907
+ case 498:
+#line 1768 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("client-classes", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.CLIENT_CLASSES);
}
-#line 2869 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2878 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 497:
-#line 1766 "dhcp6_parser.yy" // lalr1.cc:907
+ case 499:
+#line 1773 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2878 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2887 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 500:
-#line 1775 "dhcp6_parser.yy" // lalr1.cc:907
+ case 502:
+#line 1782 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 2888 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2897 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 501:
-#line 1779 "dhcp6_parser.yy" // lalr1.cc:907
+ case 503:
+#line 1786 "dhcp6_parser.yy" // lalr1.cc:907
{
// The name client class parameter is required.
ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
}
-#line 2898 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2907 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 514:
-#line 1804 "dhcp6_parser.yy" // lalr1.cc:907
+ case 516:
+#line 1811 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2906 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2915 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 515:
-#line 1806 "dhcp6_parser.yy" // lalr1.cc:907
+ case 517:
+#line 1813 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr test(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("test", test);
ctx.leave();
}
-#line 2916 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2925 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 516:
-#line 1812 "dhcp6_parser.yy" // lalr1.cc:907
+ case 518:
+#line 1819 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("only-if-required", b);
}
-#line 2925 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2934 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 517:
-#line 1820 "dhcp6_parser.yy" // lalr1.cc:907
+ case 519:
+#line 1827 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("server-id", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.SERVER_ID);
}
-#line 2936 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2945 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 518:
-#line 1825 "dhcp6_parser.yy" // lalr1.cc:907
+ case 520:
+#line 1832 "dhcp6_parser.yy" // lalr1.cc:907
{
// The type parameter is required.
ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
ctx.leave();
}
-#line 2947 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2956 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 530:
-#line 1847 "dhcp6_parser.yy" // lalr1.cc:907
+ case 532:
+#line 1854 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.DUID_TYPE);
}
-#line 2955 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2964 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 531:
-#line 1849 "dhcp6_parser.yy" // lalr1.cc:907
+ case 533:
+#line 1856 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("type", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 2964 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2973 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 532:
-#line 1854 "dhcp6_parser.yy" // lalr1.cc:907
+ case 534:
+#line 1861 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("LLT", ctx.loc2pos(yystack_[0].location))); }
-#line 2970 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2979 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 533:
-#line 1855 "dhcp6_parser.yy" // lalr1.cc:907
+ case 535:
+#line 1862 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("EN", ctx.loc2pos(yystack_[0].location))); }
-#line 2976 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2985 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 534:
-#line 1856 "dhcp6_parser.yy" // lalr1.cc:907
+ case 536:
+#line 1863 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("LL", ctx.loc2pos(yystack_[0].location))); }
-#line 2982 "dhcp6_parser.cc" // lalr1.cc:907
+#line 2991 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 535:
-#line 1859 "dhcp6_parser.yy" // lalr1.cc:907
+ case 537:
+#line 1866 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr htype(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("htype", htype);
}
-#line 2991 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3000 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 536:
-#line 1864 "dhcp6_parser.yy" // lalr1.cc:907
+ case 538:
+#line 1871 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 2999 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3008 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 537:
-#line 1866 "dhcp6_parser.yy" // lalr1.cc:907
+ case 539:
+#line 1873 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr id(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("identifier", id);
ctx.leave();
}
-#line 3009 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3018 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 538:
-#line 1872 "dhcp6_parser.yy" // lalr1.cc:907
+ case 540:
+#line 1879 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr time(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("time", time);
}
-#line 3018 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3027 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 539:
-#line 1877 "dhcp6_parser.yy" // lalr1.cc:907
+ case 541:
+#line 1884 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr time(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("enterprise-id", time);
}
-#line 3027 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3036 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 540:
-#line 1884 "dhcp6_parser.yy" // lalr1.cc:907
+ case 542:
+#line 1891 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr time(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("dhcp4o6-port", time);
}
-#line 3036 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3045 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 541:
-#line 1891 "dhcp6_parser.yy" // lalr1.cc:907
+ case 543:
+#line 1898 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("control-socket", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.CONTROL_SOCKET);
}
-#line 3047 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3056 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 542:
-#line 1896 "dhcp6_parser.yy" // lalr1.cc:907
+ case 544:
+#line 1903 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3056 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3065 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 550:
-#line 1912 "dhcp6_parser.yy" // lalr1.cc:907
+ case 552:
+#line 1919 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3064 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3073 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 551:
-#line 1914 "dhcp6_parser.yy" // lalr1.cc:907
+ case 553:
+#line 1921 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr stype(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("socket-type", stype);
ctx.leave();
}
-#line 3074 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3083 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 552:
-#line 1920 "dhcp6_parser.yy" // lalr1.cc:907
+ case 554:
+#line 1927 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3082 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3091 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 553:
-#line 1922 "dhcp6_parser.yy" // lalr1.cc:907
+ case 555:
+#line 1929 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr name(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("socket-name", name);
ctx.leave();
}
-#line 3092 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3101 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 554:
-#line 1930 "dhcp6_parser.yy" // lalr1.cc:907
+ case 556:
+#line 1937 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3100 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3109 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 555:
-#line 1932 "dhcp6_parser.yy" // lalr1.cc:907
+ case 557:
+#line 1939 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr qc = yystack_[0].value.as< ElementPtr > ();
ctx.stack_.back()->set("dhcp-queue-control", qc);
ctx.leave();
}
-#line 3140 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3149 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 556:
-#line 1970 "dhcp6_parser.yy" // lalr1.cc:907
+ case 558:
+#line 1977 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("dhcp-ddns", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.DHCP_DDNS);
}
-#line 3151 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3160 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 557:
-#line 1975 "dhcp6_parser.yy" // lalr1.cc:907
+ case 559:
+#line 1982 "dhcp6_parser.yy" // lalr1.cc:907
{
// The enable updates DHCP DDNS parameter is required.
ctx.require("enable-updates", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3162 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3171 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 558:
-#line 1982 "dhcp6_parser.yy" // lalr1.cc:907
+ case 560:
+#line 1989 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the dhcp-ddns map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 3172 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3181 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 559:
-#line 1986 "dhcp6_parser.yy" // lalr1.cc:907
+ case 561:
+#line 1993 "dhcp6_parser.yy" // lalr1.cc:907
{
// The enable updates DHCP DDNS parameter is required.
ctx.require("enable-updates", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
// parsing completed
}
-#line 3182 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3191 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 580:
-#line 2016 "dhcp6_parser.yy" // lalr1.cc:907
+ case 582:
+#line 2023 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("enable-updates", b);
}
-#line 3191 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3200 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 581:
-#line 2021 "dhcp6_parser.yy" // lalr1.cc:907
+ case 583:
+#line 2028 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3199 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3208 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 582:
-#line 2023 "dhcp6_parser.yy" // lalr1.cc:907
+ case 584:
+#line 2030 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("qualifying-suffix", s);
ctx.leave();
}
-#line 3209 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3218 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 583:
-#line 2029 "dhcp6_parser.yy" // lalr1.cc:907
+ case 585:
+#line 2036 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3217 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3226 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 584:
-#line 2031 "dhcp6_parser.yy" // lalr1.cc:907
+ case 586:
+#line 2038 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("server-ip", s);
ctx.leave();
}
-#line 3227 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3236 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 585:
-#line 2037 "dhcp6_parser.yy" // lalr1.cc:907
+ case 587:
+#line 2044 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr i(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("server-port", i);
}
-#line 3236 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3245 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 586:
-#line 2042 "dhcp6_parser.yy" // lalr1.cc:907
+ case 588:
+#line 2049 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3244 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3253 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 587:
-#line 2044 "dhcp6_parser.yy" // lalr1.cc:907
+ case 589:
+#line 2051 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("sender-ip", s);
ctx.leave();
}
-#line 3254 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3263 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 588:
-#line 2050 "dhcp6_parser.yy" // lalr1.cc:907
+ case 590:
+#line 2057 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr i(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("sender-port", i);
}
-#line 3263 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3272 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 589:
-#line 2055 "dhcp6_parser.yy" // lalr1.cc:907
+ case 591:
+#line 2062 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr i(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("max-queue-size", i);
}
-#line 3272 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3281 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 590:
-#line 2060 "dhcp6_parser.yy" // lalr1.cc:907
+ case 592:
+#line 2067 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NCR_PROTOCOL);
}
-#line 3280 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3289 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 591:
-#line 2062 "dhcp6_parser.yy" // lalr1.cc:907
+ case 593:
+#line 2069 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("ncr-protocol", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3289 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3298 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 592:
-#line 2068 "dhcp6_parser.yy" // lalr1.cc:907
+ case 594:
+#line 2075 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("UDP", ctx.loc2pos(yystack_[0].location))); }
-#line 3295 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3304 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 593:
-#line 2069 "dhcp6_parser.yy" // lalr1.cc:907
+ case 595:
+#line 2076 "dhcp6_parser.yy" // lalr1.cc:907
{ yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("TCP", ctx.loc2pos(yystack_[0].location))); }
-#line 3301 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3310 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 594:
-#line 2072 "dhcp6_parser.yy" // lalr1.cc:907
+ case 596:
+#line 2079 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NCR_FORMAT);
}
-#line 3309 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3318 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 595:
-#line 2074 "dhcp6_parser.yy" // lalr1.cc:907
+ case 597:
+#line 2081 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr json(new StringElement("JSON", ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("ncr-format", json);
ctx.leave();
}
-#line 3319 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3328 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 596:
-#line 2080 "dhcp6_parser.yy" // lalr1.cc:907
+ case 598:
+#line 2087 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("override-no-update", b);
}
-#line 3328 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3337 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 597:
-#line 2085 "dhcp6_parser.yy" // lalr1.cc:907
+ case 599:
+#line 2092 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr b(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("override-client-update", b);
}
-#line 3337 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3346 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 598:
-#line 2090 "dhcp6_parser.yy" // lalr1.cc:907
+ case 600:
+#line 2097 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.REPLACE_CLIENT_NAME);
}
-#line 3345 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3354 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 599:
-#line 2092 "dhcp6_parser.yy" // lalr1.cc:907
+ case 601:
+#line 2099 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("replace-client-name", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3354 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3363 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 600:
-#line 2098 "dhcp6_parser.yy" // lalr1.cc:907
+ case 602:
+#line 2105 "dhcp6_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("when-present", ctx.loc2pos(yystack_[0].location)));
}
-#line 3362 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3371 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 601:
-#line 2101 "dhcp6_parser.yy" // lalr1.cc:907
+ case 603:
+#line 2108 "dhcp6_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("never", ctx.loc2pos(yystack_[0].location)));
}
-#line 3370 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3379 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 602:
-#line 2104 "dhcp6_parser.yy" // lalr1.cc:907
+ case 604:
+#line 2111 "dhcp6_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("always", ctx.loc2pos(yystack_[0].location)));
}
-#line 3378 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3387 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 603:
-#line 2107 "dhcp6_parser.yy" // lalr1.cc:907
+ case 605:
+#line 2114 "dhcp6_parser.yy" // lalr1.cc:907
{
yylhs.value.as< ElementPtr > () = ElementPtr(new StringElement("when-not-present", ctx.loc2pos(yystack_[0].location)));
}
-#line 3386 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3395 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 604:
-#line 2110 "dhcp6_parser.yy" // lalr1.cc:907
+ case 606:
+#line 2117 "dhcp6_parser.yy" // lalr1.cc:907
{
error(yystack_[0].location, "boolean values for the replace-client-name are "
"no longer supported");
}
-#line 3395 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3404 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 605:
-#line 2116 "dhcp6_parser.yy" // lalr1.cc:907
+ case 607:
+#line 2123 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3403 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3412 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 606:
-#line 2118 "dhcp6_parser.yy" // lalr1.cc:907
+ case 608:
+#line 2125 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("generated-prefix", s);
ctx.leave();
}
-#line 3413 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3422 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 607:
-#line 2124 "dhcp6_parser.yy" // lalr1.cc:907
+ case 609:
+#line 2131 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3421 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3430 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 608:
-#line 2126 "dhcp6_parser.yy" // lalr1.cc:907
+ case 610:
+#line 2133 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hostname-char-set", s);
ctx.leave();
}
-#line 3431 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3440 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 609:
-#line 2132 "dhcp6_parser.yy" // lalr1.cc:907
+ case 611:
+#line 2139 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3439 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3448 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 610:
-#line 2134 "dhcp6_parser.yy" // lalr1.cc:907
+ case 612:
+#line 2141 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr s(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("hostname-char-replacement", s);
ctx.leave();
}
-#line 3449 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3458 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 611:
-#line 2142 "dhcp6_parser.yy" // lalr1.cc:907
+ case 613:
+#line 2149 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3457 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3466 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 612:
-#line 2144 "dhcp6_parser.yy" // lalr1.cc:907
+ case 614:
+#line 2151 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("Dhcp4", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3466 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3475 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 613:
-#line 2149 "dhcp6_parser.yy" // lalr1.cc:907
+ case 615:
+#line 2156 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3474 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3483 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 614:
-#line 2151 "dhcp6_parser.yy" // lalr1.cc:907
+ case 616:
+#line 2158 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("DhcpDdns", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3483 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3492 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 615:
-#line 2156 "dhcp6_parser.yy" // lalr1.cc:907
+ case 617:
+#line 2163 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3491 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3500 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 616:
-#line 2158 "dhcp6_parser.yy" // lalr1.cc:907
+ case 618:
+#line 2165 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.back()->set("Control-agent", yystack_[0].value.as< ElementPtr > ());
ctx.leave();
}
-#line 3500 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3509 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 617:
-#line 2165 "dhcp6_parser.yy" // lalr1.cc:907
+ case 619:
+#line 2172 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("config-control", i);
ctx.stack_.push_back(i);
ctx.enter(ctx.CONFIG_CONTROL);
}
-#line 3511 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3520 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 618:
-#line 2170 "dhcp6_parser.yy" // lalr1.cc:907
+ case 620:
+#line 2177 "dhcp6_parser.yy" // lalr1.cc:907
{
// No config control params are required
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3521 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3530 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 619:
-#line 2176 "dhcp6_parser.yy" // lalr1.cc:907
+ case 621:
+#line 2183 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the config-control map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 3531 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3540 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 620:
-#line 2180 "dhcp6_parser.yy" // lalr1.cc:907
+ case 622:
+#line 2187 "dhcp6_parser.yy" // lalr1.cc:907
{
// No config_control params are required
// parsing completed
}
-#line 3540 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3549 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 624:
-#line 2194 "dhcp6_parser.yy" // lalr1.cc:907
+ case 626:
+#line 2201 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("config-databases", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.CONFIG_DATABASE);
}
-#line 3551 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3560 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 625:
-#line 2199 "dhcp6_parser.yy" // lalr1.cc:907
+ case 627:
+#line 2206 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3560 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3569 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 626:
-#line 2209 "dhcp6_parser.yy" // lalr1.cc:907
+ case 628:
+#line 2216 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("Logging", m);
ctx.stack_.push_back(m);
ctx.enter(ctx.LOGGING);
}
-#line 3571 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3580 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 627:
-#line 2214 "dhcp6_parser.yy" // lalr1.cc:907
+ case 629:
+#line 2221 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3580 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3589 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 628:
-#line 2219 "dhcp6_parser.yy" // lalr1.cc:907
+ case 630:
+#line 2226 "dhcp6_parser.yy" // lalr1.cc:907
{
// Parse the Logging map
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.push_back(m);
}
-#line 3590 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3599 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 629:
-#line 2223 "dhcp6_parser.yy" // lalr1.cc:907
+ case 631:
+#line 2230 "dhcp6_parser.yy" // lalr1.cc:907
{
// parsing completed
}
-#line 3598 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3607 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 633:
-#line 2239 "dhcp6_parser.yy" // lalr1.cc:907
+ case 635:
+#line 2246 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("loggers", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.LOGGERS);
}
-#line 3609 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3618 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 634:
-#line 2244 "dhcp6_parser.yy" // lalr1.cc:907
+ case 636:
+#line 2251 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3618 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3627 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 637:
-#line 2256 "dhcp6_parser.yy" // lalr1.cc:907
+ case 639:
+#line 2263 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(l);
ctx.stack_.push_back(l);
}
-#line 3628 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3637 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 638:
-#line 2260 "dhcp6_parser.yy" // lalr1.cc:907
+ case 640:
+#line 2267 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
}
-#line 3636 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3645 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 648:
-#line 2277 "dhcp6_parser.yy" // lalr1.cc:907
+ case 650:
+#line 2284 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr dl(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("debuglevel", dl);
}
-#line 3645 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3654 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 649:
-#line 2282 "dhcp6_parser.yy" // lalr1.cc:907
+ case 651:
+#line 2289 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3653 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3662 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 650:
-#line 2284 "dhcp6_parser.yy" // lalr1.cc:907
+ case 652:
+#line 2291 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr sev(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("severity", sev);
ctx.leave();
}
-#line 3663 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3672 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 651:
-#line 2290 "dhcp6_parser.yy" // lalr1.cc:907
+ case 653:
+#line 2297 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("output_options", l);
ctx.stack_.push_back(l);
ctx.enter(ctx.OUTPUT_OPTIONS);
}
-#line 3674 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3683 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 652:
-#line 2295 "dhcp6_parser.yy" // lalr1.cc:907
+ case 654:
+#line 2302 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
ctx.leave();
}
-#line 3683 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3692 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 655:
-#line 2304 "dhcp6_parser.yy" // lalr1.cc:907
+ case 657:
+#line 2311 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->add(m);
ctx.stack_.push_back(m);
}
-#line 3693 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3702 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 656:
-#line 2308 "dhcp6_parser.yy" // lalr1.cc:907
+ case 658:
+#line 2315 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.stack_.pop_back();
}
-#line 3701 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3710 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 663:
-#line 2322 "dhcp6_parser.yy" // lalr1.cc:907
+ case 665:
+#line 2329 "dhcp6_parser.yy" // lalr1.cc:907
{
ctx.enter(ctx.NO_KEYWORD);
}
-#line 3709 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3718 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 664:
-#line 2324 "dhcp6_parser.yy" // lalr1.cc:907
+ case 666:
+#line 2331 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr sev(new StringElement(yystack_[0].value.as< std::string > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("output", sev);
ctx.leave();
}
-#line 3719 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3728 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 665:
-#line 2330 "dhcp6_parser.yy" // lalr1.cc:907
+ case 667:
+#line 2337 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr flush(new BoolElement(yystack_[0].value.as< bool > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("flush", flush);
}
-#line 3728 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3737 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 666:
-#line 2335 "dhcp6_parser.yy" // lalr1.cc:907
+ case 668:
+#line 2342 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr maxsize(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("maxsize", maxsize);
}
-#line 3737 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3746 "dhcp6_parser.cc" // lalr1.cc:907
break;
- case 667:
-#line 2340 "dhcp6_parser.yy" // lalr1.cc:907
+ case 669:
+#line 2347 "dhcp6_parser.yy" // lalr1.cc:907
{
ElementPtr maxver(new IntElement(yystack_[0].value.as< int64_t > (), ctx.loc2pos(yystack_[0].location)));
ctx.stack_.back()->set("maxver", maxver);
}
-#line 3746 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3755 "dhcp6_parser.cc" // lalr1.cc:907
break;
-#line 3750 "dhcp6_parser.cc" // lalr1.cc:907
+#line 3759 "dhcp6_parser.cc" // lalr1.cc:907
default:
break;
}
}
- const short Dhcp6Parser::yypact_ninf_ = -821;
+ const short Dhcp6Parser::yypact_ninf_ = -824;
const signed char Dhcp6Parser::yytable_ninf_ = -1;
const short
Dhcp6Parser::yypact_[] =
{
- 337, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, 65, 55, 66, 90,
- 108, 110, 119, 125, 136, 169, 176, 177, 217, 245,
- 246, 247, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, 55, -119, 28, 59, 25, 218, 64, 233,
- 350, 47, 30, 170, -54, 456, -73, 165, -821, 258,
- 194, 262, 293, 267, -821, -821, -821, -821, -821, 320,
- -821, 71, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, 324, 346, 352, 354, 355, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, 360, -821, -821, -821, -821,
- 79, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, 361, -821, 80, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, 362, 364, -821,
- -821, -821, -821, -821, -821, -821, -821, 86, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, 104,
- -821, -821, -821, -821, -821, 380, -821, 381, 386, -821,
- -821, -821, -821, -821, -821, 105, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, 340, 351, -821, -821, -821, -821, -821,
- -821, -821, -821, 370, -821, -821, 391, -821, -821, -821,
- 394, -821, -821, 392, 396, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, 398, 401,
- -821, -821, -821, -821, 400, 403, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, 111, -821,
- -821, -821, 405, -821, -821, 406, -821, 409, 418, -821,
- -821, 419, 421, -821, -821, -821, -821, -821, -821, -821,
- 120, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, 154, -821,
- -821, -821, 155, -821, -821, -821, 55, 55, -821, 257,
- 424, 430, 432, 441, 447, -821, 28, -821, 448, 449,
- 450, 453, 459, 289, 294, 295, 296, 298, 460, 464,
- 466, 467, 468, 469, 471, 472, 474, 475, 476, 477,
- 478, 479, 480, 482, 483, 317, 503, 504, 505, 59,
- -821, 506, 339, 25, -821, 509, 510, 511, 512, 514,
- 348, 353, 519, 520, 521, 218, -821, 523, 64, -821,
- 524, 358, 526, 363, 365, 233, -821, 527, 528, 531,
- 533, 534, 535, 536, -821, 350, -821, 537, 540, 375,
- 543, 544, 545, 377, -821, 30, 547, 379, 382, -821,
- 170, 549, 550, 51, -821, 383, 553, 558, 393, 559,
- 395, 399, 561, 565, 402, 423, 567, 568, 569, 570,
- 456, -821, 572, -73, -821, 587, 165, -821, -821, -821,
- 590, 592, 593, 55, 55, 55, -821, 594, 595, 596,
- 597, 600, -821, -821, -821, -821, -821, 436, 602, 603,
- 604, 605, 440, 374, 606, 608, 609, 610, 611, 612,
- 614, 615, 616, 617, -821, 618, 605, 620, -821, 623,
- -821, -821, 624, 625, 446, 451, 452, -821, -821, 623,
- 461, 626, -821, 462, -821, 465, -821, 470, -821, -821,
- -821, 623, 623, 623, 473, 481, 484, 485, -821, 486,
- 487, -821, 488, 489, 490, -821, -821, 491, -821, -821,
- -821, 492, 55, -821, -821, 493, 494, -821, 495, -821,
- -821, 26, 498, -821, -821, 15, 496, 497, 499, -821,
- 631, -821, 632, -821, 55, 59, -73, -821, -821, -821,
- 165, 25, 213, 213, 634, -821, 635, 637, 638, -821,
- -821, -821, -821, -821, -821, -821, -821, 639, -50, 55,
- 139, 556, 640, 641, 642, 229, 99, 138, -821, 456,
- -821, -821, 643, 645, -821, -821, -821, -821, -821, -39,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, 646, 634, -821, 164, 182, 191,
- 259, -821, -821, -821, -821, 664, 666, 667, 668, 669,
- -821, 670, 671, -821, 672, 673, 674, -821, 260, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, 270, -821, 633,
- 676, -821, -821, 675, 677, -821, -821, 678, 679, -821,
- -821, 680, 682, -821, -821, 681, 685, -821, -821, -821,
- 167, -821, -821, -821, 683, -821, -821, -821, 190, -821,
- -821, -821, -821, 271, -821, -821, -821, 297, -821, -821,
- 684, 688, -821, -821, 686, 690, -821, 691, 692, 693,
- 694, 695, 696, 273, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, 697, 698, 699, -821, -821, -821, -821,
- 301, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, 304, -821, -821, -821, 307, 513, -821, 700,
- 701, -821, -821, 702, 704, -821, -821, -821, 703, -821,
- -821, 333, -821, 706, -821, -821, -821, -821, 705, 709,
- 710, 711, 539, 532, 546, 548, 551, 712, 552, 554,
- 714, 555, 557, 560, 213, -821, -821, 213, -821, 634,
- 218, -821, 635, 30, -821, 637, 170, -821, 638, 390,
- -821, 639, -50, -821, -821, 139, -821, 715, 556, -821,
- 121, 640, -821, 350, -821, 641, -54, -821, 642, 563,
- 564, 566, 571, 573, 574, 229, -821, 716, 720, 575,
- 576, 577, 99, -821, 723, 725, 138, -821, -821, -821,
- 724, 728, 64, -821, 643, 233, -821, 645, 732, -821,
- 44, 646, -821, -821, 397, 562, 579, 580, -821, -821,
- -821, -821, -821, 581, -821, -821, 582, -821, -821, -821,
- -821, 308, -821, 311, -821, 730, -821, 731, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, 315, -821, -821, -821, -821, -821, -821, -821,
- -821, 583, -821, -821, 736, -821, -821, -821, -821, -821,
- 733, 740, -821, -821, -821, -821, -821, 746, -821, 318,
- -821, -821, -821, -821, -821, -821, -821, -821, 107, 585,
- -821, -821, -821, -821, 586, 588, -821, -821, 589, 319,
- -821, 334, -821, 591, -821, 753, -821, -821, -821, -821,
- -821, 335, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, 390, -821, -821, 756, 598, -821, 121, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, 758, 613, 759, 44, -821, -821, 629, -821, -821,
- 689, -821, 630, -821, -821, 757, -821, -821, 343, -821,
- -5, 757, -821, -821, 761, 763, 764, 344, -821, -821,
- -821, -821, -821, -821, 770, 628, 622, 644, -5, -821,
- 650, -821, -821, -821, -821, -821
+ 336, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, 51, 55, 50, 56,
+ 58, 76, 80, 110, 143, 152, 163, 184, 186, 194,
+ 201, 208, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, 55, 54, 28, 59, 25, 238, 23, 251,
+ 349, 66, 29, 102, -50, 455, 32, 242, -824, 270,
+ 253, 261, 285, 266, -824, -824, -824, -824, -824, 296,
+ -824, 71, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, 297, 318, 338, 346, 348, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, 350, -824, -824, -824, -824,
+ 106, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, 354, -824, 139, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, 360, 374, -824,
+ -824, -824, -824, -824, -824, -824, -824, 141, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, 170,
+ -824, -824, -824, -824, -824, 380, -824, 386, 391, -824,
+ -824, -824, -824, -824, -824, 187, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, 323, 337, -824, -824, -824, -824, -824,
+ -824, -824, -824, 358, -824, -824, 394, -824, -824, -824,
+ 395, -824, -824, 397, 403, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, 404, 406,
+ -824, -824, -824, -824, 405, 417, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, 189, -824,
+ -824, -824, 419, -824, -824, 423, -824, 424, 430, -824,
+ -824, 432, 441, -824, -824, -824, -824, -824, -824, -824,
+ 213, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, 214, -824,
+ -824, -824, 215, -824, -824, -824, 55, 55, -824, 276,
+ 444, 445, 446, 447, 448, -824, 28, -824, 449, 450,
+ 453, 456, 459, 292, 293, 295, 298, 299, 462, 464,
+ 465, 468, 469, 471, 472, 474, 475, 476, 477, 478,
+ 479, 480, 482, 483, 484, 340, 503, 504, 505, 59,
+ -824, 506, 339, 25, -824, 510, 511, 512, 514, 515,
+ 351, 352, 520, 521, 523, 238, -824, 524, 23, -824,
+ 525, 359, 526, 363, 364, 251, -824, 528, 530, 533,
+ 534, 535, 536, 537, -824, 349, -824, 540, 542, 375,
+ 544, 545, 546, 377, -824, 29, 548, 379, 381, -824,
+ 102, 550, 552, -55, -824, 383, 558, 559, 392, 561,
+ 398, 399, 562, 565, 400, 401, 568, 569, 572, 587,
+ 455, -824, 590, 32, -824, 592, 242, -824, -824, -824,
+ 595, 593, 594, 55, 55, 55, -824, 596, 597, 598,
+ 599, 602, -824, -824, -824, -824, -824, 431, 603, 604,
+ 605, 606, 440, 158, 607, 609, 610, 611, 612, 613,
+ 615, 616, 617, 618, -824, 620, 606, 621, -824, 624,
+ -824, -824, 625, 626, 451, 452, 461, -824, -824, 624,
+ 463, 628, -824, 466, -824, 467, -824, 470, -824, -824,
+ -824, 624, 624, 624, 473, 481, 485, 486, -824, 487,
+ 488, -824, 489, 490, 491, -824, -824, 492, -824, -824,
+ -824, 493, 55, -824, -824, 494, 495, -824, 496, -824,
+ -824, -2, 499, -824, -824, -10, 497, 498, 500, -824,
+ 634, -824, 635, -824, 55, 59, 32, -824, -824, -824,
+ 242, 25, 212, 212, 636, -824, 638, 639, 640, -824,
+ -824, -824, -824, -824, -824, -824, -824, 641, -51, 55,
+ 112, 566, 643, 644, 646, 82, 99, 27, -824, 455,
+ -824, -824, 647, 648, -824, -824, -824, -824, -824, 22,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, 663, 636, -824, 216, 249, 250,
+ 252, -824, -824, -824, -824, 629, 668, 669, 670, 671,
+ -824, 672, 673, -824, 674, 675, 676, 677, -824, 256,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, 259,
+ -824, 678, 614, -824, -824, 679, 680, -824, -824, 681,
+ 683, -824, -824, 682, 686, -824, -824, 684, 688, -824,
+ -824, -824, 168, -824, -824, -824, 687, -824, -824, -824,
+ 288, -824, -824, -824, -824, 260, -824, -824, -824, 353,
+ -824, -824, 689, 691, -824, -824, 690, 694, -824, 695,
+ 696, 697, 698, 699, 700, 263, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, 701, 702, 703, -824, -824,
+ -824, -824, 269, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, 279, -824, -824, -824, 280, 527,
+ -824, 704, 705, -824, -824, 706, 708, -824, -824, -824,
+ 707, -824, -824, 362, -824, 710, -824, -824, -824, -824,
+ 709, 713, 714, 715, 549, 508, 551, 518, 553, 716,
+ 554, 555, 718, 556, 557, 560, 563, 212, -824, -824,
+ 212, -824, 636, 238, -824, 638, 29, -824, 639, 102,
+ -824, 640, 389, -824, 641, -51, -824, -824, 112, -824,
+ 720, 566, -824, 49, 643, -824, 349, -824, 644, -50,
+ -824, 646, 564, 567, 570, 571, 573, 574, 82, -824,
+ 726, 727, 575, 576, 577, 99, -824, 728, 729, 27,
+ -824, -824, -824, 731, 711, 23, -824, 647, 251, -824,
+ 648, 734, -824, 254, 663, -824, -824, 326, 538, 579,
+ 580, -824, -824, -824, -824, -824, 581, -824, -824, 582,
+ -824, -824, -824, -824, -824, 281, -824, 287, -824, 732,
+ -824, 733, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, 294, -824, -824, -824,
+ -824, -824, -824, -824, -824, 583, -824, -824, 740, -824,
+ -824, -824, -824, -824, 747, 753, -824, -824, -824, -824,
+ -824, 749, -824, 316, -824, -824, -824, -824, -824, -824,
+ -824, -824, 308, 588, -824, -824, -824, -824, 589, 591,
+ -824, -824, 600, 325, -824, 327, -824, 631, -824, 754,
+ -824, -824, -824, -824, -824, 329, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, 389, -824, -824, 757, 622,
+ -824, 49, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, 759, 627, 760, 254, -824,
+ -824, 632, -824, -824, 637, -824, 633, -824, -824, 758,
+ -824, -824, 382, -824, 11, 758, -824, -824, 762, 763,
+ 764, 335, -824, -824, -824, -824, -824, -824, 766, 649,
+ 642, 645, 11, -824, 655, -824, -824, -824, -824, -824
};
const unsigned short
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 47, 40, 36, 35, 32, 33, 34,
39, 3, 37, 38, 60, 5, 72, 7, 117, 9,
- 258, 11, 404, 13, 429, 15, 459, 17, 329, 19,
- 337, 21, 374, 23, 223, 25, 558, 27, 628, 29,
- 619, 31, 49, 43, 0, 0, 0, 0, 0, 0,
- 461, 0, 339, 376, 0, 0, 0, 0, 51, 0,
- 50, 0, 0, 44, 70, 626, 611, 613, 615, 0,
- 69, 0, 62, 64, 66, 67, 68, 65, 617, 115,
- 129, 131, 133, 0, 0, 0, 0, 0, 113, 250,
- 327, 366, 417, 419, 292, 300, 196, 213, 204, 189,
- 496, 451, 215, 234, 517, 0, 541, 554, 556, 107,
+ 260, 11, 406, 13, 431, 15, 461, 17, 331, 19,
+ 339, 21, 376, 23, 225, 25, 560, 27, 630, 29,
+ 621, 31, 49, 43, 0, 0, 0, 0, 0, 0,
+ 463, 0, 341, 378, 0, 0, 0, 0, 51, 0,
+ 50, 0, 0, 44, 70, 628, 613, 615, 617, 0,
+ 69, 0, 62, 64, 66, 67, 68, 65, 619, 115,
+ 129, 131, 133, 0, 0, 0, 0, 0, 113, 252,
+ 329, 368, 419, 421, 294, 302, 198, 215, 206, 191,
+ 498, 453, 217, 236, 519, 0, 543, 556, 558, 107,
0, 74, 76, 77, 78, 79, 80, 105, 83, 84,
85, 86, 102, 87, 89, 88, 93, 94, 81, 106,
82, 91, 92, 100, 101, 103, 90, 95, 96, 97,
98, 99, 104, 126, 0, 125, 0, 119, 121, 122,
- 123, 124, 396, 421, 282, 284, 286, 0, 0, 290,
- 288, 490, 281, 262, 263, 264, 265, 0, 260, 269,
- 270, 271, 274, 275, 277, 272, 273, 266, 267, 279,
- 280, 268, 276, 278, 415, 414, 410, 411, 409, 0,
- 406, 408, 412, 413, 444, 0, 447, 0, 0, 443,
- 437, 438, 436, 441, 442, 0, 431, 433, 434, 439,
- 440, 435, 488, 476, 478, 480, 482, 484, 486, 475,
- 472, 473, 474, 0, 462, 463, 467, 468, 465, 469,
- 470, 471, 466, 0, 356, 174, 0, 360, 358, 363,
- 0, 352, 353, 0, 340, 341, 343, 355, 344, 345,
- 346, 362, 347, 348, 349, 350, 351, 390, 0, 0,
- 388, 389, 392, 393, 0, 377, 378, 380, 381, 382,
- 383, 384, 385, 386, 387, 230, 232, 227, 0, 225,
- 228, 229, 0, 581, 583, 0, 586, 0, 0, 590,
- 594, 0, 0, 598, 605, 607, 609, 579, 577, 578,
- 0, 560, 562, 563, 564, 565, 566, 567, 568, 569,
- 570, 571, 572, 573, 574, 575, 576, 633, 0, 630,
- 632, 624, 0, 621, 623, 48, 0, 0, 41, 0,
+ 123, 124, 398, 423, 284, 286, 288, 0, 0, 292,
+ 290, 492, 283, 264, 265, 266, 267, 0, 262, 271,
+ 272, 273, 276, 277, 279, 274, 275, 268, 269, 281,
+ 282, 270, 278, 280, 417, 416, 412, 413, 411, 0,
+ 408, 410, 414, 415, 446, 0, 449, 0, 0, 445,
+ 439, 440, 438, 443, 444, 0, 433, 435, 436, 441,
+ 442, 437, 490, 478, 480, 482, 484, 486, 488, 477,
+ 474, 475, 476, 0, 464, 465, 469, 470, 467, 471,
+ 472, 473, 468, 0, 358, 175, 0, 362, 360, 365,
+ 0, 354, 355, 0, 342, 343, 345, 357, 346, 347,
+ 348, 364, 349, 350, 351, 352, 353, 392, 0, 0,
+ 390, 391, 394, 395, 0, 379, 380, 382, 383, 384,
+ 385, 386, 387, 388, 389, 232, 234, 229, 0, 227,
+ 230, 231, 0, 583, 585, 0, 588, 0, 0, 592,
+ 596, 0, 0, 600, 607, 609, 611, 581, 579, 580,
+ 0, 562, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, 577, 578, 635, 0, 632,
+ 634, 626, 0, 623, 625, 48, 0, 0, 41, 0,
0, 0, 0, 0, 0, 59, 0, 61, 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,
73, 0, 0, 0, 118, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 259, 0, 0, 405,
- 0, 0, 0, 0, 0, 0, 430, 0, 0, 0,
- 0, 0, 0, 0, 460, 0, 330, 0, 0, 0,
- 0, 0, 0, 0, 338, 0, 0, 0, 0, 375,
- 0, 0, 0, 0, 224, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 261, 0, 0, 407,
+ 0, 0, 0, 0, 0, 0, 432, 0, 0, 0,
+ 0, 0, 0, 0, 462, 0, 332, 0, 0, 0,
+ 0, 0, 0, 0, 340, 0, 0, 0, 0, 377,
+ 0, 0, 0, 0, 226, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 559, 0, 0, 629, 0, 0, 620, 52, 45,
+ 0, 561, 0, 0, 631, 0, 0, 622, 52, 45,
0, 0, 0, 0, 0, 0, 63, 0, 0, 0,
0, 0, 108, 109, 110, 111, 112, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 540, 0, 0, 0, 75, 0,
- 128, 120, 0, 0, 0, 0, 0, 298, 299, 0,
- 0, 0, 261, 0, 407, 0, 446, 0, 449, 450,
- 432, 0, 0, 0, 0, 0, 0, 0, 464, 0,
- 0, 354, 0, 0, 0, 365, 342, 0, 394, 395,
- 379, 0, 0, 226, 580, 0, 0, 585, 0, 588,
- 589, 0, 0, 596, 597, 0, 0, 0, 0, 561,
- 0, 631, 0, 622, 0, 0, 0, 612, 614, 616,
- 0, 0, 0, 0, 135, 114, 252, 331, 368, 42,
- 418, 420, 294, 295, 296, 297, 293, 302, 0, 49,
- 0, 0, 0, 453, 217, 0, 0, 0, 555, 0,
- 53, 127, 398, 423, 283, 285, 287, 291, 289, 0,
- 416, 445, 448, 489, 477, 479, 481, 483, 485, 487,
- 357, 175, 361, 359, 364, 391, 231, 233, 582, 584,
- 587, 592, 593, 591, 595, 600, 601, 602, 603, 604,
- 599, 606, 608, 610, 0, 135, 46, 0, 0, 0,
- 0, 161, 167, 169, 171, 0, 0, 0, 0, 0,
- 184, 0, 0, 187, 0, 0, 0, 160, 0, 141,
- 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
- 155, 156, 157, 158, 153, 154, 159, 0, 139, 0,
- 136, 137, 256, 0, 253, 254, 335, 0, 332, 333,
- 372, 0, 369, 370, 306, 0, 303, 304, 202, 203,
- 0, 198, 200, 201, 0, 211, 212, 208, 0, 206,
- 209, 210, 194, 0, 191, 193, 500, 0, 498, 457,
- 0, 454, 455, 221, 0, 218, 219, 0, 0, 0,
- 0, 0, 0, 0, 236, 238, 239, 240, 241, 242,
- 243, 530, 536, 0, 0, 0, 529, 526, 527, 528,
- 0, 519, 521, 524, 522, 523, 525, 550, 552, 549,
- 547, 548, 0, 543, 545, 546, 0, 55, 402, 0,
- 399, 400, 427, 0, 424, 425, 494, 493, 0, 492,
- 637, 0, 635, 0, 71, 627, 618, 116, 0, 0,
+ 0, 0, 0, 0, 542, 0, 0, 0, 75, 0,
+ 128, 120, 0, 0, 0, 0, 0, 300, 301, 0,
+ 0, 0, 263, 0, 409, 0, 448, 0, 451, 452,
+ 434, 0, 0, 0, 0, 0, 0, 0, 466, 0,
+ 0, 356, 0, 0, 0, 367, 344, 0, 396, 397,
+ 381, 0, 0, 228, 582, 0, 0, 587, 0, 590,
+ 591, 0, 0, 598, 599, 0, 0, 0, 0, 563,
+ 0, 633, 0, 624, 0, 0, 0, 614, 616, 618,
+ 0, 0, 0, 0, 135, 114, 254, 333, 370, 42,
+ 420, 422, 296, 297, 298, 299, 295, 304, 0, 49,
+ 0, 0, 0, 455, 219, 0, 0, 0, 557, 0,
+ 53, 127, 400, 425, 285, 287, 289, 293, 291, 0,
+ 418, 447, 450, 491, 479, 481, 483, 485, 487, 489,
+ 359, 176, 363, 361, 366, 393, 233, 235, 584, 586,
+ 589, 594, 595, 593, 597, 602, 603, 604, 605, 606,
+ 601, 608, 610, 612, 0, 135, 46, 0, 0, 0,
+ 0, 162, 168, 170, 172, 0, 0, 0, 0, 0,
+ 185, 0, 0, 188, 0, 0, 0, 0, 161, 0,
+ 141, 143, 144, 145, 146, 147, 148, 149, 150, 151,
+ 152, 155, 156, 157, 158, 153, 154, 159, 160, 0,
+ 139, 0, 136, 137, 258, 0, 255, 256, 337, 0,
+ 334, 335, 374, 0, 371, 372, 308, 0, 305, 306,
+ 204, 205, 0, 200, 202, 203, 0, 213, 214, 210,
+ 0, 208, 211, 212, 196, 0, 193, 195, 502, 0,
+ 500, 459, 0, 456, 457, 223, 0, 220, 221, 0,
+ 0, 0, 0, 0, 0, 0, 238, 240, 241, 242,
+ 243, 244, 245, 532, 538, 0, 0, 0, 531, 528,
+ 529, 530, 0, 521, 523, 526, 524, 525, 527, 552,
+ 554, 551, 549, 550, 0, 545, 547, 548, 0, 55,
+ 404, 0, 401, 402, 429, 0, 426, 427, 496, 495,
+ 0, 494, 639, 0, 637, 0, 71, 629, 620, 116,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 130, 132, 0, 134, 0,
- 0, 251, 0, 339, 328, 0, 376, 367, 0, 0,
- 301, 0, 0, 197, 214, 0, 205, 0, 0, 190,
- 502, 0, 497, 461, 452, 0, 0, 216, 0, 0,
- 0, 0, 0, 0, 0, 0, 235, 0, 0, 0,
- 0, 0, 0, 518, 0, 0, 0, 542, 557, 57,
- 0, 56, 0, 397, 0, 0, 422, 0, 0, 491,
- 0, 0, 634, 625, 0, 0, 0, 0, 173, 176,
- 177, 178, 179, 0, 186, 180, 0, 181, 182, 183,
- 142, 0, 138, 0, 255, 0, 334, 0, 371, 326,
- 321, 323, 314, 315, 310, 311, 312, 313, 319, 320,
- 318, 322, 0, 308, 316, 324, 325, 317, 305, 199,
- 207, 0, 192, 514, 0, 512, 513, 509, 510, 511,
- 0, 503, 504, 506, 507, 508, 499, 0, 456, 0,
- 220, 244, 245, 246, 247, 248, 249, 237, 0, 0,
- 535, 538, 539, 520, 0, 0, 544, 54, 0, 0,
- 401, 0, 426, 0, 651, 0, 649, 647, 641, 645,
- 646, 0, 639, 643, 644, 642, 636, 163, 164, 165,
- 166, 162, 168, 170, 172, 185, 188, 140, 257, 336,
- 373, 0, 307, 195, 0, 0, 501, 0, 458, 222,
- 532, 533, 534, 531, 537, 551, 553, 58, 403, 428,
- 495, 0, 0, 0, 0, 638, 309, 0, 516, 505,
- 0, 648, 0, 640, 515, 0, 650, 655, 0, 653,
- 0, 0, 652, 663, 0, 0, 0, 0, 657, 659,
- 660, 661, 662, 654, 0, 0, 0, 0, 0, 656,
- 0, 665, 666, 667, 658, 664
+ 0, 0, 0, 0, 0, 0, 0, 0, 130, 132,
+ 0, 134, 0, 0, 253, 0, 341, 330, 0, 378,
+ 369, 0, 0, 303, 0, 0, 199, 216, 0, 207,
+ 0, 0, 192, 504, 0, 499, 463, 454, 0, 0,
+ 218, 0, 0, 0, 0, 0, 0, 0, 0, 237,
+ 0, 0, 0, 0, 0, 0, 520, 0, 0, 0,
+ 544, 559, 57, 0, 56, 0, 399, 0, 0, 424,
+ 0, 0, 493, 0, 0, 636, 627, 0, 0, 0,
+ 0, 174, 177, 178, 179, 180, 0, 187, 181, 0,
+ 182, 183, 184, 190, 142, 0, 138, 0, 257, 0,
+ 336, 0, 373, 328, 323, 325, 316, 317, 312, 313,
+ 314, 315, 321, 322, 320, 324, 0, 310, 318, 326,
+ 327, 319, 307, 201, 209, 0, 194, 516, 0, 514,
+ 515, 511, 512, 513, 0, 505, 506, 508, 509, 510,
+ 501, 0, 458, 0, 222, 246, 247, 248, 249, 250,
+ 251, 239, 0, 0, 537, 540, 541, 522, 0, 0,
+ 546, 54, 0, 0, 403, 0, 428, 0, 653, 0,
+ 651, 649, 643, 647, 648, 0, 641, 645, 646, 644,
+ 638, 164, 165, 166, 167, 163, 169, 171, 173, 186,
+ 189, 140, 259, 338, 375, 0, 309, 197, 0, 0,
+ 503, 0, 460, 224, 534, 535, 536, 533, 539, 553,
+ 555, 58, 405, 430, 497, 0, 0, 0, 0, 640,
+ 311, 0, 518, 507, 0, 650, 0, 642, 517, 0,
+ 652, 657, 0, 655, 0, 0, 654, 665, 0, 0,
+ 0, 0, 659, 661, 662, 663, 664, 656, 0, 0,
+ 0, 0, 0, 658, 0, 667, 668, 669, 660, 666
};
const short
Dhcp6Parser::yypgoto_[] =
{
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, 6, -821, -453,
- -821, 265, -821, -821, -821, -821, 174, -821, -408, -821,
- -821, -821, -74, -821, -821, -821, 443, -821, -821, -821,
- -821, 211, 411, -62, -46, -45, -43, -821, -821, -821,
- -821, -821, -821, -821, 220, 420, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, 149, -821, -12, -821, -565,
- -3, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -70, -821, -600, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -26,
- -821, -821, -821, -821, -821, -19, -584, -821, -821, -821,
- -821, -20, -821, -821, -821, -821, -821, -821, -821, -821,
- -28, -821, -821, -821, -25, 404, -821, -821, -821, -821,
- -821, -821, -821, -31, -821, -821, -821, -821, -821, -821,
- -820, -821, -821, -821, 1, -821, -821, -821, 5, 431,
- -821, -821, -819, -821, -816, -821, -36, -821, -32, -821,
- -42, -821, -821, -821, -813, -821, -821, -821, -821, -4,
- -821, -821, -173, 769, -821, -821, -821, -821, -821, 8,
- -821, -821, -821, 11, -821, 410, -821, -76, -821, -821,
- -821, -821, -821, -69, -821, -821, -821, -821, -821, -11,
- -821, -821, -821, 3, -821, -821, -821, 18, -821, 415,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -33, -821, -821, -821, -23, 454, -821, -821, -58,
- -821, -24, -821, -821, -821, -821, -821, -30, -821, -821,
- -821, -29, 445, -821, -821, -821, -821, -821, -821, -821,
- -60, -821, -821, -821, 9, -821, -821, -821, 10, -821,
- 442, 249, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -812, -821, -821, -821, -821,
- -821, -821, -821, 14, -821, -821, -821, -148, -821, -821,
- -821, -821, -821, -821, -821, -2, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -1, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, 263,
- 413, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, -821, -821, -821,
- -821, -821, -821, -821, -821, -821, -821, 299, 412, -821,
- -821, -821, -821, -821, -821, 300, 414, -821, -821, -821,
- -10, -821, -821, -154, -821, -821, -821, -821, -821, -821,
- -169, -821, -821, -185, -821, -821, -821, -821, -821
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, 6, -824, -428,
+ -824, 258, -824, -824, -824, -824, 175, -824, -419, -824,
+ -824, -824, -74, -824, -824, -824, 411, -824, -824, -824,
+ -824, 202, 387, -62, -46, -45, -43, -824, -824, -824,
+ -824, -824, -824, -824, 221, 410, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, 153, -824, -12, -824, -565,
+ -3, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -70, -824, -600, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -26, -824, -824, -824, -824, -824, -19, -584, -824, -824,
+ -824, -824, -20, -824, -824, -824, -824, -824, -824, -824,
+ -824, -28, -824, -824, -824, -25, 393, -824, -824, -824,
+ -824, -824, -824, -824, -31, -824, -824, -824, -824, -824,
+ -824, -823, -824, -824, -824, 3, -824, -824, -824, 7,
+ 434, -824, -824, -822, -824, -819, -824, -36, -824, -32,
+ -824, -42, -824, -824, -824, -816, -824, -824, -824, -824,
+ -1, -824, -824, -174, 773, -824, -824, -824, -824, -824,
+ 8, -824, -824, -824, 12, -824, 412, -824, -76, -824,
+ -824, -824, -824, -824, -69, -824, -824, -824, -824, -824,
+ -11, -824, -824, -824, 9, -824, -824, -824, 15, -824,
+ 418, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -30, -824, -824, -824, -23, 457, -824, -824,
+ -58, -824, -24, -824, -824, -824, -824, -824, -27, -824,
+ -824, -824, -29, 458, -824, -824, -824, -824, -824, -824,
+ -824, -60, -824, -824, -824, 2, -824, -824, -824, 10,
+ -824, 442, 257, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -815, -824, -824, -824,
+ -824, -824, -824, -824, 14, -824, -824, -824, -151, -824,
+ -824, -824, -824, -824, -824, -824, -4, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -7,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ 271, 415, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, -824, -824,
+ -824, -824, -824, -824, -824, -824, -824, -824, 301, 413,
+ -824, -824, -824, -824, -824, -824, 302, 420, -824, -824,
+ -824, -9, -824, -824, -156, -824, -824, -824, -824, -824,
+ -824, -171, -824, -824, -186, -824, -824, -824, -824, -824
};
const short
{
-1, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 88, 41, 42,
- 73, 600, 92, 93, 43, 72, 89, 90, 621, 797,
- 890, 891, 687, 45, 74, 101, 102, 103, 360, 47,
+ 73, 600, 92, 93, 43, 72, 89, 90, 621, 799,
+ 893, 894, 688, 45, 74, 101, 102, 103, 360, 47,
75, 140, 141, 142, 143, 144, 145, 146, 147, 378,
148, 369, 49, 76, 176, 177, 178, 401, 179, 149,
- 370, 150, 371, 151, 372, 709, 710, 711, 837, 688,
- 689, 690, 818, 1011, 691, 819, 692, 820, 693, 821,
- 694, 695, 438, 696, 697, 698, 699, 700, 701, 702,
- 703, 704, 827, 705, 706, 830, 152, 389, 743, 744,
- 745, 857, 153, 386, 730, 731, 732, 733, 154, 388,
- 738, 739, 740, 741, 155, 387, 156, 392, 754, 755,
- 756, 866, 65, 84, 308, 309, 310, 451, 311, 452,
- 157, 393, 763, 764, 765, 766, 767, 768, 769, 770,
- 158, 379, 713, 714, 715, 840, 51, 77, 197, 198,
- 199, 407, 200, 408, 201, 409, 202, 413, 203, 412,
- 159, 384, 606, 205, 206, 160, 385, 725, 726, 727,
- 849, 942, 943, 161, 380, 59, 81, 717, 718, 719,
- 843, 61, 82, 273, 274, 275, 276, 277, 278, 279,
- 437, 280, 441, 281, 440, 282, 283, 442, 284, 162,
- 381, 721, 722, 723, 846, 63, 83, 294, 295, 296,
- 297, 298, 446, 299, 300, 301, 302, 208, 405, 799,
- 800, 801, 892, 53, 78, 219, 220, 221, 417, 163,
- 382, 164, 383, 211, 406, 803, 804, 805, 895, 55,
- 79, 235, 236, 237, 420, 238, 239, 422, 240, 241,
- 165, 391, 750, 751, 752, 863, 57, 80, 253, 254,
- 255, 256, 428, 257, 429, 258, 430, 259, 431, 260,
- 432, 261, 433, 262, 427, 213, 414, 808, 809, 898,
- 166, 390, 747, 748, 860, 960, 961, 962, 963, 964,
- 1024, 965, 167, 394, 780, 781, 782, 877, 1033, 783,
- 784, 878, 785, 786, 168, 169, 396, 792, 793, 794,
- 884, 795, 885, 170, 397, 171, 398, 67, 85, 330,
- 331, 332, 333, 456, 334, 457, 335, 336, 459, 337,
- 338, 339, 462, 653, 340, 463, 341, 342, 343, 466,
- 660, 344, 467, 345, 468, 346, 469, 104, 362, 105,
- 363, 106, 364, 172, 368, 71, 87, 352, 353, 354,
- 475, 107, 361, 69, 86, 348, 349, 350, 472, 811,
- 812, 900, 1001, 1002, 1003, 1004, 1043, 1005, 1041, 1058,
- 1059, 1060, 1067, 1068, 1069, 1074, 1070, 1071, 1072
+ 370, 150, 371, 151, 372, 711, 712, 713, 840, 689,
+ 690, 691, 820, 1015, 692, 821, 693, 822, 694, 823,
+ 695, 696, 438, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 829, 706, 707, 832, 708, 152, 389, 745,
+ 746, 747, 860, 153, 386, 732, 733, 734, 735, 154,
+ 388, 740, 741, 742, 743, 155, 387, 156, 392, 756,
+ 757, 758, 869, 65, 84, 308, 309, 310, 451, 311,
+ 452, 157, 393, 765, 766, 767, 768, 769, 770, 771,
+ 772, 158, 379, 715, 716, 717, 843, 51, 77, 197,
+ 198, 199, 407, 200, 408, 201, 409, 202, 413, 203,
+ 412, 159, 384, 606, 205, 206, 160, 385, 727, 728,
+ 729, 852, 946, 947, 161, 380, 59, 81, 719, 720,
+ 721, 846, 61, 82, 273, 274, 275, 276, 277, 278,
+ 279, 437, 280, 441, 281, 440, 282, 283, 442, 284,
+ 162, 381, 723, 724, 725, 849, 63, 83, 294, 295,
+ 296, 297, 298, 446, 299, 300, 301, 302, 208, 405,
+ 801, 802, 803, 895, 53, 78, 219, 220, 221, 417,
+ 163, 382, 164, 383, 211, 406, 805, 806, 807, 898,
+ 55, 79, 235, 236, 237, 420, 238, 239, 422, 240,
+ 241, 165, 391, 752, 753, 754, 866, 57, 80, 253,
+ 254, 255, 256, 428, 257, 429, 258, 430, 259, 431,
+ 260, 432, 261, 433, 262, 427, 213, 414, 810, 811,
+ 901, 166, 390, 749, 750, 863, 964, 965, 966, 967,
+ 968, 1028, 969, 167, 394, 782, 783, 784, 880, 1037,
+ 785, 786, 881, 787, 788, 168, 169, 396, 794, 795,
+ 796, 887, 797, 888, 170, 397, 171, 398, 67, 85,
+ 330, 331, 332, 333, 456, 334, 457, 335, 336, 459,
+ 337, 338, 339, 462, 653, 340, 463, 341, 342, 343,
+ 466, 660, 344, 467, 345, 468, 346, 469, 104, 362,
+ 105, 363, 106, 364, 172, 368, 71, 87, 352, 353,
+ 354, 475, 107, 361, 69, 86, 348, 349, 350, 472,
+ 813, 814, 903, 1005, 1006, 1007, 1008, 1047, 1009, 1045,
+ 1062, 1063, 1064, 1071, 1072, 1073, 1078, 1074, 1075, 1076
};
const unsigned short
Dhcp6Parser::yytable_[] =
{
100, 139, 175, 192, 215, 229, 249, 292, 271, 290,
- 307, 327, 272, 291, 293, 193, 777, 212, 180, 209,
- 222, 233, 251, 40, 285, 303, 737, 328, 707, 935,
- 936, 194, 195, 937, 196, 204, 941, 947, 94, 173,
- 174, 728, 216, 230, 305, 306, 217, 231, 599, 264,
- 243, 91, 181, 210, 223, 234, 252, 806, 286, 304,
- 33, 329, 34, 599, 35, 32, 207, 218, 232, 250,
- 108, 347, 109, 44, 366, 110, 111, 112, 265, 367,
- 266, 267, 399, 403, 268, 269, 270, 400, 404, 415,
- 122, 123, 265, 120, 416, 122, 123, 46, 113, 114,
- 115, 116, 117, 118, 119, 120, 121, 418, 425, 122,
- 123, 121, 419, 426, 453, 48, 99, 50, 771, 454,
- 729, 627, 214, 470, 122, 123, 52, 676, 471, 122,
- 123, 124, 54, 633, 634, 635, 125, 126, 127, 128,
- 129, 1063, 130, 56, 1064, 1065, 1066, 131, 189, 305,
- 306, 190, 655, 656, 657, 658, 132, 473, 476, 133,
- 651, 652, 474, 477, 122, 123, 134, 399, 121, 265,
- 852, 95, 814, 853, 135, 136, 58, 351, 137, 138,
- 96, 97, 98, 60, 62, 473, 122, 123, 659, 994,
- 815, 995, 996, 855, 476, 99, 856, 356, 99, 816,
- 99, 935, 936, 122, 123, 937, 953, 954, 941, 947,
- 772, 773, 774, 775, 99, 1030, 1031, 1032, 265, 287,
- 266, 267, 288, 289, 64, 36, 37, 38, 39, 99,
- 728, 735, 671, 736, 99, 122, 123, 672, 673, 674,
- 675, 676, 677, 678, 679, 680, 681, 682, 683, 684,
- 685, 686, 66, 68, 70, 787, 788, 113, 114, 115,
- 116, 265, 403, 834, 355, 121, 357, 817, 835, 99,
- 359, 737, 921, 834, 858, 182, 875, 183, 836, 859,
- 121, 876, 777, 122, 123, 184, 185, 186, 187, 188,
- 124, 99, 100, 224, 225, 226, 227, 228, 122, 123,
- 861, 358, 189, 862, 882, 190, 131, 886, 99, 883,
- 470, 834, 887, 191, 415, 888, 1017, 189, 1021, 1018,
- 190, 453, 418, 1022, 365, 139, 1029, 1038, 373, 175,
- 757, 758, 759, 760, 761, 762, 901, 425, 1044, 902,
- 99, 192, 1039, 1045, 215, 180, 1061, 1078, 434, 1062,
- 374, 229, 1079, 193, 435, 212, 375, 209, 376, 377,
- 222, 249, 478, 479, 395, 402, 410, 233, 411, 194,
- 195, 271, 196, 204, 292, 272, 290, 251, 436, 181,
- 291, 293, 216, 99, 421, 423, 217, 285, 99, 230,
- 424, 210, 303, 231, 223, 439, 327, 121, 443, 445,
- 444, 234, 447, 99, 207, 448, 450, 218, 449, 455,
- 458, 252, 328, 460, 232, 122, 123, 1007, 1008, 1009,
- 1010, 286, 461, 464, 250, 465, 304, 480, 481, 113,
- 114, 115, 116, 242, 482, 119, 483, 121, 265, 243,
- 244, 245, 246, 247, 248, 484, 329, 602, 603, 604,
- 605, 485, 487, 488, 489, 122, 123, 490, 185, 186,
- 492, 188, 124, 491, 497, 493, 494, 495, 498, 496,
- 499, 500, 501, 502, 189, 503, 504, 190, 505, 506,
- 507, 508, 509, 510, 511, 191, 512, 513, 514, 587,
+ 307, 327, 272, 291, 293, 193, 779, 212, 180, 209,
+ 222, 233, 251, 40, 285, 303, 739, 328, 709, 939,
+ 940, 194, 195, 941, 196, 204, 945, 951, 94, 173,
+ 174, 730, 216, 230, 305, 306, 217, 231, 264, 305,
+ 306, 32, 181, 210, 223, 234, 252, 44, 286, 304,
+ 33, 329, 34, 46, 35, 48, 207, 218, 232, 250,
+ 108, 121, 109, 599, 366, 110, 111, 112, 265, 367,
+ 266, 267, 214, 50, 268, 269, 270, 52, 599, 122,
+ 123, 122, 123, 122, 123, 122, 123, 121, 265, 113,
+ 114, 115, 116, 117, 118, 119, 120, 121, 189, 399,
+ 627, 190, 243, 120, 400, 122, 123, 54, 773, 808,
+ 731, 99, 633, 634, 635, 122, 123, 676, 655, 656,
+ 657, 658, 124, 651, 652, 957, 958, 125, 126, 127,
+ 128, 129, 403, 130, 415, 789, 790, 404, 131, 416,
+ 56, 265, 287, 266, 267, 288, 289, 132, 1067, 58,
+ 133, 1068, 1069, 1070, 659, 122, 123, 134, 122, 123,
+ 60, 855, 95, 418, 856, 135, 136, 347, 419, 137,
+ 138, 96, 97, 98, 759, 760, 761, 762, 763, 764,
+ 425, 62, 453, 64, 99, 426, 99, 454, 99, 99,
+ 99, 66, 939, 940, 730, 737, 941, 738, 68, 945,
+ 951, 774, 775, 776, 777, 70, 470, 473, 476, 399,
+ 99, 471, 474, 477, 816, 91, 36, 37, 38, 39,
+ 99, 671, 602, 603, 604, 605, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, 681, 682, 683, 684, 685,
+ 686, 687, 473, 476, 351, 403, 356, 817, 818, 837,
+ 819, 265, 837, 861, 838, 357, 878, 839, 862, 359,
+ 99, 879, 885, 99, 739, 925, 355, 886, 113, 114,
+ 115, 116, 889, 470, 837, 779, 121, 890, 891, 1021,
+ 415, 858, 100, 358, 859, 1022, 182, 1025, 183, 121,
+ 365, 373, 1026, 265, 122, 123, 184, 185, 186, 187,
+ 188, 124, 224, 225, 226, 227, 228, 122, 123, 453,
+ 122, 123, 374, 189, 1033, 139, 190, 131, 418, 175,
+ 425, 434, 1048, 1042, 191, 1043, 189, 1049, 1082, 190,
+ 435, 192, 375, 1083, 215, 180, 1011, 1012, 1013, 1014,
+ 376, 229, 377, 193, 395, 212, 864, 209, 402, 865,
+ 222, 249, 478, 479, 410, 904, 436, 233, 905, 194,
+ 195, 271, 196, 204, 292, 272, 290, 251, 411, 181,
+ 291, 293, 216, 99, 421, 1065, 217, 285, 1066, 230,
+ 423, 210, 303, 231, 223, 424, 327, 121, 439, 443,
+ 998, 234, 999, 1000, 207, 444, 445, 218, 447, 99,
+ 448, 252, 328, 449, 232, 122, 123, 1034, 1035, 1036,
+ 450, 286, 99, 455, 250, 99, 304, 458, 460, 113,
+ 114, 115, 116, 242, 461, 119, 464, 121, 265, 243,
+ 244, 245, 246, 247, 248, 465, 329, 480, 481, 482,
+ 483, 484, 485, 487, 488, 122, 123, 489, 185, 186,
+ 490, 188, 124, 491, 492, 493, 497, 494, 498, 499,
+ 495, 496, 500, 501, 189, 502, 503, 190, 504, 505,
+ 506, 507, 508, 509, 510, 191, 511, 512, 513, 587,
588, 589, 1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 11, 12, 13, 14, 15, 515, 516, 517,
- 519, 139, 520, 522, 523, 524, 525, 175, 526, 527,
- 99, 122, 123, 529, 530, 531, 528, 533, 535, 536,
- 537, 541, 542, 180, 538, 543, 539, 544, 545, 546,
- 547, 549, 776, 789, 550, 327, 551, 552, 553, 554,
- 555, 557, 558, 561, 562, 559, 564, 565, 778, 790,
- 99, 328, 566, 568, 567, 571, 569, 181, 647, 572,
- 570, 575, 576, 577, 578, 573, 580, 312, 313, 314,
+ 519, 139, 514, 520, 522, 523, 524, 175, 525, 526,
+ 99, 122, 123, 527, 529, 530, 528, 531, 533, 535,
+ 537, 536, 541, 180, 542, 538, 539, 543, 544, 545,
+ 546, 547, 778, 791, 549, 327, 550, 551, 552, 553,
+ 554, 555, 557, 558, 561, 559, 562, 564, 780, 792,
+ 99, 328, 565, 566, 567, 568, 571, 181, 647, 572,
+ 569, 570, 575, 576, 573, 574, 577, 312, 313, 314,
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
- 666, 582, 779, 791, 584, 329, 574, 325, 326, 585,
- 586, 590, 591, 592, 593, 594, 595, 596, 597, 598,
- 601, 607, 34, 608, 609, 610, 624, 612, 611, 613,
- 614, 625, 626, 615, 616, 617, 99, 619, 620, 622,
- 623, 628, 630, 629, 654, 631, 664, 665, 742, 838,
- 632, 708, 712, 636, 716, 720, 724, 746, 749, 753,
- 798, 637, 802, 810, 638, 639, 640, 641, 642, 643,
- 644, 645, 646, 648, 649, 650, 661, 662, 822, 663,
- 823, 824, 825, 826, 828, 829, 831, 832, 833, 839,
- 842, 841, 845, 889, 844, 848, 847, 850, 851, 854,
- 864, 865, 867, 868, 1055, 869, 870, 871, 872, 873,
- 874, 879, 880, 881, 894, 909, 893, 897, 896, 904,
- 908, 899, 903, 905, 906, 907, 913, 910, 916, 951,
- 978, 911, 912, 914, 979, 915, 917, 984, 918, 985,
- 987, 988, 1012, 919, 971, 972, 993, 973, 1019, 1020,
- 1025, 1026, 974, 1027, 975, 976, 980, 981, 982, 1013,
- 1014, 1015, 1016, 1023, 1028, 1034, 1035, 1042, 1036, 1037,
- 1047, 1040, 1050, 1052, 1057, 1075, 192, 1076, 1077, 271,
- 292, 1048, 290, 272, 1080, 929, 291, 293, 193, 934,
- 212, 618, 209, 734, 1051, 285, 955, 930, 303, 249,
- 956, 945, 307, 1082, 194, 195, 667, 196, 204, 1054,
- 1056, 1081, 958, 931, 932, 251, 933, 940, 776, 486,
- 518, 670, 789, 938, 813, 1083, 210, 939, 215, 286,
- 1085, 229, 304, 521, 778, 946, 997, 922, 790, 207,
- 998, 920, 952, 949, 222, 950, 959, 233, 944, 252,
- 970, 969, 999, 924, 977, 923, 532, 948, 1046, 957,
- 263, 928, 250, 926, 925, 556, 216, 563, 779, 230,
- 217, 990, 791, 231, 927, 560, 991, 992, 223, 989,
- 540, 234, 534, 967, 968, 966, 1000, 548, 807, 1049,
- 983, 218, 796, 579, 232, 986, 668, 581, 583, 669,
- 1053, 1006, 1073, 1084, 0, 0, 0, 0, 0, 0,
+ 666, 578, 781, 793, 580, 329, 582, 325, 326, 584,
+ 585, 586, 595, 590, 591, 592, 593, 594, 596, 597,
+ 598, 601, 607, 34, 608, 609, 610, 842, 612, 611,
+ 613, 614, 624, 625, 615, 616, 99, 617, 619, 620,
+ 622, 623, 626, 824, 628, 629, 654, 630, 631, 664,
+ 665, 632, 1059, 710, 636, 714, 718, 722, 726, 744,
+ 748, 751, 637, 755, 800, 804, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 648, 649, 650, 661, 662,
+ 812, 663, 825, 826, 827, 828, 830, 831, 833, 834,
+ 835, 836, 912, 845, 841, 844, 848, 847, 850, 851,
+ 853, 854, 914, 857, 868, 867, 870, 871, 892, 872,
+ 873, 874, 875, 876, 877, 882, 883, 884, 897, 1016,
+ 896, 900, 899, 907, 992, 902, 906, 908, 909, 910,
+ 916, 911, 919, 913, 955, 915, 917, 918, 920, 921,
+ 982, 983, 988, 989, 922, 923, 975, 991, 997, 976,
+ 1023, 1024, 977, 978, 1029, 979, 980, 984, 985, 986,
+ 1017, 1018, 1019, 1020, 1027, 1030, 1031, 1032, 1046, 1038,
+ 1039, 1051, 1040, 1054, 1056, 1061, 1079, 1080, 1081, 192,
+ 1084, 1041, 271, 292, 618, 290, 272, 486, 933, 291,
+ 293, 193, 938, 212, 736, 209, 518, 667, 285, 959,
+ 934, 303, 249, 960, 949, 307, 1052, 194, 195, 1055,
+ 196, 204, 1044, 1058, 1060, 962, 935, 936, 251, 937,
+ 944, 778, 670, 521, 1086, 791, 942, 1087, 815, 210,
+ 943, 215, 286, 1085, 229, 304, 1089, 780, 950, 1001,
+ 926, 792, 207, 1002, 924, 956, 953, 222, 954, 963,
+ 233, 948, 252, 974, 973, 1003, 563, 981, 928, 532,
+ 927, 1050, 961, 952, 263, 250, 930, 556, 929, 216,
+ 932, 781, 230, 217, 931, 793, 231, 994, 560, 995,
+ 972, 223, 993, 996, 234, 534, 971, 548, 970, 1004,
+ 1053, 987, 990, 540, 218, 579, 809, 232, 668, 583,
+ 798, 669, 1057, 581, 1077, 1010, 1088, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 929, 0, 0,
- 0, 934, 0, 955, 0, 0, 0, 956, 0, 930,
- 0, 0, 0, 945, 0, 0, 0, 0, 0, 958,
- 997, 0, 0, 0, 998, 931, 932, 0, 933, 940,
- 0, 0, 0, 0, 0, 938, 999, 0, 0, 939,
- 0, 0, 0, 0, 0, 0, 0, 946, 0, 0,
- 0, 0, 0, 959, 0, 0, 0, 0, 0, 0,
- 944, 0, 0, 0, 0, 0, 957, 0, 0, 0,
- 1000
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 933, 0, 0, 0, 938, 0, 959, 0, 0,
+ 0, 960, 0, 934, 0, 0, 0, 949, 0, 0,
+ 0, 0, 0, 962, 1001, 0, 0, 0, 1002, 935,
+ 936, 0, 937, 944, 0, 0, 0, 0, 0, 942,
+ 1003, 0, 0, 943, 0, 0, 0, 0, 0, 0,
+ 0, 950, 0, 0, 0, 0, 0, 963, 0, 0,
+ 0, 0, 0, 0, 948, 0, 0, 0, 0, 0,
+ 961, 0, 0, 0, 1004
};
const short
{
74, 75, 76, 77, 78, 79, 80, 83, 82, 83,
84, 85, 82, 83, 83, 77, 616, 77, 76, 77,
- 78, 79, 80, 17, 82, 83, 610, 85, 593, 849,
- 849, 77, 77, 849, 77, 77, 849, 849, 10, 14,
- 15, 91, 78, 79, 98, 99, 78, 79, 501, 19,
- 89, 170, 76, 77, 78, 79, 80, 96, 82, 83,
- 5, 85, 7, 516, 9, 0, 77, 78, 79, 80,
- 11, 144, 13, 7, 3, 16, 17, 18, 48, 8,
- 50, 51, 3, 3, 54, 55, 56, 8, 8, 3,
- 65, 66, 48, 46, 8, 65, 66, 7, 39, 40,
- 41, 42, 43, 44, 45, 46, 47, 3, 3, 65,
- 66, 47, 8, 8, 3, 7, 170, 7, 19, 8,
- 170, 529, 58, 3, 65, 66, 7, 28, 8, 65,
- 66, 72, 7, 541, 542, 543, 77, 78, 79, 80,
- 81, 146, 83, 7, 149, 150, 151, 88, 84, 98,
- 99, 87, 137, 138, 139, 140, 97, 3, 3, 100,
- 134, 135, 8, 8, 65, 66, 107, 3, 47, 48,
- 3, 143, 8, 6, 115, 116, 7, 12, 119, 120,
- 152, 153, 154, 7, 7, 3, 65, 66, 173, 145,
- 8, 147, 148, 3, 3, 170, 6, 3, 170, 8,
- 170, 1021, 1021, 65, 66, 1021, 85, 86, 1021, 1021,
- 111, 112, 113, 114, 170, 108, 109, 110, 48, 49,
- 50, 51, 52, 53, 7, 170, 171, 172, 173, 170,
- 91, 92, 19, 94, 170, 65, 66, 24, 25, 26,
- 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
- 37, 38, 7, 7, 7, 117, 118, 39, 40, 41,
- 42, 48, 3, 3, 6, 47, 4, 8, 8, 170,
- 3, 855, 837, 3, 3, 57, 3, 59, 8, 8,
- 47, 8, 882, 65, 66, 67, 68, 69, 70, 71,
- 72, 170, 366, 60, 61, 62, 63, 64, 65, 66,
- 3, 8, 84, 6, 3, 87, 88, 3, 170, 8,
- 3, 3, 8, 95, 3, 8, 8, 84, 3, 8,
- 87, 3, 3, 8, 4, 399, 8, 8, 4, 403,
- 101, 102, 103, 104, 105, 106, 3, 3, 3, 6,
- 170, 415, 8, 8, 418, 403, 3, 3, 8, 6,
- 4, 425, 8, 415, 3, 415, 4, 415, 4, 4,
- 418, 435, 356, 357, 4, 4, 4, 425, 4, 415,
- 415, 445, 415, 415, 450, 445, 450, 435, 8, 403,
- 450, 450, 418, 170, 4, 4, 418, 445, 170, 425,
- 4, 415, 450, 425, 418, 4, 470, 47, 4, 3,
- 8, 425, 4, 170, 415, 4, 3, 418, 8, 4,
- 4, 435, 470, 4, 425, 65, 66, 20, 21, 22,
- 23, 445, 4, 4, 435, 4, 450, 170, 4, 39,
- 40, 41, 42, 83, 4, 45, 4, 47, 48, 89,
- 90, 91, 92, 93, 94, 4, 470, 73, 74, 75,
- 76, 4, 4, 4, 4, 65, 66, 4, 68, 69,
- 171, 71, 72, 4, 4, 171, 171, 171, 4, 171,
- 4, 4, 4, 4, 84, 4, 4, 87, 4, 4,
- 4, 4, 4, 4, 4, 95, 4, 4, 171, 483,
- 484, 485, 155, 156, 157, 158, 159, 160, 161, 162,
- 163, 164, 165, 166, 167, 168, 169, 4, 4, 4,
- 4, 585, 173, 4, 4, 4, 4, 591, 4, 171,
- 170, 65, 66, 4, 4, 4, 173, 4, 4, 171,
- 4, 4, 4, 591, 171, 4, 171, 4, 4, 4,
- 4, 4, 616, 617, 4, 619, 171, 4, 4, 4,
- 173, 4, 173, 4, 4, 173, 173, 4, 616, 617,
- 170, 619, 4, 4, 171, 4, 171, 591, 562, 4,
- 171, 4, 4, 4, 4, 173, 4, 121, 122, 123,
- 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
- 584, 4, 616, 617, 4, 619, 173, 141, 142, 7,
- 7, 7, 7, 7, 7, 5, 170, 5, 5, 5,
- 170, 5, 7, 5, 5, 5, 170, 5, 7, 5,
- 5, 170, 170, 7, 7, 7, 170, 7, 5, 5,
- 5, 170, 170, 7, 136, 170, 5, 5, 82, 6,
- 170, 7, 7, 170, 7, 7, 7, 7, 7, 7,
- 7, 170, 7, 7, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 170, 170, 4, 170,
- 4, 4, 4, 4, 4, 4, 4, 4, 4, 3,
- 3, 6, 3, 170, 6, 3, 6, 6, 3, 6,
- 6, 3, 6, 3, 5, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 3, 173, 6, 3, 6, 4,
- 171, 8, 6, 4, 4, 4, 4, 171, 4, 4,
- 4, 173, 171, 171, 4, 171, 171, 4, 171, 4,
- 6, 3, 170, 173, 171, 171, 4, 171, 8, 8,
- 4, 8, 171, 3, 171, 171, 171, 171, 171, 170,
- 170, 170, 170, 170, 8, 170, 170, 4, 170, 170,
- 4, 170, 4, 4, 7, 4, 840, 4, 4, 843,
- 846, 173, 846, 843, 4, 849, 846, 846, 840, 849,
- 840, 516, 840, 609, 171, 843, 860, 849, 846, 863,
- 860, 849, 866, 171, 840, 840, 585, 840, 840, 170,
- 170, 173, 860, 849, 849, 863, 849, 849, 882, 366,
- 399, 591, 886, 849, 665, 171, 840, 849, 892, 843,
- 170, 895, 846, 403, 882, 849, 900, 839, 886, 840,
- 900, 834, 858, 852, 892, 855, 860, 895, 849, 863,
- 868, 866, 900, 842, 875, 840, 415, 851, 1021, 860,
- 81, 848, 863, 845, 843, 445, 892, 453, 882, 895,
- 892, 894, 886, 895, 846, 450, 895, 897, 892, 892,
- 425, 895, 418, 863, 865, 861, 900, 435, 629, 1027,
- 882, 892, 619, 470, 895, 886, 586, 473, 476, 590,
- 1044, 901, 1061, 1078, -1, -1, -1, -1, -1, -1,
+ 78, 79, 80, 17, 82, 83, 610, 85, 593, 852,
+ 852, 77, 77, 852, 77, 77, 852, 852, 10, 14,
+ 15, 92, 78, 79, 99, 100, 78, 79, 19, 99,
+ 100, 0, 76, 77, 78, 79, 80, 7, 82, 83,
+ 5, 85, 7, 7, 9, 7, 77, 78, 79, 80,
+ 11, 48, 13, 501, 3, 16, 17, 18, 49, 8,
+ 51, 52, 59, 7, 55, 56, 57, 7, 516, 66,
+ 67, 66, 67, 66, 67, 66, 67, 48, 49, 40,
+ 41, 42, 43, 44, 45, 46, 47, 48, 85, 3,
+ 529, 88, 90, 47, 8, 66, 67, 7, 19, 97,
+ 171, 171, 541, 542, 543, 66, 67, 28, 138, 139,
+ 140, 141, 73, 135, 136, 86, 87, 78, 79, 80,
+ 81, 82, 3, 84, 3, 118, 119, 8, 89, 8,
+ 7, 49, 50, 51, 52, 53, 54, 98, 147, 7,
+ 101, 150, 151, 152, 174, 66, 67, 108, 66, 67,
+ 7, 3, 144, 3, 6, 116, 117, 145, 8, 120,
+ 121, 153, 154, 155, 102, 103, 104, 105, 106, 107,
+ 3, 7, 3, 7, 171, 8, 171, 8, 171, 171,
+ 171, 7, 1025, 1025, 92, 93, 1025, 95, 7, 1025,
+ 1025, 112, 113, 114, 115, 7, 3, 3, 3, 3,
+ 171, 8, 8, 8, 8, 171, 171, 172, 173, 174,
+ 171, 19, 74, 75, 76, 77, 24, 25, 26, 27,
+ 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
+ 38, 39, 3, 3, 12, 3, 3, 8, 8, 3,
+ 8, 49, 3, 3, 8, 4, 3, 8, 8, 3,
+ 171, 8, 3, 171, 858, 840, 6, 8, 40, 41,
+ 42, 43, 3, 3, 3, 885, 48, 8, 8, 8,
+ 3, 3, 366, 8, 6, 8, 58, 3, 60, 48,
+ 4, 4, 8, 49, 66, 67, 68, 69, 70, 71,
+ 72, 73, 61, 62, 63, 64, 65, 66, 67, 3,
+ 66, 67, 4, 85, 8, 399, 88, 89, 3, 403,
+ 3, 8, 3, 8, 96, 8, 85, 8, 3, 88,
+ 3, 415, 4, 8, 418, 403, 20, 21, 22, 23,
+ 4, 425, 4, 415, 4, 415, 3, 415, 4, 6,
+ 418, 435, 356, 357, 4, 3, 8, 425, 6, 415,
+ 415, 445, 415, 415, 450, 445, 450, 435, 4, 403,
+ 450, 450, 418, 171, 4, 3, 418, 445, 6, 425,
+ 4, 415, 450, 425, 418, 4, 470, 48, 4, 4,
+ 146, 425, 148, 149, 415, 8, 3, 418, 4, 171,
+ 4, 435, 470, 8, 425, 66, 67, 109, 110, 111,
+ 3, 445, 171, 4, 435, 171, 450, 4, 4, 40,
+ 41, 42, 43, 84, 4, 46, 4, 48, 49, 90,
+ 91, 92, 93, 94, 95, 4, 470, 171, 4, 4,
+ 4, 4, 4, 4, 4, 66, 67, 4, 69, 70,
+ 4, 72, 73, 4, 172, 172, 4, 172, 4, 4,
+ 172, 172, 4, 4, 85, 4, 4, 88, 4, 4,
+ 4, 4, 4, 4, 4, 96, 4, 4, 4, 483,
+ 484, 485, 156, 157, 158, 159, 160, 161, 162, 163,
+ 164, 165, 166, 167, 168, 169, 170, 4, 4, 4,
+ 4, 585, 172, 174, 4, 4, 4, 591, 4, 4,
+ 171, 66, 67, 172, 4, 4, 174, 4, 4, 4,
+ 4, 172, 4, 591, 4, 172, 172, 4, 4, 4,
+ 4, 4, 616, 617, 4, 619, 4, 172, 4, 4,
+ 4, 174, 4, 174, 4, 174, 4, 174, 616, 617,
+ 171, 619, 4, 4, 172, 4, 4, 591, 562, 4,
+ 172, 172, 4, 4, 174, 174, 4, 122, 123, 124,
+ 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
+ 584, 4, 616, 617, 4, 619, 4, 142, 143, 4,
+ 7, 7, 171, 7, 7, 7, 7, 5, 5, 5,
+ 5, 171, 5, 7, 5, 5, 5, 3, 5, 7,
+ 5, 5, 171, 171, 7, 7, 171, 7, 7, 5,
+ 5, 5, 171, 4, 171, 7, 137, 171, 171, 5,
+ 5, 171, 5, 7, 171, 7, 7, 7, 7, 83,
+ 7, 7, 171, 7, 7, 7, 171, 171, 171, 171,
+ 171, 171, 171, 171, 171, 171, 171, 171, 171, 171,
+ 7, 171, 4, 4, 4, 4, 4, 4, 4, 4,
+ 4, 4, 174, 3, 6, 6, 3, 6, 6, 3,
+ 6, 3, 174, 6, 3, 6, 6, 3, 171, 4,
+ 4, 4, 4, 4, 4, 4, 4, 4, 3, 171,
+ 6, 3, 6, 4, 3, 8, 6, 4, 4, 4,
+ 4, 172, 4, 172, 4, 172, 172, 172, 172, 172,
+ 4, 4, 4, 4, 174, 172, 172, 6, 4, 172,
+ 8, 8, 172, 172, 4, 172, 172, 172, 172, 172,
+ 171, 171, 171, 171, 171, 8, 3, 8, 4, 171,
+ 171, 4, 171, 4, 4, 7, 4, 4, 4, 843,
+ 4, 171, 846, 849, 516, 849, 846, 366, 852, 849,
+ 849, 843, 852, 843, 609, 843, 399, 585, 846, 863,
+ 852, 849, 866, 863, 852, 869, 174, 843, 843, 172,
+ 843, 843, 171, 171, 171, 863, 852, 852, 866, 852,
+ 852, 885, 591, 403, 172, 889, 852, 172, 665, 843,
+ 852, 895, 846, 174, 898, 849, 171, 885, 852, 903,
+ 842, 889, 843, 903, 837, 861, 855, 895, 858, 863,
+ 898, 852, 866, 871, 869, 903, 453, 878, 845, 415,
+ 843, 1025, 863, 854, 81, 866, 848, 445, 846, 895,
+ 851, 885, 898, 895, 849, 889, 898, 897, 450, 898,
+ 868, 895, 895, 900, 898, 418, 866, 435, 864, 903,
+ 1031, 885, 889, 425, 895, 470, 629, 898, 586, 476,
+ 619, 590, 1048, 473, 1065, 904, 1082, -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, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 1021, -1, -1,
- -1, 1021, -1, 1027, -1, -1, -1, 1027, -1, 1021,
- -1, -1, -1, 1021, -1, -1, -1, -1, -1, 1027,
- 1044, -1, -1, -1, 1044, 1021, 1021, -1, 1021, 1021,
- -1, -1, -1, -1, -1, 1021, 1044, -1, -1, 1021,
- -1, -1, -1, -1, -1, -1, -1, 1021, -1, -1,
- -1, -1, -1, 1027, -1, -1, -1, -1, -1, -1,
- 1021, -1, -1, -1, -1, -1, 1027, -1, -1, -1,
- 1044
+ -1, 1025, -1, -1, -1, 1025, -1, 1031, -1, -1,
+ -1, 1031, -1, 1025, -1, -1, -1, 1025, -1, -1,
+ -1, -1, -1, 1031, 1048, -1, -1, -1, 1048, 1025,
+ 1025, -1, 1025, 1025, -1, -1, -1, -1, -1, 1025,
+ 1048, -1, -1, 1025, -1, -1, -1, -1, -1, -1,
+ -1, 1025, -1, -1, -1, -1, -1, 1031, -1, -1,
+ -1, -1, -1, -1, 1025, -1, -1, -1, -1, -1,
+ 1031, -1, -1, -1, 1048
};
const unsigned short
Dhcp6Parser::yystos_[] =
{
- 0, 155, 156, 157, 158, 159, 160, 161, 162, 163,
- 164, 165, 166, 167, 168, 169, 175, 176, 177, 178,
- 179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
- 189, 190, 0, 5, 7, 9, 170, 171, 172, 173,
- 191, 192, 193, 198, 7, 207, 7, 213, 7, 226,
- 7, 320, 7, 397, 7, 413, 7, 430, 7, 349,
- 7, 355, 7, 379, 7, 296, 7, 491, 7, 537,
- 7, 529, 199, 194, 208, 214, 227, 321, 398, 414,
- 431, 350, 356, 380, 297, 492, 538, 530, 191, 200,
- 201, 170, 196, 197, 10, 143, 152, 153, 154, 170,
- 206, 209, 210, 211, 521, 523, 525, 535, 11, 13,
- 16, 17, 18, 39, 40, 41, 42, 43, 44, 45,
- 46, 47, 65, 66, 72, 77, 78, 79, 80, 81,
- 83, 88, 97, 100, 107, 115, 116, 119, 120, 206,
- 215, 216, 217, 218, 219, 220, 221, 222, 224, 233,
- 235, 237, 270, 276, 282, 288, 290, 304, 314, 334,
- 339, 347, 373, 403, 405, 424, 454, 466, 478, 479,
- 487, 489, 527, 14, 15, 206, 228, 229, 230, 232,
- 403, 405, 57, 59, 67, 68, 69, 70, 71, 84,
- 87, 95, 206, 217, 218, 219, 220, 322, 323, 324,
- 326, 328, 330, 332, 334, 337, 338, 373, 391, 403,
- 405, 407, 424, 449, 58, 206, 330, 332, 373, 399,
- 400, 401, 403, 405, 60, 61, 62, 63, 64, 206,
- 330, 332, 373, 403, 405, 415, 416, 417, 419, 420,
- 422, 423, 83, 89, 90, 91, 92, 93, 94, 206,
- 373, 403, 405, 432, 433, 434, 435, 437, 439, 441,
- 443, 445, 447, 347, 19, 48, 50, 51, 54, 55,
- 56, 206, 255, 357, 358, 359, 360, 361, 362, 363,
- 365, 367, 369, 370, 372, 403, 405, 49, 52, 53,
- 206, 255, 361, 367, 381, 382, 383, 384, 385, 387,
- 388, 389, 390, 403, 405, 98, 99, 206, 298, 299,
- 300, 302, 121, 122, 123, 124, 125, 126, 127, 128,
- 129, 130, 131, 132, 133, 141, 142, 206, 403, 405,
- 493, 494, 495, 496, 498, 500, 501, 503, 504, 505,
- 508, 510, 511, 512, 515, 517, 519, 144, 539, 540,
- 541, 12, 531, 532, 533, 6, 3, 4, 8, 3,
- 212, 536, 522, 524, 526, 4, 3, 8, 528, 225,
- 234, 236, 238, 4, 4, 4, 4, 4, 223, 315,
- 348, 374, 404, 406, 335, 340, 277, 289, 283, 271,
- 455, 425, 291, 305, 467, 4, 480, 488, 490, 3,
- 8, 231, 4, 3, 8, 392, 408, 325, 327, 329,
- 4, 4, 333, 331, 450, 3, 8, 402, 3, 8,
- 418, 4, 421, 4, 4, 3, 8, 448, 436, 438,
- 440, 442, 444, 446, 8, 3, 8, 364, 256, 4,
- 368, 366, 371, 4, 8, 3, 386, 4, 4, 8,
- 3, 301, 303, 3, 8, 4, 497, 499, 4, 502,
- 4, 4, 506, 509, 4, 4, 513, 516, 518, 520,
- 3, 8, 542, 3, 8, 534, 3, 8, 191, 191,
- 170, 4, 4, 4, 4, 4, 210, 4, 4, 4,
- 4, 4, 171, 171, 171, 171, 171, 4, 4, 4,
+ 0, 156, 157, 158, 159, 160, 161, 162, 163, 164,
+ 165, 166, 167, 168, 169, 170, 176, 177, 178, 179,
+ 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
+ 190, 191, 0, 5, 7, 9, 171, 172, 173, 174,
+ 192, 193, 194, 199, 7, 208, 7, 214, 7, 227,
+ 7, 322, 7, 399, 7, 415, 7, 432, 7, 351,
+ 7, 357, 7, 381, 7, 298, 7, 493, 7, 539,
+ 7, 531, 200, 195, 209, 215, 228, 323, 400, 416,
+ 433, 352, 358, 382, 299, 494, 540, 532, 192, 201,
+ 202, 171, 197, 198, 10, 144, 153, 154, 155, 171,
+ 207, 210, 211, 212, 523, 525, 527, 537, 11, 13,
+ 16, 17, 18, 40, 41, 42, 43, 44, 45, 46,
+ 47, 48, 66, 67, 73, 78, 79, 80, 81, 82,
+ 84, 89, 98, 101, 108, 116, 117, 120, 121, 207,
+ 216, 217, 218, 219, 220, 221, 222, 223, 225, 234,
+ 236, 238, 272, 278, 284, 290, 292, 306, 316, 336,
+ 341, 349, 375, 405, 407, 426, 456, 468, 480, 481,
+ 489, 491, 529, 14, 15, 207, 229, 230, 231, 233,
+ 405, 407, 58, 60, 68, 69, 70, 71, 72, 85,
+ 88, 96, 207, 218, 219, 220, 221, 324, 325, 326,
+ 328, 330, 332, 334, 336, 339, 340, 375, 393, 405,
+ 407, 409, 426, 451, 59, 207, 332, 334, 375, 401,
+ 402, 403, 405, 407, 61, 62, 63, 64, 65, 207,
+ 332, 334, 375, 405, 407, 417, 418, 419, 421, 422,
+ 424, 425, 84, 90, 91, 92, 93, 94, 95, 207,
+ 375, 405, 407, 434, 435, 436, 437, 439, 441, 443,
+ 445, 447, 449, 349, 19, 49, 51, 52, 55, 56,
+ 57, 207, 256, 359, 360, 361, 362, 363, 364, 365,
+ 367, 369, 371, 372, 374, 405, 407, 50, 53, 54,
+ 207, 256, 363, 369, 383, 384, 385, 386, 387, 389,
+ 390, 391, 392, 405, 407, 99, 100, 207, 300, 301,
+ 302, 304, 122, 123, 124, 125, 126, 127, 128, 129,
+ 130, 131, 132, 133, 134, 142, 143, 207, 405, 407,
+ 495, 496, 497, 498, 500, 502, 503, 505, 506, 507,
+ 510, 512, 513, 514, 517, 519, 521, 145, 541, 542,
+ 543, 12, 533, 534, 535, 6, 3, 4, 8, 3,
+ 213, 538, 524, 526, 528, 4, 3, 8, 530, 226,
+ 235, 237, 239, 4, 4, 4, 4, 4, 224, 317,
+ 350, 376, 406, 408, 337, 342, 279, 291, 285, 273,
+ 457, 427, 293, 307, 469, 4, 482, 490, 492, 3,
+ 8, 232, 4, 3, 8, 394, 410, 327, 329, 331,
+ 4, 4, 335, 333, 452, 3, 8, 404, 3, 8,
+ 420, 4, 423, 4, 4, 3, 8, 450, 438, 440,
+ 442, 444, 446, 448, 8, 3, 8, 366, 257, 4,
+ 370, 368, 373, 4, 8, 3, 388, 4, 4, 8,
+ 3, 303, 305, 3, 8, 4, 499, 501, 4, 504,
+ 4, 4, 508, 511, 4, 4, 515, 518, 520, 522,
+ 3, 8, 544, 3, 8, 536, 3, 8, 192, 192,
+ 171, 4, 4, 4, 4, 4, 211, 4, 4, 4,
+ 4, 4, 172, 172, 172, 172, 172, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
- 4, 4, 4, 4, 171, 4, 4, 4, 216, 4,
- 173, 229, 4, 4, 4, 4, 4, 171, 173, 4,
- 4, 4, 323, 4, 400, 4, 171, 4, 171, 171,
- 416, 4, 4, 4, 4, 4, 4, 4, 434, 4,
- 4, 171, 4, 4, 4, 173, 359, 4, 173, 173,
- 383, 4, 4, 299, 173, 4, 4, 171, 4, 171,
- 171, 4, 4, 173, 173, 4, 4, 4, 4, 494,
- 4, 540, 4, 532, 4, 7, 7, 191, 191, 191,
- 7, 7, 7, 7, 5, 170, 5, 5, 5, 193,
- 195, 170, 73, 74, 75, 76, 336, 5, 5, 5,
- 5, 7, 5, 5, 5, 7, 7, 7, 195, 7,
- 5, 202, 5, 5, 170, 170, 170, 202, 170, 7,
- 170, 170, 170, 202, 202, 202, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 170, 191, 170, 170,
- 170, 134, 135, 507, 136, 137, 138, 139, 140, 173,
- 514, 170, 170, 170, 5, 5, 191, 215, 539, 531,
- 228, 19, 24, 25, 26, 27, 28, 29, 30, 31,
- 32, 33, 34, 35, 36, 37, 38, 206, 243, 244,
- 245, 248, 250, 252, 254, 255, 257, 258, 259, 260,
- 261, 262, 263, 264, 265, 267, 268, 243, 7, 239,
- 240, 241, 7, 316, 317, 318, 7, 351, 352, 353,
- 7, 375, 376, 377, 7, 341, 342, 343, 91, 170,
- 278, 279, 280, 281, 200, 92, 94, 280, 284, 285,
- 286, 287, 82, 272, 273, 274, 7, 456, 457, 7,
- 426, 427, 428, 7, 292, 293, 294, 101, 102, 103,
- 104, 105, 106, 306, 307, 308, 309, 310, 311, 312,
- 313, 19, 111, 112, 113, 114, 206, 257, 403, 405,
- 468, 469, 470, 473, 474, 476, 477, 117, 118, 206,
- 403, 405, 481, 482, 483, 485, 493, 203, 7, 393,
- 394, 395, 7, 409, 410, 411, 96, 435, 451, 452,
- 7, 543, 544, 239, 8, 8, 8, 8, 246, 249,
- 251, 253, 4, 4, 4, 4, 4, 266, 4, 4,
- 269, 4, 4, 4, 3, 8, 8, 242, 6, 3,
- 319, 6, 3, 354, 6, 3, 378, 6, 3, 344,
- 6, 3, 3, 6, 6, 3, 6, 275, 3, 8,
- 458, 3, 6, 429, 6, 3, 295, 6, 3, 4,
- 4, 4, 4, 4, 4, 3, 8, 471, 475, 4,
- 4, 4, 3, 8, 484, 486, 3, 8, 8, 170,
- 204, 205, 396, 6, 3, 412, 6, 3, 453, 8,
- 545, 3, 6, 6, 4, 4, 4, 4, 171, 173,
- 171, 173, 171, 4, 171, 171, 4, 171, 171, 173,
- 244, 243, 241, 322, 318, 357, 353, 381, 377, 206,
- 217, 218, 219, 220, 255, 314, 326, 328, 330, 332,
- 334, 338, 345, 346, 373, 403, 405, 449, 343, 279,
- 285, 4, 273, 85, 86, 206, 255, 373, 403, 405,
- 459, 460, 461, 462, 463, 465, 457, 432, 428, 298,
- 294, 171, 171, 171, 171, 171, 171, 307, 4, 4,
- 171, 171, 171, 469, 4, 4, 482, 6, 3, 399,
- 395, 415, 411, 4, 145, 147, 148, 206, 255, 403,
- 405, 546, 547, 548, 549, 551, 544, 20, 21, 22,
- 23, 247, 170, 170, 170, 170, 170, 8, 8, 8,
- 8, 3, 8, 170, 464, 4, 8, 3, 8, 8,
- 108, 109, 110, 472, 170, 170, 170, 170, 8, 8,
- 170, 552, 4, 550, 3, 8, 346, 4, 173, 461,
- 4, 171, 4, 547, 170, 5, 170, 7, 553, 554,
- 555, 3, 6, 146, 149, 150, 151, 556, 557, 558,
- 560, 561, 562, 554, 559, 4, 4, 4, 3, 8,
- 4, 173, 171, 171, 557, 170
+ 4, 4, 4, 4, 172, 4, 4, 4, 217, 4,
+ 174, 230, 4, 4, 4, 4, 4, 172, 174, 4,
+ 4, 4, 325, 4, 402, 4, 172, 4, 172, 172,
+ 418, 4, 4, 4, 4, 4, 4, 4, 436, 4,
+ 4, 172, 4, 4, 4, 174, 361, 4, 174, 174,
+ 385, 4, 4, 301, 174, 4, 4, 172, 4, 172,
+ 172, 4, 4, 174, 174, 4, 4, 4, 4, 496,
+ 4, 542, 4, 534, 4, 7, 7, 192, 192, 192,
+ 7, 7, 7, 7, 5, 171, 5, 5, 5, 194,
+ 196, 171, 74, 75, 76, 77, 338, 5, 5, 5,
+ 5, 7, 5, 5, 5, 7, 7, 7, 196, 7,
+ 5, 203, 5, 5, 171, 171, 171, 203, 171, 7,
+ 171, 171, 171, 203, 203, 203, 171, 171, 171, 171,
+ 171, 171, 171, 171, 171, 171, 171, 192, 171, 171,
+ 171, 135, 136, 509, 137, 138, 139, 140, 141, 174,
+ 516, 171, 171, 171, 5, 5, 192, 216, 541, 533,
+ 229, 19, 24, 25, 26, 27, 28, 29, 30, 31,
+ 32, 33, 34, 35, 36, 37, 38, 39, 207, 244,
+ 245, 246, 249, 251, 253, 255, 256, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 268, 269, 271, 244,
+ 7, 240, 241, 242, 7, 318, 319, 320, 7, 353,
+ 354, 355, 7, 377, 378, 379, 7, 343, 344, 345,
+ 92, 171, 280, 281, 282, 283, 201, 93, 95, 282,
+ 286, 287, 288, 289, 83, 274, 275, 276, 7, 458,
+ 459, 7, 428, 429, 430, 7, 294, 295, 296, 102,
+ 103, 104, 105, 106, 107, 308, 309, 310, 311, 312,
+ 313, 314, 315, 19, 112, 113, 114, 115, 207, 258,
+ 405, 407, 470, 471, 472, 475, 476, 478, 479, 118,
+ 119, 207, 405, 407, 483, 484, 485, 487, 495, 204,
+ 7, 395, 396, 397, 7, 411, 412, 413, 97, 437,
+ 453, 454, 7, 545, 546, 240, 8, 8, 8, 8,
+ 247, 250, 252, 254, 4, 4, 4, 4, 4, 267,
+ 4, 4, 270, 4, 4, 4, 4, 3, 8, 8,
+ 243, 6, 3, 321, 6, 3, 356, 6, 3, 380,
+ 6, 3, 346, 6, 3, 3, 6, 6, 3, 6,
+ 277, 3, 8, 460, 3, 6, 431, 6, 3, 297,
+ 6, 3, 4, 4, 4, 4, 4, 4, 3, 8,
+ 473, 477, 4, 4, 4, 3, 8, 486, 488, 3,
+ 8, 8, 171, 205, 206, 398, 6, 3, 414, 6,
+ 3, 455, 8, 547, 3, 6, 6, 4, 4, 4,
+ 4, 172, 174, 172, 174, 172, 4, 172, 172, 4,
+ 172, 172, 174, 172, 245, 244, 242, 324, 320, 359,
+ 355, 383, 379, 207, 218, 219, 220, 221, 256, 316,
+ 328, 330, 332, 334, 336, 340, 347, 348, 375, 405,
+ 407, 451, 345, 281, 287, 4, 275, 86, 87, 207,
+ 256, 375, 405, 407, 461, 462, 463, 464, 465, 467,
+ 459, 434, 430, 300, 296, 172, 172, 172, 172, 172,
+ 172, 309, 4, 4, 172, 172, 172, 471, 4, 4,
+ 484, 6, 3, 401, 397, 417, 413, 4, 146, 148,
+ 149, 207, 256, 405, 407, 548, 549, 550, 551, 553,
+ 546, 20, 21, 22, 23, 248, 171, 171, 171, 171,
+ 171, 8, 8, 8, 8, 3, 8, 171, 466, 4,
+ 8, 3, 8, 8, 109, 110, 111, 474, 171, 171,
+ 171, 171, 8, 8, 171, 554, 4, 552, 3, 8,
+ 348, 4, 174, 463, 4, 172, 4, 549, 171, 5,
+ 171, 7, 555, 556, 557, 3, 6, 147, 150, 151,
+ 152, 558, 559, 560, 562, 563, 564, 556, 561, 4,
+ 4, 4, 3, 8, 4, 174, 172, 172, 559, 171
};
const unsigned short
Dhcp6Parser::yyr1_[] =
{
- 0, 174, 176, 175, 177, 175, 178, 175, 179, 175,
- 180, 175, 181, 175, 182, 175, 183, 175, 184, 175,
- 185, 175, 186, 175, 187, 175, 188, 175, 189, 175,
- 190, 175, 191, 191, 191, 191, 191, 191, 191, 192,
- 194, 193, 195, 196, 196, 197, 197, 199, 198, 200,
- 200, 201, 201, 203, 202, 204, 204, 205, 205, 206,
- 208, 207, 209, 209, 210, 210, 210, 210, 210, 210,
- 212, 211, 214, 213, 215, 215, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 217, 218,
- 219, 220, 221, 223, 222, 225, 224, 227, 226, 228,
- 228, 229, 229, 229, 229, 229, 231, 230, 232, 234,
- 233, 236, 235, 238, 237, 239, 239, 240, 240, 242,
- 241, 243, 243, 244, 244, 244, 244, 244, 244, 244,
- 244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
- 244, 246, 245, 247, 247, 247, 247, 249, 248, 251,
- 250, 253, 252, 254, 256, 255, 257, 258, 259, 260,
- 261, 262, 263, 264, 266, 265, 267, 269, 268, 271,
- 270, 272, 272, 273, 275, 274, 277, 276, 278, 278,
- 279, 279, 280, 281, 283, 282, 284, 284, 285, 285,
- 285, 286, 287, 289, 288, 291, 290, 292, 292, 293,
- 293, 295, 294, 297, 296, 298, 298, 298, 299, 299,
- 301, 300, 303, 302, 305, 304, 306, 306, 307, 307,
- 307, 307, 307, 307, 308, 309, 310, 311, 312, 313,
- 315, 314, 316, 316, 317, 317, 319, 318, 321, 320,
- 322, 322, 323, 323, 323, 323, 323, 323, 323, 323,
- 323, 323, 323, 323, 323, 323, 323, 323, 323, 323,
- 323, 323, 325, 324, 327, 326, 329, 328, 331, 330,
- 333, 332, 335, 334, 336, 336, 336, 336, 337, 338,
- 340, 339, 341, 341, 342, 342, 344, 343, 345, 345,
- 346, 346, 346, 346, 346, 346, 346, 346, 346, 346,
- 346, 346, 346, 346, 346, 346, 346, 348, 347, 350,
- 349, 351, 351, 352, 352, 354, 353, 356, 355, 357,
- 357, 358, 358, 359, 359, 359, 359, 359, 359, 359,
- 359, 359, 359, 360, 361, 362, 364, 363, 366, 365,
- 368, 367, 369, 371, 370, 372, 374, 373, 375, 375,
- 376, 376, 378, 377, 380, 379, 381, 381, 382, 382,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 384,
- 386, 385, 387, 388, 389, 390, 392, 391, 393, 393,
- 394, 394, 396, 395, 398, 397, 399, 399, 400, 400,
- 400, 400, 400, 400, 400, 402, 401, 404, 403, 406,
- 405, 408, 407, 409, 409, 410, 410, 412, 411, 414,
- 413, 415, 415, 416, 416, 416, 416, 416, 416, 416,
- 416, 416, 416, 416, 418, 417, 419, 421, 420, 422,
- 423, 425, 424, 426, 426, 427, 427, 429, 428, 431,
- 430, 432, 432, 433, 433, 434, 434, 434, 434, 434,
- 434, 434, 434, 434, 434, 434, 436, 435, 438, 437,
+ 0, 175, 177, 176, 178, 176, 179, 176, 180, 176,
+ 181, 176, 182, 176, 183, 176, 184, 176, 185, 176,
+ 186, 176, 187, 176, 188, 176, 189, 176, 190, 176,
+ 191, 176, 192, 192, 192, 192, 192, 192, 192, 193,
+ 195, 194, 196, 197, 197, 198, 198, 200, 199, 201,
+ 201, 202, 202, 204, 203, 205, 205, 206, 206, 207,
+ 209, 208, 210, 210, 211, 211, 211, 211, 211, 211,
+ 213, 212, 215, 214, 216, 216, 217, 217, 217, 217,
+ 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
+ 217, 217, 217, 217, 217, 217, 217, 217, 217, 217,
+ 217, 217, 217, 217, 217, 217, 217, 217, 218, 219,
+ 220, 221, 222, 224, 223, 226, 225, 228, 227, 229,
+ 229, 230, 230, 230, 230, 230, 232, 231, 233, 235,
+ 234, 237, 236, 239, 238, 240, 240, 241, 241, 243,
+ 242, 244, 244, 245, 245, 245, 245, 245, 245, 245,
+ 245, 245, 245, 245, 245, 245, 245, 245, 245, 245,
+ 245, 245, 247, 246, 248, 248, 248, 248, 250, 249,
+ 252, 251, 254, 253, 255, 257, 256, 258, 259, 260,
+ 261, 262, 263, 264, 265, 267, 266, 268, 270, 269,
+ 271, 273, 272, 274, 274, 275, 277, 276, 279, 278,
+ 280, 280, 281, 281, 282, 283, 285, 284, 286, 286,
+ 287, 287, 287, 288, 289, 291, 290, 293, 292, 294,
+ 294, 295, 295, 297, 296, 299, 298, 300, 300, 300,
+ 301, 301, 303, 302, 305, 304, 307, 306, 308, 308,
+ 309, 309, 309, 309, 309, 309, 310, 311, 312, 313,
+ 314, 315, 317, 316, 318, 318, 319, 319, 321, 320,
+ 323, 322, 324, 324, 325, 325, 325, 325, 325, 325,
+ 325, 325, 325, 325, 325, 325, 325, 325, 325, 325,
+ 325, 325, 325, 325, 327, 326, 329, 328, 331, 330,
+ 333, 332, 335, 334, 337, 336, 338, 338, 338, 338,
+ 339, 340, 342, 341, 343, 343, 344, 344, 346, 345,
+ 347, 347, 348, 348, 348, 348, 348, 348, 348, 348,
+ 348, 348, 348, 348, 348, 348, 348, 348, 348, 350,
+ 349, 352, 351, 353, 353, 354, 354, 356, 355, 358,
+ 357, 359, 359, 360, 360, 361, 361, 361, 361, 361,
+ 361, 361, 361, 361, 361, 362, 363, 364, 366, 365,
+ 368, 367, 370, 369, 371, 373, 372, 374, 376, 375,
+ 377, 377, 378, 378, 380, 379, 382, 381, 383, 383,
+ 384, 384, 385, 385, 385, 385, 385, 385, 385, 385,
+ 385, 386, 388, 387, 389, 390, 391, 392, 394, 393,
+ 395, 395, 396, 396, 398, 397, 400, 399, 401, 401,
+ 402, 402, 402, 402, 402, 402, 402, 404, 403, 406,
+ 405, 408, 407, 410, 409, 411, 411, 412, 412, 414,
+ 413, 416, 415, 417, 417, 418, 418, 418, 418, 418,
+ 418, 418, 418, 418, 418, 418, 420, 419, 421, 423,
+ 422, 424, 425, 427, 426, 428, 428, 429, 429, 431,
+ 430, 433, 432, 434, 434, 435, 435, 436, 436, 436,
+ 436, 436, 436, 436, 436, 436, 436, 436, 438, 437,
440, 439, 442, 441, 444, 443, 446, 445, 448, 447,
- 450, 449, 451, 451, 453, 452, 455, 454, 456, 456,
- 458, 457, 459, 459, 460, 460, 461, 461, 461, 461,
- 461, 461, 461, 462, 464, 463, 465, 467, 466, 468,
- 468, 469, 469, 469, 469, 469, 469, 469, 469, 469,
- 471, 470, 472, 472, 472, 473, 475, 474, 476, 477,
- 478, 480, 479, 481, 481, 482, 482, 482, 482, 482,
- 484, 483, 486, 485, 488, 487, 490, 489, 492, 491,
- 493, 493, 494, 494, 494, 494, 494, 494, 494, 494,
- 494, 494, 494, 494, 494, 494, 494, 494, 494, 494,
- 495, 497, 496, 499, 498, 500, 502, 501, 503, 504,
- 506, 505, 507, 507, 509, 508, 510, 511, 513, 512,
- 514, 514, 514, 514, 514, 516, 515, 518, 517, 520,
+ 450, 449, 452, 451, 453, 453, 455, 454, 457, 456,
+ 458, 458, 460, 459, 461, 461, 462, 462, 463, 463,
+ 463, 463, 463, 463, 463, 464, 466, 465, 467, 469,
+ 468, 470, 470, 471, 471, 471, 471, 471, 471, 471,
+ 471, 471, 473, 472, 474, 474, 474, 475, 477, 476,
+ 478, 479, 480, 482, 481, 483, 483, 484, 484, 484,
+ 484, 484, 486, 485, 488, 487, 490, 489, 492, 491,
+ 494, 493, 495, 495, 496, 496, 496, 496, 496, 496,
+ 496, 496, 496, 496, 496, 496, 496, 496, 496, 496,
+ 496, 496, 497, 499, 498, 501, 500, 502, 504, 503,
+ 505, 506, 508, 507, 509, 509, 511, 510, 512, 513,
+ 515, 514, 516, 516, 516, 516, 516, 518, 517, 520,
519, 522, 521, 524, 523, 526, 525, 528, 527, 530,
- 529, 531, 531, 532, 534, 533, 536, 535, 538, 537,
- 539, 539, 540, 542, 541, 543, 543, 545, 544, 546,
- 546, 547, 547, 547, 547, 547, 547, 547, 548, 550,
- 549, 552, 551, 553, 553, 555, 554, 556, 556, 557,
- 557, 557, 557, 559, 558, 560, 561, 562
+ 529, 532, 531, 533, 533, 534, 536, 535, 538, 537,
+ 540, 539, 541, 541, 542, 544, 543, 545, 545, 547,
+ 546, 548, 548, 549, 549, 549, 549, 549, 549, 549,
+ 550, 552, 551, 554, 553, 555, 555, 557, 556, 558,
+ 558, 559, 559, 559, 559, 561, 560, 562, 563, 564
};
const unsigned char
6, 0, 6, 0, 6, 0, 1, 1, 3, 0,
4, 1, 3, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 0, 4, 1, 1, 1, 1, 0, 4, 0,
- 4, 0, 4, 3, 0, 4, 3, 3, 3, 3,
- 3, 3, 3, 3, 0, 4, 3, 0, 4, 0,
- 6, 1, 3, 1, 0, 4, 0, 6, 1, 3,
- 1, 1, 1, 1, 0, 6, 1, 3, 1, 1,
- 1, 1, 1, 0, 6, 0, 6, 0, 1, 1,
- 3, 0, 4, 0, 4, 1, 3, 1, 1, 1,
- 0, 4, 0, 4, 0, 6, 1, 3, 1, 1,
- 1, 1, 1, 1, 3, 3, 3, 3, 3, 3,
- 0, 6, 0, 1, 1, 3, 0, 4, 0, 4,
- 1, 3, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 0, 4, 0, 4, 0, 4, 0, 4,
- 0, 4, 0, 4, 1, 1, 1, 1, 3, 3,
- 0, 6, 0, 1, 1, 3, 0, 4, 1, 3,
- 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 0, 6, 0,
- 4, 0, 1, 1, 3, 0, 4, 0, 4, 0,
- 1, 1, 3, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 3, 1, 0, 4, 0, 4,
- 0, 4, 1, 0, 4, 3, 0, 6, 0, 1,
- 1, 3, 0, 4, 0, 4, 0, 1, 1, 3,
+ 1, 1, 0, 4, 1, 1, 1, 1, 0, 4,
+ 0, 4, 0, 4, 3, 0, 4, 3, 3, 3,
+ 3, 3, 3, 3, 3, 0, 4, 3, 0, 4,
+ 3, 0, 6, 1, 3, 1, 0, 4, 0, 6,
+ 1, 3, 1, 1, 1, 1, 0, 6, 1, 3,
+ 1, 1, 1, 1, 1, 0, 6, 0, 6, 0,
+ 1, 1, 3, 0, 4, 0, 4, 1, 3, 1,
+ 1, 1, 0, 4, 0, 4, 0, 6, 1, 3,
+ 1, 1, 1, 1, 1, 1, 3, 3, 3, 3,
+ 3, 3, 0, 6, 0, 1, 1, 3, 0, 4,
+ 0, 4, 1, 3, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 0, 4, 1, 1, 3, 3, 0, 6, 0, 1,
- 1, 3, 0, 4, 0, 4, 1, 3, 1, 1,
- 1, 1, 1, 1, 1, 0, 4, 0, 4, 0,
- 4, 0, 6, 0, 1, 1, 3, 0, 4, 0,
- 4, 1, 3, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 0, 4, 3, 0, 4, 3,
- 3, 0, 6, 0, 1, 1, 3, 0, 4, 0,
+ 1, 1, 1, 1, 0, 4, 0, 4, 0, 4,
+ 0, 4, 0, 4, 0, 4, 1, 1, 1, 1,
+ 3, 3, 0, 6, 0, 1, 1, 3, 0, 4,
+ 1, 3, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
+ 6, 0, 4, 0, 1, 1, 3, 0, 4, 0,
4, 0, 1, 1, 3, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 0, 4, 0, 4,
- 0, 4, 0, 4, 0, 4, 0, 4, 0, 4,
- 0, 6, 1, 1, 0, 4, 0, 6, 1, 3,
- 0, 4, 0, 1, 1, 3, 1, 1, 1, 1,
- 1, 1, 1, 1, 0, 4, 3, 0, 6, 1,
- 3, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 0, 4, 1, 1, 1, 3, 0, 4, 3, 3,
- 3, 0, 6, 1, 3, 1, 1, 1, 1, 1,
- 0, 4, 0, 4, 0, 4, 0, 6, 0, 4,
+ 1, 1, 1, 1, 1, 1, 3, 1, 0, 4,
+ 0, 4, 0, 4, 1, 0, 4, 3, 0, 6,
+ 0, 1, 1, 3, 0, 4, 0, 4, 0, 1,
1, 3, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 0, 4, 1, 1, 3, 3, 0, 6,
+ 0, 1, 1, 3, 0, 4, 0, 4, 1, 3,
+ 1, 1, 1, 1, 1, 1, 1, 0, 4, 0,
+ 4, 0, 4, 0, 6, 0, 1, 1, 3, 0,
+ 4, 0, 4, 1, 3, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 0, 4, 3, 0,
+ 4, 3, 3, 0, 6, 0, 1, 1, 3, 0,
+ 4, 0, 4, 0, 1, 1, 3, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 0, 4,
+ 0, 4, 0, 4, 0, 4, 0, 4, 0, 4,
+ 0, 4, 0, 6, 1, 1, 0, 4, 0, 6,
+ 1, 3, 0, 4, 0, 1, 1, 3, 1, 1,
+ 1, 1, 1, 1, 1, 1, 0, 4, 3, 0,
+ 6, 1, 3, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 0, 4, 1, 1, 1, 3, 0, 4,
+ 3, 3, 3, 0, 6, 1, 3, 1, 1, 1,
+ 1, 1, 0, 4, 0, 4, 0, 4, 0, 6,
+ 0, 4, 1, 3, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 3, 0, 4, 0, 4, 3, 0, 4, 3, 3,
- 0, 4, 1, 1, 0, 4, 3, 3, 0, 4,
- 1, 1, 1, 1, 1, 0, 4, 0, 4, 0,
- 4, 0, 4, 0, 4, 0, 4, 0, 6, 0,
- 4, 1, 3, 1, 0, 6, 0, 6, 0, 4,
- 1, 3, 1, 0, 6, 1, 3, 0, 4, 1,
- 3, 1, 1, 1, 1, 1, 1, 1, 3, 0,
- 4, 0, 6, 1, 3, 0, 4, 1, 3, 1,
- 1, 1, 1, 0, 4, 3, 3, 3
+ 1, 1, 3, 0, 4, 0, 4, 3, 0, 4,
+ 3, 3, 0, 4, 1, 1, 0, 4, 3, 3,
+ 0, 4, 1, 1, 1, 1, 1, 0, 4, 0,
+ 4, 0, 4, 0, 4, 0, 4, 0, 4, 0,
+ 6, 0, 4, 1, 3, 1, 0, 6, 0, 6,
+ 0, 4, 1, 3, 1, 0, 6, 1, 3, 0,
+ 4, 1, 3, 1, 1, 1, 1, 1, 1, 1,
+ 3, 0, 4, 0, 6, 1, 3, 0, 4, 1,
+ 3, 1, 1, 1, 1, 0, 4, 3, 3, 3
};
"\"port\"", "\"persist\"", "\"lfc-interval\"", "\"readonly\"",
"\"connect-timeout\"", "\"contact-points\"", "\"max-reconnect-tries\"",
"\"reconnect-wait-time\"", "\"keyspace\"", "\"request-timeout\"",
- "\"tcp-keepalive\"", "\"tcp-nodelay\"", "\"preferred-lifetime\"",
- "\"valid-lifetime\"", "\"renew-timer\"", "\"rebind-timer\"",
- "\"decline-probation-period\"", "\"server-tag\"", "\"subnet6\"",
- "\"option-def\"", "\"option-data\"", "\"name\"", "\"data\"", "\"code\"",
- "\"space\"", "\"csv-format\"", "\"always-send\"", "\"record-types\"",
- "\"encapsulate\"", "\"array\"", "\"pools\"", "\"pool\"", "\"pd-pools\"",
- "\"prefix\"", "\"prefix-len\"", "\"excluded-prefix\"",
- "\"excluded-prefix-len\"", "\"delegated-len\"", "\"user-context\"",
- "\"comment\"", "\"subnet\"", "\"interface\"", "\"interface-id\"",
- "\"id\"", "\"rapid-commit\"", "\"reservation-mode\"", "\"disabled\"",
- "\"out-of-pool\"", "\"global\"", "\"all\"", "\"shared-networks\"",
- "\"mac-sources\"", "\"relay-supplied-options\"",
+ "\"tcp-keepalive\"", "\"tcp-nodelay\"", "\"max-row-errors\"",
+ "\"preferred-lifetime\"", "\"valid-lifetime\"", "\"renew-timer\"",
+ "\"rebind-timer\"", "\"decline-probation-period\"", "\"server-tag\"",
+ "\"subnet6\"", "\"option-def\"", "\"option-data\"", "\"name\"",
+ "\"data\"", "\"code\"", "\"space\"", "\"csv-format\"", "\"always-send\"",
+ "\"record-types\"", "\"encapsulate\"", "\"array\"", "\"pools\"",
+ "\"pool\"", "\"pd-pools\"", "\"prefix\"", "\"prefix-len\"",
+ "\"excluded-prefix\"", "\"excluded-prefix-len\"", "\"delegated-len\"",
+ "\"user-context\"", "\"comment\"", "\"subnet\"", "\"interface\"",
+ "\"interface-id\"", "\"id\"", "\"rapid-commit\"", "\"reservation-mode\"",
+ "\"disabled\"", "\"out-of-pool\"", "\"global\"", "\"all\"",
+ "\"shared-networks\"", "\"mac-sources\"", "\"relay-supplied-options\"",
"\"host-reservation-identifiers\"", "\"sanity-checks\"",
"\"lease-checks\"", "\"client-classes\"", "\"require-client-classes\"",
"\"test\"", "\"only-if-required\"", "\"client-class\"",
"name", "$@34", "persist", "lfc_interval", "readonly", "connect_timeout",
"reconnect_wait_time", "request_timeout", "tcp_keepalive", "tcp_nodelay",
"contact_points", "$@35", "max_reconnect_tries", "keyspace", "$@36",
- "sanity_checks", "$@37", "sanity_checks_params", "sanity_checks_param",
- "lease_checks", "$@38", "mac_sources", "$@39", "mac_sources_list",
- "mac_sources_value", "duid_id", "string_id",
+ "max_row_errors", "sanity_checks", "$@37", "sanity_checks_params",
+ "sanity_checks_param", "lease_checks", "$@38", "mac_sources", "$@39",
+ "mac_sources_list", "mac_sources_value", "duid_id", "string_id",
"host_reservation_identifiers", "$@40",
"host_reservation_identifiers_list", "host_reservation_identifier",
"hw_address_id", "flex_id", "relay_supplied_options", "$@41",
const unsigned short
Dhcp6Parser::yyrline_[] =
{
- 0, 257, 257, 257, 258, 258, 259, 259, 260, 260,
- 261, 261, 262, 262, 263, 263, 264, 264, 265, 265,
- 266, 266, 267, 267, 268, 268, 269, 269, 270, 270,
- 271, 271, 279, 280, 281, 282, 283, 284, 285, 288,
- 293, 293, 304, 307, 308, 311, 315, 322, 322, 329,
- 330, 333, 337, 344, 344, 351, 352, 355, 359, 370,
- 380, 380, 395, 396, 400, 401, 402, 403, 404, 405,
- 408, 408, 423, 423, 432, 433, 438, 439, 440, 441,
- 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
- 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
- 462, 463, 464, 465, 466, 467, 468, 469, 472, 477,
- 482, 487, 492, 497, 497, 505, 505, 516, 516, 525,
- 526, 529, 530, 531, 532, 533, 536, 536, 546, 552,
- 552, 564, 564, 576, 576, 586, 587, 590, 591, 594,
- 594, 604, 605, 608, 609, 610, 611, 612, 613, 614,
- 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
- 625, 628, 628, 635, 636, 637, 638, 641, 641, 649,
- 649, 657, 657, 665, 670, 670, 678, 683, 688, 693,
- 698, 703, 708, 713, 718, 718, 726, 731, 731, 739,
- 739, 749, 750, 752, 754, 754, 772, 772, 782, 783,
- 786, 787, 790, 795, 800, 800, 810, 811, 814, 815,
- 816, 819, 824, 831, 831, 841, 841, 851, 852, 855,
- 856, 859, 859, 869, 869, 879, 880, 881, 884, 885,
- 888, 888, 896, 896, 904, 904, 915, 916, 919, 920,
- 921, 922, 923, 924, 927, 932, 937, 942, 947, 952,
- 960, 960, 973, 974, 977, 978, 985, 985, 1011, 1011,
- 1022, 1023, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
- 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
- 1045, 1046, 1049, 1049, 1057, 1057, 1065, 1065, 1073, 1073,
- 1081, 1081, 1091, 1091, 1098, 1099, 1100, 1101, 1104, 1109,
- 1117, 1117, 1128, 1129, 1133, 1134, 1137, 1137, 1145, 1146,
- 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158,
- 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1172, 1172, 1185,
- 1185, 1194, 1195, 1198, 1199, 1204, 1204, 1219, 1219, 1233,
- 1234, 1237, 1238, 1241, 1242, 1243, 1244, 1245, 1246, 1247,
- 1248, 1249, 1250, 1253, 1255, 1260, 1262, 1262, 1270, 1270,
- 1278, 1278, 1286, 1288, 1288, 1296, 1305, 1305, 1317, 1318,
- 1323, 1324, 1329, 1329, 1341, 1341, 1353, 1354, 1359, 1360,
- 1365, 1366, 1367, 1368, 1369, 1370, 1371, 1372, 1373, 1376,
- 1378, 1378, 1386, 1388, 1390, 1395, 1403, 1403, 1415, 1416,
- 1419, 1420, 1423, 1423, 1433, 1433, 1442, 1443, 1446, 1447,
- 1448, 1449, 1450, 1451, 1452, 1455, 1455, 1463, 1463, 1488,
- 1488, 1518, 1518, 1530, 1531, 1534, 1535, 1538, 1538, 1550,
- 1550, 1562, 1563, 1566, 1567, 1568, 1569, 1570, 1571, 1572,
- 1573, 1574, 1575, 1576, 1579, 1579, 1587, 1592, 1592, 1600,
- 1605, 1613, 1613, 1623, 1624, 1627, 1628, 1631, 1631, 1640,
- 1640, 1649, 1650, 1653, 1654, 1658, 1659, 1660, 1661, 1662,
- 1663, 1664, 1665, 1666, 1667, 1668, 1671, 1671, 1681, 1681,
- 1691, 1691, 1699, 1699, 1707, 1707, 1715, 1715, 1723, 1723,
- 1736, 1736, 1746, 1747, 1750, 1750, 1761, 1761, 1771, 1772,
- 1775, 1775, 1785, 1786, 1789, 1790, 1793, 1794, 1795, 1796,
- 1797, 1798, 1799, 1802, 1804, 1804, 1812, 1820, 1820, 1832,
- 1833, 1836, 1837, 1838, 1839, 1840, 1841, 1842, 1843, 1844,
- 1847, 1847, 1854, 1855, 1856, 1859, 1864, 1864, 1872, 1877,
- 1884, 1891, 1891, 1901, 1902, 1905, 1906, 1907, 1908, 1909,
- 1912, 1912, 1920, 1920, 1930, 1930, 1970, 1970, 1982, 1982,
- 1992, 1993, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
- 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013,
- 2016, 2021, 2021, 2029, 2029, 2037, 2042, 2042, 2050, 2055,
- 2060, 2060, 2068, 2069, 2072, 2072, 2080, 2085, 2090, 2090,
- 2098, 2101, 2104, 2107, 2110, 2116, 2116, 2124, 2124, 2132,
- 2132, 2142, 2142, 2149, 2149, 2156, 2156, 2165, 2165, 2176,
- 2176, 2186, 2187, 2191, 2194, 2194, 2209, 2209, 2219, 2219,
- 2230, 2231, 2235, 2239, 2239, 2251, 2252, 2256, 2256, 2264,
- 2265, 2268, 2269, 2270, 2271, 2272, 2273, 2274, 2277, 2282,
- 2282, 2290, 2290, 2300, 2301, 2304, 2304, 2312, 2313, 2316,
- 2317, 2318, 2319, 2322, 2322, 2330, 2335, 2340
+ 0, 258, 258, 258, 259, 259, 260, 260, 261, 261,
+ 262, 262, 263, 263, 264, 264, 265, 265, 266, 266,
+ 267, 267, 268, 268, 269, 269, 270, 270, 271, 271,
+ 272, 272, 280, 281, 282, 283, 284, 285, 286, 289,
+ 294, 294, 305, 308, 309, 312, 316, 323, 323, 330,
+ 331, 334, 338, 345, 345, 352, 353, 356, 360, 371,
+ 381, 381, 396, 397, 401, 402, 403, 404, 405, 406,
+ 409, 409, 424, 424, 433, 434, 439, 440, 441, 442,
+ 443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 473, 478,
+ 483, 488, 493, 498, 498, 506, 506, 517, 517, 526,
+ 527, 530, 531, 532, 533, 534, 537, 537, 547, 553,
+ 553, 565, 565, 577, 577, 587, 588, 591, 592, 595,
+ 595, 605, 606, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 630, 630, 637, 638, 639, 640, 643, 643,
+ 651, 651, 659, 659, 667, 672, 672, 680, 685, 690,
+ 695, 700, 705, 710, 715, 720, 720, 728, 733, 733,
+ 741, 746, 746, 756, 757, 759, 761, 761, 779, 779,
+ 789, 790, 793, 794, 797, 802, 807, 807, 817, 818,
+ 821, 822, 823, 826, 831, 838, 838, 848, 848, 858,
+ 859, 862, 863, 866, 866, 876, 876, 886, 887, 888,
+ 891, 892, 895, 895, 903, 903, 911, 911, 922, 923,
+ 926, 927, 928, 929, 930, 931, 934, 939, 944, 949,
+ 954, 959, 967, 967, 980, 981, 984, 985, 992, 992,
+ 1018, 1018, 1029, 1030, 1034, 1035, 1036, 1037, 1038, 1039,
+ 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049,
+ 1050, 1051, 1052, 1053, 1056, 1056, 1064, 1064, 1072, 1072,
+ 1080, 1080, 1088, 1088, 1098, 1098, 1105, 1106, 1107, 1108,
+ 1111, 1116, 1124, 1124, 1135, 1136, 1140, 1141, 1144, 1144,
+ 1152, 1153, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163,
+ 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1179,
+ 1179, 1192, 1192, 1201, 1202, 1205, 1206, 1211, 1211, 1226,
+ 1226, 1240, 1241, 1244, 1245, 1248, 1249, 1250, 1251, 1252,
+ 1253, 1254, 1255, 1256, 1257, 1260, 1262, 1267, 1269, 1269,
+ 1277, 1277, 1285, 1285, 1293, 1295, 1295, 1303, 1312, 1312,
+ 1324, 1325, 1330, 1331, 1336, 1336, 1348, 1348, 1360, 1361,
+ 1366, 1367, 1372, 1373, 1374, 1375, 1376, 1377, 1378, 1379,
+ 1380, 1383, 1385, 1385, 1393, 1395, 1397, 1402, 1410, 1410,
+ 1422, 1423, 1426, 1427, 1430, 1430, 1440, 1440, 1449, 1450,
+ 1453, 1454, 1455, 1456, 1457, 1458, 1459, 1462, 1462, 1470,
+ 1470, 1495, 1495, 1525, 1525, 1537, 1538, 1541, 1542, 1545,
+ 1545, 1557, 1557, 1569, 1570, 1573, 1574, 1575, 1576, 1577,
+ 1578, 1579, 1580, 1581, 1582, 1583, 1586, 1586, 1594, 1599,
+ 1599, 1607, 1612, 1620, 1620, 1630, 1631, 1634, 1635, 1638,
+ 1638, 1647, 1647, 1656, 1657, 1660, 1661, 1665, 1666, 1667,
+ 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1678, 1678,
+ 1688, 1688, 1698, 1698, 1706, 1706, 1714, 1714, 1722, 1722,
+ 1730, 1730, 1743, 1743, 1753, 1754, 1757, 1757, 1768, 1768,
+ 1778, 1779, 1782, 1782, 1792, 1793, 1796, 1797, 1800, 1801,
+ 1802, 1803, 1804, 1805, 1806, 1809, 1811, 1811, 1819, 1827,
+ 1827, 1839, 1840, 1843, 1844, 1845, 1846, 1847, 1848, 1849,
+ 1850, 1851, 1854, 1854, 1861, 1862, 1863, 1866, 1871, 1871,
+ 1879, 1884, 1891, 1898, 1898, 1908, 1909, 1912, 1913, 1914,
+ 1915, 1916, 1919, 1919, 1927, 1927, 1937, 1937, 1977, 1977,
+ 1989, 1989, 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2008,
+ 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018,
+ 2019, 2020, 2023, 2028, 2028, 2036, 2036, 2044, 2049, 2049,
+ 2057, 2062, 2067, 2067, 2075, 2076, 2079, 2079, 2087, 2092,
+ 2097, 2097, 2105, 2108, 2111, 2114, 2117, 2123, 2123, 2131,
+ 2131, 2139, 2139, 2149, 2149, 2156, 2156, 2163, 2163, 2172,
+ 2172, 2183, 2183, 2193, 2194, 2198, 2201, 2201, 2216, 2216,
+ 2226, 2226, 2237, 2238, 2242, 2246, 2246, 2258, 2259, 2263,
+ 2263, 2271, 2272, 2275, 2276, 2277, 2278, 2279, 2280, 2281,
+ 2284, 2289, 2289, 2297, 2297, 2307, 2308, 2311, 2311, 2319,
+ 2320, 2323, 2324, 2325, 2326, 2329, 2329, 2337, 2342, 2347
};
// Print the state stack on the debug stream.
#line 14 "dhcp6_parser.yy" // lalr1.cc:1218
} } // isc::dhcp
-#line 5057 "dhcp6_parser.cc" // lalr1.cc:1218
-#line 2345 "dhcp6_parser.yy" // lalr1.cc:1219
+#line 5066 "dhcp6_parser.cc" // lalr1.cc:1218
+#line 2352 "dhcp6_parser.yy" // lalr1.cc:1219
void
# include <string>
# include <vector>
-#if defined __cplusplus
-# define YY_CPLUSPLUS __cplusplus
-#else
-# define YY_CPLUSPLUS 199711L
-#endif
-
// Support move semantics when possible.
-#if 201103L <= YY_CPLUSPLUS
+#if defined __cplusplus && 201103L <= __cplusplus
# define YY_MOVE std::move
# define YY_MOVE_OR_COPY move
# define YY_MOVE_REF(Type) Type&&
#line 14 "dhcp6_parser.yy" // lalr1.cc:404
namespace isc { namespace dhcp {
-#line 168 "dhcp6_parser.h" // lalr1.cc:404
+#line 162 "dhcp6_parser.h" // lalr1.cc:404
/// A stack with random access from its top.
template <typename T, typename S = std::vector<T> >
return *new (yyas_<T> ()) T ();
}
-# if 201103L <= YY_CPLUSPLUS
+# if defined __cplusplus && 201103L <= __cplusplus
/// Instantiate a \a T in here from \a t.
template <typename T, typename U>
T&
void
move (self_type& other)
{
-# if 201103L <= YY_CPLUSPLUS
+# if defined __cplusplus && 201103L <= __cplusplus
emplace<T> (std::move (other.as<T> ()));
# else
emplace<T> ();
other.destroy<T> ();
}
-# if 201103L <= YY_CPLUSPLUS
+# if defined __cplusplus && 201103L <= __cplusplus
/// Move the content of \a other to this.
template <typename T>
void
TOKEN_REQUEST_TIMEOUT = 291,
TOKEN_TCP_KEEPALIVE = 292,
TOKEN_TCP_NODELAY = 293,
- TOKEN_PREFERRED_LIFETIME = 294,
- TOKEN_VALID_LIFETIME = 295,
- TOKEN_RENEW_TIMER = 296,
- TOKEN_REBIND_TIMER = 297,
- TOKEN_DECLINE_PROBATION_PERIOD = 298,
- TOKEN_SERVER_TAG = 299,
- TOKEN_SUBNET6 = 300,
- TOKEN_OPTION_DEF = 301,
- TOKEN_OPTION_DATA = 302,
- TOKEN_NAME = 303,
- TOKEN_DATA = 304,
- TOKEN_CODE = 305,
- TOKEN_SPACE = 306,
- TOKEN_CSV_FORMAT = 307,
- TOKEN_ALWAYS_SEND = 308,
- TOKEN_RECORD_TYPES = 309,
- TOKEN_ENCAPSULATE = 310,
- TOKEN_ARRAY = 311,
- TOKEN_POOLS = 312,
- TOKEN_POOL = 313,
- TOKEN_PD_POOLS = 314,
- TOKEN_PREFIX = 315,
- TOKEN_PREFIX_LEN = 316,
- TOKEN_EXCLUDED_PREFIX = 317,
- TOKEN_EXCLUDED_PREFIX_LEN = 318,
- TOKEN_DELEGATED_LEN = 319,
- TOKEN_USER_CONTEXT = 320,
- TOKEN_COMMENT = 321,
- TOKEN_SUBNET = 322,
- TOKEN_INTERFACE = 323,
- TOKEN_INTERFACE_ID = 324,
- TOKEN_ID = 325,
- TOKEN_RAPID_COMMIT = 326,
- TOKEN_RESERVATION_MODE = 327,
- TOKEN_DISABLED = 328,
- TOKEN_OUT_OF_POOL = 329,
- TOKEN_GLOBAL = 330,
- TOKEN_ALL = 331,
- TOKEN_SHARED_NETWORKS = 332,
- TOKEN_MAC_SOURCES = 333,
- TOKEN_RELAY_SUPPLIED_OPTIONS = 334,
- TOKEN_HOST_RESERVATION_IDENTIFIERS = 335,
- TOKEN_SANITY_CHECKS = 336,
- TOKEN_LEASE_CHECKS = 337,
- TOKEN_CLIENT_CLASSES = 338,
- TOKEN_REQUIRE_CLIENT_CLASSES = 339,
- TOKEN_TEST = 340,
- TOKEN_ONLY_IF_REQUIRED = 341,
- TOKEN_CLIENT_CLASS = 342,
- TOKEN_RESERVATIONS = 343,
- TOKEN_IP_ADDRESSES = 344,
- TOKEN_PREFIXES = 345,
- TOKEN_DUID = 346,
- TOKEN_HW_ADDRESS = 347,
- TOKEN_HOSTNAME = 348,
- TOKEN_FLEX_ID = 349,
- TOKEN_RELAY = 350,
- TOKEN_IP_ADDRESS = 351,
- TOKEN_HOOKS_LIBRARIES = 352,
- TOKEN_LIBRARY = 353,
- TOKEN_PARAMETERS = 354,
- TOKEN_EXPIRED_LEASES_PROCESSING = 355,
- TOKEN_RECLAIM_TIMER_WAIT_TIME = 356,
- TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 357,
- TOKEN_HOLD_RECLAIMED_TIME = 358,
- TOKEN_MAX_RECLAIM_LEASES = 359,
- TOKEN_MAX_RECLAIM_TIME = 360,
- TOKEN_UNWARNED_RECLAIM_CYCLES = 361,
- TOKEN_SERVER_ID = 362,
- TOKEN_LLT = 363,
- TOKEN_EN = 364,
- TOKEN_LL = 365,
- TOKEN_IDENTIFIER = 366,
- TOKEN_HTYPE = 367,
- TOKEN_TIME = 368,
- TOKEN_ENTERPRISE_ID = 369,
- TOKEN_DHCP4O6_PORT = 370,
- TOKEN_CONTROL_SOCKET = 371,
- TOKEN_SOCKET_TYPE = 372,
- TOKEN_SOCKET_NAME = 373,
- TOKEN_DHCP_QUEUE_CONTROL = 374,
- TOKEN_DHCP_DDNS = 375,
- TOKEN_ENABLE_UPDATES = 376,
- TOKEN_QUALIFYING_SUFFIX = 377,
- TOKEN_SERVER_IP = 378,
- TOKEN_SERVER_PORT = 379,
- TOKEN_SENDER_IP = 380,
- TOKEN_SENDER_PORT = 381,
- TOKEN_MAX_QUEUE_SIZE = 382,
- TOKEN_NCR_PROTOCOL = 383,
- TOKEN_NCR_FORMAT = 384,
- TOKEN_OVERRIDE_NO_UPDATE = 385,
- TOKEN_OVERRIDE_CLIENT_UPDATE = 386,
- TOKEN_REPLACE_CLIENT_NAME = 387,
- TOKEN_GENERATED_PREFIX = 388,
- TOKEN_UDP = 389,
- TOKEN_TCP = 390,
- TOKEN_JSON = 391,
- TOKEN_WHEN_PRESENT = 392,
- TOKEN_NEVER = 393,
- TOKEN_ALWAYS = 394,
- TOKEN_WHEN_NOT_PRESENT = 395,
- TOKEN_HOSTNAME_CHAR_SET = 396,
- TOKEN_HOSTNAME_CHAR_REPLACEMENT = 397,
- TOKEN_LOGGING = 398,
- TOKEN_LOGGERS = 399,
- TOKEN_OUTPUT_OPTIONS = 400,
- TOKEN_OUTPUT = 401,
- TOKEN_DEBUGLEVEL = 402,
- TOKEN_SEVERITY = 403,
- TOKEN_FLUSH = 404,
- TOKEN_MAXSIZE = 405,
- TOKEN_MAXVER = 406,
- TOKEN_DHCP4 = 407,
- TOKEN_DHCPDDNS = 408,
- TOKEN_CONTROL_AGENT = 409,
- TOKEN_TOPLEVEL_JSON = 410,
- TOKEN_TOPLEVEL_DHCP6 = 411,
- TOKEN_SUB_DHCP6 = 412,
- TOKEN_SUB_INTERFACES6 = 413,
- TOKEN_SUB_SUBNET6 = 414,
- TOKEN_SUB_POOL6 = 415,
- TOKEN_SUB_PD_POOL = 416,
- TOKEN_SUB_RESERVATION = 417,
- TOKEN_SUB_OPTION_DEFS = 418,
- TOKEN_SUB_OPTION_DEF = 419,
- TOKEN_SUB_OPTION_DATA = 420,
- TOKEN_SUB_HOOKS_LIBRARY = 421,
- TOKEN_SUB_DHCP_DDNS = 422,
- TOKEN_SUB_LOGGING = 423,
- TOKEN_SUB_CONFIG_CONTROL = 424,
- TOKEN_STRING = 425,
- TOKEN_INTEGER = 426,
- TOKEN_FLOAT = 427,
- TOKEN_BOOLEAN = 428
+ TOKEN_MAX_ROW_ERRORS = 294,
+ TOKEN_PREFERRED_LIFETIME = 295,
+ TOKEN_VALID_LIFETIME = 296,
+ TOKEN_RENEW_TIMER = 297,
+ TOKEN_REBIND_TIMER = 298,
+ TOKEN_DECLINE_PROBATION_PERIOD = 299,
+ TOKEN_SERVER_TAG = 300,
+ TOKEN_SUBNET6 = 301,
+ TOKEN_OPTION_DEF = 302,
+ TOKEN_OPTION_DATA = 303,
+ TOKEN_NAME = 304,
+ TOKEN_DATA = 305,
+ TOKEN_CODE = 306,
+ TOKEN_SPACE = 307,
+ TOKEN_CSV_FORMAT = 308,
+ TOKEN_ALWAYS_SEND = 309,
+ TOKEN_RECORD_TYPES = 310,
+ TOKEN_ENCAPSULATE = 311,
+ TOKEN_ARRAY = 312,
+ TOKEN_POOLS = 313,
+ TOKEN_POOL = 314,
+ TOKEN_PD_POOLS = 315,
+ TOKEN_PREFIX = 316,
+ TOKEN_PREFIX_LEN = 317,
+ TOKEN_EXCLUDED_PREFIX = 318,
+ TOKEN_EXCLUDED_PREFIX_LEN = 319,
+ TOKEN_DELEGATED_LEN = 320,
+ TOKEN_USER_CONTEXT = 321,
+ TOKEN_COMMENT = 322,
+ TOKEN_SUBNET = 323,
+ TOKEN_INTERFACE = 324,
+ TOKEN_INTERFACE_ID = 325,
+ TOKEN_ID = 326,
+ TOKEN_RAPID_COMMIT = 327,
+ TOKEN_RESERVATION_MODE = 328,
+ TOKEN_DISABLED = 329,
+ TOKEN_OUT_OF_POOL = 330,
+ TOKEN_GLOBAL = 331,
+ TOKEN_ALL = 332,
+ TOKEN_SHARED_NETWORKS = 333,
+ TOKEN_MAC_SOURCES = 334,
+ TOKEN_RELAY_SUPPLIED_OPTIONS = 335,
+ TOKEN_HOST_RESERVATION_IDENTIFIERS = 336,
+ TOKEN_SANITY_CHECKS = 337,
+ TOKEN_LEASE_CHECKS = 338,
+ TOKEN_CLIENT_CLASSES = 339,
+ TOKEN_REQUIRE_CLIENT_CLASSES = 340,
+ TOKEN_TEST = 341,
+ TOKEN_ONLY_IF_REQUIRED = 342,
+ TOKEN_CLIENT_CLASS = 343,
+ TOKEN_RESERVATIONS = 344,
+ TOKEN_IP_ADDRESSES = 345,
+ TOKEN_PREFIXES = 346,
+ TOKEN_DUID = 347,
+ TOKEN_HW_ADDRESS = 348,
+ TOKEN_HOSTNAME = 349,
+ TOKEN_FLEX_ID = 350,
+ TOKEN_RELAY = 351,
+ TOKEN_IP_ADDRESS = 352,
+ TOKEN_HOOKS_LIBRARIES = 353,
+ TOKEN_LIBRARY = 354,
+ TOKEN_PARAMETERS = 355,
+ TOKEN_EXPIRED_LEASES_PROCESSING = 356,
+ TOKEN_RECLAIM_TIMER_WAIT_TIME = 357,
+ TOKEN_FLUSH_RECLAIMED_TIMER_WAIT_TIME = 358,
+ TOKEN_HOLD_RECLAIMED_TIME = 359,
+ TOKEN_MAX_RECLAIM_LEASES = 360,
+ TOKEN_MAX_RECLAIM_TIME = 361,
+ TOKEN_UNWARNED_RECLAIM_CYCLES = 362,
+ TOKEN_SERVER_ID = 363,
+ TOKEN_LLT = 364,
+ TOKEN_EN = 365,
+ TOKEN_LL = 366,
+ TOKEN_IDENTIFIER = 367,
+ TOKEN_HTYPE = 368,
+ TOKEN_TIME = 369,
+ TOKEN_ENTERPRISE_ID = 370,
+ TOKEN_DHCP4O6_PORT = 371,
+ TOKEN_CONTROL_SOCKET = 372,
+ TOKEN_SOCKET_TYPE = 373,
+ TOKEN_SOCKET_NAME = 374,
+ TOKEN_DHCP_QUEUE_CONTROL = 375,
+ TOKEN_DHCP_DDNS = 376,
+ TOKEN_ENABLE_UPDATES = 377,
+ TOKEN_QUALIFYING_SUFFIX = 378,
+ TOKEN_SERVER_IP = 379,
+ TOKEN_SERVER_PORT = 380,
+ TOKEN_SENDER_IP = 381,
+ TOKEN_SENDER_PORT = 382,
+ TOKEN_MAX_QUEUE_SIZE = 383,
+ TOKEN_NCR_PROTOCOL = 384,
+ TOKEN_NCR_FORMAT = 385,
+ TOKEN_OVERRIDE_NO_UPDATE = 386,
+ TOKEN_OVERRIDE_CLIENT_UPDATE = 387,
+ TOKEN_REPLACE_CLIENT_NAME = 388,
+ TOKEN_GENERATED_PREFIX = 389,
+ TOKEN_UDP = 390,
+ TOKEN_TCP = 391,
+ TOKEN_JSON = 392,
+ TOKEN_WHEN_PRESENT = 393,
+ TOKEN_NEVER = 394,
+ TOKEN_ALWAYS = 395,
+ TOKEN_WHEN_NOT_PRESENT = 396,
+ TOKEN_HOSTNAME_CHAR_SET = 397,
+ TOKEN_HOSTNAME_CHAR_REPLACEMENT = 398,
+ TOKEN_LOGGING = 399,
+ TOKEN_LOGGERS = 400,
+ TOKEN_OUTPUT_OPTIONS = 401,
+ TOKEN_OUTPUT = 402,
+ TOKEN_DEBUGLEVEL = 403,
+ TOKEN_SEVERITY = 404,
+ TOKEN_FLUSH = 405,
+ TOKEN_MAXSIZE = 406,
+ TOKEN_MAXVER = 407,
+ TOKEN_DHCP4 = 408,
+ TOKEN_DHCPDDNS = 409,
+ TOKEN_CONTROL_AGENT = 410,
+ TOKEN_TOPLEVEL_JSON = 411,
+ TOKEN_TOPLEVEL_DHCP6 = 412,
+ TOKEN_SUB_DHCP6 = 413,
+ TOKEN_SUB_INTERFACES6 = 414,
+ TOKEN_SUB_SUBNET6 = 415,
+ TOKEN_SUB_POOL6 = 416,
+ TOKEN_SUB_PD_POOL = 417,
+ TOKEN_SUB_RESERVATION = 418,
+ TOKEN_SUB_OPTION_DEFS = 419,
+ TOKEN_SUB_OPTION_DEF = 420,
+ TOKEN_SUB_OPTION_DATA = 421,
+ TOKEN_SUB_HOOKS_LIBRARY = 422,
+ TOKEN_SUB_DHCP_DDNS = 423,
+ TOKEN_SUB_LOGGING = 424,
+ TOKEN_SUB_CONFIG_CONTROL = 425,
+ TOKEN_STRING = 426,
+ TOKEN_INTEGER = 427,
+ TOKEN_FLOAT = 428,
+ TOKEN_BOOLEAN = 429
};
};
/// Constructor for valueless symbols, and symbols from each type.
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, ElementPtr&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const ElementPtr& v, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, bool&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const bool& v, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, double&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const double& v, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, int64_t&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const int64_t& v, const location_type& l);
-#endif
-# if 201103L <= YY_CPLUSPLUS
- basic_symbol (typename Base::kind_type t, std::string&& v, location_type&& l);
-#else
- basic_symbol (typename Base::kind_type t, const std::string& v, const location_type& l);
-#endif
+ basic_symbol (typename Base::kind_type t, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (ElementPtr) v, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (bool) v, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (double) v, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (int64_t) v, YY_RVREF (location_type) l);
+ basic_symbol (typename Base::kind_type t, YY_RVREF (std::string) v, YY_RVREF (location_type) l);
/// Destroy the symbol.
location_type location;
private:
-#if YY_CPLUSPLUS < 201103L
+#if !defined __cplusplus || __cplusplus < 201103L
/// Assignment operator.
basic_symbol& operator= (const basic_symbol& other);
#endif
symbol_type
make_TCP_NODELAY (YY_COPY (location_type) l);
+ static
+ symbol_type
+ make_MAX_ROW_ERRORS (YY_COPY (location_type) l);
+
static
symbol_type
make_PREFERRED_LIFETIME (YY_COPY (location_type) l);
stack_symbol_type (YY_RVREF (stack_symbol_type) that);
/// Steal the contents from \a sym to build this.
stack_symbol_type (state_type s, YY_MOVE_REF (symbol_type) sym);
-#if YY_CPLUSPLUS < 201103L
+#if !defined __cplusplus || __cplusplus < 201103L
/// Assignment, needed by push_back by some old implementations.
/// Moves the contents of that.
stack_symbol_type& operator= (stack_symbol_type& that);
enum
{
yyeof_ = 0,
- yylast_ = 1020, ///< Last index in yytable_.
- yynnts_ = 389, ///< Number of nonterminal symbols.
+ yylast_ = 1024, ///< Last index in yytable_.
+ yynnts_ = 390, ///< Number of nonterminal symbols.
yyfinal_ = 32, ///< Termination state number.
yyterror_ = 1,
yyerrcode_ = 256,
- yyntokens_ = 174 ///< Number of tokens.
+ yyntokens_ = 175 ///< Number of tokens.
};
135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
- 165, 166, 167, 168, 169, 170, 171, 172, 173
+ 165, 166, 167, 168, 169, 170, 171, 172, 173, 174
};
- const unsigned user_token_number_max_ = 428;
+ const unsigned user_token_number_max_ = 429;
const token_number_type undef_token_ = 2;
if (static_cast<int> (t) <= yyeof_)
{
switch (other.type_get ())
{
- case 191: // value
- case 195: // map_value
- case 247: // db_type
- case 336: // hr_mode
- case 472: // duid_type
- case 507: // ncr_protocol_value
- case 514: // replace_client_name_value
+ case 192: // value
+ case 196: // map_value
+ case 248: // db_type
+ case 338: // hr_mode
+ case 474: // duid_type
+ case 509: // ncr_protocol_value
+ case 516: // replace_client_name_value
value.YY_MOVE_OR_COPY< ElementPtr > (YY_MOVE (other.value));
break;
- case 173: // "boolean"
+ case 174: // "boolean"
value.YY_MOVE_OR_COPY< bool > (YY_MOVE (other.value));
break;
- case 172: // "floating point"
+ case 173: // "floating point"
value.YY_MOVE_OR_COPY< double > (YY_MOVE (other.value));
break;
- case 171: // "integer"
+ case 172: // "integer"
value.YY_MOVE_OR_COPY< int64_t > (YY_MOVE (other.value));
break;
- case 170: // "constant string"
+ case 171: // "constant string"
value.YY_MOVE_OR_COPY< std::string > (YY_MOVE (other.value));
break;
// Implementation of basic_symbol constructor for each type.
-# if 201103L <= YY_CPLUSPLUS
- template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, location_type&& l)
- : Base (t)
- , location (std::move (l))
- {}
-#else
- template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const location_type& l)
- : Base (t)
- , location (l)
- {}
-#endif
-# if 201103L <= YY_CPLUSPLUS
- template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, ElementPtr&& v, location_type&& l)
- : Base (t)
- , value (std::move (v))
- , location (std::move (l))
- {}
-#else
template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const ElementPtr& v, const location_type& l)
+ Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (location_type) l)
: Base (t)
- , value (v)
- , location (l)
+ , location (YY_MOVE (l))
{}
-#endif
-# if 201103L <= YY_CPLUSPLUS
- template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, bool&& v, location_type&& l)
- : Base (t)
- , value (std::move (v))
- , location (std::move (l))
- {}
-#else
- template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const bool& v, const location_type& l)
- : Base (t)
- , value (v)
- , location (l)
- {}
-#endif
-# if 201103L <= YY_CPLUSPLUS
- template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, double&& v, location_type&& l)
- : Base (t)
- , value (std::move (v))
- , location (std::move (l))
- {}
-#else
+
template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const double& v, const location_type& l)
+ Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (ElementPtr) v, YY_RVREF (location_type) l)
: Base (t)
- , value (v)
- , location (l)
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#endif
-# if 201103L <= YY_CPLUSPLUS
+
template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, int64_t&& v, location_type&& l)
+ Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (bool) v, YY_RVREF (location_type) l)
: Base (t)
- , value (std::move (v))
- , location (std::move (l))
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#else
+
template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const int64_t& v, const location_type& l)
+ Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (double) v, YY_RVREF (location_type) l)
: Base (t)
- , value (v)
- , location (l)
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#endif
-# if 201103L <= YY_CPLUSPLUS
+
template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, std::string&& v, location_type&& l)
+ Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (int64_t) v, YY_RVREF (location_type) l)
: Base (t)
- , value (std::move (v))
- , location (std::move (l))
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#else
+
template <typename Base>
- Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, const std::string& v, const location_type& l)
+ Dhcp6Parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (std::string) v, YY_RVREF (location_type) l)
: Base (t)
- , value (v)
- , location (l)
+ , value (YY_MOVE (v))
+ , location (YY_MOVE (l))
{}
-#endif
+
template <typename Base>
// Type destructor.
switch (yytype)
{
- case 191: // value
- case 195: // map_value
- case 247: // db_type
- case 336: // hr_mode
- case 472: // duid_type
- case 507: // ncr_protocol_value
- case 514: // replace_client_name_value
+ case 192: // value
+ case 196: // map_value
+ case 248: // db_type
+ case 338: // hr_mode
+ case 474: // duid_type
+ case 509: // ncr_protocol_value
+ case 516: // replace_client_name_value
value.template destroy< ElementPtr > ();
break;
- case 173: // "boolean"
+ case 174: // "boolean"
value.template destroy< bool > ();
break;
- case 172: // "floating point"
+ case 173: // "floating point"
value.template destroy< double > ();
break;
- case 171: // "integer"
+ case 172: // "integer"
value.template destroy< int64_t > ();
break;
- case 170: // "constant string"
+ case 171: // "constant string"
value.template destroy< std::string > ();
break;
super_type::move (s);
switch (this->type_get ())
{
- case 191: // value
- case 195: // map_value
- case 247: // db_type
- case 336: // hr_mode
- case 472: // duid_type
- case 507: // ncr_protocol_value
- case 514: // replace_client_name_value
+ case 192: // value
+ case 196: // map_value
+ case 248: // db_type
+ case 338: // hr_mode
+ case 474: // duid_type
+ case 509: // ncr_protocol_value
+ case 516: // replace_client_name_value
value.move< ElementPtr > (YY_MOVE (s.value));
break;
- case 173: // "boolean"
+ case 174: // "boolean"
value.move< bool > (YY_MOVE (s.value));
break;
- case 172: // "floating point"
+ case 173: // "floating point"
value.move< double > (YY_MOVE (s.value));
break;
- case 171: // "integer"
+ case 172: // "integer"
value.move< int64_t > (YY_MOVE (s.value));
break;
- case 170: // "constant string"
+ case 171: // "constant string"
value.move< std::string > (YY_MOVE (s.value));
break;
395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
- 425, 426, 427, 428
+ 425, 426, 427, 428, 429
};
return static_cast<token_type> (yytoken_number_[type]);
}
return symbol_type (token::TOKEN_TCP_NODELAY, YY_MOVE (l));
}
+ inline
+ Dhcp6Parser::symbol_type
+ Dhcp6Parser::make_MAX_ROW_ERRORS (YY_COPY (location_type) l)
+ {
+ return symbol_type (token::TOKEN_MAX_ROW_ERRORS, YY_MOVE (l));
+ }
+
inline
Dhcp6Parser::symbol_type
Dhcp6Parser::make_PREFERRED_LIFETIME (YY_COPY (location_type) l)
#line 14 "dhcp6_parser.yy" // lalr1.cc:404
} } // isc::dhcp
-#line 3354 "dhcp6_parser.h" // lalr1.cc:404
+#line 3289 "dhcp6_parser.h" // lalr1.cc:404
REQUEST_TIMEOUT "request-timeout"
TCP_KEEPALIVE "tcp-keepalive"
TCP_NODELAY "tcp-nodelay"
+ MAX_ROW_ERRORS "max-row-errors"
PREFERRED_LIFETIME "preferred-lifetime"
VALID_LIFETIME "valid-lifetime"
| tcp_keepalive
| tcp_nodelay
| keyspace
+ | max_row_errors
| unknown_map_entry
;
ctx.leave();
};
+max_row_errors: MAX_ROW_ERRORS COLON INTEGER {
+ ElementPtr n(new IntElement($3, ctx.loc2pos(@3)));
+ ctx.stack_.back()->set("max-row-errors", n);
+};
+
sanity_checks: SANITY_CHECKS {
ElementPtr m(new MapElement(ctx.loc2pos(@1)));
ctx.stack_.back()->set("sanity-checks", m);
-// Generated 201811271343
// A Bison parser, made by GNU Bison 3.2.1.
// Locations for Bison parsers in C++
-// Generated 201811271343
// A Bison parser, made by GNU Bison 3.2.1.
// Starting with Bison 3.2, this file is useless: the structure it
-// Generated 201811271343
// A Bison parser, made by GNU Bison 3.2.1.
// Starting with Bison 3.2, this file is useless: the structure it
(keyword == "port") ||
(keyword == "max-reconnect-tries") ||
(keyword == "reconnect-wait-time") ||
- (keyword == "tcp-keepalive")) {
-
+ (keyword == "tcp-keepalive") ||
+ (keyword == "max-row-errors")) {
// integer parameters
int64_t int_value;
try {
int64_t reconnect_wait_time = 0;
int64_t request_timeout = 0;
int64_t tcp_keepalive = 0;
+ int64_t max_row_errors = 0;
// 2. Update the copy with the passed keywords.
for (std::pair<std::string, ConstElementPtr> param : database_config->mapValue()) {
values_copy[param.first] =
boost::lexical_cast<std::string>(port);
+ } else if (param.first == "max-row-errors") {
+ max_row_errors = param.second->intValue();
+ values_copy[param.first] =
+ boost::lexical_cast<std::string>(max_row_errors);
+
} else {
values_copy[param.first] = param.second->stringValue();
}
<< " (" << value->getPosition() << ")");
}
+ // f. Check that the max-row-errors is within a reasonable range.
+ if ((max_row_errors < 0) ||
+ (max_row_errors > std::numeric_limits<uint32_t>::max())) {
+ ConstElementPtr value = database_config->get("max-row-errors");
+ isc_throw(DbConfigError, "max-row-errors value: " << max_row_errors
+ << " is out of range, expected value: 0.."
+ << std::numeric_limits<uint32_t>::max()
+ << " (" << value->getPosition() << ")");
+ }
+
// Check that the max-reconnect-retries reasonable.
if (max_reconnect_tries < 0) {
ConstElementPtr value = database_config->get("max-reconnect-tries");
"\"tcp-keepalive\": 101, \n"
"\"tcp-nodelay\": false, \n"
"\"type\": \"memfile\", \n"
- "\"user\": \"user_str\" \n"
+ "\"user\": \"user_str\", \n"
+ "\"max-row-errors\": 50 \n"
"}\n"
};
return ((parameter != "persist") && (parameter != "lfc-interval") &&
(parameter != "connect-timeout") &&
(parameter != "port") &&
+ (parameter != "max-row-errors") &&
(parameter != "readonly"));
}
EXPECT_THROW(parser.parse(json_elements), DbConfigError);
}
+// This test checks that the parser accepts a value of zero for the
+// max-row-errors parameter.
+TEST_F(DbAccessParserTest, zeroMaxRowErrors) {
+ const char* config[] = {"type", "memfile",
+ "name", "/opt/var/lib/kea/kea-leases6.csv",
+ "max-row-errors", "0",
+ NULL};
+
+ string json_config = toJson(config);
+ ConstElementPtr json_elements = Element::fromJSON(json_config);
+ EXPECT_TRUE(json_elements);
+
+ TestDbAccessParser parser;
+ EXPECT_NO_THROW(parser.parse(json_elements));
+ checkAccessString("Zero max-row-errors", parser.getDbAccessParameters(),
+ config);
+}
+
+// This test checks that the parser accepts the valid value of the
+// max-row-errors parameter.
+TEST_F(DbAccessParserTest, validZeroMaxRowErrors) {
+ const char* config[] = {"type", "memfile",
+ "name", "/opt/var/lib/kea/kea-leases6.csv",
+ "max-row-errors", "50",
+ NULL};
+
+ string json_config = toJson(config);
+ ConstElementPtr json_elements = Element::fromJSON(json_config);
+ EXPECT_TRUE(json_elements);
+
+ TestDbAccessParser parser;
+ EXPECT_NO_THROW(parser.parse(json_elements));
+ checkAccessString("Valid max-row-errors", parser.getDbAccessParameters(),
+ config);
+}
+
+
+// This test checks that the parser rejects the negative value of the
+// max-row-errors parameter.
+TEST_F(DbAccessParserTest, negativeMaxRowErrors) {
+ const char* config[] = {"type", "memfile",
+ "name", "/opt/var/lib/kea/kea-leases6.csv",
+ "max-row-errors", "-1",
+ NULL};
+
+ string json_config = toJson(config);
+ ConstElementPtr json_elements = Element::fromJSON(json_config);
+ EXPECT_TRUE(json_elements);
+
+ TestDbAccessParser parser;
+ EXPECT_THROW(parser.parse(json_elements), DbConfigError);
+}
+
+// This test checks that the parser rejects a too large (greater than
+// the max uint32_t) value of the max-row-errors parameter.
+TEST_F(DbAccessParserTest, largeMaxRowErrors) {
+ const char* config[] = {"type", "memfile",
+ "name", "/opt/var/lib/kea/kea-leases6.csv",
+ "max-row-errors", "4294967296",
+ NULL};
+
+ string json_config = toJson(config);
+ ConstElementPtr json_elements = Element::fromJSON(json_config);
+ EXPECT_TRUE(json_elements);
+
+ TestDbAccessParser parser;
+ EXPECT_THROW(parser.parse(json_elements), DbConfigError);
+}
+
// Check that the parser works with a valid MySQL configuration
TEST_F(DbAccessParserTest, validTypeMysql) {
const char* config[] = {"type", "mysql",
/// @param max_errors Maximum number of corrupted leases in the
/// lease file. The method will skip corrupted leases but after
/// exceeding the specified number of errors it will throw an
- /// exception.
+ /// exception. A value of 0 (default) disables the limit check.
/// @param close_file_on_exit A boolean flag which indicates if
/// the file should be closed after it has been successfully parsed.
/// One case when the file is not opened is when the server starts
template<typename LeaseObjectType, typename LeaseFileType,
typename StorageType>
static void load(LeaseFileType& lease_file, StorageType& storage,
- const uint32_t max_errors = 0xFFFFFFFF,
+ const uint32_t max_errors = 0,
const bool close_file_on_exit = true) {
LOG_INFO(dhcpsrv_logger, DHCPSRV_MEMFILE_LEASE_FILE_LOAD)
.arg(lease_file.getReads())
.arg(lease_file.getReadMsg());
- // A value of 0xFFFFFFFF indicates that we don't return
+ // A value of 0 indicates that we don't return
// until the whole file is parsed, even if errors occur.
// Otherwise, check if we have exceeded the maximum number
// of errors and throw an exception if we have.
- if (++errcnt > max_errors) {
+ if (max_errors && (++errcnt > max_errors)) {
// If we break parsing the CSV file because of too many
// errors, it doesn't make sense to keep the file open.
// This is because the caller wouldn't know where we
namespace {
-/// @brief Maximum number of errors to read the leases from the lease file.
-const uint32_t MAX_LEASE_ERRORS = 100;
-
/// @brief A name of the environmental variable specifying the kea-lfc
/// program location.
///
storage.clear();
+ std::string max_row_errors_str = "0";
+ try {
+ max_row_errors_str = conn_.getParameter("max-row-errors");
+ } catch (const std::exception&) {
+ // Ignore and default to 0.
+ }
+
+ uint32_t max_row_errors = 0;
+ try {
+ max_row_errors = boost::lexical_cast<uint32_t>(max_row_errors_str);
+ } catch (boost::bad_lexical_cast&) {
+ isc_throw(isc::BadValue, "invalid value of the max-row-errors"
+ << max_row_errors_str << " specified");
+ }
+
// Load the leasefile.completed, if exists.
bool conversion_needed = false;
lease_file.reset(new LeaseFileType(std::string(filename + ".completed")));
if (lease_file->exists()) {
LeaseFileLoader::load<LeaseObjectType>(*lease_file, storage,
- MAX_LEASE_ERRORS);
+ max_row_errors);
conversion_needed = conversion_needed || lease_file->needsConversion();
} else {
// If the leasefile.completed doesn't exist, let's load the leases
lease_file.reset(new LeaseFileType(appendSuffix(filename, FILE_PREVIOUS)));
if (lease_file->exists()) {
LeaseFileLoader::load<LeaseObjectType>(*lease_file, storage,
- MAX_LEASE_ERRORS);
+ max_row_errors);
conversion_needed = conversion_needed || lease_file->needsConversion();
}
lease_file.reset(new LeaseFileType(appendSuffix(filename, FILE_INPUT)));
if (lease_file->exists()) {
LeaseFileLoader::load<LeaseObjectType>(*lease_file, storage,
- MAX_LEASE_ERRORS);
+ max_row_errors);
conversion_needed = conversion_needed || lease_file->needsConversion();
}
}
// future lease updates.
lease_file.reset(new LeaseFileType(filename));
LeaseFileLoader::load<LeaseObjectType>(*lease_file, storage,
- MAX_LEASE_ERRORS, false);
+ max_row_errors, false);
conversion_needed = conversion_needed || lease_file->needsConversion();
return (conversion_needed);
};
LeaseFileLoaderTest::LeaseFileLoaderTest()
- : filename_(absolutePath("leases4.csv")), io_(filename_) {
+ : filename_(absolutePath("leases.csv")), io_(filename_) {
CfgMgr::instance().clear();
}
}
}
+// This test verifies that max-row-errors works correctly for
+// DHCPv4 lease files
+TEST_F(LeaseFileLoaderTest, maxRowErrors4) {
+ // We have 9 rows: 2 that are good, 7 that are flawed (too few fields).
+ std::vector<std::string> rows = {
+ "192.0.2.100,08:00:27:25:d3:f4,31:31:31:31,3600,1565356064,1,0,0,,0,\n",
+ "192.0.2.101,FF:FF:FF:FF:FF:01,32:32:32:31,3600,1565356073,1,0,0\n",
+ "192.0.2.102,FF:FF:FF:FF:FF:02,32:32:32:32,3600,1565356073,1,0,0\n",
+ "192.0.2.103,FF:FF:FF:FF:FF:03,32:32:32:33,3600,1565356073,1,0,0\n",
+ "192.0.2.104,FF:FF:FF:FF:FF:04,32:32:32:34,3600,1565356073,1,0,0\n",
+ "192.0.2.105,FF:FF:FF:FF:FF:05,32:32:32:35,3600,1565356073,1,0,0\n",
+ "192.0.2.106,FF:FF:FF:FF:FF:06,32:32:32:36,3600,1565356073,1,0,0\n",
+ "192.0.2.107,FF:FF:FF:FF:FF:07,32:32:32:37,3600,1565356073,1,0,0\n",
+ "192.0.2.108,08:00:27:25:d3:f4,32:32:32:32,3600,1565356073,1,0,0,,0,\n"
+ };
+
+ std::ostringstream os;
+ os << v4_hdr_;
+ for (auto row : rows) {
+ os << row;
+ }
+
+ io_.writeFile(os.str());
+
+ boost::scoped_ptr<CSVLeaseFile4> lf(new CSVLeaseFile4(filename_));
+ ASSERT_NO_THROW(lf->open());
+
+ // Let's limit the number of errors to 5 (we have 7 in the data) and
+ // try to load the leases.
+ uint32_t max_errors = 5;
+ Lease4Storage storage;
+ ASSERT_THROW(LeaseFileLoader::load<Lease4>(*lf, storage, max_errors), util::CSVFileError);
+
+ // We should have made 7 reads, with 1 lease read, and 6 errors.
+ {
+ SCOPED_TRACE("Failed load stats");
+ checkStats(*lf, 7, 1, 6, 0, 0, 0);
+ }
+
+ // Now let's disable the error limit and try again.
+ max_errors = 0;
+
+ // Load leases from the file. Note, we have to reopen the file.
+ ASSERT_NO_THROW(lf->open());
+ ASSERT_NO_THROW(LeaseFileLoader::load<Lease4>(*lf, storage, max_errors));
+
+ // We should have made 10 reads, with 2 leases read, and 7 errors.
+ {
+ SCOPED_TRACE("Good load stats");
+ checkStats(*lf, 10, 2, 7, 0, 0, 0);
+ }
+}
+
// This test verifies that the DHCPv6 leases can be loaded from the lease
// file and that only the most recent entry for each lease is loaded and
// the previous entries are discarded.
}
}
-// This test verifies that the exception is thrown when the specific
-// number of errors in the test data occur during reading of the lease
-// file.
-TEST_F(LeaseFileLoaderTest, loadMaxErrors) {
- std::string test_str;
- std::string a_1 = "192.0.2.1,06:07:08:09:0a:bc,,"
- "200,200,8,1,1,host.example.com,1,\n";
- std::string a_2 = "192.0.2.1,06:07:08:09:0a:bc,,"
- "200,500,8,1,1,host.example.com,1,\n";
-
- std::string b_1 = "192.0.2.3,,a:11:01:04,200,200,8,1,1,host.example.com,"
- "0,\n";
-
- std::string c_1 = "192.0.2.10,01:02:03:04:05:06,,200,300,8,1,1,,1,\n";
-
- // Create a lease file for which there is a number of invalid
- // entries. b_1 is invalid and gets used multiple times.
- test_str = v4_hdr_ + a_1 + b_1 + b_1 + c_1 + b_1 + b_1 + a_2;
- io_.writeFile(test_str);
-
- boost::scoped_ptr<CSVLeaseFile4> lf(new CSVLeaseFile4(filename_));
- ASSERT_NO_THROW(lf->open());
-
- // Load leases and set the maximum number of errors to 3. This
- // should result in an exception because there are 4 invalid entries.
- Lease4Storage storage;
- ASSERT_THROW(LeaseFileLoader::load<Lease4>(*lf, storage, 3),
- util::CSVFileError);
-
- // We should have made 6 attempts to read, with 2 leases read and 4 error
- {
- SCOPED_TRACE("Read leases 1");
- checkStats(*lf, 6, 2, 4, 0, 0, 0);
+// This test verifies that max-row-errors works correctly for
+// DHCPv6 lease files
+TEST_F(LeaseFileLoaderTest, maxRowErrors6) {
+ // We have 9 rows: 2 that are good, 7 that are flawed (too few fields).
+ std::vector<std::string> rows = {
+ "3002::01,00:03:00:01:08:00:27:25:d3:01,30,1565361388,2,20,0,"
+ "11189196,128,0,0,,08:00:27:25:d3:f4,0,\n",
+ "3002::02,00:03:00:01:08:00:27:25:d3:02,30,1565361388,2,20,0\n",
+ "3002::03,00:03:00:01:08:00:27:25:d3:03,30,1565361388,2,20,0\n",
+ "3002::04,00:03:00:01:08:00:27:25:d3:04,30,1565361388,2,20,0\n",
+ "3002::05,00:03:00:01:08:00:27:25:d3:05,30,1565361388,2,20,0\n",
+ "3002::06,00:03:00:01:08:00:27:25:d3:06,30,1565361388,2,20,0\n",
+ "3002::07,00:03:00:01:08:00:27:25:d3:07,30,1565361388,2,20,0\n",
+ "3002::08,00:03:00:01:08:00:27:25:d3:08,30,1565361388,2,20,0\n",
+ "3002::09,00:03:00:01:08:00:27:25:d3:09,30,1565361388,2,20,0,"
+ "11189196,128,0,0,,08:00:27:25:d3:f4,0,\n"
+ };
+
+ std::ostringstream os;
+ os << v6_hdr_;
+ for (auto row : rows) {
+ os << row;
}
- lf->close();
+ io_.writeFile(os.str());
+
+ boost::scoped_ptr<CSVLeaseFile6> lf(new CSVLeaseFile6(filename_));
ASSERT_NO_THROW(lf->open());
- // Repeat the test, but this time allow for 4 invalid entries. It
- // should load just fine.
- storage.clear();
- ASSERT_NO_THROW(LeaseFileLoader::load<Lease4>(*lf, storage, 4));
+ // Let's limit the number of errors to 5 (we have 7 in the data) and
+ // try to load the leases.
+ uint32_t max_errors = 5;
+ Lease6Storage storage;
+ ASSERT_THROW(LeaseFileLoader::load<Lease6>(*lf, storage, max_errors), util::CSVFileError);
- // We should have made 8 attempts to read, with 3 leases read and 4 error
+ // We should have made 7 reads, with 1 lease read, and 6 errors.
{
- SCOPED_TRACE("Read leases 2");
- checkStats(*lf, 8, 3, 4, 0, 0, 0);
+ SCOPED_TRACE("Failed load stats");
+ checkStats(*lf, 7, 1, 6, 0, 0, 0);
}
- ASSERT_EQ(2, storage.size());
-
- Lease4Ptr lease = getLease<Lease4Ptr>("192.0.2.1", storage);
- ASSERT_TRUE(lease);
- EXPECT_EQ(300, lease->cltt_);
-
- lease = getLease<Lease4Ptr>("192.0.2.10", storage);
- ASSERT_TRUE(lease);
- EXPECT_EQ(100, lease->cltt_);
+ // Now let's disable the error limit and try again.
+ max_errors = 0;
- test_str = v4_hdr_ + a_2 + c_1;
- writeLeases<Lease4, CSVLeaseFile4, Lease4Storage>(*lf, storage, test_str);
+ // Load leases from the file. Note, we have to reopen the file.
+ ASSERT_NO_THROW(lf->open());
+ ASSERT_NO_THROW(LeaseFileLoader::load<Lease6>(*lf, storage, max_errors));
- // We should have made 1 attempts to write, with 1 leases written and 0 errors
+ // We should have made 10 reads, with 2 leases read, and 7 errors.
{
- SCOPED_TRACE("Write leases");
- checkStats(*lf, 0, 0, 0, 2, 2, 0);
+ SCOPED_TRACE("Good load stats");
+ checkStats(*lf, 10, 2, 7, 0, 0, 0);
}
}
pmap["lfc-interval"] = "10";
pmap["persist"] = "true";
pmap["name"] = getLeaseFilePath("leasefile4_1.csv");
+ pmap["max-row-errors"] = "5";
EXPECT_NO_THROW(lease_mgr.reset(new Memfile_LeaseMgr(pmap)));
// Expecting that persist parameter is yes or no. Everything other than
pmap["persist"] = "true";
pmap["lfc-interval"] = "bogus";
EXPECT_THROW(lease_mgr.reset(new Memfile_LeaseMgr(pmap)), isc::BadValue);
+
+ // The max-row-errors must be an integer.
+ pmap["persist"] = "true";
+ pmap["max-row-errors"] = "bogus";
+ EXPECT_THROW(lease_mgr.reset(new Memfile_LeaseMgr(pmap)), isc::BadValue);
+
+ // The max-row-errors must be >= 0.
+ pmap["persist"] = "true";
+ pmap["max-row-errors"] = "-1";
+ EXPECT_THROW(lease_mgr.reset(new Memfile_LeaseMgr(pmap)), isc::BadValue);
}
// Checks if there is no lease manager NoLeaseManager is thrown.