]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#3424] added ChangeLog entry
authorRazvan Becheriu <razvan@isc.org>
Fri, 24 May 2024 10:46:37 +0000 (13:46 +0300)
committerRazvan Becheriu <razvan@isc.org>
Fri, 24 May 2024 10:54:30 +0000 (13:54 +0300)
ChangeLog
src/bin/dhcp6/dhcp6_lexer.cc
src/bin/dhcp6/dhcp6_parser.cc
src/bin/dhcp6/dhcp6_parser.h

index 35845c3ea0dbe1833362560dc5965605ec5b8e87..1988c3f0e08ae959eb566a740523448e85892379 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2246.  [bug]           razvan
+       Permit configuring pool-id in pd-pools.
+       (Gitlab #3424)
+
 2245.  [doc]           tomek
        Many already supported RFCs are now listed in the Supported
        DHCP standards and Supported DHCPv6 standards in the Kea
index 6dd87afdc7e1b554fc0d25f24292e6f24975b0ef..b29df17a20da093367a079379e85794bbb76f964 100644 (file)
@@ -2114,18 +2114,18 @@ static const flex_int16_t yy_rule_linenum[226] =
 
      1092, 1101, 1110, 1122, 1133, 1143, 1154, 1163, 1172, 1187,
      1203, 1212, 1221, 1230, 1239, 1248, 1257, 1266, 1275, 1284,
-     1293, 1302, 1311, 1335, 1359, 1368, 1378, 1388, 1397, 1407,
-     1418, 1429, 1440, 1450, 1459, 1468, 1477, 1488, 1499, 1510,
-     1521, 1532, 1541, 1550, 1559, 1568, 1577, 1586, 1595, 1604,
-     1613, 1622, 1632, 1644, 1657, 1666, 1675, 1684, 1694, 1704,
-     1713, 1724, 1734, 1743, 1753, 1763, 1772, 1781, 1790, 1799,
-     1809, 1818, 1827, 1836, 1845, 1854, 1863, 1872, 1881, 1890,
-     1899, 1908, 1917, 1926, 1935, 1944, 1953, 1962, 1971, 1980,
-     1989, 1998, 2007, 2016, 2025, 2034, 2043, 2052, 2061, 2070,
-
-     2079, 2088, 2097, 2106, 2115, 2124, 2133, 2234, 2250, 2299,
-     2307, 2322, 2323, 2324, 2325, 2326, 2327, 2329, 2347, 2360,
-     2365, 2369, 2371, 2373, 2375
+     1293, 1302, 1312, 1336, 1360, 1369, 1379, 1389, 1398, 1408,
+     1419, 1430, 1441, 1451, 1460, 1469, 1478, 1489, 1500, 1511,
+     1522, 1533, 1542, 1551, 1560, 1569, 1578, 1587, 1596, 1605,
+     1614, 1623, 1633, 1645, 1658, 1667, 1676, 1685, 1695, 1705,
+     1714, 1725, 1735, 1744, 1754, 1764, 1773, 1782, 1791, 1800,
+     1810, 1819, 1828, 1837, 1846, 1855, 1864, 1873, 1882, 1891,
+     1900, 1909, 1918, 1927, 1936, 1945, 1954, 1963, 1972, 1981,
+     1990, 1999, 2008, 2017, 2026, 2035, 2044, 2053, 2062, 2071,
+
+     2080, 2089, 2098, 2107, 2116, 2125, 2134, 2235, 2251, 2300,
+     2308, 2323, 2324, 2325, 2326, 2327, 2328, 2330, 2348, 2361,
+     2366, 2370, 2372, 2374, 2376
     } ;
 
 /* The intent behind this definition is that it'll catch
@@ -4143,6 +4143,7 @@ YY_RULE_SETUP
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::POOLS:
+    case isc::dhcp::Parser6Context::PD_POOLS:
         return isc::dhcp::Dhcp6Parser::make_POOL_ID(driver.loc_);
     default:
         return isc::dhcp::Dhcp6Parser::make_STRING("pool-id", driver.loc_);
@@ -4151,7 +4152,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 123:
 YY_RULE_SETUP
-#line 1311 "dhcp6_lexer.ll"
+#line 1312 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4178,7 +4179,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 124:
 YY_RULE_SETUP
-#line 1335 "dhcp6_lexer.ll"
+#line 1336 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4205,7 +4206,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 125:
 YY_RULE_SETUP
-#line 1359 "dhcp6_lexer.ll"
+#line 1360 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SUBNET6:
@@ -4217,7 +4218,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 126:
 YY_RULE_SETUP
-#line 1368 "dhcp6_lexer.ll"
+#line 1369 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SUBNET6:
@@ -4230,7 +4231,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 127:
 YY_RULE_SETUP
-#line 1378 "dhcp6_lexer.ll"
+#line 1379 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SUBNET6:
@@ -4243,7 +4244,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 128:
 YY_RULE_SETUP
-#line 1388 "dhcp6_lexer.ll"
+#line 1389 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SUBNET6:
@@ -4255,7 +4256,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 129:
 YY_RULE_SETUP
-#line 1397 "dhcp6_lexer.ll"
+#line 1398 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SUBNET6:
@@ -4268,7 +4269,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 130:
 YY_RULE_SETUP
-#line 1407 "dhcp6_lexer.ll"
+#line 1408 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4282,7 +4283,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 131:
 YY_RULE_SETUP
-#line 1418 "dhcp6_lexer.ll"
+#line 1419 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4296,7 +4297,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 132:
 YY_RULE_SETUP
-#line 1429 "dhcp6_lexer.ll"
+#line 1430 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4310,7 +4311,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 133:
 YY_RULE_SETUP
-#line 1440 "dhcp6_lexer.ll"
+#line 1441 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OPTION_DEF:
@@ -4323,7 +4324,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 134:
 YY_RULE_SETUP
-#line 1450 "dhcp6_lexer.ll"
+#line 1451 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4335,7 +4336,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 135:
 YY_RULE_SETUP
-#line 1459 "dhcp6_lexer.ll"
+#line 1460 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4347,7 +4348,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 136:
 YY_RULE_SETUP
-#line 1468 "dhcp6_lexer.ll"
+#line 1469 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4359,7 +4360,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 137:
 YY_RULE_SETUP
-#line 1477 "dhcp6_lexer.ll"
+#line 1478 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4373,7 +4374,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 138:
 YY_RULE_SETUP
-#line 1488 "dhcp6_lexer.ll"
+#line 1489 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4387,7 +4388,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 139:
 YY_RULE_SETUP
-#line 1499 "dhcp6_lexer.ll"
+#line 1500 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4401,7 +4402,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 140:
 YY_RULE_SETUP
-#line 1510 "dhcp6_lexer.ll"
+#line 1511 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4415,7 +4416,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 141:
 YY_RULE_SETUP
-#line 1521 "dhcp6_lexer.ll"
+#line 1522 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4429,7 +4430,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 142:
 YY_RULE_SETUP
-#line 1532 "dhcp6_lexer.ll"
+#line 1533 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4441,7 +4442,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 143:
 YY_RULE_SETUP
-#line 1541 "dhcp6_lexer.ll"
+#line 1542 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::LOGGERS:
@@ -4453,7 +4454,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 144:
 YY_RULE_SETUP
-#line 1550 "dhcp6_lexer.ll"
+#line 1551 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::LOGGERS:
@@ -4465,7 +4466,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 145:
 YY_RULE_SETUP
-#line 1559 "dhcp6_lexer.ll"
+#line 1560 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OUTPUT_OPTIONS:
@@ -4477,7 +4478,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 146:
 YY_RULE_SETUP
-#line 1568 "dhcp6_lexer.ll"
+#line 1569 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OUTPUT_OPTIONS:
@@ -4489,7 +4490,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 147:
 YY_RULE_SETUP
-#line 1577 "dhcp6_lexer.ll"
+#line 1578 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OUTPUT_OPTIONS:
@@ -4501,7 +4502,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 148:
 YY_RULE_SETUP
-#line 1586 "dhcp6_lexer.ll"
+#line 1587 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OUTPUT_OPTIONS:
@@ -4513,7 +4514,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 149:
 YY_RULE_SETUP
-#line 1595 "dhcp6_lexer.ll"
+#line 1596 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OUTPUT_OPTIONS:
@@ -4525,7 +4526,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 150:
 YY_RULE_SETUP
-#line 1604 "dhcp6_lexer.ll"
+#line 1605 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::LOGGERS:
@@ -4537,7 +4538,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 151:
 YY_RULE_SETUP
-#line 1613 "dhcp6_lexer.ll"
+#line 1614 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::LOGGERS:
@@ -4549,7 +4550,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 152:
 YY_RULE_SETUP
-#line 1622 "dhcp6_lexer.ll"
+#line 1623 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4562,7 +4563,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 153:
 YY_RULE_SETUP
-#line 1632 "dhcp6_lexer.ll"
+#line 1633 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SUBNET6:
@@ -4577,7 +4578,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 154:
 YY_RULE_SETUP
-#line 1644 "dhcp6_lexer.ll"
+#line 1645 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SUBNET6:
@@ -4593,7 +4594,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 155:
 YY_RULE_SETUP
-#line 1657 "dhcp6_lexer.ll"
+#line 1658 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::CLIENT_CLASSES:
@@ -4605,7 +4606,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 156:
 YY_RULE_SETUP
-#line 1666 "dhcp6_lexer.ll"
+#line 1667 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::CLIENT_CLASSES:
@@ -4617,7 +4618,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 157:
 YY_RULE_SETUP
-#line 1675 "dhcp6_lexer.ll"
+#line 1676 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::CLIENT_CLASSES:
@@ -4629,7 +4630,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 158:
 YY_RULE_SETUP
-#line 1684 "dhcp6_lexer.ll"
+#line 1685 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4642,7 +4643,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 159:
 YY_RULE_SETUP
-#line 1694 "dhcp6_lexer.ll"
+#line 1695 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::RESERVATIONS:
@@ -4655,7 +4656,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 160:
 YY_RULE_SETUP
-#line 1704 "dhcp6_lexer.ll"
+#line 1705 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::RESERVATIONS:
@@ -4667,7 +4668,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 161:
 YY_RULE_SETUP
-#line 1713 "dhcp6_lexer.ll"
+#line 1714 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::MAC_SOURCES:
@@ -4681,7 +4682,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 162:
 YY_RULE_SETUP
-#line 1724 "dhcp6_lexer.ll"
+#line 1725 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::HOST_RESERVATION_IDENTIFIERS:
@@ -4694,7 +4695,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 163:
 YY_RULE_SETUP
-#line 1734 "dhcp6_lexer.ll"
+#line 1735 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::RESERVATIONS:
@@ -4706,7 +4707,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 164:
 YY_RULE_SETUP
-#line 1743 "dhcp6_lexer.ll"
+#line 1744 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::HOST_RESERVATION_IDENTIFIERS:
@@ -4719,7 +4720,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 165:
 YY_RULE_SETUP
-#line 1753 "dhcp6_lexer.ll"
+#line 1754 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OPTION_DEF:
@@ -4732,7 +4733,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 166:
 YY_RULE_SETUP
-#line 1763 "dhcp6_lexer.ll"
+#line 1764 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OPTION_DATA:
@@ -4744,7 +4745,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 167:
 YY_RULE_SETUP
-#line 1772 "dhcp6_lexer.ll"
+#line 1773 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OPTION_DEF:
@@ -4756,7 +4757,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 168:
 YY_RULE_SETUP
-#line 1781 "dhcp6_lexer.ll"
+#line 1782 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OPTION_DEF:
@@ -4768,7 +4769,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 169:
 YY_RULE_SETUP
-#line 1790 "dhcp6_lexer.ll"
+#line 1791 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::OPTION_DEF:
@@ -4780,7 +4781,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 170:
 YY_RULE_SETUP
-#line 1799 "dhcp6_lexer.ll"
+#line 1800 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SUBNET6:
@@ -4793,7 +4794,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 171:
 YY_RULE_SETUP
-#line 1809 "dhcp6_lexer.ll"
+#line 1810 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4805,7 +4806,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 172:
 YY_RULE_SETUP
-#line 1818 "dhcp6_lexer.ll"
+#line 1819 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::HOOKS_LIBRARIES:
@@ -4817,7 +4818,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 173:
 YY_RULE_SETUP
-#line 1827 "dhcp6_lexer.ll"
+#line 1828 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::HOOKS_LIBRARIES:
@@ -4829,7 +4830,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 174:
 YY_RULE_SETUP
-#line 1836 "dhcp6_lexer.ll"
+#line 1837 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4841,7 +4842,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 175:
 YY_RULE_SETUP
-#line 1845 "dhcp6_lexer.ll"
+#line 1846 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DUID_TYPE:
@@ -4853,7 +4854,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 176:
 YY_RULE_SETUP
-#line 1854 "dhcp6_lexer.ll"
+#line 1855 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DUID_TYPE:
@@ -4865,7 +4866,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 177:
 YY_RULE_SETUP
-#line 1863 "dhcp6_lexer.ll"
+#line 1864 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DUID_TYPE:
@@ -4877,7 +4878,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 178:
 YY_RULE_SETUP
-#line 1872 "dhcp6_lexer.ll"
+#line 1873 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SERVER_ID:
@@ -4889,7 +4890,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 179:
 YY_RULE_SETUP
-#line 1881 "dhcp6_lexer.ll"
+#line 1882 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SERVER_ID:
@@ -4901,7 +4902,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 180:
 YY_RULE_SETUP
-#line 1890 "dhcp6_lexer.ll"
+#line 1891 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SERVER_ID:
@@ -4913,7 +4914,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 181:
 YY_RULE_SETUP
-#line 1899 "dhcp6_lexer.ll"
+#line 1900 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::SERVER_ID:
@@ -4925,7 +4926,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 182:
 YY_RULE_SETUP
-#line 1908 "dhcp6_lexer.ll"
+#line 1909 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -4937,7 +4938,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 183:
 YY_RULE_SETUP
-#line 1917 "dhcp6_lexer.ll"
+#line 1918 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
@@ -4949,7 +4950,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 184:
 YY_RULE_SETUP
-#line 1926 "dhcp6_lexer.ll"
+#line 1927 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
@@ -4961,7 +4962,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 185:
 YY_RULE_SETUP
-#line 1935 "dhcp6_lexer.ll"
+#line 1936 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
@@ -4973,7 +4974,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 186:
 YY_RULE_SETUP
-#line 1944 "dhcp6_lexer.ll"
+#line 1945 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
@@ -4985,7 +4986,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 187:
 YY_RULE_SETUP
-#line 1953 "dhcp6_lexer.ll"
+#line 1954 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
@@ -4997,7 +4998,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 188:
 YY_RULE_SETUP
-#line 1962 "dhcp6_lexer.ll"
+#line 1963 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::EXPIRED_LEASES_PROCESSING:
@@ -5009,7 +5010,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 189:
 YY_RULE_SETUP
-#line 1971 "dhcp6_lexer.ll"
+#line 1972 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -5021,7 +5022,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 190:
 YY_RULE_SETUP
-#line 1980 "dhcp6_lexer.ll"
+#line 1981 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -5033,7 +5034,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 191:
 YY_RULE_SETUP
-#line 1989 "dhcp6_lexer.ll"
+#line 1990 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP_MULTI_THREADING:
@@ -5045,7 +5046,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 192:
 YY_RULE_SETUP
-#line 1998 "dhcp6_lexer.ll"
+#line 1999 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP_MULTI_THREADING:
@@ -5057,7 +5058,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 193:
 YY_RULE_SETUP
-#line 2007 "dhcp6_lexer.ll"
+#line 2008 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP_MULTI_THREADING:
@@ -5069,7 +5070,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 194:
 YY_RULE_SETUP
-#line 2016 "dhcp6_lexer.ll"
+#line 2017 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -5081,7 +5082,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 195:
 YY_RULE_SETUP
-#line 2025 "dhcp6_lexer.ll"
+#line 2026 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::CONTROL_SOCKET:
@@ -5093,7 +5094,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 196:
 YY_RULE_SETUP
-#line 2034 "dhcp6_lexer.ll"
+#line 2035 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::CONTROL_SOCKET:
@@ -5105,7 +5106,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 197:
 YY_RULE_SETUP
-#line 2043 "dhcp6_lexer.ll"
+#line 2044 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -5117,7 +5118,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 198:
 YY_RULE_SETUP
-#line 2052 "dhcp6_lexer.ll"
+#line 2053 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP_QUEUE_CONTROL:
@@ -5129,7 +5130,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 199:
 YY_RULE_SETUP
-#line 2061 "dhcp6_lexer.ll"
+#line 2062 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP_QUEUE_CONTROL:
@@ -5141,7 +5142,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 200:
 YY_RULE_SETUP
-#line 2070 "dhcp6_lexer.ll"
+#line 2071 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP_QUEUE_CONTROL:
@@ -5153,7 +5154,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 201:
 YY_RULE_SETUP
-#line 2079 "dhcp6_lexer.ll"
+#line 2080 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -5165,7 +5166,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 202:
 YY_RULE_SETUP
-#line 2088 "dhcp6_lexer.ll"
+#line 2089 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -5177,7 +5178,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 203:
 YY_RULE_SETUP
-#line 2097 "dhcp6_lexer.ll"
+#line 2098 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -5189,7 +5190,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 204:
 YY_RULE_SETUP
-#line 2106 "dhcp6_lexer.ll"
+#line 2107 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -5201,7 +5202,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 205:
 YY_RULE_SETUP
-#line 2115 "dhcp6_lexer.ll"
+#line 2116 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::DHCP6:
@@ -5213,7 +5214,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 206:
 YY_RULE_SETUP
-#line 2124 "dhcp6_lexer.ll"
+#line 2125 "dhcp6_lexer.ll"
 {
     switch(driver.ctx_) {
     case isc::dhcp::Parser6Context::COMPATIBILITY:
@@ -5225,7 +5226,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 207:
 YY_RULE_SETUP
-#line 2133 "dhcp6_lexer.ll"
+#line 2134 "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.
@@ -5330,7 +5331,7 @@ YY_RULE_SETUP
 case 208:
 /* rule 208 can match eol */
 YY_RULE_SETUP
-#line 2234 "dhcp6_lexer.ll"
+#line 2235 "dhcp6_lexer.ll"
 {
     /* Bad string with a forbidden control character inside */
     std::string raw(yytext+1);
@@ -5350,7 +5351,7 @@ YY_RULE_SETUP
 case 209:
 /* rule 209 can match eol */
 YY_RULE_SETUP
-#line 2250 "dhcp6_lexer.ll"
+#line 2251 "dhcp6_lexer.ll"
 {
     /* Bad string with a bad escape inside */
     std::string raw(yytext+1);
@@ -5402,7 +5403,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 210:
 YY_RULE_SETUP
-#line 2299 "dhcp6_lexer.ll"
+#line 2300 "dhcp6_lexer.ll"
 {
     /* Bad string with an open escape at the end */
     std::string raw(yytext+1);
@@ -5413,7 +5414,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 211:
 YY_RULE_SETUP
-#line 2307 "dhcp6_lexer.ll"
+#line 2308 "dhcp6_lexer.ll"
 {
     /* Bad string with an open unicode escape at the end */
     std::string raw(yytext+1);
@@ -5431,37 +5432,37 @@ YY_RULE_SETUP
        YY_BREAK
 case 212:
 YY_RULE_SETUP
-#line 2322 "dhcp6_lexer.ll"
+#line 2323 "dhcp6_lexer.ll"
 { return isc::dhcp::Dhcp6Parser::make_LSQUARE_BRACKET(driver.loc_); }
        YY_BREAK
 case 213:
 YY_RULE_SETUP
-#line 2323 "dhcp6_lexer.ll"
+#line 2324 "dhcp6_lexer.ll"
 { return isc::dhcp::Dhcp6Parser::make_RSQUARE_BRACKET(driver.loc_); }
        YY_BREAK
 case 214:
 YY_RULE_SETUP
-#line 2324 "dhcp6_lexer.ll"
+#line 2325 "dhcp6_lexer.ll"
 { return isc::dhcp::Dhcp6Parser::make_LCURLY_BRACKET(driver.loc_); }
        YY_BREAK
 case 215:
 YY_RULE_SETUP
-#line 2325 "dhcp6_lexer.ll"
+#line 2326 "dhcp6_lexer.ll"
 { return isc::dhcp::Dhcp6Parser::make_RCURLY_BRACKET(driver.loc_); }
        YY_BREAK
 case 216:
 YY_RULE_SETUP
-#line 2326 "dhcp6_lexer.ll"
+#line 2327 "dhcp6_lexer.ll"
 { return isc::dhcp::Dhcp6Parser::make_COMMA(driver.loc_); }
        YY_BREAK
 case 217:
 YY_RULE_SETUP
-#line 2327 "dhcp6_lexer.ll"
+#line 2328 "dhcp6_lexer.ll"
 { return isc::dhcp::Dhcp6Parser::make_COLON(driver.loc_); }
        YY_BREAK
 case 218:
 YY_RULE_SETUP
-#line 2329 "dhcp6_lexer.ll"
+#line 2330 "dhcp6_lexer.ll"
 {
     /* An integer was found. */
     std::string tmp(yytext);
@@ -5482,7 +5483,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 219:
 YY_RULE_SETUP
-#line 2347 "dhcp6_lexer.ll"
+#line 2348 "dhcp6_lexer.ll"
 {
     /* A floating point was found. */
     std::string tmp(yytext);
@@ -5498,7 +5499,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 220:
 YY_RULE_SETUP
-#line 2360 "dhcp6_lexer.ll"
+#line 2361 "dhcp6_lexer.ll"
 {
     string tmp(yytext);
     return isc::dhcp::Dhcp6Parser::make_BOOLEAN(tmp == "true", driver.loc_);
@@ -5506,33 +5507,33 @@ YY_RULE_SETUP
        YY_BREAK
 case 221:
 YY_RULE_SETUP
-#line 2365 "dhcp6_lexer.ll"
+#line 2366 "dhcp6_lexer.ll"
 {
    return isc::dhcp::Dhcp6Parser::make_NULL_TYPE(driver.loc_);
 }
        YY_BREAK
 case 222:
 YY_RULE_SETUP
-#line 2369 "dhcp6_lexer.ll"
+#line 2370 "dhcp6_lexer.ll"
 driver.error (driver.loc_, "JSON true reserved keyword is lower case only");
        YY_BREAK
 case 223:
 YY_RULE_SETUP
-#line 2371 "dhcp6_lexer.ll"
+#line 2372 "dhcp6_lexer.ll"
 driver.error (driver.loc_, "JSON false reserved keyword is lower case only");
        YY_BREAK
 case 224:
 YY_RULE_SETUP
-#line 2373 "dhcp6_lexer.ll"
+#line 2374 "dhcp6_lexer.ll"
 driver.error (driver.loc_, "JSON null reserved keyword is lower case only");
        YY_BREAK
 case 225:
 YY_RULE_SETUP
-#line 2375 "dhcp6_lexer.ll"
+#line 2376 "dhcp6_lexer.ll"
 driver.error (driver.loc_, "Invalid character: " + std::string(yytext));
        YY_BREAK
 case YY_STATE_EOF(INITIAL):
-#line 2377 "dhcp6_lexer.ll"
+#line 2378 "dhcp6_lexer.ll"
 {
     if (driver.states_.empty()) {
         return isc::dhcp::Dhcp6Parser::make_END(driver.loc_);
@@ -5558,10 +5559,10 @@ case YY_STATE_EOF(INITIAL):
        YY_BREAK
 case 226:
 YY_RULE_SETUP
-#line 2400 "dhcp6_lexer.ll"
+#line 2401 "dhcp6_lexer.ll"
 ECHO;
        YY_BREAK
-#line 5565 "dhcp6_lexer.cc"
+#line 5566 "dhcp6_lexer.cc"
 
        case YY_END_OF_BUFFER:
                {
@@ -6666,7 +6667,7 @@ void yyfree (void * ptr )
 
 /* %ok-for-header */
 
-#line 2400 "dhcp6_lexer.ll"
+#line 2401 "dhcp6_lexer.ll"
 
 
 using namespace isc::dhcp;
index 291f9fd8c4701f20e4f76fb65b8bada12ffc97ea..eb7ef0e5bf4095d053e0e606cd305dd4e47fc654 100644 (file)
@@ -3550,8 +3550,8 @@ namespace isc { namespace dhcp {
 #line 3551 "dhcp6_parser.cc"
     break;
 
-  case 637: // $@92: %empty
-#line 2267 "dhcp6_parser.yy"
+  case 638: // $@92: %empty
+#line 2268 "dhcp6_parser.yy"
                   {
     ctx.unique("prefix", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -3559,8 +3559,8 @@ namespace isc { namespace dhcp {
 #line 3560 "dhcp6_parser.cc"
     break;
 
-  case 638: // pd_prefix: "prefix" $@92 ":" "constant string"
-#line 2270 "dhcp6_parser.yy"
+  case 639: // pd_prefix: "prefix" $@92 ":" "constant string"
+#line 2271 "dhcp6_parser.yy"
                {
     ElementPtr prf(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("prefix", prf);
@@ -3569,8 +3569,8 @@ namespace isc { namespace dhcp {
 #line 3570 "dhcp6_parser.cc"
     break;
 
-  case 639: // pd_prefix_len: "prefix-len" ":" "integer"
-#line 2276 "dhcp6_parser.yy"
+  case 640: // pd_prefix_len: "prefix-len" ":" "integer"
+#line 2277 "dhcp6_parser.yy"
                                         {
     ctx.unique("prefix-len", ctx.loc2pos(yystack_[2].location));
     ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -3579,8 +3579,8 @@ namespace isc { namespace dhcp {
 #line 3580 "dhcp6_parser.cc"
     break;
 
-  case 640: // $@93: %empty
-#line 2282 "dhcp6_parser.yy"
+  case 641: // $@93: %empty
+#line 2283 "dhcp6_parser.yy"
                                  {
     ctx.unique("excluded-prefix", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -3588,8 +3588,8 @@ namespace isc { namespace dhcp {
 #line 3589 "dhcp6_parser.cc"
     break;
 
-  case 641: // excluded_prefix: "excluded-prefix" $@93 ":" "constant string"
-#line 2285 "dhcp6_parser.yy"
+  case 642: // excluded_prefix: "excluded-prefix" $@93 ":" "constant string"
+#line 2286 "dhcp6_parser.yy"
                {
     ElementPtr prf(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("excluded-prefix", prf);
@@ -3598,8 +3598,8 @@ namespace isc { namespace dhcp {
 #line 3599 "dhcp6_parser.cc"
     break;
 
-  case 642: // excluded_prefix_len: "excluded-prefix-len" ":" "integer"
-#line 2291 "dhcp6_parser.yy"
+  case 643: // excluded_prefix_len: "excluded-prefix-len" ":" "integer"
+#line 2292 "dhcp6_parser.yy"
                                                        {
     ctx.unique("excluded-prefix-len", ctx.loc2pos(yystack_[2].location));
     ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -3608,8 +3608,8 @@ namespace isc { namespace dhcp {
 #line 3609 "dhcp6_parser.cc"
     break;
 
-  case 643: // pd_delegated_len: "delegated-len" ":" "integer"
-#line 2297 "dhcp6_parser.yy"
+  case 644: // pd_delegated_len: "delegated-len" ":" "integer"
+#line 2298 "dhcp6_parser.yy"
                                               {
     ctx.unique("delegated-len", ctx.loc2pos(yystack_[2].location));
     ElementPtr deleg(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -3618,8 +3618,8 @@ namespace isc { namespace dhcp {
 #line 3619 "dhcp6_parser.cc"
     break;
 
-  case 644: // $@94: %empty
-#line 2306 "dhcp6_parser.yy"
+  case 645: // $@94: %empty
+#line 2307 "dhcp6_parser.yy"
                            {
     ctx.unique("reservations", ctx.loc2pos(yystack_[0].location));
     ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
@@ -3630,8 +3630,8 @@ namespace isc { namespace dhcp {
 #line 3631 "dhcp6_parser.cc"
     break;
 
-  case 645: // reservations: "reservations" $@94 ":" "[" reservations_list "]"
-#line 2312 "dhcp6_parser.yy"
+  case 646: // reservations: "reservations" $@94 ":" "[" reservations_list "]"
+#line 2313 "dhcp6_parser.yy"
                                                           {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -3639,16 +3639,16 @@ namespace isc { namespace dhcp {
 #line 3640 "dhcp6_parser.cc"
     break;
 
-  case 650: // not_empty_reservations_list: not_empty_reservations_list ","
-#line 2323 "dhcp6_parser.yy"
+  case 651: // not_empty_reservations_list: not_empty_reservations_list ","
+#line 2324 "dhcp6_parser.yy"
                                                                {
                                ctx.warnAboutExtraCommas(yystack_[0].location);
                                }
 #line 3648 "dhcp6_parser.cc"
     break;
 
-  case 651: // $@95: %empty
-#line 2328 "dhcp6_parser.yy"
+  case 652: // $@95: %empty
+#line 2329 "dhcp6_parser.yy"
                             {
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->add(m);
@@ -3657,8 +3657,8 @@ namespace isc { namespace dhcp {
 #line 3658 "dhcp6_parser.cc"
     break;
 
-  case 652: // reservation: "{" $@95 reservation_params "}"
-#line 2332 "dhcp6_parser.yy"
+  case 653: // reservation: "{" $@95 reservation_params "}"
+#line 2333 "dhcp6_parser.yy"
                                     {
     /// @todo: an identifier parameter is required.
     ctx.stack_.pop_back();
@@ -3666,8 +3666,8 @@ namespace isc { namespace dhcp {
 #line 3667 "dhcp6_parser.cc"
     break;
 
-  case 653: // $@96: %empty
-#line 2337 "dhcp6_parser.yy"
+  case 654: // $@96: %empty
+#line 2338 "dhcp6_parser.yy"
                                 {
     // Parse the reservations list entry map
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -3676,8 +3676,8 @@ namespace isc { namespace dhcp {
 #line 3677 "dhcp6_parser.cc"
     break;
 
-  case 654: // sub_reservation: "{" $@96 reservation_params "}"
-#line 2341 "dhcp6_parser.yy"
+  case 655: // sub_reservation: "{" $@96 reservation_params "}"
+#line 2342 "dhcp6_parser.yy"
                                     {
     /// @todo: an identifier parameter is required.
     // parsing completed
@@ -3685,16 +3685,16 @@ namespace isc { namespace dhcp {
 #line 3686 "dhcp6_parser.cc"
     break;
 
-  case 659: // not_empty_reservation_params: not_empty_reservation_params ","
-#line 2352 "dhcp6_parser.yy"
+  case 660: // not_empty_reservation_params: not_empty_reservation_params ","
+#line 2353 "dhcp6_parser.yy"
                                          {
         ctx.warnAboutExtraCommas(yystack_[0].location);
         }
 #line 3694 "dhcp6_parser.cc"
     break;
 
-  case 671: // $@97: %empty
-#line 2371 "dhcp6_parser.yy"
+  case 672: // $@97: %empty
+#line 2372 "dhcp6_parser.yy"
                            {
     ctx.unique("ip-addresses", ctx.loc2pos(yystack_[0].location));
     ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
@@ -3705,8 +3705,8 @@ namespace isc { namespace dhcp {
 #line 3706 "dhcp6_parser.cc"
     break;
 
-  case 672: // ip_addresses: "ip-addresses" $@97 ":" list_strings
-#line 2377 "dhcp6_parser.yy"
+  case 673: // ip_addresses: "ip-addresses" $@97 ":" list_strings
+#line 2378 "dhcp6_parser.yy"
                      {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -3714,8 +3714,8 @@ namespace isc { namespace dhcp {
 #line 3715 "dhcp6_parser.cc"
     break;
 
-  case 673: // $@98: %empty
-#line 2382 "dhcp6_parser.yy"
+  case 674: // $@98: %empty
+#line 2383 "dhcp6_parser.yy"
                    {
     ctx.unique("prefixes", ctx.loc2pos(yystack_[0].location));
     ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
@@ -3726,8 +3726,8 @@ namespace isc { namespace dhcp {
 #line 3727 "dhcp6_parser.cc"
     break;
 
-  case 674: // prefixes: "prefixes" $@98 ":" list_strings
-#line 2388 "dhcp6_parser.yy"
+  case 675: // prefixes: "prefixes" $@98 ":" list_strings
+#line 2389 "dhcp6_parser.yy"
                      {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -3735,8 +3735,8 @@ namespace isc { namespace dhcp {
 #line 3736 "dhcp6_parser.cc"
     break;
 
-  case 675: // $@99: %empty
-#line 2393 "dhcp6_parser.yy"
+  case 676: // $@99: %empty
+#line 2394 "dhcp6_parser.yy"
            {
     ctx.unique("duid", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -3744,8 +3744,8 @@ namespace isc { namespace dhcp {
 #line 3745 "dhcp6_parser.cc"
     break;
 
-  case 676: // duid: "duid" $@99 ":" "constant string"
-#line 2396 "dhcp6_parser.yy"
+  case 677: // duid: "duid" $@99 ":" "constant string"
+#line 2397 "dhcp6_parser.yy"
                {
     ElementPtr d(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("duid", d);
@@ -3754,8 +3754,8 @@ namespace isc { namespace dhcp {
 #line 3755 "dhcp6_parser.cc"
     break;
 
-  case 677: // $@100: %empty
-#line 2402 "dhcp6_parser.yy"
+  case 678: // $@100: %empty
+#line 2403 "dhcp6_parser.yy"
                        {
     ctx.unique("hw-address", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -3763,8 +3763,8 @@ namespace isc { namespace dhcp {
 #line 3764 "dhcp6_parser.cc"
     break;
 
-  case 678: // hw_address: "hw-address" $@100 ":" "constant string"
-#line 2405 "dhcp6_parser.yy"
+  case 679: // hw_address: "hw-address" $@100 ":" "constant string"
+#line 2406 "dhcp6_parser.yy"
                {
     ElementPtr hw(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("hw-address", hw);
@@ -3773,8 +3773,8 @@ namespace isc { namespace dhcp {
 #line 3774 "dhcp6_parser.cc"
     break;
 
-  case 679: // $@101: %empty
-#line 2411 "dhcp6_parser.yy"
+  case 680: // $@101: %empty
+#line 2412 "dhcp6_parser.yy"
                    {
     ctx.unique("hostname", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -3782,8 +3782,8 @@ namespace isc { namespace dhcp {
 #line 3783 "dhcp6_parser.cc"
     break;
 
-  case 680: // hostname: "hostname" $@101 ":" "constant string"
-#line 2414 "dhcp6_parser.yy"
+  case 681: // hostname: "hostname" $@101 ":" "constant string"
+#line 2415 "dhcp6_parser.yy"
                {
     ElementPtr host(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("hostname", host);
@@ -3792,8 +3792,8 @@ namespace isc { namespace dhcp {
 #line 3793 "dhcp6_parser.cc"
     break;
 
-  case 681: // $@102: %empty
-#line 2420 "dhcp6_parser.yy"
+  case 682: // $@102: %empty
+#line 2421 "dhcp6_parser.yy"
                        {
     ctx.unique("flex-id", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -3801,8 +3801,8 @@ namespace isc { namespace dhcp {
 #line 3802 "dhcp6_parser.cc"
     break;
 
-  case 682: // flex_id_value: "flex-id" $@102 ":" "constant string"
-#line 2423 "dhcp6_parser.yy"
+  case 683: // flex_id_value: "flex-id" $@102 ":" "constant string"
+#line 2424 "dhcp6_parser.yy"
                {
     ElementPtr hw(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("flex-id", hw);
@@ -3811,8 +3811,8 @@ namespace isc { namespace dhcp {
 #line 3812 "dhcp6_parser.cc"
     break;
 
-  case 683: // $@103: %empty
-#line 2429 "dhcp6_parser.yy"
+  case 684: // $@103: %empty
+#line 2430 "dhcp6_parser.yy"
                                            {
     ctx.unique("client-classes", ctx.loc2pos(yystack_[0].location));
     ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location)));
@@ -3823,8 +3823,8 @@ namespace isc { namespace dhcp {
 #line 3824 "dhcp6_parser.cc"
     break;
 
-  case 684: // reservation_client_classes: "client-classes" $@103 ":" list_strings
-#line 2435 "dhcp6_parser.yy"
+  case 685: // reservation_client_classes: "client-classes" $@103 ":" list_strings
+#line 2436 "dhcp6_parser.yy"
                      {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -3832,8 +3832,8 @@ namespace isc { namespace dhcp {
 #line 3833 "dhcp6_parser.cc"
     break;
 
-  case 685: // $@104: %empty
-#line 2443 "dhcp6_parser.yy"
+  case 686: // $@104: %empty
+#line 2444 "dhcp6_parser.yy"
              {
     ctx.unique("relay", ctx.loc2pos(yystack_[0].location));
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -3844,8 +3844,8 @@ namespace isc { namespace dhcp {
 #line 3845 "dhcp6_parser.cc"
     break;
 
-  case 686: // relay: "relay" $@104 ":" "{" relay_map "}"
-#line 2449 "dhcp6_parser.yy"
+  case 687: // relay: "relay" $@104 ":" "{" relay_map "}"
+#line 2450 "dhcp6_parser.yy"
                                                 {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -3853,8 +3853,8 @@ namespace isc { namespace dhcp {
 #line 3854 "dhcp6_parser.cc"
     break;
 
-  case 688: // $@105: %empty
-#line 2460 "dhcp6_parser.yy"
+  case 689: // $@105: %empty
+#line 2461 "dhcp6_parser.yy"
                                {
     ctx.unique("client-classes", ctx.loc2pos(yystack_[0].location));
     ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
@@ -3865,8 +3865,8 @@ namespace isc { namespace dhcp {
 #line 3866 "dhcp6_parser.cc"
     break;
 
-  case 689: // client_classes: "client-classes" $@105 ":" "[" client_classes_list "]"
-#line 2466 "dhcp6_parser.yy"
+  case 690: // client_classes: "client-classes" $@105 ":" "[" client_classes_list "]"
+#line 2467 "dhcp6_parser.yy"
                                                             {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -3874,16 +3874,16 @@ namespace isc { namespace dhcp {
 #line 3875 "dhcp6_parser.cc"
     break;
 
-  case 692: // client_classes_list: client_classes_list ","
-#line 2473 "dhcp6_parser.yy"
+  case 693: // client_classes_list: client_classes_list ","
+#line 2474 "dhcp6_parser.yy"
                                                {
                        ctx.warnAboutExtraCommas(yystack_[0].location);
                        }
 #line 3883 "dhcp6_parser.cc"
     break;
 
-  case 693: // $@106: %empty
-#line 2478 "dhcp6_parser.yy"
+  case 694: // $@106: %empty
+#line 2479 "dhcp6_parser.yy"
                                    {
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->add(m);
@@ -3892,8 +3892,8 @@ namespace isc { namespace dhcp {
 #line 3893 "dhcp6_parser.cc"
     break;
 
-  case 694: // client_class_entry: "{" $@106 client_class_params "}"
-#line 2482 "dhcp6_parser.yy"
+  case 695: // client_class_entry: "{" $@106 client_class_params "}"
+#line 2483 "dhcp6_parser.yy"
                                      {
     // The name client class parameter is required.
     ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
@@ -3902,16 +3902,16 @@ namespace isc { namespace dhcp {
 #line 3903 "dhcp6_parser.cc"
     break;
 
-  case 699: // not_empty_client_class_params: not_empty_client_class_params ","
-#line 2494 "dhcp6_parser.yy"
+  case 700: // not_empty_client_class_params: not_empty_client_class_params ","
+#line 2495 "dhcp6_parser.yy"
                                           {
         ctx.warnAboutExtraCommas(yystack_[0].location);
         }
 #line 3911 "dhcp6_parser.cc"
     break;
 
-  case 715: // $@107: %empty
-#line 2517 "dhcp6_parser.yy"
+  case 716: // $@107: %empty
+#line 2518 "dhcp6_parser.yy"
                         {
     ctx.unique("test", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -3919,8 +3919,8 @@ namespace isc { namespace dhcp {
 #line 3920 "dhcp6_parser.cc"
     break;
 
-  case 716: // client_class_test: "test" $@107 ":" "constant string"
-#line 2520 "dhcp6_parser.yy"
+  case 717: // client_class_test: "test" $@107 ":" "constant string"
+#line 2521 "dhcp6_parser.yy"
                {
     ElementPtr test(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("test", test);
@@ -3929,8 +3929,8 @@ namespace isc { namespace dhcp {
 #line 3930 "dhcp6_parser.cc"
     break;
 
-  case 717: // $@108: %empty
-#line 2526 "dhcp6_parser.yy"
+  case 718: // $@108: %empty
+#line 2527 "dhcp6_parser.yy"
                                           {
     ctx.unique("template-test", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -3938,8 +3938,8 @@ namespace isc { namespace dhcp {
 #line 3939 "dhcp6_parser.cc"
     break;
 
-  case 718: // client_class_template_test: "template-test" $@108 ":" "constant string"
-#line 2529 "dhcp6_parser.yy"
+  case 719: // client_class_template_test: "template-test" $@108 ":" "constant string"
+#line 2530 "dhcp6_parser.yy"
                {
     ElementPtr template_test(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("template-test", template_test);
@@ -3948,8 +3948,8 @@ namespace isc { namespace dhcp {
 #line 3949 "dhcp6_parser.cc"
     break;
 
-  case 719: // only_if_required: "only-if-required" ":" "boolean"
-#line 2535 "dhcp6_parser.yy"
+  case 720: // only_if_required: "only-if-required" ":" "boolean"
+#line 2536 "dhcp6_parser.yy"
                                                  {
     ctx.unique("only-if-required", ctx.loc2pos(yystack_[2].location));
     ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location)));
@@ -3958,8 +3958,8 @@ namespace isc { namespace dhcp {
 #line 3959 "dhcp6_parser.cc"
     break;
 
-  case 720: // $@109: %empty
-#line 2544 "dhcp6_parser.yy"
+  case 721: // $@109: %empty
+#line 2545 "dhcp6_parser.yy"
                      {
     ctx.unique("server-id", ctx.loc2pos(yystack_[0].location));
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -3970,8 +3970,8 @@ namespace isc { namespace dhcp {
 #line 3971 "dhcp6_parser.cc"
     break;
 
-  case 721: // server_id: "server-id" $@109 ":" "{" server_id_params "}"
-#line 2550 "dhcp6_parser.yy"
+  case 722: // server_id: "server-id" $@109 ":" "{" server_id_params "}"
+#line 2551 "dhcp6_parser.yy"
                                                        {
     // The type parameter is required.
     ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
@@ -3981,16 +3981,16 @@ namespace isc { namespace dhcp {
 #line 3982 "dhcp6_parser.cc"
     break;
 
-  case 724: // server_id_params: server_id_params ","
-#line 2559 "dhcp6_parser.yy"
+  case 725: // server_id_params: server_id_params ","
+#line 2560 "dhcp6_parser.yy"
                                          {
                     ctx.warnAboutExtraCommas(yystack_[0].location);
                     }
 #line 3990 "dhcp6_parser.cc"
     break;
 
-  case 734: // $@110: %empty
-#line 2575 "dhcp6_parser.yy"
+  case 735: // $@110: %empty
+#line 2576 "dhcp6_parser.yy"
                      {
     ctx.unique("type", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.DUID_TYPE);
@@ -3998,8 +3998,8 @@ namespace isc { namespace dhcp {
 #line 3999 "dhcp6_parser.cc"
     break;
 
-  case 735: // server_id_type: "type" $@110 ":" duid_type
-#line 2578 "dhcp6_parser.yy"
+  case 736: // server_id_type: "type" $@110 ":" duid_type
+#line 2579 "dhcp6_parser.yy"
                   {
     ctx.stack_.back()->set("type", yystack_[0].value.as < ElementPtr > ());
     ctx.leave();
@@ -4007,26 +4007,26 @@ namespace isc { namespace dhcp {
 #line 4008 "dhcp6_parser.cc"
     break;
 
-  case 736: // duid_type: "LLT"
-#line 2583 "dhcp6_parser.yy"
+  case 737: // duid_type: "LLT"
+#line 2584 "dhcp6_parser.yy"
                { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("LLT", ctx.loc2pos(yystack_[0].location))); }
 #line 4014 "dhcp6_parser.cc"
     break;
 
-  case 737: // duid_type: "EN"
-#line 2584 "dhcp6_parser.yy"
+  case 738: // duid_type: "EN"
+#line 2585 "dhcp6_parser.yy"
               { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("EN", ctx.loc2pos(yystack_[0].location))); }
 #line 4020 "dhcp6_parser.cc"
     break;
 
-  case 738: // duid_type: "LL"
-#line 2585 "dhcp6_parser.yy"
+  case 739: // duid_type: "LL"
+#line 2586 "dhcp6_parser.yy"
               { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("LL", ctx.loc2pos(yystack_[0].location))); }
 #line 4026 "dhcp6_parser.cc"
     break;
 
-  case 739: // htype: "htype" ":" "integer"
-#line 2588 "dhcp6_parser.yy"
+  case 740: // htype: "htype" ":" "integer"
+#line 2589 "dhcp6_parser.yy"
                            {
     ctx.unique("htype", ctx.loc2pos(yystack_[2].location));
     ElementPtr htype(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4035,8 +4035,8 @@ namespace isc { namespace dhcp {
 #line 4036 "dhcp6_parser.cc"
     break;
 
-  case 740: // $@111: %empty
-#line 2594 "dhcp6_parser.yy"
+  case 741: // $@111: %empty
+#line 2595 "dhcp6_parser.yy"
                        {
     ctx.unique("identifier", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4044,8 +4044,8 @@ namespace isc { namespace dhcp {
 #line 4045 "dhcp6_parser.cc"
     break;
 
-  case 741: // identifier: "identifier" $@111 ":" "constant string"
-#line 2597 "dhcp6_parser.yy"
+  case 742: // identifier: "identifier" $@111 ":" "constant string"
+#line 2598 "dhcp6_parser.yy"
                {
     ElementPtr id(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("identifier", id);
@@ -4054,8 +4054,8 @@ namespace isc { namespace dhcp {
 #line 4055 "dhcp6_parser.cc"
     break;
 
-  case 742: // time: "time" ":" "integer"
-#line 2603 "dhcp6_parser.yy"
+  case 743: // time: "time" ":" "integer"
+#line 2604 "dhcp6_parser.yy"
                          {
     ctx.unique("time", ctx.loc2pos(yystack_[2].location));
     ElementPtr time(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4064,8 +4064,8 @@ namespace isc { namespace dhcp {
 #line 4065 "dhcp6_parser.cc"
     break;
 
-  case 743: // enterprise_id: "enterprise-id" ":" "integer"
-#line 2609 "dhcp6_parser.yy"
+  case 744: // enterprise_id: "enterprise-id" ":" "integer"
+#line 2610 "dhcp6_parser.yy"
                                            {
     ctx.unique("enterprise-id", ctx.loc2pos(yystack_[2].location));
     ElementPtr time(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4074,8 +4074,8 @@ namespace isc { namespace dhcp {
 #line 4075 "dhcp6_parser.cc"
     break;
 
-  case 744: // dhcp4o6_port: "dhcp4o6-port" ":" "integer"
-#line 2617 "dhcp6_parser.yy"
+  case 745: // dhcp4o6_port: "dhcp4o6-port" ":" "integer"
+#line 2618 "dhcp6_parser.yy"
                                          {
     ctx.unique("dhcp4o6-port", ctx.loc2pos(yystack_[2].location));
     ElementPtr time(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4084,8 +4084,8 @@ namespace isc { namespace dhcp {
 #line 4085 "dhcp6_parser.cc"
     break;
 
-  case 745: // $@112: %empty
-#line 2625 "dhcp6_parser.yy"
+  case 746: // $@112: %empty
+#line 2626 "dhcp6_parser.yy"
                                {
     ctx.unique("control-socket", ctx.loc2pos(yystack_[0].location));
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -4096,8 +4096,8 @@ namespace isc { namespace dhcp {
 #line 4097 "dhcp6_parser.cc"
     break;
 
-  case 746: // control_socket: "control-socket" $@112 ":" "{" control_socket_params "}"
-#line 2631 "dhcp6_parser.yy"
+  case 747: // control_socket: "control-socket" $@112 ":" "{" control_socket_params "}"
+#line 2632 "dhcp6_parser.yy"
                                                             {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -4105,16 +4105,16 @@ namespace isc { namespace dhcp {
 #line 4106 "dhcp6_parser.cc"
     break;
 
-  case 749: // control_socket_params: control_socket_params ","
-#line 2638 "dhcp6_parser.yy"
+  case 750: // control_socket_params: control_socket_params ","
+#line 2639 "dhcp6_parser.yy"
                                                    {
                          ctx.warnAboutExtraCommas(yystack_[0].location);
                          }
 #line 4114 "dhcp6_parser.cc"
     break;
 
-  case 755: // $@113: %empty
-#line 2650 "dhcp6_parser.yy"
+  case 756: // $@113: %empty
+#line 2651 "dhcp6_parser.yy"
                          {
     ctx.unique("socket-type", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4122,8 +4122,8 @@ namespace isc { namespace dhcp {
 #line 4123 "dhcp6_parser.cc"
     break;
 
-  case 756: // socket_type: "socket-type" $@113 ":" "constant string"
-#line 2653 "dhcp6_parser.yy"
+  case 757: // socket_type: "socket-type" $@113 ":" "constant string"
+#line 2654 "dhcp6_parser.yy"
                {
     ElementPtr stype(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("socket-type", stype);
@@ -4132,8 +4132,8 @@ namespace isc { namespace dhcp {
 #line 4133 "dhcp6_parser.cc"
     break;
 
-  case 757: // $@114: %empty
-#line 2659 "dhcp6_parser.yy"
+  case 758: // $@114: %empty
+#line 2660 "dhcp6_parser.yy"
                          {
     ctx.unique("socket-name", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4141,8 +4141,8 @@ namespace isc { namespace dhcp {
 #line 4142 "dhcp6_parser.cc"
     break;
 
-  case 758: // socket_name: "socket-name" $@114 ":" "constant string"
-#line 2662 "dhcp6_parser.yy"
+  case 759: // socket_name: "socket-name" $@114 ":" "constant string"
+#line 2663 "dhcp6_parser.yy"
                {
     ElementPtr name(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("socket-name", name);
@@ -4151,8 +4151,8 @@ namespace isc { namespace dhcp {
 #line 4152 "dhcp6_parser.cc"
     break;
 
-  case 759: // $@115: %empty
-#line 2671 "dhcp6_parser.yy"
+  case 760: // $@115: %empty
+#line 2672 "dhcp6_parser.yy"
                                        {
     ctx.unique("dhcp-queue-control", ctx.loc2pos(yystack_[0].location));
     ElementPtr qc(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -4163,8 +4163,8 @@ namespace isc { namespace dhcp {
 #line 4164 "dhcp6_parser.cc"
     break;
 
-  case 760: // dhcp_queue_control: "dhcp-queue-control" $@115 ":" "{" queue_control_params "}"
-#line 2677 "dhcp6_parser.yy"
+  case 761: // dhcp_queue_control: "dhcp-queue-control" $@115 ":" "{" queue_control_params "}"
+#line 2678 "dhcp6_parser.yy"
                                                            {
     // The enable queue parameter is required.
     ctx.require("enable-queue", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
@@ -4174,16 +4174,16 @@ namespace isc { namespace dhcp {
 #line 4175 "dhcp6_parser.cc"
     break;
 
-  case 763: // queue_control_params: queue_control_params ","
-#line 2686 "dhcp6_parser.yy"
+  case 764: // queue_control_params: queue_control_params ","
+#line 2687 "dhcp6_parser.yy"
                                                  {
                         ctx.warnAboutExtraCommas(yystack_[0].location);
                         }
 #line 4183 "dhcp6_parser.cc"
     break;
 
-  case 770: // enable_queue: "enable-queue" ":" "boolean"
-#line 2699 "dhcp6_parser.yy"
+  case 771: // enable_queue: "enable-queue" ":" "boolean"
+#line 2700 "dhcp6_parser.yy"
                                          {
     ctx.unique("enable-queue", ctx.loc2pos(yystack_[2].location));
     ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location)));
@@ -4192,8 +4192,8 @@ namespace isc { namespace dhcp {
 #line 4193 "dhcp6_parser.cc"
     break;
 
-  case 771: // $@116: %empty
-#line 2705 "dhcp6_parser.yy"
+  case 772: // $@116: %empty
+#line 2706 "dhcp6_parser.yy"
                        {
     ctx.unique("queue-type", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4201,8 +4201,8 @@ namespace isc { namespace dhcp {
 #line 4202 "dhcp6_parser.cc"
     break;
 
-  case 772: // queue_type: "queue-type" $@116 ":" "constant string"
-#line 2708 "dhcp6_parser.yy"
+  case 773: // queue_type: "queue-type" $@116 ":" "constant string"
+#line 2709 "dhcp6_parser.yy"
                {
     ElementPtr qt(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("queue-type", qt);
@@ -4211,8 +4211,8 @@ namespace isc { namespace dhcp {
 #line 4212 "dhcp6_parser.cc"
     break;
 
-  case 773: // capacity: "capacity" ":" "integer"
-#line 2714 "dhcp6_parser.yy"
+  case 774: // capacity: "capacity" ":" "integer"
+#line 2715 "dhcp6_parser.yy"
                                  {
     ctx.unique("capacity", ctx.loc2pos(yystack_[2].location));
     ElementPtr c(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4221,8 +4221,8 @@ namespace isc { namespace dhcp {
 #line 4222 "dhcp6_parser.cc"
     break;
 
-  case 774: // $@117: %empty
-#line 2720 "dhcp6_parser.yy"
+  case 775: // $@117: %empty
+#line 2721 "dhcp6_parser.yy"
                             {
     ctx.unique(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4230,8 +4230,8 @@ namespace isc { namespace dhcp {
 #line 4231 "dhcp6_parser.cc"
     break;
 
-  case 775: // arbitrary_map_entry: "constant string" $@117 ":" value
-#line 2723 "dhcp6_parser.yy"
+  case 776: // arbitrary_map_entry: "constant string" $@117 ":" value
+#line 2724 "dhcp6_parser.yy"
               {
     ctx.stack_.back()->set(yystack_[3].value.as < std::string > (), yystack_[0].value.as < ElementPtr > ());
     ctx.leave();
@@ -4239,8 +4239,8 @@ namespace isc { namespace dhcp {
 #line 4240 "dhcp6_parser.cc"
     break;
 
-  case 776: // $@118: %empty
-#line 2730 "dhcp6_parser.yy"
+  case 777: // $@118: %empty
+#line 2731 "dhcp6_parser.yy"
                      {
     ctx.unique("dhcp-ddns", ctx.loc2pos(yystack_[0].location));
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -4251,8 +4251,8 @@ namespace isc { namespace dhcp {
 #line 4252 "dhcp6_parser.cc"
     break;
 
-  case 777: // dhcp_ddns: "dhcp-ddns" $@118 ":" "{" dhcp_ddns_params "}"
-#line 2736 "dhcp6_parser.yy"
+  case 778: // dhcp_ddns: "dhcp-ddns" $@118 ":" "{" dhcp_ddns_params "}"
+#line 2737 "dhcp6_parser.yy"
                                                        {
     // The enable updates DHCP DDNS parameter is required.
     ctx.require("enable-updates", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location));
@@ -4262,8 +4262,8 @@ namespace isc { namespace dhcp {
 #line 4263 "dhcp6_parser.cc"
     break;
 
-  case 778: // $@119: %empty
-#line 2743 "dhcp6_parser.yy"
+  case 779: // $@119: %empty
+#line 2744 "dhcp6_parser.yy"
                               {
     // Parse the dhcp-ddns map
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -4272,8 +4272,8 @@ namespace isc { namespace dhcp {
 #line 4273 "dhcp6_parser.cc"
     break;
 
-  case 779: // sub_dhcp_ddns: "{" $@119 dhcp_ddns_params "}"
-#line 2747 "dhcp6_parser.yy"
+  case 780: // sub_dhcp_ddns: "{" $@119 dhcp_ddns_params "}"
+#line 2748 "dhcp6_parser.yy"
                                   {
     // The enable updates DHCP DDNS parameter is required.
     ctx.require("enable-updates", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location));
@@ -4282,16 +4282,16 @@ namespace isc { namespace dhcp {
 #line 4283 "dhcp6_parser.cc"
     break;
 
-  case 782: // dhcp_ddns_params: dhcp_ddns_params ","
-#line 2755 "dhcp6_parser.yy"
+  case 783: // dhcp_ddns_params: dhcp_ddns_params ","
+#line 2756 "dhcp6_parser.yy"
                                          {
                     ctx.warnAboutExtraCommas(yystack_[0].location);
                     }
 #line 4291 "dhcp6_parser.cc"
     break;
 
-  case 794: // enable_updates: "enable-updates" ":" "boolean"
-#line 2773 "dhcp6_parser.yy"
+  case 795: // enable_updates: "enable-updates" ":" "boolean"
+#line 2774 "dhcp6_parser.yy"
                                              {
     ctx.unique("enable-updates", ctx.loc2pos(yystack_[2].location));
     ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location)));
@@ -4300,8 +4300,8 @@ namespace isc { namespace dhcp {
 #line 4301 "dhcp6_parser.cc"
     break;
 
-  case 795: // $@120: %empty
-#line 2779 "dhcp6_parser.yy"
+  case 796: // $@120: %empty
+#line 2780 "dhcp6_parser.yy"
                      {
     ctx.unique("server-ip", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4309,8 +4309,8 @@ namespace isc { namespace dhcp {
 #line 4310 "dhcp6_parser.cc"
     break;
 
-  case 796: // server_ip: "server-ip" $@120 ":" "constant string"
-#line 2782 "dhcp6_parser.yy"
+  case 797: // server_ip: "server-ip" $@120 ":" "constant string"
+#line 2783 "dhcp6_parser.yy"
                {
     ElementPtr s(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("server-ip", s);
@@ -4319,8 +4319,8 @@ namespace isc { namespace dhcp {
 #line 4320 "dhcp6_parser.cc"
     break;
 
-  case 797: // server_port: "server-port" ":" "integer"
-#line 2788 "dhcp6_parser.yy"
+  case 798: // server_port: "server-port" ":" "integer"
+#line 2789 "dhcp6_parser.yy"
                                        {
     ctx.unique("server-port", ctx.loc2pos(yystack_[2].location));
     ElementPtr i(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4329,8 +4329,8 @@ namespace isc { namespace dhcp {
 #line 4330 "dhcp6_parser.cc"
     break;
 
-  case 798: // $@121: %empty
-#line 2794 "dhcp6_parser.yy"
+  case 799: // $@121: %empty
+#line 2795 "dhcp6_parser.yy"
                      {
     ctx.unique("sender-ip", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4338,8 +4338,8 @@ namespace isc { namespace dhcp {
 #line 4339 "dhcp6_parser.cc"
     break;
 
-  case 799: // sender_ip: "sender-ip" $@121 ":" "constant string"
-#line 2797 "dhcp6_parser.yy"
+  case 800: // sender_ip: "sender-ip" $@121 ":" "constant string"
+#line 2798 "dhcp6_parser.yy"
                {
     ElementPtr s(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("sender-ip", s);
@@ -4348,8 +4348,8 @@ namespace isc { namespace dhcp {
 #line 4349 "dhcp6_parser.cc"
     break;
 
-  case 800: // sender_port: "sender-port" ":" "integer"
-#line 2803 "dhcp6_parser.yy"
+  case 801: // sender_port: "sender-port" ":" "integer"
+#line 2804 "dhcp6_parser.yy"
                                        {
     ctx.unique("sender-port", ctx.loc2pos(yystack_[2].location));
     ElementPtr i(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4358,8 +4358,8 @@ namespace isc { namespace dhcp {
 #line 4359 "dhcp6_parser.cc"
     break;
 
-  case 801: // max_queue_size: "max-queue-size" ":" "integer"
-#line 2809 "dhcp6_parser.yy"
+  case 802: // max_queue_size: "max-queue-size" ":" "integer"
+#line 2810 "dhcp6_parser.yy"
                                              {
     ctx.unique("max-queue-size", ctx.loc2pos(yystack_[2].location));
     ElementPtr i(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4368,8 +4368,8 @@ namespace isc { namespace dhcp {
 #line 4369 "dhcp6_parser.cc"
     break;
 
-  case 802: // $@122: %empty
-#line 2815 "dhcp6_parser.yy"
+  case 803: // $@122: %empty
+#line 2816 "dhcp6_parser.yy"
                            {
     ctx.unique("ncr-protocol", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NCR_PROTOCOL);
@@ -4377,8 +4377,8 @@ namespace isc { namespace dhcp {
 #line 4378 "dhcp6_parser.cc"
     break;
 
-  case 803: // ncr_protocol: "ncr-protocol" $@122 ":" ncr_protocol_value
-#line 2818 "dhcp6_parser.yy"
+  case 804: // ncr_protocol: "ncr-protocol" $@122 ":" ncr_protocol_value
+#line 2819 "dhcp6_parser.yy"
                            {
     ctx.stack_.back()->set("ncr-protocol", yystack_[0].value.as < ElementPtr > ());
     ctx.leave();
@@ -4386,20 +4386,20 @@ namespace isc { namespace dhcp {
 #line 4387 "dhcp6_parser.cc"
     break;
 
-  case 804: // ncr_protocol_value: "UDP"
-#line 2824 "dhcp6_parser.yy"
+  case 805: // ncr_protocol_value: "UDP"
+#line 2825 "dhcp6_parser.yy"
         { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("UDP", ctx.loc2pos(yystack_[0].location))); }
 #line 4393 "dhcp6_parser.cc"
     break;
 
-  case 805: // ncr_protocol_value: "TCP"
-#line 2825 "dhcp6_parser.yy"
+  case 806: // ncr_protocol_value: "TCP"
+#line 2826 "dhcp6_parser.yy"
         { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("TCP", ctx.loc2pos(yystack_[0].location))); }
 #line 4399 "dhcp6_parser.cc"
     break;
 
-  case 806: // $@123: %empty
-#line 2828 "dhcp6_parser.yy"
+  case 807: // $@123: %empty
+#line 2829 "dhcp6_parser.yy"
                        {
     ctx.unique("ncr-format", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NCR_FORMAT);
@@ -4407,8 +4407,8 @@ namespace isc { namespace dhcp {
 #line 4408 "dhcp6_parser.cc"
     break;
 
-  case 807: // ncr_format: "ncr-format" $@123 ":" "JSON"
-#line 2831 "dhcp6_parser.yy"
+  case 808: // ncr_format: "ncr-format" $@123 ":" "JSON"
+#line 2832 "dhcp6_parser.yy"
              {
     ElementPtr json(new StringElement("JSON", ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("ncr-format", json);
@@ -4417,8 +4417,8 @@ namespace isc { namespace dhcp {
 #line 4418 "dhcp6_parser.cc"
     break;
 
-  case 808: // $@124: %empty
-#line 2839 "dhcp6_parser.yy"
+  case 809: // $@124: %empty
+#line 2840 "dhcp6_parser.yy"
                                {
     ctx.unique("config-control", ctx.loc2pos(yystack_[0].location));
     ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -4429,8 +4429,8 @@ namespace isc { namespace dhcp {
 #line 4430 "dhcp6_parser.cc"
     break;
 
-  case 809: // config_control: "config-control" $@124 ":" "{" config_control_params "}"
-#line 2845 "dhcp6_parser.yy"
+  case 810: // config_control: "config-control" $@124 ":" "{" config_control_params "}"
+#line 2846 "dhcp6_parser.yy"
                                                             {
     // No config control params are required
     ctx.stack_.pop_back();
@@ -4439,8 +4439,8 @@ namespace isc { namespace dhcp {
 #line 4440 "dhcp6_parser.cc"
     break;
 
-  case 810: // $@125: %empty
-#line 2851 "dhcp6_parser.yy"
+  case 811: // $@125: %empty
+#line 2852 "dhcp6_parser.yy"
                                    {
     // Parse the config-control map
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -4449,8 +4449,8 @@ namespace isc { namespace dhcp {
 #line 4450 "dhcp6_parser.cc"
     break;
 
-  case 811: // sub_config_control: "{" $@125 config_control_params "}"
-#line 2855 "dhcp6_parser.yy"
+  case 812: // sub_config_control: "{" $@125 config_control_params "}"
+#line 2856 "dhcp6_parser.yy"
                                        {
     // No config_control params are required
     // parsing completed
@@ -4458,16 +4458,16 @@ namespace isc { namespace dhcp {
 #line 4459 "dhcp6_parser.cc"
     break;
 
-  case 814: // config_control_params: config_control_params ","
-#line 2863 "dhcp6_parser.yy"
+  case 815: // config_control_params: config_control_params ","
+#line 2864 "dhcp6_parser.yy"
                                                    {
                          ctx.warnAboutExtraCommas(yystack_[0].location);
                          }
 #line 4467 "dhcp6_parser.cc"
     break;
 
-  case 817: // $@126: %empty
-#line 2873 "dhcp6_parser.yy"
+  case 818: // $@126: %empty
+#line 2874 "dhcp6_parser.yy"
                                    {
     ctx.unique("config-databases", ctx.loc2pos(yystack_[0].location));
     ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
@@ -4478,8 +4478,8 @@ namespace isc { namespace dhcp {
 #line 4479 "dhcp6_parser.cc"
     break;
 
-  case 818: // config_databases: "config-databases" $@126 ":" "[" database_list "]"
-#line 2879 "dhcp6_parser.yy"
+  case 819: // config_databases: "config-databases" $@126 ":" "[" database_list "]"
+#line 2880 "dhcp6_parser.yy"
                                                       {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -4487,8 +4487,8 @@ namespace isc { namespace dhcp {
 #line 4488 "dhcp6_parser.cc"
     break;
 
-  case 819: // config_fetch_wait_time: "config-fetch-wait-time" ":" "integer"
-#line 2884 "dhcp6_parser.yy"
+  case 820: // config_fetch_wait_time: "config-fetch-wait-time" ":" "integer"
+#line 2885 "dhcp6_parser.yy"
                                                              {
     ctx.unique("config-fetch-wait-time", ctx.loc2pos(yystack_[2].location));
     ElementPtr value(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4497,8 +4497,8 @@ namespace isc { namespace dhcp {
 #line 4498 "dhcp6_parser.cc"
     break;
 
-  case 820: // $@127: %empty
-#line 2892 "dhcp6_parser.yy"
+  case 821: // $@127: %empty
+#line 2893 "dhcp6_parser.yy"
                  {
     ctx.unique("loggers", ctx.loc2pos(yystack_[0].location));
     ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
@@ -4509,8 +4509,8 @@ namespace isc { namespace dhcp {
 #line 4510 "dhcp6_parser.cc"
     break;
 
-  case 821: // loggers: "loggers" $@127 ":" "[" loggers_entries "]"
-#line 2898 "dhcp6_parser.yy"
+  case 822: // loggers: "loggers" $@127 ":" "[" loggers_entries "]"
+#line 2899 "dhcp6_parser.yy"
                                                          {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -4518,16 +4518,16 @@ namespace isc { namespace dhcp {
 #line 4519 "dhcp6_parser.cc"
     break;
 
-  case 824: // loggers_entries: loggers_entries ","
-#line 2907 "dhcp6_parser.yy"
+  case 825: // loggers_entries: loggers_entries ","
+#line 2908 "dhcp6_parser.yy"
                                        {
                    ctx.warnAboutExtraCommas(yystack_[0].location);
                    }
 #line 4527 "dhcp6_parser.cc"
     break;
 
-  case 825: // $@128: %empty
-#line 2913 "dhcp6_parser.yy"
+  case 826: // $@128: %empty
+#line 2914 "dhcp6_parser.yy"
                              {
     ElementPtr l(new MapElement(ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->add(l);
@@ -4536,24 +4536,24 @@ namespace isc { namespace dhcp {
 #line 4537 "dhcp6_parser.cc"
     break;
 
-  case 826: // logger_entry: "{" $@128 logger_params "}"
-#line 2917 "dhcp6_parser.yy"
+  case 827: // logger_entry: "{" $@128 logger_params "}"
+#line 2918 "dhcp6_parser.yy"
                                {
     ctx.stack_.pop_back();
 }
 #line 4545 "dhcp6_parser.cc"
     break;
 
-  case 829: // logger_params: logger_params ","
-#line 2923 "dhcp6_parser.yy"
+  case 830: // logger_params: logger_params ","
+#line 2924 "dhcp6_parser.yy"
                                    {
                  ctx.warnAboutExtraCommas(yystack_[0].location);
                  }
 #line 4553 "dhcp6_parser.cc"
     break;
 
-  case 837: // debuglevel: "debuglevel" ":" "integer"
-#line 2937 "dhcp6_parser.yy"
+  case 838: // debuglevel: "debuglevel" ":" "integer"
+#line 2938 "dhcp6_parser.yy"
                                      {
     ctx.unique("debuglevel", ctx.loc2pos(yystack_[2].location));
     ElementPtr dl(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4562,8 +4562,8 @@ namespace isc { namespace dhcp {
 #line 4563 "dhcp6_parser.cc"
     break;
 
-  case 838: // $@129: %empty
-#line 2943 "dhcp6_parser.yy"
+  case 839: // $@129: %empty
+#line 2944 "dhcp6_parser.yy"
                    {
     ctx.unique("severity", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4571,8 +4571,8 @@ namespace isc { namespace dhcp {
 #line 4572 "dhcp6_parser.cc"
     break;
 
-  case 839: // severity: "severity" $@129 ":" "constant string"
-#line 2946 "dhcp6_parser.yy"
+  case 840: // severity: "severity" $@129 ":" "constant string"
+#line 2947 "dhcp6_parser.yy"
                {
     ElementPtr sev(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("severity", sev);
@@ -4581,8 +4581,8 @@ namespace isc { namespace dhcp {
 #line 4582 "dhcp6_parser.cc"
     break;
 
-  case 840: // $@130: %empty
-#line 2952 "dhcp6_parser.yy"
+  case 841: // $@130: %empty
+#line 2953 "dhcp6_parser.yy"
                                     {
     ctx.unique("output-options", ctx.loc2pos(yystack_[0].location));
     ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location)));
@@ -4593,8 +4593,8 @@ namespace isc { namespace dhcp {
 #line 4594 "dhcp6_parser.cc"
     break;
 
-  case 841: // output_options_list: "output-options" $@130 ":" "[" output_options_list_content "]"
-#line 2958 "dhcp6_parser.yy"
+  case 842: // output_options_list: "output-options" $@130 ":" "[" output_options_list_content "]"
+#line 2959 "dhcp6_parser.yy"
                                                                     {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -4602,16 +4602,16 @@ namespace isc { namespace dhcp {
 #line 4603 "dhcp6_parser.cc"
     break;
 
-  case 844: // output_options_list_content: output_options_list_content ","
-#line 2965 "dhcp6_parser.yy"
+  case 845: // output_options_list_content: output_options_list_content ","
+#line 2966 "dhcp6_parser.yy"
                                                                {
                                ctx.warnAboutExtraCommas(yystack_[0].location);
                                }
 #line 4611 "dhcp6_parser.cc"
     break;
 
-  case 845: // $@131: %empty
-#line 2970 "dhcp6_parser.yy"
+  case 846: // $@131: %empty
+#line 2971 "dhcp6_parser.yy"
                              {
     ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->add(m);
@@ -4620,24 +4620,24 @@ namespace isc { namespace dhcp {
 #line 4621 "dhcp6_parser.cc"
     break;
 
-  case 846: // output_entry: "{" $@131 output_params_list "}"
-#line 2974 "dhcp6_parser.yy"
+  case 847: // output_entry: "{" $@131 output_params_list "}"
+#line 2975 "dhcp6_parser.yy"
                                     {
     ctx.stack_.pop_back();
 }
 #line 4629 "dhcp6_parser.cc"
     break;
 
-  case 849: // output_params_list: output_params_list ","
-#line 2980 "dhcp6_parser.yy"
+  case 850: // output_params_list: output_params_list ","
+#line 2981 "dhcp6_parser.yy"
                                              {
                       ctx.warnAboutExtraCommas(yystack_[0].location);
                       }
 #line 4637 "dhcp6_parser.cc"
     break;
 
-  case 855: // $@132: %empty
-#line 2992 "dhcp6_parser.yy"
+  case 856: // $@132: %empty
+#line 2993 "dhcp6_parser.yy"
                {
     ctx.unique("output", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4645,8 +4645,8 @@ namespace isc { namespace dhcp {
 #line 4646 "dhcp6_parser.cc"
     break;
 
-  case 856: // output: "output" $@132 ":" "constant string"
-#line 2995 "dhcp6_parser.yy"
+  case 857: // output: "output" $@132 ":" "constant string"
+#line 2996 "dhcp6_parser.yy"
                {
     ElementPtr sev(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("output", sev);
@@ -4655,8 +4655,8 @@ namespace isc { namespace dhcp {
 #line 4656 "dhcp6_parser.cc"
     break;
 
-  case 857: // flush: "flush" ":" "boolean"
-#line 3001 "dhcp6_parser.yy"
+  case 858: // flush: "flush" ":" "boolean"
+#line 3002 "dhcp6_parser.yy"
                            {
     ctx.unique("flush", ctx.loc2pos(yystack_[2].location));
     ElementPtr flush(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location)));
@@ -4665,8 +4665,8 @@ namespace isc { namespace dhcp {
 #line 4666 "dhcp6_parser.cc"
     break;
 
-  case 858: // maxsize: "maxsize" ":" "integer"
-#line 3007 "dhcp6_parser.yy"
+  case 859: // maxsize: "maxsize" ":" "integer"
+#line 3008 "dhcp6_parser.yy"
                                {
     ctx.unique("maxsize", ctx.loc2pos(yystack_[2].location));
     ElementPtr maxsize(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4675,8 +4675,8 @@ namespace isc { namespace dhcp {
 #line 4676 "dhcp6_parser.cc"
     break;
 
-  case 859: // maxver: "maxver" ":" "integer"
-#line 3013 "dhcp6_parser.yy"
+  case 860: // maxver: "maxver" ":" "integer"
+#line 3014 "dhcp6_parser.yy"
                              {
     ctx.unique("maxver", ctx.loc2pos(yystack_[2].location));
     ElementPtr maxver(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location)));
@@ -4685,8 +4685,8 @@ namespace isc { namespace dhcp {
 #line 4686 "dhcp6_parser.cc"
     break;
 
-  case 860: // $@133: %empty
-#line 3019 "dhcp6_parser.yy"
+  case 861: // $@133: %empty
+#line 3020 "dhcp6_parser.yy"
                  {
     ctx.unique("pattern", ctx.loc2pos(yystack_[0].location));
     ctx.enter(ctx.NO_KEYWORD);
@@ -4694,8 +4694,8 @@ namespace isc { namespace dhcp {
 #line 4695 "dhcp6_parser.cc"
     break;
 
-  case 861: // pattern: "pattern" $@133 ":" "constant string"
-#line 3022 "dhcp6_parser.yy"
+  case 862: // pattern: "pattern" $@133 ":" "constant string"
+#line 3023 "dhcp6_parser.yy"
                {
     ElementPtr sev(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)));
     ctx.stack_.back()->set("pattern", sev);
@@ -4704,8 +4704,8 @@ namespace isc { namespace dhcp {
 #line 4705 "dhcp6_parser.cc"
     break;
 
-  case 862: // $@134: %empty
-#line 3028 "dhcp6_parser.yy"
+  case 863: // $@134: %empty
+#line 3029 "dhcp6_parser.yy"
                              {
     ctx.unique("compatibility", ctx.loc2pos(yystack_[0].location));
     ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location)));
@@ -4716,8 +4716,8 @@ namespace isc { namespace dhcp {
 #line 4717 "dhcp6_parser.cc"
     break;
 
-  case 863: // compatibility: "compatibility" $@134 ":" "{" compatibility_params "}"
-#line 3034 "dhcp6_parser.yy"
+  case 864: // compatibility: "compatibility" $@134 ":" "{" compatibility_params "}"
+#line 3035 "dhcp6_parser.yy"
                                                            {
     ctx.stack_.pop_back();
     ctx.leave();
@@ -4725,16 +4725,16 @@ namespace isc { namespace dhcp {
 #line 4726 "dhcp6_parser.cc"
     break;
 
-  case 866: // compatibility_params: compatibility_params ","
-#line 3041 "dhcp6_parser.yy"
+  case 867: // compatibility_params: compatibility_params ","
+#line 3042 "dhcp6_parser.yy"
                                                  {
                         ctx.warnAboutExtraCommas(yystack_[0].location);
                         }
 #line 4734 "dhcp6_parser.cc"
     break;
 
-  case 869: // lenient_option_parsing: "lenient-option-parsing" ":" "boolean"
-#line 3050 "dhcp6_parser.yy"
+  case 870: // lenient_option_parsing: "lenient-option-parsing" ":" "boolean"
+#line 3051 "dhcp6_parser.yy"
                                                              {
     ctx.unique("lenient-option-parsing", ctx.loc2pos(yystack_[2].location));
     ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location)));
@@ -5103,140 +5103,141 @@ namespace isc { namespace dhcp {
   const short
   Dhcp6Parser::yypact_[] =
   {
-     701, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000,    35,    34,    39,    61,    70,
-      82,    97,   114,   123,   127,   137,   141,   147,   158,   186,
+     432, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000,    35,    34,    70,    82,    89,
+     115,   121,   123,   131,   133,   139,   141,   147,   156,   163,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,    34,  -175,
-      42,   165,    75,   668,    60,   212,   519,   -37,    83,   312,
-     -96,   459,   168, -1000,    55,   172,    59,   193,   191, -1000,
-      47, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   242,   243,
-     283,   291,   304,   308,   345,   409,   414,   418,   421,   422,
-     424,   425, -1000,   426,   428,   429,   430,   431, -1000, -1000,
-   -1000,   432,   434,   435,   436, -1000, -1000, -1000,   437, -1000,
-   -1000, -1000, -1000, -1000, -1000,   438,   439,   441, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000,   442, -1000, -1000,
-   -1000, -1000, -1000, -1000,   443,   444,   445, -1000, -1000,   446,
-   -1000,    71, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+      99,   167,    75,   669,   322,   214,   282,   -35,    77,   313,
+     -94,   455,    54, -1000,    55,   174,   183,   185,   188, -1000,
+      96, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   196,   211,
+     267,   285,   289,   303,   307,   330,   336,   337,   347,   354,
+     377,   379, -1000,   388,   389,   397,   403,   409, -1000, -1000,
+   -1000,   422,   436,   442,   449, -1000, -1000, -1000,   450, -1000,
+   -1000, -1000, -1000, -1000, -1000,   452,   456,   462, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000,   465, -1000, -1000,
+   -1000, -1000, -1000, -1000,   466,   472,   480, -1000, -1000,   482,
+   -1000,   154, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000,   483,   486,   487,   489, -1000,   161, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+     491,   492, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000,   447,   448,   449,   450, -1000,    77, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-     451,   453, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000,   172, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000,   494, -1000, -1000, -1000, -1000,   173,
+   -1000, -1000, -1000, -1000, -1000, -1000,   495, -1000,   497,   499,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000,   191, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000,    78, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000,   255,   301, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000,   323, -1000, -1000,   501, -1000,
+   -1000, -1000,   505, -1000, -1000,   353,   335, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000,   455, -1000, -1000, -1000, -1000,   112,
-   -1000, -1000, -1000, -1000, -1000, -1000,   457, -1000,   458,   460,
-   -1000, -1000, -1000, -1000, -1000, -1000,   135, -1000, -1000, -1000,
+     506,   510,   511, -1000, -1000, -1000, -1000,   396,   425, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000,   328,   354, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000,   394, -1000, -1000,   461, -1000, -1000,
-   -1000,   464, -1000, -1000,   396,   466, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   467,
-     468,   469, -1000, -1000, -1000, -1000,   404,   472, -1000, -1000,
+   -1000, -1000,   198, -1000, -1000, -1000,   515, -1000,   516, -1000,
+     518,   522, -1000, -1000, -1000, -1000, -1000,   199, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   523,   209,
+   -1000, -1000, -1000, -1000,    34,    34, -1000,   220,   530, -1000,
+   -1000,   531,   535,   536,   537,   540,   543,   242,   332,   333,
+     343,   350,   351,   352,   358,   355,   338,   359,   363,   365,
+     366,   546,   369,   370,   371,   375,   381,   547,   548,   565,
+     382,   383,   378,   385,   579,   583,   584,   390,   594,   601,
+     605,   606,   607,   608,   398,   399,   401,   610,   611,   614,
+     617,   618,   619,   620,   643,   645,   437,   646,   648,   650,
+     651,   652,   653,   443,   444,   445,   654,   655, -1000,   167,
+   -1000,   656,   446,   448,   451,   453,    75, -1000,   664,   667,
+     668,   670,   671,   457,   458,   673,   674,   675,   669, -1000,
+     676,   467,   322, -1000,   677,   468,   678,   469,   473,   214,
+   -1000,   687,   688,   689,   691,   692,   693,   694, -1000,   282,
+   -1000,   695,   701,   490,   703,   705,   706,   493, -1000,    77,
+     708,   496,   498,   500, -1000,   313,   709,   711,   137, -1000,
+     517,   713,   520,   729,   532,   534,   730,   743,   455, -1000,
+     747,   544,    54, -1000, -1000, -1000,   748,   746,   549,   752,
+     758,   759,   760,   763, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   555, -1000,
+   -1000, -1000, -1000, -1000,   -50,   557,   558, -1000, -1000, -1000,
+   -1000,   769,   770,   771, -1000,   572,   573,   367,   784,   783,
+     576, -1000, -1000, -1000,   787,   788,   790,   789,   792,   794,
+     796,   795,   797, -1000,   798,   799,   801,   802,   588,   595,
+   -1000, -1000, -1000,   806,   805, -1000,   808, -1000, -1000, -1000,
+   -1000, -1000,   809,   823,   615,   616,   628, -1000, -1000,   808,
+     631,   822, -1000,   632, -1000, -1000,   633, -1000,   634, -1000,
+   -1000, -1000,   808,   808,   808,   635,   636,   637,   638, -1000,
+     644,   647, -1000,   649,   659,   662, -1000, -1000,   672, -1000,
+   -1000, -1000, -1000,   679,   783, -1000, -1000,   680, -1000,   681,
+   -1000, -1000,   102,   683, -1000,   855, -1000, -1000,    34,   167,
+   -1000,    54,    75,   339,   339,   854, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000,   858,   859,   860, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000,   861, -1000, -1000, -1000,  -101,
+      34,   -53,   192,   862,   863,   864,   202,    42,    95,   -44,
+     -23,   455, -1000, -1000,   875,  -152, -1000, -1000,   876,   878,
+   -1000, -1000, -1000, -1000, -1000,   754, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000,   142, -1000, -1000, -1000,   474, -1000,   475, -1000,   476,
-     479, -1000, -1000, -1000, -1000, -1000,   143, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000,   481,   171, -1000,
-   -1000, -1000, -1000,    34,    34, -1000,  -133,   482, -1000, -1000,
-     485,   486,   488,   490,   491,   492,  -132,   247,   260,   281,
-     284,   286,   289,   292,   295,   287,   297,   301,   293,   305,
-     515,   309,   310,   311,   313,   315,   526,   530,   532,   320,
-     321,   329,   322,   539,   543,   544,   333,   546,   547,   550,
-     554,   558,   559,   347,   348,   361,   568,   569,   571,   576,
-     577,   578,   580,   581,   582,   371,   584,   588,   590,   593,
-     594,   596,   384,   386,   387,   604,   605, -1000,   165, -1000,
-     606,   393,   395,   399,   401,    75, -1000,   610,   612,   614,
-     616,   617,   406,   405,   620,   621,   622,   668, -1000,   640,
-     433,    60, -1000,   641,   452,   642,   454,   456,   212, -1000,
-     644,   653,   654,   655,   656,   657,   658, -1000,   519, -1000,
-     659,   661,   462,   665,   667,   669,   463, -1000,    83,   671,
-     465,   470,   473, -1000,   312,   672,   673,   -44, -1000,   478,
-     675,   489,   676,   493,   494,   678,   680,   459, -1000,   686,
-     495,   168, -1000, -1000, -1000,   688,   690,   483,   697,   699,
-     708,   709,   703, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000,   502, -1000, -1000,
-   -1000, -1000, -1000,  -117,   517,   518, -1000, -1000, -1000, -1000,
-     730,   741,   742, -1000,   534,   535,   294,   746,   745,   548,
-   -1000, -1000, -1000,   753,   754,   759,   758,   761,   762,   764,
-     765,   766, -1000,   767,   768,   779,   780,   556,   573, -1000,
-   -1000, -1000,   784,   783, -1000,   786, -1000, -1000, -1000, -1000,
-   -1000,   787,   789,   583,   585,   587, -1000, -1000,   786,   589,
-     788, -1000,   592, -1000, -1000,   595, -1000,   597, -1000, -1000,
-   -1000,   786,   786,   786,   598,   613,   615,   627, -1000,   630,
-     631, -1000,   632,   633,   634, -1000, -1000,   635, -1000, -1000,
-   -1000, -1000,   636,   745, -1000, -1000,   637, -1000,   643, -1000,
-   -1000,   203,   623, -1000,   791, -1000, -1000,    34,   165, -1000,
-     168,    75,   338,   338,   798, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000,   801,   802,   804, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000,   820, -1000, -1000, -1000,  -101,    34,
-     211,    89,   822,   852,   853,    52,   146,    54,   -55,    -9,
-     459, -1000, -1000,   854,  -168, -1000, -1000,   855,   856, -1000,
-   -1000, -1000, -1000, -1000,   732, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   798,
-   -1000,   199,   200,   201, -1000, -1000, -1000, -1000,   861,   862,
-     863,   864,   865,   866,   869,   872,   877,   878, -1000,   880,
-     881, -1000, -1000, -1000, -1000, -1000,   202, -1000, -1000, -1000,
+     854, -1000,   245,   261,   271, -1000, -1000, -1000, -1000,   884,
+     886,   887,   888,   893,   894,   895,   896,   897,   899, -1000,
+     900,   901, -1000, -1000, -1000, -1000, -1000,   292, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-     245, -1000,   883,   884, -1000, -1000,   885,   887, -1000, -1000,
-     888,   890, -1000, -1000,   889,   893, -1000, -1000,   891,   895,
-   -1000, -1000, -1000,    45, -1000, -1000, -1000,   894, -1000, -1000,
-   -1000,   288, -1000, -1000, -1000, -1000, -1000,   257, -1000, -1000,
-   -1000, -1000,   326, -1000, -1000,   910,   896, -1000, -1000,   911,
-     915, -1000,   882,   916,   917,   918,   919,   920,   268, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   921,   922,
-     923, -1000, -1000, -1000, -1000,   285, -1000, -1000, -1000, -1000,
-   -1000, -1000,   924,   925,   926, -1000,   302, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   303, -1000,
-   -1000, -1000,   927, -1000,   928, -1000, -1000, -1000,   323, -1000,
-   -1000, -1000, -1000, -1000,   325, -1000,   353, -1000,   929, -1000,
-     332, -1000, -1000,   704, -1000,   930,   931, -1000, -1000,   932,
-     934, -1000, -1000,   933,   936, -1000, -1000, -1000,   935,   939,
-     941,   942,   719,   722,   735,   734,   743,   744,   750,   757,
-     770,   772,   953,   751,   773,   958,   970,   980,   986,   338,
-   -1000, -1000,   338, -1000,   798,   668, -1000,   801,    83, -1000,
-     802,   312, -1000,   804,   763, -1000,   820,  -101, -1000, -1000,
-     211, -1000,   990,   998,    89, -1000,   586,   822, -1000,   519,
-   -1000,   852,   -96, -1000,   853,   795,   806,   808,   810,   811,
-     821,    52, -1000,   999,  1038,   827,   847,   860,   146, -1000,
-     879,   886,   892,    54, -1000,  1092,  1095,   -55, -1000,   897,
-    1097,   898,  1102,    -9, -1000, -1000,   216,   854, -1000,   899,
-    -168, -1000, -1000,  1101,  1106,    60, -1000,   855,   212, -1000,
-     856, -1000, -1000,   236,   901,   903,   904, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000,   235, -1000, -1000,
-     905,   906,   907,   909, -1000,   335, -1000,   336, -1000,  1103,
-   -1000,  1104, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000,   293, -1000,   902,   903, -1000, -1000,   904,   906, -1000,
+   -1000,   905,   909, -1000, -1000,   907,   911, -1000, -1000,   910,
+     912, -1000, -1000, -1000,    39, -1000, -1000, -1000,   913, -1000,
+   -1000, -1000,    94, -1000, -1000, -1000, -1000, -1000,   294, -1000,
+   -1000, -1000, -1000,   112, -1000, -1000,   914,   915, -1000, -1000,
+     916,   918, -1000,   919,   920,   921,   922,   923,   924,   300,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   925,
+     926,   927, -1000, -1000, -1000, -1000,   325, -1000, -1000, -1000,
+   -1000, -1000, -1000,   928,   929,   930, -1000,   327, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   334,
+   -1000, -1000, -1000,   931, -1000,   932, -1000, -1000, -1000,   356,
+   -1000, -1000, -1000, -1000, -1000,   357, -1000,   210, -1000,   933,
+   -1000,   400, -1000, -1000,   702, -1000,   934,   935, -1000, -1000,
+     936,   938, -1000, -1000,   939,   937, -1000, -1000, -1000,   940,
+     942,   948,   949,   723,   738,   742,   749,   744,   745,   773,
+     774,   775,   779,   966,   756,   807,   971,   981,   983,   999,
+     339, -1000, -1000,   339, -1000,   854,   669, -1000,   858,    77,
+   -1000,   859,   313, -1000,   860,   764, -1000,   861,  -101, -1000,
+   -1000,   -53, -1000,  1000,  1008,   192, -1000,    -1,   862, -1000,
+     282, -1000,   863,   -94, -1000,   864,   812,   827,   828,   848,
+     881,   882,   202, -1000,  1021,  1034,   891,   892,   898,    42,
+   -1000,   885,   917,   941,    95, -1000,  1073,  1096,   -44, -1000,
+     908,  1098,   943,  1105,   -23, -1000, -1000,   218,   875, -1000,
+     944,  -152, -1000, -1000,  1104,  1108,   322, -1000,   876,   214,
+   -1000,   878, -1000, -1000,   454,   945,   946,   950, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   430, -1000,
+   -1000,   951,   953,   954,   956, -1000,   402, -1000,   424, -1000,
+    1107, -1000,  1109, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000,   339, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000,   912,   913, -1000, -1000, -1000,  1109, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,  1117,  1107,
-   -1000, -1000, -1000, -1000, -1000, -1000,  1121, -1000,   355, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000,   265,   937, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000,   938,   940, -1000,
-   -1000,   943, -1000,    34, -1000, -1000,  1126, -1000, -1000, -1000,
-   -1000, -1000,   357, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000,   944,   397, -1000,   398, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000,   431, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000,   957,   958, -1000, -1000, -1000,  1112, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,  1110,
+    1116, -1000, -1000, -1000, -1000, -1000, -1000,  1113, -1000,   433,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   380,   959,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   960,   961,
+   -1000, -1000,   962, -1000,    34, -1000, -1000,  1118, -1000, -1000,
+   -1000, -1000, -1000,   434, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000,   963,   440, -1000,   441, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000,   763, -1000, -1000, -1000,  1127,
-    1128,   945, -1000,   586, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000,  1129,   946,  1130,   216, -1000,
-   -1000, -1000, -1000, -1000,   949,   950, -1000, -1000,  1131, -1000,
-     952, -1000, -1000, -1000,  1132, -1000, -1000,   408, -1000,   -70,
-    1132, -1000, -1000,  1133,  1134,  1136, -1000,   400, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000,  1137,   954,   955,   957,  1138,
-     -70, -1000,   959, -1000, -1000, -1000,   960, -1000, -1000, -1000
+   -1000, -1000, -1000, -1000, -1000, -1000,   764, -1000, -1000, -1000,
+    1119,  1121,   964, -1000,    -1, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000,  1124,   947,  1125,   218,
+   -1000, -1000, -1000, -1000, -1000,   965,   968, -1000, -1000,  1115,
+   -1000,   969, -1000, -1000, -1000,  1106, -1000, -1000,   259, -1000,
+      13,  1106, -1000, -1000,  1126,  1127,  1128, -1000,   447, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000,  1130,   967,   970,   972,
+    1131,    13, -1000,   974, -1000, -1000, -1000,   975, -1000, -1000,
+   -1000
   };
 
   const short
@@ -5247,17 +5248,17 @@ namespace isc { namespace dhcp {
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        1,    46,    38,    34,    33,    30,    31,    32,    37,     3,
       35,    36,    61,     5,    67,     7,   198,     9,   387,    11,
-     592,    13,   621,    15,   653,    17,   510,    19,   519,    21,
-     558,    23,   349,    25,   778,    27,   810,    29,    48,    41,
-       0,     0,     0,     0,     0,     0,   655,     0,   521,   560,
+     592,    13,   621,    15,   654,    17,   510,    19,   519,    21,
+     558,    23,   349,    25,   779,    27,   811,    29,    48,    41,
+       0,     0,     0,     0,     0,     0,   656,     0,   521,   560,
        0,     0,     0,    50,     0,    49,     0,     0,    42,    63,
-       0,    65,   140,   808,   196,   217,   219,   221,     0,     0,
+       0,    65,   140,   809,   196,   217,   219,   221,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,   186,     0,     0,     0,     0,     0,   159,   166,
      168,     0,     0,     0,     0,   378,   508,   549,     0,   189,
      191,   172,   453,   608,   610,     0,     0,     0,   305,   324,
-     314,   294,   688,   644,   340,   361,   720,     0,   326,   745,
-     759,   776,   179,   181,     0,     0,     0,   820,   862,     0,
+     314,   294,   689,   645,   340,   361,   721,     0,   326,   746,
+     760,   777,   179,   181,     0,     0,     0,   821,   863,     0,
      139,     0,    69,    72,    73,    74,    75,    76,    77,    78,
       79,    80,   110,   111,   112,   113,   114,    81,   118,   119,
      120,   121,   122,   123,   124,   125,   126,   127,   116,   117,
@@ -5267,164 +5268,165 @@ namespace isc { namespace dhcp {
      104,    91,    96,    97,    98,    99,   100,   105,   115,   135,
      211,     0,     0,     0,     0,   210,     0,   200,   203,   204,
      205,   206,   207,   208,   209,   583,   612,   438,   440,   442,
-       0,     0,   446,   444,   685,   437,   392,   393,   394,   395,
+       0,     0,   446,   444,   686,   437,   392,   393,   394,   395,
      396,   397,   398,   399,   417,   418,   419,   420,   421,   424,
      425,   426,   427,   428,   429,   430,   431,   432,   433,   422,
      423,   434,   435,   436,     0,   389,   403,   404,   405,   408,
      409,   411,   412,   413,   406,   407,   400,   401,   415,   416,
      402,   410,   414,   605,     0,   604,   600,   601,   599,     0,
-     594,   597,   598,   602,   603,   637,     0,   640,     0,     0,
-     636,   630,   631,   629,   634,   635,     0,   623,   626,   627,
-     632,   633,   628,   683,   671,   673,   675,   677,   679,   681,
-     670,   667,   668,   669,     0,   656,   657,   662,   663,   660,
-     664,   665,   666,   661,     0,   539,   268,     0,   543,   541,
-     546,     0,   535,   536,     0,   522,   523,   526,   538,   527,
-     528,   529,   545,   530,   531,   532,   533,   534,   576,     0,
-       0,     0,   574,   575,   578,   579,     0,   561,   562,   565,
-     566,   567,   568,   569,   570,   571,   572,   573,   357,   359,
-     354,     0,   351,   355,   356,     0,   795,     0,   798,     0,
-       0,   802,   806,   793,   791,   792,     0,   780,   783,   784,
-     785,   786,   787,   788,   789,   790,   817,     0,     0,   812,
-     815,   816,    47,    52,     0,    39,    45,     0,    66,    62,
+     594,   597,   598,   602,   603,   638,     0,   641,     0,     0,
+     637,   631,   632,   630,   629,   635,   636,     0,   623,   626,
+     627,   633,   634,   628,   684,   672,   674,   676,   678,   680,
+     682,   671,   668,   669,   670,     0,   657,   658,   663,   664,
+     661,   665,   666,   667,   662,     0,   539,   268,     0,   543,
+     541,   546,     0,   535,   536,     0,   522,   523,   526,   538,
+     527,   528,   529,   545,   530,   531,   532,   533,   534,   576,
+       0,     0,     0,   574,   575,   578,   579,     0,   561,   562,
+     565,   566,   567,   568,   569,   570,   571,   572,   573,   357,
+     359,   354,     0,   351,   355,   356,     0,   796,     0,   799,
+       0,     0,   803,   807,   794,   792,   793,     0,   781,   784,
+     785,   786,   787,   788,   789,   790,   791,   818,     0,     0,
+     813,   816,   817,    47,    52,     0,    39,    45,     0,    66,
+      62,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,    60,    71,
+      68,     0,     0,     0,     0,     0,   202,   199,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,   391,   388,
+       0,     0,   596,   593,     0,     0,     0,     0,     0,   625,
+     622,     0,     0,     0,     0,     0,     0,     0,   655,   660,
+     511,     0,     0,     0,     0,     0,     0,     0,   520,   525,
+       0,     0,     0,     0,   559,   564,     0,     0,   353,   350,
+       0,     0,     0,     0,     0,     0,     0,     0,   783,   780,
+       0,     0,   815,   812,    51,    43,     0,     0,     0,     0,
+       0,     0,     0,     0,   142,   143,   144,   145,   146,   147,
+     148,   149,   150,   151,   152,   153,   154,   155,     0,   184,
+     185,   156,   157,   158,     0,     0,     0,   170,   171,   178,
+     183,     0,     0,     0,   188,     0,     0,     0,     0,     0,
+       0,   448,   449,   450,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,   745,     0,     0,     0,     0,     0,     0,
+     193,   194,   195,     0,     0,    70,     0,   213,   214,   215,
+     216,   201,     0,     0,     0,     0,     0,   451,   452,     0,
+       0,     0,   390,     0,   607,   595,     0,   640,     0,   643,
+     644,   624,     0,     0,     0,     0,     0,     0,     0,   659,
+       0,     0,   537,     0,     0,     0,   548,   524,     0,   580,
+     581,   582,   563,     0,     0,   352,   795,     0,   798,     0,
+     801,   802,     0,     0,   782,     0,   820,   814,     0,     0,
+     141,     0,     0,     0,     0,   223,   187,   161,   162,   163,
+     164,   165,   160,   167,   169,   380,   512,   551,   190,   192,
+     174,   175,   176,   177,   173,   455,    40,   609,   611,     0,
+      48,     0,     0,     0,   647,   342,     0,     0,     0,     0,
+       0,     0,   180,   182,     0,     0,    53,   212,   585,   614,
+     439,   441,   443,   447,   445,     0,   606,   639,   642,   685,
+     673,   675,   677,   679,   681,   683,   540,   269,   544,   542,
+     547,   577,   358,   360,   797,   800,   805,   806,   804,   808,
+     223,    44,     0,     0,     0,   256,   261,   263,   265,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,   278,
+       0,     0,   286,   288,   290,   292,   255,     0,   230,   233,
+     234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
+     244,   245,   247,   248,   249,   250,   246,   251,   252,   253,
+     254,     0,   228,     0,   224,   225,   385,     0,   381,   382,
+     517,     0,   513,   514,   556,     0,   552,   553,   460,     0,
+     456,   457,   312,   313,     0,   307,   310,   311,     0,   322,
+     323,   319,     0,   316,   320,   321,   301,   303,     0,   296,
+     299,   300,   694,     0,   691,   652,     0,   648,   649,   347,
+       0,   343,   344,     0,     0,     0,     0,     0,     0,     0,
+     363,   366,   367,   368,   369,   370,   371,   735,   741,     0,
+       0,     0,   734,   731,   732,   733,     0,   723,   726,   729,
+     727,   728,   730,     0,     0,     0,   336,     0,   328,   331,
+     332,   333,   334,   335,   756,   758,   755,   753,   754,     0,
+     748,   751,   752,     0,   772,     0,   775,   768,   769,     0,
+     762,   765,   766,   767,   770,     0,   826,     0,   823,     0,
+     869,     0,   865,   868,    55,   590,     0,   586,   587,   619,
+       0,   615,   616,   688,     0,     0,    64,   810,   197,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    60,    71,    68,
-       0,     0,     0,     0,     0,   202,   199,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   391,   388,     0,
-       0,   596,   593,     0,     0,     0,     0,     0,   625,   622,
-       0,     0,     0,     0,     0,     0,     0,   654,   659,   511,
-       0,     0,     0,     0,     0,     0,     0,   520,   525,     0,
-       0,     0,     0,   559,   564,     0,     0,   353,   350,     0,
-       0,     0,     0,     0,     0,     0,     0,   782,   779,     0,
-       0,   814,   811,    51,    43,     0,     0,     0,     0,     0,
-       0,     0,     0,   142,   143,   144,   145,   146,   147,   148,
-     149,   150,   151,   152,   153,   154,   155,     0,   184,   185,
-     156,   157,   158,     0,     0,     0,   170,   171,   178,   183,
-       0,     0,     0,   188,     0,     0,     0,     0,     0,     0,
-     448,   449,   450,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,   744,     0,     0,     0,     0,     0,     0,   193,
-     194,   195,     0,     0,    70,     0,   213,   214,   215,   216,
-     201,     0,     0,     0,     0,     0,   451,   452,     0,     0,
-       0,   390,     0,   607,   595,     0,   639,     0,   642,   643,
-     624,     0,     0,     0,     0,     0,     0,     0,   658,     0,
-       0,   537,     0,     0,     0,   548,   524,     0,   580,   581,
-     582,   563,     0,     0,   352,   794,     0,   797,     0,   800,
-     801,     0,     0,   781,     0,   819,   813,     0,     0,   141,
-       0,     0,     0,     0,   223,   187,   161,   162,   163,   164,
-     165,   160,   167,   169,   380,   512,   551,   190,   192,   174,
-     175,   176,   177,   173,   455,    40,   609,   611,     0,    48,
-       0,     0,     0,   646,   342,     0,     0,     0,     0,     0,
-       0,   180,   182,     0,     0,    53,   212,   585,   614,   439,
-     441,   443,   447,   445,     0,   606,   638,   641,   684,   672,
-     674,   676,   678,   680,   682,   540,   269,   544,   542,   547,
-     577,   358,   360,   796,   799,   804,   805,   803,   807,   223,
-      44,     0,     0,     0,   256,   261,   263,   265,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,   278,     0,
-       0,   286,   288,   290,   292,   255,     0,   230,   233,   234,
-     235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
-     245,   247,   248,   249,   250,   246,   251,   252,   253,   254,
-       0,   228,     0,   224,   225,   385,     0,   381,   382,   517,
-       0,   513,   514,   556,     0,   552,   553,   460,     0,   456,
-     457,   312,   313,     0,   307,   310,   311,     0,   322,   323,
-     319,     0,   316,   320,   321,   301,   303,     0,   296,   299,
-     300,   693,     0,   690,   651,     0,   647,   648,   347,     0,
-     343,   344,     0,     0,     0,     0,     0,     0,     0,   363,
-     366,   367,   368,   369,   370,   371,   734,   740,     0,     0,
-       0,   733,   730,   731,   732,     0,   722,   725,   728,   726,
-     727,   729,     0,     0,     0,   336,     0,   328,   331,   332,
-     333,   334,   335,   755,   757,   754,   752,   753,     0,   747,
-     750,   751,     0,   771,     0,   774,   767,   768,     0,   761,
-     764,   765,   766,   769,     0,   825,     0,   822,     0,   868,
-       0,   864,   867,    55,   590,     0,   586,   587,   619,     0,
-     615,   616,   687,     0,     0,    64,   809,   197,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,     0,     0,   232,
-     218,   220,     0,   222,   227,     0,   379,   384,   521,   509,
-     516,   560,   550,   555,     0,   454,   459,   309,   306,   325,
-     318,   315,     0,     0,   298,   295,   695,   692,   689,   655,
-     645,   650,     0,   341,   346,     0,     0,     0,     0,     0,
-       0,   365,   362,     0,     0,     0,     0,     0,   724,   721,
-       0,     0,     0,   330,   327,     0,     0,   749,   746,     0,
-       0,     0,     0,   763,   760,   777,     0,   824,   821,     0,
-     866,   863,    57,     0,    56,     0,   584,   589,     0,   613,
-     618,   686,   818,     0,     0,     0,     0,   267,   270,   271,
-     272,   273,   274,   275,   276,   285,   277,     0,   283,   284,
-       0,     0,     0,     0,   231,     0,   226,     0,   383,     0,
-     515,     0,   554,   507,   478,   479,   480,   482,   483,   484,
-     469,   470,   487,   488,   489,   490,   491,   494,   495,   496,
-     497,   498,   499,   500,   501,   502,   503,   492,   493,   504,
-     505,   506,   465,   466,   467,   468,   476,   477,   473,   474,
-     475,   481,     0,   462,   471,   485,   486,   472,   458,   308,
-     317,     0,     0,   297,   715,   717,     0,   713,   707,   708,
-     709,   710,   711,   712,   714,   704,   705,   706,     0,   696,
-     697,   700,   701,   702,   703,   691,     0,   649,     0,   345,
-     372,   373,   374,   375,   376,   377,   364,     0,     0,   739,
-     742,   743,   723,   337,   338,   339,   329,     0,     0,   748,
-     770,     0,   773,     0,   762,   840,     0,   838,   836,   830,
-     834,   835,     0,   827,   832,   833,   831,   823,   869,   865,
-      54,    59,     0,   588,     0,   617,   258,   259,   260,   257,
-     262,   264,   266,   280,   281,   282,   279,   287,   289,   291,
-     293,   229,   386,   518,   557,   464,   461,   302,   304,     0,
-       0,     0,   694,   699,   652,   348,   736,   737,   738,   735,
-     741,   756,   758,   772,   775,     0,     0,     0,   829,   826,
-      58,   591,   620,   463,     0,     0,   719,   698,     0,   837,
-       0,   828,   716,   718,     0,   839,   845,     0,   842,     0,
-     844,   841,   855,     0,     0,     0,   860,     0,   847,   850,
-     851,   852,   853,   854,   843,     0,     0,     0,     0,     0,
-     849,   846,     0,   857,   858,   859,     0,   848,   856,   861
+     232,   218,   220,     0,   222,   227,     0,   379,   384,   521,
+     509,   516,   560,   550,   555,     0,   454,   459,   309,   306,
+     325,   318,   315,     0,     0,   298,   295,   696,   693,   690,
+     656,   646,   651,     0,   341,   346,     0,     0,     0,     0,
+       0,     0,   365,   362,     0,     0,     0,     0,     0,   725,
+     722,     0,     0,     0,   330,   327,     0,     0,   750,   747,
+       0,     0,     0,     0,   764,   761,   778,     0,   825,   822,
+       0,   867,   864,    57,     0,    56,     0,   584,   589,     0,
+     613,   618,   687,   819,     0,     0,     0,     0,   267,   270,
+     271,   272,   273,   274,   275,   276,   285,   277,     0,   283,
+     284,     0,     0,     0,     0,   231,     0,   226,     0,   383,
+       0,   515,     0,   554,   507,   478,   479,   480,   482,   483,
+     484,   469,   470,   487,   488,   489,   490,   491,   494,   495,
+     496,   497,   498,   499,   500,   501,   502,   503,   492,   493,
+     504,   505,   506,   465,   466,   467,   468,   476,   477,   473,
+     474,   475,   481,     0,   462,   471,   485,   486,   472,   458,
+     308,   317,     0,     0,   297,   716,   718,     0,   714,   708,
+     709,   710,   711,   712,   713,   715,   705,   706,   707,     0,
+     697,   698,   701,   702,   703,   704,   692,     0,   650,     0,
+     345,   372,   373,   374,   375,   376,   377,   364,     0,     0,
+     740,   743,   744,   724,   337,   338,   339,   329,     0,     0,
+     749,   771,     0,   774,     0,   763,   841,     0,   839,   837,
+     831,   835,   836,     0,   828,   833,   834,   832,   824,   870,
+     866,    54,    59,     0,   588,     0,   617,   258,   259,   260,
+     257,   262,   264,   266,   280,   281,   282,   279,   287,   289,
+     291,   293,   229,   386,   518,   557,   464,   461,   302,   304,
+       0,     0,     0,   695,   700,   653,   348,   737,   738,   739,
+     736,   742,   757,   759,   773,   776,     0,     0,     0,   830,
+     827,    58,   591,   620,   463,     0,     0,   720,   699,     0,
+     838,     0,   829,   717,   719,     0,   840,   846,     0,   843,
+       0,   845,   842,   856,     0,     0,     0,   861,     0,   848,
+     851,   852,   853,   854,   855,   844,     0,     0,     0,     0,
+       0,   850,   847,     0,   858,   859,   860,     0,   849,   857,
+     862
   };
 
   const short
   Dhcp6Parser::yypgoto_[] =
   {
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000,   -10, -1000,  -592, -1000,
-     440, -1000, -1000, -1000, -1000,   402, -1000,  -550, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000,   -10, -1000,  -593, -1000,
+     203, -1000, -1000, -1000, -1000,   362, -1000,  -510, -1000, -1000,
    -1000,   -71, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   417,
-     638, -1000, -1000,   -61,   -43,   -39,    10,    14,    15,   -24,
+     629, -1000, -1000,   -61,   -43,   -39,    10,    14,    15,   -24,
      -17,   -11,    17,    25,    29,    30, -1000,    32,    33,    37,
       43, -1000, -1000,    44, -1000,    50, -1000,    51,    56,    62,
    -1000, -1000,    63,    64, -1000,    66, -1000,    68, -1000, -1000,
    -1000, -1000, -1000,    69, -1000,    74, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000,   423,   639, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   346, -1000,
-     133, -1000,  -703,   139, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000,   -41, -1000,  -745, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000,   415,   623, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   340, -1000,
+     126, -1000,  -701,   132, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000,   -41, -1000,  -746, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000,   115, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   129,
-    -727, -1000, -1000, -1000, -1000,   120, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000,    94, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000,   116, -1000, -1000, -1000,   119,   601, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000,   125, -1000, -1000, -1000, -1000, -1000,
-   -1000,  -999, -1000, -1000, -1000,   153, -1000, -1000, -1000,   162,
-     651, -1000, -1000,  -998, -1000,  -997, -1000,    38, -1000,    81,
-   -1000,    76,    79,    80, -1000,  -995, -1000, -1000, -1000, -1000,
-     154, -1000, -1000,   -86,  1105, -1000, -1000, -1000, -1000, -1000,
-     161, -1000, -1000, -1000,   166, -1000,   625, -1000,   -66, -1000,
-   -1000, -1000, -1000, -1000,   -65, -1000, -1000, -1000, -1000, -1000,
-     -16, -1000, -1000, -1000,   163, -1000, -1000, -1000,   164, -1000,
-     624, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000,   100, -1000, -1000, -1000,   104,   660, -1000,
-   -1000, -1000,   -57, -1000,    -3, -1000, -1000, -1000, -1000, -1000,
-     102, -1000, -1000, -1000,   105,   652, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000,   -45, -1000, -1000, -1000,   155, -1000, -1000,
-   -1000,   156, -1000,   649,   427, -1000, -1000, -1000, -1000, -1000,
+   -1000,   108, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   116,
+    -726, -1000, -1000, -1000, -1000,   114, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000,    83, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000,   101, -1000, -1000, -1000,   105,   581, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000,    98, -1000, -1000, -1000, -1000, -1000,
+   -1000,  -999, -1000, -1000, -1000,   134, -1000, -1000, -1000,   135,
+     625, -1000, -1000,  -998, -1000,  -996, -1000,    38, -1000,    81,
+   -1000,    76,    79,    80, -1000,  -994, -1000, -1000, -1000, -1000,
+     127, -1000, -1000,  -111,  1079, -1000, -1000, -1000, -1000, -1000,
+     143, -1000, -1000, -1000,   160, -1000,   599, -1000,   -65, -1000,
+   -1000, -1000, -1000, -1000,   -59, -1000, -1000, -1000, -1000, -1000,
+     -16, -1000, -1000, -1000,   157, -1000, -1000, -1000,   165, -1000,
+     626, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000,   104, -1000, -1000, -1000,   107,   665, -1000,
+   -1000,   -62,   -57, -1000,    -3, -1000, -1000, -1000, -1000, -1000,
+     103, -1000, -1000, -1000,   109,   657, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000,   -45, -1000, -1000, -1000,   158, -1000, -1000,
+   -1000,   159, -1000,   658,   426, -1000, -1000, -1000, -1000, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,  -993, -1000,
-   -1000, -1000, -1000, -1000,   169, -1000, -1000, -1000,   -75, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   145, -1000,
+   -1000, -1000, -1000, -1000,   164, -1000, -1000, -1000,   -70, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   149, -1000,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000,   132, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   134,
+   -1000,   138, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   136,
    -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-     477,   628, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
-   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   480,
-     629, -1000, -1000, -1000, -1000, -1000, -1000,   138, -1000, -1000,
-     -79, -1000, -1000, -1000, -1000, -1000, -1000,   -99, -1000, -1000,
-    -116, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+     459,   641, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
+   -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,   503,
+     630, -1000, -1000, -1000, -1000, -1000, -1000,   144, -1000, -1000,
+     -78, -1000, -1000, -1000, -1000, -1000, -1000,   -96, -1000, -1000,
+    -115, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000, -1000,
    -1000,   140, -1000
   };
 
@@ -5433,329 +5435,329 @@ namespace isc { namespace dhcp {
   {
        0,    15,    16,    17,    18,    19,    20,    21,    22,    23,
       24,    25,    26,    27,    28,    29,    83,    39,    40,    69,
-     746,    87,    88,    41,    68,    84,    85,   766,   973,  1083,
-    1084,   825,    43,    70,    90,   437,    91,    45,    71,   161,
-     162,   163,   440,   164,   165,   166,   167,   168,   169,   170,
+     747,    87,    88,    41,    68,    84,    85,   767,   974,  1084,
+    1085,   826,    43,    70,    90,   438,    91,    45,    71,   161,
+     162,   163,   441,   164,   165,   166,   167,   168,   169,   170,
      171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
-     181,   466,   731,   182,   467,   183,   468,   184,   185,   186,
-     479,   743,   187,   188,   500,   189,   501,   190,   191,   192,
-     193,   460,   194,   195,   477,   196,   478,   197,   198,   199,
-     200,   442,    47,    72,   236,   237,   238,   510,   239,   240,
-     241,   242,   201,   443,   202,   444,   203,   445,   852,   853,
-     854,  1012,   826,   827,   828,   988,  1249,   829,   989,   830,
-     990,   831,   991,   832,   833,   551,   834,   835,   836,   837,
-     838,   839,   840,   841,   842,  1002,  1256,   843,   844,   845,
-     846,  1005,   847,  1006,   848,  1007,   849,  1008,   204,   489,
-     887,   888,   889,  1032,   890,  1033,   205,   486,   873,   874,
-     875,   876,   206,   488,   881,   882,   883,   884,   207,   487,
-     208,   496,   936,   937,   938,   939,   940,   209,   492,   899,
-     900,   901,  1042,    63,    80,   401,   402,   403,   565,   404,
-     566,   210,   493,   908,   909,   910,   911,   912,   913,   914,
-     915,   211,   473,   856,   857,   858,  1015,    49,    73,   284,
-     285,   286,   519,   287,   520,   288,   521,   289,   525,   290,
-     524,   212,   213,   214,   294,   295,   215,   480,   868,   869,
-     870,  1024,  1162,  1163,   216,   474,    57,    77,   860,   861,
-     862,  1018,    59,    78,   364,   365,   366,   367,   368,   369,
-     370,   550,   371,   554,   372,   553,   373,   374,   555,   375,
-     217,   475,   864,   865,   866,  1021,    61,    79,   386,   387,
-     388,   389,   390,   559,   391,   392,   393,   394,   395,   297,
-     517,   975,   976,   977,  1085,    51,    74,   309,   310,   311,
-     529,   312,   218,   481,   219,   482,   300,   518,   979,   980,
-     981,  1088,    53,    75,   326,   327,   328,   533,   329,   330,
-     535,   331,   332,   220,   491,   895,   896,   897,  1039,    55,
-      76,   344,   345,   346,   347,   541,   348,   542,   349,   543,
-     350,   544,   351,   545,   352,   546,   353,   540,   302,   526,
-     983,   221,   490,   892,   893,  1036,  1188,  1189,  1190,  1191,
-    1192,  1269,  1193,  1270,  1194,   222,   494,   925,   926,   927,
-    1053,  1279,   928,   929,  1054,   930,   931,   223,   224,   497,
-     948,   949,   950,  1065,   951,  1066,   225,   498,   958,   959,
-     960,   961,  1070,   962,   963,  1072,   226,   499,    65,    81,
-     416,   417,   418,   419,   570,   420,   421,   572,   422,   423,
-     424,   575,   797,   425,   576,   227,   441,    67,    82,   428,
-     429,   430,   579,   431,   228,   505,   966,   967,  1076,  1232,
-    1233,  1234,  1235,  1287,  1236,  1285,  1307,  1308,  1309,  1317,
-    1318,  1319,  1325,  1320,  1321,  1322,  1323,  1329,   229,   506,
-     970,   971,   972
+     181,   467,   732,   182,   468,   183,   469,   184,   185,   186,
+     480,   744,   187,   188,   501,   189,   502,   190,   191,   192,
+     193,   461,   194,   195,   478,   196,   479,   197,   198,   199,
+     200,   443,    47,    72,   236,   237,   238,   511,   239,   240,
+     241,   242,   201,   444,   202,   445,   203,   446,   853,   854,
+     855,  1013,   827,   828,   829,   989,  1250,   830,   990,   831,
+     991,   832,   992,   833,   834,   552,   835,   836,   837,   838,
+     839,   840,   841,   842,   843,  1003,  1257,   844,   845,   846,
+     847,  1006,   848,  1007,   849,  1008,   850,  1009,   204,   490,
+     888,   889,   890,  1033,   891,  1034,   205,   487,   874,   875,
+     876,   877,   206,   489,   882,   883,   884,   885,   207,   488,
+     208,   497,   937,   938,   939,   940,   941,   209,   493,   900,
+     901,   902,  1043,    63,    80,   402,   403,   404,   566,   405,
+     567,   210,   494,   909,   910,   911,   912,   913,   914,   915,
+     916,   211,   474,   857,   858,   859,  1016,    49,    73,   284,
+     285,   286,   520,   287,   521,   288,   522,   289,   526,   290,
+     525,   212,   213,   214,   294,   295,   215,   481,   869,   870,
+     871,  1025,  1163,  1164,   216,   475,    57,    77,   861,   862,
+     863,  1019,    59,    78,   365,   366,   367,   368,   369,   370,
+     371,   551,   372,   555,   373,   554,   374,   375,   556,   376,
+     217,   476,   865,   866,   867,  1022,    61,    79,   387,   388,
+     389,   390,   391,   560,   392,   393,   394,   395,   396,   297,
+     518,   976,   977,   978,  1086,    51,    74,   309,   310,   311,
+     530,   312,   218,   482,   219,   483,   300,   519,   980,   981,
+     982,  1089,    53,    75,   327,   328,   329,   534,   330,   331,
+     536,   332,   333,   220,   492,   896,   897,   898,  1040,    55,
+      76,   345,   346,   347,   348,   542,   349,   543,   350,   544,
+     351,   545,   352,   546,   353,   547,   354,   541,   302,   527,
+     984,   221,   491,   893,   894,  1037,  1189,  1190,  1191,  1192,
+    1193,  1270,  1194,  1271,  1195,   222,   495,   926,   927,   928,
+    1054,  1280,   929,   930,  1055,   931,   932,   223,   224,   498,
+     949,   950,   951,  1066,   952,  1067,   225,   499,   959,   960,
+     961,   962,  1071,   963,   964,  1073,   226,   500,    65,    81,
+     417,   418,   419,   420,   571,   421,   422,   573,   423,   424,
+     425,   576,   798,   426,   577,   227,   442,    67,    82,   429,
+     430,   431,   580,   432,   228,   506,   967,   968,  1077,  1233,
+    1234,  1235,  1236,  1288,  1237,  1286,  1308,  1309,  1310,  1318,
+    1319,  1320,  1326,  1321,  1322,  1323,  1324,  1330,   229,   507,
+     971,   972,   973
   };
 
   const short
   Dhcp6Parser::yytable_[] =
   {
-     160,   235,   255,   305,   320,   340,    38,   362,   382,   400,
-     413,   922,   256,   384,   385,   243,   298,   313,   324,   342,
-     850,   376,   396,   880,   414,  1153,  1154,  1155,   301,  1161,
-     257,  1167,   968,   871,   258,    30,   745,   363,   383,    31,
-      86,    32,   126,    33,   398,   399,    42,   159,  1027,   262,
-     438,  1028,    89,   133,   134,   439,   263,   296,   308,   323,
-     341,   432,   264,   434,   726,   727,   728,   729,    44,   244,
-     299,   314,   325,   343,   508,   377,   397,    46,   415,   509,
-     515,   527,   585,   259,   593,   516,   528,   260,   261,    48,
-     265,   230,   231,   232,   233,   234,   398,   399,   266,   133,
-     134,   730,   267,   268,    50,   269,   270,   355,   943,   944,
-     271,   745,   306,   321,   872,   531,   272,   273,   772,   159,
-     532,    52,  1312,   274,   275,  1313,  1314,  1315,  1316,   276,
-      54,   778,   779,   780,    56,   277,   278,   279,   538,   280,
-     127,   281,   282,   539,    58,   567,   577,   283,    60,   291,
-     568,   578,   292,   293,    62,   307,   322,   952,   953,   954,
-     159,   303,   133,   134,   356,    64,   357,   358,   133,   134,
-     916,   359,   360,   361,   581,   433,    92,    93,   809,   582,
-      94,   426,   427,   133,   134,   252,    95,    96,    97,   253,
-     304,   133,   134,    66,   436,   902,   903,   904,   905,   906,
-     907,   435,   508,   581,   515,  1009,   955,   985,   986,   987,
-    1010,   885,   886,   932,   933,   934,    98,    99,   100,   101,
-     102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
-     112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
-     122,   123,   124,   125,   126,   127,   446,   447,  1009,    34,
-      35,    36,    37,  1011,   133,   134,   128,   129,   130,   131,
-    1034,  1246,  1247,  1248,   132,  1035,  1153,  1154,  1155,   159,
-    1161,  1051,  1167,   133,   134,   159,  1052,  1253,  1254,  1255,
-     135,   136,   137,   138,   139,   140,   141,   448,  1058,   142,
-     159,  1030,   127,  1059,  1031,   449,   143,   356,   159,   917,
-     918,   919,   920,   880,   144,  1063,  1067,   145,   450,  1115,
-    1064,  1068,   451,   922,   146,   315,   316,   317,   318,   319,
-     133,   134,   147,   148,   133,   134,  1073,   149,   577,  1037,
-     150,  1074,  1038,  1075,   151,  1080,   547,   252,  1009,   527,
-    1081,   253,  1265,  1261,  1262,   871,   878,  1266,   879,   452,
-     152,   153,   154,   155,   156,   157,  1077,   548,   567,  1078,
-    1288,   159,   804,  1275,   158,  1289,   805,   806,   807,   808,
+     160,   235,   255,   305,   320,   341,    38,   363,   383,   401,
+     414,   923,   256,   324,   385,   243,   298,   313,   325,   343,
+     386,   377,   397,   851,   415,   881,  1154,  1155,   301,  1156,
+     257,  1162,  1168,   872,   258,    30,   746,   364,   384,    31,
+      86,    32,  1028,    33,   126,  1029,   399,   400,   969,   262,
+      98,    99,   100,   101,   102,   103,   263,   296,   308,   323,
+     342,   433,   264,   159,   133,   134,   917,   427,   428,   244,
+     299,   314,   326,   344,   810,   378,   398,    42,   416,   127,
+     357,   872,   879,   259,   880,   133,   134,   260,   261,    44,
+     265,   230,   231,   232,   233,   234,    46,  1031,   266,   439,
+    1032,   356,   267,   268,   440,   269,   270,   133,   134,    89,
+     271,   746,   306,   321,   873,  1038,   272,   273,  1039,   944,
+     945,   159,    48,   274,   275,  1175,  1176,  1177,    50,   276,
+      52,   727,   728,   729,   730,   277,   278,   279,    54,   280,
+      56,   281,   282,   953,   954,   955,    58,   283,    60,   291,
+     133,   134,   292,   293,    62,   307,   322,   509,   357,   773,
+     358,   359,   510,    64,   516,   360,   361,   362,   731,   517,
+      66,   159,   779,   780,   781,   528,   532,   434,    92,    93,
+     529,   533,    94,   133,   134,   133,   134,   435,    95,    96,
+      97,   437,   956,   436,   539,   918,   919,   920,   921,   540,
+     447,   568,   578,   133,   134,  1313,   569,   579,  1314,  1315,
+    1316,  1317,   582,  1078,   159,   448,  1079,   583,    98,    99,
+     100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
+     110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
+     120,   121,   122,   123,   124,   125,   126,   127,   509,    34,
+      35,    36,    37,   986,   933,   934,   935,   159,   128,   129,
+     130,   131,  1311,   548,   582,  1312,   132,  1154,  1155,   987,
+    1156,   449,  1162,  1168,   516,   133,   134,   399,   400,   988,
+     796,   797,   135,   136,   137,   138,   139,   140,   141,   450,
+     159,   142,   159,   451,   127,  1010,  1010,  1035,   143,   357,
+    1011,  1012,  1036,  1052,   549,   881,   144,   452,  1053,   145,
+     159,   453,  1116,   923,   886,   887,   146,   315,   316,   317,
+     318,   319,   133,   134,   147,   148,   133,   134,  1059,   149,
+    1064,   550,   150,  1060,   454,  1065,   151,  1068,   559,   252,
+     455,   456,  1069,   253,   304,   903,   904,   905,   906,   907,
+     908,   457,   152,   153,   154,   155,   156,   157,   458,  1074,
+     578,   558,   127,   805,  1075,  1076,   158,   806,   807,   808,
      809,   810,   811,   812,   813,   814,   815,   816,   817,   818,
-     159,   795,   796,   819,   820,   821,   822,   823,   824,   739,
-     740,   741,   742,   356,   378,   357,   358,   379,   380,   381,
-     531,   538,   549,  1330,   557,  1291,  1292,  1225,  1331,  1226,
-    1227,  1310,   563,   453,  1311,  1276,  1277,  1278,   454,   356,
-     133,   134,   455,   583,   584,   456,   457,   159,   458,   459,
-     461,   159,   462,   463,   464,   465,   469,   160,   470,   471,
-     472,   476,   483,   484,   235,   485,   495,   502,   503,   504,
-     507,   511,   512,   513,   514,   522,   255,   523,   243,   530,
-     305,   534,   536,   594,   537,   552,   256,   320,   556,   558,
-     298,   560,   561,   562,   313,   564,   595,   340,   569,   571,
-     573,   324,   301,   574,   257,   580,   586,   362,   258,   587,
-     588,   342,   589,   382,   590,   591,   592,   596,   384,   385,
-     597,   376,   598,   262,   602,   599,   413,   396,   600,   605,
-     263,   296,   244,   601,   603,   308,   264,   363,   604,   607,
-     414,   606,   323,   383,   299,   608,   609,   159,   314,   610,
-     613,   611,   341,   612,   614,   325,   615,   259,   616,   617,
-     619,   260,   261,   620,   265,   343,   618,   621,   622,   623,
-     624,   625,   266,   159,   626,   377,   267,   268,   627,   269,
-     270,   397,   628,   629,   271,   630,   631,   133,   134,   306,
-     272,   273,   633,   634,   415,   635,   321,   274,   275,   632,
-     636,   637,   638,   276,   639,   640,   641,   642,   643,   277,
-     278,   279,   644,   280,   645,   281,   282,   646,   647,   127,
-     648,   283,   649,   291,   650,   651,   292,   293,   652,   653,
-     655,   656,   307,   657,   661,   658,   662,   659,   663,   322,
-     664,   665,   666,   667,   668,   669,   670,   133,   134,   405,
-     406,   407,   408,   409,   410,   411,   412,    98,    99,   100,
-     101,   102,   103,   333,   672,   675,   677,   160,   681,   673,
-     235,   334,   335,   336,   337,   338,   339,   682,   683,   684,
-     685,   686,   687,   689,   243,   690,   127,   356,   676,   692,
-     678,   693,   679,   694,   159,   697,   702,   703,   691,   706,
-     708,   695,   711,   698,   712,   921,   935,   945,   699,   413,
-     714,   700,   717,   969,   133,   134,   705,   718,   719,   923,
-     941,   946,   956,   414,   720,   707,   721,   800,   724,   709,
-     710,   715,  1174,  1175,  1176,   722,   723,   725,   244,    98,
-      99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
-     109,   110,   732,   733,   159,   734,   115,   116,   117,   118,
-     119,   120,   121,   122,   123,   124,   735,   736,   127,   737,
-     738,   744,    32,   924,   942,   947,   957,   415,   748,   749,
-     129,   130,   131,   747,   750,   751,   752,   753,   245,   754,
-     246,   761,   755,   756,   757,   758,   133,   134,   247,   248,
-     249,   250,   251,   135,   136,   137,   759,   760,   762,   763,
-     764,   765,   767,   252,   768,   774,   799,   253,   769,   143,
-     770,   159,   771,   798,   773,   851,   254,   775,   855,   859,
-     776,   863,   777,   781,    98,    99,   100,   101,   102,   103,
-     104,   105,   106,   107,   108,   109,   110,   867,   782,   891,
-     783,   115,   116,   117,   118,   119,   120,   121,   122,   123,
-     124,   125,   784,   127,   356,   785,   786,   787,   788,   789,
-     790,   791,   793,   152,   153,   129,   130,   131,   794,   894,
-     898,   965,   974,   978,   334,   992,   993,   994,   995,   996,
-     997,   133,   134,   998,   248,   249,   999,   251,   135,   136,
-     137,  1000,  1001,   159,  1003,  1004,  1045,  1014,   252,  1013,
-    1017,  1016,   253,  1020,  1019,  1022,  1023,  1025,  1026,  1041,
-    1029,   254,     1,     2,     3,     4,     5,     6,     7,     8,
-       9,    10,    11,    12,    13,    14,  1040,  1043,  1044,  1082,
-    1046,  1047,  1048,  1049,  1050,  1055,  1056,  1057,  1060,  1061,
-    1062,  1069,  1071,  1079,  1087,  1097,  1086,  1090,  1089,  1093,
-    1098,  1091,  1092,  1094,   255,  1095,  1096,   362,   152,   153,
-     382,  1099,  1100,  1123,   256,   384,   385,  1107,   298,  1101,
-    1102,   376,  1110,  1124,   396,  1177,  1103,  1165,   340,  1108,
-     301,   400,   257,  1104,  1111,  1178,   258,   363,   159,  1186,
-     383,  1125,   342,  1152,  1112,  1126,  1105,   921,  1106,  1109,
-    1113,   262,   935,  1179,  1171,  1184,   945,  1180,   263,   296,
-    1130,   923,  1172,  1207,   264,  1228,   941,  1131,  1164,   969,
-     946,  1200,   299,  1132,   305,   377,   956,   320,   397,  1230,
-    1185,  1166,  1201,   341,  1202,   259,  1203,  1204,   313,   260,
-     261,   324,   265,  1187,  1127,  1229,   343,  1205,  1128,  1129,
-     266,  1133,  1208,  1209,   267,   268,  1181,   269,   270,  1134,
-    1182,  1183,   271,  1135,  1136,   924,  1137,  1138,   272,   273,
-     942,  1139,  1156,  1210,   947,   274,   275,  1140,  1141,   308,
-     957,   276,   323,  1231,  1142,  1143,  1211,   277,   278,   279,
-    1144,   280,   314,   281,   282,   325,  1145,  1146,  1147,   283,
-    1148,   291,  1149,  1150,   292,   293,  1217,  1213,  1151,  1218,
-    1158,  1221,  1214,  1159,  1160,  1157,  1223,  1240,  1215,  1241,
-    1273,  1263,  1264,  1271,  1222,  1220,  1250,  1238,  1251,  1252,
-    1257,  1258,  1259,   306,  1260,  1272,   321,  1267,  1268,  1274,
-    1286,  1294,  1295,  1298,  1300,   801,  1304,  1326,  1327,  1306,
-    1328,  1332,  1336,   792,   803,   984,   654,  1116,  1114,  1173,
-    1170,   877,  1280,  1281,   660,  1282,  1169,  1216,  1283,  1290,
-    1199,  1198,  1299,  1296,  1302,  1303,   307,  1305,   704,   322,
-    1118,  1334,  1333,  1335,  1338,  1339,  1206,  1117,   671,  1293,
-    1168,  1120,   354,   696,  1119,  1121,  1122,  1243,   701,  1242,
-     680,   674,  1245,  1244,  1123,  1196,  1197,   688,  1297,  1219,
-     802,   982,  1177,  1212,  1124,   713,  1195,  1224,  1165,  1301,
-     716,  1324,  1178,  1284,  1337,  1237,  1186,  1228,     0,     0,
-    1239,     0,  1125,     0,  1152,     0,  1126,     0,     0,     0,
-    1179,  1230,  1184,     0,  1180,     0,     0,   964,     0,     0,
-       0,  1130,     0,     0,     0,     0,     0,  1229,  1131,  1164,
-       0,     0,     0,     0,  1132,     0,     0,  1185,     0,     0,
-       0,     0,  1166,     0,     0,     0,     0,     0,     0,     0,
-    1187,     0,     0,     0,     0,  1127,     0,     0,     0,  1128,
-    1129,     0,  1133,  1181,     0,  1231,     0,  1182,  1183,     0,
-    1134,     0,     0,     0,  1135,  1136,     0,  1137,  1138,     0,
-       0,     0,  1139,  1156,     0,     0,     0,     0,  1140,  1141,
-       0,     0,     0,     0,     0,  1142,  1143,     0,     0,     0,
-       0,  1144,     0,     0,     0,     0,     0,  1145,  1146,  1147,
-       0,  1148,     0,  1149,  1150,     0,     0,     0,     0,  1151,
-       0,  1158,     0,     0,  1159,  1160,  1157
+     819,   459,   159,   460,   820,   821,   822,   823,   824,   825,
+     133,   134,   462,   463,   357,   379,   358,   359,   380,   381,
+     382,   464,   127,  1081,   564,  1010,   334,   465,  1082,  1226,
+    1262,  1227,  1228,   466,   335,   336,   337,   338,   339,   340,
+     357,   133,   134,   303,   584,   585,   470,   528,   565,   159,
+     133,   134,  1263,   159,  1266,   586,   568,  1289,   160,  1267,
+     471,  1276,  1290,   532,   539,   235,   472,   252,  1292,  1293,
+    1331,   253,   304,   473,   477,  1332,   484,   255,   594,   243,
+     485,   305,   740,   741,   742,   743,   486,   256,   320,   496,
+     503,   298,  1254,  1255,  1256,   313,   504,   324,   341,  1247,
+    1248,  1249,   325,   301,   505,   257,   508,   512,   363,   258,
+     513,   514,   343,   515,   383,   523,   524,   159,   531,   535,
+     385,   537,   377,   538,   262,   553,   386,   414,   397,   557,
+     561,   263,   296,   244,   562,   563,   308,   264,   364,   570,
+     572,   415,   574,   323,   384,   299,   575,   581,   159,   314,
+    1277,  1278,  1279,   342,   587,   588,   326,   159,   259,   589,
+     590,   591,   260,   261,   592,   265,   344,   593,   595,   596,
+     608,   614,   615,   266,   159,   603,   378,   267,   268,   597,
+     269,   270,   398,   133,   134,   271,   598,   599,   600,   616,
+     306,   272,   273,   602,   601,   416,   604,   321,   274,   275,
+     605,   606,   607,   621,   276,   609,   610,   622,   623,   611,
+     277,   278,   279,   612,   280,   619,   281,   282,   625,   613,
+     617,   618,   283,   620,   291,   626,   624,   292,   293,   627,
+     628,   629,   630,   307,   634,   635,   631,   632,   636,   633,
+     322,   637,   638,   639,   640,   406,   407,   408,   409,   410,
+     411,   412,   413,     1,     2,     3,     4,     5,     6,     7,
+       8,     9,    10,    11,    12,    13,    14,   641,   160,   642,
+     644,   235,   645,   643,   646,   647,   648,   649,   653,   654,
+     656,   650,   651,   652,   657,   243,   658,   659,   662,   660,
+     159,   663,   664,   667,   665,   666,   668,   669,   670,   671,
+     673,   676,   678,   674,   677,   679,   922,   936,   946,   680,
+     414,   682,   683,   684,   970,   685,   686,   687,   688,   690,
+     924,   942,   947,   957,   415,   691,   692,   693,   801,   694,
+     695,   696,   698,   703,   699,   704,   700,   707,   701,   244,
+      98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
+     108,   109,   110,   709,   712,   706,   708,   115,   116,   117,
+     118,   119,   120,   121,   122,   123,   124,   713,   710,   127,
+     711,   715,   718,   719,   925,   943,   948,   958,   416,   721,
+     716,   129,   130,   131,   720,   722,   723,   724,   725,   245,
+     726,   246,   733,   734,   735,   736,   737,   133,   134,   247,
+     248,   249,   250,   251,   135,   136,   137,   738,   739,   745,
+      32,   748,   749,   750,   252,   751,   752,   753,   253,   754,
+     143,   755,   756,   762,   757,   758,   759,   254,   760,   761,
+     763,   764,   765,   766,   768,    98,    99,   100,   101,   102,
+     103,   104,   105,   106,   107,   108,   109,   110,   769,   775,
+     770,   771,   115,   116,   117,   118,   119,   120,   121,   122,
+     123,   124,   125,   772,   127,   357,   774,   776,   777,   778,
+     782,   783,   784,   785,   152,   153,   129,   130,   131,   786,
+     800,   852,   787,   799,   788,   856,   860,   864,   868,   892,
+     895,   899,   133,   134,   789,   248,   249,   790,   251,   135,
+     136,   137,   966,   975,   159,   979,   335,   791,   993,   252,
+     994,   995,   996,   253,   792,   794,   795,   997,   998,   999,
+    1000,  1001,   254,  1002,  1004,  1005,  1015,   793,  1014,  1018,
+    1017,  1020,  1021,  1023,  1024,  1027,  1026,  1083,  1042,  1030,
+    1041,  1045,  1044,  1046,  1047,  1048,  1049,  1050,  1051,  1056,
+    1057,  1058,  1061,  1062,  1063,  1070,  1072,  1080,  1088,  1098,
+    1087,  1091,  1090,  1093,  1094,   255,  1095,  1092,   363,   152,
+     153,   383,  1096,  1097,  1124,   256,  1099,   385,  1100,   298,
+    1102,  1103,   377,   386,  1125,   397,  1178,  1101,  1166,   341,
+    1108,   301,   401,   257,  1109,  1111,  1179,   258,   364,   159,
+    1187,   384,  1126,   343,  1153,  1112,  1127,  1113,   922,  1104,
+    1105,  1106,   262,   936,  1180,  1107,  1185,   946,  1181,   263,
+     296,  1131,   924,  1114,  1172,   264,  1229,   942,  1132,  1165,
+     970,   947,  1173,   299,  1133,   305,   378,   957,   320,   398,
+    1231,  1186,  1167,  1110,   342,  1208,   259,   324,  1201,   313,
+     260,   261,   325,   265,  1188,  1128,  1230,   344,  1209,  1129,
+    1130,   266,  1134,  1202,  1203,   267,   268,  1182,   269,   270,
+    1135,  1183,  1184,   271,  1136,  1137,   925,  1138,  1139,   272,
+     273,   943,  1140,  1157,  1204,   948,   274,   275,  1141,  1142,
+     308,   958,   276,   323,  1232,  1143,  1144,  1218,   277,   278,
+     279,  1145,   280,   314,   281,   282,   326,  1146,  1147,  1148,
+     283,  1149,   291,  1150,  1151,   292,   293,  1205,  1206,  1152,
+    1219,  1159,  1222,  1214,  1160,  1161,  1158,  1210,  1211,  1224,
+    1241,  1242,   878,  1307,  1212,  1264,  1272,  1265,  1273,  1274,
+    1305,  1275,  1287,  1295,   306,  1296,  1221,   321,  1299,  1301,
+    1327,  1328,  1329,  1215,  1333,  1337,   802,   804,   655,   661,
+     985,  1117,  1115,  1174,  1170,  1171,  1200,  1217,  1199,   705,
+    1207,  1118,  1119,   672,  1169,  1294,   355,  1216,   697,  1223,
+    1251,  1252,  1239,  1300,  1121,  1253,  1258,   307,  1259,  1260,
+     322,  1261,  1268,  1269,  1281,  1282,  1283,  1284,  1291,  1120,
+    1303,  1123,  1297,  1304,  1306,  1334,  1335,  1122,  1336,  1339,
+    1340,   702,  1244,  1243,  1246,  1124,   681,   675,  1245,  1197,
+    1198,   983,  1196,  1178,  1298,  1125,  1220,   689,  1213,  1166,
+    1225,  1302,   717,  1179,  1285,  1325,  1338,  1187,  1229,   714,
+     965,  1240,  1238,  1126,   803,  1153,     0,  1127,     0,     0,
+       0,  1180,  1231,  1185,     0,  1181,     0,     0,     0,     0,
+       0,     0,  1131,     0,     0,     0,     0,     0,  1230,  1132,
+    1165,     0,     0,     0,     0,  1133,     0,     0,  1186,     0,
+       0,     0,     0,  1167,     0,     0,     0,     0,     0,     0,
+       0,  1188,     0,     0,     0,     0,  1128,     0,     0,     0,
+    1129,  1130,     0,  1134,  1182,     0,  1232,     0,  1183,  1184,
+       0,  1135,     0,     0,     0,  1136,  1137,     0,  1138,  1139,
+       0,     0,     0,  1140,  1157,     0,     0,     0,     0,  1141,
+    1142,     0,     0,     0,     0,     0,  1143,  1144,     0,     0,
+       0,     0,  1145,     0,     0,     0,     0,     0,  1146,  1147,
+    1148,     0,  1149,     0,  1150,  1151,     0,     0,     0,     0,
+    1152,     0,  1159,     0,     0,  1160,  1161,  1158
   };
 
   const short
   Dhcp6Parser::yycheck_[] =
   {
       71,    72,    73,    74,    75,    76,    16,    78,    79,    80,
-      81,   756,    73,    79,    79,    72,    73,    74,    75,    76,
-     723,    78,    79,   750,    81,  1024,  1024,  1024,    73,  1024,
-      73,  1024,   200,   134,    73,     0,   628,    78,    79,     5,
-     215,     7,    79,     9,   140,   141,     7,   215,     3,    73,
-       3,     6,    10,   108,   109,     8,    73,    73,    74,    75,
-      76,     6,    73,     4,   181,   182,   183,   184,     7,    72,
-      73,    74,    75,    76,     3,    78,    79,     7,    81,     8,
-       3,     3,   215,    73,   216,     8,     8,    73,    73,     7,
-      73,    16,    17,    18,    19,    20,   140,   141,    73,   108,
-     109,   218,    73,    73,     7,    73,    73,    24,   163,   164,
-      73,   703,    74,    75,   215,     3,    73,    73,   668,   215,
-       8,     7,   192,    73,    73,   195,   196,   197,   198,    73,
-       7,   681,   682,   683,     7,    73,    73,    73,     3,    73,
-      80,    73,    73,     8,     7,     3,     3,    73,     7,    73,
-       8,     8,    73,    73,     7,    74,    75,   166,   167,   168,
-     215,   101,   108,   109,    81,     7,    83,    84,   108,   109,
-      24,    88,    89,    90,     3,     3,    11,    12,    32,     8,
-      15,    13,    14,   108,   109,   125,    21,    22,    23,   129,
-     130,   108,   109,     7,     3,   143,   144,   145,   146,   147,
-     148,     8,     3,     3,     3,     3,   215,     8,     8,     8,
-       8,   122,   123,   159,   160,   161,    51,    52,    53,    54,
-      55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
-      65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
-      75,    76,    77,    78,    79,    80,     4,     4,     3,   215,
-     216,   217,   218,     8,   108,   109,    91,    92,    93,    94,
-       3,    25,    26,    27,    99,     8,  1265,  1265,  1265,   215,
-    1265,     3,  1265,   108,   109,   215,     8,    42,    43,    44,
-     115,   116,   117,   118,   119,   120,   121,     4,     3,   124,
-     215,     3,    80,     8,     6,     4,   131,    81,   215,   153,
-     154,   155,   156,  1030,   139,     3,     3,   142,     4,  1012,
-       8,     8,     4,  1058,   149,   103,   104,   105,   106,   107,
-     108,   109,   157,   158,   108,   109,     3,   162,     3,     3,
-     165,     8,     6,     8,   169,     3,     8,   125,     3,     3,
-       8,   129,     3,     8,     8,   134,   135,     8,   137,     4,
-     185,   186,   187,   188,   189,   190,     3,     3,     3,     6,
-       3,   215,    24,     8,   199,     8,    28,    29,    30,    31,
-      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
-     215,   178,   179,    45,    46,    47,    48,    49,    50,    95,
-      96,    97,    98,    81,    82,    83,    84,    85,    86,    87,
-       3,     3,     8,     3,     8,     8,     8,   191,     8,   193,
-     194,     3,     8,     4,     6,   150,   151,   152,     4,    81,
-     108,   109,     4,   433,   434,     4,     4,   215,     4,     4,
-       4,   215,     4,     4,     4,     4,     4,   508,     4,     4,
-       4,     4,     4,     4,   515,     4,     4,     4,     4,     4,
-       4,     4,     4,     4,     4,     4,   527,     4,   515,     4,
-     531,     4,     4,   216,     4,     4,   527,   538,     4,     3,
-     527,     4,     4,     4,   531,     3,   216,   548,     4,     4,
-       4,   538,   527,     4,   527,     4,     4,   558,   527,     4,
-       4,   548,     4,   564,     4,     4,     4,   216,   564,   564,
-     216,   558,   216,   527,   217,   216,   577,   564,   216,   216,
-     527,   527,   515,   218,   217,   531,   527,   558,   217,     4,
-     577,   216,   538,   564,   527,   216,   216,   215,   531,   218,
-       4,   218,   548,   218,     4,   538,     4,   527,   218,   218,
-     218,   527,   527,     4,   527,   548,   217,     4,     4,   216,
-       4,     4,   527,   215,     4,   558,   527,   527,     4,   527,
-     527,   564,     4,     4,   527,   218,   218,   108,   109,   531,
-     527,   527,     4,     4,   577,     4,   538,   527,   527,   218,
-       4,     4,     4,   527,     4,     4,     4,   216,     4,   527,
-     527,   527,     4,   527,     4,   527,   527,     4,     4,    80,
-       4,   527,   218,   527,   218,   218,   527,   527,     4,     4,
-       4,   218,   531,   218,     4,   216,     4,   216,     4,   538,
-       4,     4,   216,   218,     4,     4,     4,   108,   109,   170,
-     171,   172,   173,   174,   175,   176,   177,    51,    52,    53,
-      54,    55,    56,   124,     4,     4,     4,   718,     4,   216,
-     721,   132,   133,   134,   135,   136,   137,     4,     4,     4,
-       4,     4,     4,     4,   721,     4,    80,    81,   216,     4,
-     216,     4,   216,     4,   215,     4,     4,     4,   216,     4,
-       4,   218,     4,   218,     4,   756,   757,   758,   218,   760,
-       4,   218,     4,   764,   108,   109,   218,     7,   215,   756,
-     757,   758,   759,   760,     7,   216,     7,   717,     5,   216,
-     216,   216,   126,   127,   128,     7,     7,   215,   721,    51,
-      52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
-      62,    63,   215,   215,   215,     5,    68,    69,    70,    71,
-      72,    73,    74,    75,    76,    77,     5,     5,    80,   215,
-     215,     5,     7,   756,   757,   758,   759,   760,     5,     5,
-      92,    93,    94,   215,     5,     7,     5,     5,   100,     5,
-     102,   215,     7,     7,     7,     7,   108,   109,   110,   111,
-     112,   113,   114,   115,   116,   117,     7,     7,   215,     5,
-       7,     5,     5,   125,     5,     7,     5,   129,   215,   131,
-     215,   215,   215,   180,   215,     7,   138,   215,     7,     7,
-     215,     7,   215,   215,    51,    52,    53,    54,    55,    56,
-      57,    58,    59,    60,    61,    62,    63,     7,   215,     7,
-     215,    68,    69,    70,    71,    72,    73,    74,    75,    76,
-      77,    78,   215,    80,    81,   215,   215,   215,   215,   215,
-     215,   215,   215,   185,   186,    92,    93,    94,   215,     7,
-       7,     7,     7,     7,   132,     4,     4,     4,     4,     4,
-       4,   108,   109,     4,   111,   112,     4,   114,   115,   116,
-     117,     4,     4,   215,     4,     4,     4,     3,   125,     6,
-       3,     6,   129,     3,     6,     6,     3,     6,     3,     3,
-       6,   138,   201,   202,   203,   204,   205,   206,   207,   208,
-     209,   210,   211,   212,   213,   214,     6,     6,     3,   215,
-       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
-       4,     4,     4,     4,     3,   216,     6,     3,     6,     4,
-     218,     8,     6,     4,  1015,     4,     4,  1018,   185,   186,
-    1021,   216,   218,  1024,  1015,  1021,  1021,     4,  1015,   216,
-     216,  1018,     4,  1024,  1021,  1036,   216,  1024,  1039,   218,
-    1015,  1042,  1015,   216,     4,  1036,  1015,  1018,   215,  1036,
-    1021,  1024,  1039,  1024,     4,  1024,   216,  1058,   216,   216,
-       4,  1015,  1063,  1036,     4,  1036,  1067,  1036,  1015,  1015,
-    1024,  1058,     4,     4,  1015,  1076,  1063,  1024,  1024,  1080,
-    1067,   216,  1015,  1024,  1085,  1018,  1073,  1088,  1021,  1076,
-    1036,  1024,   216,  1039,   216,  1015,   216,   216,  1085,  1015,
-    1015,  1088,  1015,  1036,  1024,  1076,  1039,   216,  1024,  1024,
-    1015,  1024,     4,   216,  1015,  1015,  1036,  1015,  1015,  1024,
-    1036,  1036,  1015,  1024,  1024,  1058,  1024,  1024,  1015,  1015,
-    1063,  1024,  1024,   216,  1067,  1015,  1015,  1024,  1024,  1085,
-    1073,  1015,  1088,  1076,  1024,  1024,   216,  1015,  1015,  1015,
-    1024,  1015,  1085,  1015,  1015,  1088,  1024,  1024,  1024,  1015,
-    1024,  1015,  1024,  1024,  1015,  1015,     4,   218,  1024,     4,
-    1024,     4,   216,  1024,  1024,  1024,     4,     6,   216,     3,
-       3,     8,     8,     4,   216,   218,   215,   218,   215,   215,
-     215,   215,   215,  1085,   215,     8,  1088,   215,   215,     8,
-       4,     4,     4,     4,     4,   718,     5,     4,     4,     7,
-       4,     4,     4,   703,   721,   799,   508,  1014,  1009,  1034,
-    1030,   749,   215,   215,   515,   215,  1027,  1063,   215,   215,
-    1044,  1042,   216,   218,   215,   215,  1085,   215,   567,  1088,
-    1017,   216,   218,   216,   215,   215,  1051,  1015,   527,  1265,
-    1026,  1020,    77,   558,  1018,  1021,  1023,  1087,   564,  1085,
-     538,   531,  1090,  1088,  1265,  1039,  1041,   548,  1273,  1067,
-     720,   774,  1273,  1058,  1265,   577,  1037,  1073,  1265,  1288,
-     581,  1310,  1273,  1223,  1330,  1077,  1273,  1288,    -1,    -1,
-    1080,    -1,  1265,    -1,  1265,    -1,  1265,    -1,    -1,    -1,
-    1273,  1288,  1273,    -1,  1273,    -1,    -1,   760,    -1,    -1,
-      -1,  1265,    -1,    -1,    -1,    -1,    -1,  1288,  1265,  1265,
-      -1,    -1,    -1,    -1,  1265,    -1,    -1,  1273,    -1,    -1,
-      -1,    -1,  1265,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    1273,    -1,    -1,    -1,    -1,  1265,    -1,    -1,    -1,  1265,
-    1265,    -1,  1265,  1273,    -1,  1288,    -1,  1273,  1273,    -1,
-    1265,    -1,    -1,    -1,  1265,  1265,    -1,  1265,  1265,    -1,
-      -1,    -1,  1265,  1265,    -1,    -1,    -1,    -1,  1265,  1265,
-      -1,    -1,    -1,    -1,    -1,  1265,  1265,    -1,    -1,    -1,
-      -1,  1265,    -1,    -1,    -1,    -1,    -1,  1265,  1265,  1265,
-      -1,  1265,    -1,  1265,  1265,    -1,    -1,    -1,    -1,  1265,
-      -1,  1265,    -1,    -1,  1265,  1265,  1265
+      81,   757,    73,    75,    79,    72,    73,    74,    75,    76,
+      79,    78,    79,   724,    81,   751,  1025,  1025,    73,  1025,
+      73,  1025,  1025,   134,    73,     0,   629,    78,    79,     5,
+     215,     7,     3,     9,    79,     6,   140,   141,   200,    73,
+      51,    52,    53,    54,    55,    56,    73,    73,    74,    75,
+      76,     6,    73,   215,   108,   109,    24,    13,    14,    72,
+      73,    74,    75,    76,    32,    78,    79,     7,    81,    80,
+      81,   134,   135,    73,   137,   108,   109,    73,    73,     7,
+      73,    16,    17,    18,    19,    20,     7,     3,    73,     3,
+       6,    24,    73,    73,     8,    73,    73,   108,   109,    10,
+      73,   704,    74,    75,   215,     3,    73,    73,     6,   163,
+     164,   215,     7,    73,    73,   126,   127,   128,     7,    73,
+       7,   181,   182,   183,   184,    73,    73,    73,     7,    73,
+       7,    73,    73,   166,   167,   168,     7,    73,     7,    73,
+     108,   109,    73,    73,     7,    74,    75,     3,    81,   669,
+      83,    84,     8,     7,     3,    88,    89,    90,   218,     8,
+       7,   215,   682,   683,   684,     3,     3,     3,    11,    12,
+       8,     8,    15,   108,   109,   108,   109,     4,    21,    22,
+      23,     3,   215,     8,     3,   153,   154,   155,   156,     8,
+       4,     3,     3,   108,   109,   192,     8,     8,   195,   196,
+     197,   198,     3,     3,   215,     4,     6,     8,    51,    52,
+      53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
+      63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
+      73,    74,    75,    76,    77,    78,    79,    80,     3,   215,
+     216,   217,   218,     8,   159,   160,   161,   215,    91,    92,
+      93,    94,     3,     8,     3,     6,    99,  1266,  1266,     8,
+    1266,     4,  1266,  1266,     3,   108,   109,   140,   141,     8,
+     178,   179,   115,   116,   117,   118,   119,   120,   121,     4,
+     215,   124,   215,     4,    80,     3,     3,     3,   131,    81,
+       8,     8,     8,     3,     3,  1031,   139,     4,     8,   142,
+     215,     4,  1013,  1059,   122,   123,   149,   103,   104,   105,
+     106,   107,   108,   109,   157,   158,   108,   109,     3,   162,
+       3,     8,   165,     8,     4,     8,   169,     3,     3,   125,
+       4,     4,     8,   129,   130,   143,   144,   145,   146,   147,
+     148,     4,   185,   186,   187,   188,   189,   190,     4,     3,
+       3,     8,    80,    24,     8,     8,   199,    28,    29,    30,
+      31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
+      41,     4,   215,     4,    45,    46,    47,    48,    49,    50,
+     108,   109,     4,     4,    81,    82,    83,    84,    85,    86,
+      87,     4,    80,     3,     8,     3,   124,     4,     8,   191,
+       8,   193,   194,     4,   132,   133,   134,   135,   136,   137,
+      81,   108,   109,   101,   434,   435,     4,     3,     3,   215,
+     108,   109,     8,   215,     3,   215,     3,     3,   509,     8,
+       4,     8,     8,     3,     3,   516,     4,   125,     8,     8,
+       3,   129,   130,     4,     4,     8,     4,   528,   216,   516,
+       4,   532,    95,    96,    97,    98,     4,   528,   539,     4,
+       4,   528,    42,    43,    44,   532,     4,   539,   549,    25,
+      26,    27,   539,   528,     4,   528,     4,     4,   559,   528,
+       4,     4,   549,     4,   565,     4,     4,   215,     4,     4,
+     565,     4,   559,     4,   528,     4,   565,   578,   565,     4,
+       4,   528,   528,   516,     4,     4,   532,   528,   559,     4,
+       4,   578,     4,   539,   565,   528,     4,     4,   215,   532,
+     150,   151,   152,   549,     4,     4,   539,   215,   528,     4,
+       4,     4,   528,   528,     4,   528,   549,     4,   216,   216,
+       4,     4,     4,   528,   215,   217,   559,   528,   528,   216,
+     528,   528,   565,   108,   109,   528,   216,   216,   216,     4,
+     532,   528,   528,   218,   216,   578,   217,   539,   528,   528,
+     217,   216,   216,     4,   528,   216,   216,     4,     4,   218,
+     528,   528,   528,   218,   528,   217,   528,   528,     4,   218,
+     218,   218,   528,   218,   528,     4,   216,   528,   528,     4,
+       4,     4,     4,   532,     4,     4,   218,   218,     4,   218,
+     539,     4,     4,     4,     4,   170,   171,   172,   173,   174,
+     175,   176,   177,   201,   202,   203,   204,   205,   206,   207,
+     208,   209,   210,   211,   212,   213,   214,     4,   719,     4,
+       4,   722,     4,   216,     4,     4,     4,     4,     4,     4,
+       4,   218,   218,   218,   218,   722,   218,   216,     4,   216,
+     215,     4,     4,   216,     4,     4,   218,     4,     4,     4,
+       4,     4,     4,   216,   216,   216,   757,   758,   759,   216,
+     761,     4,     4,     4,   765,     4,     4,     4,     4,     4,
+     757,   758,   759,   760,   761,     4,   216,     4,   718,     4,
+       4,   218,     4,     4,   218,     4,   218,     4,   218,   722,
+      51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
+      61,    62,    63,     4,     4,   218,   216,    68,    69,    70,
+      71,    72,    73,    74,    75,    76,    77,     4,   216,    80,
+     216,     4,     4,     7,   757,   758,   759,   760,   761,     7,
+     216,    92,    93,    94,   215,     7,     7,     7,     5,   100,
+     215,   102,   215,   215,     5,     5,     5,   108,   109,   110,
+     111,   112,   113,   114,   115,   116,   117,   215,   215,     5,
+       7,   215,     5,     5,   125,     5,     7,     5,   129,     5,
+     131,     5,     7,   215,     7,     7,     7,   138,     7,     7,
+     215,     5,     7,     5,     5,    51,    52,    53,    54,    55,
+      56,    57,    58,    59,    60,    61,    62,    63,     5,     7,
+     215,   215,    68,    69,    70,    71,    72,    73,    74,    75,
+      76,    77,    78,   215,    80,    81,   215,   215,   215,   215,
+     215,   215,   215,   215,   185,   186,    92,    93,    94,   215,
+       5,     7,   215,   180,   215,     7,     7,     7,     7,     7,
+       7,     7,   108,   109,   215,   111,   112,   215,   114,   115,
+     116,   117,     7,     7,   215,     7,   132,   215,     4,   125,
+       4,     4,     4,   129,   215,   215,   215,     4,     4,     4,
+       4,     4,   138,     4,     4,     4,     3,   704,     6,     3,
+       6,     6,     3,     6,     3,     3,     6,   215,     3,     6,
+       6,     3,     6,     4,     4,     4,     4,     4,     4,     4,
+       4,     4,     4,     4,     4,     4,     4,     4,     3,   216,
+       6,     3,     6,     6,     4,  1016,     4,     8,  1019,   185,
+     186,  1022,     4,     4,  1025,  1016,   218,  1022,   216,  1016,
+     216,   216,  1019,  1022,  1025,  1022,  1037,   218,  1025,  1040,
+       4,  1016,  1043,  1016,   218,     4,  1037,  1016,  1019,   215,
+    1037,  1022,  1025,  1040,  1025,     4,  1025,     4,  1059,   216,
+     216,   216,  1016,  1064,  1037,   216,  1037,  1068,  1037,  1016,
+    1016,  1025,  1059,     4,     4,  1016,  1077,  1064,  1025,  1025,
+    1081,  1068,     4,  1016,  1025,  1086,  1019,  1074,  1089,  1022,
+    1077,  1037,  1025,   216,  1040,     4,  1016,  1089,   216,  1086,
+    1016,  1016,  1089,  1016,  1037,  1025,  1077,  1040,     4,  1025,
+    1025,  1016,  1025,   216,   216,  1016,  1016,  1037,  1016,  1016,
+    1025,  1037,  1037,  1016,  1025,  1025,  1059,  1025,  1025,  1016,
+    1016,  1064,  1025,  1025,   216,  1068,  1016,  1016,  1025,  1025,
+    1086,  1074,  1016,  1089,  1077,  1025,  1025,     4,  1016,  1016,
+    1016,  1025,  1016,  1086,  1016,  1016,  1089,  1025,  1025,  1025,
+    1016,  1025,  1016,  1025,  1025,  1016,  1016,   216,   216,  1025,
+       4,  1025,     4,   218,  1025,  1025,  1025,   216,   216,     4,
+       6,     3,   750,     7,   216,     8,     4,     8,     8,     3,
+       5,     8,     4,     4,  1086,     4,   218,  1089,     4,     4,
+       4,     4,     4,   216,     4,     4,   719,   722,   509,   516,
+     800,  1015,  1010,  1035,  1028,  1031,  1045,  1064,  1043,   568,
+    1052,  1016,  1018,   528,  1027,  1266,    77,   216,   559,   216,
+     215,   215,   218,   216,  1021,   215,   215,  1086,   215,   215,
+    1089,   215,   215,   215,   215,   215,   215,   215,   215,  1019,
+     215,  1024,   218,   215,   215,   218,   216,  1022,   216,   215,
+     215,   565,  1088,  1086,  1091,  1266,   539,   532,  1089,  1040,
+    1042,   775,  1038,  1274,  1274,  1266,  1068,   549,  1059,  1266,
+    1074,  1289,   582,  1274,  1224,  1311,  1331,  1274,  1289,   578,
+     761,  1081,  1078,  1266,   721,  1266,    -1,  1266,    -1,    -1,
+      -1,  1274,  1289,  1274,    -1,  1274,    -1,    -1,    -1,    -1,
+      -1,    -1,  1266,    -1,    -1,    -1,    -1,    -1,  1289,  1266,
+    1266,    -1,    -1,    -1,    -1,  1266,    -1,    -1,  1274,    -1,
+      -1,    -1,    -1,  1266,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,  1274,    -1,    -1,    -1,    -1,  1266,    -1,    -1,    -1,
+    1266,  1266,    -1,  1266,  1274,    -1,  1289,    -1,  1274,  1274,
+      -1,  1266,    -1,    -1,    -1,  1266,  1266,    -1,  1266,  1266,
+      -1,    -1,    -1,  1266,  1266,    -1,    -1,    -1,    -1,  1266,
+    1266,    -1,    -1,    -1,    -1,    -1,  1266,  1266,    -1,    -1,
+      -1,    -1,  1266,    -1,    -1,    -1,    -1,    -1,  1266,  1266,
+    1266,    -1,  1266,    -1,  1266,  1266,    -1,    -1,    -1,    -1,
+    1266,    -1,  1266,    -1,    -1,  1266,  1266,  1266
   };
 
   const short
@@ -5793,108 +5795,109 @@ namespace isc { namespace dhcp {
      438,   440,   441,   442,   443,   444,   479,   498,   511,   513,
      515,   532,   557,   101,   130,   250,   436,   438,   479,   506,
      507,   508,   510,   511,   513,   103,   104,   105,   106,   107,
-     250,   436,   438,   479,   511,   513,   523,   524,   525,   527,
-     528,   530,   531,   124,   132,   133,   134,   135,   136,   137,
-     250,   479,   511,   513,   540,   541,   542,   543,   545,   547,
-     549,   551,   553,   555,   453,    24,    81,    83,    84,    88,
-      89,    90,   250,   343,   463,   464,   465,   466,   467,   468,
-     469,   471,   473,   475,   476,   478,   511,   513,    82,    85,
-      86,    87,   250,   343,   467,   473,   487,   488,   489,   490,
-     491,   493,   494,   495,   496,   497,   511,   513,   140,   141,
-     250,   404,   405,   406,   408,   170,   171,   172,   173,   174,
-     175,   176,   177,   250,   511,   513,   609,   610,   611,   612,
-     614,   615,   617,   618,   619,   622,    13,    14,   628,   629,
-     630,   632,     6,     3,     4,     8,     3,   254,     3,     8,
-     261,   625,   310,   322,   324,   326,     4,     4,     4,     4,
+     250,   436,   438,   479,   510,   511,   513,   523,   524,   525,
+     527,   528,   530,   531,   124,   132,   133,   134,   135,   136,
+     137,   250,   479,   511,   513,   540,   541,   542,   543,   545,
+     547,   549,   551,   553,   555,   453,    24,    81,    83,    84,
+      88,    89,    90,   250,   343,   463,   464,   465,   466,   467,
+     468,   469,   471,   473,   475,   476,   478,   511,   513,    82,
+      85,    86,    87,   250,   343,   467,   473,   487,   488,   489,
+     490,   491,   493,   494,   495,   496,   497,   511,   513,   140,
+     141,   250,   404,   405,   406,   408,   170,   171,   172,   173,
+     174,   175,   176,   177,   250,   511,   513,   609,   610,   611,
+     612,   614,   615,   617,   618,   619,   622,    13,    14,   628,
+     629,   630,   632,     6,     3,     4,     8,     3,   254,     3,
+       8,   261,   625,   310,   322,   324,   326,     4,     4,     4,
        4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
-     300,     4,     4,     4,     4,     4,   280,   283,   285,     4,
-       4,     4,     4,   421,   454,   480,     4,   303,   305,   289,
-     446,   512,   514,     4,     4,     4,   376,   388,   382,   368,
-     561,   533,   397,   411,   575,     4,   390,   588,   596,   606,
-     293,   295,     4,     4,     4,   634,   658,     4,     3,     8,
-     316,     4,     4,     4,     4,     3,     8,   499,   516,   431,
-     433,   435,     4,     4,   439,   437,   558,     3,     8,   509,
-       4,     3,     8,   526,     4,   529,     4,     4,     3,     8,
-     556,   544,   546,   548,   550,   552,   554,     8,     3,     8,
-     470,   344,     4,   474,   472,   477,     4,     8,     3,   492,
-       4,     4,     4,     8,     3,   407,   409,     3,     8,     4,
-     613,     4,   616,     4,     4,   620,   623,     3,     8,   631,
-       4,     3,     8,   235,   235,   215,     4,     4,     4,     4,
-       4,     4,     4,   216,   216,   216,   216,   216,   216,   216,
-     216,   218,   217,   217,   217,   216,   216,     4,   216,   216,
-     218,   218,   218,     4,     4,     4,   218,   218,   217,   218,
+       4,   300,     4,     4,     4,     4,     4,   280,   283,   285,
+       4,     4,     4,     4,   421,   454,   480,     4,   303,   305,
+     289,   446,   512,   514,     4,     4,     4,   376,   388,   382,
+     368,   561,   533,   397,   411,   575,     4,   390,   588,   596,
+     606,   293,   295,     4,     4,     4,   634,   658,     4,     3,
+       8,   316,     4,     4,     4,     4,     3,     8,   499,   516,
+     431,   433,   435,     4,     4,   439,   437,   558,     3,     8,
+     509,     4,     3,     8,   526,     4,   529,     4,     4,     3,
+       8,   556,   544,   546,   548,   550,   552,   554,     8,     3,
+       8,   470,   344,     4,   474,   472,   477,     4,     8,     3,
+     492,     4,     4,     4,     8,     3,   407,   409,     3,     8,
+       4,   613,     4,   616,     4,     4,   620,   623,     3,     8,
+     631,     4,     3,     8,   235,   235,   215,     4,     4,     4,
+       4,     4,     4,     4,   216,   216,   216,   216,   216,   216,
+     216,   216,   218,   217,   217,   217,   216,   216,     4,   216,
+     216,   218,   218,   218,     4,     4,     4,   218,   218,   217,
+     218,     4,     4,     4,   216,     4,     4,     4,     4,     4,
+       4,   218,   218,   218,     4,     4,     4,     4,     4,     4,
        4,     4,     4,   216,     4,     4,     4,     4,     4,     4,
-     218,   218,   218,     4,     4,     4,     4,     4,     4,     4,
-       4,     4,   216,     4,     4,     4,     4,     4,     4,   218,
-     218,   218,     4,     4,   259,     4,   218,   218,   216,   216,
-     314,     4,     4,     4,     4,     4,   216,   218,     4,     4,
-       4,   429,     4,   216,   507,     4,   216,     4,   216,   216,
-     524,     4,     4,     4,     4,     4,     4,     4,   542,     4,
-       4,   216,     4,     4,     4,   218,   465,     4,   218,   218,
-     218,   489,     4,     4,   405,   218,     4,   216,     4,   216,
-     216,     4,     4,   610,     4,   216,   629,     4,     7,   215,
-       7,     7,     7,     7,     5,   215,   181,   182,   183,   184,
-     218,   281,   215,   215,     5,     5,     5,   215,   215,    95,
-      96,    97,    98,   290,     5,   237,   239,   215,     5,     5,
-       5,     7,     5,     5,     5,     7,     7,     7,     7,     7,
-       7,   215,   215,     5,     7,     5,   246,     5,     5,   215,
-     215,   215,   246,   215,     7,   215,   215,   215,   246,   246,
-     246,   215,   215,   215,   215,   215,   215,   215,   215,   215,
-     215,   215,   239,   215,   215,   178,   179,   621,   180,     5,
-     235,   258,   628,   313,    24,    28,    29,    30,    31,    32,
-      33,    34,    35,    36,    37,    38,    39,    40,    41,    45,
-      46,    47,    48,    49,    50,   250,   331,   332,   333,   336,
-     338,   340,   342,   343,   345,   346,   347,   348,   349,   350,
-     351,   352,   353,   356,   357,   358,   359,   361,   363,   365,
-     331,     7,   327,   328,   329,     7,   422,   423,   424,     7,
-     457,   458,   459,     7,   481,   482,   483,     7,   447,   448,
-     449,   134,   215,   377,   378,   379,   380,   244,   135,   137,
-     379,   383,   384,   385,   386,   122,   123,   369,   370,   371,
-     373,     7,   562,   563,     7,   534,   535,   536,     7,   398,
-     399,   400,   143,   144,   145,   146,   147,   148,   412,   413,
-     414,   415,   416,   417,   418,   419,    24,   153,   154,   155,
-     156,   250,   345,   511,   513,   576,   577,   578,   581,   582,
-     584,   585,   159,   160,   161,   250,   391,   392,   393,   394,
-     395,   511,   513,   163,   164,   250,   511,   513,   589,   590,
-     591,   593,   166,   167,   168,   215,   511,   513,   597,   598,
-     599,   600,   602,   603,   609,     7,   635,   636,   200,   250,
-     659,   660,   661,   247,     7,   500,   501,   502,     7,   517,
-     518,   519,   543,   559,   327,     8,     8,     8,   334,   337,
-     339,   341,     4,     4,     4,     4,     4,     4,     4,     4,
-       4,     4,   354,     4,     4,   360,   362,   364,   366,     3,
-       8,     8,   330,     6,     3,   425,     6,     3,   460,     6,
-       3,   484,     6,     3,   450,     6,     3,     3,     6,     6,
-       3,     6,   372,   374,     3,     8,   564,     3,     6,   537,
-       6,     3,   401,     6,     3,     4,     4,     4,     4,     4,
-       4,     3,     8,   579,   583,     4,     4,     4,     3,     8,
-       4,     4,     4,     3,     8,   592,   594,     3,     8,     4,
-     601,     4,   604,     3,     8,     8,   637,     3,     6,     4,
-       3,     8,   215,   248,   249,   503,     6,     3,   520,     6,
-       3,     8,     6,     4,     4,     4,     4,   216,   218,   216,
-     218,   216,   216,   216,   216,   216,   216,     4,   218,   216,
-       4,     4,     4,     4,   332,   331,   329,   428,   424,   463,
-     459,   487,   483,   250,   262,   263,   264,   265,   266,   267,
-     268,   269,   270,   271,   272,   273,   274,   276,   277,   278,
-     279,   282,   284,   286,   287,   288,   291,   292,   294,   296,
-     302,   304,   343,   420,   432,   434,   436,   438,   440,   441,
-     442,   444,   451,   452,   479,   511,   513,   557,   449,   378,
-     384,     4,     4,   370,   126,   127,   128,   250,   262,   263,
-     264,   265,   266,   267,   343,   479,   511,   513,   565,   566,
-     567,   568,   569,   571,   573,   563,   540,   536,   404,   400,
-     216,   216,   216,   216,   216,   216,   413,     4,     4,   216,
-     216,   216,   577,   218,   216,   216,   392,     4,     4,   590,
-     218,     4,   216,     4,   598,   191,   193,   194,   250,   343,
-     511,   513,   638,   639,   640,   641,   643,   636,   218,   660,
-       6,     3,   506,   502,   523,   519,    25,    26,    27,   335,
-     215,   215,   215,    42,    43,    44,   355,   215,   215,   215,
-     215,     8,     8,     8,     8,     3,     8,   215,   215,   570,
-     572,     4,     8,     3,     8,     8,   150,   151,   152,   580,
-     215,   215,   215,   215,   235,   644,     4,   642,     3,     8,
-     215,     8,     8,   452,     4,     4,   218,   567,     4,   216,
-       4,   639,   215,   215,     5,   215,     7,   645,   646,   647,
-       3,     6,   192,   195,   196,   197,   198,   648,   649,   650,
-     652,   653,   654,   655,   646,   651,     4,     4,     4,   656,
-       3,     8,     4,   218,   216,   216,     4,   649,   215,   215
+     218,   218,   218,     4,     4,   259,     4,   218,   218,   216,
+     216,   314,     4,     4,     4,     4,     4,   216,   218,     4,
+       4,     4,   429,     4,   216,   507,     4,   216,     4,   216,
+     216,   524,     4,     4,     4,     4,     4,     4,     4,   542,
+       4,     4,   216,     4,     4,     4,   218,   465,     4,   218,
+     218,   218,   489,     4,     4,   405,   218,     4,   216,     4,
+     216,   216,     4,     4,   610,     4,   216,   629,     4,     7,
+     215,     7,     7,     7,     7,     5,   215,   181,   182,   183,
+     184,   218,   281,   215,   215,     5,     5,     5,   215,   215,
+      95,    96,    97,    98,   290,     5,   237,   239,   215,     5,
+       5,     5,     7,     5,     5,     5,     7,     7,     7,     7,
+       7,     7,   215,   215,     5,     7,     5,   246,     5,     5,
+     215,   215,   215,   246,   215,     7,   215,   215,   215,   246,
+     246,   246,   215,   215,   215,   215,   215,   215,   215,   215,
+     215,   215,   215,   239,   215,   215,   178,   179,   621,   180,
+       5,   235,   258,   628,   313,    24,    28,    29,    30,    31,
+      32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
+      45,    46,    47,    48,    49,    50,   250,   331,   332,   333,
+     336,   338,   340,   342,   343,   345,   346,   347,   348,   349,
+     350,   351,   352,   353,   356,   357,   358,   359,   361,   363,
+     365,   331,     7,   327,   328,   329,     7,   422,   423,   424,
+       7,   457,   458,   459,     7,   481,   482,   483,     7,   447,
+     448,   449,   134,   215,   377,   378,   379,   380,   244,   135,
+     137,   379,   383,   384,   385,   386,   122,   123,   369,   370,
+     371,   373,     7,   562,   563,     7,   534,   535,   536,     7,
+     398,   399,   400,   143,   144,   145,   146,   147,   148,   412,
+     413,   414,   415,   416,   417,   418,   419,    24,   153,   154,
+     155,   156,   250,   345,   511,   513,   576,   577,   578,   581,
+     582,   584,   585,   159,   160,   161,   250,   391,   392,   393,
+     394,   395,   511,   513,   163,   164,   250,   511,   513,   589,
+     590,   591,   593,   166,   167,   168,   215,   511,   513,   597,
+     598,   599,   600,   602,   603,   609,     7,   635,   636,   200,
+     250,   659,   660,   661,   247,     7,   500,   501,   502,     7,
+     517,   518,   519,   543,   559,   327,     8,     8,     8,   334,
+     337,   339,   341,     4,     4,     4,     4,     4,     4,     4,
+       4,     4,     4,   354,     4,     4,   360,   362,   364,   366,
+       3,     8,     8,   330,     6,     3,   425,     6,     3,   460,
+       6,     3,   484,     6,     3,   450,     6,     3,     3,     6,
+       6,     3,     6,   372,   374,     3,     8,   564,     3,     6,
+     537,     6,     3,   401,     6,     3,     4,     4,     4,     4,
+       4,     4,     3,     8,   579,   583,     4,     4,     4,     3,
+       8,     4,     4,     4,     3,     8,   592,   594,     3,     8,
+       4,   601,     4,   604,     3,     8,     8,   637,     3,     6,
+       4,     3,     8,   215,   248,   249,   503,     6,     3,   520,
+       6,     3,     8,     6,     4,     4,     4,     4,   216,   218,
+     216,   218,   216,   216,   216,   216,   216,   216,     4,   218,
+     216,     4,     4,     4,     4,   332,   331,   329,   428,   424,
+     463,   459,   487,   483,   250,   262,   263,   264,   265,   266,
+     267,   268,   269,   270,   271,   272,   273,   274,   276,   277,
+     278,   279,   282,   284,   286,   287,   288,   291,   292,   294,
+     296,   302,   304,   343,   420,   432,   434,   436,   438,   440,
+     441,   442,   444,   451,   452,   479,   511,   513,   557,   449,
+     378,   384,     4,     4,   370,   126,   127,   128,   250,   262,
+     263,   264,   265,   266,   267,   343,   479,   511,   513,   565,
+     566,   567,   568,   569,   571,   573,   563,   540,   536,   404,
+     400,   216,   216,   216,   216,   216,   216,   413,     4,     4,
+     216,   216,   216,   577,   218,   216,   216,   392,     4,     4,
+     590,   218,     4,   216,     4,   598,   191,   193,   194,   250,
+     343,   511,   513,   638,   639,   640,   641,   643,   636,   218,
+     660,     6,     3,   506,   502,   523,   519,    25,    26,    27,
+     335,   215,   215,   215,    42,    43,    44,   355,   215,   215,
+     215,   215,     8,     8,     8,     8,     3,     8,   215,   215,
+     570,   572,     4,     8,     3,     8,     8,   150,   151,   152,
+     580,   215,   215,   215,   215,   235,   644,     4,   642,     3,
+       8,   215,     8,     8,   452,     4,     4,   218,   567,     4,
+     216,     4,   639,   215,   215,     5,   215,     7,   645,   646,
+     647,     3,     6,   192,   195,   196,   197,   198,   648,   649,
+     650,   652,   653,   654,   655,   646,   651,     4,     4,     4,
+     656,     3,     8,     4,   218,   216,   216,     4,   649,   215,
+     215
   };
 
   const short
@@ -5963,30 +5966,31 @@ namespace isc { namespace dhcp {
      507,   507,   507,   507,   507,   509,   508,   510,   512,   511,
      514,   513,   516,   515,   517,   517,   518,   518,   518,   520,
      519,   522,   521,   523,   523,   523,   524,   524,   524,   524,
-     524,   524,   524,   524,   524,   524,   524,   526,   525,   527,
-     529,   528,   530,   531,   533,   532,   534,   534,   535,   535,
-     535,   537,   536,   539,   538,   540,   540,   541,   541,   541,
-     542,   542,   542,   542,   542,   542,   542,   542,   542,   542,
-     542,   544,   543,   546,   545,   548,   547,   550,   549,   552,
-     551,   554,   553,   556,   555,   558,   557,   559,   561,   560,
-     562,   562,   562,   564,   563,   565,   565,   566,   566,   566,
-     567,   567,   567,   567,   567,   567,   567,   567,   567,   567,
-     567,   567,   567,   567,   568,   570,   569,   572,   571,   573,
-     575,   574,   576,   576,   576,   577,   577,   577,   577,   577,
-     577,   577,   577,   577,   579,   578,   580,   580,   580,   581,
-     583,   582,   584,   585,   586,   588,   587,   589,   589,   589,
-     590,   590,   590,   590,   590,   592,   591,   594,   593,   596,
-     595,   597,   597,   597,   598,   598,   598,   598,   598,   598,
-     599,   601,   600,   602,   604,   603,   606,   605,   608,   607,
-     609,   609,   609,   610,   610,   610,   610,   610,   610,   610,
-     610,   610,   610,   610,   611,   613,   612,   614,   616,   615,
-     617,   618,   620,   619,   621,   621,   623,   622,   625,   624,
-     627,   626,   628,   628,   628,   629,   629,   631,   630,   632,
-     634,   633,   635,   635,   635,   637,   636,   638,   638,   638,
-     639,   639,   639,   639,   639,   639,   639,   640,   642,   641,
-     644,   643,   645,   645,   645,   647,   646,   648,   648,   648,
-     649,   649,   649,   649,   649,   651,   650,   652,   653,   654,
-     656,   655,   658,   657,   659,   659,   659,   660,   660,   661
+     524,   524,   524,   524,   524,   524,   524,   524,   526,   525,
+     527,   529,   528,   530,   531,   533,   532,   534,   534,   535,
+     535,   535,   537,   536,   539,   538,   540,   540,   541,   541,
+     541,   542,   542,   542,   542,   542,   542,   542,   542,   542,
+     542,   542,   544,   543,   546,   545,   548,   547,   550,   549,
+     552,   551,   554,   553,   556,   555,   558,   557,   559,   561,
+     560,   562,   562,   562,   564,   563,   565,   565,   566,   566,
+     566,   567,   567,   567,   567,   567,   567,   567,   567,   567,
+     567,   567,   567,   567,   567,   568,   570,   569,   572,   571,
+     573,   575,   574,   576,   576,   576,   577,   577,   577,   577,
+     577,   577,   577,   577,   577,   579,   578,   580,   580,   580,
+     581,   583,   582,   584,   585,   586,   588,   587,   589,   589,
+     589,   590,   590,   590,   590,   590,   592,   591,   594,   593,
+     596,   595,   597,   597,   597,   598,   598,   598,   598,   598,
+     598,   599,   601,   600,   602,   604,   603,   606,   605,   608,
+     607,   609,   609,   609,   610,   610,   610,   610,   610,   610,
+     610,   610,   610,   610,   610,   611,   613,   612,   614,   616,
+     615,   617,   618,   620,   619,   621,   621,   623,   622,   625,
+     624,   627,   626,   628,   628,   628,   629,   629,   631,   630,
+     632,   634,   633,   635,   635,   635,   637,   636,   638,   638,
+     638,   639,   639,   639,   639,   639,   639,   639,   640,   642,
+     641,   644,   643,   645,   645,   645,   647,   646,   648,   648,
+     648,   649,   649,   649,   649,   649,   651,   650,   652,   653,
+     654,   656,   655,   658,   657,   659,   659,   659,   660,   660,
+     661
   };
 
   const signed char
@@ -6055,30 +6059,31 @@ namespace isc { namespace dhcp {
        1,     1,     1,     1,     1,     0,     4,     3,     0,     4,
        0,     4,     0,     6,     0,     1,     1,     3,     2,     0,
        4,     0,     4,     1,     3,     2,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     1,     1,     0,     4,     3,
-       0,     4,     3,     3,     0,     6,     0,     1,     1,     3,
-       2,     0,     4,     0,     4,     0,     1,     1,     3,     2,
-       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,     0,     6,
-       1,     3,     2,     0,     4,     0,     1,     1,     3,     2,
-       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     1,     0,     4,     0,     4,     3,
+       1,     1,     1,     1,     1,     1,     1,     1,     0,     4,
+       3,     0,     4,     3,     3,     0,     6,     0,     1,     1,
+       3,     2,     0,     4,     0,     4,     0,     1,     1,     3,
+       2,     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,     0,
+       6,     1,     3,     2,     0,     4,     0,     1,     1,     3,
+       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     1,     0,     4,     0,     4,
+       3,     0,     6,     1,     3,     2,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     0,     4,     1,     1,     1,
+       3,     0,     4,     3,     3,     3,     0,     6,     1,     3,
+       2,     1,     1,     1,     1,     1,     0,     4,     0,     4,
        0,     6,     1,     3,     2,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     0,     4,     1,     1,     1,     3,
-       0,     4,     3,     3,     3,     0,     6,     1,     3,     2,
-       1,     1,     1,     1,     1,     0,     4,     0,     4,     0,
-       6,     1,     3,     2,     1,     1,     1,     1,     1,     1,
-       3,     0,     4,     3,     0,     4,     0,     6,     0,     4,
-       1,     3,     2,     1,     1,     1,     1,     1,     1,     1,
-       1,     1,     1,     1,     3,     0,     4,     3,     0,     4,
-       3,     3,     0,     4,     1,     1,     0,     4,     0,     6,
-       0,     4,     1,     3,     2,     1,     1,     0,     6,     3,
-       0,     6,     1,     3,     2,     0,     4,     1,     3,     2,
-       1,     1,     1,     1,     1,     1,     1,     3,     0,     4,
-       0,     6,     1,     3,     2,     0,     4,     1,     3,     2,
-       1,     1,     1,     1,     1,     0,     4,     3,     3,     3,
-       0,     4,     0,     6,     1,     3,     2,     1,     1,     3
+       1,     3,     0,     4,     3,     0,     4,     0,     6,     0,
+       4,     1,     3,     2,     1,     1,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     3,     0,     4,     3,     0,
+       4,     3,     3,     0,     4,     1,     1,     0,     4,     0,
+       6,     0,     4,     1,     3,     2,     1,     1,     0,     6,
+       3,     0,     6,     1,     3,     2,     0,     4,     1,     3,
+       2,     1,     1,     1,     1,     1,     1,     1,     3,     0,
+       4,     0,     6,     1,     3,     2,     0,     4,     1,     3,
+       2,     1,     1,     1,     1,     1,     0,     4,     3,     3,
+       3,     0,     4,     0,     6,     1,     3,     2,     1,     1,
+       3
   };
 
 
@@ -6342,30 +6347,31 @@ namespace isc { namespace dhcp {
     2122,  2123,  2124,  2125,  2126,  2129,  2129,  2138,  2144,  2144,
     2169,  2169,  2199,  2199,  2212,  2213,  2216,  2217,  2218,  2223,
     2223,  2235,  2235,  2247,  2248,  2249,  2254,  2255,  2256,  2257,
-    2258,  2259,  2260,  2261,  2262,  2263,  2264,  2267,  2267,  2276,
-    2282,  2282,  2291,  2297,  2306,  2306,  2317,  2318,  2321,  2322,
-    2323,  2328,  2328,  2337,  2337,  2346,  2347,  2350,  2351,  2352,
-    2358,  2359,  2360,  2361,  2362,  2363,  2364,  2365,  2366,  2367,
-    2368,  2371,  2371,  2382,  2382,  2393,  2393,  2402,  2402,  2411,
-    2411,  2420,  2420,  2429,  2429,  2443,  2443,  2454,  2460,  2460,
-    2471,  2472,  2473,  2478,  2478,  2488,  2489,  2492,  2493,  2494,
-    2499,  2500,  2501,  2502,  2503,  2504,  2505,  2506,  2507,  2508,
-    2509,  2510,  2511,  2512,  2515,  2517,  2517,  2526,  2526,  2535,
-    2544,  2544,  2557,  2558,  2559,  2564,  2565,  2566,  2567,  2568,
-    2569,  2570,  2571,  2572,  2575,  2575,  2583,  2584,  2585,  2588,
-    2594,  2594,  2603,  2609,  2617,  2625,  2625,  2636,  2637,  2638,
-    2643,  2644,  2645,  2646,  2647,  2650,  2650,  2659,  2659,  2671,
-    2671,  2684,  2685,  2686,  2691,  2692,  2693,  2694,  2695,  2696,
-    2699,  2705,  2705,  2714,  2720,  2720,  2730,  2730,  2743,  2743,
-    2753,  2754,  2755,  2760,  2761,  2762,  2763,  2764,  2765,  2766,
-    2767,  2768,  2769,  2770,  2773,  2779,  2779,  2788,  2794,  2794,
-    2803,  2809,  2815,  2815,  2824,  2825,  2828,  2828,  2839,  2839,
-    2851,  2851,  2861,  2862,  2863,  2869,  2870,  2873,  2873,  2884,
-    2892,  2892,  2905,  2906,  2907,  2913,  2913,  2921,  2922,  2923,
-    2928,  2929,  2930,  2931,  2932,  2933,  2934,  2937,  2943,  2943,
-    2952,  2952,  2963,  2964,  2965,  2970,  2970,  2978,  2979,  2980,
-    2985,  2986,  2987,  2988,  2989,  2992,  2992,  3001,  3007,  3013,
-    3019,  3019,  3028,  3028,  3039,  3040,  3041,  3046,  3047,  3050
+    2258,  2259,  2260,  2261,  2262,  2263,  2264,  2265,  2268,  2268,
+    2277,  2283,  2283,  2292,  2298,  2307,  2307,  2318,  2319,  2322,
+    2323,  2324,  2329,  2329,  2338,  2338,  2347,  2348,  2351,  2352,
+    2353,  2359,  2360,  2361,  2362,  2363,  2364,  2365,  2366,  2367,
+    2368,  2369,  2372,  2372,  2383,  2383,  2394,  2394,  2403,  2403,
+    2412,  2412,  2421,  2421,  2430,  2430,  2444,  2444,  2455,  2461,
+    2461,  2472,  2473,  2474,  2479,  2479,  2489,  2490,  2493,  2494,
+    2495,  2500,  2501,  2502,  2503,  2504,  2505,  2506,  2507,  2508,
+    2509,  2510,  2511,  2512,  2513,  2516,  2518,  2518,  2527,  2527,
+    2536,  2545,  2545,  2558,  2559,  2560,  2565,  2566,  2567,  2568,
+    2569,  2570,  2571,  2572,  2573,  2576,  2576,  2584,  2585,  2586,
+    2589,  2595,  2595,  2604,  2610,  2618,  2626,  2626,  2637,  2638,
+    2639,  2644,  2645,  2646,  2647,  2648,  2651,  2651,  2660,  2660,
+    2672,  2672,  2685,  2686,  2687,  2692,  2693,  2694,  2695,  2696,
+    2697,  2700,  2706,  2706,  2715,  2721,  2721,  2731,  2731,  2744,
+    2744,  2754,  2755,  2756,  2761,  2762,  2763,  2764,  2765,  2766,
+    2767,  2768,  2769,  2770,  2771,  2774,  2780,  2780,  2789,  2795,
+    2795,  2804,  2810,  2816,  2816,  2825,  2826,  2829,  2829,  2840,
+    2840,  2852,  2852,  2862,  2863,  2864,  2870,  2871,  2874,  2874,
+    2885,  2893,  2893,  2906,  2907,  2908,  2914,  2914,  2922,  2923,
+    2924,  2929,  2930,  2931,  2932,  2933,  2934,  2935,  2938,  2944,
+    2944,  2953,  2953,  2964,  2965,  2966,  2971,  2971,  2979,  2980,
+    2981,  2986,  2987,  2988,  2989,  2990,  2993,  2993,  3002,  3008,
+    3014,  3020,  3020,  3029,  3029,  3040,  3041,  3042,  3047,  3048,
+    3051
   };
 
   void
@@ -6398,9 +6404,9 @@ namespace isc { namespace dhcp {
 
 #line 14 "dhcp6_parser.yy"
 } } // isc::dhcp
-#line 6402 "dhcp6_parser.cc"
+#line 6408 "dhcp6_parser.cc"
 
-#line 3056 "dhcp6_parser.yy"
+#line 3057 "dhcp6_parser.yy"
 
 
 void
index 93a16b466f1bc11d95891d1238130a53c55fb3af..9562d55fdffea75287fe0c959d12d1be1f04cb75 100644 (file)
@@ -5413,7 +5413,7 @@ switch (yykind)
     /// Constants.
     enum
     {
-      yylast_ = 1346,     ///< Last index in yytable_.
+      yylast_ = 1347,     ///< Last index in yytable_.
       yynnts_ = 443,  ///< Number of nonterminal symbols.
       yyfinal_ = 30 ///< Termination state number.
     };