39 #define yylex parser6_lex 47 #line 34 "dhcp6_parser.yy" 51 #line 52 "dhcp6_parser.cc" 55 # if defined YYENABLE_NLS && YYENABLE_NLS 58 # define YY_(msgid) dgettext ("bison-runtime", msgid) 62 # define YY_(msgid) msgid 69 # if defined __GNUC__ && !defined __EXCEPTIONS 70 # define YY_EXCEPTIONS 0 72 # define YY_EXCEPTIONS 1 76 #define YYRHSLOC(Rhs, K) ((Rhs)[K].location) 81 # ifndef YYLLOC_DEFAULT 82 # define YYLLOC_DEFAULT(Current, Rhs, N) \ 86 (Current).begin = YYRHSLOC (Rhs, 1).begin; \ 87 (Current).end = YYRHSLOC (Rhs, N).end; \ 91 (Current).begin = (Current).end = YYRHSLOC (Rhs, 0).end; \ 101 # define YYCDEBUG if (yydebug_) (*yycdebug_) 103 # define YY_SYMBOL_PRINT(Title, Symbol) \ 107 *yycdebug_ << Title << ' '; \ 108 yy_print_ (*yycdebug_, Symbol); \ 109 *yycdebug_ << '\n'; \ 113 # define YY_REDUCE_PRINT(Rule) \ 116 yy_reduce_print_ (Rule); \ 119 # define YY_STACK_PRINT() \ 122 yy_stack_print_ (); \ 125 #else // !PARSER6_DEBUG 127 # define YYCDEBUG if (false) std::cerr 128 # define YY_SYMBOL_PRINT(Title, Symbol) YY_USE (Symbol) 129 # define YY_REDUCE_PRINT(Rule) static_cast<void> (0) 130 # define YY_STACK_PRINT() static_cast<void> (0) 132 #endif // !PARSER6_DEBUG 134 #define yyerrok (yyerrstatus_ = 0) 135 #define yyclearin (yyla.clear ()) 137 #define YYACCEPT goto yyacceptlab 138 #define YYABORT goto yyabortlab 139 #define YYERROR goto yyerrorlab 140 #define YYRECOVERING() (!!yyerrstatus_) 142 #line 14 "dhcp6_parser.yy" 143 namespace isc {
namespace dhcp {
144 #line 145 "dhcp6_parser.cc" 150 yycdebug_ (&std::cerr),
171 : state (empty_state)
174 Dhcp6Parser::by_state::by_state (
const by_state& that)
YY_NOEXCEPT 185 Dhcp6Parser::by_state::move (by_state& that)
191 Dhcp6Parser::by_state::by_state (state_type s)
YY_NOEXCEPT 198 if (state == empty_state)
204 Dhcp6Parser::stack_symbol_type::stack_symbol_type ()
207 Dhcp6Parser::stack_symbol_type::stack_symbol_type (
YY_RVREF (stack_symbol_type) that)
210 switch (that.kind ())
224 value.YY_MOVE_OR_COPY<
bool > (
YY_MOVE (that.value));
228 value.YY_MOVE_OR_COPY<
double > (
YY_MOVE (that.value));
232 value.YY_MOVE_OR_COPY< int64_t > (
YY_MOVE (that.value));
236 value.YY_MOVE_OR_COPY< std::string > (
YY_MOVE (that.value));
243 #if 201103L <= YY_CPLUSPLUS 245 that.state = empty_state;
252 switch (that.
kind ())
289 #if YY_CPLUSPLUS < 201103L 290 Dhcp6Parser::stack_symbol_type&
291 Dhcp6Parser::stack_symbol_type::operator= (
const stack_symbol_type& that)
294 switch (that.kind ())
308 value.copy<
bool > (that.value);
312 value.copy<
double > (that.value);
316 value.copy< int64_t > (that.value);
320 value.copy< std::string > (that.value);
327 location = that.location;
331 Dhcp6Parser::stack_symbol_type&
332 Dhcp6Parser::stack_symbol_type::operator= (stack_symbol_type& that)
335 switch (that.kind ())
349 value.move<
bool > (that.value);
353 value.move<
double > (that.value);
357 value.move< int64_t > (that.value);
361 value.move< std::string > (that.value);
368 location = that.location;
370 that.state = empty_state;
375 template <
typename Base>
384 template <
typename Base>
388 std::ostream& yyoutput = yyo;
391 yyo <<
"empty symbol";
395 yyo << (yykind <
YYNTOKENS ?
"token" :
"nterm")
396 <<
' ' << yysym.
name () <<
" (" 401 #line 300 "dhcp6_parser.yy" 402 { yyoutput << yysym.
value.template as < std::string > (); }
403 #line 404 "dhcp6_parser.cc" 407 #line 300 "dhcp6_parser.yy" 408 { yyoutput << yysym.
value.template as < int64_t > (); }
409 #line 410 "dhcp6_parser.cc" 413 #line 300 "dhcp6_parser.yy" 414 { yyoutput << yysym.
value.template as < double > (); }
415 #line 416 "dhcp6_parser.cc" 419 #line 300 "dhcp6_parser.yy" 420 { yyoutput << yysym.
value.template as < bool > (); }
421 #line 422 "dhcp6_parser.cc" 425 #line 300 "dhcp6_parser.yy" 426 { yyoutput << yysym.
value.template as < ElementPtr > (); }
427 #line 428 "dhcp6_parser.cc" 431 #line 300 "dhcp6_parser.yy" 432 { yyoutput << yysym.
value.template as < ElementPtr > (); }
433 #line 434 "dhcp6_parser.cc" 437 #line 300 "dhcp6_parser.yy" 438 { yyoutput << yysym.
value.template as < ElementPtr > (); }
439 #line 440 "dhcp6_parser.cc" 443 #line 300 "dhcp6_parser.yy" 444 { yyoutput << yysym.
value.template as < ElementPtr > (); }
445 #line 446 "dhcp6_parser.cc" 449 #line 300 "dhcp6_parser.yy" 450 { yyoutput << yysym.
value.template as < ElementPtr > (); }
451 #line 452 "dhcp6_parser.cc" 455 #line 300 "dhcp6_parser.yy" 456 { yyoutput << yysym.
value.template as < ElementPtr > (); }
457 #line 458 "dhcp6_parser.cc" 461 #line 300 "dhcp6_parser.yy" 462 { yyoutput << yysym.
value.template as < ElementPtr > (); }
463 #line 464 "dhcp6_parser.cc" 467 #line 300 "dhcp6_parser.yy" 468 { yyoutput << yysym.
value.template as < ElementPtr > (); }
469 #line 470 "dhcp6_parser.cc" 481 Dhcp6Parser::yypush_ (
const char* m,
YY_MOVE_REF (stack_symbol_type) sym)
491 #if 201103L <= YY_CPLUSPLUS 492 yypush_ (m, stack_symbol_type (s, std::move (sym)));
494 stack_symbol_type ss (s, sym);
530 #endif // PARSER6_DEBUG 532 Dhcp6Parser::state_type
533 Dhcp6Parser::yy_lr_goto_state_ (state_type yystate,
int yysym)
535 int yyr = yypgoto_[yysym -
YYNTOKENS] + yystate;
536 if (0 <= yyr && yyr <= yylast_ && yycheck_[yyr] == yystate)
537 return yytable_[yyr];
543 Dhcp6Parser::yy_pact_value_is_default_ (
int yyvalue)
YY_NOEXCEPT 545 return yyvalue == yypact_ninf_;
549 Dhcp6Parser::yy_table_value_is_error_ (
int yyvalue)
YY_NOEXCEPT 551 return yyvalue == yytable_ninf_;
569 int yyerrstatus_ = 0;
575 stack_symbol_type yyerror_range[3];
582 #endif // YY_EXCEPTIONS 592 yypush_ (YY_NULLPTR, 0,
YY_MOVE (yyla));
598 YYCDEBUG <<
"Entering state " << int (yystack_[0].state) <<
'\n';
602 if (yystack_[0].state == yyfinal_)
613 yyn = yypact_[+yystack_[0].state];
614 if (yy_pact_value_is_default_ (yyn))
623 #endif // YY_EXCEPTIONS 626 yyla.
move (yylookahead);
631 YYCDEBUG <<
"Caught exception: " << yyexc.what() <<
'\n';
635 #endif // YY_EXCEPTIONS 652 if (yyn < 0 || yylast_ < yyn || yycheck_[yyn] != yyla.
kind ())
661 if (yy_table_value_is_error_ (yyn))
672 yypush_ (
"Shifting", state_type (yyn),
YY_MOVE (yyla));
680 yyn = yydefact_[+yystack_[0].state];
692 stack_symbol_type yylhs;
693 yylhs.state = yy_lr_goto_state_ (yystack_[yylen].state, yyr1_[yyn]);
711 yylhs.value.emplace<
bool > ();
715 yylhs.value.emplace<
double > ();
719 yylhs.value.emplace< int64_t > ();
723 yylhs.value.emplace< std::string > ();
733 stack_type::slice range (yystack_, yylen);
735 yyerror_range[1].location = yylhs.location;
742 #endif // YY_EXCEPTIONS 747 #line 309 "dhcp6_parser.yy" 749 #line 750 "dhcp6_parser.cc" 753 #line 310 "dhcp6_parser.yy" 755 #line 756 "dhcp6_parser.cc" 759 #line 311 "dhcp6_parser.yy" 761 #line 762 "dhcp6_parser.cc" 765 #line 312 "dhcp6_parser.yy" 767 #line 768 "dhcp6_parser.cc" 771 #line 313 "dhcp6_parser.yy" 773 #line 774 "dhcp6_parser.cc" 777 #line 314 "dhcp6_parser.yy" 779 #line 780 "dhcp6_parser.cc" 783 #line 315 "dhcp6_parser.yy" 785 #line 786 "dhcp6_parser.cc" 789 #line 316 "dhcp6_parser.yy" 791 #line 792 "dhcp6_parser.cc" 795 #line 317 "dhcp6_parser.yy" 797 #line 798 "dhcp6_parser.cc" 801 #line 318 "dhcp6_parser.yy" 803 #line 804 "dhcp6_parser.cc" 807 #line 319 "dhcp6_parser.yy" 809 #line 810 "dhcp6_parser.cc" 813 #line 320 "dhcp6_parser.yy" 815 #line 816 "dhcp6_parser.cc" 819 #line 321 "dhcp6_parser.yy" 821 #line 822 "dhcp6_parser.cc" 825 #line 322 "dhcp6_parser.yy" 827 #line 828 "dhcp6_parser.cc" 831 #line 330 "dhcp6_parser.yy" 833 #line 834 "dhcp6_parser.cc" 837 #line 331 "dhcp6_parser.yy" 839 #line 840 "dhcp6_parser.cc" 843 #line 332 "dhcp6_parser.yy" 845 #line 846 "dhcp6_parser.cc" 849 #line 333 "dhcp6_parser.yy" 851 #line 852 "dhcp6_parser.cc" 855 #line 334 "dhcp6_parser.yy" 857 #line 858 "dhcp6_parser.cc" 861 #line 335 "dhcp6_parser.yy" 863 #line 864 "dhcp6_parser.cc" 867 #line 336 "dhcp6_parser.yy" 869 #line 870 "dhcp6_parser.cc" 873 #line 339 "dhcp6_parser.yy" 878 #line 879 "dhcp6_parser.cc" 882 #line 344 "dhcp6_parser.yy" 889 #line 890 "dhcp6_parser.cc" 893 #line 349 "dhcp6_parser.yy" 899 #line 900 "dhcp6_parser.cc" 903 #line 355 "dhcp6_parser.yy" 905 #line 906 "dhcp6_parser.cc" 909 #line 362 "dhcp6_parser.yy" 912 ctx.
unique(yystack_[2].value.as < std::string > (), ctx.
loc2pos(yystack_[2].location));
913 ctx.
stack_.back()->set(yystack_[2].value.as < std::string > (), yystack_[0].value.as <
ElementPtr > ());
915 #line 916 "dhcp6_parser.cc" 919 #line 367 "dhcp6_parser.yy" 923 ctx.
unique(yystack_[2].value.as < std::string > (), ctx.
loc2pos(yystack_[2].location));
924 ctx.
stack_.back()->set(yystack_[2].value.as < std::string > (), yystack_[0].value.as <
ElementPtr > ());
926 #line 927 "dhcp6_parser.cc" 930 #line 373 "dhcp6_parser.yy" 934 #line 935 "dhcp6_parser.cc" 938 #line 378 "dhcp6_parser.yy" 943 #line 944 "dhcp6_parser.cc" 947 #line 381 "dhcp6_parser.yy" 951 #line 952 "dhcp6_parser.cc" 955 #line 389 "dhcp6_parser.yy" 960 #line 961 "dhcp6_parser.cc" 964 #line 393 "dhcp6_parser.yy" 969 #line 970 "dhcp6_parser.cc" 973 #line 397 "dhcp6_parser.yy" 977 #line 978 "dhcp6_parser.cc" 981 #line 403 "dhcp6_parser.yy" 985 #line 986 "dhcp6_parser.cc" 989 #line 405 "dhcp6_parser.yy" 994 #line 995 "dhcp6_parser.cc" 998 #line 414 "dhcp6_parser.yy" 1001 ctx.
stack_.back()->add(s);
1003 #line 1004 "dhcp6_parser.cc" 1007 #line 418 "dhcp6_parser.yy" 1010 ctx.
stack_.back()->add(s);
1012 #line 1013 "dhcp6_parser.cc" 1016 #line 422 "dhcp6_parser.yy" 1020 #line 1021 "dhcp6_parser.cc" 1024 #line 432 "dhcp6_parser.yy" 1027 const std::string& keyword = yystack_[1].value.as < std::string > ();
1028 error(yystack_[1].location,
1029 "got unexpected keyword \"" + keyword +
"\" in " + where +
" map.");
1031 #line 1032 "dhcp6_parser.cc" 1035 #line 441 "dhcp6_parser.yy" 1042 #line 1043 "dhcp6_parser.cc" 1046 #line 446 "dhcp6_parser.yy" 1055 #line 1056 "dhcp6_parser.cc" 1059 #line 456 "dhcp6_parser.yy" 1066 ctx.
stack_.back()->set(
"Dhcp6", m);
1070 #line 1071 "dhcp6_parser.cc" 1074 #line 465 "dhcp6_parser.yy" 1080 #line 1081 "dhcp6_parser.cc" 1084 #line 473 "dhcp6_parser.yy" 1088 #line 1089 "dhcp6_parser.cc" 1092 #line 479 "dhcp6_parser.yy" 1098 #line 1099 "dhcp6_parser.cc" 1102 #line 483 "dhcp6_parser.yy" 1107 #line 1108 "dhcp6_parser.cc" 1111 #line 490 "dhcp6_parser.yy" 1115 #line 1116 "dhcp6_parser.cc" 1119 #line 566 "dhcp6_parser.yy" 1121 ctx.
unique(
"data-directory", ctx.
loc2pos(yystack_[0].location));
1124 #line 1125 "dhcp6_parser.cc" 1128 #line 569 "dhcp6_parser.yy" 1131 ctx.
stack_.back()->set(
"data-directory", datadir);
1134 #line 1135 "dhcp6_parser.cc" 1138 #line 575 "dhcp6_parser.yy" 1140 ctx.
unique(
"preferred-lifetime", ctx.
loc2pos(yystack_[2].location));
1142 ctx.
stack_.back()->set(
"preferred-lifetime", prf);
1144 #line 1145 "dhcp6_parser.cc" 1148 #line 581 "dhcp6_parser.yy" 1150 ctx.
unique(
"min-preferred-lifetime", ctx.
loc2pos(yystack_[2].location));
1152 ctx.
stack_.back()->set(
"min-preferred-lifetime", prf);
1154 #line 1155 "dhcp6_parser.cc" 1158 #line 587 "dhcp6_parser.yy" 1160 ctx.
unique(
"max-preferred-lifetime", ctx.
loc2pos(yystack_[2].location));
1162 ctx.
stack_.back()->set(
"max-preferred-lifetime", prf);
1164 #line 1165 "dhcp6_parser.cc" 1168 #line 593 "dhcp6_parser.yy" 1170 ctx.
unique(
"valid-lifetime", ctx.
loc2pos(yystack_[2].location));
1172 ctx.
stack_.back()->set(
"valid-lifetime", prf);
1174 #line 1175 "dhcp6_parser.cc" 1178 #line 599 "dhcp6_parser.yy" 1180 ctx.
unique(
"min-valid-lifetime", ctx.
loc2pos(yystack_[2].location));
1182 ctx.
stack_.back()->set(
"min-valid-lifetime", prf);
1184 #line 1185 "dhcp6_parser.cc" 1188 #line 605 "dhcp6_parser.yy" 1190 ctx.
unique(
"max-valid-lifetime", ctx.
loc2pos(yystack_[2].location));
1192 ctx.
stack_.back()->set(
"max-valid-lifetime", prf);
1194 #line 1195 "dhcp6_parser.cc" 1198 #line 611 "dhcp6_parser.yy" 1200 ctx.
unique(
"renew-timer", ctx.
loc2pos(yystack_[2].location));
1202 ctx.
stack_.back()->set(
"renew-timer", prf);
1204 #line 1205 "dhcp6_parser.cc" 1208 #line 617 "dhcp6_parser.yy" 1210 ctx.
unique(
"rebind-timer", ctx.
loc2pos(yystack_[2].location));
1212 ctx.
stack_.back()->set(
"rebind-timer", prf);
1214 #line 1215 "dhcp6_parser.cc" 1218 #line 623 "dhcp6_parser.yy" 1220 ctx.
unique(
"calculate-tee-times", ctx.
loc2pos(yystack_[2].location));
1222 ctx.
stack_.back()->set(
"calculate-tee-times", ctt);
1224 #line 1225 "dhcp6_parser.cc" 1228 #line 629 "dhcp6_parser.yy" 1230 ctx.
unique(
"t1-percent", ctx.
loc2pos(yystack_[2].location));
1232 ctx.
stack_.back()->set(
"t1-percent", t1);
1234 #line 1235 "dhcp6_parser.cc" 1238 #line 635 "dhcp6_parser.yy" 1240 ctx.
unique(
"t2-percent", ctx.
loc2pos(yystack_[2].location));
1242 ctx.
stack_.back()->set(
"t2-percent", t2);
1244 #line 1245 "dhcp6_parser.cc" 1248 #line 641 "dhcp6_parser.yy" 1250 ctx.
unique(
"cache-threshold", ctx.
loc2pos(yystack_[2].location));
1252 ctx.
stack_.back()->set(
"cache-threshold", ct);
1254 #line 1255 "dhcp6_parser.cc" 1258 #line 647 "dhcp6_parser.yy" 1260 ctx.
unique(
"cache-max-age", ctx.
loc2pos(yystack_[2].location));
1262 ctx.
stack_.back()->set(
"cache-max-age", cm);
1264 #line 1265 "dhcp6_parser.cc" 1268 #line 653 "dhcp6_parser.yy" 1270 ctx.
unique(
"decline-probation-period", ctx.
loc2pos(yystack_[2].location));
1272 ctx.
stack_.back()->set(
"decline-probation-period", dpp);
1274 #line 1275 "dhcp6_parser.cc" 1278 #line 659 "dhcp6_parser.yy" 1280 ctx.
unique(
"ddns-send-updates", ctx.
loc2pos(yystack_[2].location));
1282 ctx.
stack_.back()->set(
"ddns-send-updates", b);
1284 #line 1285 "dhcp6_parser.cc" 1288 #line 665 "dhcp6_parser.yy" 1290 ctx.
unique(
"ddns-override-no-update", ctx.
loc2pos(yystack_[2].location));
1292 ctx.
stack_.back()->set(
"ddns-override-no-update", b);
1294 #line 1295 "dhcp6_parser.cc" 1298 #line 671 "dhcp6_parser.yy" 1300 ctx.
unique(
"ddns-override-client-update", ctx.
loc2pos(yystack_[2].location));
1302 ctx.
stack_.back()->set(
"ddns-override-client-update", b);
1304 #line 1305 "dhcp6_parser.cc" 1308 #line 677 "dhcp6_parser.yy" 1310 ctx.
unique(
"ddns-replace-client-name", ctx.
loc2pos(yystack_[0].location));
1313 #line 1314 "dhcp6_parser.cc" 1317 #line 680 "dhcp6_parser.yy" 1319 ctx.
stack_.back()->set(
"ddns-replace-client-name", yystack_[0].value.as <
ElementPtr > ());
1322 #line 1323 "dhcp6_parser.cc" 1326 #line 686 "dhcp6_parser.yy" 1330 #line 1331 "dhcp6_parser.cc" 1334 #line 689 "dhcp6_parser.yy" 1338 #line 1339 "dhcp6_parser.cc" 1342 #line 692 "dhcp6_parser.yy" 1346 #line 1347 "dhcp6_parser.cc" 1350 #line 695 "dhcp6_parser.yy" 1354 #line 1355 "dhcp6_parser.cc" 1358 #line 698 "dhcp6_parser.yy" 1360 error(yystack_[0].location,
"boolean values for the replace-client-name are " 1361 "no longer supported");
1363 #line 1364 "dhcp6_parser.cc" 1367 #line 704 "dhcp6_parser.yy" 1369 ctx.
unique(
"ddns-generated-prefix", ctx.
loc2pos(yystack_[0].location));
1372 #line 1373 "dhcp6_parser.cc" 1376 #line 707 "dhcp6_parser.yy" 1379 ctx.
stack_.back()->set(
"ddns-generated-prefix", s);
1382 #line 1383 "dhcp6_parser.cc" 1386 #line 713 "dhcp6_parser.yy" 1388 ctx.
unique(
"ddns-qualifying-suffix", ctx.
loc2pos(yystack_[0].location));
1391 #line 1392 "dhcp6_parser.cc" 1395 #line 716 "dhcp6_parser.yy" 1398 ctx.
stack_.back()->set(
"ddns-qualifying-suffix", s);
1401 #line 1402 "dhcp6_parser.cc" 1405 #line 722 "dhcp6_parser.yy" 1407 ctx.
unique(
"ddns-update-on-renew", ctx.
loc2pos(yystack_[2].location));
1409 ctx.
stack_.back()->set(
"ddns-update-on-renew", b);
1411 #line 1412 "dhcp6_parser.cc" 1415 #line 728 "dhcp6_parser.yy" 1417 ctx.
unique(
"ddns-use-conflict-resolution", ctx.
loc2pos(yystack_[2].location));
1419 ctx.
stack_.back()->set(
"ddns-use-conflict-resolution", b);
1421 #line 1422 "dhcp6_parser.cc" 1425 #line 734 "dhcp6_parser.yy" 1427 ctx.
unique(
"hostname-char-set", ctx.
loc2pos(yystack_[0].location));
1430 #line 1431 "dhcp6_parser.cc" 1434 #line 737 "dhcp6_parser.yy" 1437 ctx.
stack_.back()->set(
"hostname-char-set", s);
1440 #line 1441 "dhcp6_parser.cc" 1444 #line 743 "dhcp6_parser.yy" 1446 ctx.
unique(
"hostname-char-replacement", ctx.
loc2pos(yystack_[0].location));
1449 #line 1450 "dhcp6_parser.cc" 1453 #line 746 "dhcp6_parser.yy" 1456 ctx.
stack_.back()->set(
"hostname-char-replacement", s);
1459 #line 1460 "dhcp6_parser.cc" 1463 #line 752 "dhcp6_parser.yy" 1465 ctx.
unique(
"store-extended-info", ctx.
loc2pos(yystack_[2].location));
1467 ctx.
stack_.back()->set(
"store-extended-info", b);
1469 #line 1470 "dhcp6_parser.cc" 1473 #line 758 "dhcp6_parser.yy" 1475 ctx.
unique(
"statistic-default-sample-count", ctx.
loc2pos(yystack_[2].location));
1477 ctx.
stack_.back()->set(
"statistic-default-sample-count", count);
1479 #line 1480 "dhcp6_parser.cc" 1483 #line 764 "dhcp6_parser.yy" 1485 ctx.
unique(
"statistic-default-sample-age", ctx.
loc2pos(yystack_[2].location));
1487 ctx.
stack_.back()->set(
"statistic-default-sample-age", age);
1489 #line 1490 "dhcp6_parser.cc" 1493 #line 770 "dhcp6_parser.yy" 1495 ctx.
unique(
"server-tag", ctx.
loc2pos(yystack_[0].location));
1498 #line 1499 "dhcp6_parser.cc" 1502 #line 773 "dhcp6_parser.yy" 1505 ctx.
stack_.back()->set(
"server-tag", stag);
1508 #line 1509 "dhcp6_parser.cc" 1512 #line 779 "dhcp6_parser.yy" 1514 ctx.
unique(
"parked-packet-limit", ctx.
loc2pos(yystack_[2].location));
1516 ctx.
stack_.back()->set(
"parked-packet-limit", ppl);
1518 #line 1519 "dhcp6_parser.cc" 1522 #line 785 "dhcp6_parser.yy" 1527 #line 1528 "dhcp6_parser.cc" 1531 #line 788 "dhcp6_parser.yy" 1534 ctx.
stack_.back()->set(
"allocator", al);
1537 #line 1538 "dhcp6_parser.cc" 1541 #line 794 "dhcp6_parser.yy" 1543 ctx.
unique(
"pd-allocator", ctx.
loc2pos(yystack_[0].location));
1546 #line 1547 "dhcp6_parser.cc" 1550 #line 797 "dhcp6_parser.yy" 1553 ctx.
stack_.back()->set(
"pd-allocator", al);
1556 #line 1557 "dhcp6_parser.cc" 1560 #line 803 "dhcp6_parser.yy" 1562 ctx.
unique(
"early-global-reservations-lookup", ctx.
loc2pos(yystack_[2].location));
1564 ctx.
stack_.back()->set(
"early-global-reservations-lookup", early);
1566 #line 1567 "dhcp6_parser.cc" 1570 #line 809 "dhcp6_parser.yy" 1572 ctx.
unique(
"ip-reservations-unique", ctx.
loc2pos(yystack_[2].location));
1574 ctx.
stack_.back()->set(
"ip-reservations-unique", unique);
1576 #line 1577 "dhcp6_parser.cc" 1580 #line 815 "dhcp6_parser.yy" 1582 ctx.
unique(
"reservations-lookup-first", ctx.
loc2pos(yystack_[2].location));
1584 ctx.
stack_.back()->set(
"reservations-lookup-first", first);
1586 #line 1587 "dhcp6_parser.cc" 1590 #line 821 "dhcp6_parser.yy" 1592 ctx.
unique(
"interfaces-config", ctx.
loc2pos(yystack_[0].location));
1594 ctx.
stack_.back()->set(
"interfaces-config", i);
1598 #line 1599 "dhcp6_parser.cc" 1602 #line 827 "dhcp6_parser.yy" 1608 #line 1609 "dhcp6_parser.cc" 1612 #line 833 "dhcp6_parser.yy" 1618 #line 1619 "dhcp6_parser.cc" 1622 #line 837 "dhcp6_parser.yy" 1627 #line 1628 "dhcp6_parser.cc" 1631 #line 844 "dhcp6_parser.yy" 1635 #line 1636 "dhcp6_parser.cc" 1639 #line 859 "dhcp6_parser.yy" 1641 ctx.
unique(
"interfaces", ctx.
loc2pos(yystack_[0].location));
1643 ctx.
stack_.back()->set(
"interfaces", l);
1647 #line 1648 "dhcp6_parser.cc" 1651 #line 865 "dhcp6_parser.yy" 1656 #line 1657 "dhcp6_parser.cc" 1660 #line 870 "dhcp6_parser.yy" 1664 ctx.
stack_.back()->set(
"re-detect", b);
1666 #line 1667 "dhcp6_parser.cc" 1670 #line 876 "dhcp6_parser.yy" 1672 ctx.
unique(
"service-sockets-require-all", ctx.
loc2pos(yystack_[2].location));
1674 ctx.
stack_.back()->set(
"service-sockets-require-all", b);
1676 #line 1677 "dhcp6_parser.cc" 1680 #line 882 "dhcp6_parser.yy" 1682 ctx.
unique(
"service-sockets-retry-wait-time", ctx.
loc2pos(yystack_[2].location));
1684 ctx.
stack_.back()->set(
"service-sockets-retry-wait-time", n);
1686 #line 1687 "dhcp6_parser.cc" 1690 #line 888 "dhcp6_parser.yy" 1692 ctx.
unique(
"service-sockets-max-retries", ctx.
loc2pos(yystack_[2].location));
1694 ctx.
stack_.back()->set(
"service-sockets-max-retries", n);
1696 #line 1697 "dhcp6_parser.cc" 1700 #line 894 "dhcp6_parser.yy" 1702 ctx.
unique(
"lease-database", ctx.
loc2pos(yystack_[0].location));
1704 ctx.
stack_.back()->set(
"lease-database", i);
1708 #line 1709 "dhcp6_parser.cc" 1712 #line 900 "dhcp6_parser.yy" 1719 #line 1720 "dhcp6_parser.cc" 1723 #line 907 "dhcp6_parser.yy" 1725 ctx.
unique(
"hosts-database", ctx.
loc2pos(yystack_[0].location));
1727 ctx.
stack_.back()->set(
"hosts-database", i);
1731 #line 1732 "dhcp6_parser.cc" 1735 #line 913 "dhcp6_parser.yy" 1742 #line 1743 "dhcp6_parser.cc" 1746 #line 920 "dhcp6_parser.yy" 1748 ctx.
unique(
"hosts-databases", ctx.
loc2pos(yystack_[0].location));
1750 ctx.
stack_.back()->set(
"hosts-databases", l);
1754 #line 1755 "dhcp6_parser.cc" 1758 #line 926 "dhcp6_parser.yy" 1763 #line 1764 "dhcp6_parser.cc" 1767 #line 937 "dhcp6_parser.yy" 1771 #line 1772 "dhcp6_parser.cc" 1775 #line 942 "dhcp6_parser.yy" 1778 ctx.
stack_.back()->add(m);
1781 #line 1782 "dhcp6_parser.cc" 1785 #line 946 "dhcp6_parser.yy" 1791 #line 1792 "dhcp6_parser.cc" 1795 #line 954 "dhcp6_parser.yy" 1799 #line 1800 "dhcp6_parser.cc" 1803 #line 983 "dhcp6_parser.yy" 1808 #line 1809 "dhcp6_parser.cc" 1812 #line 986 "dhcp6_parser.yy" 1817 #line 1818 "dhcp6_parser.cc" 1821 #line 991 "dhcp6_parser.yy" 1823 #line 1824 "dhcp6_parser.cc" 1827 #line 992 "dhcp6_parser.yy" 1829 #line 1830 "dhcp6_parser.cc" 1833 #line 993 "dhcp6_parser.yy" 1835 #line 1836 "dhcp6_parser.cc" 1839 #line 996 "dhcp6_parser.yy" 1844 #line 1845 "dhcp6_parser.cc" 1848 #line 999 "dhcp6_parser.yy" 1851 ctx.
stack_.back()->set(
"user", user);
1854 #line 1855 "dhcp6_parser.cc" 1858 #line 1005 "dhcp6_parser.yy" 1863 #line 1864 "dhcp6_parser.cc" 1867 #line 1008 "dhcp6_parser.yy" 1870 ctx.
stack_.back()->set(
"password", pwd);
1873 #line 1874 "dhcp6_parser.cc" 1877 #line 1014 "dhcp6_parser.yy" 1882 #line 1883 "dhcp6_parser.cc" 1886 #line 1017 "dhcp6_parser.yy" 1889 ctx.
stack_.back()->set(
"host", h);
1892 #line 1893 "dhcp6_parser.cc" 1896 #line 1023 "dhcp6_parser.yy" 1900 ctx.
stack_.back()->set(
"port", p);
1902 #line 1903 "dhcp6_parser.cc" 1906 #line 1029 "dhcp6_parser.yy" 1911 #line 1912 "dhcp6_parser.cc" 1915 #line 1032 "dhcp6_parser.yy" 1918 ctx.
stack_.back()->set(
"name", name);
1921 #line 1922 "dhcp6_parser.cc" 1925 #line 1038 "dhcp6_parser.yy" 1929 ctx.
stack_.back()->set(
"persist", n);
1931 #line 1932 "dhcp6_parser.cc" 1935 #line 1044 "dhcp6_parser.yy" 1937 ctx.
unique(
"lfc-interval", ctx.
loc2pos(yystack_[2].location));
1939 ctx.
stack_.back()->set(
"lfc-interval", n);
1941 #line 1942 "dhcp6_parser.cc" 1945 #line 1050 "dhcp6_parser.yy" 1949 ctx.
stack_.back()->set(
"readonly", n);
1951 #line 1952 "dhcp6_parser.cc" 1955 #line 1056 "dhcp6_parser.yy" 1957 ctx.
unique(
"connect-timeout", ctx.
loc2pos(yystack_[2].location));
1959 ctx.
stack_.back()->set(
"connect-timeout", n);
1961 #line 1962 "dhcp6_parser.cc" 1965 #line 1062 "dhcp6_parser.yy" 1967 ctx.
unique(
"read-timeout", ctx.
loc2pos(yystack_[2].location));
1969 ctx.
stack_.back()->set(
"read-timeout", n);
1971 #line 1972 "dhcp6_parser.cc" 1975 #line 1068 "dhcp6_parser.yy" 1977 ctx.
unique(
"write-timeout", ctx.
loc2pos(yystack_[2].location));
1979 ctx.
stack_.back()->set(
"write-timeout", n);
1981 #line 1982 "dhcp6_parser.cc" 1985 #line 1074 "dhcp6_parser.yy" 1987 ctx.
unique(
"tcp-user-timeout", ctx.
loc2pos(yystack_[2].location));
1989 ctx.
stack_.back()->set(
"tcp-user-timeout", n);
1991 #line 1992 "dhcp6_parser.cc" 1995 #line 1081 "dhcp6_parser.yy" 1997 ctx.
unique(
"reconnect-wait-time", ctx.
loc2pos(yystack_[2].location));
1999 ctx.
stack_.back()->set(
"reconnect-wait-time", n);
2001 #line 2002 "dhcp6_parser.cc" 2005 #line 1087 "dhcp6_parser.yy" 2010 #line 2011 "dhcp6_parser.cc" 2014 #line 1090 "dhcp6_parser.yy" 2019 #line 2020 "dhcp6_parser.cc" 2023 #line 1095 "dhcp6_parser.yy" 2025 #line 2026 "dhcp6_parser.cc" 2029 #line 1096 "dhcp6_parser.yy" 2031 #line 2032 "dhcp6_parser.cc" 2035 #line 1097 "dhcp6_parser.yy" 2037 #line 2038 "dhcp6_parser.cc" 2041 #line 1100 "dhcp6_parser.yy" 2043 ctx.
unique(
"max-row-errors", ctx.
loc2pos(yystack_[2].location));
2045 ctx.
stack_.back()->set(
"max-row-errors", n);
2047 #line 2048 "dhcp6_parser.cc" 2051 #line 1106 "dhcp6_parser.yy" 2053 ctx.
unique(
"max-reconnect-tries", ctx.
loc2pos(yystack_[2].location));
2055 ctx.
stack_.back()->set(
"max-reconnect-tries", n);
2057 #line 2058 "dhcp6_parser.cc" 2061 #line 1112 "dhcp6_parser.yy" 2063 ctx.
unique(
"trust-anchor", ctx.
loc2pos(yystack_[0].location));
2066 #line 2067 "dhcp6_parser.cc" 2070 #line 1115 "dhcp6_parser.yy" 2073 ctx.
stack_.back()->set(
"trust-anchor", ca);
2076 #line 2077 "dhcp6_parser.cc" 2080 #line 1121 "dhcp6_parser.yy" 2085 #line 2086 "dhcp6_parser.cc" 2089 #line 1124 "dhcp6_parser.yy" 2092 ctx.
stack_.back()->set(
"cert-file", cert);
2095 #line 2096 "dhcp6_parser.cc" 2099 #line 1130 "dhcp6_parser.yy" 2104 #line 2105 "dhcp6_parser.cc" 2108 #line 1133 "dhcp6_parser.yy" 2111 ctx.
stack_.back()->set(
"key-file", key);
2114 #line 2115 "dhcp6_parser.cc" 2118 #line 1139 "dhcp6_parser.yy" 2120 ctx.
unique(
"cipher-list", ctx.
loc2pos(yystack_[0].location));
2123 #line 2124 "dhcp6_parser.cc" 2127 #line 1142 "dhcp6_parser.yy" 2130 ctx.
stack_.back()->set(
"cipher-list", cl);
2133 #line 2134 "dhcp6_parser.cc" 2137 #line 1148 "dhcp6_parser.yy" 2139 ctx.
unique(
"sanity-checks", ctx.
loc2pos(yystack_[0].location));
2141 ctx.
stack_.back()->set(
"sanity-checks", m);
2145 #line 2146 "dhcp6_parser.cc" 2149 #line 1154 "dhcp6_parser.yy" 2154 #line 2155 "dhcp6_parser.cc" 2158 #line 1161 "dhcp6_parser.yy" 2162 #line 2163 "dhcp6_parser.cc" 2166 #line 1170 "dhcp6_parser.yy" 2168 ctx.
unique(
"lease-checks", ctx.
loc2pos(yystack_[0].location));
2171 #line 2172 "dhcp6_parser.cc" 2175 #line 1173 "dhcp6_parser.yy" 2178 if ( (
string(yystack_[0].value.as < std::string > ()) ==
"none") ||
2179 (
string(yystack_[0].value.as < std::string > ()) ==
"warn") ||
2180 (
string(yystack_[0].value.as < std::string > ()) ==
"fix") ||
2181 (
string(yystack_[0].value.as < std::string > ()) ==
"fix-del") ||
2182 (
string(yystack_[0].value.as < std::string > ()) ==
"del")) {
2184 ctx.
stack_.back()->set(
"lease-checks", user);
2187 error(yystack_[0].location,
"Unsupported 'lease-checks value: " +
string(yystack_[0].value.as < std::string > ()) +
2188 ", supported values are: none, warn, fix, fix-del, del");
2191 #line 2192 "dhcp6_parser.cc" 2195 #line 1189 "dhcp6_parser.yy" 2197 ctx.
unique(
"extended-info-checks", ctx.
loc2pos(yystack_[0].location));
2200 #line 2201 "dhcp6_parser.cc" 2204 #line 1192 "dhcp6_parser.yy" 2207 if ( (
string(yystack_[0].value.as < std::string > ()) ==
"none") ||
2208 (
string(yystack_[0].value.as < std::string > ()) ==
"fix") ||
2209 (
string(yystack_[0].value.as < std::string > ()) ==
"strict") ||
2210 (
string(yystack_[0].value.as < std::string > ()) ==
"pedantic")) {
2212 ctx.
stack_.back()->set(
"extended-info-checks", user);
2215 error(yystack_[0].location,
"Unsupported 'extended-info-checks value: " +
string(yystack_[0].value.as < std::string > ()) +
2216 ", supported values are: none, fix, strict, pedantic");
2219 #line 2220 "dhcp6_parser.cc" 2223 #line 1207 "dhcp6_parser.yy" 2225 ctx.
unique(
"mac-sources", ctx.
loc2pos(yystack_[0].location));
2227 ctx.
stack_.back()->set(
"mac-sources", l);
2231 #line 2232 "dhcp6_parser.cc" 2235 #line 1213 "dhcp6_parser.yy" 2240 #line 2241 "dhcp6_parser.cc" 2244 #line 1220 "dhcp6_parser.yy" 2248 #line 2249 "dhcp6_parser.cc" 2252 #line 1229 "dhcp6_parser.yy" 2255 ctx.
stack_.back()->add(duid);
2257 #line 2258 "dhcp6_parser.cc" 2261 #line 1234 "dhcp6_parser.yy" 2264 ctx.
stack_.back()->add(duid);
2266 #line 2267 "dhcp6_parser.cc" 2270 #line 1239 "dhcp6_parser.yy" 2272 ctx.
unique(
"host-reservation-identifiers", ctx.
loc2pos(yystack_[0].location));
2274 ctx.
stack_.back()->set(
"host-reservation-identifiers", l);
2278 #line 2279 "dhcp6_parser.cc" 2282 #line 1245 "dhcp6_parser.yy" 2287 #line 2288 "dhcp6_parser.cc" 2291 #line 1252 "dhcp6_parser.yy" 2295 #line 2296 "dhcp6_parser.cc" 2299 #line 1262 "dhcp6_parser.yy" 2302 ctx.
stack_.back()->add(hwaddr);
2304 #line 2305 "dhcp6_parser.cc" 2308 #line 1267 "dhcp6_parser.yy" 2311 ctx.
stack_.back()->add(flex_id);
2313 #line 2314 "dhcp6_parser.cc" 2317 #line 1274 "dhcp6_parser.yy" 2319 ctx.
unique(
"relay-supplied-options", ctx.
loc2pos(yystack_[0].location));
2321 ctx.
stack_.back()->set(
"relay-supplied-options", l);
2325 #line 2326 "dhcp6_parser.cc" 2329 #line 1280 "dhcp6_parser.yy" 2334 #line 2335 "dhcp6_parser.cc" 2338 #line 1287 "dhcp6_parser.yy" 2340 ctx.
unique(
"multi-threading", ctx.
loc2pos(yystack_[0].location));
2342 ctx.
stack_.back()->set(
"multi-threading", mt);
2343 ctx.
stack_.push_back(mt);
2346 #line 2347 "dhcp6_parser.cc" 2350 #line 1293 "dhcp6_parser.yy" 2353 ctx.
require(
"enable-multi-threading", ctx.
loc2pos(yystack_[2].location), ctx.
loc2pos(yystack_[0].location));
2357 #line 2358 "dhcp6_parser.cc" 2361 #line 1302 "dhcp6_parser.yy" 2365 #line 2366 "dhcp6_parser.cc" 2369 #line 1315 "dhcp6_parser.yy" 2371 ctx.
unique(
"enable-multi-threading", ctx.
loc2pos(yystack_[2].location));
2373 ctx.
stack_.back()->set(
"enable-multi-threading", b);
2375 #line 2376 "dhcp6_parser.cc" 2379 #line 1321 "dhcp6_parser.yy" 2381 ctx.
unique(
"thread-pool-size", ctx.
loc2pos(yystack_[2].location));
2383 ctx.
stack_.back()->set(
"thread-pool-size", prf);
2385 #line 2386 "dhcp6_parser.cc" 2389 #line 1327 "dhcp6_parser.yy" 2391 ctx.
unique(
"packet-queue-size", ctx.
loc2pos(yystack_[2].location));
2393 ctx.
stack_.back()->set(
"packet-queue-size", prf);
2395 #line 2396 "dhcp6_parser.cc" 2399 #line 1333 "dhcp6_parser.yy" 2401 ctx.
unique(
"hooks-libraries", ctx.
loc2pos(yystack_[0].location));
2403 ctx.
stack_.back()->set(
"hooks-libraries", l);
2407 #line 2408 "dhcp6_parser.cc" 2411 #line 1339 "dhcp6_parser.yy" 2416 #line 2417 "dhcp6_parser.cc" 2420 #line 1350 "dhcp6_parser.yy" 2424 #line 2425 "dhcp6_parser.cc" 2428 #line 1355 "dhcp6_parser.yy" 2431 ctx.
stack_.back()->add(m);
2434 #line 2435 "dhcp6_parser.cc" 2438 #line 1359 "dhcp6_parser.yy" 2444 #line 2445 "dhcp6_parser.cc" 2448 #line 1365 "dhcp6_parser.yy" 2454 #line 2455 "dhcp6_parser.cc" 2458 #line 1369 "dhcp6_parser.yy" 2464 #line 2465 "dhcp6_parser.cc" 2468 #line 1377 "dhcp6_parser.yy" 2472 #line 2473 "dhcp6_parser.cc" 2476 #line 1387 "dhcp6_parser.yy" 2481 #line 2482 "dhcp6_parser.cc" 2485 #line 1390 "dhcp6_parser.yy" 2488 ctx.
stack_.back()->set(
"library", lib);
2491 #line 2492 "dhcp6_parser.cc" 2495 #line 1396 "dhcp6_parser.yy" 2497 ctx.
unique(
"parameters", ctx.
loc2pos(yystack_[0].location));
2500 #line 2501 "dhcp6_parser.cc" 2504 #line 1399 "dhcp6_parser.yy" 2506 ctx.
stack_.back()->set(
"parameters", yystack_[0].value.as <
ElementPtr > ());
2509 #line 2510 "dhcp6_parser.cc" 2513 #line 1405 "dhcp6_parser.yy" 2515 ctx.
unique(
"expired-leases-processing", ctx.
loc2pos(yystack_[0].location));
2517 ctx.
stack_.back()->set(
"expired-leases-processing", m);
2521 #line 2522 "dhcp6_parser.cc" 2525 #line 1411 "dhcp6_parser.yy" 2531 #line 2532 "dhcp6_parser.cc" 2535 #line 1419 "dhcp6_parser.yy" 2539 #line 2540 "dhcp6_parser.cc" 2543 #line 1432 "dhcp6_parser.yy" 2545 ctx.
unique(
"reclaim-timer-wait-time", ctx.
loc2pos(yystack_[2].location));
2547 ctx.
stack_.back()->set(
"reclaim-timer-wait-time", value);
2549 #line 2550 "dhcp6_parser.cc" 2553 #line 1438 "dhcp6_parser.yy" 2555 ctx.
unique(
"flush-reclaimed-timer-wait-time", ctx.
loc2pos(yystack_[2].location));
2557 ctx.
stack_.back()->set(
"flush-reclaimed-timer-wait-time", value);
2559 #line 2560 "dhcp6_parser.cc" 2563 #line 1444 "dhcp6_parser.yy" 2565 ctx.
unique(
"hold-reclaimed-time", ctx.
loc2pos(yystack_[2].location));
2567 ctx.
stack_.back()->set(
"hold-reclaimed-time", value);
2569 #line 2570 "dhcp6_parser.cc" 2573 #line 1450 "dhcp6_parser.yy" 2575 ctx.
unique(
"max-reclaim-leases", ctx.
loc2pos(yystack_[2].location));
2577 ctx.
stack_.back()->set(
"max-reclaim-leases", value);
2579 #line 2580 "dhcp6_parser.cc" 2583 #line 1456 "dhcp6_parser.yy" 2585 ctx.
unique(
"max-reclaim-time", ctx.
loc2pos(yystack_[2].location));
2587 ctx.
stack_.back()->set(
"max-reclaim-time", value);
2589 #line 2590 "dhcp6_parser.cc" 2593 #line 1462 "dhcp6_parser.yy" 2595 ctx.
unique(
"unwarned-reclaim-cycles", ctx.
loc2pos(yystack_[2].location));
2597 ctx.
stack_.back()->set(
"unwarned-reclaim-cycles", value);
2599 #line 2600 "dhcp6_parser.cc" 2603 #line 1471 "dhcp6_parser.yy" 2607 ctx.
stack_.back()->set(
"subnet6", l);
2611 #line 2612 "dhcp6_parser.cc" 2615 #line 1477 "dhcp6_parser.yy" 2620 #line 2621 "dhcp6_parser.cc" 2624 #line 1491 "dhcp6_parser.yy" 2628 #line 2629 "dhcp6_parser.cc" 2632 #line 1500 "dhcp6_parser.yy" 2635 ctx.
stack_.back()->add(m);
2638 #line 2639 "dhcp6_parser.cc" 2642 #line 1504 "dhcp6_parser.yy" 2664 #line 2665 "dhcp6_parser.cc" 2668 #line 1526 "dhcp6_parser.yy" 2674 #line 2675 "dhcp6_parser.cc" 2678 #line 1530 "dhcp6_parser.yy" 2684 #line 2685 "dhcp6_parser.cc" 2688 #line 1539 "dhcp6_parser.yy" 2692 #line 2693 "dhcp6_parser.cc" 2696 #line 1592 "dhcp6_parser.yy" 2701 #line 2702 "dhcp6_parser.cc" 2705 #line 1595 "dhcp6_parser.yy" 2708 ctx.
stack_.back()->set(
"subnet", subnet);
2711 #line 2712 "dhcp6_parser.cc" 2715 #line 1601 "dhcp6_parser.yy" 2720 #line 2721 "dhcp6_parser.cc" 2724 #line 1604 "dhcp6_parser.yy" 2727 ctx.
stack_.back()->set(
"interface", iface);
2730 #line 2731 "dhcp6_parser.cc" 2734 #line 1610 "dhcp6_parser.yy" 2736 ctx.
unique(
"interface-id", ctx.
loc2pos(yystack_[0].location));
2739 #line 2740 "dhcp6_parser.cc" 2743 #line 1613 "dhcp6_parser.yy" 2746 ctx.
stack_.back()->set(
"interface-id", iface);
2749 #line 2750 "dhcp6_parser.cc" 2753 #line 1619 "dhcp6_parser.yy" 2755 ctx.
unique(
"client-class", ctx.
loc2pos(yystack_[0].location));
2758 #line 2759 "dhcp6_parser.cc" 2762 #line 1622 "dhcp6_parser.yy" 2765 ctx.
stack_.back()->set(
"client-class", cls);
2768 #line 2769 "dhcp6_parser.cc" 2772 #line 1628 "dhcp6_parser.yy" 2774 ctx.
unique(
"require-client-classes", ctx.
loc2pos(yystack_[0].location));
2776 ctx.
stack_.back()->set(
"require-client-classes", c);
2780 #line 2781 "dhcp6_parser.cc" 2784 #line 1634 "dhcp6_parser.yy" 2789 #line 2790 "dhcp6_parser.cc" 2793 #line 1639 "dhcp6_parser.yy" 2795 ctx.
unique(
"reservations-global", ctx.
loc2pos(yystack_[2].location));
2797 ctx.
stack_.back()->set(
"reservations-global", b);
2799 #line 2800 "dhcp6_parser.cc" 2803 #line 1645 "dhcp6_parser.yy" 2805 ctx.
unique(
"reservations-in-subnet", ctx.
loc2pos(yystack_[2].location));
2807 ctx.
stack_.back()->set(
"reservations-in-subnet", b);
2809 #line 2810 "dhcp6_parser.cc" 2813 #line 1651 "dhcp6_parser.yy" 2815 ctx.
unique(
"reservations-out-of-pool", ctx.
loc2pos(yystack_[2].location));
2817 ctx.
stack_.back()->set(
"reservations-out-of-pool", b);
2819 #line 2820 "dhcp6_parser.cc" 2823 #line 1657 "dhcp6_parser.yy" 2825 ctx.
unique(
"reservation-mode", ctx.
loc2pos(yystack_[0].location));
2828 #line 2829 "dhcp6_parser.cc" 2832 #line 1660 "dhcp6_parser.yy" 2834 ctx.
stack_.back()->set(
"reservation-mode", yystack_[0].value.as <
ElementPtr > ());
2837 #line 2838 "dhcp6_parser.cc" 2841 #line 1665 "dhcp6_parser.yy" 2843 #line 2844 "dhcp6_parser.cc" 2847 #line 1666 "dhcp6_parser.yy" 2849 #line 2850 "dhcp6_parser.cc" 2853 #line 1667 "dhcp6_parser.yy" 2855 #line 2856 "dhcp6_parser.cc" 2859 #line 1668 "dhcp6_parser.yy" 2861 #line 2862 "dhcp6_parser.cc" 2865 #line 1671 "dhcp6_parser.yy" 2869 ctx.
stack_.back()->set(
"id",
id);
2871 #line 2872 "dhcp6_parser.cc" 2875 #line 1677 "dhcp6_parser.yy" 2877 ctx.
unique(
"rapid-commit", ctx.
loc2pos(yystack_[2].location));
2879 ctx.
stack_.back()->set(
"rapid-commit", rc);
2881 #line 2882 "dhcp6_parser.cc" 2885 #line 1685 "dhcp6_parser.yy" 2887 ctx.
unique(
"shared-networks", ctx.
loc2pos(yystack_[0].location));
2889 ctx.
stack_.back()->set(
"shared-networks", l);
2893 #line 2894 "dhcp6_parser.cc" 2897 #line 1691 "dhcp6_parser.yy" 2902 #line 2903 "dhcp6_parser.cc" 2906 #line 1704 "dhcp6_parser.yy" 2910 #line 2911 "dhcp6_parser.cc" 2914 #line 1709 "dhcp6_parser.yy" 2917 ctx.
stack_.back()->add(m);
2920 #line 2921 "dhcp6_parser.cc" 2924 #line 1713 "dhcp6_parser.yy" 2928 #line 2929 "dhcp6_parser.cc" 2932 #line 1719 "dhcp6_parser.yy" 2936 #line 2937 "dhcp6_parser.cc" 2940 #line 1772 "dhcp6_parser.yy" 2942 ctx.
unique(
"option-def", ctx.
loc2pos(yystack_[0].location));
2944 ctx.
stack_.back()->set(
"option-def", l);
2948 #line 2949 "dhcp6_parser.cc" 2952 #line 1778 "dhcp6_parser.yy" 2957 #line 2958 "dhcp6_parser.cc" 2961 #line 1786 "dhcp6_parser.yy" 2966 #line 2967 "dhcp6_parser.cc" 2970 #line 1789 "dhcp6_parser.yy" 2974 #line 2975 "dhcp6_parser.cc" 2978 #line 1801 "dhcp6_parser.yy" 2982 #line 2983 "dhcp6_parser.cc" 2986 #line 1808 "dhcp6_parser.yy" 2989 ctx.
stack_.back()->add(m);
2992 #line 2993 "dhcp6_parser.cc" 2996 #line 1812 "dhcp6_parser.yy" 3004 #line 3005 "dhcp6_parser.cc" 3008 #line 1823 "dhcp6_parser.yy" 3014 #line 3015 "dhcp6_parser.cc" 3018 #line 1827 "dhcp6_parser.yy" 3026 #line 3027 "dhcp6_parser.cc" 3030 #line 1843 "dhcp6_parser.yy" 3034 #line 3035 "dhcp6_parser.cc" 3038 #line 1862 "dhcp6_parser.yy" 3042 ctx.
stack_.back()->set(
"code", code);
3044 #line 3045 "dhcp6_parser.cc" 3048 #line 1870 "dhcp6_parser.yy" 3053 #line 3054 "dhcp6_parser.cc" 3057 #line 1873 "dhcp6_parser.yy" 3060 ctx.
stack_.back()->set(
"type", prf);
3063 #line 3064 "dhcp6_parser.cc" 3067 #line 1879 "dhcp6_parser.yy" 3069 ctx.
unique(
"record-types", ctx.
loc2pos(yystack_[0].location));
3072 #line 3073 "dhcp6_parser.cc" 3076 #line 1882 "dhcp6_parser.yy" 3079 ctx.
stack_.back()->set(
"record-types", rtypes);
3082 #line 3083 "dhcp6_parser.cc" 3086 #line 1888 "dhcp6_parser.yy" 3091 #line 3092 "dhcp6_parser.cc" 3095 #line 1891 "dhcp6_parser.yy" 3098 ctx.
stack_.back()->set(
"space", space);
3101 #line 3102 "dhcp6_parser.cc" 3105 #line 1899 "dhcp6_parser.yy" 3107 ctx.
unique(
"encapsulate", ctx.
loc2pos(yystack_[0].location));
3110 #line 3111 "dhcp6_parser.cc" 3114 #line 1902 "dhcp6_parser.yy" 3117 ctx.
stack_.back()->set(
"encapsulate", encap);
3120 #line 3121 "dhcp6_parser.cc" 3124 #line 1908 "dhcp6_parser.yy" 3128 ctx.
stack_.back()->set(
"array", array);
3130 #line 3131 "dhcp6_parser.cc" 3134 #line 1918 "dhcp6_parser.yy" 3136 ctx.
unique(
"option-data", ctx.
loc2pos(yystack_[0].location));
3138 ctx.
stack_.back()->set(
"option-data", l);
3142 #line 3143 "dhcp6_parser.cc" 3146 #line 1924 "dhcp6_parser.yy" 3151 #line 3152 "dhcp6_parser.cc" 3155 #line 1939 "dhcp6_parser.yy" 3159 #line 3160 "dhcp6_parser.cc" 3163 #line 1946 "dhcp6_parser.yy" 3166 ctx.
stack_.back()->add(m);
3169 #line 3170 "dhcp6_parser.cc" 3173 #line 1950 "dhcp6_parser.yy" 3178 #line 3179 "dhcp6_parser.cc" 3182 #line 1958 "dhcp6_parser.yy" 3188 #line 3189 "dhcp6_parser.cc" 3192 #line 1962 "dhcp6_parser.yy" 3197 #line 3198 "dhcp6_parser.cc" 3201 #line 1978 "dhcp6_parser.yy" 3205 #line 3206 "dhcp6_parser.cc" 3209 #line 1998 "dhcp6_parser.yy" 3214 #line 3215 "dhcp6_parser.cc" 3218 #line 2001 "dhcp6_parser.yy" 3221 ctx.
stack_.back()->set(
"data", data);
3224 #line 3225 "dhcp6_parser.cc" 3228 #line 2011 "dhcp6_parser.yy" 3230 ctx.
unique(
"csv-format", ctx.
loc2pos(yystack_[2].location));
3232 ctx.
stack_.back()->set(
"csv-format", space);
3234 #line 3235 "dhcp6_parser.cc" 3238 #line 2017 "dhcp6_parser.yy" 3240 ctx.
unique(
"always-send", ctx.
loc2pos(yystack_[2].location));
3242 ctx.
stack_.back()->set(
"always-send", persist);
3244 #line 3245 "dhcp6_parser.cc" 3248 #line 2026 "dhcp6_parser.yy" 3252 ctx.
stack_.back()->set(
"pools", l);
3256 #line 3257 "dhcp6_parser.cc" 3260 #line 2032 "dhcp6_parser.yy" 3265 #line 3266 "dhcp6_parser.cc" 3269 #line 2045 "dhcp6_parser.yy" 3273 #line 3274 "dhcp6_parser.cc" 3277 #line 2050 "dhcp6_parser.yy" 3280 ctx.
stack_.back()->add(m);
3283 #line 3284 "dhcp6_parser.cc" 3287 #line 2054 "dhcp6_parser.yy" 3293 #line 3294 "dhcp6_parser.cc" 3297 #line 2060 "dhcp6_parser.yy" 3303 #line 3304 "dhcp6_parser.cc" 3307 #line 2064 "dhcp6_parser.yy" 3313 #line 3314 "dhcp6_parser.cc" 3317 #line 2072 "dhcp6_parser.yy" 3321 #line 3322 "dhcp6_parser.cc" 3325 #line 2086 "dhcp6_parser.yy" 3330 #line 3331 "dhcp6_parser.cc" 3334 #line 2089 "dhcp6_parser.yy" 3337 ctx.
stack_.back()->set(
"pool", pool);
3340 #line 3341 "dhcp6_parser.cc" 3344 #line 2095 "dhcp6_parser.yy" 3348 #line 3349 "dhcp6_parser.cc" 3352 #line 2097 "dhcp6_parser.yy" 3361 if ((old->size() != 1) || !old->contains(
"comment")) {
3362 std::stringstream msg;
3363 msg <<
"duplicate user-context entries (previous at " 3364 << old->getPosition().str() <<
")";
3365 error(yystack_[3].location, msg.str());
3368 user_context->set(
"comment", old->get(
"comment"));
3372 parent->set(
"user-context", user_context);
3375 #line 3376 "dhcp6_parser.cc" 3379 #line 2120 "dhcp6_parser.yy" 3383 #line 3384 "dhcp6_parser.cc" 3387 #line 2122 "dhcp6_parser.yy" 3392 user_context->set(
"comment", comment);
3398 if (old->contains(
"comment")) {
3399 std::stringstream msg;
3400 msg <<
"duplicate user-context/comment entries (previous at " 3401 << old->getPosition().str() <<
")";
3402 error(yystack_[3].location, msg.str());
3405 merge(user_context, old);
3409 parent->set(
"user-context", user_context);
3412 #line 3413 "dhcp6_parser.cc" 3416 #line 2150 "dhcp6_parser.yy" 3420 ctx.
stack_.back()->set(
"pd-pools", l);
3424 #line 3425 "dhcp6_parser.cc" 3428 #line 2156 "dhcp6_parser.yy" 3433 #line 3434 "dhcp6_parser.cc" 3437 #line 2169 "dhcp6_parser.yy" 3441 #line 3442 "dhcp6_parser.cc" 3445 #line 2174 "dhcp6_parser.yy" 3448 ctx.
stack_.back()->add(m);
3451 #line 3452 "dhcp6_parser.cc" 3455 #line 2178 "dhcp6_parser.yy" 3463 #line 3464 "dhcp6_parser.cc" 3467 #line 2186 "dhcp6_parser.yy" 3473 #line 3474 "dhcp6_parser.cc" 3477 #line 2190 "dhcp6_parser.yy" 3485 #line 3486 "dhcp6_parser.cc" 3489 #line 2200 "dhcp6_parser.yy" 3493 #line 3494 "dhcp6_parser.cc" 3497 #line 2218 "dhcp6_parser.yy" 3502 #line 3503 "dhcp6_parser.cc" 3506 #line 2221 "dhcp6_parser.yy" 3509 ctx.
stack_.back()->set(
"prefix", prf);
3512 #line 3513 "dhcp6_parser.cc" 3516 #line 2227 "dhcp6_parser.yy" 3518 ctx.
unique(
"prefix-len", ctx.
loc2pos(yystack_[2].location));
3520 ctx.
stack_.back()->set(
"prefix-len", prf);
3522 #line 3523 "dhcp6_parser.cc" 3526 #line 2233 "dhcp6_parser.yy" 3528 ctx.
unique(
"excluded-prefix", ctx.
loc2pos(yystack_[0].location));
3531 #line 3532 "dhcp6_parser.cc" 3535 #line 2236 "dhcp6_parser.yy" 3538 ctx.
stack_.back()->set(
"excluded-prefix", prf);
3541 #line 3542 "dhcp6_parser.cc" 3545 #line 2242 "dhcp6_parser.yy" 3547 ctx.
unique(
"excluded-prefix-len", ctx.
loc2pos(yystack_[2].location));
3549 ctx.
stack_.back()->set(
"excluded-prefix-len", prf);
3551 #line 3552 "dhcp6_parser.cc" 3555 #line 2248 "dhcp6_parser.yy" 3557 ctx.
unique(
"delegated-len", ctx.
loc2pos(yystack_[2].location));
3559 ctx.
stack_.back()->set(
"delegated-len", deleg);
3561 #line 3562 "dhcp6_parser.cc" 3565 #line 2257 "dhcp6_parser.yy" 3567 ctx.
unique(
"reservations", ctx.
loc2pos(yystack_[0].location));
3569 ctx.
stack_.back()->set(
"reservations", l);
3573 #line 3574 "dhcp6_parser.cc" 3577 #line 2263 "dhcp6_parser.yy" 3582 #line 3583 "dhcp6_parser.cc" 3586 #line 2274 "dhcp6_parser.yy" 3590 #line 3591 "dhcp6_parser.cc" 3594 #line 2279 "dhcp6_parser.yy" 3597 ctx.
stack_.back()->add(m);
3600 #line 3601 "dhcp6_parser.cc" 3604 #line 2283 "dhcp6_parser.yy" 3609 #line 3610 "dhcp6_parser.cc" 3613 #line 2288 "dhcp6_parser.yy" 3619 #line 3620 "dhcp6_parser.cc" 3623 #line 2292 "dhcp6_parser.yy" 3628 #line 3629 "dhcp6_parser.cc" 3632 #line 2303 "dhcp6_parser.yy" 3636 #line 3637 "dhcp6_parser.cc" 3640 #line 2322 "dhcp6_parser.yy" 3642 ctx.
unique(
"ip-addresses", ctx.
loc2pos(yystack_[0].location));
3644 ctx.
stack_.back()->set(
"ip-addresses", l);
3648 #line 3649 "dhcp6_parser.cc" 3652 #line 2328 "dhcp6_parser.yy" 3657 #line 3658 "dhcp6_parser.cc" 3661 #line 2333 "dhcp6_parser.yy" 3665 ctx.
stack_.back()->set(
"prefixes", l);
3669 #line 3670 "dhcp6_parser.cc" 3673 #line 2339 "dhcp6_parser.yy" 3678 #line 3679 "dhcp6_parser.cc" 3682 #line 2344 "dhcp6_parser.yy" 3687 #line 3688 "dhcp6_parser.cc" 3691 #line 2347 "dhcp6_parser.yy" 3694 ctx.
stack_.back()->set(
"duid", d);
3697 #line 3698 "dhcp6_parser.cc" 3701 #line 2353 "dhcp6_parser.yy" 3703 ctx.
unique(
"hw-address", ctx.
loc2pos(yystack_[0].location));
3706 #line 3707 "dhcp6_parser.cc" 3710 #line 2356 "dhcp6_parser.yy" 3713 ctx.
stack_.back()->set(
"hw-address", hw);
3716 #line 3717 "dhcp6_parser.cc" 3720 #line 2362 "dhcp6_parser.yy" 3725 #line 3726 "dhcp6_parser.cc" 3729 #line 2365 "dhcp6_parser.yy" 3732 ctx.
stack_.back()->set(
"hostname", host);
3735 #line 3736 "dhcp6_parser.cc" 3739 #line 2371 "dhcp6_parser.yy" 3744 #line 3745 "dhcp6_parser.cc" 3748 #line 2374 "dhcp6_parser.yy" 3751 ctx.
stack_.back()->set(
"flex-id", hw);
3754 #line 3755 "dhcp6_parser.cc" 3758 #line 2380 "dhcp6_parser.yy" 3760 ctx.
unique(
"client-classes", ctx.
loc2pos(yystack_[0].location));
3762 ctx.
stack_.back()->set(
"client-classes", c);
3766 #line 3767 "dhcp6_parser.cc" 3770 #line 2386 "dhcp6_parser.yy" 3775 #line 3776 "dhcp6_parser.cc" 3779 #line 2394 "dhcp6_parser.yy" 3783 ctx.
stack_.back()->set(
"relay", m);
3787 #line 3788 "dhcp6_parser.cc" 3791 #line 2400 "dhcp6_parser.yy" 3796 #line 3797 "dhcp6_parser.cc" 3800 #line 2409 "dhcp6_parser.yy" 3802 ctx.
unique(
"ip-address", ctx.
loc2pos(yystack_[0].location));
3805 #line 3806 "dhcp6_parser.cc" 3809 #line 2412 "dhcp6_parser.yy" 3812 ctx.
stack_.back()->set(
"ip-address", addr);
3815 #line 3816 "dhcp6_parser.cc" 3819 #line 2421 "dhcp6_parser.yy" 3821 ctx.
unique(
"client-classes", ctx.
loc2pos(yystack_[0].location));
3823 ctx.
stack_.back()->set(
"client-classes", l);
3827 #line 3828 "dhcp6_parser.cc" 3831 #line 2427 "dhcp6_parser.yy" 3836 #line 3837 "dhcp6_parser.cc" 3840 #line 2434 "dhcp6_parser.yy" 3844 #line 3845 "dhcp6_parser.cc" 3848 #line 2439 "dhcp6_parser.yy" 3851 ctx.
stack_.back()->add(m);
3854 #line 3855 "dhcp6_parser.cc" 3858 #line 2443 "dhcp6_parser.yy" 3864 #line 3865 "dhcp6_parser.cc" 3868 #line 2455 "dhcp6_parser.yy" 3872 #line 3873 "dhcp6_parser.cc" 3876 #line 2478 "dhcp6_parser.yy" 3881 #line 3882 "dhcp6_parser.cc" 3885 #line 2481 "dhcp6_parser.yy" 3888 ctx.
stack_.back()->set(
"test", test);
3891 #line 3892 "dhcp6_parser.cc" 3895 #line 2487 "dhcp6_parser.yy" 3897 ctx.
unique(
"template-test", ctx.
loc2pos(yystack_[0].location));
3900 #line 3901 "dhcp6_parser.cc" 3904 #line 2490 "dhcp6_parser.yy" 3907 ctx.
stack_.back()->set(
"template-test", template_test);
3910 #line 3911 "dhcp6_parser.cc" 3914 #line 2496 "dhcp6_parser.yy" 3916 ctx.
unique(
"only-if-required", ctx.
loc2pos(yystack_[2].location));
3918 ctx.
stack_.back()->set(
"only-if-required", b);
3920 #line 3921 "dhcp6_parser.cc" 3924 #line 2505 "dhcp6_parser.yy" 3928 ctx.
stack_.back()->set(
"server-id", m);
3932 #line 3933 "dhcp6_parser.cc" 3936 #line 2511 "dhcp6_parser.yy" 3943 #line 3944 "dhcp6_parser.cc" 3947 #line 2520 "dhcp6_parser.yy" 3951 #line 3952 "dhcp6_parser.cc" 3955 #line 2536 "dhcp6_parser.yy" 3960 #line 3961 "dhcp6_parser.cc" 3964 #line 2539 "dhcp6_parser.yy" 3969 #line 3970 "dhcp6_parser.cc" 3973 #line 2544 "dhcp6_parser.yy" 3975 #line 3976 "dhcp6_parser.cc" 3979 #line 2545 "dhcp6_parser.yy" 3981 #line 3982 "dhcp6_parser.cc" 3985 #line 2546 "dhcp6_parser.yy" 3987 #line 3988 "dhcp6_parser.cc" 3991 #line 2549 "dhcp6_parser.yy" 3995 ctx.
stack_.back()->set(
"htype", htype);
3997 #line 3998 "dhcp6_parser.cc" 4001 #line 2555 "dhcp6_parser.yy" 4003 ctx.
unique(
"identifier", ctx.
loc2pos(yystack_[0].location));
4006 #line 4007 "dhcp6_parser.cc" 4010 #line 2558 "dhcp6_parser.yy" 4013 ctx.
stack_.back()->set(
"identifier",
id);
4016 #line 4017 "dhcp6_parser.cc" 4020 #line 2564 "dhcp6_parser.yy" 4024 ctx.
stack_.back()->set(
"time", time);
4026 #line 4027 "dhcp6_parser.cc" 4030 #line 2570 "dhcp6_parser.yy" 4032 ctx.
unique(
"enterprise-id", ctx.
loc2pos(yystack_[2].location));
4034 ctx.
stack_.back()->set(
"enterprise-id", time);
4036 #line 4037 "dhcp6_parser.cc" 4040 #line 2578 "dhcp6_parser.yy" 4042 ctx.
unique(
"dhcp4o6-port", ctx.
loc2pos(yystack_[2].location));
4044 ctx.
stack_.back()->set(
"dhcp4o6-port", time);
4046 #line 4047 "dhcp6_parser.cc" 4050 #line 2586 "dhcp6_parser.yy" 4052 ctx.
unique(
"control-socket", ctx.
loc2pos(yystack_[0].location));
4054 ctx.
stack_.back()->set(
"control-socket", m);
4058 #line 4059 "dhcp6_parser.cc" 4062 #line 2592 "dhcp6_parser.yy" 4067 #line 4068 "dhcp6_parser.cc" 4071 #line 2599 "dhcp6_parser.yy" 4075 #line 4076 "dhcp6_parser.cc" 4079 #line 2611 "dhcp6_parser.yy" 4081 ctx.
unique(
"socket-type", ctx.
loc2pos(yystack_[0].location));
4084 #line 4085 "dhcp6_parser.cc" 4088 #line 2614 "dhcp6_parser.yy" 4091 ctx.
stack_.back()->set(
"socket-type", stype);
4094 #line 4095 "dhcp6_parser.cc" 4098 #line 2620 "dhcp6_parser.yy" 4100 ctx.
unique(
"socket-name", ctx.
loc2pos(yystack_[0].location));
4103 #line 4104 "dhcp6_parser.cc" 4107 #line 2623 "dhcp6_parser.yy" 4110 ctx.
stack_.back()->set(
"socket-name", name);
4113 #line 4114 "dhcp6_parser.cc" 4117 #line 2632 "dhcp6_parser.yy" 4119 ctx.
unique(
"dhcp-queue-control", ctx.
loc2pos(yystack_[0].location));
4121 ctx.
stack_.back()->set(
"dhcp-queue-control", qc);
4122 ctx.
stack_.push_back(qc);
4125 #line 4126 "dhcp6_parser.cc" 4129 #line 2638 "dhcp6_parser.yy" 4136 #line 4137 "dhcp6_parser.cc" 4140 #line 2647 "dhcp6_parser.yy" 4144 #line 4145 "dhcp6_parser.cc" 4148 #line 2660 "dhcp6_parser.yy" 4150 ctx.
unique(
"enable-queue", ctx.
loc2pos(yystack_[2].location));
4152 ctx.
stack_.back()->set(
"enable-queue", b);
4154 #line 4155 "dhcp6_parser.cc" 4158 #line 2666 "dhcp6_parser.yy" 4160 ctx.
unique(
"queue-type", ctx.
loc2pos(yystack_[0].location));
4163 #line 4164 "dhcp6_parser.cc" 4167 #line 2669 "dhcp6_parser.yy" 4170 ctx.
stack_.back()->set(
"queue-type", qt);
4173 #line 4174 "dhcp6_parser.cc" 4177 #line 2675 "dhcp6_parser.yy" 4181 ctx.
stack_.back()->set(
"capacity", c);
4183 #line 4184 "dhcp6_parser.cc" 4187 #line 2681 "dhcp6_parser.yy" 4189 ctx.
unique(yystack_[0].value.as < std::string > (), ctx.
loc2pos(yystack_[0].location));
4192 #line 4193 "dhcp6_parser.cc" 4196 #line 2684 "dhcp6_parser.yy" 4198 ctx.
stack_.back()->set(yystack_[3].value.as < std::string > (), yystack_[0].value.as <
ElementPtr > ());
4201 #line 4202 "dhcp6_parser.cc" 4205 #line 2691 "dhcp6_parser.yy" 4209 ctx.
stack_.back()->set(
"dhcp-ddns", m);
4213 #line 4214 "dhcp6_parser.cc" 4217 #line 2697 "dhcp6_parser.yy" 4220 ctx.
require(
"enable-updates", ctx.
loc2pos(yystack_[2].location), ctx.
loc2pos(yystack_[0].location));
4224 #line 4225 "dhcp6_parser.cc" 4228 #line 2704 "dhcp6_parser.yy" 4234 #line 4235 "dhcp6_parser.cc" 4238 #line 2708 "dhcp6_parser.yy" 4241 ctx.
require(
"enable-updates", ctx.
loc2pos(yystack_[3].location), ctx.
loc2pos(yystack_[0].location));
4244 #line 4245 "dhcp6_parser.cc" 4248 #line 2716 "dhcp6_parser.yy" 4252 #line 4253 "dhcp6_parser.cc" 4256 #line 2741 "dhcp6_parser.yy" 4258 ctx.
unique(
"enable-updates", ctx.
loc2pos(yystack_[2].location));
4260 ctx.
stack_.back()->set(
"enable-updates", b);
4262 #line 4263 "dhcp6_parser.cc" 4266 #line 2748 "dhcp6_parser.yy" 4268 ctx.
unique(
"qualifying-suffix", ctx.
loc2pos(yystack_[0].location));
4271 #line 4272 "dhcp6_parser.cc" 4275 #line 2751 "dhcp6_parser.yy" 4278 ctx.
stack_.back()->set(
"qualifying-suffix", s);
4281 #line 4282 "dhcp6_parser.cc" 4285 #line 2757 "dhcp6_parser.yy" 4290 #line 4291 "dhcp6_parser.cc" 4294 #line 2760 "dhcp6_parser.yy" 4297 ctx.
stack_.back()->set(
"server-ip", s);
4300 #line 4301 "dhcp6_parser.cc" 4304 #line 2766 "dhcp6_parser.yy" 4306 ctx.
unique(
"server-port", ctx.
loc2pos(yystack_[2].location));
4308 ctx.
stack_.back()->set(
"server-port", i);
4310 #line 4311 "dhcp6_parser.cc" 4314 #line 2772 "dhcp6_parser.yy" 4319 #line 4320 "dhcp6_parser.cc" 4323 #line 2775 "dhcp6_parser.yy" 4326 ctx.
stack_.back()->set(
"sender-ip", s);
4329 #line 4330 "dhcp6_parser.cc" 4333 #line 2781 "dhcp6_parser.yy" 4335 ctx.
unique(
"sender-port", ctx.
loc2pos(yystack_[2].location));
4337 ctx.
stack_.back()->set(
"sender-port", i);
4339 #line 4340 "dhcp6_parser.cc" 4343 #line 2787 "dhcp6_parser.yy" 4345 ctx.
unique(
"max-queue-size", ctx.
loc2pos(yystack_[2].location));
4347 ctx.
stack_.back()->set(
"max-queue-size", i);
4349 #line 4350 "dhcp6_parser.cc" 4353 #line 2793 "dhcp6_parser.yy" 4355 ctx.
unique(
"ncr-protocol", ctx.
loc2pos(yystack_[0].location));
4358 #line 4359 "dhcp6_parser.cc" 4362 #line 2796 "dhcp6_parser.yy" 4364 ctx.
stack_.back()->set(
"ncr-protocol", yystack_[0].value.as <
ElementPtr > ());
4367 #line 4368 "dhcp6_parser.cc" 4371 #line 2802 "dhcp6_parser.yy" 4373 #line 4374 "dhcp6_parser.cc" 4377 #line 2803 "dhcp6_parser.yy" 4379 #line 4380 "dhcp6_parser.cc" 4383 #line 2806 "dhcp6_parser.yy" 4385 ctx.
unique(
"ncr-format", ctx.
loc2pos(yystack_[0].location));
4388 #line 4389 "dhcp6_parser.cc" 4392 #line 2809 "dhcp6_parser.yy" 4395 ctx.
stack_.back()->set(
"ncr-format", json);
4398 #line 4399 "dhcp6_parser.cc" 4402 #line 2816 "dhcp6_parser.yy" 4404 ctx.
unique(
"override-no-update", ctx.
loc2pos(yystack_[2].location));
4406 ctx.
stack_.back()->set(
"override-no-update", b);
4408 #line 4409 "dhcp6_parser.cc" 4412 #line 2823 "dhcp6_parser.yy" 4414 ctx.
unique(
"override-client-update", ctx.
loc2pos(yystack_[2].location));
4416 ctx.
stack_.back()->set(
"override-client-update", b);
4418 #line 4419 "dhcp6_parser.cc" 4422 #line 2830 "dhcp6_parser.yy" 4424 ctx.
unique(
"replace-client-name", ctx.
loc2pos(yystack_[0].location));
4427 #line 4428 "dhcp6_parser.cc" 4431 #line 2833 "dhcp6_parser.yy" 4433 ctx.
stack_.back()->set(
"replace-client-name", yystack_[0].value.as <
ElementPtr > ());
4436 #line 4437 "dhcp6_parser.cc" 4440 #line 2839 "dhcp6_parser.yy" 4442 ctx.
unique(
"generated-prefix", ctx.
loc2pos(yystack_[0].location));
4445 #line 4446 "dhcp6_parser.cc" 4449 #line 2842 "dhcp6_parser.yy" 4452 ctx.
stack_.back()->set(
"generated-prefix", s);
4455 #line 4456 "dhcp6_parser.cc" 4459 #line 2849 "dhcp6_parser.yy" 4461 ctx.
unique(
"hostname-char-set", ctx.
loc2pos(yystack_[0].location));
4464 #line 4465 "dhcp6_parser.cc" 4468 #line 2852 "dhcp6_parser.yy" 4471 ctx.
stack_.back()->set(
"hostname-char-set", s);
4474 #line 4475 "dhcp6_parser.cc" 4478 #line 2859 "dhcp6_parser.yy" 4480 ctx.
unique(
"hostname-char-replacement", ctx.
loc2pos(yystack_[0].location));
4483 #line 4484 "dhcp6_parser.cc" 4487 #line 2862 "dhcp6_parser.yy" 4490 ctx.
stack_.back()->set(
"hostname-char-replacement", s);
4493 #line 4494 "dhcp6_parser.cc" 4497 #line 2871 "dhcp6_parser.yy" 4499 ctx.
unique(
"config-control", ctx.
loc2pos(yystack_[0].location));
4501 ctx.
stack_.back()->set(
"config-control", i);
4505 #line 4506 "dhcp6_parser.cc" 4509 #line 2877 "dhcp6_parser.yy" 4515 #line 4516 "dhcp6_parser.cc" 4519 #line 2883 "dhcp6_parser.yy" 4525 #line 4526 "dhcp6_parser.cc" 4529 #line 2887 "dhcp6_parser.yy" 4534 #line 4535 "dhcp6_parser.cc" 4538 #line 2895 "dhcp6_parser.yy" 4542 #line 4543 "dhcp6_parser.cc" 4546 #line 2905 "dhcp6_parser.yy" 4548 ctx.
unique(
"config-databases", ctx.
loc2pos(yystack_[0].location));
4550 ctx.
stack_.back()->set(
"config-databases", l);
4554 #line 4555 "dhcp6_parser.cc" 4558 #line 2911 "dhcp6_parser.yy" 4563 #line 4564 "dhcp6_parser.cc" 4567 #line 2916 "dhcp6_parser.yy" 4569 ctx.
unique(
"config-fetch-wait-time", ctx.
loc2pos(yystack_[2].location));
4571 ctx.
stack_.back()->set(
"config-fetch-wait-time", value);
4573 #line 4574 "dhcp6_parser.cc" 4577 #line 2924 "dhcp6_parser.yy" 4581 ctx.
stack_.back()->set(
"loggers", l);
4585 #line 4586 "dhcp6_parser.cc" 4589 #line 2930 "dhcp6_parser.yy" 4594 #line 4595 "dhcp6_parser.cc" 4598 #line 2939 "dhcp6_parser.yy" 4602 #line 4603 "dhcp6_parser.cc" 4606 #line 2945 "dhcp6_parser.yy" 4609 ctx.
stack_.back()->add(l);
4612 #line 4613 "dhcp6_parser.cc" 4616 #line 2949 "dhcp6_parser.yy" 4620 #line 4621 "dhcp6_parser.cc" 4624 #line 2955 "dhcp6_parser.yy" 4628 #line 4629 "dhcp6_parser.cc" 4632 #line 2969 "dhcp6_parser.yy" 4634 ctx.
unique(
"debuglevel", ctx.
loc2pos(yystack_[2].location));
4636 ctx.
stack_.back()->set(
"debuglevel", dl);
4638 #line 4639 "dhcp6_parser.cc" 4642 #line 2975 "dhcp6_parser.yy" 4647 #line 4648 "dhcp6_parser.cc" 4651 #line 2978 "dhcp6_parser.yy" 4654 ctx.
stack_.back()->set(
"severity", sev);
4657 #line 4658 "dhcp6_parser.cc" 4661 #line 2984 "dhcp6_parser.yy" 4663 ctx.
unique(
"output_options", ctx.
loc2pos(yystack_[0].location));
4665 ctx.
stack_.back()->set(
"output_options", l);
4669 #line 4670 "dhcp6_parser.cc" 4673 #line 2990 "dhcp6_parser.yy" 4678 #line 4679 "dhcp6_parser.cc" 4682 #line 2997 "dhcp6_parser.yy" 4686 #line 4687 "dhcp6_parser.cc" 4690 #line 3002 "dhcp6_parser.yy" 4693 ctx.
stack_.back()->add(m);
4696 #line 4697 "dhcp6_parser.cc" 4700 #line 3006 "dhcp6_parser.yy" 4704 #line 4705 "dhcp6_parser.cc" 4708 #line 3012 "dhcp6_parser.yy" 4712 #line 4713 "dhcp6_parser.cc" 4716 #line 3024 "dhcp6_parser.yy" 4721 #line 4722 "dhcp6_parser.cc" 4725 #line 3027 "dhcp6_parser.yy" 4728 ctx.
stack_.back()->set(
"output", sev);
4731 #line 4732 "dhcp6_parser.cc" 4735 #line 3033 "dhcp6_parser.yy" 4739 ctx.
stack_.back()->set(
"flush", flush);
4741 #line 4742 "dhcp6_parser.cc" 4745 #line 3039 "dhcp6_parser.yy" 4749 ctx.
stack_.back()->set(
"maxsize", maxsize);
4751 #line 4752 "dhcp6_parser.cc" 4755 #line 3045 "dhcp6_parser.yy" 4759 ctx.
stack_.back()->set(
"maxver", maxver);
4761 #line 4762 "dhcp6_parser.cc" 4765 #line 3051 "dhcp6_parser.yy" 4770 #line 4771 "dhcp6_parser.cc" 4774 #line 3054 "dhcp6_parser.yy" 4777 ctx.
stack_.back()->set(
"pattern", sev);
4780 #line 4781 "dhcp6_parser.cc" 4784 #line 3060 "dhcp6_parser.yy" 4786 ctx.
unique(
"compatibility", ctx.
loc2pos(yystack_[0].location));
4788 ctx.
stack_.back()->set(
"compatibility", i);
4792 #line 4793 "dhcp6_parser.cc" 4796 #line 3066 "dhcp6_parser.yy" 4801 #line 4802 "dhcp6_parser.cc" 4805 #line 3073 "dhcp6_parser.yy" 4809 #line 4810 "dhcp6_parser.cc" 4813 #line 3082 "dhcp6_parser.yy" 4815 ctx.
unique(
"lenient-option-parsing", ctx.
loc2pos(yystack_[2].location));
4817 ctx.
stack_.back()->set(
"lenient-option-parsing", b);
4819 #line 4820 "dhcp6_parser.cc" 4823 #line 4824 "dhcp6_parser.cc" 4832 YYCDEBUG <<
"Caught exception: " << yyexc.what() <<
'\n';
4836 #endif // YY_EXCEPTIONS 4842 yypush_ (YY_NULLPTR,
YY_MOVE (yylhs));
4856 std::string msg = yysyntax_error_ (yyctx);
4861 yyerror_range[1].location = yyla.
location;
4862 if (yyerrstatus_ == 3)
4870 else if (!yyla.
empty ())
4872 yy_destroy_ (
"Error: discarding", yyla);
4906 yyn = yypact_[+yystack_[0].state];
4907 if (!yy_pact_value_is_default_ (yyn))
4910 if (0 <= yyn && yyn <= yylast_
4913 yyn = yytable_[yyn];
4920 if (yystack_.size () == 1)
4923 yyerror_range[1].location = yystack_[0].location;
4924 yy_destroy_ (
"Error: popping", yystack_[0]);
4929 stack_symbol_type error_token;
4931 yyerror_range[2].location = yyla.
location;
4935 error_token.state = state_type (yyn);
4936 yypush_ (
"Shifting",
YY_MOVE (error_token));
4962 yy_destroy_ (
"Cleanup: discarding lookahead", yyla);
4968 while (1 < yystack_.size ())
4970 yy_destroy_ (
"Cleanup: popping", yystack_[0]);
4979 YYCDEBUG <<
"Exception caught: cleaning lookahead and stack\n";
4983 yy_destroy_ (YY_NULLPTR, yyla);
4985 while (1 < yystack_.size ())
4987 yy_destroy_ (YY_NULLPTR, yystack_[0]);
4992 #endif // YY_EXCEPTIONS 5007 Dhcp6Parser::yytnamerr_ (
const char *yystr)
5012 char const *yyp = yystr;
5019 goto do_not_strip_quotes;
5023 goto do_not_strip_quotes;
5035 do_not_strip_quotes: ;
5044 return yytnamerr_ (yytname_[yysymbol]);
5051 : yyparser_ (yyparser)
5061 const int yyn = yypact_[+yyparser_.yystack_[0].state];
5062 if (!yy_pact_value_is_default_ (yyn))
5067 const int yyxbegin = yyn < 0 ? -yyn : 0;
5069 const int yychecklim = yylast_ - yyn + 1;
5071 for (
int yyx = yyxbegin; yyx < yyxend; ++yyx)
5073 && !yy_table_value_is_error_ (yytable_[yyx + yyn]))
5077 else if (yycount == yyargn)
5084 if (yyarg && yycount == 0 && 0 < yyargn)
5095 Dhcp6Parser::yy_syntax_error_arguments_ (
const context& yyctx,
5126 yyarg[0] = yyctx.
token ();
5127 int yyn = yyctx.
expected_tokens (yyarg ? yyarg + 1 : yyarg, yyargn - 1);
5135 Dhcp6Parser::yysyntax_error_ (
const context& yyctx)
const 5138 enum { YYARGS_MAX = 5 };
5141 int yycount = yy_syntax_error_arguments_ (yyctx, yyarg, YYARGS_MAX);
5143 char const* yyformat = YY_NULLPTR;
5146 #define YYCASE_(N, S) \ 5152 YYCASE_ (1,
YY_(
"syntax error, unexpected %s"));
5153 YYCASE_ (2,
YY_(
"syntax error, unexpected %s, expecting %s"));
5154 YYCASE_ (3,
YY_(
"syntax error, unexpected %s, expecting %s or %s"));
5155 YYCASE_ (4,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s"));
5156 YYCASE_ (5,
YY_(
"syntax error, unexpected %s, expecting %s or %s or %s or %s"));
5162 std::ptrdiff_t yyi = 0;
5163 for (
char const* yyp = yyformat; *yyp; ++yyp)
5164 if (yyp[0] ==
'%' && yyp[1] ==
's' && yyi < yycount)
5175 const short Dhcp6Parser::yypact_ninf_ = -1018;
5177 const signed char Dhcp6Parser::yytable_ninf_ = -1;
5180 Dhcp6Parser::yypact_[] =
5182 443, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5183 -1018, -1018, -1018, -1018, -1018, 90, 35, 56, 70, 94,
5184 98, 104, 112, 116, 161, 185, 205, 249, 251, 268,
5185 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5186 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5187 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5188 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 35, -27,
5189 292, 172, 63, 684, 203, -4, 78, 221, 88, 327,
5190 -92, 457, 299, -1018, 294, 307, 326, 316, 330, -1018,
5191 49, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 335, 342,
5192 345, 353, 370, 393, 394, 401, 408, 421, 431, 432,
5193 437, 438, -1018, 444, 445, 447, 448, 449, -1018, -1018,
5194 -1018, 450, 451, 452, -1018, -1018, -1018, 453, -1018, -1018,
5195 -1018, -1018, -1018, -1018, 454, 455, 456, -1018, -1018, -1018,
5196 -1018, -1018, -1018, -1018, -1018, -1018, 459, -1018, -1018, -1018,
5197 -1018, -1018, -1018, 460, 462, 464, -1018, -1018, 465, -1018,
5198 50, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5199 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5200 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5201 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5202 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5203 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5204 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 467,
5205 470, 471, 473, -1018, 58, -1018, -1018, -1018, -1018, -1018,
5206 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 474, 475,
5207 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5208 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5209 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5210 101, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5211 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5212 -1018, -1018, -1018, -1018, -1018, 105, -1018, -1018, -1018, -1018,
5213 -1018, 477, -1018, 481, 482, -1018, -1018, -1018, -1018, -1018,
5214 -1018, 126, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5215 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 340,
5216 363, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 425,
5217 -1018, -1018, 484, -1018, -1018, -1018, 485, -1018, -1018, 439,
5218 492, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5219 -1018, -1018, -1018, -1018, 494, 495, -1018, -1018, -1018, -1018,
5220 488, 497, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5221 -1018, -1018, -1018, -1018, 128, -1018, -1018, -1018, 498, -1018,
5222 -1018, 500, -1018, 501, 506, -1018, -1018, 508, 509, -1018,
5223 -1018, -1018, -1018, -1018, -1018, -1018, 140, -1018, -1018, -1018,
5224 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5225 -1018, -1018, -1018, -1018, 511, 143, -1018, -1018, -1018, -1018,
5226 35, 35, -1018, 304, 512, -1018, -1018, 519, 520, 521,
5227 522, 525, 527, 314, 317, 318, 319, 321, 323, 324,
5228 325, 331, 315, 333, 336, 338, 341, 534, 343, 350,
5229 334, 349, 351, 541, 568, 569, 355, 356, 358, 575,
5230 578, 579, 368, 584, 585, 586, 587, 589, 590, 376,
5231 380, 381, 599, 600, 602, 603, 604, 607, 609, 610,
5232 611, 399, 614, 615, 616, 617, 618, 633, 418, 419,
5233 420, 637, 638, -1018, 172, -1018, 639, 440, 441, 446,
5234 461, 63, -1018, 659, 662, 663, 664, 665, 463, 458,
5235 666, 667, 668, 684, -1018, 669, 203, -1018, 671, 466,
5236 673, 468, 469, -4, -1018, 676, 678, 679, 681, 685,
5237 686, 687, -1018, 78, -1018, 688, 689, 476, 691, 692,
5238 693, 478, -1018, 88, 695, 483, 486, -1018, 327, 701,
5239 703, -70, -1018, 489, 706, 712, 499, 714, 502, 503,
5240 715, 719, 504, 505, 722, 723, 724, 725, 457, -1018,
5241 726, 513, 299, -1018, -1018, -1018, 728, 740, 531, 742,
5242 743, 753, 754, 683, -1018, -1018, -1018, -1018, -1018, -1018,
5243 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 546, -1018,
5244 -1018, -1018, -1018, -1018, 31, 547, 548, -1018, -1018, -1018,
5245 761, 762, 770, -1018, 560, 562, 775, 774, 565, 110,
5246 -1018, -1018, -1018, 778, 787, 788, 792, 789, 790, 795,
5247 794, 796, -1018, 797, 798, 800, 801, 592, 595, -1018,
5248 -1018, -1018, 808, 807, -1018, 810, -1018, -1018, -1018, -1018,
5249 -1018, 811, 812, 605, 606, 608, -1018, -1018, 810, 612,
5250 813, -1018, 613, -1018, 619, -1018, 620, -1018, -1018, -1018,
5251 810, 810, 810, 621, 622, 623, 624, -1018, 625, 626,
5252 -1018, 627, 628, 629, -1018, -1018, 630, -1018, -1018, -1018,
5253 631, 774, -1018, -1018, 632, 634, -1018, 635, -1018, -1018,
5254 -130, 642, -1018, -1018, 31, 636, 640, 641, -1018, 814,
5255 -1018, -1018, 35, 172, -1018, 299, 63, 347, 347, 819,
5256 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 820,
5257 821, 824, -1018, -1018, 825, -1018, -1018, -1018, -1018, -1018,
5258 -1018, -1018, -1018, -91, 35, 225, 216, 826, 827, 828,
5259 60, 250, 40, -45, 253, 457, -1018, -1018, 843, -155,
5260 -1018, -1018, 847, 848, -1018, -1018, -1018, -1018, -1018, -87,
5261 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5262 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5263 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 819,
5264 -1018, 150, 158, 168, -1018, -1018, -1018, -1018, 817, 852,
5265 855, 856, 857, 858, 859, 860, 861, 862, -1018, 863,
5266 -1018, -1018, -1018, -1018, -1018, 174, -1018, -1018, -1018, -1018,
5267 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5268 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 177, -1018,
5269 864, 799, -1018, -1018, 867, 865, -1018, -1018, 868, 866,
5270 -1018, -1018, 869, 873, -1018, -1018, 871, 875, -1018, -1018,
5271 -1018, 127, -1018, -1018, -1018, 874, -1018, -1018, -1018, 141,
5272 -1018, -1018, -1018, -1018, -1018, 183, -1018, -1018, -1018, -1018,
5273 159, -1018, -1018, 876, 878, -1018, -1018, 877, 881, -1018,
5274 882, 883, 884, 885, 886, 887, 256, -1018, -1018, -1018,
5275 -1018, -1018, -1018, -1018, -1018, -1018, 888, 889, 890, -1018,
5276 -1018, -1018, -1018, 263, -1018, -1018, -1018, -1018, -1018, -1018,
5277 891, 892, 893, -1018, 275, -1018, -1018, -1018, -1018, -1018,
5278 -1018, -1018, -1018, -1018, -1018, -1018, 289, -1018, -1018, -1018,
5279 894, -1018, 895, -1018, -1018, -1018, 298, -1018, -1018, -1018,
5280 -1018, -1018, 306, -1018, 262, -1018, 896, -1018, 320, -1018,
5281 -1018, 690, -1018, 879, 899, -1018, -1018, 897, 901, -1018,
5282 -1018, -1018, 898, -1018, 902, -1018, -1018, -1018, 905, 906,
5283 907, 908, 661, 694, 697, 696, 699, 700, 702, 704,
5284 705, 707, 909, 708, 915, 917, 920, 923, 347, -1018,
5285 -1018, 347, -1018, 819, 684, -1018, 820, 88, -1018, 821,
5286 327, -1018, 824, 1076, -1018, 825, -91, -1018, -1018, 225,
5287 -1018, 924, 925, 216, -1018, 290, 826, -1018, 78, -1018,
5288 827, -92, -1018, 828, 713, 716, 717, 718, 720, 721,
5289 60, -1018, 926, 928, 727, 729, 730, 250, -1018, 731,
5290 732, 734, 40, -1018, 929, 933, -45, -1018, 733, 936,
5291 736, 937, 253, -1018, -1018, -36, 843, -1018, 735, -155,
5292 -1018, -1018, 938, 939, 203, -1018, 847, -4, -1018, 848,
5293 942, -1018, -1018, 413, 739, 741, 744, -1018, -1018, -1018,
5294 -1018, -1018, -1018, -1018, -1018, -1018, -1018, 379, -1018, 745,
5295 747, 748, 750, -1018, 329, -1018, 344, -1018, 935, -1018,
5296 941, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5297 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5298 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5299 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5300 362, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 751,
5301 756, -1018, -1018, -1018, 953, -1018, -1018, -1018, -1018, -1018,
5302 -1018, -1018, -1018, -1018, -1018, -1018, 951, 957, -1018, -1018,
5303 -1018, -1018, -1018, -1018, 962, -1018, 364, -1018, -1018, -1018,
5304 -1018, -1018, -1018, -1018, -1018, 297, 758, -1018, -1018, -1018,
5305 -1018, -1018, -1018, -1018, -1018, 759, 765, -1018, -1018, 772,
5306 -1018, 35, -1018, -1018, 967, -1018, -1018, -1018, -1018, -1018,
5307 396, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 776,
5308 416, -1018, 426, -1018, 786, -1018, -1018, -1018, -1018, -1018,
5309 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5310 -1018, -1018, -1018, -1018, 1076, -1018, -1018, -1018, 975, 1000,
5311 785, -1018, 290, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5312 -1018, -1018, -1018, -1018, 1003, 805, 1004, -36, -1018, -1018,
5313 -1018, -1018, -1018, -1018, 822, 829, -1018, -1018, 900, -1018,
5314 834, -1018, -1018, -1018, 1011, -1018, -1018, 288, -1018, 122,
5315 1011, -1018, -1018, 1021, 1023, 1034, -1018, 429, -1018, -1018,
5316 -1018, -1018, -1018, -1018, -1018, 1039, 836, 842, 903, 1041,
5317 122, -1018, 844, -1018, -1018, -1018, 849, -1018, -1018, -1018
5321 Dhcp6Parser::yydefact_[] =
5323 0, 2, 4, 6, 8, 10, 12, 14, 16, 18,
5324 20, 22, 24, 26, 28, 0, 0, 0, 0, 0,
5325 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5326 1, 46, 38, 34, 33, 30, 31, 32, 37, 3,
5327 35, 36, 61, 5, 67, 7, 190, 9, 377, 11,
5328 584, 13, 611, 15, 643, 17, 504, 19, 513, 21,
5329 552, 23, 339, 25, 771, 27, 822, 29, 48, 41,
5330 0, 0, 0, 0, 0, 0, 645, 0, 515, 554,
5331 0, 0, 0, 50, 0, 49, 0, 0, 42, 63,
5332 0, 65, 139, 820, 188, 209, 211, 213, 0, 0,
5333 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5334 0, 0, 178, 0, 0, 0, 0, 0, 158, 165,
5335 167, 0, 0, 0, 368, 502, 543, 0, 181, 183,
5336 448, 598, 600, 440, 0, 0, 0, 295, 314, 304,
5337 284, 681, 634, 330, 351, 713, 0, 316, 738, 752,
5338 769, 171, 173, 0, 0, 0, 832, 874, 0, 138,
5339 0, 69, 72, 73, 74, 75, 76, 77, 78, 79,
5340 80, 111, 112, 113, 114, 115, 81, 119, 120, 121,
5341 122, 123, 124, 125, 126, 117, 118, 127, 128, 129,
5342 106, 135, 136, 137, 131, 132, 133, 84, 85, 86,
5343 87, 103, 88, 90, 89, 130, 94, 95, 82, 108,
5344 109, 110, 107, 83, 92, 93, 101, 102, 104, 91,
5345 96, 97, 98, 99, 100, 105, 116, 134, 203, 0,
5346 0, 0, 0, 202, 0, 192, 195, 196, 197, 198,
5347 199, 200, 201, 575, 602, 427, 429, 431, 0, 0,
5348 435, 433, 675, 426, 382, 383, 384, 385, 386, 387,
5349 388, 389, 408, 409, 410, 411, 412, 415, 416, 417,
5350 418, 419, 420, 421, 422, 413, 414, 423, 424, 425,
5351 0, 379, 393, 394, 395, 398, 399, 402, 403, 404,
5352 401, 396, 397, 390, 391, 406, 407, 392, 400, 405,
5353 596, 595, 591, 592, 590, 0, 586, 589, 593, 594,
5354 627, 0, 630, 0, 0, 626, 620, 621, 619, 624,
5355 625, 0, 613, 616, 617, 622, 623, 618, 673, 661,
5356 663, 665, 667, 669, 671, 660, 657, 658, 659, 0,
5357 646, 647, 652, 653, 650, 654, 655, 656, 651, 0,
5358 533, 259, 0, 537, 535, 540, 0, 529, 530, 0,
5359 516, 517, 520, 532, 521, 522, 523, 539, 524, 525,
5360 526, 527, 528, 569, 0, 0, 567, 568, 571, 572,
5361 0, 555, 556, 559, 560, 561, 562, 563, 564, 565,
5362 566, 347, 349, 344, 0, 341, 345, 346, 0, 795,
5363 797, 0, 800, 0, 0, 804, 808, 0, 0, 812,
5364 814, 816, 818, 793, 791, 792, 0, 773, 776, 788,
5365 777, 778, 779, 780, 781, 782, 783, 784, 785, 786,
5366 787, 789, 790, 829, 0, 0, 824, 827, 828, 47,
5367 52, 0, 39, 45, 0, 66, 62, 0, 0, 0,
5368 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5369 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5370 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5371 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5372 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5373 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5374 0, 0, 0, 60, 71, 68, 0, 0, 0, 0,
5375 0, 194, 191, 0, 0, 0, 0, 0, 0, 0,
5376 0, 0, 0, 381, 378, 0, 588, 585, 0, 0,
5377 0, 0, 0, 615, 612, 0, 0, 0, 0, 0,
5378 0, 0, 644, 649, 505, 0, 0, 0, 0, 0,
5379 0, 0, 514, 519, 0, 0, 0, 553, 558, 0,
5380 0, 343, 340, 0, 0, 0, 0, 0, 0, 0,
5381 0, 0, 0, 0, 0, 0, 0, 0, 775, 772,
5382 0, 0, 826, 823, 51, 43, 0, 0, 0, 0,
5383 0, 0, 0, 0, 141, 142, 143, 144, 145, 146,
5384 147, 148, 149, 150, 151, 152, 153, 154, 0, 176,
5385 177, 155, 156, 157, 0, 0, 0, 169, 170, 175,
5386 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
5387 437, 438, 439, 0, 0, 0, 0, 0, 0, 0,
5388 0, 0, 737, 0, 0, 0, 0, 0, 0, 185,
5389 186, 187, 0, 0, 70, 0, 205, 206, 207, 208,
5390 193, 0, 0, 0, 0, 0, 446, 447, 0, 0,
5391 0, 380, 0, 587, 0, 629, 0, 632, 633, 614,
5392 0, 0, 0, 0, 0, 0, 0, 648, 0, 0,
5393 531, 0, 0, 0, 542, 518, 0, 573, 574, 557,
5394 0, 0, 342, 794, 0, 0, 799, 0, 802, 803,
5395 0, 0, 810, 811, 0, 0, 0, 0, 774, 0,
5396 831, 825, 0, 0, 140, 0, 0, 0, 0, 215,
5397 179, 160, 161, 162, 163, 164, 159, 166, 168, 370,
5398 506, 545, 182, 184, 450, 40, 599, 601, 442, 443,
5399 444, 445, 441, 0, 48, 0, 0, 0, 636, 332,
5400 0, 0, 0, 0, 0, 0, 172, 174, 0, 0,
5401 53, 204, 577, 604, 428, 430, 432, 436, 434, 0,
5402 597, 628, 631, 674, 662, 664, 666, 668, 670, 672,
5403 534, 260, 538, 536, 541, 570, 348, 350, 796, 798,
5404 801, 806, 807, 805, 809, 813, 815, 817, 819, 215,
5405 44, 0, 0, 0, 247, 252, 254, 256, 0, 0,
5406 0, 0, 0, 0, 0, 0, 0, 0, 269, 0,
5407 276, 278, 280, 282, 246, 0, 222, 225, 226, 227,
5408 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
5409 239, 240, 241, 238, 242, 243, 244, 245, 0, 220,
5410 0, 216, 217, 375, 0, 371, 372, 511, 0, 507,
5411 508, 550, 0, 546, 547, 455, 0, 451, 452, 302,
5412 303, 0, 297, 300, 301, 0, 312, 313, 309, 0,
5413 306, 310, 311, 291, 293, 0, 286, 289, 290, 686,
5414 0, 683, 641, 0, 637, 638, 337, 0, 333, 334,
5415 0, 0, 0, 0, 0, 0, 0, 353, 356, 357,
5416 358, 359, 360, 361, 727, 733, 0, 0, 0, 726,
5417 723, 724, 725, 0, 715, 718, 721, 719, 720, 722,
5418 0, 0, 0, 326, 0, 318, 321, 322, 323, 324,
5419 325, 748, 750, 747, 745, 746, 0, 740, 743, 744,
5420 0, 764, 0, 767, 760, 761, 0, 754, 757, 758,
5421 759, 762, 0, 837, 0, 834, 0, 880, 0, 876,
5422 879, 55, 582, 0, 578, 579, 609, 0, 605, 606,
5423 679, 678, 0, 677, 0, 64, 821, 189, 0, 0,
5424 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5425 0, 0, 0, 0, 0, 0, 0, 0, 224, 210,
5426 212, 0, 214, 219, 0, 369, 374, 515, 503, 510,
5427 554, 544, 549, 0, 449, 454, 299, 296, 315, 308,
5428 305, 0, 0, 288, 285, 688, 685, 682, 645, 635,
5429 640, 0, 331, 336, 0, 0, 0, 0, 0, 0,
5430 355, 352, 0, 0, 0, 0, 0, 717, 714, 0,
5431 0, 0, 320, 317, 0, 0, 742, 739, 0, 0,
5432 0, 0, 756, 753, 770, 0, 836, 833, 0, 878,
5433 875, 57, 0, 56, 0, 576, 581, 0, 603, 608,
5434 0, 676, 830, 0, 0, 0, 0, 258, 261, 262,
5435 263, 264, 265, 266, 267, 275, 268, 0, 274, 0,
5436 0, 0, 0, 223, 0, 218, 0, 373, 0, 509,
5437 0, 548, 501, 474, 475, 476, 478, 479, 480, 464,
5438 465, 483, 484, 485, 486, 487, 490, 491, 492, 493,
5439 494, 495, 496, 497, 488, 489, 498, 499, 500, 460,
5440 461, 462, 463, 472, 473, 469, 470, 471, 468, 477,
5441 0, 457, 466, 481, 482, 467, 453, 298, 307, 0,
5442 0, 287, 708, 710, 0, 706, 700, 701, 702, 703,
5443 704, 705, 707, 697, 698, 699, 0, 689, 690, 693,
5444 694, 695, 696, 684, 0, 639, 0, 335, 362, 363,
5445 364, 365, 366, 367, 354, 0, 0, 732, 735, 736,
5446 716, 327, 328, 329, 319, 0, 0, 741, 763, 0,
5447 766, 0, 755, 852, 0, 850, 848, 842, 846, 847,
5448 0, 839, 844, 845, 843, 835, 881, 877, 54, 59,
5449 0, 580, 0, 607, 0, 249, 250, 251, 248, 253,
5450 255, 257, 271, 272, 273, 270, 277, 279, 281, 283,
5451 221, 376, 512, 551, 459, 456, 292, 294, 0, 0,
5452 0, 687, 692, 642, 338, 729, 730, 731, 728, 734,
5453 749, 751, 765, 768, 0, 0, 0, 841, 838, 58,
5454 583, 610, 680, 458, 0, 0, 712, 691, 0, 849,
5455 0, 840, 709, 711, 0, 851, 857, 0, 854, 0,
5456 856, 853, 867, 0, 0, 0, 872, 0, 859, 862,
5457 863, 864, 865, 866, 855, 0, 0, 0, 0, 0,
5458 861, 858, 0, 869, 870, 871, 0, 860, 868, 873
5462 Dhcp6Parser::yypgoto_[] =
5464 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5465 -1018, -1018, -1018, -1018, -1018, -1018, -10, -1018, -583, -1018,
5466 375, -1018, -1018, -1018, -1018, 352, -1018, -592, -1018, -1018,
5467 -1018, -71, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 385,
5468 581, -1018, -1018, -46, -43, -14, -13, 14, 15, -49,
5469 -24, 16, 29, 30, 33, 34, -1018, 37, 41, 44,
5470 47, -1018, 400, 48, -1018, 51, -1018, 54, 59, 62,
5471 -1018, 64, -1018, 65, -1018, -1018, -1018, -1018, -1018, 66,
5472 -1018, 69, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5473 389, 643, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5474 -1018, -1018, -1018, -1018, 322, -1018, 106, -1018, -716, 114,
5475 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5476 -41, -1018, -760, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5477 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5478 -1018, -1018, -1018, -1018, -1018, -1018, 87, -1018, -1018, -1018,
5479 -1018, -1018, -1018, -1018, 107, -742, -1018, -1018, -1018, -1018,
5480 108, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 74, -1018,
5481 -1018, -1018, -1018, -1018, -1018, -1018, 95, -1018, -1018, -1018,
5482 99, 588, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 91,
5483 -1018, -1018, -1018, -1018, -1018, -1018, -1017, -1018, -1018, -1018,
5484 131, -1018, -1018, -1018, 129, 645, -1018, -1018, -1015, -1018,
5485 -1014, -1018, 10, -1018, 80, -1018, 72, 76, 77, 79,
5486 -1018, -1018, -1018, -1008, -1018, -1018, -1018, -1018, 117, -1018,
5487 -1018, -116, 1092, -1018, -1018, -1018, -1018, -1018, 132, -1018,
5488 -1018, -1018, 133, -1018, 644, -1018, -62, -1018, -1018, -1018,
5489 -1018, -1018, -54, -1018, -1018, -1018, -1018, -1018, -42, -1018,
5490 -1018, -1018, 130, -1018, -1018, -1018, 134, -1018, 646, -1018,
5491 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5492 67, -1018, -1018, -1018, 71, 649, -1018, -1018, -60, -1018,
5493 -3, -1018, -1018, -1018, -1018, -1018, 82, -1018, -1018, -1018,
5494 85, 650, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -53,
5495 -1018, -1018, -1018, 121, -1018, -1018, -1018, 136, -1018, 647,
5496 397, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5497 -1018, -1018, -1018, -1018, -1007, -1018, -1018, -1018, -1018, -1018,
5498 -1018, -1018, 139, -1018, -1018, -1018, -96, -1018, -1018, -1018,
5499 -1018, -1018, -1018, -1018, -1018, -1018, 120, -1018, -1018, -1018,
5500 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 113,
5501 -1018, -1018, -1018, -1018, -1018, -1018, -1018, 109, -1018, -1018,
5502 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 428, 651,
5503 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5504 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5505 -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, 480,
5506 648, -1018, -1018, -1018, -1018, -1018, -1018, 115, -1018, -1018,
5507 -103, -1018, -1018, -1018, -1018, -1018, -1018, -125, -1018, -1018,
5508 -144, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018, -1018,
5513 Dhcp6Parser::yydefgoto_[] =
5515 0, 15, 16, 17, 18, 19, 20, 21, 22, 23,
5516 24, 25, 26, 27, 28, 29, 83, 39, 40, 69,
5517 756, 87, 88, 41, 68, 84, 85, 781, 991, 1102,
5518 1103, 844, 43, 70, 90, 444, 91, 45, 71, 160,
5519 161, 162, 447, 163, 164, 165, 166, 167, 168, 169,
5520 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
5521 180, 473, 746, 181, 474, 182, 475, 183, 184, 185,
5522 506, 186, 507, 187, 188, 189, 190, 467, 191, 192,
5523 483, 193, 484, 194, 195, 196, 197, 449, 47, 72,
5524 234, 235, 236, 516, 237, 238, 239, 240, 198, 450,
5525 199, 451, 200, 452, 870, 871, 872, 1031, 845, 846,
5526 847, 1008, 1268, 848, 1009, 849, 1010, 850, 1011, 851,
5527 852, 556, 853, 854, 855, 856, 857, 858, 859, 860,
5528 861, 1022, 1275, 862, 863, 864, 1024, 865, 1025, 866,
5529 1026, 867, 1027, 201, 495, 905, 906, 907, 1051, 908,
5530 1052, 202, 492, 891, 892, 893, 894, 203, 494, 899,
5531 900, 901, 902, 204, 493, 205, 502, 954, 955, 956,
5532 957, 958, 206, 498, 917, 918, 919, 1061, 63, 80,
5533 394, 395, 396, 569, 397, 570, 207, 499, 926, 927,
5534 928, 929, 930, 931, 932, 933, 208, 479, 874, 875,
5535 876, 1034, 49, 73, 280, 281, 282, 525, 283, 526,
5536 284, 527, 285, 531, 286, 530, 209, 210, 211, 212,
5537 488, 762, 291, 292, 213, 485, 886, 887, 888, 1043,
5538 1180, 1181, 214, 480, 57, 77, 878, 879, 880, 1037,
5539 59, 78, 359, 360, 361, 362, 363, 364, 365, 555,
5540 366, 559, 367, 558, 368, 369, 560, 370, 215, 481,
5541 882, 883, 884, 1040, 61, 79, 380, 381, 382, 383,
5542 384, 564, 385, 386, 387, 388, 294, 523, 993, 994,
5543 995, 1104, 51, 74, 305, 306, 307, 535, 216, 486,
5544 217, 487, 297, 524, 997, 998, 999, 1107, 53, 75,
5545 321, 322, 323, 538, 324, 325, 540, 326, 327, 218,
5546 497, 913, 914, 915, 1058, 55, 76, 339, 340, 341,
5547 342, 546, 343, 547, 344, 548, 345, 549, 346, 550,
5548 347, 551, 348, 545, 299, 532, 1002, 1003, 1110, 219,
5549 496, 910, 911, 1055, 1206, 1207, 1208, 1209, 1210, 1288,
5550 1211, 1289, 1212, 220, 500, 943, 944, 945, 1072, 1298,
5551 946, 947, 1073, 948, 949, 221, 222, 503, 966, 967,
5552 968, 1084, 969, 1085, 223, 504, 976, 977, 978, 979,
5553 1089, 980, 981, 1091, 224, 505, 65, 81, 416, 417,
5554 418, 419, 574, 420, 575, 421, 422, 577, 423, 424,
5555 425, 580, 813, 426, 581, 427, 428, 429, 584, 430,
5556 585, 431, 586, 432, 587, 225, 448, 67, 82, 435,
5557 436, 437, 590, 438, 226, 511, 984, 985, 1095, 1250,
5558 1251, 1252, 1253, 1306, 1254, 1304, 1327, 1328, 1329, 1337,
5559 1338, 1339, 1345, 1340, 1341, 1342, 1343, 1349, 227, 512,
5564 Dhcp6Parser::yytable_[] =
5566 159, 233, 253, 301, 315, 335, 38, 357, 376, 393,
5567 413, 940, 241, 295, 308, 319, 337, 378, 371, 389,
5568 298, 414, 868, 898, 260, 379, 1170, 254, 1171, 1172,
5569 255, 293, 304, 318, 336, 1179, 1185, 358, 377, 889,
5570 31, 329, 32, 351, 33, 391, 392, 986, 1000, 261,
5571 811, 812, 445, 514, 755, 131, 132, 446, 515, 256,
5572 257, 521, 158, 42, 131, 132, 522, 391, 392, 242,
5573 296, 309, 320, 338, 126, 372, 390, 44, 415, 228,
5574 229, 230, 231, 232, 302, 316, 787, 258, 259, 262,
5575 30, 310, 311, 312, 313, 314, 131, 132, 793, 794,
5576 795, 46, 263, 264, 533, 48, 265, 266, 536, 534,
5577 267, 50, 350, 537, 268, 961, 962, 269, 250, 52,
5578 270, 271, 251, 54, 272, 158, 890, 273, 755, 543,
5579 1046, 571, 274, 1047, 544, 275, 572, 276, 277, 278,
5580 131, 132, 279, 588, 1049, 287, 592, 1050, 589, 288,
5581 289, 593, 290, 514, 303, 317, 126, 1243, 1005, 1244,
5582 1245, 592, 1056, 131, 132, 1057, 1006, 351, 56, 352,
5583 353, 521, 158, 354, 355, 356, 1007, 1028, 131, 132,
5584 1028, 158, 1029, 92, 93, 1030, 1053, 94, 131, 132,
5585 86, 1054, 58, 95, 96, 97, 950, 951, 952, 328,
5586 920, 921, 922, 923, 924, 925, 329, 330, 331, 332,
5587 333, 334, 60, 158, 741, 742, 743, 744, 758, 759,
5588 760, 761, 98, 99, 100, 101, 102, 103, 104, 105,
5589 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
5590 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
5591 126, 745, 34, 35, 36, 37, 62, 158, 64, 1070,
5592 127, 128, 129, 130, 1071, 1096, 1077, 1170, 1097, 1171,
5593 1172, 1078, 131, 132, 934, 66, 1179, 1185, 1082, 133,
5594 158, 126, 829, 1083, 134, 135, 136, 137, 138, 139,
5595 140, 1330, 1086, 141, 1331, 158, 300, 1087, 125, 142,
5596 439, 1092, 89, 131, 132, 158, 1093, 898, 143, 588,
5597 440, 144, 433, 434, 1094, 1134, 1332, 940, 145, 1333,
5598 1334, 1335, 1336, 1099, 442, 250, 146, 147, 1100, 251,
5599 441, 148, 1028, 443, 149, 903, 904, 1280, 150, 453,
5600 98, 99, 100, 101, 102, 103, 454, 533, 552, 455,
5601 131, 132, 1281, 131, 132, 889, 896, 456, 897, 151,
5602 152, 153, 154, 155, 156, 1284, 553, 571, 126, 351,
5603 1285, 824, 1294, 157, 457, 825, 826, 827, 828, 829,
5604 830, 831, 832, 833, 834, 835, 836, 837, 838, 158,
5605 131, 132, 839, 840, 841, 842, 843, 458, 459, 1307,
5606 935, 936, 937, 938, 1308, 460, 351, 373, 352, 353,
5607 374, 375, 461, 1192, 1193, 1194, 970, 971, 972, 536,
5608 158, 1272, 1273, 1274, 1310, 462, 351, 131, 132, 543,
5609 594, 595, 1350, 554, 1311, 463, 464, 1351, 1265, 1266,
5610 1267, 465, 466, 159, 1295, 1296, 1297, 562, 468, 469,
5611 233, 470, 471, 472, 476, 477, 478, 482, 489, 490,
5612 491, 241, 253, 501, 508, 301, 509, 158, 510, 513,
5613 973, 517, 315, 295, 518, 519, 308, 520, 528, 529,
5614 298, 539, 335, 319, 260, 541, 542, 254, 557, 561,
5615 255, 293, 357, 337, 304, 563, 567, 376, 565, 566,
5616 568, 318, 573, 371, 576, 578, 378, 158, 389, 261,
5617 579, 336, 582, 583, 379, 591, 597, 413, 242, 256,
5618 257, 596, 358, 598, 599, 600, 601, 377, 414, 602,
5619 296, 603, 604, 309, 613, 605, 606, 607, 618, 608,
5620 320, 609, 610, 611, 158, 624, 302, 258, 259, 262,
5621 338, 612, 614, 316, 621, 615, 616, 131, 132, 617,
5622 372, 619, 263, 264, 158, 390, 265, 266, 620, 622,
5623 267, 623, 625, 626, 268, 627, 628, 269, 629, 630,
5624 270, 271, 631, 632, 272, 415, 633, 273, 634, 635,
5625 636, 637, 274, 638, 639, 275, 640, 276, 277, 278,
5626 641, 642, 279, 643, 644, 287, 645, 646, 647, 288,
5627 289, 648, 290, 649, 650, 651, 303, 652, 653, 654,
5628 655, 656, 657, 317, 398, 399, 400,