From: Francis Dupont Date: Thu, 7 Aug 2025 13:35:41 +0000 (+0200) Subject: [#226] Finished adaptive-lease-time-threshold global X-Git-Tag: Kea-3.1.1~28 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b55feb15a8b06b7e5c57ea87203a07930f1a024d;p=thirdparty%2Fkea.git [#226] Finished adaptive-lease-time-threshold global --- diff --git a/doc/examples/kea6/all-keys.json b/doc/examples/kea6/all-keys.json index 5987798de2..7b857daa94 100644 --- a/doc/examples/kea6/all-keys.json +++ b/doc/examples/kea6/all-keys.json @@ -1414,8 +1414,8 @@ // Global cache maximum. "cache-max-age": 1000, - // Adaptive lease time threshold = 1. (disabled). - "adaptive-lease-time-threshold": 1., + // Adaptive lease time threshold = 1.0 (disabled) + "adaptive-lease-time-threshold": 1.0, // String of zero or more characters with which to replace each // invalid character in the Client FQDN. The default diff --git a/src/bin/dhcp6/dhcp6_parser.cc b/src/bin/dhcp6/dhcp6_parser.cc index e9129f32e0..0f45bb2405 100644 --- a/src/bin/dhcp6/dhcp6_parser.cc +++ b/src/bin/dhcp6/dhcp6_parser.cc @@ -1142,8 +1142,8 @@ namespace isc { namespace dhcp { #line 1143 "dhcp6_parser.cc" break; - case 144: // $@21: %empty -#line 602 "dhcp6_parser.yy" + case 145: // $@21: %empty +#line 603 "dhcp6_parser.yy" { ctx.unique("data-directory", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1151,8 +1151,8 @@ namespace isc { namespace dhcp { #line 1152 "dhcp6_parser.cc" break; - case 145: // data_directory: "data-directory" $@21 ":" "constant string" -#line 605 "dhcp6_parser.yy" + case 146: // data_directory: "data-directory" $@21 ":" "constant string" +#line 606 "dhcp6_parser.yy" { ElementPtr datadir(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.warning(yystack_[2].location, "data-directory is deprecated and will be ignored"); @@ -1162,8 +1162,8 @@ namespace isc { namespace dhcp { #line 1163 "dhcp6_parser.cc" break; - case 146: // preferred_lifetime: "preferred-lifetime" ":" "integer" -#line 612 "dhcp6_parser.yy" + case 147: // preferred_lifetime: "preferred-lifetime" ":" "integer" +#line 613 "dhcp6_parser.yy" { ctx.unique("preferred-lifetime", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1172,8 +1172,8 @@ namespace isc { namespace dhcp { #line 1173 "dhcp6_parser.cc" break; - case 147: // min_preferred_lifetime: "min-preferred-lifetime" ":" "integer" -#line 618 "dhcp6_parser.yy" + case 148: // min_preferred_lifetime: "min-preferred-lifetime" ":" "integer" +#line 619 "dhcp6_parser.yy" { ctx.unique("min-preferred-lifetime", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1182,8 +1182,8 @@ namespace isc { namespace dhcp { #line 1183 "dhcp6_parser.cc" break; - case 148: // max_preferred_lifetime: "max-preferred-lifetime" ":" "integer" -#line 624 "dhcp6_parser.yy" + case 149: // max_preferred_lifetime: "max-preferred-lifetime" ":" "integer" +#line 625 "dhcp6_parser.yy" { ctx.unique("max-preferred-lifetime", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1192,8 +1192,8 @@ namespace isc { namespace dhcp { #line 1193 "dhcp6_parser.cc" break; - case 149: // valid_lifetime: "valid-lifetime" ":" "integer" -#line 630 "dhcp6_parser.yy" + case 150: // valid_lifetime: "valid-lifetime" ":" "integer" +#line 631 "dhcp6_parser.yy" { ctx.unique("valid-lifetime", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1202,8 +1202,8 @@ namespace isc { namespace dhcp { #line 1203 "dhcp6_parser.cc" break; - case 150: // min_valid_lifetime: "min-valid-lifetime" ":" "integer" -#line 636 "dhcp6_parser.yy" + case 151: // min_valid_lifetime: "min-valid-lifetime" ":" "integer" +#line 637 "dhcp6_parser.yy" { ctx.unique("min-valid-lifetime", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1212,8 +1212,8 @@ namespace isc { namespace dhcp { #line 1213 "dhcp6_parser.cc" break; - case 151: // max_valid_lifetime: "max-valid-lifetime" ":" "integer" -#line 642 "dhcp6_parser.yy" + case 152: // max_valid_lifetime: "max-valid-lifetime" ":" "integer" +#line 643 "dhcp6_parser.yy" { ctx.unique("max-valid-lifetime", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1222,8 +1222,8 @@ namespace isc { namespace dhcp { #line 1223 "dhcp6_parser.cc" break; - case 152: // renew_timer: "renew-timer" ":" "integer" -#line 648 "dhcp6_parser.yy" + case 153: // renew_timer: "renew-timer" ":" "integer" +#line 649 "dhcp6_parser.yy" { ctx.unique("renew-timer", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1232,8 +1232,8 @@ namespace isc { namespace dhcp { #line 1233 "dhcp6_parser.cc" break; - case 153: // rebind_timer: "rebind-timer" ":" "integer" -#line 654 "dhcp6_parser.yy" + case 154: // rebind_timer: "rebind-timer" ":" "integer" +#line 655 "dhcp6_parser.yy" { ctx.unique("rebind-timer", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1242,8 +1242,8 @@ namespace isc { namespace dhcp { #line 1243 "dhcp6_parser.cc" break; - case 154: // calculate_tee_times: "calculate-tee-times" ":" "boolean" -#line 660 "dhcp6_parser.yy" + case 155: // calculate_tee_times: "calculate-tee-times" ":" "boolean" +#line 661 "dhcp6_parser.yy" { ctx.unique("calculate-tee-times", ctx.loc2pos(yystack_[2].location)); ElementPtr ctt(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1252,8 +1252,8 @@ namespace isc { namespace dhcp { #line 1253 "dhcp6_parser.cc" break; - case 155: // t1_percent: "t1-percent" ":" "floating point" -#line 666 "dhcp6_parser.yy" + case 156: // t1_percent: "t1-percent" ":" "floating point" +#line 667 "dhcp6_parser.yy" { ctx.unique("t1-percent", ctx.loc2pos(yystack_[2].location)); ElementPtr t1(new DoubleElement(yystack_[0].value.as < double > (), ctx.loc2pos(yystack_[0].location))); @@ -1262,8 +1262,8 @@ namespace isc { namespace dhcp { #line 1263 "dhcp6_parser.cc" break; - case 156: // t2_percent: "t2-percent" ":" "floating point" -#line 672 "dhcp6_parser.yy" + case 157: // t2_percent: "t2-percent" ":" "floating point" +#line 673 "dhcp6_parser.yy" { ctx.unique("t2-percent", ctx.loc2pos(yystack_[2].location)); ElementPtr t2(new DoubleElement(yystack_[0].value.as < double > (), ctx.loc2pos(yystack_[0].location))); @@ -1272,8 +1272,8 @@ namespace isc { namespace dhcp { #line 1273 "dhcp6_parser.cc" break; - case 157: // cache_threshold: "cache-threshold" ":" "floating point" -#line 678 "dhcp6_parser.yy" + case 158: // cache_threshold: "cache-threshold" ":" "floating point" +#line 679 "dhcp6_parser.yy" { ctx.unique("cache-threshold", ctx.loc2pos(yystack_[2].location)); ElementPtr ct(new DoubleElement(yystack_[0].value.as < double > (), ctx.loc2pos(yystack_[0].location))); @@ -1282,8 +1282,8 @@ namespace isc { namespace dhcp { #line 1283 "dhcp6_parser.cc" break; - case 158: // cache_max_age: "cache-max-age" ":" "integer" -#line 684 "dhcp6_parser.yy" + case 159: // cache_max_age: "cache-max-age" ":" "integer" +#line 685 "dhcp6_parser.yy" { ctx.unique("cache-max-age", ctx.loc2pos(yystack_[2].location)); ElementPtr cm(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1292,8 +1292,8 @@ namespace isc { namespace dhcp { #line 1293 "dhcp6_parser.cc" break; - case 159: // adaptive_lease_time_threshold: "adaptive-lease-time-threshold" ":" "floating point" -#line 690 "dhcp6_parser.yy" + case 160: // adaptive_lease_time_threshold: "adaptive-lease-time-threshold" ":" "floating point" +#line 691 "dhcp6_parser.yy" { ctx.unique("adaptive-lease-time-threshold", ctx.loc2pos(yystack_[2].location)); ElementPtr altt(new DoubleElement(yystack_[0].value.as < double > (), ctx.loc2pos(yystack_[0].location))); @@ -1302,8 +1302,8 @@ namespace isc { namespace dhcp { #line 1303 "dhcp6_parser.cc" break; - case 160: // decline_probation_period: "decline-probation-period" ":" "integer" -#line 696 "dhcp6_parser.yy" + case 161: // decline_probation_period: "decline-probation-period" ":" "integer" +#line 697 "dhcp6_parser.yy" { ctx.unique("decline-probation-period", ctx.loc2pos(yystack_[2].location)); ElementPtr dpp(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1312,8 +1312,8 @@ namespace isc { namespace dhcp { #line 1313 "dhcp6_parser.cc" break; - case 161: // ddns_send_updates: "ddns-send-updates" ":" "boolean" -#line 702 "dhcp6_parser.yy" + case 162: // ddns_send_updates: "ddns-send-updates" ":" "boolean" +#line 703 "dhcp6_parser.yy" { ctx.unique("ddns-send-updates", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1322,8 +1322,8 @@ namespace isc { namespace dhcp { #line 1323 "dhcp6_parser.cc" break; - case 162: // ddns_override_no_update: "ddns-override-no-update" ":" "boolean" -#line 708 "dhcp6_parser.yy" + case 163: // ddns_override_no_update: "ddns-override-no-update" ":" "boolean" +#line 709 "dhcp6_parser.yy" { ctx.unique("ddns-override-no-update", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1332,8 +1332,8 @@ namespace isc { namespace dhcp { #line 1333 "dhcp6_parser.cc" break; - case 163: // ddns_override_client_update: "ddns-override-client-update" ":" "boolean" -#line 714 "dhcp6_parser.yy" + case 164: // ddns_override_client_update: "ddns-override-client-update" ":" "boolean" +#line 715 "dhcp6_parser.yy" { ctx.unique("ddns-override-client-update", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1342,8 +1342,8 @@ namespace isc { namespace dhcp { #line 1343 "dhcp6_parser.cc" break; - case 164: // $@22: %empty -#line 720 "dhcp6_parser.yy" + case 165: // $@22: %empty +#line 721 "dhcp6_parser.yy" { ctx.enter(ctx.REPLACE_CLIENT_NAME); ctx.unique("ddns-replace-client-name", ctx.loc2pos(yystack_[0].location)); @@ -1351,8 +1351,8 @@ namespace isc { namespace dhcp { #line 1352 "dhcp6_parser.cc" break; - case 165: // ddns_replace_client_name: "ddns-replace-client-name" $@22 ":" ddns_replace_client_name_value -#line 723 "dhcp6_parser.yy" + case 166: // ddns_replace_client_name: "ddns-replace-client-name" $@22 ":" ddns_replace_client_name_value +#line 724 "dhcp6_parser.yy" { ctx.stack_.back()->set("ddns-replace-client-name", yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -1360,40 +1360,40 @@ namespace isc { namespace dhcp { #line 1361 "dhcp6_parser.cc" break; - case 166: // ddns_replace_client_name_value: "when-present" -#line 729 "dhcp6_parser.yy" + case 167: // ddns_replace_client_name_value: "when-present" +#line 730 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("when-present", ctx.loc2pos(yystack_[0].location))); } #line 1369 "dhcp6_parser.cc" break; - case 167: // ddns_replace_client_name_value: "never" -#line 732 "dhcp6_parser.yy" + case 168: // ddns_replace_client_name_value: "never" +#line 733 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("never", ctx.loc2pos(yystack_[0].location))); } #line 1377 "dhcp6_parser.cc" break; - case 168: // ddns_replace_client_name_value: "always" -#line 735 "dhcp6_parser.yy" + case 169: // ddns_replace_client_name_value: "always" +#line 736 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("always", ctx.loc2pos(yystack_[0].location))); } #line 1385 "dhcp6_parser.cc" break; - case 169: // ddns_replace_client_name_value: "when-not-present" -#line 738 "dhcp6_parser.yy" + case 170: // ddns_replace_client_name_value: "when-not-present" +#line 739 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("when-not-present", ctx.loc2pos(yystack_[0].location))); } #line 1393 "dhcp6_parser.cc" break; - case 170: // ddns_replace_client_name_value: "boolean" -#line 741 "dhcp6_parser.yy" + case 171: // ddns_replace_client_name_value: "boolean" +#line 742 "dhcp6_parser.yy" { error(yystack_[0].location, "boolean values for the ddns-replace-client-name are " "no longer supported"); @@ -1401,8 +1401,8 @@ namespace isc { namespace dhcp { #line 1402 "dhcp6_parser.cc" break; - case 171: // $@23: %empty -#line 747 "dhcp6_parser.yy" + case 172: // $@23: %empty +#line 748 "dhcp6_parser.yy" { ctx.unique("ddns-generated-prefix", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1410,8 +1410,8 @@ namespace isc { namespace dhcp { #line 1411 "dhcp6_parser.cc" break; - case 172: // ddns_generated_prefix: "ddns-generated-prefix" $@23 ":" "constant string" -#line 750 "dhcp6_parser.yy" + case 173: // ddns_generated_prefix: "ddns-generated-prefix" $@23 ":" "constant string" +#line 751 "dhcp6_parser.yy" { ElementPtr s(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("ddns-generated-prefix", s); @@ -1420,8 +1420,8 @@ namespace isc { namespace dhcp { #line 1421 "dhcp6_parser.cc" break; - case 173: // $@24: %empty -#line 756 "dhcp6_parser.yy" + case 174: // $@24: %empty +#line 757 "dhcp6_parser.yy" { ctx.unique("ddns-qualifying-suffix", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1429,8 +1429,8 @@ namespace isc { namespace dhcp { #line 1430 "dhcp6_parser.cc" break; - case 174: // ddns_qualifying_suffix: "ddns-qualifying-suffix" $@24 ":" "constant string" -#line 759 "dhcp6_parser.yy" + case 175: // ddns_qualifying_suffix: "ddns-qualifying-suffix" $@24 ":" "constant string" +#line 760 "dhcp6_parser.yy" { ElementPtr s(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("ddns-qualifying-suffix", s); @@ -1439,8 +1439,8 @@ namespace isc { namespace dhcp { #line 1440 "dhcp6_parser.cc" break; - case 175: // ddns_update_on_renew: "ddns-update-on-renew" ":" "boolean" -#line 765 "dhcp6_parser.yy" + case 176: // ddns_update_on_renew: "ddns-update-on-renew" ":" "boolean" +#line 766 "dhcp6_parser.yy" { ctx.unique("ddns-update-on-renew", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1449,8 +1449,8 @@ namespace isc { namespace dhcp { #line 1450 "dhcp6_parser.cc" break; - case 176: // ddns_use_conflict_resolution: "ddns-use-conflict-resolution" ":" "boolean" -#line 774 "dhcp6_parser.yy" + case 177: // ddns_use_conflict_resolution: "ddns-use-conflict-resolution" ":" "boolean" +#line 775 "dhcp6_parser.yy" { ctx.unique("ddns-use-conflict-resolution", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1463,8 +1463,8 @@ namespace isc { namespace dhcp { #line 1464 "dhcp6_parser.cc" break; - case 177: // $@25: %empty -#line 784 "dhcp6_parser.yy" + case 178: // $@25: %empty +#line 785 "dhcp6_parser.yy" { ctx.unique("ddns-conflict-resolution-mode", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.DDNS_CONFLICT_RESOLUTION_MODE); @@ -1472,8 +1472,8 @@ namespace isc { namespace dhcp { #line 1473 "dhcp6_parser.cc" break; - case 178: // ddns_conflict_resolution_mode: "ddns-conflict-resolution-mode" $@25 ":" ddns_conflict_resolution_mode_value -#line 787 "dhcp6_parser.yy" + case 179: // ddns_conflict_resolution_mode: "ddns-conflict-resolution-mode" $@25 ":" ddns_conflict_resolution_mode_value +#line 788 "dhcp6_parser.yy" { ctx.stack_.back()->set("ddns-conflict-resolution-mode", yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -1481,40 +1481,40 @@ namespace isc { namespace dhcp { #line 1482 "dhcp6_parser.cc" break; - case 179: // ddns_conflict_resolution_mode_value: "check-with-dhcid" -#line 793 "dhcp6_parser.yy" + case 180: // ddns_conflict_resolution_mode_value: "check-with-dhcid" +#line 794 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("check-with-dhcid", ctx.loc2pos(yystack_[0].location))); } #line 1490 "dhcp6_parser.cc" break; - case 180: // ddns_conflict_resolution_mode_value: "no-check-with-dhcid" -#line 796 "dhcp6_parser.yy" + case 181: // ddns_conflict_resolution_mode_value: "no-check-with-dhcid" +#line 797 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("no-check-with-dhcid", ctx.loc2pos(yystack_[0].location))); } #line 1498 "dhcp6_parser.cc" break; - case 181: // ddns_conflict_resolution_mode_value: "check-exists-with-dhcid" -#line 799 "dhcp6_parser.yy" + case 182: // ddns_conflict_resolution_mode_value: "check-exists-with-dhcid" +#line 800 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("check-exists-with-dhcid", ctx.loc2pos(yystack_[0].location))); } #line 1506 "dhcp6_parser.cc" break; - case 182: // ddns_conflict_resolution_mode_value: "no-check-without-dhcid" -#line 802 "dhcp6_parser.yy" + case 183: // ddns_conflict_resolution_mode_value: "no-check-without-dhcid" +#line 803 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("no-check-without-dhcid", ctx.loc2pos(yystack_[0].location))); } #line 1514 "dhcp6_parser.cc" break; - case 183: // ddns_ttl_percent: "ddns-ttl-percent" ":" "floating point" -#line 807 "dhcp6_parser.yy" + case 184: // ddns_ttl_percent: "ddns-ttl-percent" ":" "floating point" +#line 808 "dhcp6_parser.yy" { ctx.unique("ddns-ttl-percent", ctx.loc2pos(yystack_[2].location)); ElementPtr ttl(new DoubleElement(yystack_[0].value.as < double > (), ctx.loc2pos(yystack_[0].location))); @@ -1523,8 +1523,8 @@ namespace isc { namespace dhcp { #line 1524 "dhcp6_parser.cc" break; - case 184: // ddns_ttl: "ddns-ttl" ":" "integer" -#line 813 "dhcp6_parser.yy" + case 185: // ddns_ttl: "ddns-ttl" ":" "integer" +#line 814 "dhcp6_parser.yy" { ctx.unique("ddns-ttl", ctx.loc2pos(yystack_[2].location)); ElementPtr ttl(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1533,8 +1533,8 @@ namespace isc { namespace dhcp { #line 1534 "dhcp6_parser.cc" break; - case 185: // ddns_ttl_min: "ddns-ttl-min" ":" "integer" -#line 819 "dhcp6_parser.yy" + case 186: // ddns_ttl_min: "ddns-ttl-min" ":" "integer" +#line 820 "dhcp6_parser.yy" { ctx.unique("ddns-ttl-min", ctx.loc2pos(yystack_[2].location)); ElementPtr ttl(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1543,8 +1543,8 @@ namespace isc { namespace dhcp { #line 1544 "dhcp6_parser.cc" break; - case 186: // ddns_ttl_max: "ddns-ttl-mix" ":" "integer" -#line 825 "dhcp6_parser.yy" + case 187: // ddns_ttl_max: "ddns-ttl-mix" ":" "integer" +#line 826 "dhcp6_parser.yy" { ctx.unique("ddns-ttl-max", ctx.loc2pos(yystack_[2].location)); ElementPtr ttl(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1553,8 +1553,8 @@ namespace isc { namespace dhcp { #line 1554 "dhcp6_parser.cc" break; - case 187: // $@26: %empty -#line 831 "dhcp6_parser.yy" + case 188: // $@26: %empty +#line 832 "dhcp6_parser.yy" { ctx.unique("hostname-char-set", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1562,8 +1562,8 @@ namespace isc { namespace dhcp { #line 1563 "dhcp6_parser.cc" break; - case 188: // hostname_char_set: "hostname-char-set" $@26 ":" "constant string" -#line 834 "dhcp6_parser.yy" + case 189: // hostname_char_set: "hostname-char-set" $@26 ":" "constant string" +#line 835 "dhcp6_parser.yy" { ElementPtr s(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("hostname-char-set", s); @@ -1572,8 +1572,8 @@ namespace isc { namespace dhcp { #line 1573 "dhcp6_parser.cc" break; - case 189: // $@27: %empty -#line 840 "dhcp6_parser.yy" + case 190: // $@27: %empty +#line 841 "dhcp6_parser.yy" { ctx.unique("hostname-char-replacement", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1581,8 +1581,8 @@ namespace isc { namespace dhcp { #line 1582 "dhcp6_parser.cc" break; - case 190: // hostname_char_replacement: "hostname-char-replacement" $@27 ":" "constant string" -#line 843 "dhcp6_parser.yy" + case 191: // hostname_char_replacement: "hostname-char-replacement" $@27 ":" "constant string" +#line 844 "dhcp6_parser.yy" { ElementPtr s(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("hostname-char-replacement", s); @@ -1591,8 +1591,8 @@ namespace isc { namespace dhcp { #line 1592 "dhcp6_parser.cc" break; - case 191: // store_extended_info: "store-extended-info" ":" "boolean" -#line 849 "dhcp6_parser.yy" + case 192: // store_extended_info: "store-extended-info" ":" "boolean" +#line 850 "dhcp6_parser.yy" { ctx.unique("store-extended-info", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1601,8 +1601,8 @@ namespace isc { namespace dhcp { #line 1602 "dhcp6_parser.cc" break; - case 192: // statistic_default_sample_count: "statistic-default-sample-count" ":" "integer" -#line 855 "dhcp6_parser.yy" + case 193: // statistic_default_sample_count: "statistic-default-sample-count" ":" "integer" +#line 856 "dhcp6_parser.yy" { ctx.unique("statistic-default-sample-count", ctx.loc2pos(yystack_[2].location)); ElementPtr count(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1611,8 +1611,8 @@ namespace isc { namespace dhcp { #line 1612 "dhcp6_parser.cc" break; - case 193: // statistic_default_sample_age: "statistic-default-sample-age" ":" "integer" -#line 861 "dhcp6_parser.yy" + case 194: // statistic_default_sample_age: "statistic-default-sample-age" ":" "integer" +#line 862 "dhcp6_parser.yy" { ctx.unique("statistic-default-sample-age", ctx.loc2pos(yystack_[2].location)); ElementPtr age(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1621,8 +1621,8 @@ namespace isc { namespace dhcp { #line 1622 "dhcp6_parser.cc" break; - case 194: // $@28: %empty -#line 867 "dhcp6_parser.yy" + case 195: // $@28: %empty +#line 868 "dhcp6_parser.yy" { ctx.unique("server-tag", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1630,8 +1630,8 @@ namespace isc { namespace dhcp { #line 1631 "dhcp6_parser.cc" break; - case 195: // server_tag: "server-tag" $@28 ":" "constant string" -#line 870 "dhcp6_parser.yy" + case 196: // server_tag: "server-tag" $@28 ":" "constant string" +#line 871 "dhcp6_parser.yy" { ElementPtr stag(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("server-tag", stag); @@ -1640,8 +1640,8 @@ namespace isc { namespace dhcp { #line 1641 "dhcp6_parser.cc" break; - case 196: // parked_packet_limit: "parked-packet-limit" ":" "integer" -#line 876 "dhcp6_parser.yy" + case 197: // parked_packet_limit: "parked-packet-limit" ":" "integer" +#line 877 "dhcp6_parser.yy" { ctx.unique("parked-packet-limit", ctx.loc2pos(yystack_[2].location)); ElementPtr ppl(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1650,8 +1650,8 @@ namespace isc { namespace dhcp { #line 1651 "dhcp6_parser.cc" break; - case 197: // $@29: %empty -#line 882 "dhcp6_parser.yy" + case 198: // $@29: %empty +#line 883 "dhcp6_parser.yy" { ctx.unique("allocator", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1659,8 +1659,8 @@ namespace isc { namespace dhcp { #line 1660 "dhcp6_parser.cc" break; - case 198: // allocator: "allocator" $@29 ":" "constant string" -#line 885 "dhcp6_parser.yy" + case 199: // allocator: "allocator" $@29 ":" "constant string" +#line 886 "dhcp6_parser.yy" { ElementPtr al(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("allocator", al); @@ -1669,8 +1669,8 @@ namespace isc { namespace dhcp { #line 1670 "dhcp6_parser.cc" break; - case 199: // $@30: %empty -#line 891 "dhcp6_parser.yy" + case 200: // $@30: %empty +#line 892 "dhcp6_parser.yy" { ctx.unique("pd-allocator", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1678,8 +1678,8 @@ namespace isc { namespace dhcp { #line 1679 "dhcp6_parser.cc" break; - case 200: // pd_allocator: "pd-allocator" $@30 ":" "constant string" -#line 894 "dhcp6_parser.yy" + case 201: // pd_allocator: "pd-allocator" $@30 ":" "constant string" +#line 895 "dhcp6_parser.yy" { ElementPtr al(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("pd-allocator", al); @@ -1688,8 +1688,8 @@ namespace isc { namespace dhcp { #line 1689 "dhcp6_parser.cc" break; - case 201: // early_global_reservations_lookup: "early-global-reservations-lookup" ":" "boolean" -#line 900 "dhcp6_parser.yy" + case 202: // early_global_reservations_lookup: "early-global-reservations-lookup" ":" "boolean" +#line 901 "dhcp6_parser.yy" { ctx.unique("early-global-reservations-lookup", ctx.loc2pos(yystack_[2].location)); ElementPtr early(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1698,8 +1698,8 @@ namespace isc { namespace dhcp { #line 1699 "dhcp6_parser.cc" break; - case 202: // ip_reservations_unique: "ip-reservations-unique" ":" "boolean" -#line 906 "dhcp6_parser.yy" + case 203: // ip_reservations_unique: "ip-reservations-unique" ":" "boolean" +#line 907 "dhcp6_parser.yy" { ctx.unique("ip-reservations-unique", ctx.loc2pos(yystack_[2].location)); ElementPtr unique(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1708,8 +1708,8 @@ namespace isc { namespace dhcp { #line 1709 "dhcp6_parser.cc" break; - case 203: // reservations_lookup_first: "reservations-lookup-first" ":" "boolean" -#line 912 "dhcp6_parser.yy" + case 204: // reservations_lookup_first: "reservations-lookup-first" ":" "boolean" +#line 913 "dhcp6_parser.yy" { ctx.unique("reservations-lookup-first", ctx.loc2pos(yystack_[2].location)); ElementPtr first(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1718,8 +1718,8 @@ namespace isc { namespace dhcp { #line 1719 "dhcp6_parser.cc" break; - case 204: // $@31: %empty -#line 918 "dhcp6_parser.yy" + case 205: // $@31: %empty +#line 919 "dhcp6_parser.yy" { ctx.unique("interfaces-config", ctx.loc2pos(yystack_[0].location)); ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -1730,8 +1730,8 @@ namespace isc { namespace dhcp { #line 1731 "dhcp6_parser.cc" break; - case 205: // interfaces_config: "interfaces-config" $@31 ":" "{" interfaces_config_params "}" -#line 924 "dhcp6_parser.yy" + case 206: // interfaces_config: "interfaces-config" $@31 ":" "{" interfaces_config_params "}" +#line 925 "dhcp6_parser.yy" { // No interfaces config param is required ctx.stack_.pop_back(); @@ -1740,8 +1740,8 @@ namespace isc { namespace dhcp { #line 1741 "dhcp6_parser.cc" break; - case 206: // $@32: %empty -#line 930 "dhcp6_parser.yy" + case 207: // $@32: %empty +#line 931 "dhcp6_parser.yy" { // Parse the interfaces-config map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -1750,8 +1750,8 @@ namespace isc { namespace dhcp { #line 1751 "dhcp6_parser.cc" break; - case 207: // sub_interfaces6: "{" $@32 interfaces_config_params "}" -#line 934 "dhcp6_parser.yy" + case 208: // sub_interfaces6: "{" $@32 interfaces_config_params "}" +#line 935 "dhcp6_parser.yy" { // No interfaces config param is required // parsing completed @@ -1759,16 +1759,16 @@ namespace isc { namespace dhcp { #line 1760 "dhcp6_parser.cc" break; - case 210: // interfaces_config_params: interfaces_config_params "," -#line 941 "dhcp6_parser.yy" + case 211: // interfaces_config_params: interfaces_config_params "," +#line 942 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 1768 "dhcp6_parser.cc" break; - case 219: // $@33: %empty -#line 956 "dhcp6_parser.yy" + case 220: // $@33: %empty +#line 957 "dhcp6_parser.yy" { ctx.unique("interfaces", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -1779,8 +1779,8 @@ namespace isc { namespace dhcp { #line 1780 "dhcp6_parser.cc" break; - case 220: // interfaces_list: "interfaces" $@33 ":" list_strings -#line 962 "dhcp6_parser.yy" + case 221: // interfaces_list: "interfaces" $@33 ":" list_strings +#line 963 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -1788,8 +1788,8 @@ namespace isc { namespace dhcp { #line 1789 "dhcp6_parser.cc" break; - case 221: // re_detect: "re-detect" ":" "boolean" -#line 967 "dhcp6_parser.yy" + case 222: // re_detect: "re-detect" ":" "boolean" +#line 968 "dhcp6_parser.yy" { ctx.unique("re-detect", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1798,8 +1798,8 @@ namespace isc { namespace dhcp { #line 1799 "dhcp6_parser.cc" break; - case 222: // service_sockets_require_all: "service-sockets-require-all" ":" "boolean" -#line 973 "dhcp6_parser.yy" + case 223: // service_sockets_require_all: "service-sockets-require-all" ":" "boolean" +#line 974 "dhcp6_parser.yy" { ctx.unique("service-sockets-require-all", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -1808,8 +1808,8 @@ namespace isc { namespace dhcp { #line 1809 "dhcp6_parser.cc" break; - case 223: // service_sockets_retry_wait_time: "service-sockets-retry-wait-time" ":" "integer" -#line 979 "dhcp6_parser.yy" + case 224: // service_sockets_retry_wait_time: "service-sockets-retry-wait-time" ":" "integer" +#line 980 "dhcp6_parser.yy" { ctx.unique("service-sockets-retry-wait-time", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1818,8 +1818,8 @@ namespace isc { namespace dhcp { #line 1819 "dhcp6_parser.cc" break; - case 224: // service_sockets_max_retries: "service-sockets-max-retries" ":" "integer" -#line 985 "dhcp6_parser.yy" + case 225: // service_sockets_max_retries: "service-sockets-max-retries" ":" "integer" +#line 986 "dhcp6_parser.yy" { ctx.unique("service-sockets-max-retries", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -1828,8 +1828,8 @@ namespace isc { namespace dhcp { #line 1829 "dhcp6_parser.cc" break; - case 225: // $@34: %empty -#line 991 "dhcp6_parser.yy" + case 226: // $@34: %empty +#line 992 "dhcp6_parser.yy" { ctx.unique("lease-database", ctx.loc2pos(yystack_[0].location)); ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -1840,8 +1840,8 @@ namespace isc { namespace dhcp { #line 1841 "dhcp6_parser.cc" break; - case 226: // lease_database: "lease-database" $@34 ":" "{" database_map_params "}" -#line 997 "dhcp6_parser.yy" + case 227: // lease_database: "lease-database" $@34 ":" "{" database_map_params "}" +#line 998 "dhcp6_parser.yy" { // The type parameter is required ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location)); @@ -1851,8 +1851,8 @@ namespace isc { namespace dhcp { #line 1852 "dhcp6_parser.cc" break; - case 227: // $@35: %empty -#line 1004 "dhcp6_parser.yy" + case 228: // $@35: %empty +#line 1005 "dhcp6_parser.yy" { ctx.unique("hosts-database", ctx.loc2pos(yystack_[0].location)); ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -1863,8 +1863,8 @@ namespace isc { namespace dhcp { #line 1864 "dhcp6_parser.cc" break; - case 228: // hosts_database: "hosts-database" $@35 ":" "{" database_map_params "}" -#line 1010 "dhcp6_parser.yy" + case 229: // hosts_database: "hosts-database" $@35 ":" "{" database_map_params "}" +#line 1011 "dhcp6_parser.yy" { // The type parameter is required ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location)); @@ -1874,8 +1874,8 @@ namespace isc { namespace dhcp { #line 1875 "dhcp6_parser.cc" break; - case 229: // $@36: %empty -#line 1017 "dhcp6_parser.yy" + case 230: // $@36: %empty +#line 1018 "dhcp6_parser.yy" { ctx.unique("hosts-databases", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -1886,8 +1886,8 @@ namespace isc { namespace dhcp { #line 1887 "dhcp6_parser.cc" break; - case 230: // hosts_databases: "hosts-databases" $@36 ":" "[" database_list "]" -#line 1023 "dhcp6_parser.yy" + case 231: // hosts_databases: "hosts-databases" $@36 ":" "[" database_list "]" +#line 1024 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -1895,16 +1895,16 @@ namespace isc { namespace dhcp { #line 1896 "dhcp6_parser.cc" break; - case 235: // not_empty_database_list: not_empty_database_list "," -#line 1034 "dhcp6_parser.yy" + case 236: // not_empty_database_list: not_empty_database_list "," +#line 1035 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 1904 "dhcp6_parser.cc" break; - case 236: // $@37: %empty -#line 1039 "dhcp6_parser.yy" + case 237: // $@37: %empty +#line 1040 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -1913,8 +1913,8 @@ namespace isc { namespace dhcp { #line 1914 "dhcp6_parser.cc" break; - case 237: // database: "{" $@37 database_map_params "}" -#line 1043 "dhcp6_parser.yy" + case 238: // database: "{" $@37 database_map_params "}" +#line 1044 "dhcp6_parser.yy" { // The type parameter is required ctx.require("type", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -1923,16 +1923,16 @@ namespace isc { namespace dhcp { #line 1924 "dhcp6_parser.cc" break; - case 240: // database_map_params: database_map_params "," -#line 1051 "dhcp6_parser.yy" + case 241: // database_map_params: database_map_params "," +#line 1052 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 1932 "dhcp6_parser.cc" break; - case 265: // $@38: %empty -#line 1082 "dhcp6_parser.yy" + case 266: // $@38: %empty +#line 1083 "dhcp6_parser.yy" { ctx.unique("type", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1940,8 +1940,8 @@ namespace isc { namespace dhcp { #line 1941 "dhcp6_parser.cc" break; - case 266: // database_type: "type" $@38 ":" "constant string" -#line 1085 "dhcp6_parser.yy" + case 267: // database_type: "type" $@38 ":" "constant string" +#line 1086 "dhcp6_parser.yy" { ElementPtr db_type(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("type", db_type); @@ -1950,8 +1950,8 @@ namespace isc { namespace dhcp { #line 1951 "dhcp6_parser.cc" break; - case 267: // $@39: %empty -#line 1091 "dhcp6_parser.yy" + case 268: // $@39: %empty +#line 1092 "dhcp6_parser.yy" { ctx.unique("user", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1959,8 +1959,8 @@ namespace isc { namespace dhcp { #line 1960 "dhcp6_parser.cc" break; - case 268: // user: "user" $@39 ":" "constant string" -#line 1094 "dhcp6_parser.yy" + case 269: // user: "user" $@39 ":" "constant string" +#line 1095 "dhcp6_parser.yy" { ElementPtr user(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("user", user); @@ -1969,8 +1969,8 @@ namespace isc { namespace dhcp { #line 1970 "dhcp6_parser.cc" break; - case 269: // $@40: %empty -#line 1100 "dhcp6_parser.yy" + case 270: // $@40: %empty +#line 1101 "dhcp6_parser.yy" { ctx.unique("password", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1978,8 +1978,8 @@ namespace isc { namespace dhcp { #line 1979 "dhcp6_parser.cc" break; - case 270: // password: "password" $@40 ":" "constant string" -#line 1103 "dhcp6_parser.yy" + case 271: // password: "password" $@40 ":" "constant string" +#line 1104 "dhcp6_parser.yy" { ElementPtr pwd(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("password", pwd); @@ -1988,8 +1988,8 @@ namespace isc { namespace dhcp { #line 1989 "dhcp6_parser.cc" break; - case 271: // $@41: %empty -#line 1109 "dhcp6_parser.yy" + case 272: // $@41: %empty +#line 1110 "dhcp6_parser.yy" { ctx.unique("host", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -1997,8 +1997,8 @@ namespace isc { namespace dhcp { #line 1998 "dhcp6_parser.cc" break; - case 272: // host: "host" $@41 ":" "constant string" -#line 1112 "dhcp6_parser.yy" + case 273: // host: "host" $@41 ":" "constant string" +#line 1113 "dhcp6_parser.yy" { ElementPtr h(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("host", h); @@ -2007,8 +2007,8 @@ namespace isc { namespace dhcp { #line 2008 "dhcp6_parser.cc" break; - case 273: // port: "port" ":" "integer" -#line 1118 "dhcp6_parser.yy" + case 274: // port: "port" ":" "integer" +#line 1119 "dhcp6_parser.yy" { ctx.unique("port", ctx.loc2pos(yystack_[2].location)); ElementPtr p(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2017,8 +2017,8 @@ namespace isc { namespace dhcp { #line 2018 "dhcp6_parser.cc" break; - case 274: // $@42: %empty -#line 1124 "dhcp6_parser.yy" + case 275: // $@42: %empty +#line 1125 "dhcp6_parser.yy" { ctx.unique("name", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2026,8 +2026,8 @@ namespace isc { namespace dhcp { #line 2027 "dhcp6_parser.cc" break; - case 275: // name: "name" $@42 ":" "constant string" -#line 1127 "dhcp6_parser.yy" + case 276: // name: "name" $@42 ":" "constant string" +#line 1128 "dhcp6_parser.yy" { ElementPtr name(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("name", name); @@ -2036,8 +2036,8 @@ namespace isc { namespace dhcp { #line 2037 "dhcp6_parser.cc" break; - case 276: // persist: "persist" ":" "boolean" -#line 1133 "dhcp6_parser.yy" + case 277: // persist: "persist" ":" "boolean" +#line 1134 "dhcp6_parser.yy" { ctx.unique("persist", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -2046,8 +2046,8 @@ namespace isc { namespace dhcp { #line 2047 "dhcp6_parser.cc" break; - case 277: // lfc_interval: "lfc-interval" ":" "integer" -#line 1139 "dhcp6_parser.yy" + case 278: // lfc_interval: "lfc-interval" ":" "integer" +#line 1140 "dhcp6_parser.yy" { ctx.unique("lfc-interval", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2056,8 +2056,8 @@ namespace isc { namespace dhcp { #line 2057 "dhcp6_parser.cc" break; - case 278: // readonly: "readonly" ":" "boolean" -#line 1145 "dhcp6_parser.yy" + case 279: // readonly: "readonly" ":" "boolean" +#line 1146 "dhcp6_parser.yy" { ctx.unique("readonly", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -2066,8 +2066,8 @@ namespace isc { namespace dhcp { #line 2067 "dhcp6_parser.cc" break; - case 279: // connect_timeout: "connect-timeout" ":" "integer" -#line 1151 "dhcp6_parser.yy" + case 280: // connect_timeout: "connect-timeout" ":" "integer" +#line 1152 "dhcp6_parser.yy" { ctx.unique("connect-timeout", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2076,8 +2076,8 @@ namespace isc { namespace dhcp { #line 2077 "dhcp6_parser.cc" break; - case 280: // read_timeout: "read-timeout" ":" "integer" -#line 1157 "dhcp6_parser.yy" + case 281: // read_timeout: "read-timeout" ":" "integer" +#line 1158 "dhcp6_parser.yy" { ctx.unique("read-timeout", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2086,8 +2086,8 @@ namespace isc { namespace dhcp { #line 2087 "dhcp6_parser.cc" break; - case 281: // write_timeout: "write-timeout" ":" "integer" -#line 1163 "dhcp6_parser.yy" + case 282: // write_timeout: "write-timeout" ":" "integer" +#line 1164 "dhcp6_parser.yy" { ctx.unique("write-timeout", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2096,8 +2096,8 @@ namespace isc { namespace dhcp { #line 2097 "dhcp6_parser.cc" break; - case 282: // tcp_user_timeout: "tcp-user-timeout" ":" "integer" -#line 1169 "dhcp6_parser.yy" + case 283: // tcp_user_timeout: "tcp-user-timeout" ":" "integer" +#line 1170 "dhcp6_parser.yy" { ctx.unique("tcp-user-timeout", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2106,8 +2106,8 @@ namespace isc { namespace dhcp { #line 2107 "dhcp6_parser.cc" break; - case 283: // reconnect_wait_time: "reconnect-wait-time" ":" "integer" -#line 1175 "dhcp6_parser.yy" + case 284: // reconnect_wait_time: "reconnect-wait-time" ":" "integer" +#line 1176 "dhcp6_parser.yy" { ctx.unique("reconnect-wait-time", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2116,8 +2116,8 @@ namespace isc { namespace dhcp { #line 2117 "dhcp6_parser.cc" break; - case 284: // $@43: %empty -#line 1181 "dhcp6_parser.yy" + case 285: // $@43: %empty +#line 1182 "dhcp6_parser.yy" { ctx.unique("on-fail", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.DATABASE_ON_FAIL); @@ -2125,8 +2125,8 @@ namespace isc { namespace dhcp { #line 2126 "dhcp6_parser.cc" break; - case 285: // on_fail: "on-fail" $@43 ":" on_fail_mode -#line 1184 "dhcp6_parser.yy" + case 286: // on_fail: "on-fail" $@43 ":" on_fail_mode +#line 1185 "dhcp6_parser.yy" { ctx.stack_.back()->set("on-fail", yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -2134,26 +2134,26 @@ namespace isc { namespace dhcp { #line 2135 "dhcp6_parser.cc" break; - case 286: // on_fail_mode: "stop-retry-exit" -#line 1189 "dhcp6_parser.yy" + case 287: // on_fail_mode: "stop-retry-exit" +#line 1190 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("stop-retry-exit", ctx.loc2pos(yystack_[0].location))); } #line 2141 "dhcp6_parser.cc" break; - case 287: // on_fail_mode: "serve-retry-exit" -#line 1190 "dhcp6_parser.yy" + case 288: // on_fail_mode: "serve-retry-exit" +#line 1191 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("serve-retry-exit", ctx.loc2pos(yystack_[0].location))); } #line 2147 "dhcp6_parser.cc" break; - case 288: // on_fail_mode: "serve-retry-continue" -#line 1191 "dhcp6_parser.yy" + case 289: // on_fail_mode: "serve-retry-continue" +#line 1192 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("serve-retry-continue", ctx.loc2pos(yystack_[0].location))); } #line 2153 "dhcp6_parser.cc" break; - case 289: // retry_on_startup: "retry-on-startup" ":" "boolean" -#line 1194 "dhcp6_parser.yy" + case 290: // retry_on_startup: "retry-on-startup" ":" "boolean" +#line 1195 "dhcp6_parser.yy" { ctx.unique("retry-on-startup", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -2162,8 +2162,8 @@ namespace isc { namespace dhcp { #line 2163 "dhcp6_parser.cc" break; - case 290: // max_row_errors: "max-row-errors" ":" "integer" -#line 1200 "dhcp6_parser.yy" + case 291: // max_row_errors: "max-row-errors" ":" "integer" +#line 1201 "dhcp6_parser.yy" { ctx.unique("max-row-errors", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2172,8 +2172,8 @@ namespace isc { namespace dhcp { #line 2173 "dhcp6_parser.cc" break; - case 291: // max_reconnect_tries: "max-reconnect-tries" ":" "integer" -#line 1206 "dhcp6_parser.yy" + case 292: // max_reconnect_tries: "max-reconnect-tries" ":" "integer" +#line 1207 "dhcp6_parser.yy" { ctx.unique("max-reconnect-tries", ctx.loc2pos(yystack_[2].location)); ElementPtr n(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2182,8 +2182,8 @@ namespace isc { namespace dhcp { #line 2183 "dhcp6_parser.cc" break; - case 292: // $@44: %empty -#line 1212 "dhcp6_parser.yy" + case 293: // $@44: %empty +#line 1213 "dhcp6_parser.yy" { ctx.unique("trust-anchor", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2191,8 +2191,8 @@ namespace isc { namespace dhcp { #line 2192 "dhcp6_parser.cc" break; - case 293: // trust_anchor: "trust-anchor" $@44 ":" "constant string" -#line 1215 "dhcp6_parser.yy" + case 294: // trust_anchor: "trust-anchor" $@44 ":" "constant string" +#line 1216 "dhcp6_parser.yy" { ElementPtr ca(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("trust-anchor", ca); @@ -2201,8 +2201,8 @@ namespace isc { namespace dhcp { #line 2202 "dhcp6_parser.cc" break; - case 294: // $@45: %empty -#line 1221 "dhcp6_parser.yy" + case 295: // $@45: %empty +#line 1222 "dhcp6_parser.yy" { ctx.unique("cert-file", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2210,8 +2210,8 @@ namespace isc { namespace dhcp { #line 2211 "dhcp6_parser.cc" break; - case 295: // cert_file: "cert-file" $@45 ":" "constant string" -#line 1224 "dhcp6_parser.yy" + case 296: // cert_file: "cert-file" $@45 ":" "constant string" +#line 1225 "dhcp6_parser.yy" { ElementPtr cert(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("cert-file", cert); @@ -2220,8 +2220,8 @@ namespace isc { namespace dhcp { #line 2221 "dhcp6_parser.cc" break; - case 296: // $@46: %empty -#line 1230 "dhcp6_parser.yy" + case 297: // $@46: %empty +#line 1231 "dhcp6_parser.yy" { ctx.unique("key-file", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2229,8 +2229,8 @@ namespace isc { namespace dhcp { #line 2230 "dhcp6_parser.cc" break; - case 297: // key_file: "key-file" $@46 ":" "constant string" -#line 1233 "dhcp6_parser.yy" + case 298: // key_file: "key-file" $@46 ":" "constant string" +#line 1234 "dhcp6_parser.yy" { ElementPtr key(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("key-file", key); @@ -2239,8 +2239,8 @@ namespace isc { namespace dhcp { #line 2240 "dhcp6_parser.cc" break; - case 298: // $@47: %empty -#line 1239 "dhcp6_parser.yy" + case 299: // $@47: %empty +#line 1240 "dhcp6_parser.yy" { ctx.unique("ssl-mode", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.SSL_MODE); @@ -2248,8 +2248,8 @@ namespace isc { namespace dhcp { #line 2249 "dhcp6_parser.cc" break; - case 299: // ssl_mode: "ssl-mode" $@47 ":" ssl_mode -#line 1242 "dhcp6_parser.yy" + case 300: // ssl_mode: "ssl-mode" $@47 ":" ssl_mode +#line 1243 "dhcp6_parser.yy" { ctx.stack_.back()->set("ssl-mode", yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -2257,48 +2257,48 @@ namespace isc { namespace dhcp { #line 2258 "dhcp6_parser.cc" break; - case 300: // ssl_mode: "disable" -#line 1247 "dhcp6_parser.yy" + case 301: // ssl_mode: "disable" +#line 1248 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("disable", ctx.loc2pos(yystack_[0].location))); } #line 2266 "dhcp6_parser.cc" break; - case 301: // ssl_mode: "prefer" -#line 1250 "dhcp6_parser.yy" + case 302: // ssl_mode: "prefer" +#line 1251 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("prefer", ctx.loc2pos(yystack_[0].location))); } #line 2274 "dhcp6_parser.cc" break; - case 302: // ssl_mode: "require" -#line 1253 "dhcp6_parser.yy" + case 303: // ssl_mode: "require" +#line 1254 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("require", ctx.loc2pos(yystack_[0].location))); } #line 2282 "dhcp6_parser.cc" break; - case 303: // ssl_mode: "verify-ca" -#line 1256 "dhcp6_parser.yy" + case 304: // ssl_mode: "verify-ca" +#line 1257 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("verify-ca", ctx.loc2pos(yystack_[0].location))); } #line 2290 "dhcp6_parser.cc" break; - case 304: // ssl_mode: "verify-full" -#line 1259 "dhcp6_parser.yy" + case 305: // ssl_mode: "verify-full" +#line 1260 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("verify-full", ctx.loc2pos(yystack_[0].location))); } #line 2298 "dhcp6_parser.cc" break; - case 305: // $@48: %empty -#line 1264 "dhcp6_parser.yy" + case 306: // $@48: %empty +#line 1265 "dhcp6_parser.yy" { ctx.unique("cipher-list", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2306,8 +2306,8 @@ namespace isc { namespace dhcp { #line 2307 "dhcp6_parser.cc" break; - case 306: // cipher_list: "cipher-list" $@48 ":" "constant string" -#line 1267 "dhcp6_parser.yy" + case 307: // cipher_list: "cipher-list" $@48 ":" "constant string" +#line 1268 "dhcp6_parser.yy" { ElementPtr cl(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("cipher-list", cl); @@ -2316,8 +2316,8 @@ namespace isc { namespace dhcp { #line 2317 "dhcp6_parser.cc" break; - case 307: // $@49: %empty -#line 1273 "dhcp6_parser.yy" + case 308: // $@49: %empty +#line 1274 "dhcp6_parser.yy" { ctx.unique("sanity-checks", ctx.loc2pos(yystack_[0].location)); ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -2328,8 +2328,8 @@ namespace isc { namespace dhcp { #line 2329 "dhcp6_parser.cc" break; - case 308: // sanity_checks: "sanity-checks" $@49 ":" "{" sanity_checks_params "}" -#line 1279 "dhcp6_parser.yy" + case 309: // sanity_checks: "sanity-checks" $@49 ":" "{" sanity_checks_params "}" +#line 1280 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -2337,16 +2337,16 @@ namespace isc { namespace dhcp { #line 2338 "dhcp6_parser.cc" break; - case 311: // sanity_checks_params: sanity_checks_params "," -#line 1286 "dhcp6_parser.yy" + case 312: // sanity_checks_params: sanity_checks_params "," +#line 1287 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 2346 "dhcp6_parser.cc" break; - case 314: // $@50: %empty -#line 1295 "dhcp6_parser.yy" + case 315: // $@50: %empty +#line 1296 "dhcp6_parser.yy" { ctx.unique("lease-checks", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2354,8 +2354,8 @@ namespace isc { namespace dhcp { #line 2355 "dhcp6_parser.cc" break; - case 315: // lease_checks: "lease-checks" $@50 ":" "constant string" -#line 1298 "dhcp6_parser.yy" + case 316: // lease_checks: "lease-checks" $@50 ":" "constant string" +#line 1299 "dhcp6_parser.yy" { if ( (string(yystack_[0].value.as < std::string > ()) == "none") || @@ -2374,8 +2374,8 @@ namespace isc { namespace dhcp { #line 2375 "dhcp6_parser.cc" break; - case 316: // $@51: %empty -#line 1314 "dhcp6_parser.yy" + case 317: // $@51: %empty +#line 1315 "dhcp6_parser.yy" { ctx.unique("extended-info-checks", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2383,8 +2383,8 @@ namespace isc { namespace dhcp { #line 2384 "dhcp6_parser.cc" break; - case 317: // extended_info_checks: "extended-info-checks" $@51 ":" "constant string" -#line 1317 "dhcp6_parser.yy" + case 318: // extended_info_checks: "extended-info-checks" $@51 ":" "constant string" +#line 1318 "dhcp6_parser.yy" { if ( (string(yystack_[0].value.as < std::string > ()) == "none") || @@ -2402,8 +2402,8 @@ namespace isc { namespace dhcp { #line 2403 "dhcp6_parser.cc" break; - case 318: // $@52: %empty -#line 1332 "dhcp6_parser.yy" + case 319: // $@52: %empty +#line 1333 "dhcp6_parser.yy" { ctx.unique("mac-sources", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -2414,8 +2414,8 @@ namespace isc { namespace dhcp { #line 2415 "dhcp6_parser.cc" break; - case 319: // mac_sources: "mac-sources" $@52 ":" "[" mac_sources_list "]" -#line 1338 "dhcp6_parser.yy" + case 320: // mac_sources: "mac-sources" $@52 ":" "[" mac_sources_list "]" +#line 1339 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -2423,16 +2423,16 @@ namespace isc { namespace dhcp { #line 2424 "dhcp6_parser.cc" break; - case 322: // mac_sources_list: mac_sources_list "," -#line 1345 "dhcp6_parser.yy" + case 323: // mac_sources_list: mac_sources_list "," +#line 1346 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 2432 "dhcp6_parser.cc" break; - case 325: // duid_id: "duid" -#line 1354 "dhcp6_parser.yy" + case 326: // duid_id: "duid" +#line 1355 "dhcp6_parser.yy" { ElementPtr duid(new StringElement("duid", ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(duid); @@ -2440,8 +2440,8 @@ namespace isc { namespace dhcp { #line 2441 "dhcp6_parser.cc" break; - case 326: // string_id: "constant string" -#line 1359 "dhcp6_parser.yy" + case 327: // string_id: "constant string" +#line 1360 "dhcp6_parser.yy" { ElementPtr duid(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(duid); @@ -2449,8 +2449,8 @@ namespace isc { namespace dhcp { #line 2450 "dhcp6_parser.cc" break; - case 327: // $@53: %empty -#line 1364 "dhcp6_parser.yy" + case 328: // $@53: %empty +#line 1365 "dhcp6_parser.yy" { ctx.unique("host-reservation-identifiers", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -2461,8 +2461,8 @@ namespace isc { namespace dhcp { #line 2462 "dhcp6_parser.cc" break; - case 328: // host_reservation_identifiers: "host-reservation-identifiers" $@53 ":" "[" host_reservation_identifiers_list "]" -#line 1370 "dhcp6_parser.yy" + case 329: // host_reservation_identifiers: "host-reservation-identifiers" $@53 ":" "[" host_reservation_identifiers_list "]" +#line 1371 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -2470,16 +2470,16 @@ namespace isc { namespace dhcp { #line 2471 "dhcp6_parser.cc" break; - case 331: // host_reservation_identifiers_list: host_reservation_identifiers_list "," -#line 1377 "dhcp6_parser.yy" + case 332: // host_reservation_identifiers_list: host_reservation_identifiers_list "," +#line 1378 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 2479 "dhcp6_parser.cc" break; - case 335: // hw_address_id: "hw-address" -#line 1387 "dhcp6_parser.yy" + case 336: // hw_address_id: "hw-address" +#line 1388 "dhcp6_parser.yy" { ElementPtr hwaddr(new StringElement("hw-address", ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(hwaddr); @@ -2487,8 +2487,8 @@ namespace isc { namespace dhcp { #line 2488 "dhcp6_parser.cc" break; - case 336: // flex_id: "flex-id" -#line 1392 "dhcp6_parser.yy" + case 337: // flex_id: "flex-id" +#line 1393 "dhcp6_parser.yy" { ElementPtr flex_id(new StringElement("flex-id", ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(flex_id); @@ -2496,8 +2496,8 @@ namespace isc { namespace dhcp { #line 2497 "dhcp6_parser.cc" break; - case 337: // $@54: %empty -#line 1399 "dhcp6_parser.yy" + case 338: // $@54: %empty +#line 1400 "dhcp6_parser.yy" { ctx.unique("relay-supplied-options", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -2508,8 +2508,8 @@ namespace isc { namespace dhcp { #line 2509 "dhcp6_parser.cc" break; - case 338: // relay_supplied_options: "relay-supplied-options" $@54 ":" "[" list_content "]" -#line 1405 "dhcp6_parser.yy" + case 339: // relay_supplied_options: "relay-supplied-options" $@54 ":" "[" list_content "]" +#line 1406 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -2517,8 +2517,8 @@ namespace isc { namespace dhcp { #line 2518 "dhcp6_parser.cc" break; - case 339: // $@55: %empty -#line 1412 "dhcp6_parser.yy" + case 340: // $@55: %empty +#line 1413 "dhcp6_parser.yy" { ctx.unique("multi-threading", ctx.loc2pos(yystack_[0].location)); ElementPtr mt(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -2529,8 +2529,8 @@ namespace isc { namespace dhcp { #line 2530 "dhcp6_parser.cc" break; - case 340: // dhcp_multi_threading: "multi-threading" $@55 ":" "{" multi_threading_params "}" -#line 1418 "dhcp6_parser.yy" + case 341: // dhcp_multi_threading: "multi-threading" $@55 ":" "{" multi_threading_params "}" +#line 1419 "dhcp6_parser.yy" { // The enable parameter is required. ctx.require("enable-multi-threading", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location)); @@ -2540,16 +2540,16 @@ namespace isc { namespace dhcp { #line 2541 "dhcp6_parser.cc" break; - case 343: // multi_threading_params: multi_threading_params "," -#line 1427 "dhcp6_parser.yy" + case 344: // multi_threading_params: multi_threading_params "," +#line 1428 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 2549 "dhcp6_parser.cc" break; - case 350: // enable_multi_threading: "enable-multi-threading" ":" "boolean" -#line 1440 "dhcp6_parser.yy" + case 351: // enable_multi_threading: "enable-multi-threading" ":" "boolean" +#line 1441 "dhcp6_parser.yy" { ctx.unique("enable-multi-threading", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -2558,8 +2558,8 @@ namespace isc { namespace dhcp { #line 2559 "dhcp6_parser.cc" break; - case 351: // thread_pool_size: "thread-pool-size" ":" "integer" -#line 1446 "dhcp6_parser.yy" + case 352: // thread_pool_size: "thread-pool-size" ":" "integer" +#line 1447 "dhcp6_parser.yy" { ctx.unique("thread-pool-size", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2568,8 +2568,8 @@ namespace isc { namespace dhcp { #line 2569 "dhcp6_parser.cc" break; - case 352: // packet_queue_size: "packet-queue-size" ":" "integer" -#line 1452 "dhcp6_parser.yy" + case 353: // packet_queue_size: "packet-queue-size" ":" "integer" +#line 1453 "dhcp6_parser.yy" { ctx.unique("packet-queue-size", ctx.loc2pos(yystack_[2].location)); ElementPtr prf(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2578,8 +2578,8 @@ namespace isc { namespace dhcp { #line 2579 "dhcp6_parser.cc" break; - case 353: // $@56: %empty -#line 1458 "dhcp6_parser.yy" + case 354: // $@56: %empty +#line 1459 "dhcp6_parser.yy" { ctx.unique("hooks-libraries", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -2590,8 +2590,8 @@ namespace isc { namespace dhcp { #line 2591 "dhcp6_parser.cc" break; - case 354: // hooks_libraries: "hooks-libraries" $@56 ":" "[" hooks_libraries_list "]" -#line 1464 "dhcp6_parser.yy" + case 355: // hooks_libraries: "hooks-libraries" $@56 ":" "[" hooks_libraries_list "]" +#line 1465 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -2599,16 +2599,16 @@ namespace isc { namespace dhcp { #line 2600 "dhcp6_parser.cc" break; - case 359: // not_empty_hooks_libraries_list: not_empty_hooks_libraries_list "," -#line 1475 "dhcp6_parser.yy" + case 360: // not_empty_hooks_libraries_list: not_empty_hooks_libraries_list "," +#line 1476 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 2608 "dhcp6_parser.cc" break; - case 360: // $@57: %empty -#line 1480 "dhcp6_parser.yy" + case 361: // $@57: %empty +#line 1481 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -2617,8 +2617,8 @@ namespace isc { namespace dhcp { #line 2618 "dhcp6_parser.cc" break; - case 361: // hooks_library: "{" $@57 hooks_params "}" -#line 1484 "dhcp6_parser.yy" + case 362: // hooks_library: "{" $@57 hooks_params "}" +#line 1485 "dhcp6_parser.yy" { // The library hooks parameter is required ctx.require("library", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -2627,8 +2627,8 @@ namespace isc { namespace dhcp { #line 2628 "dhcp6_parser.cc" break; - case 362: // $@58: %empty -#line 1490 "dhcp6_parser.yy" + case 363: // $@58: %empty +#line 1491 "dhcp6_parser.yy" { // Parse the hooks-libraries list entry map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -2637,8 +2637,8 @@ namespace isc { namespace dhcp { #line 2638 "dhcp6_parser.cc" break; - case 363: // sub_hooks_library: "{" $@58 hooks_params "}" -#line 1494 "dhcp6_parser.yy" + case 364: // sub_hooks_library: "{" $@58 hooks_params "}" +#line 1495 "dhcp6_parser.yy" { // The library hooks parameter is required ctx.require("library", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -2647,16 +2647,16 @@ namespace isc { namespace dhcp { #line 2648 "dhcp6_parser.cc" break; - case 366: // hooks_params: hooks_params "," -#line 1502 "dhcp6_parser.yy" + case 367: // hooks_params: hooks_params "," +#line 1503 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 2656 "dhcp6_parser.cc" break; - case 370: // $@59: %empty -#line 1512 "dhcp6_parser.yy" + case 371: // $@59: %empty +#line 1513 "dhcp6_parser.yy" { ctx.unique("library", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2664,8 +2664,8 @@ namespace isc { namespace dhcp { #line 2665 "dhcp6_parser.cc" break; - case 371: // library: "library" $@59 ":" "constant string" -#line 1515 "dhcp6_parser.yy" + case 372: // library: "library" $@59 ":" "constant string" +#line 1516 "dhcp6_parser.yy" { ElementPtr lib(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("library", lib); @@ -2674,8 +2674,8 @@ namespace isc { namespace dhcp { #line 2675 "dhcp6_parser.cc" break; - case 372: // $@60: %empty -#line 1521 "dhcp6_parser.yy" + case 373: // $@60: %empty +#line 1522 "dhcp6_parser.yy" { ctx.unique("parameters", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2683,8 +2683,8 @@ namespace isc { namespace dhcp { #line 2684 "dhcp6_parser.cc" break; - case 373: // parameters: "parameters" $@60 ":" map_value -#line 1524 "dhcp6_parser.yy" + case 374: // parameters: "parameters" $@60 ":" map_value +#line 1525 "dhcp6_parser.yy" { ctx.stack_.back()->set("parameters", yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -2692,8 +2692,8 @@ namespace isc { namespace dhcp { #line 2693 "dhcp6_parser.cc" break; - case 374: // $@61: %empty -#line 1530 "dhcp6_parser.yy" + case 375: // $@61: %empty +#line 1531 "dhcp6_parser.yy" { ctx.unique("expired-leases-processing", ctx.loc2pos(yystack_[0].location)); ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -2704,8 +2704,8 @@ namespace isc { namespace dhcp { #line 2705 "dhcp6_parser.cc" break; - case 375: // expired_leases_processing: "expired-leases-processing" $@61 ":" "{" expired_leases_params "}" -#line 1536 "dhcp6_parser.yy" + case 376: // expired_leases_processing: "expired-leases-processing" $@61 ":" "{" expired_leases_params "}" +#line 1537 "dhcp6_parser.yy" { // No expired lease parameter is required ctx.stack_.pop_back(); @@ -2714,16 +2714,16 @@ namespace isc { namespace dhcp { #line 2715 "dhcp6_parser.cc" break; - case 378: // expired_leases_params: expired_leases_params "," -#line 1544 "dhcp6_parser.yy" + case 379: // expired_leases_params: expired_leases_params "," +#line 1545 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 2723 "dhcp6_parser.cc" break; - case 385: // reclaim_timer_wait_time: "reclaim-timer-wait-time" ":" "integer" -#line 1557 "dhcp6_parser.yy" + case 386: // reclaim_timer_wait_time: "reclaim-timer-wait-time" ":" "integer" +#line 1558 "dhcp6_parser.yy" { ctx.unique("reclaim-timer-wait-time", ctx.loc2pos(yystack_[2].location)); ElementPtr value(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2732,8 +2732,8 @@ namespace isc { namespace dhcp { #line 2733 "dhcp6_parser.cc" break; - case 386: // flush_reclaimed_timer_wait_time: "flush-reclaimed-timer-wait-time" ":" "integer" -#line 1563 "dhcp6_parser.yy" + case 387: // flush_reclaimed_timer_wait_time: "flush-reclaimed-timer-wait-time" ":" "integer" +#line 1564 "dhcp6_parser.yy" { ctx.unique("flush-reclaimed-timer-wait-time", ctx.loc2pos(yystack_[2].location)); ElementPtr value(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2742,8 +2742,8 @@ namespace isc { namespace dhcp { #line 2743 "dhcp6_parser.cc" break; - case 387: // hold_reclaimed_time: "hold-reclaimed-time" ":" "integer" -#line 1569 "dhcp6_parser.yy" + case 388: // hold_reclaimed_time: "hold-reclaimed-time" ":" "integer" +#line 1570 "dhcp6_parser.yy" { ctx.unique("hold-reclaimed-time", ctx.loc2pos(yystack_[2].location)); ElementPtr value(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2752,8 +2752,8 @@ namespace isc { namespace dhcp { #line 2753 "dhcp6_parser.cc" break; - case 388: // max_reclaim_leases: "max-reclaim-leases" ":" "integer" -#line 1575 "dhcp6_parser.yy" + case 389: // max_reclaim_leases: "max-reclaim-leases" ":" "integer" +#line 1576 "dhcp6_parser.yy" { ctx.unique("max-reclaim-leases", ctx.loc2pos(yystack_[2].location)); ElementPtr value(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2762,8 +2762,8 @@ namespace isc { namespace dhcp { #line 2763 "dhcp6_parser.cc" break; - case 389: // max_reclaim_time: "max-reclaim-time" ":" "integer" -#line 1581 "dhcp6_parser.yy" + case 390: // max_reclaim_time: "max-reclaim-time" ":" "integer" +#line 1582 "dhcp6_parser.yy" { ctx.unique("max-reclaim-time", ctx.loc2pos(yystack_[2].location)); ElementPtr value(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2772,8 +2772,8 @@ namespace isc { namespace dhcp { #line 2773 "dhcp6_parser.cc" break; - case 390: // unwarned_reclaim_cycles: "unwarned-reclaim-cycles" ":" "integer" -#line 1587 "dhcp6_parser.yy" + case 391: // unwarned_reclaim_cycles: "unwarned-reclaim-cycles" ":" "integer" +#line 1588 "dhcp6_parser.yy" { ctx.unique("unwarned-reclaim-cycles", ctx.loc2pos(yystack_[2].location)); ElementPtr value(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -2782,8 +2782,8 @@ namespace isc { namespace dhcp { #line 2783 "dhcp6_parser.cc" break; - case 391: // $@62: %empty -#line 1596 "dhcp6_parser.yy" + case 392: // $@62: %empty +#line 1597 "dhcp6_parser.yy" { ctx.unique("subnet6", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -2794,8 +2794,8 @@ namespace isc { namespace dhcp { #line 2795 "dhcp6_parser.cc" break; - case 392: // subnet6_list: "subnet6" $@62 ":" "[" subnet6_list_content "]" -#line 1602 "dhcp6_parser.yy" + case 393: // subnet6_list: "subnet6" $@62 ":" "[" subnet6_list_content "]" +#line 1603 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -2803,16 +2803,16 @@ namespace isc { namespace dhcp { #line 2804 "dhcp6_parser.cc" break; - case 397: // not_empty_subnet6_list: not_empty_subnet6_list "," -#line 1616 "dhcp6_parser.yy" + case 398: // not_empty_subnet6_list: not_empty_subnet6_list "," +#line 1617 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 2812 "dhcp6_parser.cc" break; - case 398: // $@63: %empty -#line 1625 "dhcp6_parser.yy" + case 399: // $@63: %empty +#line 1626 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -2821,8 +2821,8 @@ namespace isc { namespace dhcp { #line 2822 "dhcp6_parser.cc" break; - case 399: // subnet6: "{" $@63 subnet6_params "}" -#line 1629 "dhcp6_parser.yy" + case 400: // subnet6: "{" $@63 subnet6_params "}" +#line 1630 "dhcp6_parser.yy" { // Once we reached this place, the subnet parsing is now complete. // If we want to, we can implement default values here. @@ -2847,8 +2847,8 @@ namespace isc { namespace dhcp { #line 2848 "dhcp6_parser.cc" break; - case 400: // $@64: %empty -#line 1651 "dhcp6_parser.yy" + case 401: // $@64: %empty +#line 1652 "dhcp6_parser.yy" { // Parse the subnet6 list entry map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -2857,8 +2857,8 @@ namespace isc { namespace dhcp { #line 2858 "dhcp6_parser.cc" break; - case 401: // sub_subnet6: "{" $@64 subnet6_params "}" -#line 1655 "dhcp6_parser.yy" + case 402: // sub_subnet6: "{" $@64 subnet6_params "}" +#line 1656 "dhcp6_parser.yy" { // The subnet subnet6 parameter is required ctx.require("subnet", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -2867,16 +2867,16 @@ namespace isc { namespace dhcp { #line 2868 "dhcp6_parser.cc" break; - case 404: // subnet6_params: subnet6_params "," -#line 1664 "dhcp6_parser.yy" + case 405: // subnet6_params: subnet6_params "," +#line 1665 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 2876 "dhcp6_parser.cc" break; - case 457: // $@65: %empty -#line 1724 "dhcp6_parser.yy" + case 458: // $@65: %empty +#line 1725 "dhcp6_parser.yy" { ctx.unique("subnet", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2884,8 +2884,8 @@ namespace isc { namespace dhcp { #line 2885 "dhcp6_parser.cc" break; - case 458: // subnet: "subnet" $@65 ":" "constant string" -#line 1727 "dhcp6_parser.yy" + case 459: // subnet: "subnet" $@65 ":" "constant string" +#line 1728 "dhcp6_parser.yy" { ElementPtr subnet(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("subnet", subnet); @@ -2894,8 +2894,8 @@ namespace isc { namespace dhcp { #line 2895 "dhcp6_parser.cc" break; - case 459: // $@66: %empty -#line 1733 "dhcp6_parser.yy" + case 460: // $@66: %empty +#line 1734 "dhcp6_parser.yy" { ctx.unique("interface", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2903,8 +2903,8 @@ namespace isc { namespace dhcp { #line 2904 "dhcp6_parser.cc" break; - case 460: // interface: "interface" $@66 ":" "constant string" -#line 1736 "dhcp6_parser.yy" + case 461: // interface: "interface" $@66 ":" "constant string" +#line 1737 "dhcp6_parser.yy" { ElementPtr iface(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("interface", iface); @@ -2913,8 +2913,8 @@ namespace isc { namespace dhcp { #line 2914 "dhcp6_parser.cc" break; - case 461: // $@67: %empty -#line 1742 "dhcp6_parser.yy" + case 462: // $@67: %empty +#line 1743 "dhcp6_parser.yy" { ctx.unique("interface-id", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2922,8 +2922,8 @@ namespace isc { namespace dhcp { #line 2923 "dhcp6_parser.cc" break; - case 462: // interface_id: "interface-id" $@67 ":" "constant string" -#line 1745 "dhcp6_parser.yy" + case 463: // interface_id: "interface-id" $@67 ":" "constant string" +#line 1746 "dhcp6_parser.yy" { ElementPtr iface(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("interface-id", iface); @@ -2932,8 +2932,8 @@ namespace isc { namespace dhcp { #line 2933 "dhcp6_parser.cc" break; - case 463: // $@68: %empty -#line 1751 "dhcp6_parser.yy" + case 464: // $@68: %empty +#line 1752 "dhcp6_parser.yy" { ctx.unique("client-class", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -2941,8 +2941,8 @@ namespace isc { namespace dhcp { #line 2942 "dhcp6_parser.cc" break; - case 464: // client_class: "client-class" $@68 ":" "constant string" -#line 1754 "dhcp6_parser.yy" + case 465: // client_class: "client-class" $@68 ":" "constant string" +#line 1755 "dhcp6_parser.yy" { ElementPtr cls(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("client-class", cls); @@ -2951,8 +2951,8 @@ namespace isc { namespace dhcp { #line 2952 "dhcp6_parser.cc" break; - case 465: // $@69: %empty -#line 1761 "dhcp6_parser.yy" + case 466: // $@69: %empty +#line 1762 "dhcp6_parser.yy" { ctx.unique("client-classes", ctx.loc2pos(yystack_[0].location)); ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -2963,8 +2963,8 @@ namespace isc { namespace dhcp { #line 2964 "dhcp6_parser.cc" break; - case 466: // network_client_classes: "client-classes" $@69 ":" list_strings -#line 1767 "dhcp6_parser.yy" + case 467: // network_client_classes: "client-classes" $@69 ":" list_strings +#line 1768 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -2972,8 +2972,8 @@ namespace isc { namespace dhcp { #line 2973 "dhcp6_parser.cc" break; - case 467: // $@70: %empty -#line 1773 "dhcp6_parser.yy" + case 468: // $@70: %empty +#line 1774 "dhcp6_parser.yy" { ctx.unique("require-client-classes", ctx.loc2pos(yystack_[0].location)); ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -2984,8 +2984,8 @@ namespace isc { namespace dhcp { #line 2985 "dhcp6_parser.cc" break; - case 468: // require_client_classes: "require-client-classes" $@70 ":" list_strings -#line 1779 "dhcp6_parser.yy" + case 469: // require_client_classes: "require-client-classes" $@70 ":" list_strings +#line 1780 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -2993,8 +2993,8 @@ namespace isc { namespace dhcp { #line 2994 "dhcp6_parser.cc" break; - case 469: // $@71: %empty -#line 1784 "dhcp6_parser.yy" + case 470: // $@71: %empty +#line 1785 "dhcp6_parser.yy" { ctx.unique("evaluate-additional-classes", ctx.loc2pos(yystack_[0].location)); ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3005,8 +3005,8 @@ namespace isc { namespace dhcp { #line 3006 "dhcp6_parser.cc" break; - case 470: // evaluate_additional_classes: "evaluate-additional-classes" $@71 ":" list_strings -#line 1790 "dhcp6_parser.yy" + case 471: // evaluate_additional_classes: "evaluate-additional-classes" $@71 ":" list_strings +#line 1791 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3014,8 +3014,8 @@ namespace isc { namespace dhcp { #line 3015 "dhcp6_parser.cc" break; - case 471: // reservations_global: "reservations-global" ":" "boolean" -#line 1795 "dhcp6_parser.yy" + case 472: // reservations_global: "reservations-global" ":" "boolean" +#line 1796 "dhcp6_parser.yy" { ctx.unique("reservations-global", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -3024,8 +3024,8 @@ namespace isc { namespace dhcp { #line 3025 "dhcp6_parser.cc" break; - case 472: // reservations_in_subnet: "reservations-in-subnet" ":" "boolean" -#line 1801 "dhcp6_parser.yy" + case 473: // reservations_in_subnet: "reservations-in-subnet" ":" "boolean" +#line 1802 "dhcp6_parser.yy" { ctx.unique("reservations-in-subnet", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -3034,8 +3034,8 @@ namespace isc { namespace dhcp { #line 3035 "dhcp6_parser.cc" break; - case 473: // reservations_out_of_pool: "reservations-out-of-pool" ":" "boolean" -#line 1807 "dhcp6_parser.yy" + case 474: // reservations_out_of_pool: "reservations-out-of-pool" ":" "boolean" +#line 1808 "dhcp6_parser.yy" { ctx.unique("reservations-out-of-pool", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -3044,8 +3044,8 @@ namespace isc { namespace dhcp { #line 3045 "dhcp6_parser.cc" break; - case 474: // id: "id" ":" "integer" -#line 1813 "dhcp6_parser.yy" + case 475: // id: "id" ":" "integer" +#line 1814 "dhcp6_parser.yy" { ctx.unique("id", ctx.loc2pos(yystack_[2].location)); ElementPtr id(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -3054,8 +3054,8 @@ namespace isc { namespace dhcp { #line 3055 "dhcp6_parser.cc" break; - case 475: // rapid_commit: "rapid-commit" ":" "boolean" -#line 1819 "dhcp6_parser.yy" + case 476: // rapid_commit: "rapid-commit" ":" "boolean" +#line 1820 "dhcp6_parser.yy" { ctx.unique("rapid-commit", ctx.loc2pos(yystack_[2].location)); ElementPtr rc(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -3064,8 +3064,8 @@ namespace isc { namespace dhcp { #line 3065 "dhcp6_parser.cc" break; - case 476: // $@72: %empty -#line 1827 "dhcp6_parser.yy" + case 477: // $@72: %empty +#line 1828 "dhcp6_parser.yy" { ctx.unique("shared-networks", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3076,8 +3076,8 @@ namespace isc { namespace dhcp { #line 3077 "dhcp6_parser.cc" break; - case 477: // shared_networks: "shared-networks" $@72 ":" "[" shared_networks_content "]" -#line 1833 "dhcp6_parser.yy" + case 478: // shared_networks: "shared-networks" $@72 ":" "[" shared_networks_content "]" +#line 1834 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3085,16 +3085,16 @@ namespace isc { namespace dhcp { #line 3086 "dhcp6_parser.cc" break; - case 482: // shared_networks_list: shared_networks_list "," -#line 1846 "dhcp6_parser.yy" + case 483: // shared_networks_list: shared_networks_list "," +#line 1847 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3094 "dhcp6_parser.cc" break; - case 483: // $@73: %empty -#line 1851 "dhcp6_parser.yy" + case 484: // $@73: %empty +#line 1852 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -3103,24 +3103,24 @@ namespace isc { namespace dhcp { #line 3104 "dhcp6_parser.cc" break; - case 484: // shared_network: "{" $@73 shared_network_params "}" -#line 1855 "dhcp6_parser.yy" + case 485: // shared_network: "{" $@73 shared_network_params "}" +#line 1856 "dhcp6_parser.yy" { ctx.stack_.pop_back(); } #line 3112 "dhcp6_parser.cc" break; - case 487: // shared_network_params: shared_network_params "," -#line 1861 "dhcp6_parser.yy" + case 488: // shared_network_params: shared_network_params "," +#line 1862 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3120 "dhcp6_parser.cc" break; - case 537: // $@74: %empty -#line 1921 "dhcp6_parser.yy" + case 538: // $@74: %empty +#line 1922 "dhcp6_parser.yy" { ctx.unique("option-def", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3131,8 +3131,8 @@ namespace isc { namespace dhcp { #line 3132 "dhcp6_parser.cc" break; - case 538: // option_def_list: "option-def" $@74 ":" "[" option_def_list_content "]" -#line 1927 "dhcp6_parser.yy" + case 539: // option_def_list: "option-def" $@74 ":" "[" option_def_list_content "]" +#line 1928 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3140,8 +3140,8 @@ namespace isc { namespace dhcp { #line 3141 "dhcp6_parser.cc" break; - case 539: // $@75: %empty -#line 1935 "dhcp6_parser.yy" + case 540: // $@75: %empty +#line 1936 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.push_back(m); @@ -3149,24 +3149,24 @@ namespace isc { namespace dhcp { #line 3150 "dhcp6_parser.cc" break; - case 540: // sub_option_def_list: "{" $@75 option_def_list "}" -#line 1938 "dhcp6_parser.yy" + case 541: // sub_option_def_list: "{" $@75 option_def_list "}" +#line 1939 "dhcp6_parser.yy" { // parsing completed } #line 3158 "dhcp6_parser.cc" break; - case 545: // not_empty_option_def_list: not_empty_option_def_list "," -#line 1950 "dhcp6_parser.yy" + case 546: // not_empty_option_def_list: not_empty_option_def_list "," +#line 1951 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3166 "dhcp6_parser.cc" break; - case 546: // $@76: %empty -#line 1957 "dhcp6_parser.yy" + case 547: // $@76: %empty +#line 1958 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -3175,8 +3175,8 @@ namespace isc { namespace dhcp { #line 3176 "dhcp6_parser.cc" break; - case 547: // option_def_entry: "{" $@76 option_def_params "}" -#line 1961 "dhcp6_parser.yy" + case 548: // option_def_entry: "{" $@76 option_def_params "}" +#line 1962 "dhcp6_parser.yy" { // The name, code and type option def parameters are required. ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -3187,8 +3187,8 @@ namespace isc { namespace dhcp { #line 3188 "dhcp6_parser.cc" break; - case 548: // $@77: %empty -#line 1972 "dhcp6_parser.yy" + case 549: // $@77: %empty +#line 1973 "dhcp6_parser.yy" { // Parse the option-def list entry map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -3197,8 +3197,8 @@ namespace isc { namespace dhcp { #line 3198 "dhcp6_parser.cc" break; - case 549: // sub_option_def: "{" $@77 option_def_params "}" -#line 1976 "dhcp6_parser.yy" + case 550: // sub_option_def: "{" $@77 option_def_params "}" +#line 1977 "dhcp6_parser.yy" { // The name, code and type option def parameters are required. ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -3209,16 +3209,16 @@ namespace isc { namespace dhcp { #line 3210 "dhcp6_parser.cc" break; - case 554: // not_empty_option_def_params: not_empty_option_def_params "," -#line 1992 "dhcp6_parser.yy" + case 555: // not_empty_option_def_params: not_empty_option_def_params "," +#line 1993 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3218 "dhcp6_parser.cc" break; - case 566: // code: "code" ":" "integer" -#line 2011 "dhcp6_parser.yy" + case 567: // code: "code" ":" "integer" +#line 2012 "dhcp6_parser.yy" { ctx.unique("code", ctx.loc2pos(yystack_[2].location)); ElementPtr code(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -3227,8 +3227,8 @@ namespace isc { namespace dhcp { #line 3228 "dhcp6_parser.cc" break; - case 568: // $@78: %empty -#line 2019 "dhcp6_parser.yy" + case 569: // $@78: %empty +#line 2020 "dhcp6_parser.yy" { ctx.unique("type", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3236,8 +3236,8 @@ namespace isc { namespace dhcp { #line 3237 "dhcp6_parser.cc" break; - case 569: // option_def_type: "type" $@78 ":" "constant string" -#line 2022 "dhcp6_parser.yy" + case 570: // option_def_type: "type" $@78 ":" "constant string" +#line 2023 "dhcp6_parser.yy" { ElementPtr prf(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("type", prf); @@ -3246,8 +3246,8 @@ namespace isc { namespace dhcp { #line 3247 "dhcp6_parser.cc" break; - case 570: // $@79: %empty -#line 2028 "dhcp6_parser.yy" + case 571: // $@79: %empty +#line 2029 "dhcp6_parser.yy" { ctx.unique("record-types", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3255,8 +3255,8 @@ namespace isc { namespace dhcp { #line 3256 "dhcp6_parser.cc" break; - case 571: // option_def_record_types: "record-types" $@79 ":" "constant string" -#line 2031 "dhcp6_parser.yy" + case 572: // option_def_record_types: "record-types" $@79 ":" "constant string" +#line 2032 "dhcp6_parser.yy" { ElementPtr rtypes(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("record-types", rtypes); @@ -3265,8 +3265,8 @@ namespace isc { namespace dhcp { #line 3266 "dhcp6_parser.cc" break; - case 572: // $@80: %empty -#line 2037 "dhcp6_parser.yy" + case 573: // $@80: %empty +#line 2038 "dhcp6_parser.yy" { ctx.unique("space", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3274,8 +3274,8 @@ namespace isc { namespace dhcp { #line 3275 "dhcp6_parser.cc" break; - case 573: // space: "space" $@80 ":" "constant string" -#line 2040 "dhcp6_parser.yy" + case 574: // space: "space" $@80 ":" "constant string" +#line 2041 "dhcp6_parser.yy" { ElementPtr space(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("space", space); @@ -3284,8 +3284,8 @@ namespace isc { namespace dhcp { #line 3285 "dhcp6_parser.cc" break; - case 575: // $@81: %empty -#line 2048 "dhcp6_parser.yy" + case 576: // $@81: %empty +#line 2049 "dhcp6_parser.yy" { ctx.unique("encapsulate", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3293,8 +3293,8 @@ namespace isc { namespace dhcp { #line 3294 "dhcp6_parser.cc" break; - case 576: // option_def_encapsulate: "encapsulate" $@81 ":" "constant string" -#line 2051 "dhcp6_parser.yy" + case 577: // option_def_encapsulate: "encapsulate" $@81 ":" "constant string" +#line 2052 "dhcp6_parser.yy" { ElementPtr encap(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("encapsulate", encap); @@ -3303,8 +3303,8 @@ namespace isc { namespace dhcp { #line 3304 "dhcp6_parser.cc" break; - case 577: // option_def_array: "array" ":" "boolean" -#line 2057 "dhcp6_parser.yy" + case 578: // option_def_array: "array" ":" "boolean" +#line 2058 "dhcp6_parser.yy" { ctx.unique("array", ctx.loc2pos(yystack_[2].location)); ElementPtr array(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -3313,8 +3313,8 @@ namespace isc { namespace dhcp { #line 3314 "dhcp6_parser.cc" break; - case 578: // $@82: %empty -#line 2067 "dhcp6_parser.yy" + case 579: // $@82: %empty +#line 2068 "dhcp6_parser.yy" { ctx.unique("option-data", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3325,8 +3325,8 @@ namespace isc { namespace dhcp { #line 3326 "dhcp6_parser.cc" break; - case 579: // option_data_list: "option-data" $@82 ":" "[" option_data_list_content "]" -#line 2073 "dhcp6_parser.yy" + case 580: // option_data_list: "option-data" $@82 ":" "[" option_data_list_content "]" +#line 2074 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3334,16 +3334,16 @@ namespace isc { namespace dhcp { #line 3335 "dhcp6_parser.cc" break; - case 584: // not_empty_option_data_list: not_empty_option_data_list "," -#line 2088 "dhcp6_parser.yy" + case 585: // not_empty_option_data_list: not_empty_option_data_list "," +#line 2089 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3343 "dhcp6_parser.cc" break; - case 585: // $@83: %empty -#line 2095 "dhcp6_parser.yy" + case 586: // $@83: %empty +#line 2096 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -3352,8 +3352,8 @@ namespace isc { namespace dhcp { #line 3353 "dhcp6_parser.cc" break; - case 586: // option_data_entry: "{" $@83 option_data_params "}" -#line 2099 "dhcp6_parser.yy" + case 587: // option_data_entry: "{" $@83 option_data_params "}" +#line 2100 "dhcp6_parser.yy" { /// @todo: the code or name parameters are required. ctx.stack_.pop_back(); @@ -3361,8 +3361,8 @@ namespace isc { namespace dhcp { #line 3362 "dhcp6_parser.cc" break; - case 587: // $@84: %empty -#line 2107 "dhcp6_parser.yy" + case 588: // $@84: %empty +#line 2108 "dhcp6_parser.yy" { // Parse the option-data list entry map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -3371,8 +3371,8 @@ namespace isc { namespace dhcp { #line 3372 "dhcp6_parser.cc" break; - case 588: // sub_option_data: "{" $@84 option_data_params "}" -#line 2111 "dhcp6_parser.yy" + case 589: // sub_option_data: "{" $@84 option_data_params "}" +#line 2112 "dhcp6_parser.yy" { /// @todo: the code or name parameters are required. // parsing completed @@ -3380,16 +3380,16 @@ namespace isc { namespace dhcp { #line 3381 "dhcp6_parser.cc" break; - case 593: // not_empty_option_data_params: not_empty_option_data_params "," -#line 2127 "dhcp6_parser.yy" + case 594: // not_empty_option_data_params: not_empty_option_data_params "," +#line 2128 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3389 "dhcp6_parser.cc" break; - case 606: // $@85: %empty -#line 2149 "dhcp6_parser.yy" + case 607: // $@85: %empty +#line 2150 "dhcp6_parser.yy" { ctx.unique("data", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3397,8 +3397,8 @@ namespace isc { namespace dhcp { #line 3398 "dhcp6_parser.cc" break; - case 607: // option_data_data: "data" $@85 ":" "constant string" -#line 2152 "dhcp6_parser.yy" + case 608: // option_data_data: "data" $@85 ":" "constant string" +#line 2153 "dhcp6_parser.yy" { ElementPtr data(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("data", data); @@ -3407,8 +3407,8 @@ namespace isc { namespace dhcp { #line 3408 "dhcp6_parser.cc" break; - case 610: // option_data_csv_format: "csv-format" ":" "boolean" -#line 2162 "dhcp6_parser.yy" + case 611: // option_data_csv_format: "csv-format" ":" "boolean" +#line 2163 "dhcp6_parser.yy" { ctx.unique("csv-format", ctx.loc2pos(yystack_[2].location)); ElementPtr csv(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -3417,8 +3417,8 @@ namespace isc { namespace dhcp { #line 3418 "dhcp6_parser.cc" break; - case 611: // option_data_always_send: "always-send" ":" "boolean" -#line 2168 "dhcp6_parser.yy" + case 612: // option_data_always_send: "always-send" ":" "boolean" +#line 2169 "dhcp6_parser.yy" { ctx.unique("always-send", ctx.loc2pos(yystack_[2].location)); ElementPtr persist(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -3427,8 +3427,8 @@ namespace isc { namespace dhcp { #line 3428 "dhcp6_parser.cc" break; - case 612: // option_data_never_send: "never-send" ":" "boolean" -#line 2174 "dhcp6_parser.yy" + case 613: // option_data_never_send: "never-send" ":" "boolean" +#line 2175 "dhcp6_parser.yy" { ctx.unique("never-send", ctx.loc2pos(yystack_[2].location)); ElementPtr cancel(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -3437,8 +3437,8 @@ namespace isc { namespace dhcp { #line 3438 "dhcp6_parser.cc" break; - case 613: // $@86: %empty -#line 2180 "dhcp6_parser.yy" + case 614: // $@86: %empty +#line 2181 "dhcp6_parser.yy" { ctx.unique("client-classes", ctx.loc2pos(yystack_[0].location)); ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3449,8 +3449,8 @@ namespace isc { namespace dhcp { #line 3450 "dhcp6_parser.cc" break; - case 614: // option_data_client_classes: "client-classes" $@86 ":" list_strings -#line 2186 "dhcp6_parser.yy" + case 615: // option_data_client_classes: "client-classes" $@86 ":" list_strings +#line 2187 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3458,8 +3458,8 @@ namespace isc { namespace dhcp { #line 3459 "dhcp6_parser.cc" break; - case 615: // $@87: %empty -#line 2194 "dhcp6_parser.yy" + case 616: // $@87: %empty +#line 2195 "dhcp6_parser.yy" { ctx.unique("pools", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3470,8 +3470,8 @@ namespace isc { namespace dhcp { #line 3471 "dhcp6_parser.cc" break; - case 616: // pools_list: "pools" $@87 ":" "[" pools_list_content "]" -#line 2200 "dhcp6_parser.yy" + case 617: // pools_list: "pools" $@87 ":" "[" pools_list_content "]" +#line 2201 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3479,16 +3479,16 @@ namespace isc { namespace dhcp { #line 3480 "dhcp6_parser.cc" break; - case 621: // not_empty_pools_list: not_empty_pools_list "," -#line 2213 "dhcp6_parser.yy" + case 622: // not_empty_pools_list: not_empty_pools_list "," +#line 2214 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3488 "dhcp6_parser.cc" break; - case 622: // $@88: %empty -#line 2218 "dhcp6_parser.yy" + case 623: // $@88: %empty +#line 2219 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -3497,8 +3497,8 @@ namespace isc { namespace dhcp { #line 3498 "dhcp6_parser.cc" break; - case 623: // pool_list_entry: "{" $@88 pool_params "}" -#line 2222 "dhcp6_parser.yy" + case 624: // pool_list_entry: "{" $@88 pool_params "}" +#line 2223 "dhcp6_parser.yy" { // The pool parameter is required. ctx.require("pool", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -3507,8 +3507,8 @@ namespace isc { namespace dhcp { #line 3508 "dhcp6_parser.cc" break; - case 624: // $@89: %empty -#line 2228 "dhcp6_parser.yy" + case 625: // $@89: %empty +#line 2229 "dhcp6_parser.yy" { // Parse the pool list entry map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -3517,8 +3517,8 @@ namespace isc { namespace dhcp { #line 3518 "dhcp6_parser.cc" break; - case 625: // sub_pool6: "{" $@89 pool_params "}" -#line 2232 "dhcp6_parser.yy" + case 626: // sub_pool6: "{" $@89 pool_params "}" +#line 2233 "dhcp6_parser.yy" { // The pool parameter is required. ctx.require("pool", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -3527,16 +3527,16 @@ namespace isc { namespace dhcp { #line 3528 "dhcp6_parser.cc" break; - case 628: // pool_params: pool_params "," -#line 2240 "dhcp6_parser.yy" + case 629: // pool_params: pool_params "," +#line 2241 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3536 "dhcp6_parser.cc" break; - case 653: // $@90: %empty -#line 2271 "dhcp6_parser.yy" + case 654: // $@90: %empty +#line 2272 "dhcp6_parser.yy" { ctx.unique("pool", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3544,8 +3544,8 @@ namespace isc { namespace dhcp { #line 3545 "dhcp6_parser.cc" break; - case 654: // pool_entry: "pool" $@90 ":" "constant string" -#line 2274 "dhcp6_parser.yy" + case 655: // pool_entry: "pool" $@90 ":" "constant string" +#line 2275 "dhcp6_parser.yy" { ElementPtr pool(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("pool", pool); @@ -3554,8 +3554,8 @@ namespace isc { namespace dhcp { #line 3555 "dhcp6_parser.cc" break; - case 655: // pool_id: "pool-id" ":" "integer" -#line 2280 "dhcp6_parser.yy" + case 656: // pool_id: "pool-id" ":" "integer" +#line 2281 "dhcp6_parser.yy" { ctx.unique("pool-id", ctx.loc2pos(yystack_[2].location)); ElementPtr id(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -3564,16 +3564,16 @@ namespace isc { namespace dhcp { #line 3565 "dhcp6_parser.cc" break; - case 656: // $@91: %empty -#line 2286 "dhcp6_parser.yy" + case 657: // $@91: %empty +#line 2287 "dhcp6_parser.yy" { ctx.enter(ctx.NO_KEYWORD); } #line 3573 "dhcp6_parser.cc" break; - case 657: // user_context: "user-context" $@91 ":" map_value -#line 2288 "dhcp6_parser.yy" + case 658: // user_context: "user-context" $@91 ":" map_value +#line 2289 "dhcp6_parser.yy" { ElementPtr parent = ctx.stack_.back(); ElementPtr user_context = yystack_[0].value.as < ElementPtr > (); @@ -3599,16 +3599,16 @@ namespace isc { namespace dhcp { #line 3600 "dhcp6_parser.cc" break; - case 658: // $@92: %empty -#line 2311 "dhcp6_parser.yy" + case 659: // $@92: %empty +#line 2312 "dhcp6_parser.yy" { ctx.enter(ctx.NO_KEYWORD); } #line 3608 "dhcp6_parser.cc" break; - case 659: // comment: "comment" $@92 ":" "constant string" -#line 2313 "dhcp6_parser.yy" + case 660: // comment: "comment" $@92 ":" "constant string" +#line 2314 "dhcp6_parser.yy" { ElementPtr parent = ctx.stack_.back(); ElementPtr user_context(new MapElement(ctx.loc2pos(yystack_[3].location))); @@ -3636,8 +3636,8 @@ namespace isc { namespace dhcp { #line 3637 "dhcp6_parser.cc" break; - case 660: // $@93: %empty -#line 2341 "dhcp6_parser.yy" + case 661: // $@93: %empty +#line 2342 "dhcp6_parser.yy" { ctx.unique("pd-pools", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3648,8 +3648,8 @@ namespace isc { namespace dhcp { #line 3649 "dhcp6_parser.cc" break; - case 661: // pd_pools_list: "pd-pools" $@93 ":" "[" pd_pools_list_content "]" -#line 2347 "dhcp6_parser.yy" + case 662: // pd_pools_list: "pd-pools" $@93 ":" "[" pd_pools_list_content "]" +#line 2348 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3657,16 +3657,16 @@ namespace isc { namespace dhcp { #line 3658 "dhcp6_parser.cc" break; - case 666: // not_empty_pd_pools_list: not_empty_pd_pools_list "," -#line 2360 "dhcp6_parser.yy" + case 667: // not_empty_pd_pools_list: not_empty_pd_pools_list "," +#line 2361 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3666 "dhcp6_parser.cc" break; - case 667: // $@94: %empty -#line 2365 "dhcp6_parser.yy" + case 668: // $@94: %empty +#line 2366 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -3675,8 +3675,8 @@ namespace isc { namespace dhcp { #line 3676 "dhcp6_parser.cc" break; - case 668: // pd_pool_entry: "{" $@94 pd_pool_params "}" -#line 2369 "dhcp6_parser.yy" + case 669: // pd_pool_entry: "{" $@94 pd_pool_params "}" +#line 2370 "dhcp6_parser.yy" { // The prefix, prefix len and delegated len parameters are required. ctx.require("prefix", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -3687,8 +3687,8 @@ namespace isc { namespace dhcp { #line 3688 "dhcp6_parser.cc" break; - case 669: // $@95: %empty -#line 2377 "dhcp6_parser.yy" + case 670: // $@95: %empty +#line 2378 "dhcp6_parser.yy" { // Parse the pd-pool list entry map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -3697,8 +3697,8 @@ namespace isc { namespace dhcp { #line 3698 "dhcp6_parser.cc" break; - case 670: // sub_pd_pool: "{" $@95 pd_pool_params "}" -#line 2381 "dhcp6_parser.yy" + case 671: // sub_pd_pool: "{" $@95 pd_pool_params "}" +#line 2382 "dhcp6_parser.yy" { // The prefix, prefix len and delegated len parameters are required. ctx.require("prefix", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -3709,16 +3709,16 @@ namespace isc { namespace dhcp { #line 3710 "dhcp6_parser.cc" break; - case 673: // pd_pool_params: pd_pool_params "," -#line 2391 "dhcp6_parser.yy" + case 674: // pd_pool_params: pd_pool_params "," +#line 2392 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3718 "dhcp6_parser.cc" break; - case 688: // $@96: %empty -#line 2412 "dhcp6_parser.yy" + case 689: // $@96: %empty +#line 2413 "dhcp6_parser.yy" { ctx.unique("prefix", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3726,8 +3726,8 @@ namespace isc { namespace dhcp { #line 3727 "dhcp6_parser.cc" break; - case 689: // pd_prefix: "prefix" $@96 ":" "constant string" -#line 2415 "dhcp6_parser.yy" + case 690: // pd_prefix: "prefix" $@96 ":" "constant string" +#line 2416 "dhcp6_parser.yy" { ElementPtr prf(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("prefix", prf); @@ -3736,8 +3736,8 @@ namespace isc { namespace dhcp { #line 3737 "dhcp6_parser.cc" break; - case 690: // pd_prefix_len: "prefix-len" ":" "integer" -#line 2421 "dhcp6_parser.yy" + case 691: // pd_prefix_len: "prefix-len" ":" "integer" +#line 2422 "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))); @@ -3746,8 +3746,8 @@ namespace isc { namespace dhcp { #line 3747 "dhcp6_parser.cc" break; - case 691: // $@97: %empty -#line 2427 "dhcp6_parser.yy" + case 692: // $@97: %empty +#line 2428 "dhcp6_parser.yy" { ctx.unique("excluded-prefix", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3755,8 +3755,8 @@ namespace isc { namespace dhcp { #line 3756 "dhcp6_parser.cc" break; - case 692: // excluded_prefix: "excluded-prefix" $@97 ":" "constant string" -#line 2430 "dhcp6_parser.yy" + case 693: // excluded_prefix: "excluded-prefix" $@97 ":" "constant string" +#line 2431 "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); @@ -3765,8 +3765,8 @@ namespace isc { namespace dhcp { #line 3766 "dhcp6_parser.cc" break; - case 693: // excluded_prefix_len: "excluded-prefix-len" ":" "integer" -#line 2436 "dhcp6_parser.yy" + case 694: // excluded_prefix_len: "excluded-prefix-len" ":" "integer" +#line 2437 "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))); @@ -3775,8 +3775,8 @@ namespace isc { namespace dhcp { #line 3776 "dhcp6_parser.cc" break; - case 694: // pd_delegated_len: "delegated-len" ":" "integer" -#line 2442 "dhcp6_parser.yy" + case 695: // pd_delegated_len: "delegated-len" ":" "integer" +#line 2443 "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))); @@ -3785,8 +3785,8 @@ namespace isc { namespace dhcp { #line 3786 "dhcp6_parser.cc" break; - case 695: // $@98: %empty -#line 2451 "dhcp6_parser.yy" + case 696: // $@98: %empty +#line 2452 "dhcp6_parser.yy" { ctx.unique("reservations", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3797,8 +3797,8 @@ namespace isc { namespace dhcp { #line 3798 "dhcp6_parser.cc" break; - case 696: // reservations: "reservations" $@98 ":" "[" reservations_list "]" -#line 2457 "dhcp6_parser.yy" + case 697: // reservations: "reservations" $@98 ":" "[" reservations_list "]" +#line 2458 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3806,16 +3806,16 @@ namespace isc { namespace dhcp { #line 3807 "dhcp6_parser.cc" break; - case 701: // not_empty_reservations_list: not_empty_reservations_list "," -#line 2468 "dhcp6_parser.yy" + case 702: // not_empty_reservations_list: not_empty_reservations_list "," +#line 2469 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3815 "dhcp6_parser.cc" break; - case 702: // $@99: %empty -#line 2473 "dhcp6_parser.yy" + case 703: // $@99: %empty +#line 2474 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -3824,8 +3824,8 @@ namespace isc { namespace dhcp { #line 3825 "dhcp6_parser.cc" break; - case 703: // reservation: "{" $@99 reservation_params "}" -#line 2477 "dhcp6_parser.yy" + case 704: // reservation: "{" $@99 reservation_params "}" +#line 2478 "dhcp6_parser.yy" { /// @todo: an identifier parameter is required. ctx.stack_.pop_back(); @@ -3833,8 +3833,8 @@ namespace isc { namespace dhcp { #line 3834 "dhcp6_parser.cc" break; - case 704: // $@100: %empty -#line 2482 "dhcp6_parser.yy" + case 705: // $@100: %empty +#line 2483 "dhcp6_parser.yy" { // Parse the reservations list entry map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -3843,8 +3843,8 @@ namespace isc { namespace dhcp { #line 3844 "dhcp6_parser.cc" break; - case 705: // sub_reservation: "{" $@100 reservation_params "}" -#line 2486 "dhcp6_parser.yy" + case 706: // sub_reservation: "{" $@100 reservation_params "}" +#line 2487 "dhcp6_parser.yy" { /// @todo: an identifier parameter is required. // parsing completed @@ -3852,16 +3852,16 @@ namespace isc { namespace dhcp { #line 3853 "dhcp6_parser.cc" break; - case 710: // not_empty_reservation_params: not_empty_reservation_params "," -#line 2497 "dhcp6_parser.yy" + case 711: // not_empty_reservation_params: not_empty_reservation_params "," +#line 2498 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 3861 "dhcp6_parser.cc" break; - case 723: // $@101: %empty -#line 2517 "dhcp6_parser.yy" + case 724: // $@101: %empty +#line 2518 "dhcp6_parser.yy" { ctx.unique("ip-addresses", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3872,8 +3872,8 @@ namespace isc { namespace dhcp { #line 3873 "dhcp6_parser.cc" break; - case 724: // ip_addresses: "ip-addresses" $@101 ":" list_strings -#line 2523 "dhcp6_parser.yy" + case 725: // ip_addresses: "ip-addresses" $@101 ":" list_strings +#line 2524 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3881,8 +3881,8 @@ namespace isc { namespace dhcp { #line 3882 "dhcp6_parser.cc" break; - case 725: // $@102: %empty -#line 2528 "dhcp6_parser.yy" + case 726: // $@102: %empty +#line 2529 "dhcp6_parser.yy" { ctx.unique("prefixes", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3893,8 +3893,8 @@ namespace isc { namespace dhcp { #line 3894 "dhcp6_parser.cc" break; - case 726: // prefixes: "prefixes" $@102 ":" list_strings -#line 2534 "dhcp6_parser.yy" + case 727: // prefixes: "prefixes" $@102 ":" list_strings +#line 2535 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3902,8 +3902,8 @@ namespace isc { namespace dhcp { #line 3903 "dhcp6_parser.cc" break; - case 727: // $@103: %empty -#line 2539 "dhcp6_parser.yy" + case 728: // $@103: %empty +#line 2540 "dhcp6_parser.yy" { ctx.unique("excluded-prefixes", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -3914,8 +3914,8 @@ namespace isc { namespace dhcp { #line 3915 "dhcp6_parser.cc" break; - case 728: // excluded_prefixes: "excluded-prefixes" $@103 ":" list_strings -#line 2545 "dhcp6_parser.yy" + case 729: // excluded_prefixes: "excluded-prefixes" $@103 ":" list_strings +#line 2546 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -3923,8 +3923,8 @@ namespace isc { namespace dhcp { #line 3924 "dhcp6_parser.cc" break; - case 729: // $@104: %empty -#line 2550 "dhcp6_parser.yy" + case 730: // $@104: %empty +#line 2551 "dhcp6_parser.yy" { ctx.unique("duid", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3932,8 +3932,8 @@ namespace isc { namespace dhcp { #line 3933 "dhcp6_parser.cc" break; - case 730: // duid: "duid" $@104 ":" "constant string" -#line 2553 "dhcp6_parser.yy" + case 731: // duid: "duid" $@104 ":" "constant string" +#line 2554 "dhcp6_parser.yy" { ElementPtr d(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("duid", d); @@ -3942,8 +3942,8 @@ namespace isc { namespace dhcp { #line 3943 "dhcp6_parser.cc" break; - case 731: // $@105: %empty -#line 2559 "dhcp6_parser.yy" + case 732: // $@105: %empty +#line 2560 "dhcp6_parser.yy" { ctx.unique("hw-address", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3951,8 +3951,8 @@ namespace isc { namespace dhcp { #line 3952 "dhcp6_parser.cc" break; - case 732: // hw_address: "hw-address" $@105 ":" "constant string" -#line 2562 "dhcp6_parser.yy" + case 733: // hw_address: "hw-address" $@105 ":" "constant string" +#line 2563 "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); @@ -3961,8 +3961,8 @@ namespace isc { namespace dhcp { #line 3962 "dhcp6_parser.cc" break; - case 733: // $@106: %empty -#line 2568 "dhcp6_parser.yy" + case 734: // $@106: %empty +#line 2569 "dhcp6_parser.yy" { ctx.unique("hostname", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3970,8 +3970,8 @@ namespace isc { namespace dhcp { #line 3971 "dhcp6_parser.cc" break; - case 734: // hostname: "hostname" $@106 ":" "constant string" -#line 2571 "dhcp6_parser.yy" + case 735: // hostname: "hostname" $@106 ":" "constant string" +#line 2572 "dhcp6_parser.yy" { ElementPtr host(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("hostname", host); @@ -3980,8 +3980,8 @@ namespace isc { namespace dhcp { #line 3981 "dhcp6_parser.cc" break; - case 735: // $@107: %empty -#line 2577 "dhcp6_parser.yy" + case 736: // $@107: %empty +#line 2578 "dhcp6_parser.yy" { ctx.unique("flex-id", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -3989,8 +3989,8 @@ namespace isc { namespace dhcp { #line 3990 "dhcp6_parser.cc" break; - case 736: // flex_id_value: "flex-id" $@107 ":" "constant string" -#line 2580 "dhcp6_parser.yy" + case 737: // flex_id_value: "flex-id" $@107 ":" "constant string" +#line 2581 "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); @@ -3999,8 +3999,8 @@ namespace isc { namespace dhcp { #line 4000 "dhcp6_parser.cc" break; - case 737: // $@108: %empty -#line 2586 "dhcp6_parser.yy" + case 738: // $@108: %empty +#line 2587 "dhcp6_parser.yy" { ctx.unique("client-classes", ctx.loc2pos(yystack_[0].location)); ElementPtr c(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -4011,8 +4011,8 @@ namespace isc { namespace dhcp { #line 4012 "dhcp6_parser.cc" break; - case 738: // reservation_client_classes: "client-classes" $@108 ":" list_strings -#line 2592 "dhcp6_parser.yy" + case 739: // reservation_client_classes: "client-classes" $@108 ":" list_strings +#line 2593 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -4020,8 +4020,8 @@ namespace isc { namespace dhcp { #line 4021 "dhcp6_parser.cc" break; - case 739: // $@109: %empty -#line 2600 "dhcp6_parser.yy" + case 740: // $@109: %empty +#line 2601 "dhcp6_parser.yy" { ctx.unique("relay", ctx.loc2pos(yystack_[0].location)); ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -4032,8 +4032,8 @@ namespace isc { namespace dhcp { #line 4033 "dhcp6_parser.cc" break; - case 740: // relay: "relay" $@109 ":" "{" relay_map "}" -#line 2606 "dhcp6_parser.yy" + case 741: // relay: "relay" $@109 ":" "{" relay_map "}" +#line 2607 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -4041,8 +4041,8 @@ namespace isc { namespace dhcp { #line 4042 "dhcp6_parser.cc" break; - case 742: // $@110: %empty -#line 2617 "dhcp6_parser.yy" + case 743: // $@110: %empty +#line 2618 "dhcp6_parser.yy" { ctx.unique("client-classes", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -4053,8 +4053,8 @@ namespace isc { namespace dhcp { #line 4054 "dhcp6_parser.cc" break; - case 743: // client_classes: "client-classes" $@110 ":" "[" client_classes_list "]" -#line 2623 "dhcp6_parser.yy" + case 744: // client_classes: "client-classes" $@110 ":" "[" client_classes_list "]" +#line 2624 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -4062,16 +4062,16 @@ namespace isc { namespace dhcp { #line 4063 "dhcp6_parser.cc" break; - case 746: // client_classes_list: client_classes_list "," -#line 2630 "dhcp6_parser.yy" + case 747: // client_classes_list: client_classes_list "," +#line 2631 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4071 "dhcp6_parser.cc" break; - case 747: // $@111: %empty -#line 2635 "dhcp6_parser.yy" + case 748: // $@111: %empty +#line 2636 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -4080,8 +4080,8 @@ namespace isc { namespace dhcp { #line 4081 "dhcp6_parser.cc" break; - case 748: // client_class_entry: "{" $@111 client_class_params "}" -#line 2639 "dhcp6_parser.yy" + case 749: // client_class_entry: "{" $@111 client_class_params "}" +#line 2640 "dhcp6_parser.yy" { // The name client class parameter is required. ctx.require("name", ctx.loc2pos(yystack_[3].location), ctx.loc2pos(yystack_[0].location)); @@ -4090,16 +4090,16 @@ namespace isc { namespace dhcp { #line 4091 "dhcp6_parser.cc" break; - case 753: // not_empty_client_class_params: not_empty_client_class_params "," -#line 2651 "dhcp6_parser.yy" + case 754: // not_empty_client_class_params: not_empty_client_class_params "," +#line 2652 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4099 "dhcp6_parser.cc" break; - case 770: // $@112: %empty -#line 2675 "dhcp6_parser.yy" + case 771: // $@112: %empty +#line 2676 "dhcp6_parser.yy" { ctx.unique("test", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4107,8 +4107,8 @@ namespace isc { namespace dhcp { #line 4108 "dhcp6_parser.cc" break; - case 771: // client_class_test: "test" $@112 ":" "constant string" -#line 2678 "dhcp6_parser.yy" + case 772: // client_class_test: "test" $@112 ":" "constant string" +#line 2679 "dhcp6_parser.yy" { ElementPtr test(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("test", test); @@ -4117,8 +4117,8 @@ namespace isc { namespace dhcp { #line 4118 "dhcp6_parser.cc" break; - case 772: // $@113: %empty -#line 2684 "dhcp6_parser.yy" + case 773: // $@113: %empty +#line 2685 "dhcp6_parser.yy" { ctx.unique("template-test", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4126,8 +4126,8 @@ namespace isc { namespace dhcp { #line 4127 "dhcp6_parser.cc" break; - case 773: // client_class_template_test: "template-test" $@113 ":" "constant string" -#line 2687 "dhcp6_parser.yy" + case 774: // client_class_template_test: "template-test" $@113 ":" "constant string" +#line 2688 "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); @@ -4136,8 +4136,8 @@ namespace isc { namespace dhcp { #line 4137 "dhcp6_parser.cc" break; - case 774: // only_if_required: "only-if-required" ":" "boolean" -#line 2694 "dhcp6_parser.yy" + case 775: // only_if_required: "only-if-required" ":" "boolean" +#line 2695 "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))); @@ -4146,8 +4146,8 @@ namespace isc { namespace dhcp { #line 4147 "dhcp6_parser.cc" break; - case 775: // only_in_additional_list: "only-in-additional-list" ":" "boolean" -#line 2700 "dhcp6_parser.yy" + case 776: // only_in_additional_list: "only-in-additional-list" ":" "boolean" +#line 2701 "dhcp6_parser.yy" { ctx.unique("only-in-additional-list", ctx.loc2pos(yystack_[2].location)); ElementPtr b(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -4156,8 +4156,8 @@ namespace isc { namespace dhcp { #line 4157 "dhcp6_parser.cc" break; - case 776: // $@114: %empty -#line 2709 "dhcp6_parser.yy" + case 777: // $@114: %empty +#line 2710 "dhcp6_parser.yy" { ctx.unique("server-id", ctx.loc2pos(yystack_[0].location)); ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -4168,8 +4168,8 @@ namespace isc { namespace dhcp { #line 4169 "dhcp6_parser.cc" break; - case 777: // server_id: "server-id" $@114 ":" "{" server_id_params "}" -#line 2715 "dhcp6_parser.yy" + case 778: // server_id: "server-id" $@114 ":" "{" server_id_params "}" +#line 2716 "dhcp6_parser.yy" { // The type parameter is required. ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location)); @@ -4179,16 +4179,16 @@ namespace isc { namespace dhcp { #line 4180 "dhcp6_parser.cc" break; - case 780: // server_id_params: server_id_params "," -#line 2724 "dhcp6_parser.yy" + case 781: // server_id_params: server_id_params "," +#line 2725 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4188 "dhcp6_parser.cc" break; - case 790: // $@115: %empty -#line 2740 "dhcp6_parser.yy" + case 791: // $@115: %empty +#line 2741 "dhcp6_parser.yy" { ctx.unique("type", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.DUID_TYPE); @@ -4196,8 +4196,8 @@ namespace isc { namespace dhcp { #line 4197 "dhcp6_parser.cc" break; - case 791: // server_id_type: "type" $@115 ":" duid_type -#line 2743 "dhcp6_parser.yy" + case 792: // server_id_type: "type" $@115 ":" duid_type +#line 2744 "dhcp6_parser.yy" { ctx.stack_.back()->set("type", yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -4205,26 +4205,26 @@ namespace isc { namespace dhcp { #line 4206 "dhcp6_parser.cc" break; - case 792: // duid_type: "LLT" -#line 2748 "dhcp6_parser.yy" + case 793: // duid_type: "LLT" +#line 2749 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("LLT", ctx.loc2pos(yystack_[0].location))); } #line 4212 "dhcp6_parser.cc" break; - case 793: // duid_type: "EN" -#line 2749 "dhcp6_parser.yy" + case 794: // duid_type: "EN" +#line 2750 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("EN", ctx.loc2pos(yystack_[0].location))); } #line 4218 "dhcp6_parser.cc" break; - case 794: // duid_type: "LL" -#line 2750 "dhcp6_parser.yy" + case 795: // duid_type: "LL" +#line 2751 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("LL", ctx.loc2pos(yystack_[0].location))); } #line 4224 "dhcp6_parser.cc" break; - case 795: // htype: "htype" ":" "integer" -#line 2753 "dhcp6_parser.yy" + case 796: // htype: "htype" ":" "integer" +#line 2754 "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))); @@ -4233,8 +4233,8 @@ namespace isc { namespace dhcp { #line 4234 "dhcp6_parser.cc" break; - case 796: // $@116: %empty -#line 2759 "dhcp6_parser.yy" + case 797: // $@116: %empty +#line 2760 "dhcp6_parser.yy" { ctx.unique("identifier", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4242,8 +4242,8 @@ namespace isc { namespace dhcp { #line 4243 "dhcp6_parser.cc" break; - case 797: // identifier: "identifier" $@116 ":" "constant string" -#line 2762 "dhcp6_parser.yy" + case 798: // identifier: "identifier" $@116 ":" "constant string" +#line 2763 "dhcp6_parser.yy" { ElementPtr id(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("identifier", id); @@ -4252,8 +4252,8 @@ namespace isc { namespace dhcp { #line 4253 "dhcp6_parser.cc" break; - case 798: // time: "time" ":" "integer" -#line 2768 "dhcp6_parser.yy" + case 799: // time: "time" ":" "integer" +#line 2769 "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))); @@ -4262,8 +4262,8 @@ namespace isc { namespace dhcp { #line 4263 "dhcp6_parser.cc" break; - case 799: // enterprise_id: "enterprise-id" ":" "integer" -#line 2774 "dhcp6_parser.yy" + case 800: // enterprise_id: "enterprise-id" ":" "integer" +#line 2775 "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))); @@ -4272,8 +4272,8 @@ namespace isc { namespace dhcp { #line 4273 "dhcp6_parser.cc" break; - case 800: // dhcp4o6_port: "dhcp4o6-port" ":" "integer" -#line 2782 "dhcp6_parser.yy" + case 801: // dhcp4o6_port: "dhcp4o6-port" ":" "integer" +#line 2783 "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))); @@ -4282,8 +4282,8 @@ namespace isc { namespace dhcp { #line 4283 "dhcp6_parser.cc" break; - case 801: // $@117: %empty -#line 2790 "dhcp6_parser.yy" + case 802: // $@117: %empty +#line 2791 "dhcp6_parser.yy" { ctx.unique("control-socket", ctx.loc2pos(yystack_[0].location)); ctx.unique("control-sockets", ctx.loc2pos(yystack_[0].location)); @@ -4295,8 +4295,8 @@ namespace isc { namespace dhcp { #line 4296 "dhcp6_parser.cc" break; - case 802: // control_socket: "control-socket" $@117 ":" "{" control_socket_params "}" -#line 2797 "dhcp6_parser.yy" + case 803: // control_socket: "control-socket" $@117 ":" "{" control_socket_params "}" +#line 2798 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -4304,8 +4304,8 @@ namespace isc { namespace dhcp { #line 4305 "dhcp6_parser.cc" break; - case 803: // $@118: %empty -#line 2802 "dhcp6_parser.yy" + case 804: // $@118: %empty +#line 2803 "dhcp6_parser.yy" { ctx.unique("control-sockets", ctx.loc2pos(yystack_[0].location)); ctx.unique("control-socket", ctx.loc2pos(yystack_[0].location)); @@ -4317,8 +4317,8 @@ namespace isc { namespace dhcp { #line 4318 "dhcp6_parser.cc" break; - case 804: // control_sockets: "control-sockets" $@118 ":" "[" control_socket_list "]" -#line 2809 "dhcp6_parser.yy" + case 805: // control_sockets: "control-sockets" $@118 ":" "[" control_socket_list "]" +#line 2810 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -4326,16 +4326,16 @@ namespace isc { namespace dhcp { #line 4327 "dhcp6_parser.cc" break; - case 809: // not_empty_control_socket_list: not_empty_control_socket_list "," -#line 2820 "dhcp6_parser.yy" + case 810: // not_empty_control_socket_list: not_empty_control_socket_list "," +#line 2821 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4335 "dhcp6_parser.cc" break; - case 810: // $@119: %empty -#line 2825 "dhcp6_parser.yy" + case 811: // $@119: %empty +#line 2826 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -4344,24 +4344,24 @@ namespace isc { namespace dhcp { #line 4345 "dhcp6_parser.cc" break; - case 811: // control_socket_entry: "{" $@119 control_socket_params "}" -#line 2829 "dhcp6_parser.yy" + case 812: // control_socket_entry: "{" $@119 control_socket_params "}" +#line 2830 "dhcp6_parser.yy" { ctx.stack_.pop_back(); } #line 4353 "dhcp6_parser.cc" break; - case 814: // control_socket_params: control_socket_params "," -#line 2835 "dhcp6_parser.yy" + case 815: // control_socket_params: control_socket_params "," +#line 2836 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4361 "dhcp6_parser.cc" break; - case 828: // $@120: %empty -#line 2855 "dhcp6_parser.yy" + case 829: // $@120: %empty +#line 2856 "dhcp6_parser.yy" { ctx.unique("socket-type", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.CONTROL_SOCKET_TYPE); @@ -4369,8 +4369,8 @@ namespace isc { namespace dhcp { #line 4370 "dhcp6_parser.cc" break; - case 829: // control_socket_type: "socket-type" $@120 ":" control_socket_type_value -#line 2858 "dhcp6_parser.yy" + case 830: // control_socket_type: "socket-type" $@120 ":" control_socket_type_value +#line 2859 "dhcp6_parser.yy" { ctx.stack_.back()->set("socket-type", yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -4378,26 +4378,26 @@ namespace isc { namespace dhcp { #line 4379 "dhcp6_parser.cc" break; - case 830: // control_socket_type_value: "unix" -#line 2864 "dhcp6_parser.yy" + case 831: // control_socket_type_value: "unix" +#line 2865 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("unix", ctx.loc2pos(yystack_[0].location))); } #line 4385 "dhcp6_parser.cc" break; - case 831: // control_socket_type_value: "http" -#line 2865 "dhcp6_parser.yy" + case 832: // control_socket_type_value: "http" +#line 2866 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("http", ctx.loc2pos(yystack_[0].location))); } #line 4391 "dhcp6_parser.cc" break; - case 832: // control_socket_type_value: "https" -#line 2866 "dhcp6_parser.yy" + case 833: // control_socket_type_value: "https" +#line 2867 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("https", ctx.loc2pos(yystack_[0].location))); } #line 4397 "dhcp6_parser.cc" break; - case 833: // $@121: %empty -#line 2869 "dhcp6_parser.yy" + case 834: // $@121: %empty +#line 2870 "dhcp6_parser.yy" { ctx.unique("socket-name", ctx.loc2pos(yystack_[0].location)); ctx.unique("socket-address", ctx.loc2pos(yystack_[0].location)); @@ -4406,8 +4406,8 @@ namespace isc { namespace dhcp { #line 4407 "dhcp6_parser.cc" break; - case 834: // control_socket_name: "socket-name" $@121 ":" "constant string" -#line 2873 "dhcp6_parser.yy" + case 835: // control_socket_name: "socket-name" $@121 ":" "constant string" +#line 2874 "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); @@ -4416,8 +4416,8 @@ namespace isc { namespace dhcp { #line 4417 "dhcp6_parser.cc" break; - case 835: // $@122: %empty -#line 2879 "dhcp6_parser.yy" + case 836: // $@122: %empty +#line 2880 "dhcp6_parser.yy" { ctx.unique("socket-address", ctx.loc2pos(yystack_[0].location)); ctx.unique("socket-name", ctx.loc2pos(yystack_[0].location)); @@ -4426,8 +4426,8 @@ namespace isc { namespace dhcp { #line 4427 "dhcp6_parser.cc" break; - case 836: // control_socket_address: "socket-address" $@122 ":" "constant string" -#line 2883 "dhcp6_parser.yy" + case 837: // control_socket_address: "socket-address" $@122 ":" "constant string" +#line 2884 "dhcp6_parser.yy" { ElementPtr address(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("socket-address", address); @@ -4436,8 +4436,8 @@ namespace isc { namespace dhcp { #line 4437 "dhcp6_parser.cc" break; - case 837: // control_socket_port: "socket-port" ":" "integer" -#line 2889 "dhcp6_parser.yy" + case 838: // control_socket_port: "socket-port" ":" "integer" +#line 2890 "dhcp6_parser.yy" { ctx.unique("socket-port", ctx.loc2pos(yystack_[2].location)); ElementPtr port(new IntElement(yystack_[0].value.as < int64_t > (), ctx.loc2pos(yystack_[0].location))); @@ -4446,8 +4446,8 @@ namespace isc { namespace dhcp { #line 4447 "dhcp6_parser.cc" break; - case 838: // cert_required: "cert-required" ":" "boolean" -#line 2895 "dhcp6_parser.yy" + case 839: // cert_required: "cert-required" ":" "boolean" +#line 2896 "dhcp6_parser.yy" { ctx.unique("cert-required", ctx.loc2pos(yystack_[2].location)); ElementPtr req(new BoolElement(yystack_[0].value.as < bool > (), ctx.loc2pos(yystack_[0].location))); @@ -4456,8 +4456,8 @@ namespace isc { namespace dhcp { #line 4457 "dhcp6_parser.cc" break; - case 839: // $@123: %empty -#line 2901 "dhcp6_parser.yy" + case 840: // $@123: %empty +#line 2902 "dhcp6_parser.yy" { ctx.unique("http-headers", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -4468,8 +4468,8 @@ namespace isc { namespace dhcp { #line 4469 "dhcp6_parser.cc" break; - case 840: // http_headers: "http-headers" $@123 ":" "[" http_header_list "]" -#line 2907 "dhcp6_parser.yy" + case 841: // http_headers: "http-headers" $@123 ":" "[" http_header_list "]" +#line 2908 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -4477,16 +4477,16 @@ namespace isc { namespace dhcp { #line 4478 "dhcp6_parser.cc" break; - case 845: // not_empty_http_header_list: not_empty_http_header_list "," -#line 2918 "dhcp6_parser.yy" + case 846: // not_empty_http_header_list: not_empty_http_header_list "," +#line 2919 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4486 "dhcp6_parser.cc" break; - case 846: // $@124: %empty -#line 2923 "dhcp6_parser.yy" + case 847: // $@124: %empty +#line 2924 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -4495,24 +4495,24 @@ namespace isc { namespace dhcp { #line 4496 "dhcp6_parser.cc" break; - case 847: // http_header: "{" $@124 http_header_params "}" -#line 2927 "dhcp6_parser.yy" + case 848: // http_header: "{" $@124 http_header_params "}" +#line 2928 "dhcp6_parser.yy" { ctx.stack_.pop_back(); } #line 4504 "dhcp6_parser.cc" break; - case 850: // http_header_params: http_header_params "," -#line 2933 "dhcp6_parser.yy" + case 851: // http_header_params: http_header_params "," +#line 2934 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4512 "dhcp6_parser.cc" break; - case 856: // $@125: %empty -#line 2945 "dhcp6_parser.yy" + case 857: // $@125: %empty +#line 2946 "dhcp6_parser.yy" { ctx.unique("value", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4520,8 +4520,8 @@ namespace isc { namespace dhcp { #line 4521 "dhcp6_parser.cc" break; - case 857: // header_value: "value" $@125 ":" "constant string" -#line 2948 "dhcp6_parser.yy" + case 858: // header_value: "value" $@125 ":" "constant string" +#line 2949 "dhcp6_parser.yy" { ElementPtr value(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("value", value); @@ -4530,8 +4530,8 @@ namespace isc { namespace dhcp { #line 4531 "dhcp6_parser.cc" break; - case 858: // $@126: %empty -#line 2956 "dhcp6_parser.yy" + case 859: // $@126: %empty +#line 2957 "dhcp6_parser.yy" { ctx.unique("authentication", ctx.loc2pos(yystack_[0].location)); ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -4542,8 +4542,8 @@ namespace isc { namespace dhcp { #line 4543 "dhcp6_parser.cc" break; - case 859: // authentication: "authentication" $@126 ":" "{" auth_params "}" -#line 2962 "dhcp6_parser.yy" + case 860: // authentication: "authentication" $@126 ":" "{" auth_params "}" +#line 2963 "dhcp6_parser.yy" { // The type parameter is required ctx.require("type", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location)); @@ -4553,16 +4553,16 @@ namespace isc { namespace dhcp { #line 4554 "dhcp6_parser.cc" break; - case 862: // auth_params: auth_params "," -#line 2971 "dhcp6_parser.yy" + case 863: // auth_params: auth_params "," +#line 2972 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4562 "dhcp6_parser.cc" break; - case 870: // $@127: %empty -#line 2985 "dhcp6_parser.yy" + case 871: // $@127: %empty +#line 2986 "dhcp6_parser.yy" { ctx.unique("type", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.AUTH_TYPE); @@ -4570,8 +4570,8 @@ namespace isc { namespace dhcp { #line 4571 "dhcp6_parser.cc" break; - case 871: // auth_type: "type" $@127 ":" auth_type_value -#line 2988 "dhcp6_parser.yy" + case 872: // auth_type: "type" $@127 ":" auth_type_value +#line 2989 "dhcp6_parser.yy" { ctx.stack_.back()->set("type", yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -4579,14 +4579,14 @@ namespace isc { namespace dhcp { #line 4580 "dhcp6_parser.cc" break; - case 872: // auth_type_value: "basic" -#line 2993 "dhcp6_parser.yy" + case 873: // auth_type_value: "basic" +#line 2994 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("basic", ctx.loc2pos(yystack_[0].location))); } #line 4586 "dhcp6_parser.cc" break; - case 873: // $@128: %empty -#line 2996 "dhcp6_parser.yy" + case 874: // $@128: %empty +#line 2997 "dhcp6_parser.yy" { ctx.unique("realm", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4594,8 +4594,8 @@ namespace isc { namespace dhcp { #line 4595 "dhcp6_parser.cc" break; - case 874: // realm: "realm" $@128 ":" "constant string" -#line 2999 "dhcp6_parser.yy" + case 875: // realm: "realm" $@128 ":" "constant string" +#line 3000 "dhcp6_parser.yy" { ElementPtr realm(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("realm", realm); @@ -4604,8 +4604,8 @@ namespace isc { namespace dhcp { #line 4605 "dhcp6_parser.cc" break; - case 875: // $@129: %empty -#line 3005 "dhcp6_parser.yy" + case 876: // $@129: %empty +#line 3006 "dhcp6_parser.yy" { ctx.unique("directory", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4613,8 +4613,8 @@ namespace isc { namespace dhcp { #line 4614 "dhcp6_parser.cc" break; - case 876: // directory: "directory" $@129 ":" "constant string" -#line 3008 "dhcp6_parser.yy" + case 877: // directory: "directory" $@129 ":" "constant string" +#line 3009 "dhcp6_parser.yy" { ElementPtr directory(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("directory", directory); @@ -4623,8 +4623,8 @@ namespace isc { namespace dhcp { #line 4624 "dhcp6_parser.cc" break; - case 877: // $@130: %empty -#line 3014 "dhcp6_parser.yy" + case 878: // $@130: %empty +#line 3015 "dhcp6_parser.yy" { ctx.unique("clients", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -4635,8 +4635,8 @@ namespace isc { namespace dhcp { #line 4636 "dhcp6_parser.cc" break; - case 878: // clients: "clients" $@130 ":" "[" clients_list "]" -#line 3020 "dhcp6_parser.yy" + case 879: // clients: "clients" $@130 ":" "[" clients_list "]" +#line 3021 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -4644,16 +4644,16 @@ namespace isc { namespace dhcp { #line 4645 "dhcp6_parser.cc" break; - case 883: // not_empty_clients_list: not_empty_clients_list "," -#line 3031 "dhcp6_parser.yy" + case 884: // not_empty_clients_list: not_empty_clients_list "," +#line 3032 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4653 "dhcp6_parser.cc" break; - case 884: // $@131: %empty -#line 3036 "dhcp6_parser.yy" + case 885: // $@131: %empty +#line 3037 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -4662,24 +4662,24 @@ namespace isc { namespace dhcp { #line 4663 "dhcp6_parser.cc" break; - case 885: // basic_auth: "{" $@131 clients_params "}" -#line 3040 "dhcp6_parser.yy" + case 886: // basic_auth: "{" $@131 clients_params "}" +#line 3041 "dhcp6_parser.yy" { ctx.stack_.pop_back(); } #line 4671 "dhcp6_parser.cc" break; - case 888: // clients_params: clients_params "," -#line 3046 "dhcp6_parser.yy" + case 889: // clients_params: clients_params "," +#line 3047 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4679 "dhcp6_parser.cc" break; - case 896: // $@132: %empty -#line 3060 "dhcp6_parser.yy" + case 897: // $@132: %empty +#line 3061 "dhcp6_parser.yy" { ctx.unique("user-file", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4687,8 +4687,8 @@ namespace isc { namespace dhcp { #line 4688 "dhcp6_parser.cc" break; - case 897: // user_file: "user-file" $@132 ":" "constant string" -#line 3063 "dhcp6_parser.yy" + case 898: // user_file: "user-file" $@132 ":" "constant string" +#line 3064 "dhcp6_parser.yy" { ElementPtr user(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("user-file", user); @@ -4697,8 +4697,8 @@ namespace isc { namespace dhcp { #line 4698 "dhcp6_parser.cc" break; - case 898: // $@133: %empty -#line 3069 "dhcp6_parser.yy" + case 899: // $@133: %empty +#line 3070 "dhcp6_parser.yy" { ctx.unique("password-file", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4706,8 +4706,8 @@ namespace isc { namespace dhcp { #line 4707 "dhcp6_parser.cc" break; - case 899: // password_file: "password-file" $@133 ":" "constant string" -#line 3072 "dhcp6_parser.yy" + case 900: // password_file: "password-file" $@133 ":" "constant string" +#line 3073 "dhcp6_parser.yy" { ElementPtr password(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("password-file", password); @@ -4716,8 +4716,8 @@ namespace isc { namespace dhcp { #line 4717 "dhcp6_parser.cc" break; - case 900: // $@134: %empty -#line 3080 "dhcp6_parser.yy" + case 901: // $@134: %empty +#line 3081 "dhcp6_parser.yy" { ctx.unique("dhcp-queue-control", ctx.loc2pos(yystack_[0].location)); ElementPtr qc(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -4728,8 +4728,8 @@ namespace isc { namespace dhcp { #line 4729 "dhcp6_parser.cc" break; - case 901: // dhcp_queue_control: "dhcp-queue-control" $@134 ":" "{" queue_control_params "}" -#line 3086 "dhcp6_parser.yy" + case 902: // dhcp_queue_control: "dhcp-queue-control" $@134 ":" "{" queue_control_params "}" +#line 3087 "dhcp6_parser.yy" { // The enable queue parameter is required. ctx.require("enable-queue", ctx.loc2pos(yystack_[2].location), ctx.loc2pos(yystack_[0].location)); @@ -4739,16 +4739,16 @@ namespace isc { namespace dhcp { #line 4740 "dhcp6_parser.cc" break; - case 904: // queue_control_params: queue_control_params "," -#line 3095 "dhcp6_parser.yy" + case 905: // queue_control_params: queue_control_params "," +#line 3096 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4748 "dhcp6_parser.cc" break; - case 911: // enable_queue: "enable-queue" ":" "boolean" -#line 3108 "dhcp6_parser.yy" + case 912: // enable_queue: "enable-queue" ":" "boolean" +#line 3109 "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))); @@ -4757,8 +4757,8 @@ namespace isc { namespace dhcp { #line 4758 "dhcp6_parser.cc" break; - case 912: // $@135: %empty -#line 3114 "dhcp6_parser.yy" + case 913: // $@135: %empty +#line 3115 "dhcp6_parser.yy" { ctx.unique("queue-type", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4766,8 +4766,8 @@ namespace isc { namespace dhcp { #line 4767 "dhcp6_parser.cc" break; - case 913: // queue_type: "queue-type" $@135 ":" "constant string" -#line 3117 "dhcp6_parser.yy" + case 914: // queue_type: "queue-type" $@135 ":" "constant string" +#line 3118 "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); @@ -4776,8 +4776,8 @@ namespace isc { namespace dhcp { #line 4777 "dhcp6_parser.cc" break; - case 914: // capacity: "capacity" ":" "integer" -#line 3123 "dhcp6_parser.yy" + case 915: // capacity: "capacity" ":" "integer" +#line 3124 "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))); @@ -4786,8 +4786,8 @@ namespace isc { namespace dhcp { #line 4787 "dhcp6_parser.cc" break; - case 915: // $@136: %empty -#line 3129 "dhcp6_parser.yy" + case 916: // $@136: %empty +#line 3130 "dhcp6_parser.yy" { ctx.unique(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4795,8 +4795,8 @@ namespace isc { namespace dhcp { #line 4796 "dhcp6_parser.cc" break; - case 916: // arbitrary_map_entry: "constant string" $@136 ":" value -#line 3132 "dhcp6_parser.yy" + case 917: // arbitrary_map_entry: "constant string" $@136 ":" value +#line 3133 "dhcp6_parser.yy" { ctx.stack_.back()->set(yystack_[3].value.as < std::string > (), yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -4804,8 +4804,8 @@ namespace isc { namespace dhcp { #line 4805 "dhcp6_parser.cc" break; - case 917: // $@137: %empty -#line 3139 "dhcp6_parser.yy" + case 918: // $@137: %empty +#line 3140 "dhcp6_parser.yy" { ctx.unique("dhcp-ddns", ctx.loc2pos(yystack_[0].location)); ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -4816,8 +4816,8 @@ namespace isc { namespace dhcp { #line 4817 "dhcp6_parser.cc" break; - case 918: // dhcp_ddns: "dhcp-ddns" $@137 ":" "{" dhcp_ddns_params "}" -#line 3145 "dhcp6_parser.yy" + case 919: // dhcp_ddns: "dhcp-ddns" $@137 ":" "{" dhcp_ddns_params "}" +#line 3146 "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)); @@ -4827,8 +4827,8 @@ namespace isc { namespace dhcp { #line 4828 "dhcp6_parser.cc" break; - case 919: // $@138: %empty -#line 3152 "dhcp6_parser.yy" + case 920: // $@138: %empty +#line 3153 "dhcp6_parser.yy" { // Parse the dhcp-ddns map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -4837,8 +4837,8 @@ namespace isc { namespace dhcp { #line 4838 "dhcp6_parser.cc" break; - case 920: // sub_dhcp_ddns: "{" $@138 dhcp_ddns_params "}" -#line 3156 "dhcp6_parser.yy" + case 921: // sub_dhcp_ddns: "{" $@138 dhcp_ddns_params "}" +#line 3157 "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)); @@ -4847,16 +4847,16 @@ namespace isc { namespace dhcp { #line 4848 "dhcp6_parser.cc" break; - case 923: // dhcp_ddns_params: dhcp_ddns_params "," -#line 3164 "dhcp6_parser.yy" + case 924: // dhcp_ddns_params: dhcp_ddns_params "," +#line 3165 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 4856 "dhcp6_parser.cc" break; - case 935: // enable_updates: "enable-updates" ":" "boolean" -#line 3182 "dhcp6_parser.yy" + case 936: // enable_updates: "enable-updates" ":" "boolean" +#line 3183 "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))); @@ -4865,8 +4865,8 @@ namespace isc { namespace dhcp { #line 4866 "dhcp6_parser.cc" break; - case 936: // $@139: %empty -#line 3188 "dhcp6_parser.yy" + case 937: // $@139: %empty +#line 3189 "dhcp6_parser.yy" { ctx.unique("server-ip", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4874,8 +4874,8 @@ namespace isc { namespace dhcp { #line 4875 "dhcp6_parser.cc" break; - case 937: // server_ip: "server-ip" $@139 ":" "constant string" -#line 3191 "dhcp6_parser.yy" + case 938: // server_ip: "server-ip" $@139 ":" "constant string" +#line 3192 "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); @@ -4884,8 +4884,8 @@ namespace isc { namespace dhcp { #line 4885 "dhcp6_parser.cc" break; - case 938: // server_port: "server-port" ":" "integer" -#line 3197 "dhcp6_parser.yy" + case 939: // server_port: "server-port" ":" "integer" +#line 3198 "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))); @@ -4894,8 +4894,8 @@ namespace isc { namespace dhcp { #line 4895 "dhcp6_parser.cc" break; - case 939: // $@140: %empty -#line 3203 "dhcp6_parser.yy" + case 940: // $@140: %empty +#line 3204 "dhcp6_parser.yy" { ctx.unique("sender-ip", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -4903,8 +4903,8 @@ namespace isc { namespace dhcp { #line 4904 "dhcp6_parser.cc" break; - case 940: // sender_ip: "sender-ip" $@140 ":" "constant string" -#line 3206 "dhcp6_parser.yy" + case 941: // sender_ip: "sender-ip" $@140 ":" "constant string" +#line 3207 "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); @@ -4913,8 +4913,8 @@ namespace isc { namespace dhcp { #line 4914 "dhcp6_parser.cc" break; - case 941: // sender_port: "sender-port" ":" "integer" -#line 3212 "dhcp6_parser.yy" + case 942: // sender_port: "sender-port" ":" "integer" +#line 3213 "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))); @@ -4923,8 +4923,8 @@ namespace isc { namespace dhcp { #line 4924 "dhcp6_parser.cc" break; - case 942: // max_queue_size: "max-queue-size" ":" "integer" -#line 3218 "dhcp6_parser.yy" + case 943: // max_queue_size: "max-queue-size" ":" "integer" +#line 3219 "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))); @@ -4933,8 +4933,8 @@ namespace isc { namespace dhcp { #line 4934 "dhcp6_parser.cc" break; - case 943: // $@141: %empty -#line 3224 "dhcp6_parser.yy" + case 944: // $@141: %empty +#line 3225 "dhcp6_parser.yy" { ctx.unique("ncr-protocol", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NCR_PROTOCOL); @@ -4942,8 +4942,8 @@ namespace isc { namespace dhcp { #line 4943 "dhcp6_parser.cc" break; - case 944: // ncr_protocol: "ncr-protocol" $@141 ":" ncr_protocol_value -#line 3227 "dhcp6_parser.yy" + case 945: // ncr_protocol: "ncr-protocol" $@141 ":" ncr_protocol_value +#line 3228 "dhcp6_parser.yy" { ctx.stack_.back()->set("ncr-protocol", yystack_[0].value.as < ElementPtr > ()); ctx.leave(); @@ -4951,20 +4951,20 @@ namespace isc { namespace dhcp { #line 4952 "dhcp6_parser.cc" break; - case 945: // ncr_protocol_value: "UDP" -#line 3233 "dhcp6_parser.yy" + case 946: // ncr_protocol_value: "UDP" +#line 3234 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("UDP", ctx.loc2pos(yystack_[0].location))); } #line 4958 "dhcp6_parser.cc" break; - case 946: // ncr_protocol_value: "TCP" -#line 3234 "dhcp6_parser.yy" + case 947: // ncr_protocol_value: "TCP" +#line 3235 "dhcp6_parser.yy" { yylhs.value.as < ElementPtr > () = ElementPtr(new StringElement("TCP", ctx.loc2pos(yystack_[0].location))); } #line 4964 "dhcp6_parser.cc" break; - case 947: // $@142: %empty -#line 3237 "dhcp6_parser.yy" + case 948: // $@142: %empty +#line 3238 "dhcp6_parser.yy" { ctx.unique("ncr-format", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NCR_FORMAT); @@ -4972,8 +4972,8 @@ namespace isc { namespace dhcp { #line 4973 "dhcp6_parser.cc" break; - case 948: // ncr_format: "ncr-format" $@142 ":" "JSON" -#line 3240 "dhcp6_parser.yy" + case 949: // ncr_format: "ncr-format" $@142 ":" "JSON" +#line 3241 "dhcp6_parser.yy" { ElementPtr json(new StringElement("JSON", ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("ncr-format", json); @@ -4982,8 +4982,8 @@ namespace isc { namespace dhcp { #line 4983 "dhcp6_parser.cc" break; - case 949: // $@143: %empty -#line 3248 "dhcp6_parser.yy" + case 950: // $@143: %empty +#line 3249 "dhcp6_parser.yy" { ctx.unique("config-control", ctx.loc2pos(yystack_[0].location)); ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -4994,8 +4994,8 @@ namespace isc { namespace dhcp { #line 4995 "dhcp6_parser.cc" break; - case 950: // config_control: "config-control" $@143 ":" "{" config_control_params "}" -#line 3254 "dhcp6_parser.yy" + case 951: // config_control: "config-control" $@143 ":" "{" config_control_params "}" +#line 3255 "dhcp6_parser.yy" { // No config control params are required ctx.stack_.pop_back(); @@ -5004,8 +5004,8 @@ namespace isc { namespace dhcp { #line 5005 "dhcp6_parser.cc" break; - case 951: // $@144: %empty -#line 3260 "dhcp6_parser.yy" + case 952: // $@144: %empty +#line 3261 "dhcp6_parser.yy" { // Parse the config-control map ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -5014,8 +5014,8 @@ namespace isc { namespace dhcp { #line 5015 "dhcp6_parser.cc" break; - case 952: // sub_config_control: "{" $@144 config_control_params "}" -#line 3264 "dhcp6_parser.yy" + case 953: // sub_config_control: "{" $@144 config_control_params "}" +#line 3265 "dhcp6_parser.yy" { // No config_control params are required // parsing completed @@ -5023,16 +5023,16 @@ namespace isc { namespace dhcp { #line 5024 "dhcp6_parser.cc" break; - case 955: // config_control_params: config_control_params "," -#line 3272 "dhcp6_parser.yy" + case 956: // config_control_params: config_control_params "," +#line 3273 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 5032 "dhcp6_parser.cc" break; - case 958: // $@145: %empty -#line 3282 "dhcp6_parser.yy" + case 959: // $@145: %empty +#line 3283 "dhcp6_parser.yy" { ctx.unique("config-databases", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -5043,8 +5043,8 @@ namespace isc { namespace dhcp { #line 5044 "dhcp6_parser.cc" break; - case 959: // config_databases: "config-databases" $@145 ":" "[" database_list "]" -#line 3288 "dhcp6_parser.yy" + case 960: // config_databases: "config-databases" $@145 ":" "[" database_list "]" +#line 3289 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -5052,8 +5052,8 @@ namespace isc { namespace dhcp { #line 5053 "dhcp6_parser.cc" break; - case 960: // config_fetch_wait_time: "config-fetch-wait-time" ":" "integer" -#line 3293 "dhcp6_parser.yy" + case 961: // config_fetch_wait_time: "config-fetch-wait-time" ":" "integer" +#line 3294 "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))); @@ -5062,8 +5062,8 @@ namespace isc { namespace dhcp { #line 5063 "dhcp6_parser.cc" break; - case 961: // $@146: %empty -#line 3301 "dhcp6_parser.yy" + case 962: // $@146: %empty +#line 3302 "dhcp6_parser.yy" { ctx.unique("loggers", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -5074,8 +5074,8 @@ namespace isc { namespace dhcp { #line 5075 "dhcp6_parser.cc" break; - case 962: // loggers: "loggers" $@146 ":" "[" loggers_entries "]" -#line 3307 "dhcp6_parser.yy" + case 963: // loggers: "loggers" $@146 ":" "[" loggers_entries "]" +#line 3308 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -5083,16 +5083,16 @@ namespace isc { namespace dhcp { #line 5084 "dhcp6_parser.cc" break; - case 965: // loggers_entries: loggers_entries "," -#line 3316 "dhcp6_parser.yy" + case 966: // loggers_entries: loggers_entries "," +#line 3317 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 5092 "dhcp6_parser.cc" break; - case 966: // $@147: %empty -#line 3322 "dhcp6_parser.yy" + case 967: // $@147: %empty +#line 3323 "dhcp6_parser.yy" { ElementPtr l(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(l); @@ -5101,24 +5101,24 @@ namespace isc { namespace dhcp { #line 5102 "dhcp6_parser.cc" break; - case 967: // logger_entry: "{" $@147 logger_params "}" -#line 3326 "dhcp6_parser.yy" + case 968: // logger_entry: "{" $@147 logger_params "}" +#line 3327 "dhcp6_parser.yy" { ctx.stack_.pop_back(); } #line 5110 "dhcp6_parser.cc" break; - case 970: // logger_params: logger_params "," -#line 3332 "dhcp6_parser.yy" + case 971: // logger_params: logger_params "," +#line 3333 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 5118 "dhcp6_parser.cc" break; - case 978: // debuglevel: "debuglevel" ":" "integer" -#line 3346 "dhcp6_parser.yy" + case 979: // debuglevel: "debuglevel" ":" "integer" +#line 3347 "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))); @@ -5127,8 +5127,8 @@ namespace isc { namespace dhcp { #line 5128 "dhcp6_parser.cc" break; - case 979: // $@148: %empty -#line 3352 "dhcp6_parser.yy" + case 980: // $@148: %empty +#line 3353 "dhcp6_parser.yy" { ctx.unique("severity", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -5136,8 +5136,8 @@ namespace isc { namespace dhcp { #line 5137 "dhcp6_parser.cc" break; - case 980: // severity: "severity" $@148 ":" "constant string" -#line 3355 "dhcp6_parser.yy" + case 981: // severity: "severity" $@148 ":" "constant string" +#line 3356 "dhcp6_parser.yy" { ElementPtr sev(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("severity", sev); @@ -5146,8 +5146,8 @@ namespace isc { namespace dhcp { #line 5147 "dhcp6_parser.cc" break; - case 981: // $@149: %empty -#line 3361 "dhcp6_parser.yy" + case 982: // $@149: %empty +#line 3362 "dhcp6_parser.yy" { ctx.unique("output-options", ctx.loc2pos(yystack_[0].location)); ElementPtr l(new ListElement(ctx.loc2pos(yystack_[0].location))); @@ -5158,8 +5158,8 @@ namespace isc { namespace dhcp { #line 5159 "dhcp6_parser.cc" break; - case 982: // output_options_list: "output-options" $@149 ":" "[" output_options_list_content "]" -#line 3367 "dhcp6_parser.yy" + case 983: // output_options_list: "output-options" $@149 ":" "[" output_options_list_content "]" +#line 3368 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -5167,16 +5167,16 @@ namespace isc { namespace dhcp { #line 5168 "dhcp6_parser.cc" break; - case 985: // output_options_list_content: output_options_list_content "," -#line 3374 "dhcp6_parser.yy" + case 986: // output_options_list_content: output_options_list_content "," +#line 3375 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 5176 "dhcp6_parser.cc" break; - case 986: // $@150: %empty -#line 3379 "dhcp6_parser.yy" + case 987: // $@150: %empty +#line 3380 "dhcp6_parser.yy" { ElementPtr m(new MapElement(ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->add(m); @@ -5185,24 +5185,24 @@ namespace isc { namespace dhcp { #line 5186 "dhcp6_parser.cc" break; - case 987: // output_entry: "{" $@150 output_params_list "}" -#line 3383 "dhcp6_parser.yy" + case 988: // output_entry: "{" $@150 output_params_list "}" +#line 3384 "dhcp6_parser.yy" { ctx.stack_.pop_back(); } #line 5194 "dhcp6_parser.cc" break; - case 990: // output_params_list: output_params_list "," -#line 3389 "dhcp6_parser.yy" + case 991: // output_params_list: output_params_list "," +#line 3390 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 5202 "dhcp6_parser.cc" break; - case 996: // $@151: %empty -#line 3401 "dhcp6_parser.yy" + case 997: // $@151: %empty +#line 3402 "dhcp6_parser.yy" { ctx.unique("output", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -5210,8 +5210,8 @@ namespace isc { namespace dhcp { #line 5211 "dhcp6_parser.cc" break; - case 997: // output: "output" $@151 ":" "constant string" -#line 3404 "dhcp6_parser.yy" + case 998: // output: "output" $@151 ":" "constant string" +#line 3405 "dhcp6_parser.yy" { ElementPtr sev(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("output", sev); @@ -5220,8 +5220,8 @@ namespace isc { namespace dhcp { #line 5221 "dhcp6_parser.cc" break; - case 998: // flush: "flush" ":" "boolean" -#line 3410 "dhcp6_parser.yy" + case 999: // flush: "flush" ":" "boolean" +#line 3411 "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))); @@ -5230,8 +5230,8 @@ namespace isc { namespace dhcp { #line 5231 "dhcp6_parser.cc" break; - case 999: // maxsize: "maxsize" ":" "integer" -#line 3416 "dhcp6_parser.yy" + case 1000: // maxsize: "maxsize" ":" "integer" +#line 3417 "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))); @@ -5240,8 +5240,8 @@ namespace isc { namespace dhcp { #line 5241 "dhcp6_parser.cc" break; - case 1000: // maxver: "maxver" ":" "integer" -#line 3422 "dhcp6_parser.yy" + case 1001: // maxver: "maxver" ":" "integer" +#line 3423 "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))); @@ -5250,8 +5250,8 @@ namespace isc { namespace dhcp { #line 5251 "dhcp6_parser.cc" break; - case 1001: // $@152: %empty -#line 3428 "dhcp6_parser.yy" + case 1002: // $@152: %empty +#line 3429 "dhcp6_parser.yy" { ctx.unique("pattern", ctx.loc2pos(yystack_[0].location)); ctx.enter(ctx.NO_KEYWORD); @@ -5259,8 +5259,8 @@ namespace isc { namespace dhcp { #line 5260 "dhcp6_parser.cc" break; - case 1002: // pattern: "pattern" $@152 ":" "constant string" -#line 3431 "dhcp6_parser.yy" + case 1003: // pattern: "pattern" $@152 ":" "constant string" +#line 3432 "dhcp6_parser.yy" { ElementPtr sev(new StringElement(yystack_[0].value.as < std::string > (), ctx.loc2pos(yystack_[0].location))); ctx.stack_.back()->set("pattern", sev); @@ -5269,8 +5269,8 @@ namespace isc { namespace dhcp { #line 5270 "dhcp6_parser.cc" break; - case 1003: // $@153: %empty -#line 3437 "dhcp6_parser.yy" + case 1004: // $@153: %empty +#line 3438 "dhcp6_parser.yy" { ctx.unique("compatibility", ctx.loc2pos(yystack_[0].location)); ElementPtr i(new MapElement(ctx.loc2pos(yystack_[0].location))); @@ -5281,8 +5281,8 @@ namespace isc { namespace dhcp { #line 5282 "dhcp6_parser.cc" break; - case 1004: // compatibility: "compatibility" $@153 ":" "{" compatibility_params "}" -#line 3443 "dhcp6_parser.yy" + case 1005: // compatibility: "compatibility" $@153 ":" "{" compatibility_params "}" +#line 3444 "dhcp6_parser.yy" { ctx.stack_.pop_back(); ctx.leave(); @@ -5290,16 +5290,16 @@ namespace isc { namespace dhcp { #line 5291 "dhcp6_parser.cc" break; - case 1007: // compatibility_params: compatibility_params "," -#line 3450 "dhcp6_parser.yy" + case 1008: // compatibility_params: compatibility_params "," +#line 3451 "dhcp6_parser.yy" { ctx.warnAboutExtraCommas(yystack_[0].location); } #line 5299 "dhcp6_parser.cc" break; - case 1010: // lenient_option_parsing: "lenient-option-parsing" ":" "boolean" -#line 3459 "dhcp6_parser.yy" + case 1011: // lenient_option_parsing: "lenient-option-parsing" ":" "boolean" +#line 3460 "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))); @@ -5661,167 +5661,167 @@ namespace isc { namespace dhcp { } - const short Dhcp6Parser::yypact_ninf_ = -1446; + const short Dhcp6Parser::yypact_ninf_ = -1445; const signed char Dhcp6Parser::yytable_ninf_ = -1; const short Dhcp6Parser::yypact_[] = { - 482, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, 120, 45, 49, 57, 227, - 247, 255, 266, 267, 289, 293, 295, 310, 313, 314, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 45, -183, - 93, 767, 56, 1445, 346, -20, 256, -15, 134, 217, - -108, 214, 103, -1446, 312, 324, 327, 320, 331, -1446, - 43, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 334, 345, - 348, 350, 352, 362, 372, 388, 391, 392, 402, 403, - 427, 438, -1446, 442, 449, 452, 453, 455, -1446, -1446, - -1446, 456, 465, 476, 488, 498, 506, 508, -1446, -1446, - -1446, 524, -1446, -1446, -1446, -1446, -1446, -1446, 525, 527, - 529, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - 530, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 533, 535, - 537, -1446, -1446, 540, -1446, 75, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 547, - 548, 555, 556, -1446, 98, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, 558, -1446, -1446, -1446, -1446, -1446, 559, - 562, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 143, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, 563, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 153, -1446, -1446, -1446, -1446, -1446, -1446, 564, - -1446, 565, 566, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 156, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, 397, 332, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 475, -1446, -1446, 569, -1446, -1446, -1446, 570, - -1446, -1446, 567, 573, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, 575, 576, 577, - -1446, -1446, -1446, -1446, -1446, 574, 582, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, 174, -1446, -1446, -1446, 584, -1446, 585, -1446, 586, - 587, -1446, -1446, -1446, -1446, -1446, 258, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, 588, 282, -1446, - -1446, -1446, -1446, 45, 45, -1446, 336, 590, -1446, -1446, - 591, 592, 593, 594, 595, 597, 360, 361, 364, 365, - 368, 369, 375, 376, 370, 373, 377, 378, 381, 382, - 600, 385, 389, 386, 390, 393, 629, 632, 637, 407, - 411, 416, 404, 418, 420, 421, 663, 666, 668, 431, - 670, 671, 673, 674, 676, 679, 440, 441, 444, 682, - 686, 688, 691, 693, 695, 697, 698, 699, 462, 702, - 703, 719, 720, 721, 722, 723, 484, 485, 486, 727, - 728, -1446, 767, -1446, 729, 492, 494, 499, 500, 56, - -1446, 496, 730, 731, 736, 742, 743, 507, 509, 746, - 747, 750, 751, 752, 1445, -1446, 753, 517, 346, -1446, - 754, 519, 756, 520, 521, -20, -1446, 760, 763, 764, - 765, 766, 771, 776, 777, -1446, 256, -1446, 779, 780, - 543, 782, 783, 787, 549, -1446, 134, 788, 550, 551, - 552, 793, -1446, 217, 794, 795, -53, -1446, 560, 796, - 568, 803, 571, 572, 804, 805, 214, -1446, 807, 578, - 103, -1446, -1446, -1446, 808, 809, 614, 810, 811, 812, - 827, 851, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, 616, -1446, -1446, -1446, - -1446, -1446, -121, 617, 618, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 855, 856, 857, -1446, 622, 623, 27, 864, - 863, 630, -1446, -1446, -1446, 867, 869, 870, 871, 872, - 874, 875, 877, 878, -1446, 879, 880, 876, 881, 889, - 635, 656, -1446, -1446, -1446, 894, 893, -1446, 896, -1446, - -1446, -1446, -1446, -1446, -1446, 897, 898, 664, 665, 667, - -1446, -1446, 896, 896, 896, 669, 902, -1446, 672, -1446, - -1446, 677, -1446, 680, -1446, -1446, -1446, 896, 896, 896, - 896, 681, 683, 684, 687, -1446, 689, 690, -1446, 692, - 696, 700, -1446, -1446, 701, -1446, -1446, -1446, 896, -1446, - 704, 863, -1446, -1446, 705, -1446, 706, -1446, -1446, -95, - 609, -1446, 899, -1446, -1446, 45, 767, -1446, 103, 56, - 167, 167, 904, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 905, 907, 908, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 910, -1446, -1446, -1446, -87, 45, 91, 122, - 913, 916, 920, 114, 112, 124, 200, 922, 132, 214, - -1446, -1446, 925, -171, -1446, -1446, 929, 931, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, 802, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 904, -1446, 311, 339, 342, -1446, -1446, -1446, - -1446, 940, 944, 945, 946, 947, 948, 949, 950, 951, - 952, -1446, 953, 955, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, 343, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - 374, -1446, 954, 768, -1446, -1446, 957, 958, -1446, -1446, - 959, 961, -1446, -1446, 960, 964, -1446, -1446, 962, 966, - -1446, -1446, -1446, 96, -1446, -1446, -1446, 965, -1446, -1446, - -1446, 163, -1446, -1446, -1446, -1446, -1446, 383, -1446, -1446, - -1446, -1446, 173, -1446, -1446, 967, 969, -1446, -1446, 968, - 972, -1446, 973, 980, 981, 982, 983, 984, 401, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 985, 986, - 987, -1446, -1446, -1446, -1446, 422, -1446, -1446, -1446, -1446, - -1446, -1446, 989, 990, 991, -1446, 429, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, 992, -1446, 993, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, 435, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, 970, 995, -1446, 996, - -1446, 997, -1446, -1446, -1446, 436, -1446, -1446, -1446, -1446, - -1446, 437, -1446, 220, -1446, 998, -1446, 479, -1446, -1446, - 758, -1446, 999, 1000, -1446, -1446, 1001, 1003, -1446, -1446, - 1002, 1005, -1446, -1446, -1446, 1008, 1009, 1010, 1011, 762, - 726, 774, 773, 778, 781, 784, 785, 786, 789, 1014, - 775, 791, 1017, 1018, 1020, 1021, 1025, 167, -1446, -1446, - 167, -1446, 904, 1445, -1446, 905, 134, -1446, 907, 217, - -1446, 908, 1543, -1446, 910, -87, -1446, -1446, 91, -1446, - 1026, 1030, 122, -1446, 225, 913, -1446, 256, -1446, 916, - -108, -1446, 920, 797, 800, 806, 813, 815, 820, 114, - -1446, 1032, 1033, 821, 823, 826, 112, -1446, 829, 834, - 839, 124, -1446, 1043, 1046, 1067, 842, 1088, 850, 1093, - 200, -1446, 200, -1446, 922, 858, 1099, 866, 1108, 132, - -1446, -1446, 248, 925, -1446, 873, -171, -1446, -1446, 1113, - 1006, 346, -1446, 929, -20, -1446, 931, -1446, -1446, 884, - 890, 891, 900, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, 40, -1446, -1446, 909, 911, 914, 424, - 917, -1446, 483, -1446, 487, -1446, 1114, -1446, 1127, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, 490, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, 921, 924, -1446, -1446, -1446, 1117, - 1136, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 1137, 1145, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, 1153, -1446, 491, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 46, 934, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 208, 939, 943, -1446, 1163, -1446, 1184, -1446, - 493, -1446, -1446, 975, -1446, 45, -1446, -1446, 1199, -1446, - -1446, -1446, -1446, -1446, 497, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, 977, 501, -1446, 503, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, 1543, -1446, -1446, -1446, 1209, - 1220, 994, 1004, -1446, 225, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 58, 1219, - -1446, -1446, -1446, 1224, 988, 1227, 248, -1446, -1446, -1446, - -1446, -1446, 1012, 1013, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, 505, -1446, -1446, -1446, -1446, -1446, - -1446, 1228, 1230, -1446, 1231, -1446, 1015, -1446, -1446, -1446, - 1233, 1235, 1236, 1237, 58, -1446, 149, -1446, 1219, 1239, - -1446, 1061, 1022, 1023, 1244, -1446, -1446, -1446, -1446, -1446, - -1446, 515, -1446, -1446, -1446, -1446, 257, -1446, -1446, -1446, - -1446, -1446, 1251, 1240, 149, -1446, 35, 1239, -1446, -1446, - 1245, 1256, -1446, 1024, -1446, -1446, 1257, 1258, 1262, -1446, - 516, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 207, -1446, - 1251, -1446, 1263, 1027, 1028, 1031, 1264, 35, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, 518, -1446, -1446, -1446, - -1446, 1034, -1446, -1446, -1446, 1035, -1446, 1265, 1268, 207, - -1446, -1446, -1446, 1036, 1037, -1446, -1446, -1446 + 485, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, 49, 43, 34, 44, 62, + 83, 93, 98, 106, 147, 158, 167, 176, 209, 211, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 43, -174, + 110, 768, 56, 1448, 195, 281, 301, 2, 11, 335, + -80, 258, 111, -1445, 136, 238, 243, 241, 261, -1445, + 75, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 300, 314, + 325, 327, 331, 334, 365, 394, 417, 418, 430, 433, + 445, 448, 449, -1445, 469, 478, 484, 491, 503, -1445, + -1445, -1445, 512, 516, 520, 521, 523, 527, 528, -1445, + -1445, -1445, 530, -1445, -1445, -1445, -1445, -1445, -1445, 531, + 534, 535, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, 537, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 541, + 543, 547, -1445, -1445, 550, -1445, 81, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, 554, 557, 559, 560, -1445, 101, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + 563, 565, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + 109, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, 566, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, 135, -1445, -1445, -1445, -1445, -1445, -1445, + 567, -1445, 570, 571, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, 145, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, 273, 292, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, 298, -1445, -1445, 573, -1445, -1445, -1445, + 574, -1445, -1445, 403, 428, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 576, 577, + 578, -1445, -1445, -1445, -1445, -1445, 425, 471, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, 159, -1445, -1445, -1445, 579, -1445, 582, -1445, + 584, 585, -1445, -1445, -1445, -1445, -1445, 174, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 586, 190, + -1445, -1445, -1445, -1445, 43, 43, -1445, -131, 587, -1445, + -1445, 588, 589, 592, 596, 599, 600, 363, 364, 366, + 368, 369, 370, 373, 376, 375, 378, 379, 383, 386, + 388, 387, 603, 390, 391, 392, 393, 399, 605, 621, + 634, 400, 405, 411, 414, 416, 419, 422, 638, 656, + 658, 426, 663, 669, 672, 675, 677, 680, 441, 442, + 443, 685, 687, 688, 691, 692, 693, 694, 695, 697, + 461, 698, 701, 704, 706, 722, 723, 724, 487, 492, + 493, 725, 726, -1445, 768, -1445, 728, 495, 496, 499, + 500, 56, -1445, 729, 730, 731, 739, 743, 506, 507, + 746, 748, 750, 751, 752, 1448, -1445, 753, 517, 195, + -1445, 754, 518, 757, 522, 526, 281, -1445, 758, 759, + 761, 765, 766, 767, 772, 777, -1445, 301, -1445, 778, + 780, 544, 781, 783, 784, 548, -1445, 11, 789, 551, + 552, 553, 790, -1445, 335, 794, 795, 232, -1445, 556, + 797, 568, 801, 569, 572, 804, 805, 258, -1445, 808, + 575, 111, -1445, -1445, -1445, 809, 811, 580, 812, 813, + 849, 850, 810, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 617, -1445, + -1445, -1445, -1445, -1445, -128, 618, 619, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, 856, 857, 858, -1445, 623, 624, + 398, 865, 864, 631, -1445, -1445, -1445, 868, 870, 871, + 872, 873, 875, 876, 878, 879, -1445, 880, 881, 877, + 882, 890, 636, 657, -1445, -1445, -1445, 895, 894, -1445, + 897, -1445, -1445, -1445, -1445, -1445, 898, 899, 664, 665, + 666, -1445, -1445, 897, 897, 897, 668, 903, -1445, 670, + -1445, -1445, 671, -1445, 673, -1445, -1445, -1445, 897, 897, + 897, 897, 674, 678, 681, 682, -1445, 683, 684, -1445, + 689, 690, 696, -1445, -1445, 702, -1445, -1445, -1445, 897, + -1445, 703, 864, -1445, -1445, 705, -1445, 707, -1445, -1445, + 30, 610, -1445, 908, -1445, -1445, 43, 768, -1445, 111, + 56, 177, 177, 909, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, 911, 914, 919, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, 921, -1445, -1445, -1445, -104, 43, 40, + 279, 922, 925, 926, 104, 74, 234, 198, 927, -62, + 258, -1445, -1445, 931, -184, -1445, -1445, 932, 935, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, 806, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, 909, -1445, 228, 271, 290, -1445, -1445, + -1445, -1445, 941, 945, 946, 947, 948, 949, 950, 951, + 952, 953, -1445, 954, 956, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, 291, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, 304, -1445, 955, 769, -1445, -1445, 958, 959, -1445, + -1445, 960, 962, -1445, -1445, 961, 965, -1445, -1445, 963, + 967, -1445, -1445, -1445, 191, -1445, -1445, -1445, 966, -1445, + -1445, -1445, 245, -1445, -1445, -1445, -1445, -1445, 322, -1445, + -1445, -1445, -1445, 260, -1445, -1445, 968, 970, -1445, -1445, + 969, 973, -1445, 974, 981, 982, 983, 984, 985, 336, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 986, + 987, 988, -1445, -1445, -1445, -1445, 338, -1445, -1445, -1445, + -1445, -1445, -1445, 990, 991, 992, -1445, 339, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, 993, -1445, 994, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, 340, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, 971, 996, -1445, + 997, -1445, 998, -1445, -1445, -1445, 348, -1445, -1445, -1445, + -1445, -1445, 351, -1445, 277, -1445, 999, -1445, 357, -1445, + -1445, 763, -1445, 1000, 1002, -1445, -1445, 1001, 1005, -1445, + -1445, 1003, 1004, -1445, -1445, -1445, 1008, 1009, 1010, 1011, + 774, 727, 775, 756, 776, 779, 782, 785, 786, 787, + 1015, 788, 792, 1016, 1018, 1019, 1021, 1022, 177, -1445, + -1445, 177, -1445, 909, 1448, -1445, 911, 11, -1445, 914, + 335, -1445, 919, 1546, -1445, 921, -104, -1445, -1445, 40, + -1445, 1026, 1027, 279, -1445, 265, 922, -1445, 301, -1445, + 925, -80, -1445, 926, 793, 796, 798, 799, 802, 819, + 104, -1445, 1033, 1039, 821, 822, 824, 74, -1445, 807, + 825, 830, 234, -1445, 1044, 1049, 1069, 832, 1073, 835, + 1076, 198, -1445, 198, -1445, 927, 838, 1081, 845, 1084, + -62, -1445, -1445, 221, 931, -1445, 851, -184, -1445, -1445, + 1087, 1098, 195, -1445, 932, 281, -1445, 935, -1445, -1445, + 862, 863, 866, 889, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, 470, -1445, -1445, 891, 900, 924, + 429, 930, -1445, 359, -1445, 367, -1445, 1101, -1445, 1105, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, 381, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, 937, 940, -1445, -1445, -1445, + 1116, 1119, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, 1130, 1141, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, 1154, -1445, 382, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, 352, 942, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, 353, 944, 995, -1445, 1169, -1445, 1182, + -1445, 407, -1445, -1445, 1006, -1445, 43, -1445, -1445, 1186, + -1445, -1445, -1445, -1445, -1445, 427, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, 1013, 460, -1445, 464, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, 1546, -1445, -1445, -1445, + 1188, 1189, 980, 989, -1445, 265, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 117, + 1193, -1445, -1445, -1445, 1191, 972, 1192, 221, -1445, -1445, + -1445, -1445, -1445, 1020, 1023, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, 486, -1445, -1445, -1445, -1445, + -1445, -1445, 1219, 1226, -1445, 1230, -1445, 1024, -1445, -1445, + -1445, 1235, 1236, 1237, 1240, 117, -1445, -24, -1445, 1193, + 1238, -1445, 1067, 1028, 1030, 1245, -1445, -1445, -1445, -1445, + -1445, -1445, 488, -1445, -1445, -1445, -1445, 302, -1445, -1445, + -1445, -1445, -1445, 1244, 1248, -24, -1445, 32, 1238, -1445, + -1445, 1250, 1254, -1445, 1032, -1445, -1445, 1255, 1258, 1259, + -1445, 489, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 130, + -1445, 1244, -1445, 1264, 1031, 1034, 1036, 1270, 32, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, 490, -1445, -1445, + -1445, -1445, 1038, -1445, -1445, -1445, 1040, -1445, 1276, 1278, + 130, -1445, -1445, -1445, 1042, 1043, -1445, -1445, -1445 }; const short @@ -5831,212 +5831,212 @@ namespace isc { namespace dhcp { 20, 22, 24, 26, 28, 0, 0, 0, 0, 0, 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, 206, 9, 400, 11, - 624, 13, 669, 15, 704, 17, 539, 19, 548, 21, - 587, 23, 362, 25, 919, 27, 951, 29, 48, 41, - 0, 0, 0, 0, 0, 0, 706, 0, 550, 589, + 35, 36, 61, 5, 67, 7, 207, 9, 401, 11, + 625, 13, 670, 15, 705, 17, 540, 19, 549, 21, + 588, 23, 363, 25, 920, 27, 952, 29, 48, 41, + 0, 0, 0, 0, 0, 0, 707, 0, 551, 590, 0, 0, 0, 50, 0, 49, 0, 0, 42, 63, - 0, 65, 144, 949, 204, 225, 227, 229, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 194, 0, 0, 0, 0, 0, 164, 171, - 173, 0, 0, 0, 0, 0, 0, 0, 391, 537, - 578, 0, 197, 199, 177, 476, 656, 658, 0, 0, - 0, 318, 337, 327, 307, 742, 695, 353, 374, 776, - 0, 339, 801, 803, 900, 917, 187, 189, 0, 0, - 0, 961, 1003, 0, 143, 0, 69, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 111, 112, 113, 114, - 115, 81, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 117, 118, 132, 133, 134, - 107, 140, 141, 142, 136, 137, 138, 84, 85, 86, - 87, 104, 88, 90, 89, 135, 94, 95, 82, 108, - 109, 110, 83, 92, 93, 102, 103, 105, 91, 96, - 97, 98, 99, 100, 101, 106, 116, 139, 219, 0, - 0, 0, 0, 218, 0, 208, 211, 212, 213, 214, - 215, 216, 217, 0, 615, 660, 457, 459, 461, 0, - 0, 465, 467, 469, 463, 739, 456, 405, 406, 407, - 408, 409, 410, 411, 412, 432, 433, 434, 435, 436, - 437, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 449, 450, 451, 452, 438, 439, 453, 454, 455, 0, - 402, 416, 417, 418, 421, 422, 423, 424, 426, 427, - 428, 419, 420, 413, 414, 430, 431, 415, 425, 429, - 653, 0, 652, 636, 637, 638, 639, 640, 641, 642, - 643, 644, 645, 646, 647, 648, 649, 632, 633, 634, - 635, 631, 0, 626, 629, 630, 650, 651, 688, 0, - 691, 0, 0, 687, 679, 680, 681, 682, 678, 677, - 685, 686, 0, 671, 674, 675, 683, 684, 676, 737, - 723, 725, 727, 729, 731, 733, 735, 722, 719, 720, - 721, 0, 707, 708, 713, 714, 715, 711, 716, 717, - 718, 712, 0, 568, 274, 0, 572, 570, 575, 0, - 564, 565, 0, 551, 552, 555, 567, 556, 557, 558, - 574, 559, 560, 561, 562, 563, 606, 0, 0, 0, - 613, 604, 605, 608, 609, 0, 590, 591, 594, 595, - 596, 597, 598, 599, 600, 603, 601, 602, 370, 372, - 367, 0, 364, 368, 369, 0, 936, 0, 939, 0, - 0, 943, 947, 934, 932, 933, 0, 921, 924, 925, - 926, 927, 928, 929, 930, 931, 958, 0, 0, 953, - 956, 957, 47, 52, 0, 39, 45, 0, 66, 62, + 0, 65, 145, 950, 205, 226, 228, 230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 195, 0, 0, 0, 0, 0, 165, + 172, 174, 0, 0, 0, 0, 0, 0, 0, 392, + 538, 579, 0, 198, 200, 178, 477, 657, 659, 0, + 0, 0, 319, 338, 328, 308, 743, 696, 354, 375, + 777, 0, 340, 802, 804, 901, 918, 188, 190, 0, + 0, 0, 962, 1004, 0, 144, 0, 69, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 111, 112, 113, + 114, 115, 116, 81, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, 131, 132, 118, 119, 133, + 134, 135, 107, 141, 142, 143, 137, 138, 139, 84, + 85, 86, 87, 104, 88, 90, 89, 136, 94, 95, + 82, 108, 109, 110, 83, 92, 93, 102, 103, 105, + 91, 96, 97, 98, 99, 100, 101, 106, 117, 140, + 220, 0, 0, 0, 0, 219, 0, 209, 212, 213, + 214, 215, 216, 217, 218, 616, 661, 458, 460, 462, + 0, 0, 466, 468, 470, 464, 740, 457, 406, 407, + 408, 409, 410, 411, 412, 413, 433, 434, 435, 436, + 437, 438, 441, 442, 443, 444, 445, 446, 447, 448, + 449, 450, 451, 452, 453, 439, 440, 454, 455, 456, + 0, 403, 417, 418, 419, 422, 423, 424, 425, 427, + 428, 429, 420, 421, 414, 415, 431, 432, 416, 426, + 430, 654, 0, 653, 637, 638, 639, 640, 641, 642, + 643, 644, 645, 646, 647, 648, 649, 650, 633, 634, + 635, 636, 632, 0, 627, 630, 631, 651, 652, 689, + 0, 692, 0, 0, 688, 680, 681, 682, 683, 679, + 678, 686, 687, 0, 672, 675, 676, 684, 685, 677, + 738, 724, 726, 728, 730, 732, 734, 736, 723, 720, + 721, 722, 0, 708, 709, 714, 715, 716, 712, 717, + 718, 719, 713, 0, 569, 275, 0, 573, 571, 576, + 0, 565, 566, 0, 552, 553, 556, 568, 557, 558, + 559, 575, 560, 561, 562, 563, 564, 607, 0, 0, + 0, 614, 605, 606, 609, 610, 0, 591, 592, 595, + 596, 597, 598, 599, 600, 601, 604, 602, 603, 371, + 373, 368, 0, 365, 369, 370, 0, 937, 0, 940, + 0, 0, 944, 948, 935, 933, 934, 0, 922, 925, + 926, 927, 928, 929, 930, 931, 932, 959, 0, 0, + 954, 957, 958, 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, 0, 0, - 0, 60, 71, 68, 0, 0, 0, 0, 0, 210, - 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 404, 401, 0, 0, 628, 625, - 0, 0, 0, 0, 0, 673, 670, 0, 0, 0, - 0, 0, 0, 0, 0, 705, 710, 540, 0, 0, - 0, 0, 0, 0, 0, 549, 554, 0, 0, 0, - 0, 0, 588, 593, 0, 0, 366, 363, 0, 0, - 0, 0, 0, 0, 0, 0, 923, 920, 0, 0, - 955, 952, 51, 43, 0, 0, 0, 0, 0, 0, - 0, 0, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 160, 0, 192, 193, 161, - 162, 163, 0, 0, 0, 175, 176, 183, 184, 185, - 186, 191, 0, 0, 0, 196, 0, 0, 0, 0, - 0, 0, 471, 472, 473, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 800, 0, 0, 0, 0, 0, - 0, 0, 201, 202, 203, 0, 0, 70, 0, 221, - 222, 223, 224, 209, 159, 0, 0, 0, 0, 0, - 474, 475, 0, 0, 0, 0, 0, 403, 0, 655, - 627, 0, 690, 0, 693, 694, 672, 0, 0, 0, - 0, 0, 0, 0, 0, 709, 0, 0, 566, 0, - 0, 0, 577, 553, 0, 610, 611, 612, 0, 592, - 0, 0, 365, 935, 0, 938, 0, 941, 942, 0, - 0, 922, 0, 960, 954, 0, 0, 145, 0, 0, - 0, 0, 231, 195, 166, 167, 168, 169, 170, 165, - 172, 174, 393, 541, 580, 198, 200, 179, 180, 181, - 182, 178, 478, 40, 657, 659, 0, 48, 0, 0, - 0, 697, 355, 0, 0, 0, 0, 805, 0, 0, - 188, 190, 0, 0, 53, 220, 617, 662, 458, 460, - 462, 466, 468, 470, 464, 0, 654, 689, 692, 738, - 724, 726, 728, 730, 732, 734, 736, 569, 275, 573, - 571, 576, 607, 614, 371, 373, 937, 940, 945, 946, - 944, 948, 231, 44, 0, 0, 0, 265, 267, 269, - 271, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 284, 0, 0, 292, 294, 296, 298, 300, 301, - 302, 303, 304, 305, 264, 0, 238, 241, 242, 243, + 0, 0, 0, 60, 71, 68, 0, 0, 0, 0, + 0, 211, 208, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 405, 402, 0, 0, 629, + 626, 0, 0, 0, 0, 0, 674, 671, 0, 0, + 0, 0, 0, 0, 0, 0, 706, 711, 541, 0, + 0, 0, 0, 0, 0, 0, 550, 555, 0, 0, + 0, 0, 0, 589, 594, 0, 0, 367, 364, 0, + 0, 0, 0, 0, 0, 0, 0, 924, 921, 0, + 0, 956, 953, 51, 43, 0, 0, 0, 0, 0, + 0, 0, 0, 147, 148, 149, 150, 151, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 0, 193, + 194, 162, 163, 164, 0, 0, 0, 176, 177, 184, + 185, 186, 187, 192, 0, 0, 0, 197, 0, 0, + 0, 0, 0, 0, 472, 473, 474, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 801, 0, 0, 0, + 0, 0, 0, 0, 202, 203, 204, 0, 0, 70, + 0, 222, 223, 224, 225, 210, 0, 0, 0, 0, + 0, 475, 476, 0, 0, 0, 0, 0, 404, 0, + 656, 628, 0, 691, 0, 694, 695, 673, 0, 0, + 0, 0, 0, 0, 0, 0, 710, 0, 0, 567, + 0, 0, 0, 578, 554, 0, 611, 612, 613, 0, + 593, 0, 0, 366, 936, 0, 939, 0, 942, 943, + 0, 0, 923, 0, 961, 955, 0, 0, 146, 0, + 0, 0, 0, 232, 196, 167, 168, 169, 170, 171, + 166, 173, 175, 394, 542, 581, 199, 201, 180, 181, + 182, 183, 179, 479, 40, 658, 660, 0, 48, 0, + 0, 0, 698, 356, 0, 0, 0, 0, 806, 0, + 0, 189, 191, 0, 0, 53, 221, 618, 663, 459, + 461, 463, 467, 469, 471, 465, 0, 655, 690, 693, + 739, 725, 727, 729, 731, 733, 735, 737, 570, 276, + 574, 572, 577, 608, 615, 372, 374, 938, 941, 946, + 947, 945, 949, 232, 44, 0, 0, 0, 266, 268, + 270, 272, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 285, 0, 0, 293, 295, 297, 299, 301, + 302, 303, 304, 305, 306, 265, 0, 239, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 255, 256, 257, 258, 254, 259, 260, 261, 262, 263, - 0, 236, 0, 232, 233, 398, 0, 394, 395, 546, - 0, 542, 543, 585, 0, 581, 582, 483, 0, 479, - 480, 325, 326, 0, 320, 323, 324, 0, 335, 336, - 332, 0, 329, 333, 334, 314, 316, 0, 309, 312, - 313, 747, 0, 744, 702, 0, 698, 699, 360, 0, - 356, 357, 0, 0, 0, 0, 0, 0, 0, 376, - 379, 380, 381, 382, 383, 384, 790, 796, 0, 0, - 0, 789, 786, 787, 788, 0, 778, 781, 784, 782, - 783, 785, 0, 0, 0, 349, 0, 341, 344, 345, - 346, 347, 348, 828, 833, 835, 0, 858, 0, 839, - 827, 820, 821, 822, 825, 826, 0, 812, 815, 816, - 817, 818, 823, 824, 819, 810, 0, 806, 807, 0, - 912, 0, 915, 908, 909, 0, 902, 905, 906, 907, - 910, 0, 966, 0, 963, 0, 1009, 0, 1005, 1008, - 55, 622, 0, 618, 619, 667, 0, 663, 664, 741, - 0, 0, 64, 950, 205, 0, 0, 0, 0, 0, + 254, 256, 257, 258, 259, 255, 260, 261, 262, 263, + 264, 0, 237, 0, 233, 234, 399, 0, 395, 396, + 547, 0, 543, 544, 586, 0, 582, 583, 484, 0, + 480, 481, 326, 327, 0, 321, 324, 325, 0, 336, + 337, 333, 0, 330, 334, 335, 315, 317, 0, 310, + 313, 314, 748, 0, 745, 703, 0, 699, 700, 361, + 0, 357, 358, 0, 0, 0, 0, 0, 0, 0, + 377, 380, 381, 382, 383, 384, 385, 791, 797, 0, + 0, 0, 790, 787, 788, 789, 0, 779, 782, 785, + 783, 784, 786, 0, 0, 0, 350, 0, 342, 345, + 346, 347, 348, 349, 829, 834, 836, 0, 859, 0, + 840, 828, 821, 822, 823, 826, 827, 0, 813, 816, + 817, 818, 819, 824, 825, 820, 811, 0, 807, 808, + 0, 913, 0, 916, 909, 910, 0, 903, 906, 907, + 908, 911, 0, 967, 0, 964, 0, 1010, 0, 1006, + 1009, 55, 623, 0, 619, 620, 668, 0, 664, 665, + 742, 0, 0, 64, 951, 206, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 240, 226, 228, - 0, 230, 235, 0, 392, 397, 550, 538, 545, 589, - 579, 584, 0, 477, 482, 322, 319, 338, 331, 328, - 0, 0, 311, 308, 749, 746, 743, 706, 696, 701, - 0, 354, 359, 0, 0, 0, 0, 0, 0, 378, - 375, 0, 0, 0, 0, 0, 780, 777, 0, 0, - 0, 343, 340, 0, 0, 0, 0, 0, 0, 0, - 814, 802, 0, 804, 809, 0, 0, 0, 0, 904, - 901, 918, 0, 965, 962, 0, 1007, 1004, 57, 0, - 56, 0, 616, 621, 0, 661, 666, 740, 959, 0, - 0, 0, 0, 273, 276, 277, 278, 279, 280, 281, - 282, 291, 283, 0, 289, 290, 0, 0, 0, 0, - 0, 239, 0, 234, 0, 396, 0, 544, 0, 583, - 536, 503, 504, 505, 507, 508, 509, 492, 493, 512, - 513, 514, 515, 516, 517, 520, 521, 522, 523, 524, - 525, 526, 527, 528, 529, 530, 531, 532, 518, 519, - 533, 534, 535, 488, 489, 490, 491, 499, 500, 501, - 502, 496, 497, 498, 506, 0, 485, 494, 510, 511, - 495, 481, 321, 330, 0, 0, 310, 770, 772, 0, - 0, 768, 762, 763, 764, 765, 766, 767, 769, 759, - 760, 761, 0, 750, 751, 754, 755, 756, 757, 758, - 745, 0, 700, 0, 358, 385, 386, 387, 388, 389, - 390, 377, 0, 0, 795, 798, 799, 779, 350, 351, - 352, 342, 0, 0, 0, 837, 0, 838, 0, 813, - 0, 808, 911, 0, 914, 0, 903, 981, 0, 979, - 977, 971, 975, 976, 0, 968, 973, 974, 972, 964, - 1010, 1006, 54, 59, 0, 620, 0, 665, 266, 268, - 270, 272, 286, 287, 288, 285, 293, 295, 297, 299, - 306, 237, 399, 547, 586, 487, 484, 315, 317, 0, - 0, 0, 0, 748, 753, 703, 361, 792, 793, 794, - 791, 797, 830, 831, 832, 829, 834, 836, 0, 841, - 811, 913, 916, 0, 0, 0, 970, 967, 58, 623, - 668, 486, 0, 0, 774, 775, 752, 870, 873, 875, - 877, 869, 868, 867, 0, 860, 863, 864, 865, 866, - 846, 0, 842, 843, 0, 978, 0, 969, 771, 773, - 0, 0, 0, 0, 862, 859, 0, 840, 845, 0, - 980, 0, 0, 0, 0, 861, 856, 855, 851, 853, - 854, 0, 848, 852, 844, 986, 0, 983, 872, 871, - 874, 876, 879, 0, 850, 847, 0, 985, 982, 884, - 0, 880, 881, 0, 849, 996, 0, 0, 0, 1001, - 0, 988, 991, 992, 993, 994, 995, 984, 0, 878, - 883, 857, 0, 0, 0, 0, 0, 990, 987, 896, - 898, 895, 889, 891, 893, 894, 0, 886, 890, 892, - 882, 0, 998, 999, 1000, 0, 989, 0, 0, 888, - 885, 997, 1002, 0, 0, 887, 897, 899 + 0, 0, 0, 0, 0, 0, 0, 0, 241, 227, + 229, 0, 231, 236, 0, 393, 398, 551, 539, 546, + 590, 580, 585, 0, 478, 483, 323, 320, 339, 332, + 329, 0, 0, 312, 309, 750, 747, 744, 707, 697, + 702, 0, 355, 360, 0, 0, 0, 0, 0, 0, + 379, 376, 0, 0, 0, 0, 0, 781, 778, 0, + 0, 0, 344, 341, 0, 0, 0, 0, 0, 0, + 0, 815, 803, 0, 805, 810, 0, 0, 0, 0, + 905, 902, 919, 0, 966, 963, 0, 1008, 1005, 57, + 0, 56, 0, 617, 622, 0, 662, 667, 741, 960, + 0, 0, 0, 0, 274, 277, 278, 279, 280, 281, + 282, 283, 292, 284, 0, 290, 291, 0, 0, 0, + 0, 0, 240, 0, 235, 0, 397, 0, 545, 0, + 584, 537, 504, 505, 506, 508, 509, 510, 493, 494, + 513, 514, 515, 516, 517, 518, 521, 522, 523, 524, + 525, 526, 527, 528, 529, 530, 531, 532, 533, 519, + 520, 534, 535, 536, 489, 490, 491, 492, 500, 501, + 502, 503, 497, 498, 499, 507, 0, 486, 495, 511, + 512, 496, 482, 322, 331, 0, 0, 311, 771, 773, + 0, 0, 769, 763, 764, 765, 766, 767, 768, 770, + 760, 761, 762, 0, 751, 752, 755, 756, 757, 758, + 759, 746, 0, 701, 0, 359, 386, 387, 388, 389, + 390, 391, 378, 0, 0, 796, 799, 800, 780, 351, + 352, 353, 343, 0, 0, 0, 838, 0, 839, 0, + 814, 0, 809, 912, 0, 915, 0, 904, 982, 0, + 980, 978, 972, 976, 977, 0, 969, 974, 975, 973, + 965, 1011, 1007, 54, 59, 0, 621, 0, 666, 267, + 269, 271, 273, 287, 288, 289, 286, 294, 296, 298, + 300, 307, 238, 400, 548, 587, 488, 485, 316, 318, + 0, 0, 0, 0, 749, 754, 704, 362, 793, 794, + 795, 792, 798, 831, 832, 833, 830, 835, 837, 0, + 842, 812, 914, 917, 0, 0, 0, 971, 968, 58, + 624, 669, 487, 0, 0, 775, 776, 753, 871, 874, + 876, 878, 870, 869, 868, 0, 861, 864, 865, 866, + 867, 847, 0, 843, 844, 0, 979, 0, 970, 772, + 774, 0, 0, 0, 0, 863, 860, 0, 841, 846, + 0, 981, 0, 0, 0, 0, 862, 857, 856, 852, + 854, 855, 0, 849, 853, 845, 987, 0, 984, 873, + 872, 875, 877, 880, 0, 851, 848, 0, 986, 983, + 885, 0, 881, 882, 0, 850, 997, 0, 0, 0, + 1002, 0, 989, 992, 993, 994, 995, 996, 985, 0, + 879, 884, 858, 0, 0, 0, 0, 0, 991, 988, + 897, 899, 896, 890, 892, 894, 895, 0, 887, 891, + 893, 883, 0, 999, 1000, 1001, 0, 990, 0, 0, + 889, 886, 998, 1003, 0, 0, 888, 898, 900 }; const short Dhcp6Parser::yypgoto_[] = { - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -10, -1446, -635, -1446, - 513, -1446, -1446, -1446, -1446, 472, -1446, -288, -1446, -1446, - -1446, -71, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 504, - 732, -1446, -1446, -52, -29, -26, -24, 4, 12, -25, - 82, 84, 87, 89, 90, 92, -1084, -1446, 31, 34, - 41, 48, -1446, -1446, 51, -1446, 54, -1446, 61, 94, - 64, -1446, -1446, 66, 69, 71, 74, 76, -1446, 79, - -1446, 95, -1446, -1446, -1446, -1446, -1446, 97, -1446, 102, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 502, 724, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 423, -1446, 180, -1446, -756, 189, -1446, -1446, - -1445, -1446, -1429, -1446, -1446, -1446, -1446, -66, -1446, -788, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -805, -1446, -793, -1446, -792, -1446, 78, - -1446, -1446, -1446, -1446, -1446, -1446, 166, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, 176, -781, -1446, -1446, -1446, -1446, - 171, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 147, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, 168, -1446, -1446, -1446, - 172, 685, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 164, - -1446, -1446, -1446, -1446, -1446, -1446, -1083, -1446, -1446, -1446, - 201, -1446, -1446, -1446, 202, 733, -1446, -1446, -1077, -1446, - -1074, -1446, 109, -1446, 111, -1446, 113, -1446, 115, -1446, - 105, 107, 108, -1446, -1072, -1446, -1446, -1446, -1446, 194, - -1446, -1446, -65, 1234, -1446, -1446, -1446, -1446, -1446, 204, - -1446, -1446, -1446, 209, -1446, 708, -1446, -60, -1446, -1446, - -1446, -1446, -1446, -57, -1446, -1446, -1446, -1446, -1446, -58, - -1446, -1446, -1446, 205, -1446, -1446, -1446, 210, -1446, 707, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, 138, -1446, -1446, -1446, 141, 759, - -1446, -1446, -55, -42, -1446, -13, -1446, -1446, -1446, -1446, - -1446, 142, -1446, -1446, -1446, 140, 744, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -59, -1446, -1446, -1446, 212, -1446, - -1446, -1446, 203, -1446, 735, 510, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1071, -1446, -1446, -1446, -1446, -1446, 211, -1446, -1446, - -1446, -50, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, 192, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 175, -1446, - 181, 184, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -101, -1446, -1446, -126, -1446, - -1446, -1446, -1446, -1446, -92, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -147, -1446, -1446, -175, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, 188, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 542, 737, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, 581, 738, -1446, - -1446, -1446, -1446, -1446, -1446, 193, -1446, -1446, -41, -1446, - -1446, -1446, -1446, -1446, -1446, -110, -1446, -1446, -138, -1446, - -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, -1446, 196, - -1446 + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -10, -1445, -639, -1445, + 524, -1445, -1445, -1445, -1445, 477, -1445, -254, -1445, -1445, + -1445, -71, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 510, + 734, -1445, -1445, 4, 12, 22, 38, 41, 42, -57, + -54, -35, -15, 97, 100, 102, 103, -1445, 20, 23, + 45, 48, -1445, -1445, 55, -1445, 60, -1445, 66, 105, + 71, -1445, -1445, 73, 76, 78, 84, 90, -1445, 95, + -1445, 107, -1445, -1445, -1445, -1445, -1445, 108, -1445, 113, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 509, 732, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, 431, -1445, 187, -1445, -761, 193, -1445, -1445, + -1444, -1445, -1443, -1445, -1445, -1445, -1445, -55, -1445, -802, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -806, -1445, -800, -1445, -797, -1445, 82, + -1445, -1445, -1445, -1445, -1445, -1445, 172, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, 180, -787, -1445, -1445, -1445, -1445, + 178, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 146, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, 166, -1445, -1445, -1445, + 169, 699, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 161, + -1445, -1445, -1445, -1445, -1445, -1445, -1088, -1445, -1445, -1445, + 196, -1445, -1445, -1445, 200, 733, -1445, -1445, -1087, -1445, + -1086, -1445, 61, -1445, 85, -1445, 121, -1445, 125, -1445, + 115, 118, 119, -1445, -1085, -1445, -1445, -1445, -1445, 194, + -1445, -1445, -64, 1234, -1445, -1445, -1445, -1445, -1445, 204, + -1445, -1445, -1445, 208, -1445, 710, -1445, -65, -1445, -1445, + -1445, -1445, -1445, -61, -1445, -1445, -1445, -1445, -1445, -29, + -1445, -1445, -1445, 206, -1445, -1445, -1445, 210, -1445, 709, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, 140, -1445, -1445, -1445, 143, 760, + -1445, -1445, -63, -42, -1445, -13, -1445, -1445, -1445, -1445, + -1445, 142, -1445, -1445, -1445, 148, 741, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -58, -1445, -1445, -1445, 201, -1445, + -1445, -1445, 207, -1445, 735, 501, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1084, -1445, -1445, -1445, -1445, -1445, 212, -1445, -1445, + -1445, -45, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, 197, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 181, -1445, + 179, 184, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -101, -1445, -1445, -126, -1445, + -1445, -1445, -1445, -1445, -95, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -150, -1445, -1445, -177, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, 185, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 538, 737, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, 581, 736, -1445, + -1445, -1445, -1445, -1445, -1445, 188, -1445, -1445, -53, -1445, + -1445, -1445, -1445, -1445, -1445, -119, -1445, -1445, -142, -1445, + -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, -1445, 192, + -1445 }; const short @@ -6044,423 +6044,423 @@ namespace isc { namespace dhcp { { 0, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 83, 39, 40, 69, - 804, 87, 88, 41, 68, 84, 85, 825, 1060, 1179, - 1180, 894, 43, 70, 90, 477, 91, 45, 71, 165, - 166, 167, 480, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 280, 181, 182, 183, - 184, 185, 506, 789, 186, 507, 187, 508, 188, 189, - 190, 522, 801, 191, 192, 193, 194, 195, 544, 196, - 545, 197, 198, 199, 200, 500, 201, 202, 520, 203, - 521, 204, 205, 206, 207, 482, 47, 72, 244, 245, - 246, 554, 247, 248, 249, 250, 208, 483, 209, 484, - 210, 485, 922, 923, 924, 1100, 895, 896, 897, 1075, - 898, 1076, 899, 1077, 900, 1078, 901, 902, 599, 903, - 904, 905, 906, 907, 908, 909, 910, 911, 1089, 1365, - 912, 913, 914, 915, 1092, 916, 1093, 917, 1094, 918, - 1095, 919, 1096, 211, 532, 957, 958, 959, 1120, 960, - 1121, 212, 529, 943, 944, 945, 946, 213, 531, 951, - 952, 953, 954, 214, 530, 215, 539, 1006, 1007, 1008, - 1009, 1010, 216, 535, 969, 970, 971, 1130, 63, 80, - 441, 442, 443, 614, 444, 615, 217, 536, 978, 979, - 980, 981, 982, 983, 984, 985, 218, 516, 926, 927, - 928, 1103, 49, 73, 299, 300, 301, 564, 302, 565, - 303, 566, 304, 572, 305, 569, 306, 570, 307, 571, - 219, 220, 221, 311, 312, 222, 523, 938, 939, 940, - 1112, 1265, 1266, 223, 517, 57, 77, 930, 931, 932, - 1106, 59, 78, 402, 403, 404, 405, 406, 407, 408, - 598, 409, 602, 410, 601, 411, 412, 603, 413, 224, - 518, 934, 935, 936, 1109, 61, 79, 425, 426, 427, - 428, 429, 607, 430, 431, 432, 433, 434, 435, 611, - 314, 562, 1062, 1063, 1064, 1181, 51, 74, 342, 343, - 344, 576, 345, 225, 524, 226, 525, 317, 563, 1066, - 1067, 1068, 1184, 53, 75, 362, 363, 364, 580, 365, - 366, 582, 367, 368, 227, 534, 965, 966, 967, 1127, - 55, 76, 381, 382, 383, 384, 588, 385, 589, 386, - 590, 387, 591, 388, 592, 389, 593, 390, 594, 391, - 587, 319, 573, 1070, 228, 533, 962, 963, 1124, 1292, - 1293, 1294, 1295, 1296, 1379, 1297, 1380, 1298, 1299, 229, - 537, 995, 996, 997, 1141, 1390, 998, 999, 1142, 1000, - 1001, 230, 231, 540, 232, 541, 1036, 1037, 1038, 1162, - 1026, 1027, 1028, 1153, 1395, 1029, 1154, 1030, 1155, 1031, - 1032, 1033, 1159, 1431, 1432, 1433, 1446, 1461, 1462, 1463, - 1473, 1034, 1157, 1424, 1425, 1426, 1440, 1469, 1427, 1441, - 1428, 1442, 1429, 1443, 1480, 1481, 1482, 1498, 1516, 1517, - 1518, 1527, 1519, 1528, 233, 542, 1045, 1046, 1047, 1048, - 1166, 1049, 1050, 1168, 234, 543, 65, 81, 456, 457, - 458, 459, 619, 460, 461, 621, 462, 463, 464, 624, - 860, 465, 625, 235, 481, 67, 82, 468, 469, 470, - 628, 471, 236, 549, 1053, 1054, 1172, 1344, 1345, 1346, - 1347, 1405, 1348, 1403, 1466, 1467, 1476, 1490, 1491, 1492, - 1502, 1493, 1494, 1495, 1496, 1506, 237, 550, 1057, 1058, - 1059 + 805, 87, 88, 41, 68, 84, 85, 826, 1061, 1180, + 1181, 895, 43, 70, 90, 478, 91, 45, 71, 166, + 167, 168, 481, 169, 170, 171, 172, 173, 174, 175, + 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, + 186, 187, 508, 790, 188, 509, 189, 510, 190, 191, + 192, 524, 802, 193, 194, 195, 196, 197, 546, 198, + 547, 199, 200, 201, 202, 502, 203, 204, 522, 205, + 523, 206, 207, 208, 209, 483, 47, 72, 246, 247, + 248, 556, 249, 250, 251, 252, 210, 484, 211, 485, + 212, 486, 923, 924, 925, 1101, 896, 897, 898, 1076, + 899, 1077, 900, 1078, 901, 1079, 902, 903, 600, 904, + 905, 906, 907, 908, 909, 910, 911, 912, 1090, 1366, + 913, 914, 915, 916, 1093, 917, 1094, 918, 1095, 919, + 1096, 920, 1097, 213, 534, 958, 959, 960, 1121, 961, + 1122, 214, 531, 944, 945, 946, 947, 215, 533, 952, + 953, 954, 955, 216, 532, 217, 541, 1007, 1008, 1009, + 1010, 1011, 218, 537, 970, 971, 972, 1131, 63, 80, + 442, 443, 444, 615, 445, 616, 219, 538, 979, 980, + 981, 982, 983, 984, 985, 986, 220, 518, 927, 928, + 929, 1104, 49, 73, 300, 301, 302, 565, 303, 566, + 304, 567, 305, 573, 306, 570, 307, 571, 308, 572, + 221, 222, 223, 312, 313, 224, 525, 939, 940, 941, + 1113, 1266, 1267, 225, 519, 57, 77, 931, 932, 933, + 1107, 59, 78, 403, 404, 405, 406, 407, 408, 409, + 599, 410, 603, 411, 602, 412, 413, 604, 414, 226, + 520, 935, 936, 937, 1110, 61, 79, 426, 427, 428, + 429, 430, 608, 431, 432, 433, 434, 435, 436, 612, + 315, 563, 1063, 1064, 1065, 1182, 51, 74, 343, 344, + 345, 577, 346, 227, 526, 228, 527, 318, 564, 1067, + 1068, 1069, 1185, 53, 75, 363, 364, 365, 581, 366, + 367, 583, 368, 369, 229, 536, 966, 967, 968, 1128, + 55, 76, 382, 383, 384, 385, 589, 386, 590, 387, + 591, 388, 592, 389, 593, 390, 594, 391, 595, 392, + 588, 320, 574, 1071, 230, 535, 963, 964, 1125, 1293, + 1294, 1295, 1296, 1297, 1380, 1298, 1381, 1299, 1300, 231, + 539, 996, 997, 998, 1142, 1391, 999, 1000, 1143, 1001, + 1002, 232, 233, 542, 234, 543, 1037, 1038, 1039, 1163, + 1027, 1028, 1029, 1154, 1396, 1030, 1155, 1031, 1156, 1032, + 1033, 1034, 1160, 1432, 1433, 1434, 1447, 1462, 1463, 1464, + 1474, 1035, 1158, 1425, 1426, 1427, 1441, 1470, 1428, 1442, + 1429, 1443, 1430, 1444, 1481, 1482, 1483, 1499, 1517, 1518, + 1519, 1528, 1520, 1529, 235, 544, 1046, 1047, 1048, 1049, + 1167, 1050, 1051, 1169, 236, 545, 65, 81, 457, 458, + 459, 460, 620, 461, 462, 622, 463, 464, 465, 625, + 861, 466, 626, 237, 482, 67, 82, 469, 470, 471, + 629, 472, 238, 551, 1054, 1055, 1173, 1345, 1346, 1347, + 1348, 1406, 1349, 1404, 1467, 1468, 1477, 1491, 1492, 1493, + 1503, 1494, 1495, 1496, 1497, 1507, 239, 552, 1058, 1059, + 1060 }; const short Dhcp6Parser::yytable_[] = { - 164, 243, 266, 322, 353, 377, 38, 400, 421, 440, - 453, 1021, 401, 422, 318, 313, 341, 358, 378, 423, - 359, 267, 424, 1022, 1023, 920, 992, 950, 1234, 1254, - 251, 315, 346, 360, 379, 1255, 414, 436, 1256, 454, - 1264, 1270, 438, 439, 268, 803, 478, 269, 273, 270, - 31, 479, 32, 1512, 33, 1055, 42, 941, 86, 252, - 316, 347, 361, 380, 44, 415, 437, 130, 455, 1513, - 163, 129, 238, 239, 240, 241, 242, 271, 552, 1362, - 1363, 1364, 1417, 553, 1512, 272, 784, 785, 786, 787, - 348, 349, 350, 351, 352, 136, 137, 438, 439, 1115, - 1513, 559, 1116, 89, 281, 323, 560, 282, 324, 858, - 859, 261, 262, 263, 283, 325, 466, 467, 264, 321, - 30, 284, 326, 788, 285, 327, 803, 286, 328, 797, - 798, 799, 800, 163, 287, 329, 986, 289, 330, 290, - 331, 872, 291, 332, 292, 333, 574, 293, 334, 294, - 335, 575, 295, 336, 942, 274, 578, 275, 393, 585, - 276, 579, 277, 278, 586, 279, 1118, 288, 296, 1119, - 297, 136, 137, 136, 137, 298, 1125, 616, 308, 1126, - 309, 310, 617, 337, 354, 338, 355, 339, 356, 340, - 357, 867, 868, 869, 870, 871, 872, 873, 874, 875, - 876, 877, 878, 879, 880, 881, 1387, 1388, 1389, 882, - 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, - 893, 163, 394, 1173, 395, 396, 1174, 136, 137, 397, - 398, 399, 868, 869, 46, 941, 948, 394, 949, 136, - 137, 1418, 1419, 1420, 884, 885, 886, 136, 137, 136, - 137, 955, 956, 1485, 48, 394, 1486, 1487, 1488, 1489, - 1477, 626, 50, 1478, 136, 137, 627, 972, 973, 974, - 975, 976, 977, 52, 54, 987, 988, 989, 990, 98, - 99, 100, 101, 102, 103, 630, 34, 35, 36, 37, - 631, 1234, 1254, 1002, 1003, 1004, 56, 163, 1255, 163, - 58, 1256, 60, 1264, 1270, 394, 416, 395, 396, 417, - 418, 419, 130, 394, 552, 136, 137, 62, 472, 1072, - 64, 66, 136, 137, 1039, 1040, 1041, 473, 475, 136, - 137, 474, 136, 137, 476, 596, 394, 950, 486, 1456, - 136, 137, 630, 130, 1212, 559, 1097, 1073, 420, 487, - 1074, 1098, 488, 163, 489, 1021, 490, 1021, 992, 1277, - 1278, 1279, 1280, 136, 137, 163, 491, 1022, 1023, 1022, - 1023, 136, 137, 1042, 1013, 163, 492, 1097, 1014, 1015, - 1016, 1017, 1099, 1392, 1393, 1394, 1122, 369, 1018, 1019, - 163, 1123, 493, 1509, 1510, 494, 495, 370, 371, 372, - 373, 374, 375, 376, 1139, 595, 496, 497, 163, 1140, - 445, 446, 447, 448, 449, 450, 451, 452, 115, 116, - 117, 118, 119, 120, 121, 1146, 123, 124, 125, 126, - 1147, 498, 1151, 130, 831, 832, 833, 1152, 1160, 1169, - 626, 163, 499, 1161, 1170, 1171, 501, 134, 163, 839, - 840, 841, 842, 502, 320, 163, 503, 504, 163, 505, - 509, 136, 137, 632, 633, 1337, 163, 1338, 1339, 510, - 853, 887, 888, 889, 890, 891, 892, 261, 262, 263, - 511, 164, 1176, 597, 264, 321, 1097, 1177, 243, 163, - 574, 1371, 512, 1375, 616, 1372, 1160, 163, 1376, 1386, - 1406, 1400, 513, 266, 578, 1407, 585, 322, 1444, 1409, - 514, 1410, 515, 1445, 353, 318, 313, 251, 1474, 1507, - 341, 1529, 267, 1475, 1508, 377, 1530, 358, 519, 526, - 359, 527, 315, 528, 538, 400, 346, 546, 378, 547, - 401, 548, 421, 360, 551, 268, 252, 422, 269, 273, - 270, 555, 556, 423, 379, 453, 424, 156, 157, 557, - 558, 316, 561, 567, 414, 347, 568, 577, 581, 583, - 584, 436, 361, 600, 604, 605, 606, 634, 271, 608, - 609, 610, 612, 380, 454, 613, 272, 163, 618, 620, - 622, 623, 629, 415, 635, 636, 637, 638, 639, 640, - 437, 641, 642, 643, 656, 281, 644, 645, 282, 323, - 646, 647, 324, 455, 650, 283, 651, 648, 649, 325, - 652, 653, 284, 654, 655, 285, 326, 657, 286, 327, - 659, 658, 328, 662, 660, 287, 663, 661, 289, 329, - 290, 664, 330, 291, 331, 292, 668, 332, 293, 333, - 294, 665, 334, 295, 335, 666, 274, 336, 275, 667, - 669, 276, 670, 277, 278, 671, 279, 672, 288, 296, - 673, 297, 674, 675, 676, 677, 298, 678, 679, 308, - 680, 309, 310, 681, 682, 683, 685, 337, 684, 338, - 686, 339, 687, 340, 354, 688, 355, 689, 356, 690, - 357, 691, 692, 693, 694, 164, 695, 696, 243, 1, - 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, - 12, 13, 14, 697, 698, 699, 700, 701, 702, 703, - 704, 705, 706, 708, 715, 716, 709, 251, 710, 714, - 717, 711, 712, 991, 1005, 1020, 718, 719, 453, 720, - 722, 723, 1056, 721, 724, 725, 726, 728, 731, 729, - 733, 732, 734, 735, 737, 863, 252, 738, 739, 740, - 741, 1102, 993, 1011, 1024, 742, 1043, 454, 92, 93, - 743, 744, 94, 746, 747, 748, 749, 750, 95, 96, - 97, 751, 754, 752, 755, 756, 757, 758, 760, 761, - 764, 994, 1012, 1025, 763, 1044, 455, 766, 769, 770, - 765, 772, 775, 767, 768, 861, 776, 778, 779, 780, - 773, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 781, 111, 112, 113, 114, 115, + 165, 245, 267, 323, 354, 378, 38, 401, 422, 441, + 454, 1022, 360, 993, 424, 319, 274, 1023, 425, 275, + 1024, 921, 951, 402, 423, 1255, 1256, 1257, 1265, 1271, + 253, 316, 347, 361, 380, 394, 415, 437, 276, 455, + 942, 42, 1056, 804, 314, 342, 359, 379, 31, 30, + 32, 44, 33, 137, 138, 1513, 1514, 164, 277, 254, + 317, 348, 362, 381, 395, 416, 438, 86, 456, 46, + 439, 440, 240, 241, 242, 243, 244, 268, 479, 785, + 786, 787, 788, 480, 554, 269, 1513, 1514, 130, 555, + 48, 137, 138, 282, 324, 270, 283, 325, 987, 395, + 50, 396, 397, 873, 561, 52, 398, 399, 400, 562, + 635, 271, 575, 54, 272, 273, 789, 576, 284, 326, + 89, 285, 327, 804, 467, 468, 137, 138, 286, 328, + 1040, 1041, 1042, 287, 329, 338, 355, 943, 579, 288, + 330, 1418, 473, 580, 290, 331, 291, 332, 586, 292, + 333, 293, 334, 587, 56, 869, 870, 294, 335, 339, + 356, 164, 617, 295, 336, 58, 1457, 618, 296, 337, + 278, 137, 138, 279, 60, 280, 281, 627, 289, 1043, + 297, 298, 628, 62, 942, 949, 299, 950, 309, 137, + 138, 310, 311, 631, 1116, 340, 357, 1117, 632, 341, + 358, 868, 869, 870, 871, 872, 873, 874, 875, 876, + 877, 878, 879, 880, 881, 882, 64, 164, 66, 883, + 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, + 894, 554, 137, 138, 859, 860, 1073, 988, 989, 990, + 991, 474, 885, 886, 887, 137, 138, 475, 1119, 476, + 1486, 1120, 164, 1487, 1488, 1489, 1490, 973, 974, 975, + 976, 977, 978, 1126, 477, 395, 1127, 116, 117, 118, + 119, 120, 121, 122, 631, 124, 125, 126, 127, 1074, + 1174, 596, 131, 1175, 34, 35, 36, 37, 1255, 1256, + 1257, 1265, 1271, 561, 1098, 597, 135, 164, 1075, 1099, + 1419, 1420, 1421, 321, 487, 1478, 598, 1098, 1479, 395, + 137, 138, 1100, 137, 138, 164, 1510, 1511, 488, 98, + 99, 100, 101, 102, 103, 1123, 262, 263, 264, 489, + 1124, 490, 951, 265, 322, 491, 137, 138, 492, 1140, + 1213, 1147, 1152, 1161, 1141, 993, 1148, 1153, 1162, 137, + 138, 1170, 131, 395, 627, 1022, 1171, 1022, 164, 1172, + 1177, 1023, 1098, 1023, 1024, 1178, 1024, 1372, 131, 493, + 575, 164, 1014, 137, 138, 1373, 1015, 1016, 1017, 1018, + 137, 138, 439, 440, 1376, 617, 1019, 1020, 131, 1377, + 1387, 349, 350, 351, 352, 353, 137, 138, 494, 1278, + 1279, 1280, 1281, 1003, 1004, 1005, 157, 158, 956, 957, + 1161, 606, 262, 263, 264, 1401, 137, 138, 164, 265, + 322, 495, 496, 395, 417, 396, 397, 418, 419, 420, + 1407, 607, 370, 613, 497, 1408, 164, 498, 1338, 164, + 1339, 1340, 371, 372, 373, 374, 375, 376, 377, 499, + 137, 138, 500, 501, 446, 447, 448, 449, 450, 451, + 452, 453, 164, 579, 633, 634, 421, 586, 1410, 832, + 833, 834, 1411, 503, 614, 164, 888, 889, 890, 891, + 892, 893, 504, 165, 840, 841, 842, 843, 505, 1445, + 245, 1475, 1508, 1530, 1446, 506, 1476, 1509, 1531, 164, + 798, 799, 800, 801, 267, 854, 164, 507, 323, 1363, + 1364, 1365, 1388, 1389, 1390, 354, 511, 319, 274, 253, + 512, 275, 164, 360, 513, 514, 378, 515, 1393, 1394, + 1395, 516, 517, 316, 521, 528, 401, 347, 529, 530, + 276, 540, 164, 422, 361, 548, 314, 549, 254, 424, + 342, 550, 402, 425, 553, 380, 454, 359, 557, 423, + 277, 558, 317, 559, 560, 415, 348, 568, 379, 569, + 578, 582, 437, 362, 584, 585, 164, 601, 605, 268, + 609, 610, 611, 619, 381, 455, 621, 269, 623, 624, + 630, 636, 637, 638, 416, 282, 639, 270, 283, 324, + 640, 438, 325, 641, 642, 643, 644, 658, 645, 664, + 646, 647, 648, 271, 456, 649, 272, 273, 650, 651, + 284, 652, 653, 285, 326, 665, 654, 327, 655, 657, + 286, 656, 659, 660, 328, 287, 661, 662, 666, 329, + 338, 288, 674, 663, 667, 330, 290, 355, 291, 668, + 331, 292, 332, 293, 669, 333, 670, 334, 671, 294, + 675, 672, 676, 335, 339, 295, 673, 678, 677, 336, + 296, 356, 278, 679, 337, 279, 680, 280, 281, 681, + 289, 682, 297, 298, 683, 684, 685, 686, 299, 687, + 309, 688, 689, 310, 311, 690, 691, 692, 693, 694, + 340, 695, 697, 696, 341, 698, 165, 357, 699, 245, + 700, 358, 1, 2, 3, 4, 5, 6, 7, 8, + 9, 10, 11, 12, 13, 14, 701, 702, 703, 707, + 708, 704, 710, 716, 717, 718, 705, 706, 253, 711, + 712, 713, 714, 719, 992, 1006, 1021, 720, 721, 454, + 723, 722, 724, 1057, 725, 726, 727, 729, 732, 730, + 733, 734, 738, 739, 735, 740, 864, 254, 736, 741, + 742, 743, 1103, 994, 1012, 1025, 744, 1044, 455, 92, + 93, 745, 747, 94, 748, 750, 749, 751, 752, 95, + 96, 97, 753, 755, 759, 756, 757, 758, 761, 762, + 764, 765, 995, 1013, 1026, 767, 1045, 456, 770, 771, + 766, 768, 773, 776, 769, 783, 862, 774, 777, 779, + 780, 778, 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, 128, 129, 130, 777, 782, 783, 790, 791, - 792, 793, 794, 795, 796, 131, 132, 133, 134, 802, - 32, 805, 806, 135, 807, 808, 820, 810, 809, 811, - 812, 817, 136, 137, 813, 814, 815, 816, 818, 138, - 139, 140, 141, 142, 143, 144, 819, 821, 145, 822, - 823, 824, 826, 827, 862, 828, 829, 146, 830, 835, - 834, 921, 925, 836, 929, 933, 147, 937, 837, 148, - 961, 838, 843, 964, 844, 845, 149, 968, 846, 1035, - 847, 848, 1052, 849, 150, 151, 1061, 850, 1065, 152, - 153, 851, 852, 370, 1079, 854, 856, 857, 1080, 1081, - 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1090, 154, 1091, - 1101, 1105, 155, 1104, 1108, 1107, 1110, 1111, 1113, 1114, - 1194, 1117, 1129, 1128, 1131, 1132, 1163, 1133, 156, 157, - 158, 159, 160, 161, 1134, 1135, 1136, 1137, 1138, 1143, - 1144, 1145, 162, 1148, 1149, 1150, 1156, 1158, 1164, 1178, - 1165, 1167, 1175, 1183, 1193, 1182, 1186, 1185, 163, 1353, - 1187, 1188, 1189, 1190, 1191, 1192, 1195, 1196, 1203, 1204, - 1197, 1206, 1207, 1198, 1208, 1209, 1199, 1200, 1201, 1210, - 1274, 1202, 266, 1205, 1275, 400, 1312, 1313, 421, 1305, - 401, 1220, 1306, 422, 318, 313, 1253, 1322, 1307, 423, - 1323, 267, 424, 1281, 1267, 1308, 377, 1309, 1288, 440, - 1221, 315, 1310, 1314, 414, 1315, 1289, 436, 1316, 378, - 1268, 1324, 1282, 1318, 268, 991, 1319, 269, 273, 270, - 1005, 1320, 1290, 1222, 1325, 379, 1223, 1227, 1224, 1020, - 316, 1020, 1326, 415, 1327, 1283, 437, 1328, 1284, 1269, - 1285, 1340, 1332, 1333, 993, 1056, 1341, 271, 1334, 1011, - 322, 1291, 1335, 353, 380, 272, 1225, 1350, 1024, 1352, - 1024, 1381, 1373, 341, 1226, 1358, 358, 1043, 1286, 359, - 1342, 1359, 1360, 994, 281, 1374, 1287, 282, 1012, 346, - 1382, 1361, 360, 1235, 283, 1383, 1236, 1025, 1384, 1025, - 1366, 284, 1367, 1237, 285, 1368, 1044, 286, 1370, 1343, - 1238, 1385, 1377, 1239, 287, 1378, 1240, 289, 347, 290, - 1398, 361, 291, 1241, 292, 1391, 1243, 293, 1244, 294, - 1396, 1245, 295, 1246, 1397, 274, 1247, 275, 1248, 1399, - 276, 1249, 277, 278, 1228, 279, 1229, 288, 296, 1230, - 297, 1231, 1232, 1404, 1233, 298, 1242, 1250, 308, 1251, - 309, 310, 323, 1412, 1252, 324, 1401, 1261, 1408, 1262, - 1263, 1257, 325, 1258, 1413, 1259, 1430, 1260, 1434, 326, - 1435, 1436, 327, 1448, 1447, 328, 1449, 1451, 1414, 1452, - 1453, 1454, 329, 1468, 1483, 330, 1465, 331, 1415, 1472, - 332, 1499, 333, 1438, 1439, 334, 1450, 335, 1479, 1500, - 336, 1503, 1504, 1470, 1471, 1501, 1505, 1521, 1525, 1533, - 1523, 1522, 1534, 1524, 855, 1531, 1532, 1536, 1537, 947, - 864, 866, 1213, 713, 707, 1071, 1211, 1369, 1276, 1273, - 337, 1272, 338, 354, 339, 355, 340, 356, 1321, 357, - 1304, 762, 1303, 1311, 1220, 1214, 1215, 727, 1271, 1253, - 1411, 392, 1217, 1281, 753, 1216, 1219, 1267, 1288, 1218, - 759, 1355, 1354, 1221, 1356, 1402, 1289, 1421, 1357, 736, - 1301, 745, 1282, 1268, 1416, 1340, 1300, 730, 1317, 1331, - 1341, 1302, 1290, 1330, 1329, 1069, 1222, 1464, 1484, 1223, - 1227, 1224, 1455, 1520, 1535, 1283, 1422, 1336, 1284, 865, - 1285, 1051, 1269, 771, 1342, 1437, 1349, 1497, 774, 1526, - 0, 1291, 1351, 1421, 0, 1457, 0, 0, 0, 1225, - 1458, 0, 0, 0, 0, 1423, 0, 1226, 1286, 0, - 0, 0, 0, 1343, 0, 0, 1287, 0, 0, 0, - 0, 0, 1422, 1457, 1459, 0, 1235, 0, 1458, 1236, - 0, 0, 0, 0, 0, 0, 1237, 0, 0, 0, - 0, 0, 0, 1238, 0, 0, 1239, 1511, 0, 1240, - 0, 1423, 1459, 1460, 0, 0, 1241, 0, 0, 1243, - 0, 1244, 0, 0, 1245, 0, 1246, 0, 0, 1247, - 0, 1248, 0, 0, 1249, 0, 1514, 1228, 1511, 1229, - 0, 1460, 1230, 0, 1231, 1232, 0, 1233, 0, 1242, - 1250, 0, 1251, 0, 0, 0, 0, 1252, 0, 0, - 1261, 0, 1262, 1263, 1257, 1515, 1258, 1514, 1259, 0, - 1260, 0, 0, 0, 0, 0, 0, 0, 0, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 253, 0, 0, 0, 1515, 115, 116, 117, + 126, 127, 128, 129, 130, 131, 781, 782, 784, 791, + 792, 793, 794, 795, 796, 797, 132, 133, 134, 135, + 803, 32, 806, 807, 136, 808, 809, 821, 811, 810, + 812, 813, 818, 137, 138, 814, 815, 816, 817, 819, + 139, 140, 141, 142, 143, 144, 145, 820, 822, 146, + 823, 824, 825, 827, 828, 829, 830, 831, 147, 835, + 836, 837, 838, 863, 839, 844, 922, 148, 926, 845, + 149, 930, 846, 847, 848, 849, 934, 150, 938, 962, + 850, 851, 965, 969, 1036, 151, 152, 852, 1053, 1062, + 153, 154, 1066, 853, 855, 1080, 857, 371, 858, 1081, + 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1091, 155, + 1092, 1102, 1106, 156, 1105, 1109, 1108, 1111, 1112, 1114, + 1115, 1195, 1118, 1130, 1129, 1132, 1133, 1164, 1134, 157, + 158, 159, 160, 161, 162, 1135, 1136, 1137, 1138, 1139, + 1144, 1145, 1146, 163, 1149, 1150, 1151, 1157, 1159, 1165, + 1197, 1166, 1168, 1176, 1179, 1184, 1183, 1186, 1187, 164, + 1189, 1188, 1190, 1191, 1192, 1193, 1194, 1196, 1198, 1204, + 1207, 1199, 1208, 1209, 1200, 1210, 1211, 1201, 1202, 1203, + 1275, 1276, 1205, 267, 1206, 1306, 401, 1313, 1307, 422, + 1308, 1309, 1221, 1314, 1310, 424, 319, 274, 1323, 425, + 275, 1319, 402, 1324, 1282, 423, 1228, 378, 1254, 1229, + 441, 1311, 316, 1315, 1316, 415, 1317, 1320, 437, 276, + 1289, 1269, 1321, 1325, 1326, 314, 992, 1327, 1230, 1328, + 1329, 1006, 1333, 1291, 1268, 1334, 380, 1335, 1336, 277, + 1021, 317, 1021, 1353, 416, 1351, 1290, 438, 1231, 379, + 1270, 1354, 1341, 1359, 1360, 994, 1057, 1361, 268, 1374, + 1012, 323, 1292, 1375, 354, 381, 269, 1222, 1342, 1025, + 1382, 1025, 360, 1383, 282, 1223, 270, 283, 1044, 1283, + 1362, 1343, 1367, 1236, 995, 1224, 1237, 1284, 1384, 1013, + 347, 1368, 271, 361, 1385, 272, 273, 1285, 1026, 284, + 1026, 1225, 285, 342, 1226, 1227, 359, 1045, 1238, 286, + 1344, 1239, 1386, 1286, 287, 1369, 1287, 1288, 1240, 348, + 288, 1371, 362, 1241, 1258, 290, 1399, 291, 1378, 1242, + 292, 1379, 293, 1392, 1244, 1397, 1245, 1400, 294, 1246, + 1405, 1247, 1413, 1414, 295, 1435, 1437, 1248, 1259, 296, + 1431, 278, 324, 1249, 279, 325, 280, 281, 1250, 289, + 1232, 297, 298, 1233, 1436, 1234, 1235, 299, 1243, 309, + 1251, 1252, 310, 311, 1415, 1448, 1253, 326, 1262, 1449, + 327, 1263, 1264, 1416, 1260, 1450, 1398, 328, 1261, 1452, + 1453, 1454, 329, 338, 1455, 1466, 355, 1402, 330, 1469, + 1473, 1480, 1484, 331, 1409, 332, 1500, 1501, 333, 1504, + 334, 1439, 1505, 1506, 1440, 1451, 335, 339, 1522, 1471, + 356, 1472, 336, 1502, 1526, 1523, 1524, 337, 1525, 1532, + 1534, 1533, 1535, 1537, 1538, 948, 856, 865, 709, 867, + 1214, 1212, 1370, 715, 1072, 1277, 1273, 1274, 1322, 1305, + 1304, 1312, 1216, 340, 1215, 1221, 357, 341, 728, 1272, + 358, 393, 1412, 1218, 1282, 1217, 763, 754, 1220, 1228, + 1219, 1254, 1229, 760, 1356, 1355, 1403, 737, 1422, 1358, + 1289, 1303, 746, 1357, 1269, 1302, 1341, 1070, 1301, 731, + 1417, 1230, 1331, 1291, 1318, 1330, 1332, 1268, 1465, 1485, + 1456, 1521, 1342, 1536, 1438, 1337, 1290, 1423, 1052, 1498, + 866, 1231, 1350, 1270, 772, 1343, 1527, 775, 0, 1352, + 0, 0, 1292, 0, 1422, 0, 1458, 0, 0, 0, + 1222, 0, 0, 0, 0, 0, 1424, 0, 1223, 1283, + 0, 0, 1459, 0, 1344, 0, 1236, 1284, 1224, 1237, + 0, 0, 0, 1423, 1458, 1460, 0, 1285, 0, 0, + 0, 0, 0, 0, 1225, 0, 0, 1226, 1227, 0, + 1459, 1238, 0, 1286, 1239, 0, 1287, 1288, 1512, 0, + 0, 1240, 1424, 1460, 1461, 0, 1241, 1258, 0, 0, + 0, 0, 1242, 0, 0, 0, 0, 1244, 0, 1245, + 0, 0, 1246, 0, 1247, 0, 0, 1515, 0, 1512, + 1248, 1259, 1461, 0, 0, 0, 1249, 0, 0, 0, + 0, 1250, 0, 1232, 0, 0, 1233, 0, 1234, 1235, + 0, 1243, 0, 1251, 1252, 0, 1516, 0, 1515, 1253, + 0, 1262, 0, 0, 1263, 1264, 0, 1260, 0, 0, + 0, 1261, 98, 99, 100, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 0, 1516, 0, 0, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 0, 0, 131, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 133, 134, 135, + 0, 0, 0, 0, 0, 255, 0, 256, 0, 0, + 0, 0, 0, 137, 138, 257, 258, 259, 260, 261, + 139, 140, 141, 0, 0, 0, 0, 0, 0, 262, + 263, 264, 0, 0, 0, 0, 265, 0, 147, 0, + 0, 0, 0, 0, 0, 0, 266, 0, 0, 0, + 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 0, 0, 0, 0, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 132, 133, 134, 0, 0, 0, - 0, 0, 254, 0, 255, 0, 0, 0, 0, 0, - 136, 137, 256, 257, 258, 259, 260, 138, 139, 140, - 0, 0, 0, 0, 0, 0, 261, 262, 263, 0, - 0, 0, 0, 264, 0, 146, 0, 0, 0, 0, - 0, 0, 0, 265, 0, 0, 0, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 253, 0, 0, 0, 0, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 0, - 130, 394, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 132, 133, 134, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 156, 157, 136, 137, - 0, 257, 258, 0, 260, 138, 139, 140, 0, 0, - 0, 0, 0, 0, 261, 262, 263, 0, 0, 0, - 0, 264, 0, 0, 0, 0, 163, 0, 0, 0, - 0, 265, 0, 0, 0, 0, 0, 0, 0, 0, + 128, 129, 0, 131, 395, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 133, 134, 135, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 157, + 158, 137, 138, 0, 258, 259, 0, 261, 139, 140, + 141, 0, 0, 0, 0, 0, 0, 262, 263, 264, + 0, 0, 0, 0, 265, 0, 0, 0, 0, 164, + 0, 0, 0, 0, 266, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 156, 157, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 157, 158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 163 + 0, 0, 0, 0, 0, 0, 0, 164 }; const short Dhcp6Parser::yycheck_[] = { 71, 72, 73, 74, 75, 76, 16, 78, 79, 80, - 81, 816, 78, 79, 73, 73, 74, 75, 76, 79, - 75, 73, 79, 816, 816, 781, 814, 808, 1112, 1112, - 72, 73, 74, 75, 76, 1112, 78, 79, 1112, 81, - 1112, 1112, 150, 151, 73, 680, 3, 73, 73, 73, - 5, 8, 7, 1498, 9, 226, 7, 144, 241, 72, - 73, 74, 75, 76, 7, 78, 79, 87, 81, 1498, - 241, 86, 16, 17, 18, 19, 20, 73, 3, 39, - 40, 41, 24, 8, 1529, 73, 207, 208, 209, 210, - 110, 111, 112, 113, 114, 115, 116, 150, 151, 3, - 1529, 3, 6, 10, 73, 74, 8, 73, 74, 204, - 205, 131, 132, 133, 73, 74, 13, 14, 138, 139, - 0, 73, 74, 244, 73, 74, 761, 73, 74, 102, - 103, 104, 105, 241, 73, 74, 24, 73, 74, 73, - 74, 29, 73, 74, 73, 74, 3, 73, 74, 73, - 74, 8, 73, 74, 241, 73, 3, 73, 24, 3, - 73, 8, 73, 73, 8, 73, 3, 73, 73, 6, - 73, 115, 116, 115, 116, 73, 3, 3, 73, 6, - 73, 73, 8, 74, 75, 74, 75, 74, 75, 74, + 81, 817, 75, 815, 79, 73, 73, 817, 79, 73, + 817, 782, 809, 78, 79, 1113, 1113, 1113, 1113, 1113, + 72, 73, 74, 75, 76, 24, 78, 79, 73, 81, + 144, 7, 226, 682, 73, 74, 75, 76, 5, 0, + 7, 7, 9, 115, 116, 1499, 1499, 241, 73, 72, + 73, 74, 75, 76, 88, 78, 79, 241, 81, 7, + 150, 151, 16, 17, 18, 19, 20, 73, 3, 207, + 208, 209, 210, 8, 3, 73, 1530, 1530, 86, 8, + 7, 115, 116, 73, 74, 73, 73, 74, 24, 88, + 7, 90, 91, 29, 3, 7, 95, 96, 97, 8, + 241, 73, 3, 7, 73, 73, 244, 8, 73, 74, + 10, 73, 74, 762, 13, 14, 115, 116, 73, 74, + 192, 193, 194, 73, 74, 74, 75, 241, 3, 73, + 74, 24, 6, 8, 73, 74, 73, 74, 3, 73, + 74, 73, 74, 8, 7, 25, 26, 73, 74, 74, + 75, 241, 3, 73, 74, 7, 190, 8, 73, 74, + 73, 115, 116, 73, 7, 73, 73, 3, 73, 241, + 73, 73, 8, 7, 144, 145, 73, 147, 73, 115, + 116, 73, 73, 3, 3, 74, 75, 6, 8, 74, 75, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 160, 161, 162, 42, + 33, 34, 35, 36, 37, 38, 7, 241, 7, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 241, 88, 3, 90, 91, 6, 115, 116, 95, - 96, 97, 25, 26, 7, 144, 145, 88, 147, 115, - 116, 183, 184, 185, 44, 45, 46, 115, 116, 115, - 116, 129, 130, 218, 7, 88, 221, 222, 223, 224, - 3, 3, 7, 6, 115, 116, 8, 153, 154, 155, - 156, 157, 158, 7, 7, 163, 164, 165, 166, 54, - 55, 56, 57, 58, 59, 3, 241, 242, 243, 244, - 8, 1375, 1375, 169, 170, 171, 7, 241, 1375, 241, - 7, 1375, 7, 1375, 1375, 88, 89, 90, 91, 92, - 93, 94, 87, 88, 3, 115, 116, 7, 6, 8, - 7, 7, 115, 116, 192, 193, 194, 3, 8, 115, - 116, 4, 115, 116, 3, 3, 88, 1118, 4, 190, - 115, 116, 3, 87, 1100, 3, 3, 8, 131, 4, - 8, 8, 4, 241, 4, 1160, 4, 1162, 1146, 134, - 135, 136, 137, 115, 116, 241, 4, 1160, 1160, 1162, - 1162, 115, 116, 241, 174, 241, 4, 3, 178, 179, - 180, 181, 8, 175, 176, 177, 3, 131, 188, 189, - 241, 8, 4, 186, 187, 4, 4, 141, 142, 143, - 144, 145, 146, 147, 3, 8, 4, 4, 241, 8, - 196, 197, 198, 199, 200, 201, 202, 203, 72, 73, - 74, 75, 76, 77, 78, 3, 80, 81, 82, 83, - 8, 4, 3, 87, 722, 723, 724, 8, 3, 3, - 3, 241, 4, 8, 8, 8, 4, 101, 241, 737, - 738, 739, 740, 4, 108, 241, 4, 4, 241, 4, - 4, 115, 116, 473, 474, 217, 241, 219, 220, 4, - 758, 47, 48, 49, 50, 51, 52, 131, 132, 133, - 4, 552, 3, 8, 138, 139, 3, 8, 559, 241, - 3, 8, 4, 3, 3, 8, 3, 241, 8, 8, - 3, 8, 4, 574, 3, 8, 3, 578, 3, 8, - 4, 8, 4, 8, 585, 574, 574, 559, 3, 3, - 578, 3, 574, 8, 8, 596, 8, 585, 4, 4, - 585, 4, 574, 4, 4, 606, 578, 4, 596, 4, - 606, 4, 613, 585, 4, 574, 559, 613, 574, 574, - 574, 4, 4, 613, 596, 626, 613, 211, 212, 4, - 4, 574, 4, 4, 606, 578, 4, 4, 4, 4, - 4, 613, 585, 4, 4, 8, 3, 241, 574, 4, - 4, 4, 8, 596, 626, 3, 574, 241, 4, 4, - 4, 4, 4, 606, 4, 4, 4, 4, 4, 4, - 613, 4, 242, 242, 4, 574, 242, 242, 574, 578, - 242, 242, 578, 626, 244, 574, 243, 242, 242, 578, - 243, 243, 574, 242, 242, 574, 578, 242, 574, 578, - 244, 242, 578, 4, 244, 574, 4, 244, 574, 578, - 574, 4, 578, 574, 578, 574, 242, 578, 574, 578, - 574, 244, 578, 574, 578, 244, 574, 578, 574, 243, - 242, 574, 242, 574, 574, 244, 574, 4, 574, 574, - 4, 574, 4, 242, 4, 4, 574, 4, 4, 574, - 4, 574, 574, 4, 244, 244, 4, 578, 244, 578, - 4, 578, 4, 578, 585, 4, 585, 4, 585, 4, - 585, 4, 4, 4, 242, 776, 4, 4, 779, 227, - 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, - 238, 239, 240, 4, 4, 4, 4, 4, 244, 244, - 244, 4, 4, 4, 4, 4, 244, 779, 244, 243, - 4, 242, 242, 814, 815, 816, 4, 4, 819, 242, - 4, 4, 823, 244, 4, 4, 4, 4, 4, 242, - 4, 242, 242, 242, 4, 775, 779, 4, 4, 4, - 4, 3, 814, 815, 816, 4, 818, 819, 11, 12, - 4, 4, 15, 4, 4, 242, 4, 4, 21, 22, - 23, 4, 4, 244, 244, 244, 244, 4, 4, 4, - 4, 814, 815, 816, 244, 818, 819, 4, 4, 4, - 242, 4, 4, 242, 242, 206, 7, 7, 7, 7, - 242, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 7, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 241, 5, 241, 241, 241, - 5, 5, 5, 241, 241, 98, 99, 100, 101, 5, - 7, 241, 5, 106, 5, 5, 241, 5, 7, 5, - 5, 5, 115, 116, 7, 7, 7, 7, 7, 122, - 123, 124, 125, 126, 127, 128, 7, 241, 131, 5, - 7, 5, 5, 5, 5, 241, 241, 140, 241, 7, - 241, 7, 7, 241, 7, 7, 149, 7, 241, 152, - 7, 241, 241, 7, 241, 241, 159, 7, 241, 7, - 241, 241, 7, 241, 167, 168, 7, 241, 7, 172, - 173, 241, 241, 141, 4, 241, 241, 241, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 191, 4, - 6, 3, 195, 6, 3, 6, 6, 3, 6, 3, - 244, 6, 3, 6, 6, 3, 6, 4, 211, 212, - 213, 214, 215, 216, 4, 4, 4, 4, 4, 4, - 4, 4, 225, 4, 4, 4, 4, 4, 3, 241, - 4, 4, 4, 3, 242, 6, 3, 6, 241, 3, - 8, 6, 4, 4, 4, 4, 242, 244, 4, 244, - 242, 4, 4, 242, 4, 4, 242, 242, 242, 4, - 4, 242, 1103, 242, 4, 1106, 4, 4, 1109, 242, - 1106, 1112, 242, 1109, 1103, 1103, 1112, 4, 242, 1109, - 4, 1103, 1109, 1124, 1112, 242, 1127, 242, 1124, 1130, - 1112, 1103, 242, 242, 1106, 242, 1124, 1109, 242, 1127, - 1112, 4, 1124, 244, 1103, 1146, 242, 1103, 1103, 1103, - 1151, 242, 1124, 1112, 242, 1127, 1112, 1112, 1112, 1160, - 1103, 1162, 4, 1106, 244, 1124, 1109, 4, 1124, 1112, - 1124, 1172, 244, 4, 1146, 1176, 1172, 1103, 242, 1151, - 1181, 1124, 4, 1184, 1127, 1103, 1112, 244, 1160, 6, - 1162, 4, 8, 1181, 1112, 241, 1184, 1169, 1124, 1184, - 1172, 241, 241, 1146, 1103, 8, 1124, 1103, 1151, 1181, - 4, 241, 1184, 1112, 1103, 8, 1112, 1160, 3, 1162, - 241, 1103, 241, 1112, 1103, 241, 1169, 1103, 241, 1172, - 1112, 8, 241, 1112, 1103, 241, 1112, 1103, 1181, 1103, - 7, 1184, 1103, 1112, 1103, 241, 1112, 1103, 1112, 1103, - 241, 1112, 1103, 1112, 241, 1103, 1112, 1103, 1112, 5, - 1103, 1112, 1103, 1103, 1112, 1103, 1112, 1103, 1103, 1112, - 1103, 1112, 1112, 4, 1112, 1103, 1112, 1112, 1103, 1112, - 1103, 1103, 1181, 4, 1112, 1181, 241, 1112, 241, 1112, - 1112, 1112, 1181, 1112, 4, 1112, 7, 1112, 4, 1181, - 242, 4, 1181, 3, 6, 1181, 5, 4, 244, 4, - 4, 4, 1181, 182, 4, 1181, 7, 1181, 244, 5, - 1181, 6, 1181, 241, 241, 1181, 241, 1181, 7, 3, - 1181, 4, 4, 241, 241, 241, 4, 4, 4, 4, - 242, 244, 4, 242, 761, 241, 241, 241, 241, 807, - 776, 779, 1102, 559, 552, 862, 1097, 1209, 1122, 1118, - 1181, 1115, 1181, 1184, 1181, 1184, 1181, 1184, 1151, 1184, - 1132, 616, 1130, 1139, 1375, 1103, 1105, 574, 1114, 1375, - 1375, 77, 1108, 1384, 606, 1106, 1111, 1375, 1384, 1109, - 613, 1183, 1181, 1375, 1184, 1335, 1384, 1398, 1186, 585, - 1127, 596, 1384, 1375, 1384, 1406, 1125, 578, 1146, 1164, - 1406, 1129, 1384, 1162, 1160, 835, 1375, 1448, 1474, 1375, - 1375, 1375, 1444, 1500, 1529, 1384, 1398, 1169, 1384, 778, - 1384, 819, 1375, 626, 1406, 1406, 1173, 1477, 630, 1507, - -1, 1384, 1176, 1444, -1, 1446, -1, -1, -1, 1375, - 1446, -1, -1, -1, -1, 1398, -1, 1375, 1384, -1, - -1, -1, -1, 1406, -1, -1, 1384, -1, -1, -1, - -1, -1, 1444, 1474, 1446, -1, 1375, -1, 1474, 1375, - -1, -1, -1, -1, -1, -1, 1375, -1, -1, -1, - -1, -1, -1, 1375, -1, -1, 1375, 1498, -1, 1375, - -1, 1444, 1474, 1446, -1, -1, 1375, -1, -1, 1375, - -1, 1375, -1, -1, 1375, -1, 1375, -1, -1, 1375, - -1, 1375, -1, -1, 1375, -1, 1498, 1375, 1529, 1375, - -1, 1474, 1375, -1, 1375, 1375, -1, 1375, -1, 1375, - 1375, -1, 1375, -1, -1, -1, -1, 1375, -1, -1, - 1375, -1, 1375, 1375, 1375, 1498, 1375, 1529, 1375, -1, - 1375, -1, -1, -1, -1, -1, -1, -1, -1, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, -1, -1, -1, 1529, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - -1, -1, 87, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 99, 100, 101, -1, -1, -1, - -1, -1, 107, -1, 109, -1, -1, -1, -1, -1, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - -1, -1, -1, -1, -1, -1, 131, 132, 133, -1, - -1, -1, -1, 138, -1, 140, -1, -1, -1, -1, - -1, -1, -1, 148, -1, -1, -1, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, -1, -1, -1, -1, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, - 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 99, 100, 101, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 211, 212, 115, 116, - -1, 118, 119, -1, 121, 122, 123, 124, -1, -1, - -1, -1, -1, -1, 131, 132, 133, -1, -1, -1, - -1, 138, -1, -1, -1, -1, 241, -1, -1, -1, - -1, 148, -1, -1, -1, -1, -1, -1, -1, -1, + 53, 3, 115, 116, 204, 205, 8, 163, 164, 165, + 166, 3, 44, 45, 46, 115, 116, 4, 3, 8, + 218, 6, 241, 221, 222, 223, 224, 153, 154, 155, + 156, 157, 158, 3, 3, 88, 6, 72, 73, 74, + 75, 76, 77, 78, 3, 80, 81, 82, 83, 8, + 3, 8, 87, 6, 241, 242, 243, 244, 1376, 1376, + 1376, 1376, 1376, 3, 3, 3, 101, 241, 8, 8, + 183, 184, 185, 108, 4, 3, 8, 3, 6, 88, + 115, 116, 8, 115, 116, 241, 186, 187, 4, 54, + 55, 56, 57, 58, 59, 3, 131, 132, 133, 4, + 8, 4, 1119, 138, 139, 4, 115, 116, 4, 3, + 1101, 3, 3, 3, 8, 1147, 8, 8, 8, 115, + 116, 3, 87, 88, 3, 1161, 8, 1163, 241, 8, + 3, 1161, 3, 1163, 1161, 8, 1163, 8, 87, 4, + 3, 241, 174, 115, 116, 8, 178, 179, 180, 181, + 115, 116, 150, 151, 3, 3, 188, 189, 87, 8, + 8, 110, 111, 112, 113, 114, 115, 116, 4, 134, + 135, 136, 137, 169, 170, 171, 211, 212, 129, 130, + 3, 8, 131, 132, 133, 8, 115, 116, 241, 138, + 139, 4, 4, 88, 89, 90, 91, 92, 93, 94, + 3, 3, 131, 8, 4, 8, 241, 4, 217, 241, + 219, 220, 141, 142, 143, 144, 145, 146, 147, 4, + 115, 116, 4, 4, 196, 197, 198, 199, 200, 201, + 202, 203, 241, 3, 474, 475, 131, 3, 8, 723, + 724, 725, 8, 4, 3, 241, 47, 48, 49, 50, + 51, 52, 4, 554, 738, 739, 740, 741, 4, 3, + 561, 3, 3, 3, 8, 4, 8, 8, 8, 241, + 102, 103, 104, 105, 575, 759, 241, 4, 579, 39, + 40, 41, 160, 161, 162, 586, 4, 575, 575, 561, + 4, 575, 241, 586, 4, 4, 597, 4, 175, 176, + 177, 4, 4, 575, 4, 4, 607, 579, 4, 4, + 575, 4, 241, 614, 586, 4, 575, 4, 561, 614, + 579, 4, 607, 614, 4, 597, 627, 586, 4, 614, + 575, 4, 575, 4, 4, 607, 579, 4, 597, 4, + 4, 4, 614, 586, 4, 4, 241, 4, 4, 575, + 4, 4, 4, 4, 597, 627, 4, 575, 4, 4, + 4, 4, 4, 4, 607, 575, 4, 575, 575, 579, + 4, 614, 579, 4, 4, 242, 242, 4, 242, 4, + 242, 242, 242, 575, 627, 242, 575, 575, 242, 244, + 575, 243, 243, 575, 579, 4, 243, 579, 242, 242, + 575, 243, 242, 242, 579, 575, 244, 244, 4, 579, + 579, 575, 4, 244, 244, 579, 575, 586, 575, 244, + 579, 575, 579, 575, 243, 579, 242, 579, 242, 575, + 4, 242, 4, 579, 579, 575, 244, 4, 242, 579, + 575, 586, 575, 4, 579, 575, 4, 575, 575, 4, + 575, 4, 575, 575, 4, 244, 244, 244, 575, 4, + 575, 4, 4, 575, 575, 4, 4, 4, 4, 4, + 579, 4, 4, 242, 579, 4, 777, 586, 4, 780, + 4, 586, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 4, 4, 4, 4, + 4, 244, 4, 4, 4, 4, 244, 244, 780, 244, + 244, 242, 242, 4, 815, 816, 817, 4, 242, 820, + 4, 244, 4, 824, 4, 4, 4, 4, 4, 242, + 242, 4, 4, 4, 242, 4, 776, 780, 242, 4, + 4, 4, 3, 815, 816, 817, 4, 819, 820, 11, + 12, 4, 4, 15, 4, 4, 242, 4, 4, 21, + 22, 23, 244, 4, 4, 244, 244, 244, 4, 4, + 244, 4, 815, 816, 817, 4, 819, 820, 4, 4, + 242, 242, 4, 4, 242, 5, 206, 242, 7, 7, + 7, 241, 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, 81, + 82, 83, 84, 85, 86, 87, 7, 7, 241, 241, + 241, 5, 5, 5, 241, 241, 98, 99, 100, 101, + 5, 7, 241, 5, 106, 5, 5, 241, 5, 7, + 5, 5, 5, 115, 116, 7, 7, 7, 7, 7, + 122, 123, 124, 125, 126, 127, 128, 7, 241, 131, + 5, 7, 5, 5, 5, 241, 241, 241, 140, 241, + 7, 241, 241, 5, 241, 241, 7, 149, 7, 241, + 152, 7, 241, 241, 241, 241, 7, 159, 7, 7, + 241, 241, 7, 7, 7, 167, 168, 241, 7, 7, + 172, 173, 7, 241, 241, 4, 241, 141, 241, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 191, + 4, 6, 3, 195, 6, 3, 6, 6, 3, 6, + 3, 244, 6, 3, 6, 6, 3, 6, 4, 211, + 212, 213, 214, 215, 216, 4, 4, 4, 4, 4, + 4, 4, 4, 225, 4, 4, 4, 4, 4, 3, + 244, 4, 4, 4, 241, 3, 6, 6, 3, 241, + 6, 8, 4, 4, 4, 4, 242, 242, 242, 4, + 4, 242, 4, 4, 242, 4, 4, 242, 242, 242, + 4, 4, 244, 1104, 242, 242, 1107, 4, 242, 1110, + 242, 242, 1113, 4, 242, 1110, 1104, 1104, 4, 1110, + 1104, 244, 1107, 4, 1125, 1110, 1113, 1128, 1113, 1113, + 1131, 242, 1104, 242, 242, 1107, 242, 242, 1110, 1104, + 1125, 1113, 242, 4, 242, 1104, 1147, 4, 1113, 244, + 4, 1152, 244, 1125, 1113, 4, 1128, 242, 4, 1104, + 1161, 1104, 1163, 6, 1107, 244, 1125, 1110, 1113, 1128, + 1113, 3, 1173, 241, 241, 1147, 1177, 241, 1104, 8, + 1152, 1182, 1125, 8, 1185, 1128, 1104, 1113, 1173, 1161, + 4, 1163, 1185, 4, 1104, 1113, 1104, 1104, 1170, 1125, + 241, 1173, 241, 1113, 1147, 1113, 1113, 1125, 8, 1152, + 1182, 241, 1104, 1185, 3, 1104, 1104, 1125, 1161, 1104, + 1163, 1113, 1104, 1182, 1113, 1113, 1185, 1170, 1113, 1104, + 1173, 1113, 8, 1125, 1104, 241, 1125, 1125, 1113, 1182, + 1104, 241, 1185, 1113, 1113, 1104, 7, 1104, 241, 1113, + 1104, 241, 1104, 241, 1113, 241, 1113, 5, 1104, 1113, + 4, 1113, 4, 4, 1104, 4, 4, 1113, 1113, 1104, + 7, 1104, 1182, 1113, 1104, 1182, 1104, 1104, 1113, 1104, + 1113, 1104, 1104, 1113, 242, 1113, 1113, 1104, 1113, 1104, + 1113, 1113, 1104, 1104, 244, 6, 1113, 1182, 1113, 3, + 1182, 1113, 1113, 244, 1113, 5, 241, 1182, 1113, 4, + 4, 4, 1182, 1182, 4, 7, 1185, 241, 1182, 182, + 5, 7, 4, 1182, 241, 1182, 6, 3, 1182, 4, + 1182, 241, 4, 4, 241, 241, 1182, 1182, 4, 241, + 1185, 241, 1182, 241, 4, 244, 242, 1182, 242, 241, + 4, 241, 4, 241, 241, 808, 762, 777, 554, 780, + 1103, 1098, 1210, 561, 863, 1123, 1116, 1119, 1152, 1133, + 1131, 1140, 1106, 1182, 1104, 1376, 1185, 1182, 575, 1115, + 1185, 77, 1376, 1109, 1385, 1107, 617, 607, 1112, 1376, + 1110, 1376, 1376, 614, 1184, 1182, 1336, 586, 1399, 1187, + 1385, 1130, 597, 1185, 1376, 1128, 1407, 836, 1126, 579, + 1385, 1376, 1163, 1385, 1147, 1161, 1165, 1376, 1449, 1475, + 1445, 1501, 1407, 1530, 1407, 1170, 1385, 1399, 820, 1478, + 779, 1376, 1174, 1376, 627, 1407, 1508, 631, -1, 1177, + -1, -1, 1385, -1, 1445, -1, 1447, -1, -1, -1, + 1376, -1, -1, -1, -1, -1, 1399, -1, 1376, 1385, + -1, -1, 1447, -1, 1407, -1, 1376, 1385, 1376, 1376, + -1, -1, -1, 1445, 1475, 1447, -1, 1385, -1, -1, + -1, -1, -1, -1, 1376, -1, -1, 1376, 1376, -1, + 1475, 1376, -1, 1385, 1376, -1, 1385, 1385, 1499, -1, + -1, 1376, 1445, 1475, 1447, -1, 1376, 1376, -1, -1, + -1, -1, 1376, -1, -1, -1, -1, 1376, -1, 1376, + -1, -1, 1376, -1, 1376, -1, -1, 1499, -1, 1530, + 1376, 1376, 1475, -1, -1, -1, 1376, -1, -1, -1, + -1, 1376, -1, 1376, -1, -1, 1376, -1, 1376, 1376, + -1, 1376, -1, 1376, 1376, -1, 1499, -1, 1530, 1376, + -1, 1376, -1, -1, 1376, 1376, -1, 1376, -1, -1, + -1, 1376, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, -1, 1530, -1, -1, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, -1, -1, 87, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 99, 100, 101, + -1, -1, -1, -1, -1, 107, -1, 109, -1, -1, + -1, -1, -1, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, -1, -1, 131, + 132, 133, -1, -1, -1, -1, 138, -1, 140, -1, + -1, -1, -1, -1, -1, -1, 148, -1, -1, -1, + 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, -1, 87, 88, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 99, 100, 101, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 211, + 212, 115, 116, -1, 118, 119, -1, 121, 122, 123, + 124, -1, -1, -1, -1, -1, -1, 131, 132, 133, + -1, -1, -1, -1, 138, -1, -1, -1, -1, 241, + -1, -1, -1, -1, 148, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 211, 212, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 211, 212, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 241 + -1, -1, -1, -1, -1, -1, -1, 241 }; const short @@ -6477,149 +6477,149 @@ namespace isc { namespace dhcp { 434, 692, 711, 261, 270, 271, 241, 266, 267, 10, 279, 281, 11, 12, 15, 21, 22, 23, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 98, 99, 100, 101, 106, 115, 116, 122, 123, - 124, 125, 126, 127, 128, 131, 140, 149, 152, 159, - 167, 168, 172, 173, 191, 195, 211, 212, 213, 214, - 215, 216, 225, 241, 276, 284, 285, 286, 288, 289, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 98, 99, 100, 101, 106, 115, 116, 122, + 123, 124, 125, 126, 127, 128, 131, 140, 149, 152, + 159, 167, 168, 172, 173, 191, 195, 211, 212, 213, + 214, 215, 216, 225, 241, 276, 284, 285, 286, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 299, 300, 301, 302, 303, 304, 305, 306, 309, 311, + 313, 314, 315, 318, 319, 320, 321, 322, 324, 326, + 327, 328, 329, 331, 332, 334, 336, 337, 338, 339, + 351, 353, 355, 398, 406, 412, 418, 420, 427, 441, + 451, 475, 476, 477, 480, 488, 514, 548, 550, 569, + 599, 614, 626, 627, 629, 679, 689, 708, 717, 741, + 16, 17, 18, 19, 20, 276, 343, 344, 345, 347, + 348, 349, 350, 548, 550, 107, 109, 117, 118, 119, + 120, 121, 131, 132, 133, 138, 148, 276, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, - 300, 302, 303, 304, 305, 306, 309, 311, 313, 314, - 315, 318, 319, 320, 321, 322, 324, 326, 327, 328, - 329, 331, 332, 334, 336, 337, 338, 339, 351, 353, - 355, 398, 406, 412, 418, 420, 427, 441, 451, 475, - 476, 477, 480, 488, 514, 548, 550, 569, 599, 614, - 626, 627, 629, 679, 689, 708, 717, 741, 16, 17, - 18, 19, 20, 276, 343, 344, 345, 347, 348, 349, - 350, 548, 550, 67, 107, 109, 117, 118, 119, 120, - 121, 131, 132, 133, 138, 148, 276, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, - 301, 303, 304, 305, 306, 309, 311, 313, 314, 315, - 318, 319, 320, 321, 322, 324, 326, 332, 334, 459, - 460, 461, 463, 465, 467, 469, 471, 473, 475, 476, - 477, 478, 479, 514, 535, 548, 550, 552, 569, 596, - 108, 139, 276, 303, 304, 305, 306, 309, 311, 313, - 315, 318, 319, 320, 321, 322, 324, 467, 469, 471, - 473, 514, 543, 544, 545, 547, 548, 550, 110, 111, - 112, 113, 114, 276, 467, 469, 471, 473, 514, 547, - 548, 550, 560, 561, 562, 564, 565, 567, 568, 131, - 141, 142, 143, 144, 145, 146, 147, 276, 514, 548, - 550, 577, 578, 579, 580, 582, 584, 586, 588, 590, - 592, 594, 488, 24, 88, 90, 91, 95, 96, 97, - 276, 372, 498, 499, 500, 501, 502, 503, 504, 506, - 508, 510, 511, 513, 548, 550, 89, 92, 93, 94, - 131, 276, 372, 502, 508, 522, 523, 524, 525, 526, - 528, 529, 530, 531, 532, 533, 548, 550, 150, 151, - 276, 435, 436, 437, 439, 196, 197, 198, 199, 200, - 201, 202, 203, 276, 548, 550, 693, 694, 695, 696, - 698, 699, 701, 702, 703, 706, 13, 14, 712, 713, - 714, 716, 6, 3, 4, 8, 3, 280, 3, 8, - 287, 709, 340, 352, 354, 356, 4, 4, 4, 4, + 300, 301, 303, 304, 305, 306, 309, 311, 313, 314, + 315, 318, 319, 320, 321, 322, 324, 326, 332, 334, + 459, 460, 461, 463, 465, 467, 469, 471, 473, 475, + 476, 477, 478, 479, 514, 535, 548, 550, 552, 569, + 596, 108, 139, 276, 303, 304, 305, 306, 309, 311, + 313, 315, 318, 319, 320, 321, 322, 324, 467, 469, + 471, 473, 514, 543, 544, 545, 547, 548, 550, 110, + 111, 112, 113, 114, 276, 467, 469, 471, 473, 514, + 547, 548, 550, 560, 561, 562, 564, 565, 567, 568, + 131, 141, 142, 143, 144, 145, 146, 147, 276, 514, + 548, 550, 577, 578, 579, 580, 582, 584, 586, 588, + 590, 592, 594, 488, 24, 88, 90, 91, 95, 96, + 97, 276, 372, 498, 499, 500, 501, 502, 503, 504, + 506, 508, 510, 511, 513, 548, 550, 89, 92, 93, + 94, 131, 276, 372, 502, 508, 522, 523, 524, 525, + 526, 528, 529, 530, 531, 532, 533, 548, 550, 150, + 151, 276, 435, 436, 437, 439, 196, 197, 198, 199, + 200, 201, 202, 203, 276, 548, 550, 693, 694, 695, + 696, 698, 699, 701, 702, 703, 706, 13, 14, 712, + 713, 714, 716, 6, 3, 4, 8, 3, 280, 3, + 8, 287, 709, 340, 352, 354, 356, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 330, 4, 4, 4, 4, 4, 307, 310, + 312, 4, 4, 4, 4, 4, 4, 4, 452, 489, + 515, 4, 333, 335, 316, 481, 549, 551, 4, 4, + 4, 407, 419, 413, 399, 600, 570, 428, 442, 615, + 4, 421, 628, 630, 680, 690, 323, 325, 4, 4, + 4, 718, 742, 4, 3, 8, 346, 4, 4, 4, + 4, 3, 8, 536, 553, 462, 464, 466, 4, 4, + 470, 472, 474, 468, 597, 3, 8, 546, 4, 3, + 8, 563, 4, 566, 4, 4, 3, 8, 595, 581, + 583, 585, 587, 589, 591, 593, 8, 3, 8, 505, + 373, 4, 509, 507, 512, 4, 8, 3, 527, 4, + 4, 4, 534, 8, 3, 438, 440, 3, 8, 4, + 697, 4, 700, 4, 4, 704, 707, 3, 8, 715, + 4, 3, 8, 261, 261, 241, 4, 4, 4, 4, + 4, 4, 4, 242, 242, 242, 242, 242, 242, 242, + 242, 244, 243, 243, 243, 242, 243, 242, 4, 242, + 242, 244, 244, 244, 4, 4, 4, 244, 244, 243, + 242, 242, 242, 244, 4, 4, 4, 242, 4, 4, + 4, 4, 4, 4, 244, 244, 244, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 242, 4, 4, 4, + 4, 4, 4, 4, 244, 244, 244, 4, 4, 285, + 4, 244, 244, 242, 242, 344, 4, 4, 4, 4, + 4, 242, 244, 4, 4, 4, 4, 4, 460, 4, + 242, 544, 4, 242, 4, 242, 242, 561, 4, 4, + 4, 4, 4, 4, 4, 4, 579, 4, 4, 242, + 4, 4, 4, 244, 500, 4, 244, 244, 244, 4, + 524, 4, 4, 436, 244, 4, 242, 4, 242, 242, + 4, 4, 694, 4, 242, 713, 4, 7, 241, 7, + 7, 7, 7, 5, 241, 207, 208, 209, 210, 244, + 308, 241, 241, 5, 5, 5, 241, 241, 102, 103, + 104, 105, 317, 5, 263, 265, 241, 5, 5, 5, + 7, 5, 5, 5, 7, 7, 7, 7, 5, 7, + 7, 241, 241, 5, 7, 5, 272, 5, 5, 241, + 241, 241, 272, 272, 272, 241, 7, 241, 241, 241, + 272, 272, 272, 272, 241, 241, 241, 241, 241, 241, + 241, 241, 241, 241, 272, 241, 265, 241, 241, 204, + 205, 705, 206, 5, 261, 284, 712, 343, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 53, 276, 361, 362, 363, 365, + 367, 369, 371, 372, 374, 375, 376, 377, 378, 379, + 380, 381, 382, 385, 386, 387, 388, 390, 392, 394, + 396, 361, 7, 357, 358, 359, 7, 453, 454, 455, + 7, 492, 493, 494, 7, 516, 517, 518, 7, 482, + 483, 484, 144, 241, 408, 409, 410, 411, 270, 145, + 147, 410, 414, 415, 416, 417, 129, 130, 400, 401, + 402, 404, 7, 601, 602, 7, 571, 572, 573, 7, + 429, 430, 431, 153, 154, 155, 156, 157, 158, 443, + 444, 445, 446, 447, 448, 449, 450, 24, 163, 164, + 165, 166, 276, 374, 548, 550, 616, 617, 618, 621, + 622, 624, 625, 169, 170, 171, 276, 422, 423, 424, + 425, 426, 548, 550, 174, 178, 179, 180, 181, 188, + 189, 276, 388, 390, 392, 548, 550, 635, 636, 637, + 640, 642, 644, 645, 646, 656, 7, 631, 632, 633, + 192, 193, 194, 241, 548, 550, 681, 682, 683, 684, + 686, 687, 693, 7, 719, 720, 226, 276, 743, 744, + 745, 273, 7, 537, 538, 539, 7, 554, 555, 556, + 580, 598, 357, 8, 8, 8, 364, 366, 368, 370, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 330, 4, 4, 4, 4, 4, 307, 310, 312, 4, - 4, 4, 4, 4, 4, 4, 452, 489, 515, 4, - 333, 335, 316, 481, 549, 551, 4, 4, 4, 407, - 419, 413, 399, 600, 570, 428, 442, 615, 4, 421, - 628, 630, 680, 690, 323, 325, 4, 4, 4, 718, - 742, 4, 3, 8, 346, 4, 4, 4, 4, 3, - 8, 4, 536, 553, 462, 464, 466, 4, 4, 470, - 472, 474, 468, 597, 3, 8, 546, 4, 3, 8, - 563, 4, 566, 4, 4, 3, 8, 595, 581, 583, - 585, 587, 589, 591, 593, 8, 3, 8, 505, 373, - 4, 509, 507, 512, 4, 8, 3, 527, 4, 4, - 4, 534, 8, 3, 438, 440, 3, 8, 4, 697, - 4, 700, 4, 4, 704, 707, 3, 8, 715, 4, - 3, 8, 261, 261, 241, 4, 4, 4, 4, 4, - 4, 4, 242, 242, 242, 242, 242, 242, 242, 242, - 244, 243, 243, 243, 242, 242, 4, 242, 242, 244, - 244, 244, 4, 4, 4, 244, 244, 243, 242, 242, - 242, 244, 4, 4, 4, 242, 4, 4, 4, 4, - 4, 4, 244, 244, 244, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 242, 4, 4, 4, 4, 4, - 4, 4, 244, 244, 244, 4, 4, 285, 4, 244, - 244, 242, 242, 344, 243, 4, 4, 4, 4, 4, - 242, 244, 4, 4, 4, 4, 4, 460, 4, 242, - 544, 4, 242, 4, 242, 242, 561, 4, 4, 4, - 4, 4, 4, 4, 4, 579, 4, 4, 242, 4, - 4, 4, 244, 500, 4, 244, 244, 244, 4, 524, - 4, 4, 436, 244, 4, 242, 4, 242, 242, 4, - 4, 694, 4, 242, 713, 4, 7, 241, 7, 7, - 7, 7, 5, 241, 207, 208, 209, 210, 244, 308, - 241, 241, 5, 5, 5, 241, 241, 102, 103, 104, - 105, 317, 5, 263, 265, 241, 5, 5, 5, 7, - 5, 5, 5, 7, 7, 7, 7, 5, 7, 7, - 241, 241, 5, 7, 5, 272, 5, 5, 241, 241, - 241, 272, 272, 272, 241, 7, 241, 241, 241, 272, - 272, 272, 272, 241, 241, 241, 241, 241, 241, 241, - 241, 241, 241, 272, 241, 265, 241, 241, 204, 205, - 705, 206, 5, 261, 284, 712, 343, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 276, 361, 362, 363, 365, 367, - 369, 371, 372, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 385, 386, 387, 388, 390, 392, 394, 396, - 361, 7, 357, 358, 359, 7, 453, 454, 455, 7, - 492, 493, 494, 7, 516, 517, 518, 7, 482, 483, - 484, 144, 241, 408, 409, 410, 411, 270, 145, 147, - 410, 414, 415, 416, 417, 129, 130, 400, 401, 402, - 404, 7, 601, 602, 7, 571, 572, 573, 7, 429, - 430, 431, 153, 154, 155, 156, 157, 158, 443, 444, - 445, 446, 447, 448, 449, 450, 24, 163, 164, 165, - 166, 276, 374, 548, 550, 616, 617, 618, 621, 622, - 624, 625, 169, 170, 171, 276, 422, 423, 424, 425, - 426, 548, 550, 174, 178, 179, 180, 181, 188, 189, - 276, 388, 390, 392, 548, 550, 635, 636, 637, 640, - 642, 644, 645, 646, 656, 7, 631, 632, 633, 192, - 193, 194, 241, 548, 550, 681, 682, 683, 684, 686, - 687, 693, 7, 719, 720, 226, 276, 743, 744, 745, - 273, 7, 537, 538, 539, 7, 554, 555, 556, 580, - 598, 357, 8, 8, 8, 364, 366, 368, 370, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 383, - 4, 4, 389, 391, 393, 395, 397, 3, 8, 8, - 360, 6, 3, 456, 6, 3, 495, 6, 3, 519, - 6, 3, 485, 6, 3, 3, 6, 6, 3, 6, - 403, 405, 3, 8, 603, 3, 6, 574, 6, 3, - 432, 6, 3, 4, 4, 4, 4, 4, 4, 3, - 8, 619, 623, 4, 4, 4, 3, 8, 4, 4, - 4, 3, 8, 638, 641, 643, 4, 657, 4, 647, - 3, 8, 634, 6, 3, 4, 685, 4, 688, 3, - 8, 8, 721, 3, 6, 4, 3, 8, 241, 274, - 275, 540, 6, 3, 557, 6, 3, 8, 6, 4, - 4, 4, 4, 242, 244, 242, 244, 242, 242, 242, - 242, 242, 242, 4, 244, 242, 4, 4, 4, 4, - 4, 362, 361, 359, 459, 455, 498, 494, 522, 518, - 276, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 303, 304, 305, 306, 309, - 311, 313, 314, 315, 318, 319, 320, 321, 322, 324, - 326, 332, 334, 372, 451, 463, 465, 467, 469, 471, - 473, 475, 476, 477, 479, 486, 487, 514, 548, 550, - 596, 484, 409, 415, 4, 4, 401, 134, 135, 136, - 137, 276, 288, 289, 290, 291, 292, 293, 372, 514, - 548, 550, 604, 605, 606, 607, 608, 610, 612, 613, - 602, 577, 573, 435, 431, 242, 242, 242, 242, 242, - 242, 444, 4, 4, 242, 242, 242, 617, 244, 242, - 242, 423, 4, 4, 4, 242, 4, 244, 4, 636, - 635, 633, 244, 4, 242, 4, 682, 217, 219, 220, - 276, 372, 548, 550, 722, 723, 724, 725, 727, 720, - 244, 744, 6, 3, 543, 539, 560, 556, 241, 241, - 241, 241, 39, 40, 41, 384, 241, 241, 241, 394, - 241, 8, 8, 8, 8, 3, 8, 241, 241, 609, - 611, 4, 4, 8, 3, 8, 8, 160, 161, 162, - 620, 241, 175, 176, 177, 639, 241, 241, 7, 5, - 8, 241, 261, 728, 4, 726, 3, 8, 241, 8, - 8, 487, 4, 4, 244, 244, 606, 24, 183, 184, - 185, 276, 548, 550, 658, 659, 660, 663, 665, 667, - 7, 648, 649, 650, 4, 242, 4, 723, 241, 241, - 661, 664, 666, 668, 3, 8, 651, 6, 3, 5, - 241, 4, 4, 4, 4, 659, 190, 276, 372, 548, - 550, 652, 653, 654, 650, 7, 729, 730, 182, 662, - 241, 241, 5, 655, 3, 8, 731, 3, 6, 7, - 669, 670, 671, 4, 653, 218, 221, 222, 223, 224, - 732, 733, 734, 736, 737, 738, 739, 730, 672, 6, - 3, 241, 735, 4, 4, 4, 740, 3, 8, 186, - 187, 276, 365, 367, 548, 550, 673, 674, 675, 677, - 671, 4, 244, 242, 242, 4, 733, 676, 678, 3, - 8, 241, 241, 4, 4, 674, 241, 241 + 383, 4, 4, 389, 391, 393, 395, 397, 3, 8, + 8, 360, 6, 3, 456, 6, 3, 495, 6, 3, + 519, 6, 3, 485, 6, 3, 3, 6, 6, 3, + 6, 403, 405, 3, 8, 603, 3, 6, 574, 6, + 3, 432, 6, 3, 4, 4, 4, 4, 4, 4, + 3, 8, 619, 623, 4, 4, 4, 3, 8, 4, + 4, 4, 3, 8, 638, 641, 643, 4, 657, 4, + 647, 3, 8, 634, 6, 3, 4, 685, 4, 688, + 3, 8, 8, 721, 3, 6, 4, 3, 8, 241, + 274, 275, 540, 6, 3, 557, 6, 3, 8, 6, + 4, 4, 4, 4, 242, 244, 242, 244, 242, 242, + 242, 242, 242, 242, 4, 244, 242, 4, 4, 4, + 4, 4, 362, 361, 359, 459, 455, 498, 494, 522, + 518, 276, 288, 289, 290, 291, 292, 293, 294, 295, + 296, 297, 298, 299, 300, 301, 303, 304, 305, 306, + 309, 311, 313, 314, 315, 318, 319, 320, 321, 322, + 324, 326, 332, 334, 372, 451, 463, 465, 467, 469, + 471, 473, 475, 476, 477, 479, 486, 487, 514, 548, + 550, 596, 484, 409, 415, 4, 4, 401, 134, 135, + 136, 137, 276, 288, 289, 290, 291, 292, 293, 372, + 514, 548, 550, 604, 605, 606, 607, 608, 610, 612, + 613, 602, 577, 573, 435, 431, 242, 242, 242, 242, + 242, 242, 444, 4, 4, 242, 242, 242, 617, 244, + 242, 242, 423, 4, 4, 4, 242, 4, 244, 4, + 636, 635, 633, 244, 4, 242, 4, 682, 217, 219, + 220, 276, 372, 548, 550, 722, 723, 724, 725, 727, + 720, 244, 744, 6, 3, 543, 539, 560, 556, 241, + 241, 241, 241, 39, 40, 41, 384, 241, 241, 241, + 394, 241, 8, 8, 8, 8, 3, 8, 241, 241, + 609, 611, 4, 4, 8, 3, 8, 8, 160, 161, + 162, 620, 241, 175, 176, 177, 639, 241, 241, 7, + 5, 8, 241, 261, 728, 4, 726, 3, 8, 241, + 8, 8, 487, 4, 4, 244, 244, 606, 24, 183, + 184, 185, 276, 548, 550, 658, 659, 660, 663, 665, + 667, 7, 648, 649, 650, 4, 242, 4, 723, 241, + 241, 661, 664, 666, 668, 3, 8, 651, 6, 3, + 5, 241, 4, 4, 4, 4, 659, 190, 276, 372, + 548, 550, 652, 653, 654, 650, 7, 729, 730, 182, + 662, 241, 241, 5, 655, 3, 8, 731, 3, 6, + 7, 669, 670, 671, 4, 653, 218, 221, 222, 223, + 224, 732, 733, 734, 736, 737, 738, 739, 730, 672, + 6, 3, 241, 735, 4, 4, 4, 740, 3, 8, + 186, 187, 276, 365, 367, 548, 550, 673, 674, 675, + 677, 671, 4, 244, 242, 242, 4, 733, 676, 678, + 3, 8, 241, 241, 4, 4, 674, 241, 241 }; const short @@ -6639,94 +6639,94 @@ namespace isc { namespace dhcp { 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, - 285, 285, 285, 285, 287, 286, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 307, 306, 308, 308, 308, 308, - 308, 310, 309, 312, 311, 313, 314, 316, 315, 317, - 317, 317, 317, 318, 319, 320, 321, 323, 322, 325, - 324, 326, 327, 328, 330, 329, 331, 333, 332, 335, - 334, 336, 337, 338, 340, 339, 342, 341, 343, 343, - 343, 344, 344, 344, 344, 344, 344, 344, 344, 346, - 345, 347, 348, 349, 350, 352, 351, 354, 353, 356, - 355, 357, 357, 358, 358, 358, 360, 359, 361, 361, - 361, 362, 362, 362, 362, 362, 362, 362, 362, 362, + 285, 285, 285, 285, 285, 287, 286, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, + 301, 302, 303, 304, 305, 307, 306, 308, 308, 308, + 308, 308, 310, 309, 312, 311, 313, 314, 316, 315, + 317, 317, 317, 317, 318, 319, 320, 321, 323, 322, + 325, 324, 326, 327, 328, 330, 329, 331, 333, 332, + 335, 334, 336, 337, 338, 340, 339, 342, 341, 343, + 343, 343, 344, 344, 344, 344, 344, 344, 344, 344, + 346, 345, 347, 348, 349, 350, 352, 351, 354, 353, + 356, 355, 357, 357, 358, 358, 358, 360, 359, 361, + 361, 361, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, 362, - 362, 362, 362, 362, 362, 364, 363, 366, 365, 368, - 367, 370, 369, 371, 373, 372, 374, 375, 376, 377, - 378, 379, 380, 381, 383, 382, 384, 384, 384, 385, - 386, 387, 389, 388, 391, 390, 393, 392, 395, 394, - 394, 394, 394, 394, 394, 397, 396, 399, 398, 400, - 400, 400, 401, 401, 403, 402, 405, 404, 407, 406, - 408, 408, 408, 409, 409, 410, 411, 413, 412, 414, - 414, 414, 415, 415, 415, 416, 417, 419, 418, 421, - 420, 422, 422, 422, 423, 423, 423, 423, 423, 423, - 424, 425, 426, 428, 427, 429, 429, 430, 430, 430, - 432, 431, 434, 433, 435, 435, 435, 435, 436, 436, - 438, 437, 440, 439, 442, 441, 443, 443, 443, 444, - 444, 444, 444, 444, 444, 445, 446, 447, 448, 449, - 450, 452, 451, 453, 453, 454, 454, 454, 456, 455, - 458, 457, 459, 459, 459, 460, 460, 460, 460, 460, + 362, 362, 362, 362, 362, 362, 364, 363, 366, 365, + 368, 367, 370, 369, 371, 373, 372, 374, 375, 376, + 377, 378, 379, 380, 381, 383, 382, 384, 384, 384, + 385, 386, 387, 389, 388, 391, 390, 393, 392, 395, + 394, 394, 394, 394, 394, 394, 397, 396, 399, 398, + 400, 400, 400, 401, 401, 403, 402, 405, 404, 407, + 406, 408, 408, 408, 409, 409, 410, 411, 413, 412, + 414, 414, 414, 415, 415, 415, 416, 417, 419, 418, + 421, 420, 422, 422, 422, 423, 423, 423, 423, 423, + 423, 424, 425, 426, 428, 427, 429, 429, 430, 430, + 430, 432, 431, 434, 433, 435, 435, 435, 435, 436, + 436, 438, 437, 440, 439, 442, 441, 443, 443, 443, + 444, 444, 444, 444, 444, 444, 445, 446, 447, 448, + 449, 450, 452, 451, 453, 453, 454, 454, 454, 456, + 455, 458, 457, 459, 459, 459, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, - 460, 460, 460, 460, 460, 460, 460, 462, 461, 464, - 463, 466, 465, 468, 467, 470, 469, 472, 471, 474, - 473, 475, 476, 477, 478, 479, 481, 480, 482, 482, - 483, 483, 483, 485, 484, 486, 486, 486, 487, 487, + 460, 460, 460, 460, 460, 460, 460, 460, 462, 461, + 464, 463, 466, 465, 468, 467, 470, 469, 472, 471, + 474, 473, 475, 476, 477, 478, 479, 481, 480, 482, + 482, 483, 483, 483, 485, 484, 486, 486, 486, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, 487, - 487, 487, 487, 487, 487, 487, 487, 489, 488, 491, - 490, 492, 492, 493, 493, 493, 495, 494, 497, 496, - 498, 498, 499, 499, 499, 500, 500, 500, 500, 500, - 500, 500, 500, 500, 500, 501, 502, 503, 505, 504, - 507, 506, 509, 508, 510, 512, 511, 513, 515, 514, - 516, 516, 517, 517, 517, 519, 518, 521, 520, 522, - 522, 523, 523, 523, 524, 524, 524, 524, 524, 524, - 524, 524, 524, 524, 524, 525, 527, 526, 528, 529, - 530, 531, 532, 534, 533, 536, 535, 537, 537, 538, - 538, 538, 540, 539, 542, 541, 543, 543, 543, 544, + 487, 487, 487, 487, 487, 487, 487, 487, 489, 488, + 491, 490, 492, 492, 493, 493, 493, 495, 494, 497, + 496, 498, 498, 499, 499, 499, 500, 500, 500, 500, + 500, 500, 500, 500, 500, 500, 501, 502, 503, 505, + 504, 507, 506, 509, 508, 510, 512, 511, 513, 515, + 514, 516, 516, 517, 517, 517, 519, 518, 521, 520, + 522, 522, 523, 523, 523, 524, 524, 524, 524, 524, + 524, 524, 524, 524, 524, 524, 525, 527, 526, 528, + 529, 530, 531, 532, 534, 533, 536, 535, 537, 537, + 538, 538, 538, 540, 539, 542, 541, 543, 543, 543, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, 544, - 544, 544, 544, 546, 545, 547, 549, 548, 551, 550, - 553, 552, 554, 554, 555, 555, 555, 557, 556, 559, - 558, 560, 560, 560, 561, 561, 561, 561, 561, 561, - 561, 561, 561, 561, 561, 561, 561, 561, 563, 562, - 564, 566, 565, 567, 568, 570, 569, 571, 571, 572, - 572, 572, 574, 573, 576, 575, 577, 577, 578, 578, - 578, 579, 579, 579, 579, 579, 579, 579, 579, 579, - 579, 579, 579, 581, 580, 583, 582, 585, 584, 587, - 586, 589, 588, 591, 590, 593, 592, 595, 594, 597, - 596, 598, 600, 599, 601, 601, 601, 603, 602, 604, - 604, 605, 605, 605, 606, 606, 606, 606, 606, 606, - 606, 606, 606, 606, 606, 606, 606, 606, 606, 607, - 609, 608, 611, 610, 612, 613, 615, 614, 616, 616, - 616, 617, 617, 617, 617, 617, 617, 617, 617, 617, - 619, 618, 620, 620, 620, 621, 623, 622, 624, 625, - 626, 628, 627, 630, 629, 631, 631, 632, 632, 632, - 634, 633, 635, 635, 635, 636, 636, 636, 636, 636, - 636, 636, 636, 636, 636, 636, 636, 636, 638, 637, - 639, 639, 639, 641, 640, 643, 642, 644, 645, 647, - 646, 648, 648, 649, 649, 649, 651, 650, 652, 652, - 652, 653, 653, 653, 653, 653, 655, 654, 657, 656, - 658, 658, 658, 659, 659, 659, 659, 659, 659, 659, - 661, 660, 662, 664, 663, 666, 665, 668, 667, 669, - 669, 670, 670, 670, 672, 671, 673, 673, 673, 674, - 674, 674, 674, 674, 674, 674, 676, 675, 678, 677, - 680, 679, 681, 681, 681, 682, 682, 682, 682, 682, - 682, 683, 685, 684, 686, 688, 687, 690, 689, 692, - 691, 693, 693, 693, 694, 694, 694, 694, 694, 694, - 694, 694, 694, 694, 694, 695, 697, 696, 698, 700, - 699, 701, 702, 704, 703, 705, 705, 707, 706, 709, - 708, 711, 710, 712, 712, 712, 713, 713, 715, 714, - 716, 718, 717, 719, 719, 719, 721, 720, 722, 722, - 722, 723, 723, 723, 723, 723, 723, 723, 724, 726, - 725, 728, 727, 729, 729, 729, 731, 730, 732, 732, - 732, 733, 733, 733, 733, 733, 735, 734, 736, 737, - 738, 740, 739, 742, 741, 743, 743, 743, 744, 744, - 745 + 544, 544, 544, 544, 546, 545, 547, 549, 548, 551, + 550, 553, 552, 554, 554, 555, 555, 555, 557, 556, + 559, 558, 560, 560, 560, 561, 561, 561, 561, 561, + 561, 561, 561, 561, 561, 561, 561, 561, 561, 563, + 562, 564, 566, 565, 567, 568, 570, 569, 571, 571, + 572, 572, 572, 574, 573, 576, 575, 577, 577, 578, + 578, 578, 579, 579, 579, 579, 579, 579, 579, 579, + 579, 579, 579, 579, 581, 580, 583, 582, 585, 584, + 587, 586, 589, 588, 591, 590, 593, 592, 595, 594, + 597, 596, 598, 600, 599, 601, 601, 601, 603, 602, + 604, 604, 605, 605, 605, 606, 606, 606, 606, 606, + 606, 606, 606, 606, 606, 606, 606, 606, 606, 606, + 607, 609, 608, 611, 610, 612, 613, 615, 614, 616, + 616, 616, 617, 617, 617, 617, 617, 617, 617, 617, + 617, 619, 618, 620, 620, 620, 621, 623, 622, 624, + 625, 626, 628, 627, 630, 629, 631, 631, 632, 632, + 632, 634, 633, 635, 635, 635, 636, 636, 636, 636, + 636, 636, 636, 636, 636, 636, 636, 636, 636, 638, + 637, 639, 639, 639, 641, 640, 643, 642, 644, 645, + 647, 646, 648, 648, 649, 649, 649, 651, 650, 652, + 652, 652, 653, 653, 653, 653, 653, 655, 654, 657, + 656, 658, 658, 658, 659, 659, 659, 659, 659, 659, + 659, 661, 660, 662, 664, 663, 666, 665, 668, 667, + 669, 669, 670, 670, 670, 672, 671, 673, 673, 673, + 674, 674, 674, 674, 674, 674, 674, 676, 675, 678, + 677, 680, 679, 681, 681, 681, 682, 682, 682, 682, + 682, 682, 683, 685, 684, 686, 688, 687, 690, 689, + 692, 691, 693, 693, 693, 694, 694, 694, 694, 694, + 694, 694, 694, 694, 694, 694, 695, 697, 696, 698, + 700, 699, 701, 702, 704, 703, 705, 705, 707, 706, + 709, 708, 711, 710, 712, 712, 712, 713, 713, 715, + 714, 716, 718, 717, 719, 719, 719, 721, 720, 722, + 722, 722, 723, 723, 723, 723, 723, 723, 723, 724, + 726, 725, 728, 727, 729, 729, 729, 731, 730, 732, + 732, 732, 733, 733, 733, 733, 733, 735, 734, 736, + 737, 738, 740, 739, 742, 741, 743, 743, 743, 744, + 744, 745 }; const signed char @@ -6746,94 +6746,94 @@ namespace isc { namespace dhcp { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 0, 4, 3, 3, 3, 3, + 1, 1, 1, 1, 1, 0, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 0, 4, 1, 1, 1, 1, - 1, 0, 4, 0, 4, 3, 3, 0, 4, 1, - 1, 1, 1, 3, 3, 3, 3, 0, 4, 0, - 4, 3, 3, 3, 0, 4, 3, 0, 4, 0, - 4, 3, 3, 3, 0, 6, 0, 4, 1, 3, - 2, 1, 1, 1, 1, 1, 1, 1, 1, 0, - 4, 3, 3, 3, 3, 0, 6, 0, 6, 0, - 6, 0, 1, 1, 3, 2, 0, 4, 1, 3, - 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 3, 3, 3, 3, 3, 0, 4, 1, 1, 1, + 1, 1, 0, 4, 0, 4, 3, 3, 0, 4, + 1, 1, 1, 1, 3, 3, 3, 3, 0, 4, + 0, 4, 3, 3, 3, 0, 4, 3, 0, 4, + 0, 4, 3, 3, 3, 0, 6, 0, 4, 1, + 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, + 0, 4, 3, 3, 3, 3, 0, 6, 0, 6, + 0, 6, 0, 1, 1, 3, 2, 0, 4, 1, + 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 0, 4, 0, 4, 0, - 4, 0, 4, 3, 0, 4, 3, 3, 3, 3, - 3, 3, 3, 3, 0, 4, 1, 1, 1, 3, - 3, 3, 0, 4, 0, 4, 0, 4, 0, 4, - 1, 1, 1, 1, 1, 0, 4, 0, 6, 1, - 3, 2, 1, 1, 0, 4, 0, 4, 0, 6, - 1, 3, 2, 1, 1, 1, 1, 0, 6, 1, - 3, 2, 1, 1, 1, 1, 1, 0, 6, 0, - 6, 1, 3, 2, 1, 1, 1, 1, 1, 1, - 3, 3, 3, 0, 6, 0, 1, 1, 3, 2, - 0, 4, 0, 4, 1, 3, 2, 1, 1, 1, - 0, 4, 0, 4, 0, 6, 1, 3, 2, 1, - 1, 1, 1, 1, 1, 3, 3, 3, 3, 3, - 3, 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, 0, 4, + 0, 4, 0, 4, 3, 0, 4, 3, 3, 3, + 3, 3, 3, 3, 3, 0, 4, 1, 1, 1, + 3, 3, 3, 0, 4, 0, 4, 0, 4, 0, + 4, 1, 1, 1, 1, 1, 0, 4, 0, 6, + 1, 3, 2, 1, 1, 0, 4, 0, 4, 0, + 6, 1, 3, 2, 1, 1, 1, 1, 0, 6, + 1, 3, 2, 1, 1, 1, 1, 1, 0, 6, + 0, 6, 1, 3, 2, 1, 1, 1, 1, 1, + 1, 3, 3, 3, 0, 6, 0, 1, 1, 3, + 2, 0, 4, 0, 4, 1, 3, 2, 1, 1, + 1, 0, 4, 0, 4, 0, 6, 1, 3, 2, + 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, + 3, 3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 0, 4, 0, - 4, 0, 4, 0, 4, 0, 4, 0, 4, 0, - 4, 3, 3, 3, 3, 3, 0, 6, 0, 1, - 1, 3, 2, 0, 4, 1, 3, 2, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 0, 4, + 0, 4, 0, 4, 0, 4, 0, 4, 0, 4, + 0, 4, 3, 3, 3, 3, 3, 0, 6, 0, + 1, 1, 3, 2, 0, 4, 1, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 0, 6, 0, - 4, 0, 1, 1, 3, 2, 0, 4, 0, 4, + 1, 1, 1, 1, 1, 1, 1, 1, 0, 6, + 0, 4, 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, 3, 1, 0, + 4, 0, 4, 0, 4, 1, 0, 4, 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, 3, 1, 0, 4, - 0, 4, 0, 4, 1, 0, 4, 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, 1, 0, 4, 1, 1, - 3, 3, 3, 0, 4, 0, 6, 0, 1, 1, - 3, 2, 0, 4, 0, 4, 1, 3, 2, 1, + 1, 1, 1, 1, 1, 1, 1, 0, 4, 1, + 1, 3, 3, 3, 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, 1, 1, 1, 1, 1, 1, 1, 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, 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, 1, 0, 4, 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, 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, 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, 1, 0, 4, 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, 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, 0, 6, 0, 1, 1, 3, 2, + 1, 0, 4, 0, 4, 3, 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, 0, 6, 0, 1, 1, 3, + 2, 0, 4, 1, 3, 2, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, + 4, 1, 1, 1, 0, 4, 0, 4, 3, 3, + 0, 6, 0, 1, 1, 3, 2, 0, 4, 1, + 3, 2, 1, 1, 1, 1, 1, 0, 4, 0, + 6, 1, 3, 2, 1, 1, 1, 1, 1, 1, + 1, 0, 4, 1, 0, 4, 0, 4, 0, 6, + 0, 1, 1, 3, 2, 0, 4, 1, 3, 2, + 1, 1, 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, 1, 1, 0, 4, - 1, 1, 1, 0, 4, 0, 4, 3, 3, 0, - 6, 0, 1, 1, 3, 2, 0, 4, 1, 3, - 2, 1, 1, 1, 1, 1, 0, 4, 0, 6, - 1, 3, 2, 1, 1, 1, 1, 1, 1, 1, - 0, 4, 1, 0, 4, 0, 4, 0, 6, 0, - 1, 1, 3, 2, 0, 4, 1, 3, 2, 1, - 1, 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, 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 }; @@ -7071,94 +7071,94 @@ namespace isc { namespace dhcp { 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, - 596, 597, 598, 599, 602, 602, 612, 618, 624, 630, - 636, 642, 648, 654, 660, 666, 672, 678, 684, 690, - 696, 702, 708, 714, 720, 720, 729, 732, 735, 738, - 741, 747, 747, 756, 756, 765, 774, 784, 784, 793, - 796, 799, 802, 807, 813, 819, 825, 831, 831, 840, - 840, 849, 855, 861, 867, 867, 876, 882, 882, 891, - 891, 900, 906, 912, 918, 918, 930, 930, 939, 940, - 941, 946, 947, 948, 949, 950, 951, 952, 953, 956, - 956, 967, 973, 979, 985, 991, 991, 1004, 1004, 1017, - 1017, 1028, 1029, 1032, 1033, 1034, 1039, 1039, 1049, 1050, - 1051, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, + 596, 597, 598, 599, 600, 603, 603, 613, 619, 625, + 631, 637, 643, 649, 655, 661, 667, 673, 679, 685, + 691, 697, 703, 709, 715, 721, 721, 730, 733, 736, + 739, 742, 748, 748, 757, 757, 766, 775, 785, 785, + 794, 797, 800, 803, 808, 814, 820, 826, 832, 832, + 841, 841, 850, 856, 862, 868, 868, 877, 883, 883, + 892, 892, 901, 907, 913, 919, 919, 931, 931, 940, + 941, 942, 947, 948, 949, 950, 951, 952, 953, 954, + 957, 957, 968, 974, 980, 986, 992, 992, 1005, 1005, + 1018, 1018, 1029, 1030, 1033, 1034, 1035, 1040, 1040, 1050, + 1051, 1052, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, - 1075, 1076, 1077, 1078, 1079, 1082, 1082, 1091, 1091, 1100, - 1100, 1109, 1109, 1118, 1124, 1124, 1133, 1139, 1145, 1151, - 1157, 1163, 1169, 1175, 1181, 1181, 1189, 1190, 1191, 1194, - 1200, 1206, 1212, 1212, 1221, 1221, 1230, 1230, 1239, 1239, - 1247, 1250, 1253, 1256, 1259, 1264, 1264, 1273, 1273, 1284, - 1285, 1286, 1291, 1292, 1295, 1295, 1314, 1314, 1332, 1332, - 1343, 1344, 1345, 1350, 1351, 1354, 1359, 1364, 1364, 1375, - 1376, 1377, 1382, 1383, 1384, 1387, 1392, 1399, 1399, 1412, - 1412, 1425, 1426, 1427, 1432, 1433, 1434, 1435, 1436, 1437, - 1440, 1446, 1452, 1458, 1458, 1469, 1470, 1473, 1474, 1475, - 1480, 1480, 1490, 1490, 1500, 1501, 1502, 1505, 1508, 1509, - 1512, 1512, 1521, 1521, 1530, 1530, 1542, 1543, 1544, 1549, - 1550, 1551, 1552, 1553, 1554, 1557, 1563, 1569, 1575, 1581, - 1587, 1596, 1596, 1610, 1611, 1614, 1615, 1616, 1625, 1625, - 1651, 1651, 1662, 1663, 1664, 1670, 1671, 1672, 1673, 1674, + 1075, 1076, 1077, 1078, 1079, 1080, 1083, 1083, 1092, 1092, + 1101, 1101, 1110, 1110, 1119, 1125, 1125, 1134, 1140, 1146, + 1152, 1158, 1164, 1170, 1176, 1182, 1182, 1190, 1191, 1192, + 1195, 1201, 1207, 1213, 1213, 1222, 1222, 1231, 1231, 1240, + 1240, 1248, 1251, 1254, 1257, 1260, 1265, 1265, 1274, 1274, + 1285, 1286, 1287, 1292, 1293, 1296, 1296, 1315, 1315, 1333, + 1333, 1344, 1345, 1346, 1351, 1352, 1355, 1360, 1365, 1365, + 1376, 1377, 1378, 1383, 1384, 1385, 1388, 1393, 1400, 1400, + 1413, 1413, 1426, 1427, 1428, 1433, 1434, 1435, 1436, 1437, + 1438, 1441, 1447, 1453, 1459, 1459, 1470, 1471, 1474, 1475, + 1476, 1481, 1481, 1491, 1491, 1501, 1502, 1503, 1506, 1509, + 1510, 1513, 1513, 1522, 1522, 1531, 1531, 1543, 1544, 1545, + 1550, 1551, 1552, 1553, 1554, 1555, 1558, 1564, 1570, 1576, + 1582, 1588, 1597, 1597, 1611, 1612, 1615, 1616, 1617, 1626, + 1626, 1652, 1652, 1663, 1664, 1665, 1671, 1672, 1673, 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692, 1693, 1694, 1695, 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1713, 1714, - 1715, 1716, 1717, 1718, 1719, 1720, 1721, 1724, 1724, 1733, - 1733, 1742, 1742, 1751, 1751, 1761, 1761, 1773, 1773, 1784, - 1784, 1795, 1801, 1807, 1813, 1819, 1827, 1827, 1839, 1840, - 1844, 1845, 1846, 1851, 1851, 1859, 1860, 1861, 1866, 1867, + 1715, 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1725, 1725, + 1734, 1734, 1743, 1743, 1752, 1752, 1762, 1762, 1774, 1774, + 1785, 1785, 1796, 1802, 1808, 1814, 1820, 1828, 1828, 1840, + 1841, 1845, 1846, 1847, 1852, 1852, 1860, 1861, 1862, 1867, 1868, 1869, 1870, 1871, 1872, 1873, 1874, 1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882, 1883, 1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892, 1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903, 1904, 1905, 1906, 1907, - 1908, 1909, 1910, 1911, 1912, 1913, 1914, 1921, 1921, 1935, - 1935, 1944, 1945, 1948, 1949, 1950, 1957, 1957, 1972, 1972, - 1986, 1987, 1990, 1991, 1992, 1997, 1998, 1999, 2000, 2001, - 2002, 2003, 2004, 2005, 2006, 2009, 2011, 2017, 2019, 2019, - 2028, 2028, 2037, 2037, 2046, 2048, 2048, 2057, 2067, 2067, - 2080, 2081, 2086, 2087, 2088, 2095, 2095, 2107, 2107, 2119, - 2120, 2125, 2126, 2127, 2134, 2135, 2136, 2137, 2138, 2139, - 2140, 2141, 2142, 2143, 2144, 2147, 2149, 2149, 2158, 2160, - 2162, 2168, 2174, 2180, 2180, 2194, 2194, 2207, 2208, 2211, - 2212, 2213, 2218, 2218, 2228, 2228, 2238, 2239, 2240, 2245, + 1908, 1909, 1910, 1911, 1912, 1913, 1914, 1915, 1922, 1922, + 1936, 1936, 1945, 1946, 1949, 1950, 1951, 1958, 1958, 1973, + 1973, 1987, 1988, 1991, 1992, 1993, 1998, 1999, 2000, 2001, + 2002, 2003, 2004, 2005, 2006, 2007, 2010, 2012, 2018, 2020, + 2020, 2029, 2029, 2038, 2038, 2047, 2049, 2049, 2058, 2068, + 2068, 2081, 2082, 2087, 2088, 2089, 2096, 2096, 2108, 2108, + 2120, 2121, 2126, 2127, 2128, 2135, 2136, 2137, 2138, 2139, + 2140, 2141, 2142, 2143, 2144, 2145, 2148, 2150, 2150, 2159, + 2161, 2163, 2169, 2175, 2181, 2181, 2195, 2195, 2208, 2209, + 2212, 2213, 2214, 2219, 2219, 2229, 2229, 2239, 2240, 2241, 2246, 2247, 2248, 2249, 2250, 2251, 2252, 2253, 2254, 2255, 2256, 2257, 2258, 2259, 2260, 2261, 2262, 2263, 2264, 2265, - 2266, 2267, 2268, 2271, 2271, 2280, 2286, 2286, 2311, 2311, - 2341, 2341, 2354, 2355, 2358, 2359, 2360, 2365, 2365, 2377, - 2377, 2389, 2390, 2391, 2396, 2397, 2398, 2399, 2400, 2401, - 2402, 2403, 2404, 2405, 2406, 2407, 2408, 2409, 2412, 2412, - 2421, 2427, 2427, 2436, 2442, 2451, 2451, 2462, 2463, 2466, - 2467, 2468, 2473, 2473, 2482, 2482, 2491, 2492, 2495, 2496, - 2497, 2503, 2504, 2505, 2506, 2507, 2508, 2509, 2510, 2511, - 2512, 2513, 2514, 2517, 2517, 2528, 2528, 2539, 2539, 2550, - 2550, 2559, 2559, 2568, 2568, 2577, 2577, 2586, 2586, 2600, - 2600, 2611, 2617, 2617, 2628, 2629, 2630, 2635, 2635, 2645, - 2646, 2649, 2650, 2651, 2656, 2657, 2658, 2659, 2660, 2661, - 2662, 2663, 2664, 2665, 2666, 2667, 2668, 2669, 2670, 2673, - 2675, 2675, 2684, 2684, 2694, 2700, 2709, 2709, 2722, 2723, - 2724, 2729, 2730, 2731, 2732, 2733, 2734, 2735, 2736, 2737, - 2740, 2740, 2748, 2749, 2750, 2753, 2759, 2759, 2768, 2774, - 2782, 2790, 2790, 2802, 2802, 2814, 2815, 2818, 2819, 2820, - 2825, 2825, 2833, 2834, 2835, 2840, 2841, 2842, 2843, 2844, - 2845, 2846, 2847, 2848, 2849, 2850, 2851, 2852, 2855, 2855, - 2864, 2865, 2866, 2869, 2869, 2879, 2879, 2889, 2895, 2901, - 2901, 2912, 2913, 2916, 2917, 2918, 2923, 2923, 2931, 2932, - 2933, 2938, 2939, 2940, 2941, 2942, 2945, 2945, 2956, 2956, - 2969, 2970, 2971, 2976, 2977, 2978, 2979, 2980, 2981, 2982, - 2985, 2985, 2993, 2996, 2996, 3005, 3005, 3014, 3014, 3025, - 3026, 3029, 3030, 3031, 3036, 3036, 3044, 3045, 3046, 3051, - 3052, 3053, 3054, 3055, 3056, 3057, 3060, 3060, 3069, 3069, - 3080, 3080, 3093, 3094, 3095, 3100, 3101, 3102, 3103, 3104, - 3105, 3108, 3114, 3114, 3123, 3129, 3129, 3139, 3139, 3152, - 3152, 3162, 3163, 3164, 3169, 3170, 3171, 3172, 3173, 3174, - 3175, 3176, 3177, 3178, 3179, 3182, 3188, 3188, 3197, 3203, - 3203, 3212, 3218, 3224, 3224, 3233, 3234, 3237, 3237, 3248, - 3248, 3260, 3260, 3270, 3271, 3272, 3278, 3279, 3282, 3282, - 3293, 3301, 3301, 3314, 3315, 3316, 3322, 3322, 3330, 3331, - 3332, 3337, 3338, 3339, 3340, 3341, 3342, 3343, 3346, 3352, - 3352, 3361, 3361, 3372, 3373, 3374, 3379, 3379, 3387, 3388, - 3389, 3394, 3395, 3396, 3397, 3398, 3401, 3401, 3410, 3416, - 3422, 3428, 3428, 3437, 3437, 3448, 3449, 3450, 3455, 3456, - 3459 + 2266, 2267, 2268, 2269, 2272, 2272, 2281, 2287, 2287, 2312, + 2312, 2342, 2342, 2355, 2356, 2359, 2360, 2361, 2366, 2366, + 2378, 2378, 2390, 2391, 2392, 2397, 2398, 2399, 2400, 2401, + 2402, 2403, 2404, 2405, 2406, 2407, 2408, 2409, 2410, 2413, + 2413, 2422, 2428, 2428, 2437, 2443, 2452, 2452, 2463, 2464, + 2467, 2468, 2469, 2474, 2474, 2483, 2483, 2492, 2493, 2496, + 2497, 2498, 2504, 2505, 2506, 2507, 2508, 2509, 2510, 2511, + 2512, 2513, 2514, 2515, 2518, 2518, 2529, 2529, 2540, 2540, + 2551, 2551, 2560, 2560, 2569, 2569, 2578, 2578, 2587, 2587, + 2601, 2601, 2612, 2618, 2618, 2629, 2630, 2631, 2636, 2636, + 2646, 2647, 2650, 2651, 2652, 2657, 2658, 2659, 2660, 2661, + 2662, 2663, 2664, 2665, 2666, 2667, 2668, 2669, 2670, 2671, + 2674, 2676, 2676, 2685, 2685, 2695, 2701, 2710, 2710, 2723, + 2724, 2725, 2730, 2731, 2732, 2733, 2734, 2735, 2736, 2737, + 2738, 2741, 2741, 2749, 2750, 2751, 2754, 2760, 2760, 2769, + 2775, 2783, 2791, 2791, 2803, 2803, 2815, 2816, 2819, 2820, + 2821, 2826, 2826, 2834, 2835, 2836, 2841, 2842, 2843, 2844, + 2845, 2846, 2847, 2848, 2849, 2850, 2851, 2852, 2853, 2856, + 2856, 2865, 2866, 2867, 2870, 2870, 2880, 2880, 2890, 2896, + 2902, 2902, 2913, 2914, 2917, 2918, 2919, 2924, 2924, 2932, + 2933, 2934, 2939, 2940, 2941, 2942, 2943, 2946, 2946, 2957, + 2957, 2970, 2971, 2972, 2977, 2978, 2979, 2980, 2981, 2982, + 2983, 2986, 2986, 2994, 2997, 2997, 3006, 3006, 3015, 3015, + 3026, 3027, 3030, 3031, 3032, 3037, 3037, 3045, 3046, 3047, + 3052, 3053, 3054, 3055, 3056, 3057, 3058, 3061, 3061, 3070, + 3070, 3081, 3081, 3094, 3095, 3096, 3101, 3102, 3103, 3104, + 3105, 3106, 3109, 3115, 3115, 3124, 3130, 3130, 3140, 3140, + 3153, 3153, 3163, 3164, 3165, 3170, 3171, 3172, 3173, 3174, + 3175, 3176, 3177, 3178, 3179, 3180, 3183, 3189, 3189, 3198, + 3204, 3204, 3213, 3219, 3225, 3225, 3234, 3235, 3238, 3238, + 3249, 3249, 3261, 3261, 3271, 3272, 3273, 3279, 3280, 3283, + 3283, 3294, 3302, 3302, 3315, 3316, 3317, 3323, 3323, 3331, + 3332, 3333, 3338, 3339, 3340, 3341, 3342, 3343, 3344, 3347, + 3353, 3353, 3362, 3362, 3373, 3374, 3375, 3380, 3380, 3388, + 3389, 3390, 3395, 3396, 3397, 3398, 3399, 3402, 3402, 3411, + 3417, 3423, 3429, 3429, 3438, 3438, 3449, 3450, 3451, 3456, + 3457, 3460 }; void @@ -7193,7 +7193,7 @@ namespace isc { namespace dhcp { } } // isc::dhcp #line 7195 "dhcp6_parser.cc" -#line 3465 "dhcp6_parser.yy" +#line 3466 "dhcp6_parser.yy" void diff --git a/src/bin/dhcp6/dhcp6_parser.h b/src/bin/dhcp6/dhcp6_parser.h index 2733e11e56..04d3848188 100644 --- a/src/bin/dhcp6/dhcp6_parser.h +++ b/src/bin/dhcp6/dhcp6_parser.h @@ -5919,7 +5919,7 @@ switch (yykind) /// Constants. enum { - yylast_ = 1784, ///< Last index in yytable_. + yylast_ = 1787, ///< Last index in yytable_. yynnts_ = 501, ///< Number of nonterminal symbols. yyfinal_ = 30 ///< Termination state number. }; diff --git a/src/bin/dhcp6/dhcp6_parser.yy b/src/bin/dhcp6/dhcp6_parser.yy index 292df1c25f..7ae7c099df 100644 --- a/src/bin/dhcp6/dhcp6_parser.yy +++ b/src/bin/dhcp6/dhcp6_parser.yy @@ -569,6 +569,7 @@ global_param: data_directory | t2_percent | cache_threshold | cache_max_age + | adaptive_lease_time_threshold | loggers | hostname_char_set | hostname_char_replacement diff --git a/src/lib/dhcpsrv/parsers/simple_parser4.cc b/src/lib/dhcpsrv/parsers/simple_parser4.cc index e8f9eb2041..d60694c44e 100644 --- a/src/lib/dhcpsrv/parsers/simple_parser4.cc +++ b/src/lib/dhcpsrv/parsers/simple_parser4.cc @@ -148,7 +148,6 @@ const SimpleDefaults SimpleParser4::GLOBAL4_DEFAULTS = { { "ddns-conflict-resolution-mode", Element::string, "check-with-dhcid" }, { "stash-agent-options", Element::boolean, "false" }, { "cache-threshold", Element::real, "0.25" }, - { "adaptive-lease-time-threshold", Element::real, "1." }, }; const SimpleKeywords SimpleParser4::GLOBAL4_LIST_PARAMETERS = { diff --git a/src/lib/dhcpsrv/parsers/simple_parser6.cc b/src/lib/dhcpsrv/parsers/simple_parser6.cc index 6589e49701..02a0ad593f 100644 --- a/src/lib/dhcpsrv/parsers/simple_parser6.cc +++ b/src/lib/dhcpsrv/parsers/simple_parser6.cc @@ -143,7 +143,6 @@ const SimpleDefaults SimpleParser6::GLOBAL6_DEFAULTS = { { "pd-allocator", Element::string, "iterative" }, { "ddns-conflict-resolution-mode", Element::string, "check-with-dhcid" }, { "cache-threshold", Element::real, "0.25" }, - { "adaptive-lease-time-threshold", Element::real, "1." }, }; const SimpleKeywords SimpleParser6::GLOBAL6_LIST_PARAMETERS = {