From 6f616f2e1e28657d571166789322da326efa372c Mon Sep 17 00:00:00 2001 From: Sam Date: Thu, 7 Nov 2019 23:09:09 +0000 Subject: [PATCH] Add support for anonymous Sequence members --- 3rd_party/abseil-cpp | 2 +- include/fast_ber/compiler/CompilerTypes.hpp | 2 + src/compiler/CompilerTypes.cpp | 6 + src/compiler/asn_compiler.yacc | 8 +- src/compiler/autogen_copy/asn_compiler.hpp | 2733 ++++++++++--------- test/CMakeLists.txt | 6 +- test/compiler/Anonymous.cpp | 10 + testfiles/anonymous_members.asn | 15 + testfiles/defaults.asn | 14 + 9 files changed, 1520 insertions(+), 1276 deletions(-) create mode 100644 test/compiler/Anonymous.cpp create mode 100644 testfiles/anonymous_members.asn create mode 100644 testfiles/defaults.asn diff --git a/3rd_party/abseil-cpp b/3rd_party/abseil-cpp index 9a41ffdd..846e5dbe 160000 --- a/3rd_party/abseil-cpp +++ b/3rd_party/abseil-cpp @@ -1 +1 @@ -Subproject commit 9a41ffdd3a0ccbcdd29c4e3886b28e06f2cd9c66 +Subproject commit 846e5dbedac123d12455adcfe6f53c8b5dcbfeef diff --git a/include/fast_ber/compiler/CompilerTypes.hpp b/include/fast_ber/compiler/CompilerTypes.hpp index d682ac7a..e1861603 100644 --- a/include/fast_ber/compiler/CompilerTypes.hpp +++ b/include/fast_ber/compiler/CompilerTypes.hpp @@ -491,3 +491,5 @@ bool is_oid(const Type& type); bool is_defined(const Type& type); struct Context; + +std::string gen_anon_member_name(); diff --git a/src/compiler/CompilerTypes.cpp b/src/compiler/CompilerTypes.cpp index 036bf8c0..46a6c0fa 100644 --- a/src/compiler/CompilerTypes.cpp +++ b/src/compiler/CompilerTypes.cpp @@ -292,3 +292,9 @@ bool is_oid(const Type& type) } bool is_defined(const Type& type) { return absl::holds_alternative(type); } + +std::string gen_anon_member_name() +{ + static size_t count = 0; + return "anonymous_member_" + std::to_string(count++); +} diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 4be098c8..9dfbe10f 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -1227,7 +1227,13 @@ ComponentTypeList: { $1.push_back($3); $$ = $1; } ComponentType: - NamedType + Type + { $$ = ComponentType{{gen_anon_member_name(), $1}, false, absl::nullopt, absl::nullopt}; } +| Type OPTIONAL + { $$ = ComponentType{{gen_anon_member_name(), $1}, true, absl::nullopt, absl::nullopt}; } +| Type DEFAULT SingleValue + { $$ = ComponentType{{gen_anon_member_name(), $1}, false, $3, absl::nullopt}; } +| NamedType { $$ = ComponentType{$1, false, absl::nullopt, absl::nullopt}; } | NamedType OPTIONAL { $$ = ComponentType{$1, true, absl::nullopt, absl::nullopt}; } diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index f52257b5..0b6e0bb9 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -4953,7 +4953,7 @@ switch (yytype) enum { yyeof_ = 0, - yylast_ = 3992, ///< Last index in yytable_. + yylast_ = 4825, ///< Last index in yytable_. yynnts_ = 226, ///< Number of nonterminal symbols. yyfinal_ = 6, ///< Termination state number. yyterror_ = 1, @@ -8933,420 +8933,438 @@ namespace yy { case 328: #line 1231 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ComponentType > () = ComponentType{yystack_[0].value.as < NamedType > (), false, absl::nullopt, absl::nullopt}; } + { yylhs.value.as < ComponentType > () = ComponentType{{gen_anon_member_name(), yystack_[0].value.as < Type > ()}, false, absl::nullopt, absl::nullopt}; } #line 8936 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 329: #line 1233 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ComponentType > () = ComponentType{yystack_[1].value.as < NamedType > (), true, absl::nullopt, absl::nullopt}; } + { yylhs.value.as < ComponentType > () = ComponentType{{gen_anon_member_name(), yystack_[1].value.as < Type > ()}, true, absl::nullopt, absl::nullopt}; } #line 8942 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 330: #line 1235 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ComponentType > () = ComponentType{yystack_[2].value.as < NamedType > (), false, yystack_[0].value.as < Value > (), absl::nullopt}; } + { yylhs.value.as < ComponentType > () = ComponentType{{gen_anon_member_name(), yystack_[2].value.as < Type > ()}, false, yystack_[0].value.as < Value > (), absl::nullopt}; } #line 8948 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 331: #line 1237 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ComponentType > () = ComponentType{{}, false, absl::nullopt, yystack_[0].value.as < Type > ()}; } + { yylhs.value.as < ComponentType > () = ComponentType{yystack_[0].value.as < NamedType > (), false, absl::nullopt, absl::nullopt}; } #line 8954 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 332: -#line 1249 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < SequenceOfType > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } +#line 1239 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ComponentType > () = ComponentType{yystack_[1].value.as < NamedType > (), true, absl::nullopt, absl::nullopt}; } #line 8960 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 333: -#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < SequenceOfType > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } +#line 1241 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ComponentType > () = ComponentType{yystack_[2].value.as < NamedType > (), false, yystack_[0].value.as < Value > (), absl::nullopt}; } #line 8966 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 334: -#line 1255 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < SetType > () = SetType{}; } +#line 1243 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ComponentType > () = ComponentType{{}, false, absl::nullopt, yystack_[0].value.as < Type > ()}; } #line 8972 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 335: -#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < SetType > () = SetType{yystack_[1].value.as < ComponentTypeList > ()}; } +#line 1255 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < SequenceOfType > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } #line 8978 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 336: -#line 1261 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < SetOfType > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } +#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < SequenceOfType > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } #line 8984 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 337: -#line 1263 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < SetOfType > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } +#line 1261 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < SetType > () = SetType{}; } #line 8990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 338: -#line 1267 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ChoiceType > () = ChoiceType{ yystack_[1].value.as < std::vector > () }; } +#line 1263 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < SetType > () = SetType{yystack_[1].value.as < ComponentTypeList > ()}; } #line 8996 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 339: -#line 1271 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::vector > () = yystack_[0].value.as < std::vector > (); } +#line 1267 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < SetOfType > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } #line 9002 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 340: -#line 1275 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::vector > () = yystack_[0].value.as < std::vector > (); } +#line 1269 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < SetOfType > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } #line 9008 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 341: -#line 1277 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::vector > () = yystack_[2].value.as < std::vector > (); } +#line 1273 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ChoiceType > () = ChoiceType{ yystack_[1].value.as < std::vector > () }; } #line 9014 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 342: -#line 1279 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::vector > () = yystack_[4].value.as < std::vector > (); yylhs.value.as < std::vector > ().insert(yylhs.value.as < std::vector > ().begin(), yystack_[0].value.as < std::vector > ().begin(), yystack_[0].value.as < std::vector > ().end()); } +#line 1277 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::vector > () = yystack_[0].value.as < std::vector > (); } #line 9020 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 343: -#line 1283 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::vector > () = std::vector { yystack_[0].value.as < NamedType > () }; } +#line 1281 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::vector > () = yystack_[0].value.as < std::vector > (); } #line 9026 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 344: -#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yystack_[2].value.as < std::vector > ().push_back( yystack_[0].value.as < NamedType > () ); yylhs.value.as < std::vector > () = yystack_[2].value.as < std::vector > (); } +#line 1283 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::vector > () = yystack_[2].value.as < std::vector > (); } #line 9032 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 346: -#line 1295 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < PrefixedType > () = PrefixedType(yystack_[0].value.as < TaggedType > ()); } + case 345: +#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::vector > () = yystack_[4].value.as < std::vector > (); yylhs.value.as < std::vector > ().insert(yylhs.value.as < std::vector > ().begin(), yystack_[0].value.as < std::vector > ().begin(), yystack_[0].value.as < std::vector > ().end()); } #line 9038 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 347: -#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < TaggedType > () = TaggedType{ yystack_[1].value.as < Tag > (), TaggingMode::automatic, yystack_[0].value.as < Type > () }; } + case 346: +#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::vector > () = std::vector { yystack_[0].value.as < NamedType > () }; } #line 9044 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 348: -#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < TaggedType > () = TaggedType{ yystack_[2].value.as < Tag > (), TaggingMode::implicit, yystack_[0].value.as < Type > () }; } + case 347: +#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yystack_[2].value.as < std::vector > ().push_back( yystack_[0].value.as < NamedType > () ); yylhs.value.as < std::vector > () = yystack_[2].value.as < std::vector > (); } #line 9050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 349: -#line 1303 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < TaggedType > () = TaggedType{ yystack_[2].value.as < Tag > (), TaggingMode::explicit_, yystack_[0].value.as < Type > () }; } +#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < PrefixedType > () = PrefixedType(yystack_[0].value.as < TaggedType > ()); } #line 9056 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 350: -#line 1307 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Tag > () = Tag{ yystack_[2].value.as < Class > (), yystack_[1].value.as < int > () }; } +#line 1305 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < TaggedType > () = TaggedType{ yystack_[1].value.as < Tag > (), TaggingMode::automatic, yystack_[0].value.as < Type > () }; } #line 9062 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 353: -#line 1315 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < int > () = yystack_[0].value.as < long long > (); } + case 351: +#line 1307 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < TaggedType > () = TaggedType{ yystack_[2].value.as < Tag > (), TaggingMode::implicit, yystack_[0].value.as < Type > () }; } #line 9068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 355: -#line 1320 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Class > () = Class::universal; } + case 352: +#line 1309 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < TaggedType > () = TaggedType{ yystack_[2].value.as < Tag > (), TaggingMode::explicit_, yystack_[0].value.as < Type > () }; } #line 9074 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 356: -#line 1322 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Class > () = Class::application; } + case 353: +#line 1313 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < Tag > () = Tag{ yystack_[2].value.as < Class > (), yystack_[1].value.as < int > () }; } #line 9080 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 357: -#line 1324 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Class > () = Class::private_; } + case 356: +#line 1321 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < int > () = yystack_[0].value.as < long long > (); } #line 9086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 358: #line 1326 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Class > () = Class::context_specific; } + { yylhs.value.as < Class > () = Class::universal; } #line 9092 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 360: -#line 1339 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::vector > () = yystack_[1].value.as < std::vector > (); std::reverse(yylhs.value.as < std::vector > ().begin(), yylhs.value.as < std::vector > ().end()); } + case 359: +#line 1328 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < Class > () = Class::application; } #line 9098 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 361: -#line 1341 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::vector > () = yystack_[1].value.as < std::vector > (); std::reverse(yylhs.value.as < std::vector > ().begin(), yylhs.value.as < std::vector > ().end()); } + case 360: +#line 1330 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < Class > () = Class::private_; } #line 9104 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 362: -#line 1345 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::vector > ().push_back(yystack_[0].value.as < ObjectIdComponentValue > ()); } + case 361: +#line 1332 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < Class > () = Class::context_specific; } #line 9110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 363: -#line 1347 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::vector > () = yystack_[0].value.as < std::vector > (); yylhs.value.as < std::vector > ().push_back(yystack_[1].value.as < ObjectIdComponentValue > ()); } +#line 1345 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::vector > () = yystack_[1].value.as < std::vector > (); std::reverse(yylhs.value.as < std::vector > ().begin(), yylhs.value.as < std::vector > ().end()); } #line 9116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 364: -#line 1351 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ObjectIdComponentValue > () = yystack_[0].value.as < ObjectIdComponentValue > (); } +#line 1347 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::vector > () = yystack_[1].value.as < std::vector > (); std::reverse(yylhs.value.as < std::vector > ().begin(), yylhs.value.as < std::vector > ().end()); } #line 9122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 365: -#line 1353 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ObjectIdComponentValue > () = yystack_[0].value.as < ObjectIdComponentValue > (); } +#line 1351 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::vector > ().push_back(yystack_[0].value.as < ObjectIdComponentValue > ()); } #line 9128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 366: -#line 1355 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ObjectIdComponentValue > () = yystack_[0].value.as < ObjectIdComponentValue > (); } +#line 1353 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::vector > () = yystack_[0].value.as < std::vector > (); yylhs.value.as < std::vector > ().push_back(yystack_[1].value.as < ObjectIdComponentValue > ()); } #line 9134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 367: -#line 1359 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ObjectIdComponentValue > ().name = yystack_[0].value.as < std::string > (); } +#line 1357 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ObjectIdComponentValue > () = yystack_[0].value.as < ObjectIdComponentValue > (); } #line 9140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 368: -#line 1363 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ObjectIdComponentValue > ().value = yystack_[0].value.as < long long > (); } +#line 1359 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ObjectIdComponentValue > () = yystack_[0].value.as < ObjectIdComponentValue > (); } #line 9146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 370: -#line 1368 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < ObjectIdComponentValue > () = yystack_[1].value.as < ObjectIdComponentValue > (); yylhs.value.as < ObjectIdComponentValue > ().name = yystack_[3].value.as < std::string > (); } + case 369: +#line 1361 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ObjectIdComponentValue > () = yystack_[0].value.as < ObjectIdComponentValue > (); } #line 9152 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 388: -#line 1441 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = yystack_[0].value.as < CharacterStringType > (); } + case 370: +#line 1365 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ObjectIdComponentValue > ().name = yystack_[0].value.as < std::string > (); } #line 9158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 389: -#line 1443 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = yystack_[0].value.as < CharacterStringType > (); } + case 371: +#line 1369 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ObjectIdComponentValue > ().value = yystack_[0].value.as < long long > (); } #line 9164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 390: -#line 1447 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::bmp_string; } + case 373: +#line 1374 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < ObjectIdComponentValue > () = yystack_[1].value.as < ObjectIdComponentValue > (); yylhs.value.as < ObjectIdComponentValue > ().name = yystack_[3].value.as < std::string > (); } #line 9170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 391: -#line 1449 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::general_string; } +#line 1447 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < CharacterStringType > () = yystack_[0].value.as < CharacterStringType > (); } #line 9176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 392: -#line 1451 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::graphic_string; } +#line 1449 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < CharacterStringType > () = yystack_[0].value.as < CharacterStringType > (); } #line 9182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 393: #line 1453 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::ia5_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::bmp_string; } #line 9188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 394: #line 1455 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::iso646_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::general_string; } #line 9194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 395: #line 1457 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::numeric_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::graphic_string; } #line 9200 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 396: #line 1459 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::printable_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::ia5_string; } #line 9206 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 397: #line 1461 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::teletex_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::iso646_string; } #line 9212 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 398: #line 1463 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::t61_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::numeric_string; } #line 9218 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 399: #line 1465 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::universal_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::printable_string; } #line 9224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 400: #line 1467 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::utf8_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::teletex_string; } #line 9230 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 401: #line 1469 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::videotex_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::t61_string; } #line 9236 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 402: #line 1471 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::visible_string; } + { yylhs.value.as < CharacterStringType > () = CharacterStringType::universal_string; } #line 9242 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 403: -#line 1475 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < CharacterStringType > () = CharacterStringType::character_string; } +#line 1473 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < CharacterStringType > () = CharacterStringType::utf8_string; } #line 9248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 404: -#line 1479 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = yystack_[1].value.as < Type > (); } +#line 1475 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < CharacterStringType > () = CharacterStringType::videotex_string; } #line 9254 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 405: -#line 1481 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = yystack_[0].value.as < Type > (); } +#line 1477 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < CharacterStringType > () = CharacterStringType::visible_string; } #line 9260 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 406: -#line 1485 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } +#line 1481 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < CharacterStringType > () = CharacterStringType::character_string; } #line 9266 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 407: -#line 1487 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } +#line 1485 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < Type > () = yystack_[1].value.as < Type > (); } #line 9272 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 408: -#line 1489 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } +#line 1487 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < Type > () = yystack_[0].value.as < Type > (); } #line 9278 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 409: #line 1491 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } + { yylhs.value.as < Type > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } #line 9284 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 410: #line 1493 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } + { yylhs.value.as < Type > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } #line 9290 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 411: #line 1495 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } + { yylhs.value.as < Type > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } #line 9296 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 412: #line 1497 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } + { yylhs.value.as < Type > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as < Type > ())) }; } #line 9302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 413: #line 1499 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < Type > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } + { yylhs.value.as < Type > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } #line 9308 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 496: -#line 1667 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::string > () = yystack_[0].value.as < std::string > (); } + case 414: +#line 1501 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < Type > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } #line 9314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 497: -#line 1671 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::string > () = yystack_[0].value.as < std::string > (); } + case 415: +#line 1503 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < Type > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } #line 9320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; - case 498: -#line 1675 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 - { yylhs.value.as < std::string > () = yystack_[0].value.as < std::string > (); } + case 416: +#line 1505 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < Type > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as < NamedType > ())), nullptr }; } #line 9326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 499: -#line 1679 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 +#line 1673 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 { yylhs.value.as < std::string > () = yystack_[0].value.as < std::string > (); } #line 9332 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 500: -#line 1683 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 +#line 1677 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 { yylhs.value.as < std::string > () = yystack_[0].value.as < std::string > (); } #line 9338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; case 501: -#line 1686 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 +#line 1681 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 { yylhs.value.as < std::string > () = yystack_[0].value.as < std::string > (); } #line 9344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 break; + case 502: +#line 1685 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::string > () = yystack_[0].value.as < std::string > (); } +#line 9350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 + break; + + case 503: +#line 1689 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::string > () = yystack_[0].value.as < std::string > (); } +#line 9356 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 + break; -#line 9348 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 + case 504: +#line 1692 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:919 + { yylhs.value.as < std::string > () = yystack_[0].value.as < std::string > (); } +#line 9362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 + break; + + +#line 9366 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:919 default: break; } @@ -9616,570 +9634,544 @@ namespace yy { } - const short asn1_parser::yypact_ninf_ = -658; + const short asn1_parser::yypact_ninf_ = -791; - const short asn1_parser::yytable_ninf_ = -501; + const short asn1_parser::yytable_ninf_ = -504; const short asn1_parser::yypact_[] = { - -46, -658, 169, -46, 133, 85, -658, -658, 249, 38, - -658, 153, -658, 230, 197, -658, -658, 268, 38, -658, - -658, -658, 185, 231, -658, -658, 262, 270, 276, 351, - -658, -658, 411, 70, 293, -658, -658, -658, 383, 326, - 335, -658, -658, -658, 70, 341, -658, 446, -658, 293, - -658, 244, -658, 25, -658, 412, 343, -658, -658, 344, - 346, -658, -658, 364, -658, 433, 95, 95, -658, -658, - 95, 365, -658, 350, 95, -658, -5, -658, -658, -658, - -658, -658, -658, -658, -658, 95, -658, -658, -658, 2192, - 2493, -658, -658, -658, -658, -46, -658, -658, -658, -658, - -658, 391, -658, -658, 392, 375, -658, -658, -658, 409, - 379, -658, -658, -658, -658, -658, 419, 384, -658, -658, - 440, -658, 408, -658, -658, -658, -658, -658, -25, 13, - -658, -658, -658, -658, -658, -658, -658, -658, -658, -658, - 2592, 2992, 499, -658, 378, -658, -658, 396, -658, -658, - 2691, 380, -658, -658, 397, -658, -658, 398, -1, -658, - -658, -658, -658, -658, -658, -658, -658, -658, -658, -658, - -658, -658, -658, -658, -658, 2295, -658, -658, -658, -658, - -658, -658, -658, -658, -658, -658, -658, -658, -658, -658, - -658, -658, 228, 394, 387, 3091, 121, 156, 388, -658, - 126, 404, -658, 382, -658, -58, 46, 382, -658, -658, - 3091, 403, -4, 1180, 443, 447, 3091, 40, 449, 456, - 423, -658, -658, -658, 378, -658, -658, 403, 410, -658, - 243, -658, -35, -658, 414, -658, 416, 403, 136, 420, - 19, 413, 425, 2592, 180, 413, 1436, 426, -658, 3091, - 3091, 403, 21, 3091, 14, 227, 2132, 529, 23, -658, - -658, -658, 382, -658, 427, -658, 421, 3091, 422, -658, - 435, 430, -658, 437, 431, -658, -658, 432, 159, -658, - 437, 403, -658, 2794, -658, 477, 422, -658, 7, 448, - 434, -658, -658, -658, -658, -658, -658, -658, -658, 510, - 172, 532, 3091, 535, -658, 403, -658, -658, 2132, 563, - -658, 106, 1305, 1561, 218, -658, 461, -658, -658, -658, - -658, 403, -658, -658, -658, 422, -658, -658, 450, -34, - -32, -27, -2, -658, 510, 528, -658, 205, -658, 3091, - -658, 465, 459, -658, -658, -658, -658, -658, -658, 3091, - 3091, 403, -658, -658, 466, 3091, 3091, 376, 31, -658, - 2992, 95, -658, -658, -658, -658, 28, -658, -658, -658, - 454, -658, -658, 403, 2132, 454, -658, -658, -658, -658, - -658, -658, 467, -658, 2132, 347, -658, -658, 2132, -658, - 251, 225, -658, 451, 470, -658, -658, 472, 458, -658, - 403, 246, 257, 462, 453, -658, -658, -658, -658, 161, - 463, 1561, -658, 403, 403, 454, -658, 403, -658, -658, - 2132, -658, -658, 165, 474, -658, -658, 257, 468, 469, - -658, 23, 478, 23, -658, -658, -658, 479, 480, 184, - -658, 482, -658, -33, 403, 1916, -658, -658, 93, 43, - 464, -658, 382, 3091, 473, 309, -658, -658, 84, 1817, - -658, 487, 1, 2132, -658, 257, -658, 403, 490, 481, - 492, 483, 488, 491, 495, 502, -658, -658, 1817, -658, - -658, 1817, -658, 403, 721, -658, 403, -658, 403, -658, - -658, 403, -658, 403, -658, 3190, 2394, 46, 213, -658, - -658, 181, -658, -658, -658, -658, -658, -658, -658, -658, - -658, -658, -658, 496, 413, 257, 257, 257, 2034, 627, - 1436, -658, 1436, 2132, 2132, 2132, 2132, 2132, 417, 18, - 507, 257, 413, 486, -658, 512, -658, -658, 75, -658, - 382, 78, 501, -658, -658, -55, -658, -658, 504, 422, - -658, 513, 517, -658, 403, 91, -658, -658, -658, -658, - 422, -658, -658, 2893, 599, 257, -658, -658, 147, -658, - 1561, -658, 523, -658, 207, 236, -658, -658, 511, -27, - -658, -658, 61, -658, -658, -658, 168, -29, 151, -29, - 179, 527, 376, -658, 3091, -658, -658, -658, -658, -658, - 257, 525, 530, -658, 257, 257, 257, 257, 257, -658, - -658, -658, -658, -658, 526, -658, 537, 538, 382, 2132, - 4, 520, -658, -658, -658, 533, 536, -658, 547, -658, - 539, 549, 331, 516, 2132, 237, 551, 544, 403, -658, - 546, 548, 554, -658, -658, 491, 1561, -658, 36, -658, - -658, -658, -658, 186, 189, 189, -658, -658, -658, 585, - -658, -658, 403, -658, -658, -658, -658, -658, 556, 257, - 382, 116, 16, 2066, -658, 32, 257, -658, 382, -658, - 382, -658, -658, 188, 1561, 548, 382, 382, -658, -658, - 1055, -658, -658, -658, -658, -658, 426, -658, -658, 309, - -658, -658, -658, 570, 382, 559, -658, 560, 1055, -658, - 257, 557, 574, -658, -658, -658, -658, -658, -658, -658, - 554, -658, 3759, 3847, -658, 562, -658, -658, 467, -658, - -658, 391, -658, -658, -658, 392, 375, -658, -658, -658, - -658, 2132, -658, -658, -658, -658, -658, 409, -658, -658, - -658, 379, -658, -658, -658, -658, -658, -658, -658, -658, - -658, -658, -658, -658, 419, -658, 281, -658, -658, -658, - -658, -658, 440, 408, -658, -658, -658, -658, -658, -658, - -658, -658, -658, -658, -658, -25, 13, -658, -658, -658, - -658, -658, -658, -658, -658, 564, -658, -658, -658, -658, - -658, 165, 1692, -658, 566, 908, -658, -658, 403, 257, - -658, -658, -658, 3663, -658, 382, 157, 257, -658, -658, - 553, -658, -658, -658, -658, -658, -658, -658, -658, -658, - -658, -658, -658, -658, -658, -658, -658, -658, -658, -658, - -658, -658, -658, -658, -658, -658, -658, -658, -658, -658, - -658, -658, -658, -658, -658, 3663, -658, 3429, -658, -658, - -658, 3312, -658, 569, 582, 3546, -658, -658, -658, -658, - 16, -658, -658, 571, 16 + -76, -791, 89, -76, 54, 44, -791, -791, 135, 32, + -791, 86, -791, 111, 94, -791, -791, 97, 32, -791, + -791, -791, 117, 146, -791, -791, 196, 219, 229, 258, + -791, -791, 341, 336, 211, -791, -791, -791, 288, 244, + 242, -791, -791, -791, 336, 239, -791, 342, -791, 211, + -791, 210, -791, 13, -791, 308, 247, -791, -791, 256, + 249, -791, -791, 279, -791, 355, 224, 224, -791, -791, + 224, 291, -791, 276, 224, -791, -4, -791, -791, -791, + -791, -791, -791, -791, -791, 224, -791, -791, -791, 2530, + 3227, -791, -791, -791, -791, -76, -791, -791, -791, -791, + -791, 316, -791, -791, 317, 297, -791, -791, -791, 333, + 298, -791, -791, -791, -791, -791, 339, 304, -791, -791, + 362, -791, 335, -791, -791, -791, -791, -791, -25, -24, + -791, -791, -791, -791, -791, -791, -791, -791, -791, -791, + 3326, 3825, 423, -791, 303, -791, -791, 322, -791, -791, + 3425, 307, -791, -791, 324, -791, -791, 326, 33, -791, + -791, -791, -791, -791, -791, -791, -791, -791, -791, -791, + -791, -791, -791, -791, -791, 2633, -791, -791, -791, -791, + -791, -791, -791, -791, -791, -791, -791, -791, -791, -791, + -791, -791, 114, 323, 318, 3924, 74, 91, 319, -791, + -57, 330, -791, 296, -791, 43, 9, 296, -791, -791, + 3924, 329, 2332, 1340, 371, 372, 3924, 2431, 375, 377, + 344, -791, -791, -791, 303, -791, -791, 329, 334, -791, + 109, -791, 123, -791, 328, -791, 332, 329, 12, 345, + 17, 331, 347, 3326, 116, 331, 1596, 350, -791, 3924, + 3924, 329, 24, 3924, -1, 194, 2226, 458, 22, -791, + -791, -791, 296, -791, 357, -791, 346, 3924, 356, -791, + 366, 359, -791, 367, 354, -791, -791, 360, 144, -791, + 367, 329, -791, 3528, -791, 407, 356, -791, 6, 18, + 376, 365, -791, -791, -791, -791, -791, -791, -791, -791, + 447, 76, 466, 3924, 469, -791, 329, -791, -791, 2226, + 497, -791, 352, 1465, 1721, 130, -791, 388, -791, -791, + -791, -791, 329, -791, -791, -791, 356, -791, -791, 379, + -27, -20, -22, -18, -791, 447, 456, -791, 181, -791, + 3924, -791, 394, 389, -791, -791, -791, -791, -791, -791, + 3924, 3924, 329, -791, -791, 393, 3924, 3924, 275, 25, + -791, 3825, 224, -791, -791, -791, -791, 31, -791, -791, + -791, 384, -791, -791, 329, 2226, 384, -791, -791, -791, + -791, -791, -791, 397, -791, 2226, 213, -791, -791, 2226, + -791, 164, 187, -791, 380, 400, -791, -791, 401, 390, + -791, 329, 186, 173, 391, 385, -791, -791, -791, -791, + 140, 395, 1721, -791, 329, 329, 384, -791, 329, -791, + -791, 2226, -791, -791, 139, 403, -791, -791, 173, 399, + 408, -791, 22, 406, 22, -791, -791, -791, 409, 415, + 147, -791, 421, -791, 62, 329, 2076, -791, -791, 70, + 27, 404, -791, 296, 3924, 411, 77, -791, 77, -791, + -791, 2732, 1977, -791, 428, 11, 2226, -791, 173, -791, + 329, 431, 427, 433, 429, 443, 416, 445, 453, -791, + -791, 1977, -791, -791, 1977, -791, 329, 725, -791, 329, + -791, 329, -791, -791, 329, -791, 329, -791, 4023, 2831, + 9, 150, -791, -791, 37, -791, -791, -791, -791, -791, + -791, -791, -791, -791, -791, -791, 448, 331, 173, 173, + 173, 838, 572, 1596, -791, 1596, 2226, 2226, 2226, 2226, + 2226, 382, -3, 454, 173, 331, 430, -791, 461, -791, + -791, 39, -791, 296, 41, 444, -791, -791, 4, -791, + -791, 449, 356, -791, 462, 463, -791, 329, 2930, -791, + -791, -791, -791, -791, 356, -791, -791, 3627, 543, 173, + -791, -791, 80, -791, 1721, -791, 471, -791, 59, 155, + -791, -791, 451, -22, -791, -791, 932, -791, -791, -791, + 30, -17, -15, -17, 53, 474, 275, -791, 3924, -791, + -791, -791, -791, -791, 173, 468, 475, -791, 173, 173, + 173, 173, 173, -791, -791, -791, -791, -791, 472, -791, + 476, 477, 296, 2226, 16, 459, -791, -791, -791, 464, + 465, -791, 480, -791, 470, 481, 284, 479, 2226, 158, + 485, 478, 329, -791, 482, 483, 484, -791, -791, 416, + 1721, -791, 20, -791, -791, -791, -791, 71, 72, 72, + -791, -791, -791, 510, -791, -791, 329, -791, -791, -791, + -791, -791, 486, 173, 296, 3029, 3726, 2194, -791, 29, + 173, -791, 296, -791, 296, -791, -791, 46, 1721, 483, + 296, 296, -791, -791, 1215, -791, -791, -791, -791, -791, + 350, -791, -791, 77, -791, -791, -791, 494, 296, 488, + -791, 490, 1215, -791, 173, 487, 495, -791, -791, -791, + -791, -791, -791, -791, 484, -791, 4592, 4680, -791, 491, + -791, -791, 397, -791, -791, 316, -791, -791, -791, 317, + 297, -791, -791, -791, -791, 2226, -791, -791, -791, -791, + -791, 333, -791, -791, -791, 298, -791, -791, -791, -791, + -791, -791, -791, -791, -791, -791, -791, -791, 339, -791, + 206, -791, -791, -791, -791, -791, 362, 335, -791, -791, + -791, -791, -791, -791, -791, -791, -791, -791, -791, -25, + -24, -791, -791, -791, -791, -791, -791, -791, -791, 493, + -791, -791, -791, -791, -791, 139, 1852, -791, 496, 1068, + -791, -791, 329, 173, -791, -791, -791, 4496, -791, 296, + 3128, 173, -791, -791, 489, -791, -791, -791, -791, -791, + -791, -791, -791, -791, -791, -791, -791, -791, -791, -791, + -791, -791, -791, -791, -791, -791, -791, -791, -791, -791, + -791, -791, -791, -791, -791, -791, -791, -791, -791, 4496, + -791, 4262, -791, -791, -791, 4145, -791, 498, 507, 4379, + -791, -791, -791, -791, 3726, -791, -791, 499, 3726 }; const unsigned short asn1_parser::yydefact_[] = { - 0, 499, 0, 2, 0, 147, 1, 3, 158, 0, - 144, 145, 146, 0, 162, 155, 497, 0, 150, 153, - 154, 152, 367, 0, 149, 157, 0, 0, 0, 164, - 148, 151, 0, 0, 376, 161, 159, 160, 0, 0, - 0, 377, 378, 374, 0, 0, 163, 0, 156, 376, - 373, 169, 375, 171, 143, 173, 0, 496, 498, 0, + 0, 502, 0, 2, 0, 147, 1, 3, 158, 0, + 144, 145, 146, 0, 162, 155, 500, 0, 150, 153, + 154, 152, 370, 0, 149, 157, 0, 0, 0, 164, + 148, 151, 0, 0, 379, 161, 159, 160, 0, 0, + 0, 380, 381, 377, 0, 0, 163, 0, 156, 379, + 376, 169, 378, 171, 143, 173, 0, 499, 501, 0, 170, 183, 185, 186, 188, 0, 175, 0, 168, 167, 0, 0, 4, 0, 174, 176, 0, 193, 195, 196, 95, 96, 97, 98, 165, 189, 191, 192, 194, 0, 0, 184, 187, 172, 177, 0, 190, 68, 11, 219, - 314, 0, 390, 286, 0, 0, 384, 386, 387, 0, - 0, 381, 230, 391, 392, 393, 0, 289, 394, 395, - 0, 236, 0, 372, 396, 306, 371, 379, 0, 0, - 398, 397, 382, 385, 10, 399, 249, 400, 401, 402, - 0, 0, 352, 496, 0, 112, 67, 0, 83, 235, + 314, 0, 393, 286, 0, 0, 387, 389, 390, 0, + 0, 384, 230, 394, 395, 396, 0, 289, 397, 398, + 0, 236, 0, 375, 399, 306, 374, 382, 0, 0, + 401, 400, 385, 388, 10, 402, 249, 403, 404, 405, + 0, 0, 355, 499, 0, 112, 67, 0, 83, 235, 0, 0, 218, 231, 0, 216, 199, 197, 0, 214, 221, 232, 228, 239, 220, 238, 234, 242, 243, 244, - 245, 223, 217, 246, 346, 0, 237, 241, 233, 240, - 227, 229, 247, 224, 248, 225, 226, 222, 388, 389, - 215, 405, 84, 0, 0, 0, 0, 198, 0, 178, - 182, 307, 403, 0, 380, 0, 0, 0, 359, 313, + 245, 223, 217, 246, 349, 0, 237, 241, 233, 240, + 227, 229, 247, 224, 248, 225, 226, 222, 391, 392, + 215, 408, 84, 0, 0, 0, 0, 198, 0, 178, + 182, 307, 406, 0, 383, 0, 0, 0, 362, 313, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 496, 13, 6, 8, 12, 14, 211, 0, 7, - 497, 111, 0, 104, 0, 108, 107, 110, 186, 0, - 358, 0, 0, 0, 0, 0, 0, 0, 404, 0, - 0, 347, 0, 0, 0, 0, 0, 0, 0, 179, - 180, 181, 0, 343, 0, 339, 340, 0, 492, 305, - 0, 298, 302, 304, 500, 114, 8, 0, 0, 291, - 0, 332, 333, 0, 469, 0, 492, 315, 328, 0, - 317, 326, 295, 296, 457, 451, 452, 453, 383, 0, - 314, 0, 0, 0, 288, 0, 459, 466, 0, 0, - 287, 0, 0, 0, 454, 455, 130, 416, 119, 120, - 121, 470, 448, 456, 450, 492, 415, 417, 418, 421, - 0, 423, 0, 426, 0, 429, 437, 439, 440, 0, - 441, 0, 461, 443, 444, 442, 445, 446, 447, 0, - 0, 336, 337, 334, 0, 0, 0, 0, 0, 103, - 0, 0, 351, 356, 357, 355, 0, 24, 25, 26, - 93, 86, 102, 99, 0, 113, 263, 255, 256, 257, - 268, 269, 253, 274, 0, 278, 272, 275, 0, 261, - 496, 498, 208, 235, 0, 259, 201, 0, 204, 117, - 206, 207, 0, 273, 271, 251, 262, 252, 254, 200, - 0, 0, 213, 349, 348, 94, 209, 345, 69, 85, - 0, 253, 278, 277, 498, 264, 276, 212, 0, 0, - 368, 369, 0, 362, 364, 365, 366, 367, 200, 0, - 309, 0, 338, 0, 250, 0, 301, 297, 0, 0, - 0, 290, 0, 0, 324, 0, 329, 316, 0, 0, - 422, 0, 140, 0, 471, 489, 490, 0, 475, 90, - 0, 88, 0, 0, 0, 0, 434, 433, 0, 436, - 435, 0, 430, 458, 0, 462, 408, 412, 409, 413, - 335, 406, 410, 407, 411, 29, 0, 0, 0, 16, - 18, 33, 19, 20, 21, 22, 23, 500, 9, 105, - 106, 353, 354, 0, 0, 101, 258, 284, 0, 0, - 0, 202, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 100, 0, 0, 369, 0, 360, 363, 0, 308, - 0, 0, 341, 344, 494, 0, 493, 491, 0, 492, - 303, 0, 0, 292, 331, 0, 449, 454, 455, 330, - 492, 327, 432, 129, 0, 141, 474, 472, 0, 473, - 0, 87, 0, 438, 0, 0, 132, 414, 419, 424, - 427, 468, 0, 467, 460, 463, 49, 36, 36, 36, - 53, 55, 0, 30, 0, 31, 28, 350, 27, 270, - 285, 0, 0, 205, 279, 265, 281, 280, 282, 266, - 267, 210, 283, 361, 0, 310, 0, 0, 0, 0, - 0, 299, 294, 293, 325, 322, 318, 128, 111, 125, - 0, 0, 110, 0, 0, 0, 0, 479, 484, 91, - 89, 137, 134, 138, 131, 0, 0, 464, 0, 47, - 46, 34, 35, 45, 40, 40, 52, 51, 50, 0, - 15, 17, 32, 260, 203, 370, 311, 312, 342, 495, - 0, 0, 0, 0, 122, 0, 142, 476, 0, 478, - 0, 483, 481, 488, 0, 137, 0, 0, 133, 420, - 0, 70, 48, 71, 72, 73, 0, 43, 42, 0, - 38, 41, 37, 0, 0, 300, 323, 319, 0, 124, - 123, 496, 0, 480, 486, 487, 485, 482, 92, 136, - 135, 139, 24, 25, 502, 503, 504, 505, 253, 507, - 508, 509, 390, 286, 274, 513, 514, 515, 516, 517, - 518, 519, 384, 386, 522, 523, 387, 525, 526, 527, - 528, 529, 530, 531, 532, 533, 381, 288, 536, 537, - 538, 539, 540, 541, 542, 543, 278, 545, 546, 547, - 548, 549, 550, 551, 552, 372, 272, 555, 556, 557, - 558, 559, 306, 371, 379, 563, 564, 565, 566, 567, - 568, 569, 382, 385, 287, 573, 574, 575, 576, 275, - 66, 277, 0, 79, 0, 0, 77, 80, 81, 82, - 65, 44, 39, 64, 54, 0, 0, 82, 477, 75, - 0, 76, 78, 503, 506, 509, 510, 511, 512, 513, - 514, 519, 520, 521, 524, 525, 529, 534, 535, 542, - 544, 550, 551, 553, 554, 560, 561, 562, 563, 564, - 570, 571, 572, 573, 577, 64, 501, 64, 56, 59, - 58, 0, 62, 320, 0, 64, 5, 57, 61, 63, - 0, 74, 60, 321, 0 + 0, 499, 13, 6, 8, 12, 14, 211, 0, 7, + 500, 111, 0, 104, 0, 108, 107, 110, 186, 0, + 361, 0, 0, 0, 0, 0, 0, 0, 407, 0, + 0, 350, 0, 0, 0, 0, 0, 0, 0, 179, + 180, 181, 0, 346, 0, 342, 343, 0, 495, 305, + 0, 298, 302, 304, 503, 114, 8, 0, 0, 291, + 0, 335, 336, 0, 472, 0, 495, 315, 328, 331, + 0, 317, 326, 295, 296, 460, 454, 455, 456, 386, + 0, 314, 0, 0, 0, 288, 0, 462, 469, 0, + 0, 287, 0, 0, 0, 457, 458, 130, 419, 119, + 120, 121, 473, 451, 459, 453, 495, 418, 420, 421, + 424, 0, 426, 0, 429, 0, 432, 440, 442, 443, + 0, 444, 0, 464, 446, 447, 445, 448, 449, 450, + 0, 0, 339, 340, 337, 0, 0, 0, 0, 0, + 103, 0, 0, 354, 359, 360, 358, 0, 24, 25, + 26, 93, 86, 102, 99, 0, 113, 263, 255, 256, + 257, 268, 269, 253, 274, 0, 278, 272, 275, 0, + 261, 499, 501, 208, 235, 0, 259, 201, 0, 204, + 117, 206, 207, 0, 273, 271, 251, 262, 252, 254, + 200, 0, 0, 213, 352, 351, 94, 209, 348, 69, + 85, 0, 253, 278, 277, 501, 264, 276, 212, 0, + 0, 371, 372, 0, 365, 367, 368, 369, 370, 200, + 0, 309, 0, 341, 0, 250, 0, 301, 297, 0, + 0, 0, 290, 0, 0, 324, 0, 329, 0, 332, + 316, 0, 0, 425, 0, 140, 0, 474, 492, 493, + 0, 478, 90, 0, 88, 0, 0, 0, 0, 437, + 436, 0, 439, 438, 0, 433, 461, 0, 465, 411, + 415, 412, 416, 338, 409, 413, 410, 414, 29, 0, + 0, 0, 16, 18, 33, 19, 20, 21, 22, 23, + 503, 9, 105, 106, 356, 357, 0, 0, 101, 258, + 284, 0, 0, 0, 202, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 100, 0, 0, 372, 0, 363, + 366, 0, 308, 0, 0, 344, 347, 497, 0, 496, + 494, 0, 495, 303, 0, 0, 292, 334, 0, 452, + 457, 458, 330, 333, 495, 327, 435, 129, 0, 141, + 477, 475, 0, 476, 0, 87, 0, 441, 0, 0, + 132, 417, 422, 427, 430, 471, 0, 470, 463, 466, + 49, 36, 36, 36, 53, 55, 0, 30, 0, 31, + 28, 353, 27, 270, 285, 0, 0, 205, 279, 265, + 281, 280, 282, 266, 267, 210, 283, 364, 0, 310, + 0, 0, 0, 0, 0, 299, 294, 293, 325, 322, + 318, 128, 111, 125, 0, 0, 110, 0, 0, 0, + 0, 482, 487, 91, 89, 137, 134, 138, 131, 0, + 0, 467, 0, 47, 46, 34, 35, 45, 40, 40, + 52, 51, 50, 0, 15, 17, 32, 260, 203, 373, + 311, 312, 345, 498, 0, 0, 0, 0, 122, 0, + 142, 479, 0, 481, 0, 486, 484, 491, 0, 137, + 0, 0, 133, 423, 0, 70, 48, 71, 72, 73, + 0, 43, 42, 0, 38, 41, 37, 0, 0, 300, + 323, 319, 0, 124, 123, 499, 0, 483, 489, 490, + 488, 485, 92, 136, 135, 139, 24, 25, 505, 506, + 507, 508, 253, 510, 511, 512, 393, 286, 274, 516, + 517, 518, 519, 520, 521, 522, 387, 389, 525, 526, + 390, 528, 529, 530, 531, 532, 533, 534, 535, 536, + 384, 288, 539, 540, 541, 542, 543, 544, 545, 546, + 278, 548, 549, 550, 551, 552, 553, 554, 555, 375, + 272, 558, 559, 560, 561, 562, 306, 374, 382, 566, + 567, 568, 569, 570, 571, 572, 385, 388, 287, 576, + 577, 578, 579, 275, 66, 277, 0, 79, 0, 0, + 77, 80, 81, 82, 65, 44, 39, 64, 54, 0, + 0, 82, 480, 75, 0, 76, 78, 506, 509, 512, + 513, 514, 515, 516, 517, 522, 523, 524, 527, 528, + 532, 537, 538, 545, 547, 553, 554, 556, 557, 563, + 564, 565, 566, 567, 573, 574, 575, 576, 580, 64, + 504, 64, 56, 59, 58, 0, 62, 320, 0, 64, + 5, 57, 61, 63, 0, 74, 60, 321, 0 }; const short asn1_parser::yypgoto_[] = { - -658, 706, -658, -658, -137, -658, -112, -658, 471, -658, - -658, 119, -471, 191, -658, -658, -658, -108, -658, 57, - -658, -658, -658, -658, -658, -658, -658, -658, -140, -531, - -658, -658, -658, -657, -557, -658, 44, -658, -658, -658, - -658, -658, -87, -82, 158, -658, -658, 494, -658, -57, - -658, -658, -658, -658, -658, 634, -658, 373, -658, 171, - -658, -658, -658, -658, -658, -658, -658, -658, -658, -658, - 94, 55, 58, -658, -658, -658, -658, -658, -658, 724, - -658, 711, -658, -658, -658, -658, -658, -658, -658, -658, - -658, -658, 672, -658, -658, 694, 679, -106, 665, -658, - -658, -219, -658, -658, -102, -658, -658, -658, -658, -658, - -658, -67, -658, -197, -230, 103, -658, -658, 62, -658, - -658, 20, -658, -658, -193, 201, -658, -658, 81, -436, - -658, -658, -658, 212, -658, -658, -658, 540, -534, -451, - -658, -658, -658, -658, -658, -658, 135, -658, -658, -658, - -658, -658, -658, -658, -658, -658, -6, -658, 89, 216, - -658, -658, -658, 748, -658, 712, 716, -658, -658, -658, - -658, 232, -658, -658, -658, -658, -658, -658, -658, -658, - -658, -118, -658, -658, -269, -307, -658, -658, 284, -658, - 282, -658, 436, -658, -658, 305, -658, -447, -658, -658, - -658, -658, -658, -658, 183, -127, -658, -658, -658, -658, - -658, -228, -658, -658, -658, -658, -658, -658, -262, -658, - 56, -9, -36, 15, -338, -658 + -791, 631, -791, -791, -137, -791, -130, -791, 396, -791, + -791, 45, -471, 95, -791, -791, -791, -178, -791, -19, + -791, -791, -791, -791, -791, -791, -791, -791, -216, -790, + -791, -791, -791, -682, -586, -791, -32, -791, -791, -791, + -791, -791, -163, -159, 81, -791, -791, 410, -791, 241, + -791, -791, -791, -791, -791, 559, -791, 289, -791, 84, + -791, -791, -791, -791, -791, -791, -791, -791, -791, -791, + 5, -34, -31, -791, -791, -791, -791, -791, -791, 638, + -791, 625, -791, -791, -791, -791, -791, -791, -791, -791, + -791, -791, 584, -791, -791, 607, 591, -117, 579, -791, + -791, -218, -791, -791, -382, -791, -791, -791, -791, -791, + -791, 217, -791, -146, -229, 176, -791, -791, -30, -791, + -791, -96, -791, -791, -191, -199, -791, -791, -2, -448, + -791, -791, -791, 131, -791, -791, -791, 460, -553, -436, + -791, -791, -791, -791, -791, -791, 57, -791, -791, -791, + -791, -791, -791, -791, -791, -791, -88, -791, 161, 145, + -791, -791, -791, 665, -791, 636, 643, -791, -791, -791, + -791, -79, -791, -791, -791, -791, -791, -791, -791, -791, + -791, -121, -791, -791, -260, -307, -791, -791, 199, -791, + 204, -791, 358, -791, -791, 228, -791, -429, -791, -791, + -791, -791, -791, -791, 105, -106, -791, -791, -791, -791, + -791, -332, -791, -791, -791, -791, -791, -791, -273, -791, + 223, -9, -33, 15, -357, -791 }; const short asn1_parser::yydefgoto_[] = { - -1, 2, 3, 814, 392, 223, 144, 77, 225, 226, - 498, 499, 369, 415, 500, 501, 596, 653, 502, 701, - 503, 504, 698, 505, 650, 506, 658, 660, 857, 858, - 859, 860, 861, 862, 145, 146, 692, 693, 694, 804, - 695, 805, 806, 807, 147, 148, 78, 316, 470, 149, + -1, 2, 3, 818, 393, 223, 144, 77, 225, 226, + 501, 502, 370, 416, 503, 504, 600, 657, 505, 705, + 506, 507, 702, 508, 654, 509, 662, 664, 861, 862, + 863, 864, 865, 866, 145, 146, 696, 697, 698, 808, + 699, 809, 810, 811, 147, 148, 78, 317, 473, 149, 79, 80, 81, 82, 83, 150, 232, 233, 234, 235, - 151, 152, 153, 154, 394, 317, 318, 631, 319, 575, - 576, 686, 642, 320, 65, 4, 10, 11, 12, 17, + 151, 152, 153, 154, 395, 318, 319, 635, 320, 579, + 580, 690, 646, 321, 65, 4, 10, 11, 12, 17, 18, 19, 20, 14, 29, 39, 54, 55, 59, 67, 73, 74, 75, 199, 259, 76, 61, 62, 84, 85, - 155, 395, 156, 396, 397, 398, 157, 399, 86, 87, - 88, 321, 159, 288, 426, 402, 403, 404, 412, 518, - 160, 405, 161, 278, 269, 406, 162, 270, 271, 272, - 163, 164, 439, 440, 165, 166, 167, 289, 290, 291, + 155, 396, 156, 397, 398, 399, 157, 400, 86, 87, + 88, 322, 159, 289, 427, 403, 404, 405, 413, 521, + 160, 406, 161, 278, 269, 407, 162, 270, 271, 272, + 163, 164, 440, 441, 165, 166, 167, 290, 291, 292, 168, 169, 170, 171, 264, 265, 266, 172, 173, 174, - 175, 240, 513, 366, 176, 260, 432, 433, 434, 435, - 436, 177, 178, 407, 34, 45, 43, 179, 180, 181, - 182, 408, 183, 184, 185, 186, 187, 188, 189, 190, - 191, 248, 325, 326, 327, 328, 329, 330, 331, 332, - 333, 334, 460, 478, 481, 335, 336, 337, 338, 339, - 340, 341, 584, 342, 585, 343, 344, 345, 346, 567, - 569, 636, 637, 682, 683, 717, 347, 348, 446, 547, - 197, 193, 409, 198, 229, 810 + 175, 240, 516, 367, 176, 260, 433, 434, 435, 436, + 437, 177, 178, 408, 34, 45, 43, 179, 180, 181, + 182, 409, 183, 184, 185, 186, 187, 188, 189, 190, + 191, 248, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 335, 463, 481, 484, 336, 337, 338, 339, 340, + 341, 342, 588, 343, 589, 344, 345, 346, 347, 571, + 573, 640, 641, 686, 687, 721, 348, 349, 447, 550, + 197, 193, 410, 198, 229, 814 }; const short asn1_parser::yytable_[] = { - 22, 215, 219, 222, 231, 471, 263, 561, 559, 22, - 214, 218, 550, 282, 279, 5, 401, 64, 5, 352, - 508, 625, 158, 196, 454, 588, 418, 430, 224, 224, - 64, 90, 511, 803, 64, 236, 418, 583, 64, 431, - 418, 285, 15, 598, 472, 367, 368, 292, 293, 90, - -428, 803, 363, 418, 418, 564, 56, 455, 97, 95, - 651, 285, 210, 474, 268, 292, 293, 294, 295, 275, - 296, 213, 297, 227, 237, 479, 98, 211, -425, 430, - 476, 298, 616, 244, 652, 285, 619, 41, 42, 542, - 359, 691, 16, 284, 276, 556, 456, 213, 21, 212, - 216, 213, 360, 1, 194, 64, 222, 21, 251, 63, - 200, -425, 508, 477, 364, 211, 691, 16, 286, -428, - 247, 287, 63, 89, 304, 213, 63, 213, 255, 285, - 63, 224, 70, 365, 224, 583, 285, 217, 707, 213, - 581, 89, 530, 281, 480, 192, 16, 512, 803, 351, - 467, 468, 487, 489, 58, 228, 228, 134, 492, 494, - 690, 285, 286, 57, 261, 353, 16, 507, 58, 6, - 57, 310, 1, 230, 57, 58, 373, 1, 58, 400, - 507, 711, 413, 414, 8, 1, 417, 464, 16, 393, - 16, 508, 1, 58, 267, 274, 273, 238, 280, 425, - 444, 283, 285, 267, 869, 593, 560, 283, 267, 9, - 557, 558, 534, 624, 534, 549, 444, 714, 648, 802, - 561, 277, 438, 231, 1, 58, 544, 1, 58, 656, - 551, 594, 26, 322, 16, 462, 696, 802, 706, 699, - 651, 16, 256, 16, 57, 58, 543, 213, 224, 437, - 258, 425, 812, 441, 236, 510, 27, 649, 228, 553, - 71, 410, -198, 639, 652, 13, 16, 28, 657, 635, - 595, 429, 483, 429, 252, 697, 58, 715, 700, 863, - -116, 716, 486, 488, 451, -118, 23, 621, 491, 493, - 401, -496, 401, 237, 252, -449, 452, 16, 626, 528, - -166, 374, -449, -496, 53, 25, 213, 16, 416, 539, - 419, 32, 428, 292, 293, 294, 295, 425, 296, 534, - 297, 540, 617, 429, 64, 64, 867, 425, -465, 298, - 438, 425, 322, 322, 867, -465, 873, 508, 591, 689, - 283, 283, -496, 556, -496, 641, 283, 283, 420, 566, - 592, 519, -116, 213, -198, -497, -496, 16, 586, 427, - 590, 644, 677, 425, 428, 561, 252, -498, 35, -198, - -498, 33, 304, 645, 678, 228, 36, 718, 545, 550, - -498, 429, 37, 224, -498, 276, 554, -276, -277, 429, - 868, -276, -277, 30, 523, 438, -277, 438, 524, 429, - 495, 496, 525, 429, 497, 207, 425, -289, 224, 438, - 224, 465, 38, 438, 323, 15, 238, 63, 602, 310, - 603, 263, 437, 561, 437, 535, 628, 537, 587, 589, - 428, 322, 370, 44, 267, 429, 375, 367, 368, 273, - 428, 609, 610, 280, 428, 324, 429, 47, 429, 267, - 712, 224, 713, 400, 46, 400, -126, 213, 557, 558, - 548, 425, 48, 393, 429, 393, 425, 425, 425, 425, - 425, 207, -289, -289, 50, 322, 428, 515, 429, 322, - 654, 655, 51, 70, 66, 68, 69, 516, 71, 72, - 92, 517, 93, 611, 201, 202, 632, 611, 322, 203, - 204, 322, 438, 205, 322, 438, 206, 543, 207, 208, - 228, 209, 277, 323, 323, 239, 241, 242, 245, 428, - 681, 246, -115, 531, 253, 254, 257, 662, 262, 213, - 349, 441, 16, 429, 350, 410, 355, 410, 429, 429, - 429, 429, 429, 356, 324, 324, 267, 357, 358, 312, - 411, 418, 442, 429, 445, 361, 429, -109, 443, 638, - 447, 362, 425, 449, 453, 643, 565, 448, 459, -499, - 450, 458, 461, 457, 428, 463, 466, 425, 633, 428, - 428, 428, 428, 428, 611, 473, -431, 475, 484, 485, - 322, 490, 514, -314, 520, 522, -264, 521, 527, 526, - 519, 529, 322, 536, -118, 538, 532, 533, 541, 267, - 555, 563, 323, 507, 568, 573, 425, 571, 570, 192, - 572, 600, 577, 808, 578, 597, 604, 605, 606, 607, - 608, 601, 612, 393, 429, 574, 58, 613, 618, 634, - 622, 808, 620, 324, 623, 640, 546, 659, 646, 429, - 552, 393, 663, 665, 675, 664, 323, 670, 215, 219, - 323, 273, 267, 267, 666, 667, 322, 214, 218, 638, - 671, 638, -127, 672, 674, 428, 679, 643, 721, 323, - 673, 680, 323, 684, 425, 323, 685, 324, 548, 703, - 428, 324, 687, 704, 813, 267, 815, 816, -500, 818, - -11, 864, -10, 820, 322, 548, 870, 871, 874, 7, - 324, 661, 702, 324, 372, 865, 324, 709, 822, 322, - 819, 629, 669, 548, 195, 292, 293, 294, 295, 428, - 296, 419, 297, 509, 630, 808, 371, 676, 808, 688, - 719, 298, 31, 40, 720, 393, 94, 60, 393, 91, - 96, 705, 615, 668, 614, 556, 429, 354, 811, 24, - 49, 52, 579, 580, 562, 647, 0, 0, 0, 0, - 482, 323, 0, 0, 0, 0, 710, 0, 0, 0, - 0, 0, 0, 323, 304, 0, 0, 0, 0, 0, - 0, 0, 0, 809, 0, 0, 0, 428, 0, 0, - 581, 0, 324, 0, 0, 0, 273, 267, 0, 0, - 0, 817, 0, 0, 324, 0, 0, 548, 0, 0, - 548, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 310, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 516, 0, 0, 323, 0, 0, - 0, 582, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 267, 0, 0, 0, 267, 0, 0, 0, 0, - 557, 558, 0, 0, 0, 0, 0, 0, 324, 0, - 0, 0, 0, 0, 0, 323, 0, 0, 0, 0, + 22, 553, 511, 222, 231, 629, 474, 214, 218, 22, + 224, 224, 807, 455, 324, 5, 279, 402, 5, 419, + 64, 419, 215, 219, 236, 565, 431, 562, 592, 563, + 807, 293, 294, 64, 90, 514, 15, 64, 419, 98, + 432, 64, 97, 431, 56, 620, 602, 419, 368, 369, + 364, 419, 90, 477, 475, -431, 456, 263, 587, 482, + 95, 597, 210, 216, 282, 568, 695, 258, 458, 275, + 353, 871, 655, 1, 655, 718, 276, 211, 211, 871, + 652, 293, 294, 295, 296, -428, 297, 598, 298, 6, + 284, 695, 479, 58, 511, 457, 656, 299, 656, 212, + 217, 213, 213, 660, 194, 8, 222, 459, 64, 213, + 200, 559, 365, 224, 324, 324, 224, 323, -428, 653, + 134, 700, 703, 711, -431, 480, 599, 807, 483, 26, + 213, 366, 213, 70, 325, 719, 71, 213, -198, 720, + 305, 606, 661, 607, 694, 623, 510, 58, 57, 515, + 252, 13, 533, 27, 247, 228, 228, 587, 274, 213, + 701, 704, 57, 58, 28, 268, 58, 261, 9, 1, + 21, 1, 230, 57, 510, 511, 1, 58, 715, 21, + 1, 58, 16, 873, 545, 467, 25, 311, 1, 58, + 1, 58, 552, 16, 267, 256, 273, 645, 280, -452, + 213, 283, 639, 283, 490, 492, -452, 283, 283, 16, + 495, 497, 16, 324, 537, -116, 537, 323, 323, 23, + 16, 277, 30, 806, 231, 439, 560, 561, 547, 252, + 16, 224, 554, -501, 325, 325, -501, 375, -116, 565, + -198, 806, 213, 32, 236, 513, -501, 549, 360, 438, + -501, 555, 252, 442, -499, -198, -499, 324, 228, 324, + 361, 411, 556, 324, -118, -499, -166, 643, -499, 452, + 53, 430, 542, 430, 816, 595, 63, -499, 531, 625, + 648, 453, 324, 681, 543, 324, 33, 596, 324, 63, + 89, 630, 649, 63, 402, 682, 402, 63, 546, 498, + 499, -277, 35, 500, -468, -277, 158, 196, 89, -277, + 526, -468, 192, 522, 527, 421, 323, -500, 528, 38, + 213, 877, 511, 537, 430, 36, 621, -276, 64, 64, + 207, -276, -289, 325, 439, 37, 371, 207, -289, -289, + 376, 283, 283, 693, 538, 15, 540, 283, 283, 570, + 716, 44, 717, 41, 42, 368, 369, 227, 237, 46, + 323, 590, 323, 594, 238, 47, 323, 244, 224, 48, + 276, 553, 50, 57, 58, 324, 228, 325, 51, 325, + 66, 722, 430, 325, 565, 323, 70, 324, 323, 68, + 430, 323, 251, 224, 872, 224, 470, 471, 69, 439, + 430, 439, 325, 71, 430, 325, 613, 614, 325, -126, + 213, 72, 255, 439, 658, 659, 92, 439, 93, 201, + 202, 203, 205, 438, 204, 438, 206, 281, 207, 288, + 632, 208, 428, 352, 288, 267, 430, 224, 209, 239, + 273, 241, 565, 242, 280, 245, 16, 430, 246, 430, + -115, 324, 283, 253, 262, 213, 254, 257, 350, 351, + 374, 551, 356, 401, 357, 430, 414, 415, 358, 362, + 418, 313, 359, -109, 412, 417, 263, 420, 323, 429, + 419, 430, 443, 444, 445, 468, 363, 394, 446, 324, + 323, 448, -502, 450, 454, 325, 449, 426, 451, 615, + 445, 460, 461, 615, 324, 462, 464, 325, 439, 466, + 469, 439, 476, 228, -434, 277, 478, 487, 493, 488, + 465, 685, 517, -314, 523, -264, 524, 525, 529, 522, + 530, 539, 429, 532, 442, 541, 430, 535, 411, -118, + 411, 430, 430, 430, 430, 430, 536, 544, 558, 283, + 426, 518, 567, 510, 323, 572, 430, 486, 575, 430, + 578, 519, 546, 642, 574, 520, 576, 489, 491, 647, + 577, 325, 581, 494, 496, 582, 605, 601, 237, 616, + 58, 622, 637, 638, 238, 63, 617, 624, 650, 626, + 627, 615, 323, 644, 663, 667, 674, 534, 429, 669, + 668, 675, 676, 670, 671, -127, 678, 323, 429, 325, + 683, 677, 429, 267, 707, 684, 426, 679, 817, 688, + 822, 689, 691, 708, 325, 819, 426, 820, -503, -11, + 426, -10, 875, 824, 7, 874, 878, 868, 430, 373, + 706, 665, 569, 869, 429, 713, 826, 823, 633, 195, + 512, 634, 372, 430, 692, 723, 31, 40, 94, 724, + 60, 91, 426, 548, 96, 273, 283, 283, 214, 218, + 815, 557, 709, 642, 619, 642, 24, 355, 288, 672, + 583, 647, 725, 215, 219, 52, 618, 49, 584, 429, + 566, 651, 551, 485, 0, 0, 0, 604, 0, 267, + 0, 0, 608, 609, 610, 611, 612, 426, 0, 551, + 0, 0, 0, 0, 0, 591, 593, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 551, 0, 293, + 294, 295, 296, 0, 297, 0, 298, 0, 0, 0, + 401, 0, 401, 0, 429, 299, 0, 0, 0, 429, + 429, 429, 429, 429, 0, 0, 0, 0, 0, 559, + 430, 0, 426, 0, 394, 0, 394, 426, 426, 426, + 426, 426, 0, 0, 0, 288, 0, 0, 0, 0, + 0, 0, 0, 0, 636, 0, 0, 0, 305, 0, + 192, 0, 0, 0, 0, 0, 0, 0, 0, 673, + 0, 0, 0, 0, 585, 0, 0, 0, 0, 0, + 273, 283, 0, 0, 680, 666, 0, 0, 0, 0, + 0, 551, 0, 0, 551, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 311, 0, 0, 0, 0, + 0, 0, 293, 294, 377, 378, 429, 379, 0, 380, + 0, 0, 0, 714, 0, 586, 0, 0, 299, 0, + 0, 429, 381, 382, 426, 283, 0, 0, 98, 283, + 813, 0, 422, 0, 560, 561, 0, 0, 384, 426, + 0, 0, 0, 0, 0, 385, 0, 0, 821, 0, + 0, 0, 288, 288, 0, 0, 0, 0, 0, 0, + 429, 305, 420, 0, 0, 0, 0, 0, 0, 0, + 0, 812, 0, 0, 423, 0, 0, 0, 426, 0, + 0, 519, 0, 0, 0, 0, 0, 387, 0, 812, + 0, 0, 0, 0, 0, 394, 293, 294, 295, 296, + 0, 297, 0, 298, 0, 0, 0, 0, 311, 134, + 0, 0, 299, 394, 0, 0, 0, 0, 388, 0, + 0, 0, 389, 603, 0, 0, 559, 0, 429, 0, + 0, 23, 0, 0, 0, 0, 0, 0, 0, 390, + 0, 0, 813, 0, 0, 813, 426, 424, 425, 0, + 0, 0, 0, 0, 0, 305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 323, 0, 0, 0, 0, 809, 0, 0, 809, 0, - 0, 0, 292, 293, 376, 377, 324, 378, 0, 379, - 0, 0, 0, 0, 0, 0, 0, 0, 298, 0, - 97, 324, 380, 381, 0, 0, 0, 724, 725, 726, - 99, 727, 728, 729, 730, 731, 732, 733, 734, 735, - 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, - 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, - 756, 757, 758, 112, 113, 114, 115, 759, 760, 761, - 762, 763, 764, 765, 766, 767, 118, 768, 769, 770, - 771, 119, 772, 121, 773, 774, 775, 776, 777, 778, - 779, 780, 124, 781, 782, 783, 784, 785, 786, 787, - 788, 789, 790, 130, 791, 131, 792, 793, 794, 795, - 796, 797, 798, 135, 136, 137, 138, 139, 799, 0, - 0, 0, 388, 821, 0, 0, 142, 0, 0, 0, - 0, 23, 0, 0, 0, 800, 0, 0, 0, 389, - 0, 0, 0, 0, 0, 0, 0, 801, 391, 292, - 293, 376, 377, 0, 378, 0, 379, 0, 0, 0, - 0, 0, 0, 0, 0, 298, 0, 97, 0, 722, - 723, 0, 0, 0, 724, 725, 726, 99, 727, 728, - 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, - 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, - 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, - 112, 113, 114, 115, 759, 760, 761, 762, 763, 764, - 765, 766, 767, 118, 768, 769, 770, 771, 119, 772, - 121, 773, 774, 775, 776, 777, 778, 779, 780, 124, - 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, - 130, 791, 131, 792, 793, 794, 795, 796, 797, 798, - 135, 136, 137, 138, 139, 799, 0, 0, 0, 388, - 0, 0, 0, 142, 292, 293, 294, 295, 23, 296, - 0, 297, 800, 0, 0, 0, 389, 0, 0, 0, - 298, 0, 97, 0, 801, 391, 0, 0, 0, 0, - 98, 299, 99, 0, 300, 0, 0, 101, 102, 103, - 0, 104, 105, 0, 0, 0, 301, 302, 106, 107, - 0, 0, 108, 109, 303, 0, 0, 110, 0, 0, - 0, 0, 111, 304, 305, 112, 113, 114, 115, 0, - 0, 0, 0, 306, 116, 0, 117, 0, 118, 0, - 307, 0, 0, 119, 120, 121, 122, 0, 123, 0, - 308, 0, 0, 0, 124, 0, 125, 126, 127, 128, - 129, 309, 211, 0, 0, 130, 0, 131, 132, 133, - 310, 134, 0, 0, 0, 135, 136, 137, 138, 139, - 311, 0, 0, 0, 312, 0, 313, 0, 142, 292, - 293, 294, 295, 0, 296, 0, 297, 0, 0, 0, - 0, 0, 0, 0, 0, 298, 0, 97, 0, 314, - 315, 0, 0, 0, 0, 98, 299, 99, 0, 300, + 0, 585, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 812, 0, 0, 812, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 288, 0, 0, + 0, 0, 311, 0, 0, 0, 0, 394, 0, 0, + 394, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 293, 294, 377, 378, 0, 379, 0, 380, + 0, 560, 561, 0, 0, 0, 0, 0, 299, 0, + 97, 288, 381, 382, 0, 288, 0, 728, 729, 730, + 99, 731, 732, 733, 734, 735, 736, 737, 738, 739, + 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, + 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, + 760, 761, 762, 112, 113, 114, 115, 763, 764, 765, + 766, 767, 768, 769, 770, 771, 118, 772, 773, 774, + 775, 119, 776, 121, 777, 778, 779, 780, 781, 782, + 783, 784, 124, 785, 786, 787, 788, 789, 790, 791, + 792, 793, 794, 130, 795, 131, 796, 797, 798, 799, + 800, 801, 802, 135, 136, 137, 138, 139, 803, 0, + 0, 0, 389, 825, 0, 0, 142, 0, 0, 0, + 0, 23, 0, 0, 0, 804, 0, 0, 0, 390, + 0, 0, 0, 0, 0, 0, 0, 805, 392, 293, + 294, 377, 378, 0, 379, 0, 380, 0, 0, 0, + 0, 0, 0, 0, 0, 299, 0, 97, 0, 726, + 727, 0, 0, 0, 728, 729, 730, 99, 731, 732, + 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, + 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, + 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, + 112, 113, 114, 115, 763, 764, 765, 766, 767, 768, + 769, 770, 771, 118, 772, 773, 774, 775, 119, 776, + 121, 777, 778, 779, 780, 781, 782, 783, 784, 124, + 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, + 130, 795, 131, 796, 797, 798, 799, 800, 801, 802, + 135, 136, 137, 138, 139, 803, 0, 0, 0, 389, + 0, 0, 0, 142, 293, 294, 295, 296, 23, 297, + 0, 298, 804, 0, 0, 0, 390, 0, 0, 0, + 299, 0, 97, 0, 805, 392, 0, 0, 0, 0, + 98, 300, 99, 0, 301, 0, 0, 101, 102, 103, + 0, 104, 105, 0, 0, 0, 302, 303, 106, 107, + 0, 0, 108, 109, 304, 0, 0, 110, 0, 0, + 0, 0, 111, 305, 306, 112, 113, 114, 115, 0, + 0, 0, 0, 307, 116, 0, 117, 0, 118, 0, + 308, 0, 0, 119, 120, 121, 122, 0, 123, 0, + 309, 0, 0, 0, 124, 0, 125, 126, 127, 128, + 129, 310, 211, 0, 0, 130, 0, 131, 132, 133, + 311, 134, 0, 0, 0, 135, 136, 137, 138, 139, + 312, 0, 0, 0, 313, 0, 314, 0, 142, 293, + 294, 295, 296, 0, 297, 0, 298, 0, 0, 0, + 0, 0, 0, 0, 0, 299, 0, 97, 0, 315, + 316, 0, 0, 0, 0, 98, 300, 99, 0, 301, 0, 0, 101, 102, 103, 0, 104, 105, 0, 0, 0, 0, 0, 106, 107, 0, 0, 108, 109, 0, - 0, 0, 110, 0, 0, 0, 0, 111, 304, 305, - 112, 113, 114, 115, 0, 0, 0, 0, 306, 116, - 0, 117, 0, 118, 0, 307, 0, 0, 119, 120, - 121, 122, 0, 123, 0, 308, 0, 0, 0, 124, - 0, 125, 126, 127, 128, 129, 309, 211, 0, 0, - 130, 0, 131, 132, 133, 310, 134, 0, 0, 0, - 135, 136, 137, 138, 139, 311, 0, 469, 0, 0, - 0, 313, 0, 142, 0, 0, 0, 0, 0, 0, - 292, 293, 376, 377, 0, 378, 0, 379, 0, 0, - 0, 0, 0, 0, 314, 315, 298, 0, 97, 0, - 380, 381, 0, 0, 0, 0, 98, 0, 99, 0, - 382, 0, 0, 101, 102, 103, 383, 104, 105, 0, - 0, 0, 0, 384, 106, 107, 0, 0, 108, 109, - 0, 0, 0, 110, 0, 0, 0, 0, 111, 304, + 0, 0, 110, 0, 0, 0, 0, 111, 305, 306, + 112, 113, 114, 115, 0, 0, 0, 0, 307, 116, + 0, 117, 0, 118, 0, 308, 0, 0, 119, 120, + 121, 122, 0, 123, 0, 309, 0, 0, 0, 124, + 0, 125, 126, 127, 128, 129, 310, 211, 0, 0, + 130, 0, 131, 132, 133, 311, 134, 0, 0, 0, + 135, 136, 137, 138, 139, 312, 0, 472, 0, 0, + 0, 314, 0, 142, 0, 0, 0, 0, 0, 0, + 293, 294, 377, 378, 0, 379, 0, 380, 0, 0, + 0, 0, 0, 0, 315, 316, 299, 0, 97, 0, + 381, 382, 0, 0, 0, 0, 98, 0, 99, 0, + 383, 0, 0, 101, 102, 103, 384, 104, 105, 0, + 0, 0, 0, 385, 106, 107, 0, 0, 108, 109, + 0, 0, 0, 110, 0, 0, 0, 0, 111, 305, 0, 112, 113, 114, 115, 0, 0, 0, 0, 0, - 116, 0, 385, 0, 118, 0, 0, 0, 0, 119, - 120, 121, 122, 0, 123, 386, 0, 0, 0, 0, + 116, 0, 386, 0, 118, 0, 0, 0, 0, 119, + 120, 121, 122, 0, 123, 387, 0, 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, - 0, 130, 0, 131, 132, 133, 310, 134, 0, 0, - 0, 135, 136, 137, 138, 139, 387, 0, 0, 0, - 388, 0, 0, 0, 142, 292, 293, 294, 295, 23, - 296, 0, 297, 0, 0, 0, 0, 389, 0, 0, - 0, 298, 0, 97, 0, 390, 391, 0, 0, 0, - 0, 98, 299, 99, 0, 300, 0, 0, 101, 102, + 0, 130, 0, 131, 132, 133, 311, 134, 0, 0, + 0, 135, 136, 137, 138, 139, 388, 0, 0, 0, + 389, 0, 0, 0, 142, 293, 294, 295, 296, 23, + 297, 0, 298, 0, 0, 0, 0, 390, 0, 0, + 0, 299, 0, 97, 0, 391, 392, 0, 0, 0, + 0, 98, 300, 99, 0, 301, 0, 0, 101, 102, 103, 0, 104, 105, 0, 0, 0, 0, 0, 106, 107, 0, 0, 108, 109, 0, 0, 0, 110, 0, - 0, 0, 0, 111, 304, 305, 112, 113, 114, 115, - 0, 0, 0, 0, 306, 116, 0, 117, 0, 118, - 0, 307, 0, 0, 119, 120, 121, 122, 0, 123, - 0, 308, 0, 0, 0, 124, 0, 125, 126, 127, - 128, 129, 309, 211, 0, 0, 130, 0, 131, 132, - 133, 310, 134, 0, 0, 0, 135, 136, 137, 138, - 139, 311, 0, 0, 0, 0, 0, 313, 0, 142, - 0, 0, 0, 0, 0, 0, 292, 293, 376, 377, - 0, 378, 0, 379, 0, 0, 0, 0, 0, 0, - 314, 315, 298, 0, 97, 0, 380, 381, 0, 0, - 0, 0, 98, 0, 99, 0, 382, 0, 0, 101, - 102, 103, 383, 104, 105, 0, 0, 0, 0, 384, + 0, 0, 0, 111, 305, 306, 112, 113, 114, 115, + 0, 0, 0, 0, 307, 116, 0, 117, 0, 118, + 0, 308, 0, 0, 119, 120, 121, 122, 0, 123, + 0, 309, 0, 0, 0, 124, 0, 125, 126, 127, + 128, 129, 310, 211, 0, 0, 130, 0, 131, 132, + 133, 311, 134, 0, 0, 0, 135, 136, 137, 138, + 139, 312, 0, 0, 0, 0, 0, 314, 0, 142, + 0, 0, 0, 0, 0, 0, 293, 294, 377, 378, + 0, 379, 0, 380, 0, 0, 0, 0, 0, 0, + 315, 316, 299, 0, 97, 0, 381, 382, 0, 0, + 0, 0, 98, 0, 99, 0, 383, 0, 0, 101, + 102, 103, 384, 104, 105, 0, 0, 0, 0, 385, 106, 107, 0, 0, 108, 109, 0, 0, 0, 110, - 0, 0, 0, 0, 111, 304, 0, 112, 113, 114, - 115, 0, 0, 0, 0, 0, 116, 0, 385, 0, + 0, 0, 0, 0, 111, 305, 0, 112, 113, 114, + 115, 0, 0, 0, 0, 0, 116, 0, 386, 0, 118, 0, 0, 0, 0, 119, 120, 121, 122, 0, - 123, 386, 0, 0, 0, 0, 124, 0, 125, 126, + 123, 387, 0, 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, 0, 131, - 132, 133, 310, 134, 0, 0, 0, 135, 136, 137, - 138, 139, 387, 0, 0, 0, 388, 0, 0, 0, - 142, 292, 293, 294, 295, 23, 296, 0, 297, 0, - 0, 0, 0, 389, 0, 0, 0, 298, 0, 97, - 0, 423, 391, 0, 0, 0, 0, 98, 0, 99, - 0, 300, 0, 0, 101, 102, 103, 0, 104, 105, + 132, 133, 311, 134, 0, 0, 0, 135, 136, 137, + 138, 139, 388, 0, 0, 0, 389, 0, 0, 0, + 142, 293, 294, 295, 296, 23, 297, 0, 298, 0, + 0, 0, 0, 390, 0, 0, 0, 299, 0, 97, + 0, 424, 392, 0, 0, 0, 0, 98, 0, 99, + 0, 301, 0, 0, 101, 102, 103, 0, 104, 105, 0, 0, 0, 0, 0, 106, 107, 0, 0, 108, 109, 0, 0, 0, 110, 0, 0, 0, 0, 111, - 304, 305, 112, 113, 114, 115, 0, 0, 0, 0, - 306, 116, 0, 117, 0, 118, 0, 307, 0, 0, - 119, 120, 121, 122, 0, 123, 0, 308, 0, 0, - 0, 124, 0, 125, 126, 127, 128, 129, 309, 211, - 292, 293, 130, 0, 131, 132, 133, 310, 134, 0, - 0, 0, 135, 136, 137, 138, 139, 311, 97, 0, - 0, 0, 0, 313, 0, 142, 98, 0, 99, 0, + 305, 306, 112, 113, 114, 115, 0, 0, 0, 0, + 307, 116, 0, 117, 0, 118, 0, 308, 0, 0, + 119, 120, 121, 122, 0, 123, 0, 309, 0, 0, + 0, 124, 0, 125, 126, 127, 128, 129, 310, 211, + 293, 294, 130, 0, 131, 132, 133, 311, 134, 0, + 0, 0, 135, 136, 137, 138, 139, 312, 97, 0, + 0, 0, 0, 314, 0, 142, 98, 0, 99, 0, 100, 0, 0, 101, 102, 103, 0, 104, 105, 0, - 0, 0, 0, 0, 106, 107, 314, 315, 108, 109, + 0, 0, 0, 0, 106, 107, 315, 316, 108, 109, 0, 0, 0, 110, 0, 0, 0, 0, 111, 0, 0, 112, 113, 114, 115, 0, 0, 0, 0, 0, 116, 0, 117, 0, 118, 0, 0, 0, 0, 119, 120, 121, 122, 0, 123, 0, 0, 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, 0, 131, 132, 133, 0, 134, 0, 0, - 0, 135, 136, 137, 138, 139, 0, 0, 292, 293, - 376, 377, 0, 378, 142, 379, 0, 0, 0, 0, - 0, 0, 0, 0, 298, 0, 0, 0, 380, 381, - 0, 0, 0, 0, 98, 143, 230, 0, 421, 0, - 292, 293, 376, 377, 383, 378, 0, 379, 0, 0, - 0, 384, 0, 0, 0, 0, 298, 0, 97, 0, - 380, 381, 0, 0, 0, 0, 98, 304, 0, 0, - 421, 0, 0, 0, 0, 0, 383, 0, 0, 0, - 422, 0, 0, 384, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 386, 0, 0, 0, 0, 0, 304, - 0, 0, 0, 0, 0, 0, 292, 293, 376, 377, - 0, 378, 422, 379, 310, 134, 0, 0, 0, 0, - 0, 0, 298, 0, 387, 386, 380, 381, 388, 599, - 0, 0, 98, 0, 0, 0, 421, 23, 0, 0, - 0, 0, 383, 0, 0, 389, 310, 134, 0, 384, - 0, 0, 0, 423, 424, 0, 387, 0, 0, 0, - 708, 0, 0, 0, 0, 304, 0, 0, 0, 23, - 0, 0, 0, 0, 0, 0, 0, 389, 422, 0, - 0, 0, 0, 0, 97, 423, 424, 0, 0, 0, - 0, 386, 98, 0, 99, 0, 100, 0, 0, 101, - 102, 103, 0, 104, 105, 0, 0, 0, 0, 0, - 106, 107, 310, 134, 108, 109, 0, 0, 0, 110, - 0, 0, 387, 0, 111, 0, 388, 112, 113, 114, - 115, 0, 0, 0, 0, 23, 116, 0, 117, 0, - 118, 0, 0, 389, 0, 119, 120, 121, 122, 0, - 123, 423, 424, 0, 0, 0, 124, 0, 125, 126, - 127, 128, 129, 0, 0, 0, 0, 130, 0, 131, - 132, 133, 0, 134, 0, 0, 0, 135, 136, 137, - 138, 139, 0, 140, 0, 0, 141, 97, 0, 0, - 142, 0, 0, 0, 0, 98, 0, 99, 0, 100, - 0, 0, 101, 102, 103, 0, 104, 105, 0, 0, - 0, 143, 16, 106, 107, 0, 0, 108, 109, 0, - 0, 0, 110, 0, 249, 0, 0, 111, 0, 0, - 112, 113, 114, 115, 0, 250, 0, 0, 0, 116, - 0, 117, 0, 118, 0, 0, 0, 0, 119, 120, - 121, 122, 0, 123, 0, 0, 0, 0, 0, 124, - 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, - 130, 0, 131, 132, 133, 0, 134, 0, 0, 0, - 135, 136, 137, 138, 139, 0, 97, 0, 367, 368, - 0, 0, 0, 142, 98, 0, 99, 0, 100, 0, - 0, 101, 102, 103, 0, 104, 105, 0, 0, 0, - 0, 0, 106, 107, 143, 16, 108, 109, 0, 0, - 0, 110, 0, 0, 0, 0, 111, 0, 0, 112, - 113, 114, 115, 0, 0, 0, 0, 0, 116, 0, - 117, 0, 118, 0, 0, 0, 0, 119, 120, 121, - 122, 0, 123, 0, 0, 0, 0, 0, 124, 0, - 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, - 0, 131, 132, 133, 0, 134, 0, 0, 0, 135, - 136, 137, 138, 139, 0, 97, 0, 0, 0, 0, - 0, 0, 142, 98, 0, 99, 0, 100, 0, 0, - 101, 102, 103, 0, 104, 105, 0, 0, 0, 0, - 0, 106, 107, 143, 16, 108, 109, 0, 0, 0, - 110, 0, 0, 0, 0, 111, 0, 0, 112, 113, - 114, 115, 0, 0, 0, 0, 0, 116, 0, 117, - 0, 118, 0, 0, 0, 0, 119, 120, 121, 122, - 0, 123, 0, 0, 0, 0, 0, 124, 0, 125, - 126, 127, 128, 129, 0, 0, 0, 0, 130, 0, - 131, 132, 133, 0, 134, 0, 0, 0, 135, 136, - 137, 138, 139, 0, 97, 0, 0, 141, 0, 0, - 0, 142, 98, 0, 99, 0, 100, 0, 0, 101, - 102, 103, 0, 104, 105, 220, 0, 0, 0, 0, - 106, 107, 143, 16, 108, 109, 0, 0, 0, 110, + 0, 135, 136, 137, 138, 139, 0, 0, 293, 294, + 377, 378, 0, 379, 142, 380, 0, 0, 0, 0, + 0, 0, 0, 0, 299, 0, 97, 0, 381, 382, + 0, 0, 0, 0, 98, 143, 230, 0, 422, 0, + 293, 294, 377, 378, 384, 379, 0, 380, 0, 0, + 0, 385, 0, 0, 0, 0, 299, 0, 0, 0, + 381, 382, 0, 0, 0, 0, 98, 305, 0, 0, + 422, 0, 0, 0, 0, 0, 384, 0, 0, 0, + 423, 0, 0, 385, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 387, 0, 0, 0, 0, 0, 305, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 423, 0, 311, 134, 0, 0, 0, 0, + 0, 0, 0, 0, 388, 387, 0, 0, 712, 0, + 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, + 0, 0, 0, 0, 0, 390, 311, 134, 0, 0, + 0, 0, 0, 424, 425, 0, 388, 0, 0, 0, + 389, 0, 0, 0, 97, 0, 0, 0, 0, 23, + 0, 0, 98, 0, 99, 0, 100, 390, 0, 101, + 102, 103, 0, 104, 105, 424, 425, 285, 0, 0, + 106, 107, 0, 0, 108, 109, 0, 0, 0, 110, 0, 0, 0, 0, 111, 0, 0, 112, 113, 114, 115, 0, 0, 0, 0, 0, 116, 0, 117, 0, 118, 0, 0, 0, 0, 119, 120, 121, 122, 0, 123, 0, 0, 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, 0, 131, 132, 133, 0, 134, 0, 0, 0, 135, 136, 137, - 138, 139, 0, 97, 0, 0, 0, 0, 0, 0, + 138, 139, 0, 97, 286, 0, 0, 287, 0, 0, 142, 98, 0, 99, 0, 100, 0, 0, 101, 102, - 103, 0, 104, 105, 0, 0, 0, 0, 0, 106, - 107, 221, 16, 108, 109, 0, 0, 0, 110, 0, + 103, 0, 104, 105, 0, 0, 285, 0, 0, 106, + 107, 143, 16, 108, 109, 0, 0, 0, 110, 0, 0, 0, 0, 111, 0, 0, 112, 113, 114, 115, 0, 0, 0, 0, 0, 116, 0, 117, 0, 118, 0, 0, 0, 0, 119, 120, 121, 122, 0, 123, 0, 0, 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, 0, 131, 132, 133, 0, 134, 0, 0, 0, 135, 136, 137, 138, - 139, 0, 243, 0, 0, 0, 97, 0, 0, 142, - 0, 0, 0, 0, 98, 0, 99, 0, 100, 0, - 0, 101, 102, 103, 0, 104, 105, 0, 0, 0, - 143, 16, 106, 107, 0, 0, 108, 109, 0, 0, - 0, 110, 0, 0, 0, 0, 111, 0, 0, 112, - 113, 114, 115, 0, 0, 0, 0, 0, 116, 0, - 117, 0, 118, 0, 0, 0, 0, 119, 120, 121, - 122, 0, 123, 0, 0, 0, 0, 0, 124, 0, - 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, - 0, 131, 132, 133, 0, 134, 0, 0, 0, 135, - 136, 137, 138, 139, 0, 97, 0, 0, 0, 0, - 0, 0, 142, 98, 253, 99, 0, 100, 0, 0, - 101, 102, 103, 0, 104, 105, 0, 0, 0, 0, - 0, 106, 107, 143, 16, 108, 109, 0, 0, 0, - 110, 0, 0, 0, 0, 111, 0, 0, 112, 113, - 114, 115, 0, 0, 0, 0, 0, 116, 0, 117, + 139, 0, 97, 286, 0, 0, 354, 0, 0, 142, + 98, 0, 99, 0, 100, 0, 0, 101, 102, 103, + 0, 104, 105, 0, 0, 0, 0, 0, 106, 107, + 143, 16, 108, 109, 0, 0, 0, 110, 0, 0, + 0, 0, 111, 0, 0, 112, 113, 114, 115, 0, + 0, 0, 0, 0, 116, 0, 117, 0, 118, 0, + 0, 0, 0, 119, 120, 121, 122, 0, 123, 0, + 0, 0, 0, 0, 124, 0, 125, 126, 127, 128, + 129, 0, 0, 0, 0, 130, 0, 131, 132, 133, + 0, 134, 0, 0, 0, 135, 136, 137, 138, 139, + 0, 140, 0, 0, 141, 97, 0, 0, 142, 0, + 0, 0, 0, 98, 0, 99, 0, 100, 0, 0, + 101, 102, 103, 0, 104, 105, 0, 0, 0, 143, + 16, 106, 107, 0, 0, 108, 109, 0, 0, 0, + 110, 0, 249, 0, 0, 111, 0, 0, 112, 113, + 114, 115, 0, 250, 0, 0, 0, 116, 0, 117, 0, 118, 0, 0, 0, 0, 119, 120, 121, 122, 0, 123, 0, 0, 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, 0, 131, 132, 133, 0, 134, 0, 0, 0, 135, 136, - 137, 138, 139, 0, 97, 627, 0, 0, 0, 0, + 137, 138, 139, 0, 97, 0, 0, 0, 0, 0, 0, 142, 98, 0, 99, 0, 100, 0, 0, 101, - 102, 103, 0, 104, 105, 0, 0, 0, 0, 0, - 106, 107, 221, 16, 108, 109, 0, 0, 0, 110, + 102, 103, 0, 104, 105, 0, 0, 285, 0, 0, + 106, 107, 143, 16, 108, 109, 0, 0, 0, 110, 0, 0, 0, 0, 111, 0, 0, 112, 113, 114, 115, 0, 0, 0, 0, 0, 116, 0, 117, 0, 118, 0, 0, 0, 0, 119, 120, 121, 122, 0, 123, 0, 0, 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, 0, 131, 132, 133, 0, 134, 0, 0, 0, 135, 136, 137, - 138, 139, 0, 97, 0, 0, 0, 0, 0, 0, + 138, 139, 0, 97, 564, 368, 369, 0, 0, 0, 142, 98, 0, 99, 0, 100, 0, 0, 101, 102, 103, 0, 104, 105, 0, 0, 0, 0, 0, 106, - 107, 221, 230, 108, 109, 0, 0, 0, 110, 0, + 107, 143, 16, 108, 109, 0, 0, 0, 110, 0, 0, 0, 0, 111, 0, 0, 112, 113, 114, 115, 0, 0, 0, 0, 0, 116, 0, 117, 0, 118, 0, 0, 0, 0, 119, 120, 121, 122, 0, 123, @@ -10188,7 +10180,7 @@ namespace yy { 133, 0, 134, 0, 0, 0, 135, 136, 137, 138, 139, 0, 97, 0, 0, 0, 0, 0, 0, 142, 98, 0, 99, 0, 100, 0, 0, 101, 102, 103, - 0, 104, 105, 0, 0, 0, 0, 0, 106, 107, + 0, 104, 105, 0, 0, 285, 0, 0, 106, 107, 143, 16, 108, 109, 0, 0, 0, 110, 0, 0, 0, 0, 111, 0, 0, 112, 113, 114, 115, 0, 0, 0, 0, 0, 116, 0, 117, 0, 118, 0, @@ -10196,174 +10188,299 @@ namespace yy { 0, 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, 0, 131, 132, 133, 0, 134, 0, 0, 0, 135, 136, 137, 138, 139, - 0, 0, 0, 0, 0, 0, 0, 0, 142, 0, + 0, 97, 628, 0, 0, 0, 0, 0, 142, 98, + 0, 99, 0, 100, 0, 0, 101, 102, 103, 0, + 104, 105, 0, 0, 285, 0, 0, 106, 107, 143, + 16, 108, 109, 0, 0, 0, 110, 0, 0, 0, + 0, 111, 0, 0, 112, 113, 114, 115, 0, 0, + 0, 0, 0, 116, 0, 117, 0, 118, 0, 0, + 0, 0, 119, 120, 121, 122, 0, 123, 0, 0, + 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, + 0, 0, 0, 0, 130, 0, 131, 132, 133, 0, + 134, 0, 0, 0, 135, 136, 137, 138, 139, 0, + 97, 710, 0, 0, 0, 0, 0, 142, 98, 0, + 99, 0, 100, 0, 0, 101, 102, 103, 0, 104, + 105, 0, 0, 285, 0, 0, 106, 107, 143, 16, + 108, 109, 0, 0, 0, 110, 0, 0, 0, 0, + 111, 0, 0, 112, 113, 114, 115, 0, 0, 0, + 0, 0, 116, 0, 117, 0, 118, 0, 0, 0, + 0, 119, 120, 121, 122, 0, 123, 0, 0, 0, + 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, + 0, 0, 0, 130, 0, 131, 132, 133, 0, 134, + 0, 0, 0, 135, 136, 137, 138, 139, 0, 97, + 867, 0, 0, 0, 0, 0, 142, 98, 0, 99, + 0, 100, 0, 0, 101, 102, 103, 0, 104, 105, + 0, 0, 0, 0, 0, 106, 107, 143, 16, 108, + 109, 0, 0, 0, 110, 0, 0, 0, 0, 111, + 0, 0, 112, 113, 114, 115, 0, 0, 0, 0, + 0, 116, 0, 117, 0, 118, 0, 0, 0, 0, + 119, 120, 121, 122, 0, 123, 0, 0, 0, 0, + 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, + 0, 0, 130, 0, 131, 132, 133, 0, 134, 0, + 0, 0, 135, 136, 137, 138, 139, 0, 97, 0, + 0, 141, 0, 0, 0, 142, 98, 0, 99, 0, + 100, 0, 0, 101, 102, 103, 0, 104, 105, 220, + 0, 0, 0, 0, 106, 107, 143, 16, 108, 109, + 0, 0, 0, 110, 0, 0, 0, 0, 111, 0, + 0, 112, 113, 114, 115, 0, 0, 0, 0, 0, + 116, 0, 117, 0, 118, 0, 0, 0, 0, 119, + 120, 121, 122, 0, 123, 0, 0, 0, 0, 0, + 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, + 0, 130, 0, 131, 132, 133, 0, 134, 0, 0, + 0, 135, 136, 137, 138, 139, 0, 97, 0, 0, + 0, 0, 0, 0, 142, 98, 0, 99, 0, 100, + 0, 0, 101, 102, 103, 0, 104, 105, 0, 0, + 0, 0, 0, 106, 107, 221, 16, 108, 109, 0, + 0, 0, 110, 0, 0, 0, 0, 111, 0, 0, + 112, 113, 114, 115, 0, 0, 0, 0, 0, 116, + 0, 117, 0, 118, 0, 0, 0, 0, 119, 120, + 121, 122, 0, 123, 0, 0, 0, 0, 0, 124, + 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, + 130, 0, 131, 132, 133, 0, 134, 0, 0, 0, + 135, 136, 137, 138, 139, 0, 243, 0, 0, 0, + 97, 0, 0, 142, 0, 0, 0, 0, 98, 0, + 99, 0, 100, 0, 0, 101, 102, 103, 0, 104, + 105, 0, 0, 0, 143, 16, 106, 107, 0, 0, + 108, 109, 0, 0, 0, 110, 0, 0, 0, 0, + 111, 0, 0, 112, 113, 114, 115, 0, 0, 0, + 0, 0, 116, 0, 117, 0, 118, 0, 0, 0, + 0, 119, 120, 121, 122, 0, 123, 0, 0, 0, + 0, 0, 124, 0, 125, 126, 127, 128, 129, 0, + 0, 0, 0, 130, 0, 131, 132, 133, 0, 134, + 0, 0, 0, 135, 136, 137, 138, 139, 0, 97, + 0, 0, 0, 0, 0, 0, 142, 98, 253, 99, + 0, 100, 0, 0, 101, 102, 103, 0, 104, 105, + 0, 0, 0, 0, 0, 106, 107, 143, 16, 108, + 109, 0, 0, 0, 110, 0, 0, 0, 0, 111, + 0, 0, 112, 113, 114, 115, 0, 0, 0, 0, + 0, 116, 0, 117, 0, 118, 0, 0, 0, 0, + 119, 120, 121, 122, 0, 123, 0, 0, 0, 0, + 0, 124, 0, 125, 126, 127, 128, 129, 0, 0, + 0, 0, 130, 0, 131, 132, 133, 0, 134, 0, + 0, 0, 135, 136, 137, 138, 139, 0, 97, 631, + 0, 0, 0, 0, 0, 142, 98, 0, 99, 0, + 100, 0, 0, 101, 102, 103, 0, 104, 105, 0, + 0, 285, 0, 0, 106, 107, 221, 16, 108, 109, + 0, 0, 0, 110, 0, 0, 0, 0, 111, 0, + 0, 112, 113, 114, 115, 0, 0, 0, 0, 0, + 116, 0, 117, 0, 118, 0, 0, 0, 0, 119, + 120, 121, 122, 0, 123, 0, 0, 0, 0, 0, + 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, + 0, 130, 0, 131, 132, 133, 0, 134, 0, 0, + 0, 135, 136, 137, 138, 139, 0, 97, 0, 0, + 0, 0, 0, 0, 142, 98, 0, 99, 0, 100, + 0, 0, 101, 102, 103, 0, 104, 105, 0, 0, + 0, 0, 0, 106, 107, 143, 16, 108, 109, 0, + 0, 0, 110, 0, 0, 0, 0, 111, 0, 0, + 112, 113, 114, 115, 0, 0, 0, 0, 0, 116, + 0, 117, 0, 118, 0, 0, 0, 0, 119, 120, + 121, 122, 0, 123, 0, 0, 0, 0, 0, 124, + 0, 125, 126, 127, 128, 129, 0, 0, 0, 0, + 130, 0, 131, 132, 133, 0, 134, 0, 0, 0, + 135, 136, 137, 138, 139, 0, 97, 0, 0, 0, + 0, 0, 0, 142, 98, 0, 99, 0, 100, 0, + 0, 101, 102, 103, 0, 104, 105, 0, 0, 0, + 0, 0, 106, 107, 221, 230, 108, 109, 0, 0, + 0, 110, 0, 0, 0, 0, 111, 0, 0, 112, + 113, 114, 115, 0, 0, 0, 0, 0, 116, 0, + 117, 0, 118, 0, 0, 0, 0, 119, 120, 121, + 122, 0, 123, 0, 0, 0, 0, 0, 124, 0, + 125, 126, 127, 128, 129, 0, 0, 0, 0, 130, + 0, 131, 132, 133, 0, 134, 0, 0, 0, 135, + 136, 137, 138, 139, 0, 97, 0, 0, 0, 0, + 0, 0, 142, 98, 0, 99, 0, 100, 0, 0, + 101, 102, 103, 0, 104, 105, 0, 0, 0, 0, + 0, 106, 107, 143, 16, 108, 109, 0, 0, 0, + 110, 0, 0, 0, 0, 111, 0, 0, 112, 113, + 114, 115, 0, 0, 0, 0, 0, 116, 0, 117, + 0, 118, 0, 0, 0, 0, 119, 120, 121, 122, + 0, 123, 0, 0, 0, 0, 0, 124, 0, 125, + 126, 127, 128, 129, 0, 0, 0, 0, 130, 0, + 131, 132, 133, 0, 134, 0, 0, 0, 135, 136, + 137, 138, 139, 0, 0, 0, 0, 0, 0, 0, + 0, 142, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 368, + 369, 0, 221, 16, 728, 827, 730, 0, 731, 828, + 733, 734, 829, 830, 831, 832, 833, 834, 741, 742, + 743, 744, 835, 836, 837, 748, 749, 838, 839, 752, + 753, 754, 840, 756, 757, 758, 759, 841, 842, 762, + 0, 0, 0, 0, 763, 764, 765, 766, 767, 843, + 769, 844, 771, 0, 772, 773, 774, 775, 0, 845, + 0, 846, 778, 847, 848, 781, 782, 783, 784, 0, + 785, 849, 850, 851, 852, 853, 791, 792, 793, 794, + 0, 795, 0, 854, 855, 856, 857, 800, 801, 802, + 0, 0, 0, 0, 0, 858, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 367, 368, 0, 221, - 16, 724, 823, 726, 0, 727, 824, 729, 730, 825, - 826, 827, 828, 829, 830, 737, 738, 739, 740, 831, - 832, 833, 744, 745, 834, 835, 748, 749, 750, 836, - 752, 753, 754, 755, 837, 838, 758, 0, 0, 0, - 0, 759, 760, 761, 762, 763, 839, 765, 840, 767, - 0, 768, 769, 770, 771, 0, 841, 0, 842, 774, - 843, 844, 777, 778, 779, 780, 0, 781, 845, 846, - 847, 848, 849, 787, 788, 789, 790, 0, 791, 0, - 850, 851, 852, 853, 796, 797, 798, 0, 0, 0, - 0, 0, 854, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 800, - 0, 0, 0, 0, 0, 0, 0, 0, 724, 823, - 726, 856, 727, 824, 729, 730, 825, 826, 827, 828, - 829, 830, 737, 738, 739, 740, 831, 832, 833, 744, - 745, 834, 835, 748, 749, 750, 836, 752, 753, 754, - 755, 837, 838, 758, 0, 0, 0, 0, 759, 760, - 761, 762, 763, 839, 765, 840, 767, 0, 768, 769, - 770, 771, 0, 841, 0, 842, 774, 843, 844, 777, - 778, 779, 780, 0, 781, 845, 846, 847, 848, 849, - 787, 788, 789, 790, 0, 791, 0, 850, 851, 852, - 853, 796, 797, 798, 0, 0, 0, 0, 0, 854, - 0, 0, 0, 0, 866, 0, 0, 855, 0, 0, - 0, 0, 0, 0, 0, 0, 800, 0, 0, 0, - 0, 0, 0, 0, 0, 724, 823, 726, 856, 727, - 824, 729, 730, 825, 826, 827, 828, 829, 830, 737, - 738, 739, 740, 831, 832, 833, 744, 745, 834, 835, - 748, 749, 750, 836, 752, 753, 754, 755, 837, 838, - 758, 0, 0, 0, 0, 759, 760, 761, 762, 763, - 839, 765, 840, 767, 0, 768, 769, 770, 771, 0, - 841, 0, 842, 774, 843, 844, 777, 778, 779, 780, - 0, 781, 845, 846, 847, 848, 849, 787, 788, 789, - 790, 0, 791, 0, 850, 851, 852, 853, 796, 797, - 798, 0, 0, 0, 0, 0, 854, 0, 0, 0, - 0, 0, 0, 0, 855, 872, 0, 0, 0, 0, - 0, 0, 0, 800, 0, 0, 0, 0, 0, 0, - 0, 0, 724, 823, 726, 856, 727, 824, 729, 730, - 825, 826, 827, 828, 829, 830, 737, 738, 739, 740, - 831, 832, 833, 744, 745, 834, 835, 748, 749, 750, - 836, 752, 753, 754, 755, 837, 838, 758, 0, 0, - 0, 0, 759, 760, 761, 762, 763, 839, 765, 840, - 767, 0, 768, 769, 770, 771, 0, 841, 0, 842, - 774, 843, 844, 777, 778, 779, 780, 0, 781, 845, - 846, 847, 848, 849, 787, 788, 789, 790, 0, 791, - 0, 850, 851, 852, 853, 796, 797, 798, 0, 0, - 0, 0, 0, 854, 0, 0, 0, 0, -268, 0, - -268, 855, -268, 0, -268, -268, 0, 0, 0, 0, - 800, 0, -268, -268, -268, -268, 0, 0, 0, -268, - -268, 0, 856, -268, -268, -268, 0, -268, -268, -268, - -268, 0, 0, -268, 0, 0, 0, 0, -268, -268, - -268, -268, -268, 0, -268, 0, -268, 0, -268, -268, - -268, -268, 0, 0, 0, 0, -268, 0, 0, -268, - -268, -268, -268, 0, -268, 0, 0, 0, 0, 0, - -268, -268, -268, -268, 0, -268, 0, 0, 0, 0, - 0, -268, -268, -268, 0, 0, -269, 0, -269, 0, - -269, 0, -269, -269, -268, 0, 0, 0, 0, 0, - -269, -269, -269, -269, 0, 0, -268, -269, -269, 0, - 0, -269, -269, -269, -268, -269, -269, -269, -269, 0, - 0, -269, 0, 0, 0, 0, -269, -269, -269, -269, - -269, 0, -269, 0, -269, 0, -269, -269, -269, -269, - 0, 0, 0, 0, -269, 0, 0, -269, -269, -269, - -269, 0, -269, 0, 0, 0, 0, 0, -269, -269, - -269, -269, 0, -269, 0, 0, 0, 0, 0, -269, - -269, -269, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, -269, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -269, 0, 0, 0, 0, 0, - 0, 0, -269 + 0, 0, 804, 0, 0, 0, 0, 0, 0, 0, + 0, 728, 827, 730, 860, 731, 828, 733, 734, 829, + 830, 831, 832, 833, 834, 741, 742, 743, 744, 835, + 836, 837, 748, 749, 838, 839, 752, 753, 754, 840, + 756, 757, 758, 759, 841, 842, 762, 0, 0, 0, + 0, 763, 764, 765, 766, 767, 843, 769, 844, 771, + 0, 772, 773, 774, 775, 0, 845, 0, 846, 778, + 847, 848, 781, 782, 783, 784, 0, 785, 849, 850, + 851, 852, 853, 791, 792, 793, 794, 0, 795, 0, + 854, 855, 856, 857, 800, 801, 802, 0, 0, 0, + 0, 0, 858, 0, 0, 0, 0, 870, 0, 0, + 859, 0, 0, 0, 0, 0, 0, 0, 0, 804, + 0, 0, 0, 0, 0, 0, 0, 0, 728, 827, + 730, 860, 731, 828, 733, 734, 829, 830, 831, 832, + 833, 834, 741, 742, 743, 744, 835, 836, 837, 748, + 749, 838, 839, 752, 753, 754, 840, 756, 757, 758, + 759, 841, 842, 762, 0, 0, 0, 0, 763, 764, + 765, 766, 767, 843, 769, 844, 771, 0, 772, 773, + 774, 775, 0, 845, 0, 846, 778, 847, 848, 781, + 782, 783, 784, 0, 785, 849, 850, 851, 852, 853, + 791, 792, 793, 794, 0, 795, 0, 854, 855, 856, + 857, 800, 801, 802, 0, 0, 0, 0, 0, 858, + 0, 0, 0, 0, 0, 0, 0, 859, 876, 0, + 0, 0, 0, 0, 0, 0, 804, 0, 0, 0, + 0, 0, 0, 0, 0, 728, 827, 730, 860, 731, + 828, 733, 734, 829, 830, 831, 832, 833, 834, 741, + 742, 743, 744, 835, 836, 837, 748, 749, 838, 839, + 752, 753, 754, 840, 756, 757, 758, 759, 841, 842, + 762, 0, 0, 0, 0, 763, 764, 765, 766, 767, + 843, 769, 844, 771, 0, 772, 773, 774, 775, 0, + 845, 0, 846, 778, 847, 848, 781, 782, 783, 784, + 0, 785, 849, 850, 851, 852, 853, 791, 792, 793, + 794, 0, 795, 0, 854, 855, 856, 857, 800, 801, + 802, 0, 0, 0, 0, 0, 858, 0, 0, 0, + 0, -268, 0, -268, 859, -268, 0, -268, -268, 0, + 0, 0, 0, 804, 0, -268, -268, -268, -268, 0, + 0, 0, -268, -268, 0, 860, -268, -268, -268, 0, + -268, -268, -268, -268, 0, 0, -268, 0, 0, 0, + 0, -268, -268, -268, -268, -268, 0, -268, 0, -268, + 0, -268, -268, -268, -268, 0, 0, 0, 0, -268, + 0, 0, -268, -268, -268, -268, 0, -268, 0, 0, + 0, 0, 0, -268, -268, -268, -268, 0, -268, 0, + 0, 0, 0, 0, -268, -268, -268, 0, 0, -269, + 0, -269, 0, -269, 0, -269, -269, -268, 0, 0, + 0, 0, 0, -269, -269, -269, -269, 0, 0, -268, + -269, -269, 0, 0, -269, -269, -269, -268, -269, -269, + -269, -269, 0, 0, -269, 0, 0, 0, 0, -269, + -269, -269, -269, -269, 0, -269, 0, -269, 0, -269, + -269, -269, -269, 0, 0, 0, 0, -269, 0, 0, + -269, -269, -269, -269, 0, -269, 0, 0, 0, 0, + 0, -269, -269, -269, -269, 0, -269, 0, 0, 0, + 0, 0, -269, -269, -269, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -269, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -269, 0, 0, + 0, 0, 0, 0, 0, -269 }; const short asn1_parser::yycheck_[] = { - 9, 128, 129, 140, 141, 312, 203, 458, 455, 18, - 128, 129, 448, 210, 207, 0, 246, 53, 3, 216, - 358, 555, 89, 90, 286, 496, 22, 4, 140, 141, - 66, 67, 4, 690, 70, 141, 22, 484, 74, 258, - 22, 45, 4, 514, 313, 24, 25, 4, 5, 85, - 77, 708, 33, 22, 22, 54, 31, 50, 22, 64, - 89, 45, 87, 325, 122, 4, 5, 6, 7, 206, - 9, 126, 11, 140, 141, 77, 30, 102, 112, 4, - 112, 20, 4, 150, 113, 45, 141, 17, 18, 122, - 125, 648, 150, 211, 206, 34, 89, 126, 9, 124, - 87, 126, 137, 149, 89, 141, 243, 18, 175, 53, - 95, 145, 450, 145, 95, 102, 673, 150, 122, 146, - 121, 125, 66, 67, 63, 126, 70, 126, 195, 45, - 74, 243, 137, 114, 246, 582, 45, 124, 672, 126, - 79, 85, 411, 210, 146, 89, 150, 366, 805, 216, - 44, 45, 349, 350, 150, 140, 141, 111, 355, 356, - 124, 45, 122, 149, 200, 125, 150, 149, 150, 0, - 149, 110, 149, 150, 149, 150, 243, 149, 150, 246, - 149, 149, 249, 250, 51, 149, 253, 305, 150, 246, - 150, 529, 149, 150, 203, 149, 205, 141, 207, 256, - 267, 210, 45, 212, 861, 24, 122, 216, 217, 124, - 149, 150, 431, 122, 433, 122, 283, 29, 50, 690, - 671, 206, 258, 360, 149, 150, 445, 149, 150, 50, - 449, 50, 35, 213, 150, 302, 50, 708, 122, 50, - 89, 150, 121, 150, 149, 150, 443, 126, 360, 258, - 124, 308, 699, 262, 360, 361, 59, 89, 243, 452, - 124, 246, 126, 570, 113, 16, 150, 70, 89, 122, - 89, 256, 339, 258, 138, 89, 150, 89, 89, 122, - 124, 93, 349, 350, 125, 124, 133, 549, 355, 356, - 520, 126, 522, 360, 138, 123, 137, 150, 560, 138, - 56, 121, 130, 138, 60, 75, 126, 150, 252, 125, - 254, 126, 256, 4, 5, 6, 7, 374, 9, 538, - 11, 137, 541, 308, 360, 361, 857, 384, 123, 20, - 366, 388, 312, 313, 865, 130, 870, 675, 125, 646, - 349, 350, 124, 34, 126, 138, 355, 356, 121, 467, - 137, 126, 124, 126, 126, 130, 138, 150, 495, 256, - 497, 125, 125, 420, 308, 816, 138, 124, 106, 141, - 127, 140, 63, 137, 137, 360, 106, 684, 445, 815, - 137, 366, 106, 495, 141, 497, 453, 141, 137, 374, - 861, 145, 141, 125, 137, 431, 145, 433, 141, 384, - 24, 25, 145, 388, 28, 124, 463, 126, 520, 445, - 522, 308, 61, 449, 213, 4, 360, 361, 520, 110, - 522, 618, 431, 874, 433, 431, 563, 433, 495, 496, - 374, 411, 241, 140, 443, 420, 245, 24, 25, 448, - 384, 24, 25, 452, 388, 213, 431, 121, 433, 458, - 678, 563, 680, 520, 71, 522, 125, 126, 149, 150, - 445, 518, 127, 520, 449, 522, 523, 524, 525, 526, - 527, 124, 125, 126, 133, 455, 420, 374, 463, 459, - 588, 589, 36, 137, 72, 142, 142, 384, 124, 56, - 125, 388, 142, 529, 103, 103, 563, 533, 478, 124, - 91, 481, 538, 124, 484, 541, 87, 704, 124, 69, - 495, 103, 497, 312, 313, 16, 138, 121, 138, 463, - 638, 124, 124, 420, 130, 138, 138, 594, 124, 126, - 87, 540, 150, 518, 87, 520, 87, 522, 523, 524, - 525, 526, 527, 87, 312, 313, 555, 124, 138, 124, - 124, 22, 125, 538, 132, 141, 541, 141, 137, 568, - 125, 141, 619, 126, 87, 574, 463, 137, 58, 138, - 138, 137, 40, 125, 518, 40, 13, 634, 563, 523, - 524, 525, 526, 527, 620, 124, 58, 137, 123, 130, - 570, 125, 138, 126, 124, 137, 145, 125, 145, 137, - 126, 138, 582, 125, 124, 126, 138, 138, 126, 618, - 137, 124, 411, 149, 124, 127, 673, 125, 137, 563, - 137, 518, 127, 690, 122, 129, 523, 524, 525, 526, - 527, 4, 125, 690, 619, 144, 150, 125, 137, 40, - 127, 708, 138, 411, 127, 122, 445, 120, 137, 634, - 449, 708, 127, 127, 138, 125, 455, 137, 785, 786, - 459, 670, 671, 672, 127, 127, 646, 785, 786, 678, - 137, 680, 125, 137, 125, 619, 125, 686, 687, 478, - 141, 137, 481, 137, 741, 484, 138, 455, 673, 104, - 634, 459, 138, 137, 124, 704, 137, 137, 141, 125, - 138, 148, 138, 137, 684, 690, 137, 125, 137, 3, - 478, 592, 655, 481, 243, 855, 484, 673, 805, 699, - 802, 563, 619, 708, 90, 4, 5, 6, 7, 673, - 9, 675, 11, 360, 563, 802, 242, 634, 805, 645, - 685, 20, 18, 32, 686, 802, 74, 53, 805, 70, - 85, 670, 540, 618, 538, 34, 741, 217, 696, 11, - 44, 49, 478, 481, 459, 582, -1, -1, -1, -1, - 334, 570, -1, -1, -1, -1, 673, -1, -1, -1, - -1, -1, -1, 582, 63, -1, -1, -1, -1, -1, - -1, -1, -1, 690, -1, -1, -1, 741, -1, -1, - 79, -1, 570, -1, -1, -1, 815, 816, -1, -1, - -1, 708, -1, -1, 582, -1, -1, 802, -1, -1, - 805, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 110, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 741, -1, -1, 646, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 870, -1, -1, -1, 874, -1, -1, -1, -1, - 149, 150, -1, -1, -1, -1, -1, -1, 646, -1, - -1, -1, -1, -1, -1, 684, -1, -1, -1, -1, + 9, 449, 359, 140, 141, 558, 313, 128, 129, 18, + 140, 141, 694, 286, 213, 0, 207, 246, 3, 22, + 53, 22, 128, 129, 141, 461, 4, 456, 499, 458, + 712, 4, 5, 66, 67, 4, 4, 70, 22, 30, + 258, 74, 22, 4, 31, 4, 517, 22, 24, 25, + 33, 22, 85, 326, 314, 77, 50, 203, 487, 77, + 64, 24, 87, 87, 210, 54, 652, 124, 50, 206, + 216, 861, 89, 149, 89, 29, 206, 102, 102, 869, + 50, 4, 5, 6, 7, 112, 9, 50, 11, 0, + 211, 677, 112, 150, 451, 89, 113, 20, 113, 124, + 124, 126, 126, 50, 89, 51, 243, 89, 141, 126, + 95, 34, 95, 243, 313, 314, 246, 213, 145, 89, + 111, 50, 50, 676, 146, 145, 89, 809, 146, 35, + 126, 114, 126, 137, 213, 89, 124, 126, 126, 93, + 63, 523, 89, 525, 124, 141, 149, 150, 149, 367, + 138, 16, 412, 59, 121, 140, 141, 586, 149, 126, + 89, 89, 149, 150, 70, 122, 150, 200, 124, 149, + 9, 149, 150, 149, 149, 532, 149, 150, 149, 18, + 149, 150, 150, 865, 122, 306, 75, 110, 149, 150, + 149, 150, 122, 150, 203, 121, 205, 138, 207, 123, + 126, 210, 122, 212, 350, 351, 130, 216, 217, 150, + 356, 357, 150, 412, 432, 124, 434, 313, 314, 133, + 150, 206, 125, 694, 361, 258, 149, 150, 446, 138, + 150, 361, 450, 124, 313, 314, 127, 121, 124, 675, + 126, 712, 126, 126, 361, 362, 137, 446, 125, 258, + 141, 450, 138, 262, 124, 141, 126, 456, 243, 458, + 137, 246, 453, 462, 124, 126, 56, 574, 138, 125, + 60, 256, 125, 258, 703, 125, 53, 138, 138, 552, + 125, 137, 481, 125, 137, 484, 140, 137, 487, 66, + 67, 564, 137, 70, 523, 137, 525, 74, 444, 24, + 25, 137, 106, 28, 123, 141, 89, 90, 85, 145, + 137, 130, 89, 126, 141, 121, 412, 130, 145, 61, + 126, 874, 679, 541, 309, 106, 544, 141, 361, 362, + 124, 145, 126, 412, 367, 106, 241, 124, 125, 126, + 245, 350, 351, 650, 432, 4, 434, 356, 357, 470, + 682, 140, 684, 17, 18, 24, 25, 140, 141, 71, + 456, 498, 458, 500, 141, 121, 462, 150, 498, 127, + 500, 819, 133, 149, 150, 574, 361, 456, 36, 458, + 72, 688, 367, 462, 820, 481, 137, 586, 484, 142, + 375, 487, 175, 523, 865, 525, 44, 45, 142, 432, + 385, 434, 481, 124, 389, 484, 24, 25, 487, 125, + 126, 56, 195, 446, 592, 593, 125, 450, 142, 103, + 103, 124, 124, 432, 91, 434, 87, 210, 124, 212, + 567, 69, 256, 216, 217, 444, 421, 567, 103, 16, + 449, 138, 878, 121, 453, 138, 150, 432, 124, 434, + 124, 650, 461, 130, 124, 126, 138, 138, 87, 87, + 243, 446, 87, 246, 87, 450, 249, 250, 124, 141, + 253, 124, 138, 141, 124, 252, 622, 254, 574, 256, + 22, 466, 125, 137, 267, 309, 141, 246, 132, 688, + 586, 125, 138, 126, 87, 574, 137, 256, 138, 532, + 283, 125, 137, 536, 703, 58, 40, 586, 541, 40, + 13, 544, 124, 498, 58, 500, 137, 123, 125, 130, + 303, 642, 138, 126, 124, 145, 125, 137, 137, 126, + 145, 125, 309, 138, 543, 126, 521, 138, 523, 124, + 525, 526, 527, 528, 529, 530, 138, 126, 137, 558, + 309, 375, 124, 149, 650, 124, 541, 340, 125, 544, + 144, 385, 708, 572, 137, 389, 137, 350, 351, 578, + 127, 650, 127, 356, 357, 122, 4, 129, 361, 125, + 150, 137, 567, 40, 361, 362, 125, 138, 137, 127, + 127, 624, 688, 122, 120, 127, 137, 421, 375, 127, + 125, 137, 137, 127, 127, 125, 125, 703, 385, 688, + 125, 141, 389, 622, 104, 137, 375, 138, 124, 137, + 125, 138, 138, 137, 703, 137, 385, 137, 141, 138, + 389, 138, 125, 137, 3, 137, 137, 148, 623, 243, + 659, 596, 466, 859, 421, 677, 809, 806, 567, 90, + 361, 567, 242, 638, 649, 689, 18, 32, 74, 690, + 53, 70, 421, 446, 85, 674, 675, 676, 789, 790, + 700, 454, 674, 682, 543, 684, 11, 217, 461, 622, + 481, 690, 691, 789, 790, 49, 541, 44, 484, 466, + 462, 586, 677, 335, -1, -1, -1, 521, -1, 708, + -1, -1, 526, 527, 528, 529, 530, 466, -1, 694, + -1, -1, -1, -1, -1, 498, 499, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 712, -1, 4, + 5, 6, 7, -1, 9, -1, 11, -1, -1, -1, + 523, -1, 525, -1, 521, 20, -1, -1, -1, 526, + 527, 528, 529, 530, -1, -1, -1, -1, -1, 34, + 745, -1, 521, -1, 523, -1, 525, 526, 527, 528, + 529, 530, -1, -1, -1, 558, -1, -1, -1, -1, + -1, -1, -1, -1, 567, -1, -1, -1, 63, -1, + 567, -1, -1, -1, -1, -1, -1, -1, -1, 623, + -1, -1, -1, -1, 79, -1, -1, -1, -1, -1, + 819, 820, -1, -1, 638, 598, -1, -1, -1, -1, + -1, 806, -1, -1, 809, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 110, -1, -1, -1, -1, + -1, -1, 4, 5, 6, 7, 623, 9, -1, 11, + -1, -1, -1, 677, -1, 130, -1, -1, 20, -1, + -1, 638, 24, 25, 623, 874, -1, -1, 30, 878, + 694, -1, 34, -1, 149, 150, -1, -1, 40, 638, + -1, -1, -1, -1, -1, 47, -1, -1, 712, -1, + -1, -1, 675, 676, -1, -1, -1, -1, -1, -1, + 677, 63, 679, -1, -1, -1, -1, -1, -1, -1, + -1, 694, -1, -1, 76, -1, -1, -1, 677, -1, + -1, 745, -1, -1, -1, -1, -1, 89, -1, 712, + -1, -1, -1, -1, -1, 694, 4, 5, 6, 7, + -1, 9, -1, 11, -1, -1, -1, -1, 110, 111, + -1, -1, 20, 712, -1, -1, -1, -1, 120, -1, + -1, -1, 124, 125, -1, -1, 34, -1, 745, -1, + -1, 133, -1, -1, -1, -1, -1, -1, -1, 141, + -1, -1, 806, -1, -1, 809, 745, 149, 150, -1, + -1, -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 699, -1, -1, -1, -1, 802, -1, -1, 805, -1, - -1, -1, 4, 5, 6, 7, 684, 9, -1, 11, - -1, -1, -1, -1, -1, -1, -1, -1, 20, -1, - 22, 699, 24, 25, -1, -1, -1, 29, 30, 31, + -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 806, -1, -1, 809, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 820, -1, -1, + -1, -1, 110, -1, -1, -1, -1, 806, -1, -1, + 809, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 4, 5, 6, 7, -1, 9, -1, 11, + -1, 149, 150, -1, -1, -1, -1, -1, 20, -1, + 22, 874, 24, 25, -1, 878, -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, @@ -10475,75 +10592,33 @@ namespace yy { -1, 105, -1, 107, 108, 109, -1, 111, -1, -1, -1, 115, 116, 117, 118, 119, -1, -1, 4, 5, 6, 7, -1, 9, 128, 11, -1, -1, -1, -1, - -1, -1, -1, -1, 20, -1, -1, -1, 24, 25, + -1, -1, -1, -1, 20, -1, 22, -1, 24, 25, -1, -1, -1, -1, 30, 149, 150, -1, 34, -1, 4, 5, 6, 7, 40, 9, -1, 11, -1, -1, - -1, 47, -1, -1, -1, -1, 20, -1, 22, -1, + -1, 47, -1, -1, -1, -1, 20, -1, -1, -1, 24, 25, -1, -1, -1, -1, 30, 63, -1, -1, 34, -1, -1, -1, -1, -1, 40, -1, -1, -1, 76, -1, -1, 47, -1, -1, -1, -1, -1, -1, -1, -1, -1, 89, -1, -1, -1, -1, -1, 63, - -1, -1, -1, -1, -1, -1, 4, 5, 6, 7, - -1, 9, 76, 11, 110, 111, -1, -1, -1, -1, - -1, -1, 20, -1, 120, 89, 24, 25, 124, 125, - -1, -1, 30, -1, -1, -1, 34, 133, -1, -1, - -1, -1, 40, -1, -1, 141, 110, 111, -1, 47, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 76, -1, 110, 111, -1, -1, -1, -1, + -1, -1, -1, -1, 120, 89, -1, -1, 124, -1, + -1, -1, -1, -1, -1, -1, -1, 133, -1, -1, + -1, -1, -1, -1, -1, 141, 110, 111, -1, -1, -1, -1, -1, 149, 150, -1, 120, -1, -1, -1, - 124, -1, -1, -1, -1, 63, -1, -1, -1, 133, - -1, -1, -1, -1, -1, -1, -1, 141, 76, -1, - -1, -1, -1, -1, 22, 149, 150, -1, -1, -1, - -1, 89, 30, -1, 32, -1, 34, -1, -1, 37, - 38, 39, -1, 41, 42, -1, -1, -1, -1, -1, - 48, 49, 110, 111, 52, 53, -1, -1, -1, 57, - -1, -1, 120, -1, 62, -1, 124, 65, 66, 67, - 68, -1, -1, -1, -1, 133, 74, -1, 76, -1, - 78, -1, -1, 141, -1, 83, 84, 85, 86, -1, - 88, 149, 150, -1, -1, -1, 94, -1, 96, 97, - 98, 99, 100, -1, -1, -1, -1, 105, -1, 107, - 108, 109, -1, 111, -1, -1, -1, 115, 116, 117, - 118, 119, -1, 121, -1, -1, 124, 22, -1, -1, - 128, -1, -1, -1, -1, 30, -1, 32, -1, 34, - -1, -1, 37, 38, 39, -1, 41, 42, -1, -1, - -1, 149, 150, 48, 49, -1, -1, 52, 53, -1, - -1, -1, 57, -1, 59, -1, -1, 62, -1, -1, - 65, 66, 67, 68, -1, 70, -1, -1, -1, 74, - -1, 76, -1, 78, -1, -1, -1, -1, 83, 84, - 85, 86, -1, 88, -1, -1, -1, -1, -1, 94, - -1, 96, 97, 98, 99, 100, -1, -1, -1, -1, - 105, -1, 107, 108, 109, -1, 111, -1, -1, -1, - 115, 116, 117, 118, 119, -1, 22, -1, 24, 25, - -1, -1, -1, 128, 30, -1, 32, -1, 34, -1, - -1, 37, 38, 39, -1, 41, 42, -1, -1, -1, - -1, -1, 48, 49, 149, 150, 52, 53, -1, -1, - -1, 57, -1, -1, -1, -1, 62, -1, -1, 65, - 66, 67, 68, -1, -1, -1, -1, -1, 74, -1, - 76, -1, 78, -1, -1, -1, -1, 83, 84, 85, - 86, -1, 88, -1, -1, -1, -1, -1, 94, -1, - 96, 97, 98, 99, 100, -1, -1, -1, -1, 105, - -1, 107, 108, 109, -1, 111, -1, -1, -1, 115, - 116, 117, 118, 119, -1, 22, -1, -1, -1, -1, - -1, -1, 128, 30, -1, 32, -1, 34, -1, -1, - 37, 38, 39, -1, 41, 42, -1, -1, -1, -1, - -1, 48, 49, 149, 150, 52, 53, -1, -1, -1, - 57, -1, -1, -1, -1, 62, -1, -1, 65, 66, - 67, 68, -1, -1, -1, -1, -1, 74, -1, 76, - -1, 78, -1, -1, -1, -1, 83, 84, 85, 86, - -1, 88, -1, -1, -1, -1, -1, 94, -1, 96, - 97, 98, 99, 100, -1, -1, -1, -1, 105, -1, - 107, 108, 109, -1, 111, -1, -1, -1, 115, 116, - 117, 118, 119, -1, 22, -1, -1, 124, -1, -1, - -1, 128, 30, -1, 32, -1, 34, -1, -1, 37, - 38, 39, -1, 41, 42, 43, -1, -1, -1, -1, - 48, 49, 149, 150, 52, 53, -1, -1, -1, 57, + 124, -1, -1, -1, 22, -1, -1, -1, -1, 133, + -1, -1, 30, -1, 32, -1, 34, 141, -1, 37, + 38, 39, -1, 41, 42, 149, 150, 45, -1, -1, + 48, 49, -1, -1, 52, 53, -1, -1, -1, 57, -1, -1, -1, -1, 62, -1, -1, 65, 66, 67, 68, -1, -1, -1, -1, -1, 74, -1, 76, -1, 78, -1, -1, -1, -1, 83, 84, 85, 86, -1, 88, -1, -1, -1, -1, -1, 94, -1, 96, 97, 98, 99, 100, -1, -1, -1, -1, 105, -1, 107, 108, 109, -1, 111, -1, -1, -1, 115, 116, 117, - 118, 119, -1, 22, -1, -1, -1, -1, -1, -1, + 118, 119, -1, 22, 122, -1, -1, 125, -1, -1, 128, 30, -1, 32, -1, 34, -1, -1, 37, 38, - 39, -1, 41, 42, -1, -1, -1, -1, -1, 48, + 39, -1, 41, 42, -1, -1, 45, -1, -1, 48, 49, 149, 150, 52, 53, -1, -1, -1, 57, -1, -1, -1, -1, 62, -1, -1, 65, 66, 67, 68, -1, -1, -1, -1, -1, 74, -1, 76, -1, 78, @@ -10551,29 +10626,29 @@ namespace yy { -1, -1, -1, -1, -1, 94, -1, 96, 97, 98, 99, 100, -1, -1, -1, -1, 105, -1, 107, 108, 109, -1, 111, -1, -1, -1, 115, 116, 117, 118, - 119, -1, 121, -1, -1, -1, 22, -1, -1, 128, - -1, -1, -1, -1, 30, -1, 32, -1, 34, -1, - -1, 37, 38, 39, -1, 41, 42, -1, -1, -1, - 149, 150, 48, 49, -1, -1, 52, 53, -1, -1, - -1, 57, -1, -1, -1, -1, 62, -1, -1, 65, - 66, 67, 68, -1, -1, -1, -1, -1, 74, -1, - 76, -1, 78, -1, -1, -1, -1, 83, 84, 85, - 86, -1, 88, -1, -1, -1, -1, -1, 94, -1, - 96, 97, 98, 99, 100, -1, -1, -1, -1, 105, - -1, 107, 108, 109, -1, 111, -1, -1, -1, 115, - 116, 117, 118, 119, -1, 22, -1, -1, -1, -1, - -1, -1, 128, 30, 130, 32, -1, 34, -1, -1, - 37, 38, 39, -1, 41, 42, -1, -1, -1, -1, - -1, 48, 49, 149, 150, 52, 53, -1, -1, -1, - 57, -1, -1, -1, -1, 62, -1, -1, 65, 66, - 67, 68, -1, -1, -1, -1, -1, 74, -1, 76, + 119, -1, 22, 122, -1, -1, 125, -1, -1, 128, + 30, -1, 32, -1, 34, -1, -1, 37, 38, 39, + -1, 41, 42, -1, -1, -1, -1, -1, 48, 49, + 149, 150, 52, 53, -1, -1, -1, 57, -1, -1, + -1, -1, 62, -1, -1, 65, 66, 67, 68, -1, + -1, -1, -1, -1, 74, -1, 76, -1, 78, -1, + -1, -1, -1, 83, 84, 85, 86, -1, 88, -1, + -1, -1, -1, -1, 94, -1, 96, 97, 98, 99, + 100, -1, -1, -1, -1, 105, -1, 107, 108, 109, + -1, 111, -1, -1, -1, 115, 116, 117, 118, 119, + -1, 121, -1, -1, 124, 22, -1, -1, 128, -1, + -1, -1, -1, 30, -1, 32, -1, 34, -1, -1, + 37, 38, 39, -1, 41, 42, -1, -1, -1, 149, + 150, 48, 49, -1, -1, 52, 53, -1, -1, -1, + 57, -1, 59, -1, -1, 62, -1, -1, 65, 66, + 67, 68, -1, 70, -1, -1, -1, 74, -1, 76, -1, 78, -1, -1, -1, -1, 83, 84, 85, 86, -1, 88, -1, -1, -1, -1, -1, 94, -1, 96, 97, 98, 99, 100, -1, -1, -1, -1, 105, -1, 107, 108, 109, -1, 111, -1, -1, -1, 115, 116, - 117, 118, 119, -1, 22, 122, -1, -1, -1, -1, + 117, 118, 119, -1, 22, -1, -1, -1, -1, -1, -1, 128, 30, -1, 32, -1, 34, -1, -1, 37, - 38, 39, -1, 41, 42, -1, -1, -1, -1, -1, + 38, 39, -1, 41, 42, -1, -1, 45, -1, -1, 48, 49, 149, 150, 52, 53, -1, -1, -1, 57, -1, -1, -1, -1, 62, -1, -1, 65, 66, 67, 68, -1, -1, -1, -1, -1, 74, -1, 76, -1, @@ -10581,7 +10656,7 @@ namespace yy { 88, -1, -1, -1, -1, -1, 94, -1, 96, 97, 98, 99, 100, -1, -1, -1, -1, 105, -1, 107, 108, 109, -1, 111, -1, -1, -1, 115, 116, 117, - 118, 119, -1, 22, -1, -1, -1, -1, -1, -1, + 118, 119, -1, 22, 122, 24, 25, -1, -1, -1, 128, 30, -1, 32, -1, 34, -1, -1, 37, 38, 39, -1, 41, 42, -1, -1, -1, -1, -1, 48, 49, 149, 150, 52, 53, -1, -1, -1, 57, -1, @@ -10593,7 +10668,7 @@ namespace yy { 109, -1, 111, -1, -1, -1, 115, 116, 117, 118, 119, -1, 22, -1, -1, -1, -1, -1, -1, 128, 30, -1, 32, -1, 34, -1, -1, 37, 38, 39, - -1, 41, 42, -1, -1, -1, -1, -1, 48, 49, + -1, 41, 42, -1, -1, 45, -1, -1, 48, 49, 149, 150, 52, 53, -1, -1, -1, 57, -1, -1, -1, -1, 62, -1, -1, 65, 66, 67, 68, -1, -1, -1, -1, -1, 74, -1, 76, -1, 78, -1, @@ -10601,10 +10676,131 @@ namespace yy { -1, -1, -1, -1, 94, -1, 96, 97, 98, 99, 100, -1, -1, -1, -1, 105, -1, 107, 108, 109, -1, 111, -1, -1, -1, 115, 116, 117, 118, 119, - -1, -1, -1, -1, -1, -1, -1, -1, 128, -1, + -1, 22, 122, -1, -1, -1, -1, -1, 128, 30, + -1, 32, -1, 34, -1, -1, 37, 38, 39, -1, + 41, 42, -1, -1, 45, -1, -1, 48, 49, 149, + 150, 52, 53, -1, -1, -1, 57, -1, -1, -1, + -1, 62, -1, -1, 65, 66, 67, 68, -1, -1, + -1, -1, -1, 74, -1, 76, -1, 78, -1, -1, + -1, -1, 83, 84, 85, 86, -1, 88, -1, -1, + -1, -1, -1, 94, -1, 96, 97, 98, 99, 100, + -1, -1, -1, -1, 105, -1, 107, 108, 109, -1, + 111, -1, -1, -1, 115, 116, 117, 118, 119, -1, + 22, 122, -1, -1, -1, -1, -1, 128, 30, -1, + 32, -1, 34, -1, -1, 37, 38, 39, -1, 41, + 42, -1, -1, 45, -1, -1, 48, 49, 149, 150, + 52, 53, -1, -1, -1, 57, -1, -1, -1, -1, + 62, -1, -1, 65, 66, 67, 68, -1, -1, -1, + -1, -1, 74, -1, 76, -1, 78, -1, -1, -1, + -1, 83, 84, 85, 86, -1, 88, -1, -1, -1, + -1, -1, 94, -1, 96, 97, 98, 99, 100, -1, + -1, -1, -1, 105, -1, 107, 108, 109, -1, 111, + -1, -1, -1, 115, 116, 117, 118, 119, -1, 22, + 122, -1, -1, -1, -1, -1, 128, 30, -1, 32, + -1, 34, -1, -1, 37, 38, 39, -1, 41, 42, + -1, -1, -1, -1, -1, 48, 49, 149, 150, 52, + 53, -1, -1, -1, 57, -1, -1, -1, -1, 62, + -1, -1, 65, 66, 67, 68, -1, -1, -1, -1, + -1, 74, -1, 76, -1, 78, -1, -1, -1, -1, + 83, 84, 85, 86, -1, 88, -1, -1, -1, -1, + -1, 94, -1, 96, 97, 98, 99, 100, -1, -1, + -1, -1, 105, -1, 107, 108, 109, -1, 111, -1, + -1, -1, 115, 116, 117, 118, 119, -1, 22, -1, + -1, 124, -1, -1, -1, 128, 30, -1, 32, -1, + 34, -1, -1, 37, 38, 39, -1, 41, 42, 43, + -1, -1, -1, -1, 48, 49, 149, 150, 52, 53, + -1, -1, -1, 57, -1, -1, -1, -1, 62, -1, + -1, 65, 66, 67, 68, -1, -1, -1, -1, -1, + 74, -1, 76, -1, 78, -1, -1, -1, -1, 83, + 84, 85, 86, -1, 88, -1, -1, -1, -1, -1, + 94, -1, 96, 97, 98, 99, 100, -1, -1, -1, + -1, 105, -1, 107, 108, 109, -1, 111, -1, -1, + -1, 115, 116, 117, 118, 119, -1, 22, -1, -1, + -1, -1, -1, -1, 128, 30, -1, 32, -1, 34, + -1, -1, 37, 38, 39, -1, 41, 42, -1, -1, + -1, -1, -1, 48, 49, 149, 150, 52, 53, -1, + -1, -1, 57, -1, -1, -1, -1, 62, -1, -1, + 65, 66, 67, 68, -1, -1, -1, -1, -1, 74, + -1, 76, -1, 78, -1, -1, -1, -1, 83, 84, + 85, 86, -1, 88, -1, -1, -1, -1, -1, 94, + -1, 96, 97, 98, 99, 100, -1, -1, -1, -1, + 105, -1, 107, 108, 109, -1, 111, -1, -1, -1, + 115, 116, 117, 118, 119, -1, 121, -1, -1, -1, + 22, -1, -1, 128, -1, -1, -1, -1, 30, -1, + 32, -1, 34, -1, -1, 37, 38, 39, -1, 41, + 42, -1, -1, -1, 149, 150, 48, 49, -1, -1, + 52, 53, -1, -1, -1, 57, -1, -1, -1, -1, + 62, -1, -1, 65, 66, 67, 68, -1, -1, -1, + -1, -1, 74, -1, 76, -1, 78, -1, -1, -1, + -1, 83, 84, 85, 86, -1, 88, -1, -1, -1, + -1, -1, 94, -1, 96, 97, 98, 99, 100, -1, + -1, -1, -1, 105, -1, 107, 108, 109, -1, 111, + -1, -1, -1, 115, 116, 117, 118, 119, -1, 22, + -1, -1, -1, -1, -1, -1, 128, 30, 130, 32, + -1, 34, -1, -1, 37, 38, 39, -1, 41, 42, + -1, -1, -1, -1, -1, 48, 49, 149, 150, 52, + 53, -1, -1, -1, 57, -1, -1, -1, -1, 62, + -1, -1, 65, 66, 67, 68, -1, -1, -1, -1, + -1, 74, -1, 76, -1, 78, -1, -1, -1, -1, + 83, 84, 85, 86, -1, 88, -1, -1, -1, -1, + -1, 94, -1, 96, 97, 98, 99, 100, -1, -1, + -1, -1, 105, -1, 107, 108, 109, -1, 111, -1, + -1, -1, 115, 116, 117, 118, 119, -1, 22, 122, + -1, -1, -1, -1, -1, 128, 30, -1, 32, -1, + 34, -1, -1, 37, 38, 39, -1, 41, 42, -1, + -1, 45, -1, -1, 48, 49, 149, 150, 52, 53, + -1, -1, -1, 57, -1, -1, -1, -1, 62, -1, + -1, 65, 66, 67, 68, -1, -1, -1, -1, -1, + 74, -1, 76, -1, 78, -1, -1, -1, -1, 83, + 84, 85, 86, -1, 88, -1, -1, -1, -1, -1, + 94, -1, 96, 97, 98, 99, 100, -1, -1, -1, + -1, 105, -1, 107, 108, 109, -1, 111, -1, -1, + -1, 115, 116, 117, 118, 119, -1, 22, -1, -1, + -1, -1, -1, -1, 128, 30, -1, 32, -1, 34, + -1, -1, 37, 38, 39, -1, 41, 42, -1, -1, + -1, -1, -1, 48, 49, 149, 150, 52, 53, -1, + -1, -1, 57, -1, -1, -1, -1, 62, -1, -1, + 65, 66, 67, 68, -1, -1, -1, -1, -1, 74, + -1, 76, -1, 78, -1, -1, -1, -1, 83, 84, + 85, 86, -1, 88, -1, -1, -1, -1, -1, 94, + -1, 96, 97, 98, 99, 100, -1, -1, -1, -1, + 105, -1, 107, 108, 109, -1, 111, -1, -1, -1, + 115, 116, 117, 118, 119, -1, 22, -1, -1, -1, + -1, -1, -1, 128, 30, -1, 32, -1, 34, -1, + -1, 37, 38, 39, -1, 41, 42, -1, -1, -1, + -1, -1, 48, 49, 149, 150, 52, 53, -1, -1, + -1, 57, -1, -1, -1, -1, 62, -1, -1, 65, + 66, 67, 68, -1, -1, -1, -1, -1, 74, -1, + 76, -1, 78, -1, -1, -1, -1, 83, 84, 85, + 86, -1, 88, -1, -1, -1, -1, -1, 94, -1, + 96, 97, 98, 99, 100, -1, -1, -1, -1, 105, + -1, 107, 108, 109, -1, 111, -1, -1, -1, 115, + 116, 117, 118, 119, -1, 22, -1, -1, -1, -1, + -1, -1, 128, 30, -1, 32, -1, 34, -1, -1, + 37, 38, 39, -1, 41, 42, -1, -1, -1, -1, + -1, 48, 49, 149, 150, 52, 53, -1, -1, -1, + 57, -1, -1, -1, -1, 62, -1, -1, 65, 66, + 67, 68, -1, -1, -1, -1, -1, 74, -1, 76, + -1, 78, -1, -1, -1, -1, 83, 84, 85, 86, + -1, 88, -1, -1, -1, -1, -1, 94, -1, 96, + 97, 98, 99, 100, -1, -1, -1, -1, 105, -1, + 107, 108, 109, -1, 111, -1, -1, -1, 115, 116, + 117, 118, 119, -1, -1, -1, -1, -1, -1, -1, + -1, 128, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 24, + 25, -1, 149, 150, 29, 30, 31, -1, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + -1, -1, -1, -1, 69, 70, 71, 72, 73, 74, + 75, 76, 77, -1, 79, 80, 81, 82, -1, 84, + -1, 86, 87, 88, 89, 90, 91, 92, 93, -1, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + -1, 106, -1, 108, 109, 110, 111, 112, 113, 114, + -1, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 24, 25, -1, 149, - 150, 29, 30, 31, -1, 33, 34, 35, 36, 37, + -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, + -1, 29, 30, 31, 149, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, -1, -1, -1, @@ -10613,8 +10809,8 @@ namespace yy { 88, 89, 90, 91, 92, 93, -1, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, -1, 106, -1, 108, 109, 110, 111, 112, 113, 114, -1, -1, -1, - -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 137, + -1, -1, 120, -1, -1, -1, -1, 125, -1, -1, + 128, -1, -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, -1, 29, 30, 31, 149, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, @@ -10625,7 +10821,7 @@ namespace yy { 91, 92, 93, -1, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, -1, 106, -1, 108, 109, 110, 111, 112, 113, 114, -1, -1, -1, -1, -1, 120, - -1, -1, -1, -1, 125, -1, -1, 128, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 128, 129, -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, -1, -1, 29, 30, 31, 149, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, @@ -10637,39 +10833,27 @@ namespace yy { -1, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, -1, 106, -1, 108, 109, 110, 111, 112, 113, 114, -1, -1, -1, -1, -1, 120, -1, -1, -1, - -1, -1, -1, -1, 128, 129, -1, -1, -1, -1, - -1, -1, -1, 137, -1, -1, -1, -1, -1, -1, - -1, -1, 29, 30, 31, 149, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, -1, -1, - -1, -1, 69, 70, 71, 72, 73, 74, 75, 76, - 77, -1, 79, 80, 81, 82, -1, 84, -1, 86, - 87, 88, 89, 90, 91, 92, 93, -1, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, -1, 106, - -1, 108, 109, 110, 111, 112, 113, 114, -1, -1, - -1, -1, -1, 120, -1, -1, -1, -1, 29, -1, - 31, 128, 33, -1, 35, 36, -1, -1, -1, -1, - 137, -1, 43, 44, 45, 46, -1, -1, -1, 50, - 51, -1, 149, 54, 55, 56, -1, 58, 59, 60, - 61, -1, -1, 64, -1, -1, -1, -1, 69, 70, - 71, 72, 73, -1, 75, -1, 77, -1, 79, 80, - 81, 82, -1, -1, -1, -1, 87, -1, -1, 90, - 91, 92, 93, -1, 95, -1, -1, -1, -1, -1, - 101, 102, 103, 104, -1, 106, -1, -1, -1, -1, - -1, 112, 113, 114, -1, -1, 29, -1, 31, -1, - 33, -1, 35, 36, 125, -1, -1, -1, -1, -1, - 43, 44, 45, 46, -1, -1, 137, 50, 51, -1, - -1, 54, 55, 56, 145, 58, 59, 60, 61, -1, - -1, 64, -1, -1, -1, -1, 69, 70, 71, 72, - 73, -1, 75, -1, 77, -1, 79, 80, 81, 82, - -1, -1, -1, -1, 87, -1, -1, 90, 91, 92, - 93, -1, 95, -1, -1, -1, -1, -1, 101, 102, - 103, 104, -1, 106, -1, -1, -1, -1, -1, 112, - 113, 114, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 137, -1, -1, -1, -1, -1, - -1, -1, 145 + -1, 29, -1, 31, 128, 33, -1, 35, 36, -1, + -1, -1, -1, 137, -1, 43, 44, 45, 46, -1, + -1, -1, 50, 51, -1, 149, 54, 55, 56, -1, + 58, 59, 60, 61, -1, -1, 64, -1, -1, -1, + -1, 69, 70, 71, 72, 73, -1, 75, -1, 77, + -1, 79, 80, 81, 82, -1, -1, -1, -1, 87, + -1, -1, 90, 91, 92, 93, -1, 95, -1, -1, + -1, -1, -1, 101, 102, 103, 104, -1, 106, -1, + -1, -1, -1, -1, 112, 113, 114, -1, -1, 29, + -1, 31, -1, 33, -1, 35, 36, 125, -1, -1, + -1, -1, -1, 43, 44, 45, 46, -1, -1, 137, + 50, 51, -1, -1, 54, 55, 56, 145, 58, 59, + 60, 61, -1, -1, 64, -1, -1, -1, -1, 69, + 70, 71, 72, 73, -1, 75, -1, 77, -1, 79, + 80, 81, 82, -1, -1, -1, -1, 87, -1, -1, + 90, 91, 92, 93, -1, 95, -1, -1, -1, -1, + -1, 101, 102, 103, 104, -1, 106, -1, -1, -1, + -1, -1, 112, 113, 114, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 125, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, + -1, -1, -1, -1, -1, 145 }; const unsigned short @@ -10703,66 +10887,66 @@ namespace yy { 70, 264, 138, 130, 138, 264, 121, 138, 124, 247, 308, 375, 124, 266, 297, 298, 299, 374, 122, 277, 280, 281, 282, 374, 149, 157, 159, 376, 276, 277, - 374, 264, 266, 374, 334, 45, 122, 125, 266, 290, - 291, 292, 4, 5, 6, 7, 9, 11, 20, 31, - 34, 46, 47, 54, 63, 64, 73, 80, 90, 101, - 110, 120, 124, 126, 149, 150, 200, 218, 219, 221, - 226, 264, 274, 278, 324, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 348, 349, 350, 351, 352, - 353, 354, 356, 358, 359, 360, 361, 369, 370, 87, - 87, 264, 266, 125, 290, 87, 87, 124, 138, 125, - 137, 141, 141, 33, 95, 114, 306, 24, 25, 165, - 166, 200, 161, 264, 121, 166, 6, 7, 9, 11, - 24, 25, 34, 40, 47, 76, 89, 120, 124, 141, - 149, 150, 157, 202, 217, 254, 256, 257, 258, 260, - 264, 267, 268, 269, 270, 274, 278, 316, 324, 375, - 376, 124, 271, 264, 264, 166, 373, 264, 22, 373, - 121, 34, 76, 149, 150, 202, 267, 268, 373, 376, - 4, 254, 309, 310, 311, 312, 313, 374, 375, 285, - 286, 374, 125, 137, 264, 132, 371, 125, 137, 126, - 138, 125, 137, 87, 371, 50, 89, 125, 137, 58, - 345, 40, 264, 40, 334, 268, 13, 44, 45, 122, - 201, 338, 337, 124, 371, 137, 112, 145, 346, 77, - 146, 347, 345, 264, 123, 130, 264, 266, 264, 266, - 125, 264, 266, 264, 266, 24, 25, 28, 163, 164, - 167, 168, 171, 173, 174, 176, 178, 149, 377, 210, - 250, 4, 254, 305, 138, 268, 268, 268, 272, 126, - 124, 125, 137, 137, 141, 145, 137, 145, 138, 138, - 337, 268, 138, 138, 254, 309, 125, 309, 126, 125, - 137, 126, 122, 266, 254, 264, 278, 372, 376, 122, - 282, 254, 278, 277, 264, 137, 34, 149, 150, 350, - 122, 292, 348, 124, 54, 268, 334, 362, 124, 363, - 137, 125, 137, 127, 144, 222, 223, 127, 122, 341, - 343, 79, 130, 350, 355, 357, 157, 264, 165, 264, - 157, 125, 137, 24, 50, 89, 169, 129, 165, 125, - 268, 4, 257, 257, 268, 268, 268, 268, 268, 24, - 25, 375, 125, 125, 312, 286, 4, 254, 137, 141, - 138, 371, 127, 127, 122, 291, 371, 122, 157, 197, - 212, 220, 264, 376, 40, 122, 364, 365, 374, 338, - 122, 138, 225, 374, 125, 137, 137, 357, 50, 89, - 177, 89, 113, 170, 170, 170, 50, 89, 179, 120, - 180, 164, 264, 127, 125, 127, 127, 127, 299, 268, - 137, 137, 137, 141, 125, 138, 268, 125, 137, 125, - 137, 334, 366, 367, 137, 138, 224, 138, 223, 338, - 124, 187, 189, 190, 191, 193, 50, 89, 175, 50, - 89, 172, 172, 104, 137, 281, 122, 291, 124, 189, - 268, 149, 364, 364, 29, 89, 93, 368, 338, 224, - 225, 374, 24, 25, 29, 30, 31, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 79, 80, - 81, 82, 84, 86, 87, 88, 89, 90, 91, 92, - 93, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 106, 108, 109, 110, 111, 112, 113, 114, 120, - 137, 149, 165, 186, 192, 194, 195, 196, 264, 268, - 378, 271, 350, 124, 156, 137, 137, 268, 125, 196, - 137, 125, 195, 30, 34, 37, 38, 39, 40, 41, - 42, 47, 48, 49, 52, 53, 57, 62, 63, 74, - 76, 84, 86, 88, 89, 96, 97, 98, 99, 100, - 108, 109, 110, 111, 120, 128, 149, 181, 182, 183, - 184, 185, 186, 122, 148, 181, 125, 182, 165, 186, - 137, 125, 129, 291, 137 + 374, 264, 266, 374, 334, 45, 122, 125, 264, 266, + 290, 291, 292, 4, 5, 6, 7, 9, 11, 20, + 31, 34, 46, 47, 54, 63, 64, 73, 80, 90, + 101, 110, 120, 124, 126, 149, 150, 200, 218, 219, + 221, 226, 264, 274, 278, 324, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 348, 349, 350, 351, + 352, 353, 354, 356, 358, 359, 360, 361, 369, 370, + 87, 87, 264, 266, 125, 290, 87, 87, 124, 138, + 125, 137, 141, 141, 33, 95, 114, 306, 24, 25, + 165, 166, 200, 161, 264, 121, 166, 6, 7, 9, + 11, 24, 25, 34, 40, 47, 76, 89, 120, 124, + 141, 149, 150, 157, 202, 217, 254, 256, 257, 258, + 260, 264, 267, 268, 269, 270, 274, 278, 316, 324, + 375, 376, 124, 271, 264, 264, 166, 373, 264, 22, + 373, 121, 34, 76, 149, 150, 202, 267, 268, 373, + 376, 4, 254, 309, 310, 311, 312, 313, 374, 375, + 285, 286, 374, 125, 137, 264, 132, 371, 125, 137, + 126, 138, 125, 137, 87, 371, 50, 89, 50, 89, + 125, 137, 58, 345, 40, 264, 40, 334, 268, 13, + 44, 45, 122, 201, 338, 337, 124, 371, 137, 112, + 145, 346, 77, 146, 347, 345, 264, 123, 130, 264, + 266, 264, 266, 125, 264, 266, 264, 266, 24, 25, + 28, 163, 164, 167, 168, 171, 173, 174, 176, 178, + 149, 377, 210, 250, 4, 254, 305, 138, 268, 268, + 268, 272, 126, 124, 125, 137, 137, 141, 145, 137, + 145, 138, 138, 337, 268, 138, 138, 254, 309, 125, + 309, 126, 125, 137, 126, 122, 266, 254, 264, 278, + 372, 376, 122, 282, 254, 278, 277, 264, 137, 34, + 149, 150, 350, 350, 122, 292, 348, 124, 54, 268, + 334, 362, 124, 363, 137, 125, 137, 127, 144, 222, + 223, 127, 122, 341, 343, 79, 130, 350, 355, 357, + 157, 264, 165, 264, 157, 125, 137, 24, 50, 89, + 169, 129, 165, 125, 268, 4, 257, 257, 268, 268, + 268, 268, 268, 24, 25, 375, 125, 125, 312, 286, + 4, 254, 137, 141, 138, 371, 127, 127, 122, 291, + 371, 122, 157, 197, 212, 220, 264, 376, 40, 122, + 364, 365, 374, 338, 122, 138, 225, 374, 125, 137, + 137, 357, 50, 89, 177, 89, 113, 170, 170, 170, + 50, 89, 179, 120, 180, 164, 264, 127, 125, 127, + 127, 127, 299, 268, 137, 137, 137, 141, 125, 138, + 268, 125, 137, 125, 137, 334, 366, 367, 137, 138, + 224, 138, 223, 338, 124, 187, 189, 190, 191, 193, + 50, 89, 175, 50, 89, 172, 172, 104, 137, 281, + 122, 291, 124, 189, 268, 149, 364, 364, 29, 89, + 93, 368, 338, 224, 225, 374, 24, 25, 29, 30, + 31, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 79, 80, 81, 82, 84, 86, 87, 88, + 89, 90, 91, 92, 93, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 106, 108, 109, 110, 111, + 112, 113, 114, 120, 137, 149, 165, 186, 192, 194, + 195, 196, 264, 268, 378, 271, 350, 124, 156, 137, + 137, 268, 125, 196, 137, 125, 195, 30, 34, 37, + 38, 39, 40, 41, 42, 47, 48, 49, 52, 53, + 57, 62, 63, 74, 76, 84, 86, 88, 89, 96, + 97, 98, 99, 100, 108, 109, 110, 111, 120, 128, + 149, 181, 182, 183, 184, 185, 186, 122, 148, 181, + 125, 182, 165, 186, 137, 125, 129, 291, 137 }; const unsigned short @@ -10801,31 +10985,32 @@ namespace yy { 280, 280, 281, 281, 282, 282, 283, 284, 284, 285, 285, 286, 286, 287, 288, 289, 289, 290, 290, 290, 290, 290, 290, 290, 290, 290, 291, 291, 292, 292, - 292, 292, 293, 293, 294, 294, 295, 295, 296, 297, - 298, 298, 298, 299, 299, 300, 301, 302, 302, 302, - 303, 304, 304, 305, 305, 306, 306, 306, 306, 307, - 308, 308, 309, 309, 310, 310, 310, 311, 312, 312, - 313, 314, 315, 316, 317, 318, 318, 319, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 329, - 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, - 330, 330, 330, 331, 332, 332, 333, 333, 333, 333, - 333, 333, 333, 333, 334, 335, 335, 336, 337, 337, - 337, 338, 338, 339, 339, 340, 341, 341, 342, 343, - 343, 344, 345, 346, 346, 347, 347, 348, 348, 349, - 349, 349, 349, 349, 349, 349, 349, 349, 350, 350, - 350, 350, 350, 350, 350, 350, 350, 350, 351, 352, - 353, 354, 354, 355, 355, 356, 356, 357, 357, 358, - 359, 360, 361, 361, 362, 363, 363, 363, 363, 364, - 364, 365, 366, 367, 367, 368, 368, 368, 368, 369, - 370, 371, 371, 372, 372, 372, 373, 374, 375, 376, - 377, 378, 378, 378, 378, 378, 378, 378, 378, 378, + 292, 292, 292, 292, 292, 293, 293, 294, 294, 295, + 295, 296, 297, 298, 298, 298, 299, 299, 300, 301, + 302, 302, 302, 303, 304, 304, 305, 305, 306, 306, + 306, 306, 307, 308, 308, 309, 309, 310, 310, 310, + 311, 312, 312, 313, 314, 315, 316, 317, 318, 318, + 319, 319, 320, 321, 322, 323, 324, 325, 326, 327, + 328, 329, 329, 330, 330, 330, 330, 330, 330, 330, + 330, 330, 330, 330, 330, 330, 331, 332, 332, 333, + 333, 333, 333, 333, 333, 333, 333, 334, 335, 335, + 336, 337, 337, 337, 338, 338, 339, 339, 340, 341, + 341, 342, 343, 343, 344, 345, 346, 346, 347, 347, + 348, 348, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 350, 350, 350, 350, 350, 350, 350, 350, 350, + 350, 351, 352, 353, 354, 354, 355, 355, 356, 356, + 357, 357, 358, 359, 360, 361, 361, 362, 363, 363, + 363, 363, 364, 364, 365, 366, 367, 367, 368, 368, + 368, 368, 369, 370, 371, 371, 372, 372, 372, 373, + 374, 375, 376, 377, 378, 378, 378, 378, 378, 378, + 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, - 378, 378, 378, 378, 378, 378, 378, 378 + 378 }; const unsigned char @@ -10864,23 +11049,23 @@ namespace yy { 6, 2, 1, 3, 1, 1, 1, 2, 5, 1, 3, 4, 4, 2, 1, 3, 4, 1, 4, 6, 8, 10, 4, 6, 2, 4, 1, 3, 1, 2, - 3, 3, 3, 3, 3, 4, 3, 3, 4, 1, - 1, 3, 5, 1, 3, 3, 1, 2, 3, 3, - 5, 2, 0, 1, 1, 1, 1, 1, 0, 2, - 3, 4, 1, 2, 1, 1, 1, 1, 1, 1, - 4, 1, 1, 4, 2, 3, 0, 1, 1, 1, - 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 3, 1, 2, 3, 3, 3, 3, 3, 4, 3, + 3, 4, 1, 1, 3, 5, 1, 3, 3, 1, + 2, 3, 3, 5, 2, 0, 1, 1, 1, 1, + 1, 0, 2, 3, 4, 1, 2, 1, 1, 1, + 1, 1, 1, 4, 1, 1, 4, 2, 3, 0, + 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 2, 2, 1, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 1, 1, 1, 1, 3, - 5, 1, 2, 1, 3, 1, 1, 3, 1, 1, - 2, 1, 2, 1, 1, 1, 1, 1, 3, 1, + 1, 1, 1, 1, 1, 1, 2, 2, 1, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, + 1, 1, 3, 5, 1, 2, 1, 3, 1, 1, + 3, 1, 1, 2, 1, 2, 1, 1, 1, 1, + 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, - 3, 1, 2, 1, 2, 1, 1, 1, 1, 2, - 1, 2, 3, 3, 1, 0, 3, 5, 3, 1, - 3, 2, 2, 1, 0, 1, 1, 1, 0, 2, - 2, 2, 0, 1, 1, 3, 1, 1, 1, 1, + 1, 2, 1, 3, 1, 2, 1, 2, 1, 1, + 1, 1, 2, 1, 2, 3, 3, 1, 0, 3, + 5, 3, 1, 3, 2, 2, 1, 0, 1, 1, + 1, 0, 2, 2, 2, 0, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -10888,7 +11073,8 @@ namespace yy { 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 }; @@ -11034,31 +11220,32 @@ namespace yy { 1141, 1145, 1148, 1150, 1154, 1156, 1164, 1167, 1169, 1173, 1174, 1177, 1178, 1192, 1195, 1198, 1200, 1204, 1206, 1208, 1210, 1212, 1214, 1216, 1218, 1220, 1224, 1226, 1230, 1232, - 1234, 1236, 1248, 1250, 1254, 1256, 1260, 1262, 1266, 1270, - 1274, 1276, 1278, 1282, 1284, 1291, 1294, 1298, 1300, 1302, - 1306, 1310, 1311, 1314, 1316, 1319, 1321, 1323, 1325, 1335, - 1338, 1340, 1344, 1346, 1350, 1352, 1354, 1358, 1362, 1364, - 1367, 1371, 1383, 1386, 1392, 1395, 1396, 1399, 1400, 1403, - 1409, 1416, 1422, 1425, 1428, 1431, 1434, 1437, 1440, 1442, - 1446, 1448, 1450, 1452, 1454, 1456, 1458, 1460, 1462, 1464, - 1466, 1468, 1470, 1474, 1478, 1480, 1484, 1486, 1488, 1490, - 1492, 1494, 1496, 1498, 1502, 1505, 1506, 1509, 1512, 1513, - 1514, 1517, 1518, 1521, 1522, 1525, 1528, 1529, 1532, 1535, - 1536, 1539, 1542, 1545, 1546, 1549, 1550, 1553, 1555, 1558, - 1559, 1560, 1561, 1562, 1563, 1564, 1565, 1566, 1572, 1574, - 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582, 1585, 1588, - 1591, 1594, 1595, 1598, 1599, 1602, 1603, 1606, 1607, 1610, - 1613, 1616, 1619, 1620, 1623, 1625, 1626, 1627, 1628, 1631, - 1632, 1635, 1638, 1641, 1642, 1645, 1646, 1647, 1648, 1651, - 1654, 1657, 1658, 1661, 1662, 1663, 1666, 1670, 1674, 1678, - 1682, 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, 1722, 1723, 1724, - 1725, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733, 1734, - 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, - 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753, 1754, - 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1762 + 1234, 1236, 1238, 1240, 1242, 1254, 1256, 1260, 1262, 1266, + 1268, 1272, 1276, 1280, 1282, 1284, 1288, 1290, 1297, 1300, + 1304, 1306, 1308, 1312, 1316, 1317, 1320, 1322, 1325, 1327, + 1329, 1331, 1341, 1344, 1346, 1350, 1352, 1356, 1358, 1360, + 1364, 1368, 1370, 1373, 1377, 1389, 1392, 1398, 1401, 1402, + 1405, 1406, 1409, 1415, 1422, 1428, 1431, 1434, 1437, 1440, + 1443, 1446, 1448, 1452, 1454, 1456, 1458, 1460, 1462, 1464, + 1466, 1468, 1470, 1472, 1474, 1476, 1480, 1484, 1486, 1490, + 1492, 1494, 1496, 1498, 1500, 1502, 1504, 1508, 1511, 1512, + 1515, 1518, 1519, 1520, 1523, 1524, 1527, 1528, 1531, 1534, + 1535, 1538, 1541, 1542, 1545, 1548, 1551, 1552, 1555, 1556, + 1559, 1561, 1564, 1565, 1566, 1567, 1568, 1569, 1570, 1571, + 1572, 1578, 1580, 1581, 1582, 1583, 1584, 1585, 1586, 1587, + 1588, 1591, 1594, 1597, 1600, 1601, 1604, 1605, 1608, 1609, + 1612, 1613, 1616, 1619, 1622, 1625, 1626, 1629, 1631, 1632, + 1633, 1634, 1637, 1638, 1641, 1644, 1647, 1648, 1651, 1652, + 1653, 1654, 1657, 1660, 1663, 1664, 1667, 1668, 1669, 1672, + 1676, 1680, 1684, 1688, 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, 1722, 1723, 1724, 1725, 1726, 1727, + 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737, + 1738, 1739, 1740, 1741, 1742, 1743, 1744, 1745, 1746, 1747, + 1748, 1749, 1750, 1751, 1752, 1753, 1754, 1755, 1756, 1757, + 1758, 1759, 1760, 1761, 1762, 1763, 1764, 1765, 1766, 1767, + 1768 }; // Print the state stack on the debug stream. @@ -11093,8 +11280,8 @@ namespace yy { } // yy -#line 11095 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1242 -#line 1764 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1243 +#line 11282 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1242 +#line 1770 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1243 @@ -11107,7 +11294,7 @@ namespace yy { context.location.step(); // Lexer -#line 11111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11298 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -11207,25 +11394,25 @@ namespace yy { } yy2: ++context.cursor; -#line 11230 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11417 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_END_OF_FILE(context.location); } -#line 11213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11400 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 11257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11444 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { std::cerr << "Ignoring unknown symbol: " << static_cast(*start) << std::endl; return yylex(context); } -#line 11219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11406 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 11234 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 11224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11411 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 11233 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11420 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 11229 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -11234,9 +11421,9 @@ namespace yy { } yy11: ++context.cursor; -#line 11252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11439 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXCLAMATION_MARK (context.location); } -#line 11240 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { @@ -11334,19 +11521,19 @@ namespace yy { } yy18: ++context.cursor; -#line 11242 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11429 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPEN_PARENTHESIS (context.location); } -#line 11340 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11527 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 11243 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLOSE_PARENTHESIS (context.location); } -#line 11345 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11532 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 11248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11435 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COMMA (context.location); } -#line 11350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { @@ -11364,9 +11551,9 @@ namespace yy { default: goto yy25; } yy25: -#line 11249 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11436 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_HYPHEN_MINUS (context.location); } -#line 11370 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { @@ -11374,9 +11561,9 @@ namespace yy { default: goto yy27; } yy27: -#line 11250 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11437 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_FULL_STOP (context.location); } -#line 11380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { @@ -11401,9 +11588,9 @@ namespace yy { default: goto yy31; } yy31: -#line 11216 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11403 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_number(std::stoll(std::string(start, context.cursor)), context.location); } -#line 11407 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11594 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy32: yyaccept = 1; yych = *(YYMARKER = ++context.cursor); @@ -11412,24 +11599,24 @@ namespace yy { default: goto yy33; } yy33: -#line 11246 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COLON (context.location); } -#line 11418 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11605 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 11247 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11434 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SEMICOLON (context.location); } -#line 11423 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 11253 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11440 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_LESS_THAN (context.location); } -#line 11428 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 11256 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11443 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_AT (context.location); } -#line 11433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11620 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy40: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -11442,9 +11629,9 @@ namespace yy { default: goto yy49; } yy41: -#line 11224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11411 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GENERIC_IDENTIFIER_UPPERCASE(santize_name(std::string(start, context.cursor)), context.location); } -#line 11448 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11635 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy42: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -11675,19 +11862,19 @@ namespace yy { } yy61: ++context.cursor; -#line 11244 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11431 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPEN_SQUARE_BRACKET (context.location); } -#line 11681 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11868 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 11245 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11432 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLOSE_SQUARE_BRACKET (context.location); } -#line 11686 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; -#line 11254 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11441 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ACCENT (context.location); } -#line 11691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11878 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy67: yyaccept = 3; yych = *(YYMARKER = ++context.cursor); @@ -11759,24 +11946,24 @@ namespace yy { default: goto yy69; } yy69: -#line 11225 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11412 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GENERIC_IDENTIFIER_LOWERCASE(santize_name(std::string(start, context.cursor)), context.location); } -#line 11765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11952 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; -#line 11240 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPEN_BRACE (context.location); } -#line 11770 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11957 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; -#line 11251 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11438 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_VERTICAL_LINE (context.location); } -#line 11775 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11962 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; -#line 11241 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11428 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLOSE_BRACE (context.location); } -#line 11780 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11967 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -11784,9 +11971,9 @@ namespace yy { default: goto yy77; } yy77: -#line 11219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11406 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_cstring(std::string(start, context.cursor), context.location); } -#line 11790 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11977 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; @@ -11868,9 +12055,9 @@ namespace yy { default: goto yy83; } yy83: -#line 11226 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11413 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_typefieldreference(santize_name(std::string(start, context.cursor)), context.location); } -#line 11874 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy84: yyaccept = 5; yych = *(YYMARKER = ++context.cursor); @@ -11942,9 +12129,9 @@ namespace yy { default: goto yy86; } yy86: -#line 11227 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11414 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_valuefieldreference(santize_name(std::string(start, context.cursor)), context.location); } -#line 11948 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { @@ -11991,9 +12178,9 @@ namespace yy { default: goto yy90; } yy92: -#line 11210 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11397 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11997 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12184 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { @@ -12010,9 +12197,9 @@ namespace yy { default: goto yy95; } yy95: -#line 11217 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11404 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_negativenumber(std::stoll(std::string(start, context.cursor)), context.location); } -#line 12016 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12203 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy96: yych = *++context.cursor; switch (yych) { @@ -12020,9 +12207,9 @@ namespace yy { default: goto yy97; } yy97: -#line 11239 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11426 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_RANGE (context.location); } -#line 12026 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy98: yych = *++context.cursor; switch (yych) { @@ -12354,9 +12541,9 @@ namespace yy { default: goto yy114; } yy114: -#line 11123 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11310 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BY (context.location); } -#line 12360 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12547 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy115: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -12611,9 +12798,9 @@ namespace yy { default: goto yy141; } yy141: -#line 11171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11358 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OF (context.location); } -#line 12617 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12804 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy142: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -13001,14 +13188,14 @@ namespace yy { } yy171: ++context.cursor; -#line 11221 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11408 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_bstring(std::string(start + 1, context.cursor - 2), context.location); } -#line 13007 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy173: ++context.cursor; -#line 11223 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11410 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_hstring(std::string(start + 1, context.cursor - 2), context.location); } -#line 13012 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13199 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy175: yych = *++context.cursor; switch (yych) { @@ -13025,9 +13212,9 @@ namespace yy { } yy177: ++context.cursor; -#line 11238 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11425 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ELIPSIS (context.location); } -#line 13031 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13218 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy179: yych = *++context.cursor; switch (yych) { @@ -13050,14 +13237,14 @@ namespace yy { default: goto yy182; } yy182: -#line 11215 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11402 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_realnumber(std::stod(std::string(start, context.cursor)), context.location); } -#line 13056 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13243 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy183: ++context.cursor; -#line 11237 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11424 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DEFINED_AS (context.location); } -#line 13061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy185: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -13137,9 +13324,9 @@ namespace yy { default: goto yy187; } yy187: -#line 11115 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ALL (context.location); } -#line 13143 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13330 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy188: yyaccept = 9; yych = *(YYMARKER = ++context.cursor); @@ -13211,9 +13398,9 @@ namespace yy { default: goto yy189; } yy189: -#line 11116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11303 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ANY (context.location); } -#line 13217 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13404 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy190: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -13306,9 +13493,9 @@ namespace yy { default: goto yy194; } yy194: -#line 11120 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BIT (context.location); } -#line 13312 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13499 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy195: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -13466,9 +13653,9 @@ namespace yy { default: goto yy208; } yy208: -#line 11139 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_END (context.location); } -#line 13472 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13659 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy209: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -13647,9 +13834,9 @@ namespace yy { default: goto yy225; } yy225: -#line 11162 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11349 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_MAX (context.location); } -#line 13653 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13840 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy226: yyaccept = 13; yych = *(YYMARKER = ++context.cursor); @@ -13721,9 +13908,9 @@ namespace yy { default: goto yy227; } yy227: -#line 11163 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_MIN (context.location); } -#line 13727 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13914 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy228: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -13858,9 +14045,9 @@ namespace yy { default: goto yy238; } yy238: -#line 11175 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PDV (context.location); } -#line 13864 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy239: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -13981,9 +14168,9 @@ namespace yy { default: goto yy247; } yy247: -#line 11184 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11371 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SET (context.location); } -#line 13987 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14174 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy248: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -14100,14 +14287,14 @@ namespace yy { } yy264: ++context.cursor; -#line 11208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11395 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 14106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14293 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy266: ++context.cursor; -#line 11212 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11399 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 14111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14298 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy268: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -14270,9 +14457,9 @@ namespace yy { default: goto yy282; } yy282: -#line 11131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11318 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DATE (context.location); } -#line 14276 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14463 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy283: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -14422,9 +14609,9 @@ namespace yy { default: goto yy295; } yy295: -#line 11147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11334 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_FROM (context.location); } -#line 14428 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy296: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -14643,9 +14830,9 @@ namespace yy { default: goto yy309; } yy309: -#line 11166 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11353 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ASN_NULL (context.location); } -#line 14649 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14836 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy310: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -14794,9 +14981,9 @@ namespace yy { default: goto yy322; } yy322: -#line 11180 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_REAL (context.location); } -#line 14800 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14987 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy323: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -14889,9 +15076,9 @@ namespace yy { default: goto yy327; } yy327: -#line 11186 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11373 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SIZE (context.location); } -#line 14895 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15082 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy328: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -14984,9 +15171,9 @@ namespace yy { default: goto yy332; } yy332: -#line 11190 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11377 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TAGS (context.location); } -#line 14990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15177 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy333: yyaccept = 22; yych = *(YYMARKER = ++context.cursor); @@ -15058,9 +15245,9 @@ namespace yy { default: goto yy334; } yy334: -#line 11192 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11379 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TIME (context.location); } -#line 15064 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15251 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy335: yyaccept = 23; yych = *(YYMARKER = ++context.cursor); @@ -15132,9 +15319,9 @@ namespace yy { default: goto yy336; } yy336: -#line 11194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11381 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TRUE (context.location); } -#line 15138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy337: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -15276,9 +15463,9 @@ namespace yy { default: goto yy348; } yy348: -#line 11204 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_WITH (context.location); } -#line 15282 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy349: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -15378,9 +15565,9 @@ namespace yy { default: goto yy354; } yy354: -#line 11119 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11306 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BEGIN (context.location); } -#line 15384 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15571 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy355: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -15480,9 +15667,9 @@ namespace yy { default: goto yy360; } yy360: -#line 11126 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11313 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLASS (context.location); } -#line 15486 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15673 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy361: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -15721,9 +15908,9 @@ namespace yy { default: goto yy377; } yy377: -#line 11146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11333 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_FALSE (context.location); } -#line 15727 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15914 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy378: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -15908,9 +16095,9 @@ namespace yy { default: goto yy395; } yy395: -#line 11170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11357 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OCTET (context.location); } -#line 15914 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy396: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -16223,9 +16410,9 @@ namespace yy { default: goto yy414; } yy414: -#line 11196 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11383 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UNION (context.location); } -#line 16229 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy415: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -16346,9 +16533,9 @@ namespace yy { default: goto yy423; } yy423: -#line 11113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11300 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ABSENT (context.location); } -#line 16352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16539 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy424: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -16462,9 +16649,9 @@ namespace yy { default: goto yy431; } yy431: -#line 11125 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11312 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CHOICE (context.location); } -#line 16468 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy432: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -16613,9 +16800,9 @@ namespace yy { default: goto yy444; } yy444: -#line 11141 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXCEPT (context.location); } -#line 16619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16806 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy445: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -16949,9 +17136,9 @@ namespace yy { default: goto yy466; } yy466: -#line 11168 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OBJECT (context.location); } -#line 16955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy467: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -17100,9 +17287,9 @@ namespace yy { default: goto yy479; } yy479: -#line 11187 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11374 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_STRING (context.location); } -#line 17106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17293 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy480: yyaccept = 35; yych = *(YYMARKER = ++context.cursor); @@ -17174,9 +17361,9 @@ namespace yy { default: goto yy481; } yy481: -#line 11188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11375 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SYNTAX (context.location); } -#line 17180 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy482: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -17276,9 +17463,9 @@ namespace yy { default: goto yy487; } yy487: -#line 11197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11384 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UNIQUE (context.location); } -#line 17282 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy488: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -17420,9 +17607,9 @@ namespace yy { default: goto yy499; } yy499: -#line 11122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11309 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BOOLEAN (context.location); } -#line 17426 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17613 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy500: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -17529,9 +17716,9 @@ namespace yy { default: goto yy506; } yy506: -#line 11133 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DEFAULT (context.location); } -#line 17535 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17722 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy507: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -17624,9 +17811,9 @@ namespace yy { default: goto yy511; } yy511: -#line 11137 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11324 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ENCODED (context.location); } -#line 17630 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17817 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy512: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -17719,9 +17906,9 @@ namespace yy { default: goto yy516; } yy516: -#line 11143 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11330 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXPORTS (context.location); } -#line 17725 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17912 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy517: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -17843,9 +18030,9 @@ namespace yy { default: goto yy525; } yy525: -#line 11154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11341 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IMPLIED (context.location); } -#line 17849 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18036 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy526: yyaccept = 42; yych = *(YYMARKER = ++context.cursor); @@ -17917,9 +18104,9 @@ namespace yy { default: goto yy527; } yy527: -#line 11155 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11342 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IMPORTS (context.location); } -#line 17923 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy528: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -18012,9 +18199,9 @@ namespace yy { default: goto yy532; } yy532: -#line 11159 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11346 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INTEGER (context.location); } -#line 18018 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18205 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy533: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -18121,9 +18308,9 @@ namespace yy { default: goto yy539; } yy539: -#line 11172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11359 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OID_IRI (context.location); } -#line 18127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy540: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -18209,9 +18396,9 @@ namespace yy { default: goto yy543; } yy543: -#line 11174 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11361 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PATTERN (context.location); } -#line 18215 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18402 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy544: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -18290,9 +18477,9 @@ namespace yy { default: goto yy546; } yy546: -#line 11177 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11364 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PRESENT (context.location); } -#line 18296 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18483 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy547: yyaccept = 47; yych = *(YYMARKER = ++context.cursor); @@ -18364,9 +18551,9 @@ namespace yy { default: goto yy548; } yy548: -#line 11179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11366 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PRIVATE (context.location); } -#line 18370 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy549: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -18501,9 +18688,9 @@ namespace yy { default: goto yy559; } yy559: -#line 11200 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11387 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UTCTime (context.location); } -#line 18507 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18694 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy560: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -18673,9 +18860,9 @@ namespace yy { default: goto yy575; } yy575: -#line 11135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DURATION (context.location); } -#line 18679 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18866 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy576: yyaccept = 50; yych = *(YYMARKER = ++context.cursor); @@ -18747,9 +18934,9 @@ namespace yy { default: goto yy577; } yy577: -#line 11136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11323 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EMBEDDED (context.location); } -#line 18753 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18940 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy578: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -18835,9 +19022,9 @@ namespace yy { default: goto yy581; } yy581: -#line 11142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11329 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXPLICIT (context.location); } -#line 18841 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy582: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -18916,9 +19103,9 @@ namespace yy { default: goto yy584; } yy584: -#line 11145 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11332 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXTERNAL (context.location); } -#line 18922 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19109 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy585: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -19025,9 +19212,9 @@ namespace yy { default: goto yy591; } yy591: -#line 11153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11340 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IMPLICIT (context.location); } -#line 19031 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19218 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy592: yyaccept = 54; yych = *(YYMARKER = ++context.cursor); @@ -19099,9 +19286,9 @@ namespace yy { default: goto yy593; } yy593: -#line 11156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11343 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INCLUDES (context.location); } -#line 19105 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy594: yyaccept = 55; yych = *(YYMARKER = ++context.cursor); @@ -19173,9 +19360,9 @@ namespace yy { default: goto yy595; } yy595: -#line 11157 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INSTANCE (context.location); } -#line 19179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19366 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy596: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -19289,9 +19476,9 @@ namespace yy { default: goto yy603; } yy603: -#line 11173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11360 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPTIONAL (context.location); } -#line 19295 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19482 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy604: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -19391,9 +19578,9 @@ namespace yy { default: goto yy609; } yy609: -#line 11183 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11370 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SEQUENCE (context.location); } -#line 19397 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19584 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy610: yyaccept = 58; yych = *(YYMARKER = ++context.cursor); @@ -19465,9 +19652,9 @@ namespace yy { default: goto yy611; } yy611: -#line 11185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11372 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SETTINGS (context.location); } -#line 19471 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19658 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy612: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -19738,9 +19925,9 @@ namespace yy { default: goto yy624; } yy624: -#line 11118 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11305 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_AUTOMATIC (context.location); } -#line 19744 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19931 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy625: yyaccept = 60; yych = *(YYMARKER = ++context.cursor); @@ -19812,9 +19999,9 @@ namespace yy { default: goto yy626; } yy626: -#line 11121 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11308 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BMPString (context.location); } -#line 19818 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20005 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy627: yyaccept = 61; yych = *(YYMARKER = ++context.cursor); @@ -19886,9 +20073,9 @@ namespace yy { default: goto yy628; } yy628: -#line 11124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11311 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CHARACTER (context.location); } -#line 19892 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20079 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy629: yyaccept = 62; yych = *(YYMARKER = ++context.cursor); @@ -19960,9 +20147,9 @@ namespace yy { default: goto yy630; } yy630: -#line 11127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COMPONENT (context.location); } -#line 19966 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy631: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -20048,9 +20235,9 @@ namespace yy { default: goto yy634; } yy634: -#line 11132 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11319 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DATE_TIME (context.location); } -#line 20054 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20241 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy635: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -20171,9 +20358,9 @@ namespace yy { default: goto yy643; } yy643: -#line 11151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IA5String (context.location); } -#line 20177 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20364 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy644: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -20383,9 +20570,9 @@ namespace yy { default: goto yy656; } yy656: -#line 11189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11376 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_T61String (context.location); } -#line 20389 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20576 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy657: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -20478,9 +20665,9 @@ namespace yy { default: goto yy661; } yy661: -#line 11198 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11385 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UNIVERSAL (context.location); } -#line 20484 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20671 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy662: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -20594,9 +20781,9 @@ namespace yy { default: goto yy669; } yy669: -#line 11128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11315 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COMPONENTS (context.location); } -#line 20600 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20787 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy670: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -20675,9 +20862,9 @@ namespace yy { default: goto yy672; } yy672: -#line 11130 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11317 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CONTAINING (context.location); } -#line 20681 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20868 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy673: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -20763,9 +20950,9 @@ namespace yy { default: goto yy676; } yy676: -#line 11140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ENUMERATED (context.location); } -#line 20769 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20956 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy677: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -20865,9 +21052,9 @@ namespace yy { default: goto yy682; } yy682: -#line 11152 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11339 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IDENTIFIER (context.location); } -#line 20871 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21058 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy683: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -21030,9 +21217,9 @@ namespace yy { default: goto yy697; } yy697: -#line 11201 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11388 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UTF8String (context.location); } -#line 21036 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21223 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy698: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -21132,9 +21319,9 @@ namespace yy { default: goto yy703; } yy703: -#line 11117 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11304 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_APPLICATION (context.location); } -#line 21138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy704: yyaccept = 73; yych = *(YYMARKER = ++context.cursor); @@ -21206,9 +21393,9 @@ namespace yy { default: goto yy705; } yy705: -#line 11129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11316 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CONSTRAINED (context.location); } -#line 21212 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21399 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy706: yyaccept = 74; yych = *(YYMARKER = ++context.cursor); @@ -21280,9 +21467,9 @@ namespace yy { default: goto yy707; } yy707: -#line 11134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11321 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DEFINITIONS (context.location); } -#line 21286 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21473 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy708: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -21459,9 +21646,9 @@ namespace yy { default: goto yy724; } yy724: -#line 11193 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TIME_OF_DAY (context.location); } -#line 21465 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21652 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy725: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -21610,9 +21797,9 @@ namespace yy { default: goto yy737; } yy737: -#line 11158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11345 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INSTRUCTIONS (context.location); } -#line 21616 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21803 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy738: yyaccept = 77; yych = *(YYMARKER = ++context.cursor); @@ -21684,9 +21871,9 @@ namespace yy { default: goto yy739; } yy739: -#line 11160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11347 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INTERSECTION (context.location); } -#line 21690 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21877 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy740: yyaccept = 78; yych = *(YYMARKER = ++context.cursor); @@ -21758,9 +21945,9 @@ namespace yy { default: goto yy741; } yy741: -#line 11161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11348 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ISO646String (context.location); } -#line 21764 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21951 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy742: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -21839,9 +22026,9 @@ namespace yy { default: goto yy744; } yy744: -#line 11165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_NOT_A_NUMBER (context.location); } -#line 21845 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22032 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy745: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -21941,9 +22128,9 @@ namespace yy { default: goto yy750; } yy750: -#line 11181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11368 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_RELATIVE_OID (context.location); } -#line 21947 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy751: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -22064,9 +22251,9 @@ namespace yy { default: goto yy759; } yy759: -#line 11144 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11331 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXTENSIBILITY (context.location); } -#line 22070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy760: yyaccept = 82; yych = *(YYMARKER = ++context.cursor); @@ -22138,9 +22325,9 @@ namespace yy { default: goto yy761; } yy761: -#line 11149 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11336 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GeneralString (context.location); } -#line 22144 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22331 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy762: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -22219,9 +22406,9 @@ namespace yy { default: goto yy764; } yy764: -#line 11150 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11337 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GraphicString (context.location); } -#line 22225 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22412 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy765: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -22300,9 +22487,9 @@ namespace yy { default: goto yy767; } yy767: -#line 11167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11354 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_NumericString (context.location); } -#line 22306 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy768: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -22381,9 +22568,9 @@ namespace yy { default: goto yy770; } yy770: -#line 11176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11363 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PLUS_INFINITY (context.location); } -#line 22387 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22574 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy771: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -22537,9 +22724,9 @@ namespace yy { default: goto yy775; } yy775: -#line 11191 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11378 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TeletexString (context.location); } -#line 22543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22730 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy776: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -22625,9 +22812,9 @@ namespace yy { default: goto yy779; } yy779: -#line 11203 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11390 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_VisibleString (context.location); } -#line 22631 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22818 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy780: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -22720,9 +22907,9 @@ namespace yy { default: goto yy784; } yy784: -#line 11164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11351 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_MINUS_INFINITY (context.location); } -#line 22726 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 22913 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy785: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -22829,9 +23016,9 @@ namespace yy { default: goto yy791; } yy791: -#line 11202 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11389 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_VideotexString (context.location); } -#line 22835 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 23022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy792: yyaccept = 90; yych = *(YYMARKER = ++context.cursor); @@ -22903,9 +23090,9 @@ namespace yy { default: goto yy793; } yy793: -#line 11114 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11301 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ABSTRACT_SYNTAX (context.location); } -#line 22909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 23096 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy794: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -22984,9 +23171,9 @@ namespace yy { default: goto yy796; } yy796: -#line 11148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11335 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GeneralizedTime (context.location); } -#line 22990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 23177 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy797: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -23065,9 +23252,9 @@ namespace yy { default: goto yy799; } yy799: -#line 11178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11365 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PrintableString (context.location); } -#line 23071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 23258 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy800: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); @@ -23146,9 +23333,9 @@ namespace yy { default: goto yy802; } yy802: -#line 11195 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11382 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TYPE_IDENTIFIER (context.location); } -#line 23152 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 23339 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy803: yyaccept = 94; yych = *(YYMARKER = ++context.cursor); @@ -23220,9 +23407,9 @@ namespace yy { default: goto yy804; } yy804: -#line 11199 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11386 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UniversalString (context.location); } -#line 23226 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 23413 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy805: yyaccept = 95; yych = *(YYMARKER = ++context.cursor); @@ -23294,9 +23481,9 @@ namespace yy { default: goto yy806; } yy806: -#line 11138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ENCODING_CONTROL (context.location); } -#line 23300 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 23487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy807: yyaccept = 96; yych = *(YYMARKER = ++context.cursor); @@ -23368,9 +23555,9 @@ namespace yy { default: goto yy808; } yy808: -#line 11169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11356 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ObjectDescriptor (context.location); } -#line 23374 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 23561 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy809: yyaccept = 97; yych = *(YYMARKER = ++context.cursor); @@ -23442,11 +23629,11 @@ namespace yy { default: goto yy810; } yy810: -#line 11182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11369 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_RELATIVE_OID_IRI (context.location); } -#line 23448 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 23635 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" } -#line 11258 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 11445 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" } } diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 71acd284..e037bc18 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -25,6 +25,8 @@ fast_ber_generate(${CMAKE_SOURCE_DIR}/testfiles/parameterized_types.asn paramete fast_ber_generate(${CMAKE_SOURCE_DIR}/testfiles/sequence_of.asn sequence_of) fast_ber_generate(${CMAKE_SOURCE_DIR}/testfiles/time.asn time) fast_ber_generate(${CMAKE_SOURCE_DIR}/testfiles/circular.asn circular) +fast_ber_generate(${CMAKE_SOURCE_DIR}/testfiles/defaults.asn defaults) +fast_ber_generate(${CMAKE_SOURCE_DIR}/testfiles/anonymous_members.asn anonymous_members) fast_ber_generate(${CMAKE_SOURCE_DIR}/testfiles/SGSN-CDR-def-v2009A.asn real_schema) fast_ber_generate2(${CMAKE_SOURCE_DIR}/testfiles/multi_file_import_1.asn ${CMAKE_SOURCE_DIR}/testfiles/multi_file_import_2.asn multi_file_import) @@ -49,7 +51,9 @@ add_executable(fast_ber_tests Test ${TEST_SRC} autogen/choice.hpp autogen/parameterized_types.hpp autogen/sequence_of.hpp autogen/time.hpp - autogen/circular.hpp) + autogen/circular.hpp + autogen/defaults.hpp + autogen/anonymous_members.hpp) target_include_directories(fast_ber_tests PRIVATE SYSTEM ${CMAKE_SOURCE_DIR}/3rd_party/Catch2/single_include) target_include_directories(fast_ber_tests PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) target_link_libraries (fast_ber_tests fast_ber_lib) diff --git a/test/compiler/Anonymous.cpp b/test/compiler/Anonymous.cpp new file mode 100644 index 00000000..39c254a1 --- /dev/null +++ b/test/compiler/Anonymous.cpp @@ -0,0 +1,10 @@ +#include "autogen/anonymous_members.hpp" + +#include "catch2/catch.hpp" + +static_assert(std::is_same>::value, "Anon"); +static_assert(std::is_same>>::value, + "Anon"); +static_assert(std::is_same>::value, + "Anon"); diff --git a/testfiles/anonymous_members.asn b/testfiles/anonymous_members.asn new file mode 100644 index 00000000..366fe9bc --- /dev/null +++ b/testfiles/anonymous_members.asn @@ -0,0 +1,15 @@ +Anonymous + +DEFINITIONS EXPLICIT TAGS ::= + +BEGIN + +Anon ::= SEQUENCE +{ + NULL, + SEQUENCE OF OCTET STRING, + ..., + INTEGER +} + +END diff --git a/testfiles/defaults.asn b/testfiles/defaults.asn new file mode 100644 index 00000000..32f9c53e --- /dev/null +++ b/testfiles/defaults.asn @@ -0,0 +1,14 @@ +Defaults + +DEFINITIONS EXPLICIT TAGS ::= + +BEGIN + +SequenceWithDefault ::= SEQUENCE +{ + flag BOOLEAN DEFAULT FALSE, + seq SEQUENCE OF INTEGER, + ... +} + +END