From c68a140448840ecd2961116b0a86891ff74141e8 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 21 Apr 2019 18:05:58 +0100 Subject: [PATCH 01/31] Add parsing of ANY type, improve parsing of constrained types --- include/fast_ber/compiler/CompilerTypes.hpp | 7 +- include/fast_ber/compiler/Dependencies.hpp | 2 + include/fast_ber/compiler/Identifier.hpp | 5 + src/compiler/asn_compiler.yacc | 49 +- src/compiler/autogen_copy/asn_compiler.hpp | 8450 ++++++++++--------- test/CMakeLists.txt | 20 + 6 files changed, 4380 insertions(+), 4153 deletions(-) diff --git a/include/fast_ber/compiler/CompilerTypes.hpp b/include/fast_ber/compiler/CompilerTypes.hpp index 8fc382b8..4edc1a5d 100644 --- a/include/fast_ber/compiler/CompilerTypes.hpp +++ b/include/fast_ber/compiler/CompilerTypes.hpp @@ -162,6 +162,9 @@ struct EnumerationValue absl::optional value; }; +struct AnyType +{ +}; struct BitStringType { }; @@ -274,7 +277,7 @@ struct UTCTimeType struct DefinedType; using BuiltinType = - absl::variant components; }; +std::string to_string(const AnyType&); std::string to_string(const BitStringType&); std::string to_string(const BooleanType&); std::string to_string(const CharacterStringType&); @@ -562,6 +566,7 @@ bool is_defined(const Type& type) { return absl::holds_alternative( int unnamed_definition_reference_num = 0; +std::string to_string(const AnyType&) { return "Any"; } std::string to_string(const BitStringType&) { return "BitString"; } std::string to_string(const BooleanType&) { return "Boolean"; } std::string to_string(const CharacterStringType&) { return "CharacterString"; } diff --git a/include/fast_ber/compiler/Dependencies.hpp b/include/fast_ber/compiler/Dependencies.hpp index 9f7c1631..fa718e60 100644 --- a/include/fast_ber/compiler/Dependencies.hpp +++ b/include/fast_ber/compiler/Dependencies.hpp @@ -2,6 +2,7 @@ #include "fast_ber/compiler/CompilerTypes.hpp" +std::vector depends_on(const AnyType&); std::vector depends_on(const BitStringType&); std::vector depends_on(const BooleanType&); std::vector depends_on(const CharacterStringType&); @@ -50,6 +51,7 @@ std::vector depends_on(const ChoiceType choice) } return depends; } +std::vector depends_on(const AnyType&) { return{}; } std::vector depends_on(const DateType&) { return {}; } std::vector depends_on(const DateTimeType&) { return {}; } std::vector depends_on(const DurationType&) { return {}; } diff --git a/include/fast_ber/compiler/Identifier.hpp b/include/fast_ber/compiler/Identifier.hpp index 2b1ff043..1e582596 100644 --- a/include/fast_ber/compiler/Identifier.hpp +++ b/include/fast_ber/compiler/Identifier.hpp @@ -2,6 +2,7 @@ #include "fast_ber/compiler/CompilerTypes.hpp" +TaggingInfo identifier(const AnyType&, TaggingMode); TaggingInfo identifier(const BitStringType&, TaggingMode); TaggingInfo identifier(const BooleanType&, TaggingMode); TaggingInfo identifier(const CharacterStringType&, TaggingMode); @@ -35,6 +36,10 @@ TaggingInfo identifier(const DefinedType&, TaggingMode); TaggingInfo identifier(const BuiltinType& type, TaggingMode); TaggingInfo identifier(const Type& type, TaggingMode); +TaggingInfo identifier(const AnyType&, TaggingMode) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} TaggingInfo identifier(const BitStringType&, TaggingMode) { return TaggingInfo{"ExplicitIdentifier", true}; diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index dbd66a26..8ad2e0ea 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -62,6 +62,7 @@ %token ABSENT %token ABSTRACT_SYNTAX %token ALL +%token ANY %token APPLICATION %token ASN_NULL %token AUTOMATIC @@ -239,6 +240,7 @@ %type ParameterizedObjectSetAssignment; %type Type; %type ConstrainedType; +%type TypeWithConstraint; %type BitStringType; %type BooleanType; %type CharacterStringType; @@ -497,11 +499,11 @@ ObjectSet: "{" ObjectSetSpec "}"; ObjectSetSpec: - RootElementSetSpec -| RootElementSetSpec "," ELIPSIS + ElementSetSpec +| ElementSetSpec "," ELIPSIS | ELIPSIS -| ELIPSIS "," AdditionalElementSetSpec -| RootElementSetSpec "," ELIPSIS "," AdditionalElementSetSpec; +| ELIPSIS "," ElementSetSpec +| ElementSetSpec "," ELIPSIS "," ElementSetSpec; ObjectSetElements: Object @@ -809,8 +811,8 @@ Reference: AssignmentList: Assignment { $$.push_back($1); } -| AssignmentList Assignment - { $$ = $1; $$.push_back($2); } +| Assignment AssignmentList + { $$ = $2; $$.push_back($1); } Assignment: TypeAssignment @@ -921,7 +923,8 @@ Type: //| ValueSetFromObjects { std::cerr << std::string("Not handled - ValueSetFromObjects\n"); } BuiltinType: - BitStringType { $$ = $1; } + ANY { $$ = AnyType(); } +| BitStringType { $$ = $1; } | BooleanType { $$ = $1; } | CharacterStringType { $$ = $1; } | ChoiceType { $$ = $1; } @@ -1210,6 +1213,8 @@ RootAlternativeTypeList: { $$ = $1; } | AlternativeTypeList "," ELIPSIS { $$ = $1; } +| AlternativeTypeList "," ELIPSIS "," AlternativeTypeList + { $$ = $1; $$.insert($$.begin(), $5.begin(), $5.end()); } AlternativeTypeList: NamedType @@ -1394,18 +1399,27 @@ UnrestrictedCharacterStringType: ConstrainedType: Type Constraint - { $$ = $1; }; + { $$ = $1; } | TypeWithConstraint + { $$ = $1; } TypeWithConstraint: SET Constraint OF Type + { $$ = SetOfType{ false, nullptr, std::make_shared($4) }; } | SET SizeConstraint OF Type + { $$ = SetOfType{ false, nullptr, std::make_shared($4) }; } | SEQUENCE Constraint OF Type + { $$ = SequenceOfType{ false, nullptr, std::make_shared($4) }; } | SEQUENCE SizeConstraint OF Type + { $$ = SequenceOfType{ false, nullptr, std::make_shared($4) }; } | SET Constraint OF NamedType + { $$ = SetOfType{ true, std::make_shared($4), nullptr }; } | SET SizeConstraint OF NamedType + { $$ = SetOfType{ true, std::make_shared($4), nullptr }; } | SEQUENCE Constraint OF NamedType -| SEQUENCE SizeConstraint OF NamedType; + { $$ = SequenceOfType{ true, std::make_shared($4), nullptr }; } +| SEQUENCE SizeConstraint OF NamedType + { $$ = SequenceOfType{ true, std::make_shared($4), nullptr }; } Constraint: "(" ConstraintSpec ExceptionSpec ")"; @@ -1418,15 +1432,9 @@ SubtypeConstraint: ElementSetSpecs; ElementSetSpecs: - RootElementSetSpec -| RootElementSetSpec "," ELIPSIS -| RootElementSetSpec "," ELIPSIS "," AdditionalElementSetSpec; - -RootElementSetSpec: - ElementSetSpec; - -AdditionalElementSetSpec: - ElementSetSpec; + ElementSetSpec +| ElementSetSpec "," ELIPSIS +| ElementSetSpec "," ELIPSIS "," ElementSetSpec; ElementSetSpec: Unions @@ -1467,7 +1475,7 @@ IntersectionMark: Elements: SubtypeElements //| ObjectSetElements -| "(" ElementSetSpec ")"; +| "(" ElementSetSpecs ")"; SubtypeElements: SingleValue @@ -1701,6 +1709,7 @@ re2c:define:YYCURSOR = "context.cursor"; "ABSENT" { context.location.columns(context.cursor - start); return asn1_parser::make_ABSENT (context.location); } "ABSTRACT-SYNTAX" { context.location.columns(context.cursor - start); return asn1_parser::make_ABSTRACT_SYNTAX (context.location); } "ALL" { context.location.columns(context.cursor - start); return asn1_parser::make_ALL (context.location); } +"ANY" { context.location.columns(context.cursor - start); return asn1_parser::make_ANY (context.location); } "APPLICATION" { context.location.columns(context.cursor - start); return asn1_parser::make_APPLICATION (context.location); } "AUTOMATIC" { context.location.columns(context.cursor - start); return asn1_parser::make_AUTOMATIC (context.location); } "BEGIN" { context.location.columns(context.cursor - start); return asn1_parser::make_BEGIN (context.location); } @@ -1834,6 +1843,8 @@ re2c:define:YYCURSOR = "context.cursor"; "|" { context.location.columns(context.cursor - start); return asn1_parser::make_VERTICAL_LINE (context.location); } "!" { context.location.columns(context.cursor - start); return asn1_parser::make_EXCLAMATION_MARK (context.location); } "<" { context.location.columns(context.cursor - start); return asn1_parser::make_LESS_THAN (context.location); } +"^" { context.location.columns(context.cursor - start); return asn1_parser::make_ACCENT (context.location); } + "@" { context.location.columns(context.cursor - start); return asn1_parser::make_AT (context.location); } . { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } %} diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index b9f0adfd..93792b17 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -813,6 +813,7 @@ namespace yy { // ActualParameter // Type // ConstrainedType + // TypeWithConstraint char dummy44[sizeof(Type)]; // ValueWithoutTypeIdentifier @@ -940,126 +941,127 @@ namespace yy { ABSENT = 283, ABSTRACT_SYNTAX = 284, ALL = 285, - APPLICATION = 286, - ASN_NULL = 287, - AUTOMATIC = 288, - BEGIN = 289, - BIT = 290, - BMPString = 291, - BOOLEAN = 292, - BY = 293, - CHARACTER = 294, - CHOICE = 295, - CLASS = 296, - COMPONENT = 297, - COMPONENTS = 298, - CONSTRAINED = 299, - CONTAINING = 300, - DATE = 301, - DATE_TIME = 302, - DEFAULT = 303, - DEFINITIONS = 304, - DURATION = 305, - EMBEDDED = 306, - ENCODED = 307, - ENCODING_CONTROL = 308, - END = 309, - ENUMERATED = 310, - EXCEPT = 311, - EXPLICIT = 312, - EXPORTS = 313, - EXTENSIBILITY = 314, - EXTERNAL = 315, - FALSE = 316, - FROM = 317, - GeneralizedTime = 318, - GeneralString = 319, - GraphicString = 320, - IA5String = 321, - IDENTIFIER = 322, - IMPLICIT = 323, - IMPLIED = 324, - IMPORTS = 325, - INCLUDES = 326, - INSTANCE = 327, - INSTRUCTIONS = 328, - INTEGER = 329, - INTERSECTION = 330, - ISO646String = 331, - MAX = 332, - MIN = 333, - MINUS_INFINITY = 334, - NOT_A_NUMBER = 335, - NumericString = 336, - OBJECT = 337, - ObjectDescriptor = 338, - OCTET = 339, - OF = 340, - OID_IRI = 341, - OPTIONAL = 342, - PATTERN = 343, - PDV = 344, - PLUS_INFINITY = 345, - PRESENT = 346, - PrintableString = 347, - PRIVATE = 348, - REAL = 349, - RELATIVE_OID = 350, - RELATIVE_OID_IRI = 351, - SEQUENCE = 352, - SET = 353, - SETTINGS = 354, - SIZE = 355, - STRING = 356, - SYNTAX = 357, - T61String = 358, - TAGS = 359, - TeletexString = 360, - TIME = 361, - TIME_OF_DAY = 362, - TRUE = 363, - TYPE_IDENTIFIER = 364, - UNION = 365, - UNIQUE = 366, - UNIVERSAL = 367, - UniversalString = 368, - UTCTime = 369, - UTF8String = 370, - VideotexString = 371, - VisibleString = 372, - WITH = 373, - DEFINED_AS = 374, - ELIPSIS = 375, - RANGE = 376, - OPEN_BRACE = 377, - CLOSE_BRACE = 378, - OPEN_PARENTHESIS = 379, - CLOSE_PARENTHESIS = 380, - OPEN_SQUARE_BRACKET = 381, - CLOSE_SQUARE_BRACKET = 382, - LESS_THAN = 383, - GREATER_THAN = 384, - EXCLAMATION_MARK = 385, - QUOTATION_MARK = 386, - AMPERSAND = 387, - APOSTROPHE = 388, - ASTERISK = 389, - COMMA = 390, - FULL_STOP = 391, - HYPHEN_MINUS = 392, - SOLIDUS = 393, - COLON = 394, - SEMICOLON = 395, - EQUALS_SIGN = 396, - AT = 397, - VERTICAL_LINE = 398, - ACCENT = 399, - PLUS = 400, - STAR = 401, - GENERIC_IDENTIFIER_UPPERCASE = 402, - GENERIC_IDENTIFIER_LOWERCASE = 403, - GENERIC_INTEGER = 404, - xmlasn1typename = 405 + ANY = 286, + APPLICATION = 287, + ASN_NULL = 288, + AUTOMATIC = 289, + BEGIN = 290, + BIT = 291, + BMPString = 292, + BOOLEAN = 293, + BY = 294, + CHARACTER = 295, + CHOICE = 296, + CLASS = 297, + COMPONENT = 298, + COMPONENTS = 299, + CONSTRAINED = 300, + CONTAINING = 301, + DATE = 302, + DATE_TIME = 303, + DEFAULT = 304, + DEFINITIONS = 305, + DURATION = 306, + EMBEDDED = 307, + ENCODED = 308, + ENCODING_CONTROL = 309, + END = 310, + ENUMERATED = 311, + EXCEPT = 312, + EXPLICIT = 313, + EXPORTS = 314, + EXTENSIBILITY = 315, + EXTERNAL = 316, + FALSE = 317, + FROM = 318, + GeneralizedTime = 319, + GeneralString = 320, + GraphicString = 321, + IA5String = 322, + IDENTIFIER = 323, + IMPLICIT = 324, + IMPLIED = 325, + IMPORTS = 326, + INCLUDES = 327, + INSTANCE = 328, + INSTRUCTIONS = 329, + INTEGER = 330, + INTERSECTION = 331, + ISO646String = 332, + MAX = 333, + MIN = 334, + MINUS_INFINITY = 335, + NOT_A_NUMBER = 336, + NumericString = 337, + OBJECT = 338, + ObjectDescriptor = 339, + OCTET = 340, + OF = 341, + OID_IRI = 342, + OPTIONAL = 343, + PATTERN = 344, + PDV = 345, + PLUS_INFINITY = 346, + PRESENT = 347, + PrintableString = 348, + PRIVATE = 349, + REAL = 350, + RELATIVE_OID = 351, + RELATIVE_OID_IRI = 352, + SEQUENCE = 353, + SET = 354, + SETTINGS = 355, + SIZE = 356, + STRING = 357, + SYNTAX = 358, + T61String = 359, + TAGS = 360, + TeletexString = 361, + TIME = 362, + TIME_OF_DAY = 363, + TRUE = 364, + TYPE_IDENTIFIER = 365, + UNION = 366, + UNIQUE = 367, + UNIVERSAL = 368, + UniversalString = 369, + UTCTime = 370, + UTF8String = 371, + VideotexString = 372, + VisibleString = 373, + WITH = 374, + DEFINED_AS = 375, + ELIPSIS = 376, + RANGE = 377, + OPEN_BRACE = 378, + CLOSE_BRACE = 379, + OPEN_PARENTHESIS = 380, + CLOSE_PARENTHESIS = 381, + OPEN_SQUARE_BRACKET = 382, + CLOSE_SQUARE_BRACKET = 383, + LESS_THAN = 384, + GREATER_THAN = 385, + EXCLAMATION_MARK = 386, + QUOTATION_MARK = 387, + AMPERSAND = 388, + APOSTROPHE = 389, + ASTERISK = 390, + COMMA = 391, + FULL_STOP = 392, + HYPHEN_MINUS = 393, + SOLIDUS = 394, + COLON = 395, + SEMICOLON = 396, + EQUALS_SIGN = 397, + AT = 398, + VERTICAL_LINE = 399, + ACCENT = 400, + PLUS = 401, + STAR = 402, + GENERIC_IDENTIFIER_UPPERCASE = 403, + GENERIC_IDENTIFIER_LOWERCASE = 404, + GENERIC_INTEGER = 405, + xmlasn1typename = 406 }; }; @@ -1386,6 +1388,10 @@ namespace yy { symbol_type make_ALL (const location_type& l); + static inline + symbol_type + make_ANY (const location_type& l); + static inline symbol_type make_APPLICATION (const location_type& l); @@ -2071,12 +2077,12 @@ namespace yy { enum { yyeof_ = 0, - yylast_ = 3636, ///< Last index in yytable_. - yynnts_ = 229, ///< Number of nonterminal symbols. + yylast_ = 3705, ///< Last index in yytable_. + yynnts_ = 227, ///< Number of nonterminal symbols. yyfinal_ = 6, ///< Termination state number. yyterror_ = 1, yyerrcode_ = 256, - yyntokens_ = 151 ///< Number of tokens. + yyntokens_ = 152 ///< Number of tokens. }; @@ -2133,9 +2139,9 @@ namespace yy { 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150 + 145, 146, 147, 148, 149, 150, 151 }; - const unsigned int user_token_number_max_ = 405; + const unsigned int user_token_number_max_ = 406; const token_number_type undef_token_ = 2; if (static_cast(t) <= yyeof_) @@ -2168,206 +2174,207 @@ namespace yy { { switch (other.type_get ()) { - case 158: // ObjectClassAssignment - case 194: // ObjectSetAssignment - case 198: // ParameterizedAssignment - case 199: // ParameterizedTypeAssignment - case 200: // ParameterizedValueAssignment - case 201: // ParameterizedValueSetTypeAssignment - case 202: // ParameterizedObjectClassAssignment - case 203: // ParameterizedObjectAssignment - case 248: // Assignment - case 257: // TypeAssignment - case 258: // ValueAssignment - case 259: // ValueSetTypeAssignment + case 159: // ObjectClassAssignment + case 195: // ObjectSetAssignment + case 199: // ParameterizedAssignment + case 200: // ParameterizedTypeAssignment + case 201: // ParameterizedValueAssignment + case 202: // ParameterizedValueSetTypeAssignment + case 203: // ParameterizedObjectClassAssignment + case 204: // ParameterizedObjectAssignment + case 249: // Assignment + case 258: // TypeAssignment + case 259: // ValueAssignment + case 260: // ValueSetTypeAssignment value.copy< Assignment > (other.value); break; - case 280: // BitStringType + case 281: // BitStringType value.copy< BitStringType > (other.value); break; - case 269: // BooleanType + case 270: // BooleanType value.copy< BooleanType > (other.value); break; - case 261: // BuiltinType + case 262: // BuiltinType value.copy< BuiltinType > (other.value); break; - case 326: // CharacterStringType + case 327: // CharacterStringType value.copy< CharacterStringType > (other.value); break; - case 293: // ChoiceType + case 294: // ChoiceType value.copy< ChoiceType > (other.value); break; - case 303: // Class + case 304: // Class value.copy< Class > (other.value); break; - case 289: // ComponentType + case 290: // ComponentType value.copy< ComponentType > (other.value); break; - case 286: // ComponentTypeLists - case 287: // RootComponentTypeList - case 288: // ComponentTypeList + case 287: // ComponentTypeLists + case 288: // RootComponentTypeList + case 289: // ComponentTypeList value.copy< ComponentTypeList > (other.value); break; - case 324: // DateTimeType + case 325: // DateTimeType value.copy< DateTimeType > (other.value); break; - case 322: // DateType + case 323: // DateType value.copy< DateType > (other.value); break; - case 249: // DefinedType - case 251: // ParameterizedType + case 250: // DefinedType + case 252: // ParameterizedType value.copy< DefinedType > (other.value); break; - case 250: // DefinedValue + case 251: // DefinedValue value.copy< DefinedValue > (other.value); break; - case 325: // DurationType + case 326: // DurationType value.copy< DurationType > (other.value); break; - case 318: // EmbeddedPDVType + case 319: // EmbeddedPDVType value.copy< EmbeddedPDVType > (other.value); break; - case 275: // EnumeratedType - case 276: // Enumerations - case 277: // Enumeration + case 276: // EnumeratedType + case 277: // Enumerations + case 278: // Enumeration value.copy< EnumeratedType > (other.value); break; - case 278: // EnumerationItem + case 279: // EnumerationItem value.copy< EnumerationValue > (other.value); break; - case 319: // ExternalType + case 320: // ExternalType value.copy< ExternalType > (other.value); break; - case 312: // IRIType + case 313: // IRIType value.copy< IRIType > (other.value); break; - case 241: // SymbolsFromModule + case 242: // SymbolsFromModule value.copy< Import > (other.value); break; - case 211: // InstanceOfType + case 212: // InstanceOfType value.copy< InstanceOfType > (other.value); break; - case 271: // IntegerType + case 272: // IntegerType value.copy< IntegerType > (other.value); break; - case 235: // ModuleBody + case 236: // ModuleBody value.copy< Module > (other.value); break; - case 273: // NamedNumber + case 274: // NamedNumber value.copy< NamedNumber > (other.value); break; - case 262: // NamedType + case 263: // NamedType value.copy< NamedType > (other.value); break; - case 284: // NullType + case 285: // NullType value.copy< NullType > (other.value); break; - case 197: // ObjectClassFieldType + case 198: // ObjectClassFieldType value.copy< ObjectClassFieldType > (other.value); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 308: // ObjIdComponents + case 309: // NameForm + case 310: // NumberForm + case 311: // NameAndNumberForm value.copy< ObjectIdComponentValue > (other.value); break; - case 304: // ObjectIdentifierType + case 305: // ObjectIdentifierType value.copy< ObjectIdentifierType > (other.value); break; - case 283: // OctetStringType + case 284: // OctetStringType value.copy< OctetStringType > (other.value); break; - case 298: // PrefixedType + case 299: // PrefixedType value.copy< PrefixedType > (other.value); break; - case 279: // RealType + case 280: // RealType value.copy< RealType > (other.value); break; - case 317: // RelativeIRIType + case 318: // RelativeIRIType value.copy< RelativeIRIType > (other.value); break; - case 311: // RelativeOIDType + case 312: // RelativeOIDType value.copy< RelativeOIDType > (other.value); break; - case 290: // SequenceOfType + case 291: // SequenceOfType value.copy< SequenceOfType > (other.value); break; - case 285: // SequenceType + case 286: // SequenceType value.copy< SequenceType > (other.value); break; - case 292: // SetOfType + case 293: // SetOfType value.copy< SetOfType > (other.value); break; - case 291: // SetType + case 292: // SetType value.copy< SetType > (other.value); break; - case 300: // Tag + case 301: // Tag value.copy< Tag > (other.value); break; - case 299: // TaggedType + case 300: // TaggedType value.copy< TaggedType > (other.value); break; - case 233: // TagDefault + case 234: // TagDefault value.copy< TaggingMode > (other.value); break; - case 323: // TimeOfDayType + case 324: // TimeOfDayType value.copy< TimeOfDayType > (other.value); break; - case 320: // TimeType + case 321: // TimeType value.copy< TimeType > (other.value); break; - case 254: // ActualParameter - case 260: // Type - case 329: // ConstrainedType + case 255: // ActualParameter + case 261: // Type + case 330: // ConstrainedType + case 331: // TypeWithConstraint value.copy< Type > (other.value); break; - case 263: // ValueWithoutTypeIdentifier - case 264: // Value - case 349: // SingleValue + case 264: // ValueWithoutTypeIdentifier + case 265: // Value + case 348: // SingleValue value.copy< Value > (other.value); break; @@ -2375,17 +2382,17 @@ namespace yy { value.copy< double > (other.value); break; - case 302: // ClassNumber + case 303: // ClassNumber value.copy< int > (other.value); break; case 4: // number - case 274: // SignedNumber + case 275: // SignedNumber value.copy< long long > (other.value); break; - case 204: // ParameterList - case 205: // ParameterSeries + case 205: // ParameterList + case 206: // ParameterSeries value.copy< std::set > (other.value); break; @@ -2400,61 +2407,61 @@ namespace yy { case 21: // objectreference case 23: // typefieldreference case 24: // valuefieldreference - case 147: // GENERIC_IDENTIFIER_UPPERCASE - case 148: // GENERIC_IDENTIFIER_LOWERCASE - case 206: // Parameter - case 212: // SimpleDefinedType - case 224: // ModuleIdentifier - case 242: // GlobalModuleReference - case 245: // Symbol - case 246: // Reference - case 374: // typereference - case 375: // identifier - case 376: // valuereference - case 377: // modulereference - case 378: // objectclassreference - case 379: // word + case 148: // GENERIC_IDENTIFIER_UPPERCASE + case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 207: // Parameter + case 213: // SimpleDefinedType + case 225: // ModuleIdentifier + case 243: // GlobalModuleReference + case 246: // Symbol + case 247: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.copy< std::string > (other.value); break; - case 247: // AssignmentList + case 248: // AssignmentList value.copy< std::vector > (other.value); break; - case 236: // Exports + case 237: // Exports value.copy< std::vector > (other.value); break; - case 238: // Imports - case 239: // SymbolsImported - case 240: // SymbolsFromModuleList + case 239: // Imports + case 240: // SymbolsImported + case 241: // SymbolsFromModuleList value.copy< std::vector > (other.value); break; - case 272: // NamedNumberList + case 273: // NamedNumberList value.copy< std::vector > (other.value); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 295: // AlternativeTypeLists + case 296: // RootAlternativeTypeList + case 297: // AlternativeTypeList value.copy< std::vector > (other.value); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 306: // ObjectIdentifierValue + case 307: // ObjIdComponentsList value.copy< std::vector > (other.value); break; - case 253: // ActualParameterList + case 254: // ActualParameterList value.copy< std::vector > (other.value); break; - case 268: // SequenceOfValues + case 269: // SequenceOfValues value.copy< std::vector > (other.value); break; - case 244: // SymbolList + case 245: // SymbolList value.copy< std::vector > (other.value); break; @@ -2475,206 +2482,207 @@ namespace yy { (void) v; switch (this->type_get ()) { - case 158: // ObjectClassAssignment - case 194: // ObjectSetAssignment - case 198: // ParameterizedAssignment - case 199: // ParameterizedTypeAssignment - case 200: // ParameterizedValueAssignment - case 201: // ParameterizedValueSetTypeAssignment - case 202: // ParameterizedObjectClassAssignment - case 203: // ParameterizedObjectAssignment - case 248: // Assignment - case 257: // TypeAssignment - case 258: // ValueAssignment - case 259: // ValueSetTypeAssignment + case 159: // ObjectClassAssignment + case 195: // ObjectSetAssignment + case 199: // ParameterizedAssignment + case 200: // ParameterizedTypeAssignment + case 201: // ParameterizedValueAssignment + case 202: // ParameterizedValueSetTypeAssignment + case 203: // ParameterizedObjectClassAssignment + case 204: // ParameterizedObjectAssignment + case 249: // Assignment + case 258: // TypeAssignment + case 259: // ValueAssignment + case 260: // ValueSetTypeAssignment value.copy< Assignment > (v); break; - case 280: // BitStringType + case 281: // BitStringType value.copy< BitStringType > (v); break; - case 269: // BooleanType + case 270: // BooleanType value.copy< BooleanType > (v); break; - case 261: // BuiltinType + case 262: // BuiltinType value.copy< BuiltinType > (v); break; - case 326: // CharacterStringType + case 327: // CharacterStringType value.copy< CharacterStringType > (v); break; - case 293: // ChoiceType + case 294: // ChoiceType value.copy< ChoiceType > (v); break; - case 303: // Class + case 304: // Class value.copy< Class > (v); break; - case 289: // ComponentType + case 290: // ComponentType value.copy< ComponentType > (v); break; - case 286: // ComponentTypeLists - case 287: // RootComponentTypeList - case 288: // ComponentTypeList + case 287: // ComponentTypeLists + case 288: // RootComponentTypeList + case 289: // ComponentTypeList value.copy< ComponentTypeList > (v); break; - case 324: // DateTimeType + case 325: // DateTimeType value.copy< DateTimeType > (v); break; - case 322: // DateType + case 323: // DateType value.copy< DateType > (v); break; - case 249: // DefinedType - case 251: // ParameterizedType + case 250: // DefinedType + case 252: // ParameterizedType value.copy< DefinedType > (v); break; - case 250: // DefinedValue + case 251: // DefinedValue value.copy< DefinedValue > (v); break; - case 325: // DurationType + case 326: // DurationType value.copy< DurationType > (v); break; - case 318: // EmbeddedPDVType + case 319: // EmbeddedPDVType value.copy< EmbeddedPDVType > (v); break; - case 275: // EnumeratedType - case 276: // Enumerations - case 277: // Enumeration + case 276: // EnumeratedType + case 277: // Enumerations + case 278: // Enumeration value.copy< EnumeratedType > (v); break; - case 278: // EnumerationItem + case 279: // EnumerationItem value.copy< EnumerationValue > (v); break; - case 319: // ExternalType + case 320: // ExternalType value.copy< ExternalType > (v); break; - case 312: // IRIType + case 313: // IRIType value.copy< IRIType > (v); break; - case 241: // SymbolsFromModule + case 242: // SymbolsFromModule value.copy< Import > (v); break; - case 211: // InstanceOfType + case 212: // InstanceOfType value.copy< InstanceOfType > (v); break; - case 271: // IntegerType + case 272: // IntegerType value.copy< IntegerType > (v); break; - case 235: // ModuleBody + case 236: // ModuleBody value.copy< Module > (v); break; - case 273: // NamedNumber + case 274: // NamedNumber value.copy< NamedNumber > (v); break; - case 262: // NamedType + case 263: // NamedType value.copy< NamedType > (v); break; - case 284: // NullType + case 285: // NullType value.copy< NullType > (v); break; - case 197: // ObjectClassFieldType + case 198: // ObjectClassFieldType value.copy< ObjectClassFieldType > (v); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 308: // ObjIdComponents + case 309: // NameForm + case 310: // NumberForm + case 311: // NameAndNumberForm value.copy< ObjectIdComponentValue > (v); break; - case 304: // ObjectIdentifierType + case 305: // ObjectIdentifierType value.copy< ObjectIdentifierType > (v); break; - case 283: // OctetStringType + case 284: // OctetStringType value.copy< OctetStringType > (v); break; - case 298: // PrefixedType + case 299: // PrefixedType value.copy< PrefixedType > (v); break; - case 279: // RealType + case 280: // RealType value.copy< RealType > (v); break; - case 317: // RelativeIRIType + case 318: // RelativeIRIType value.copy< RelativeIRIType > (v); break; - case 311: // RelativeOIDType + case 312: // RelativeOIDType value.copy< RelativeOIDType > (v); break; - case 290: // SequenceOfType + case 291: // SequenceOfType value.copy< SequenceOfType > (v); break; - case 285: // SequenceType + case 286: // SequenceType value.copy< SequenceType > (v); break; - case 292: // SetOfType + case 293: // SetOfType value.copy< SetOfType > (v); break; - case 291: // SetType + case 292: // SetType value.copy< SetType > (v); break; - case 300: // Tag + case 301: // Tag value.copy< Tag > (v); break; - case 299: // TaggedType + case 300: // TaggedType value.copy< TaggedType > (v); break; - case 233: // TagDefault + case 234: // TagDefault value.copy< TaggingMode > (v); break; - case 323: // TimeOfDayType + case 324: // TimeOfDayType value.copy< TimeOfDayType > (v); break; - case 320: // TimeType + case 321: // TimeType value.copy< TimeType > (v); break; - case 254: // ActualParameter - case 260: // Type - case 329: // ConstrainedType + case 255: // ActualParameter + case 261: // Type + case 330: // ConstrainedType + case 331: // TypeWithConstraint value.copy< Type > (v); break; - case 263: // ValueWithoutTypeIdentifier - case 264: // Value - case 349: // SingleValue + case 264: // ValueWithoutTypeIdentifier + case 265: // Value + case 348: // SingleValue value.copy< Value > (v); break; @@ -2682,17 +2690,17 @@ namespace yy { value.copy< double > (v); break; - case 302: // ClassNumber + case 303: // ClassNumber value.copy< int > (v); break; case 4: // number - case 274: // SignedNumber + case 275: // SignedNumber value.copy< long long > (v); break; - case 204: // ParameterList - case 205: // ParameterSeries + case 205: // ParameterList + case 206: // ParameterSeries value.copy< std::set > (v); break; @@ -2707,61 +2715,61 @@ namespace yy { case 21: // objectreference case 23: // typefieldreference case 24: // valuefieldreference - case 147: // GENERIC_IDENTIFIER_UPPERCASE - case 148: // GENERIC_IDENTIFIER_LOWERCASE - case 206: // Parameter - case 212: // SimpleDefinedType - case 224: // ModuleIdentifier - case 242: // GlobalModuleReference - case 245: // Symbol - case 246: // Reference - case 374: // typereference - case 375: // identifier - case 376: // valuereference - case 377: // modulereference - case 378: // objectclassreference - case 379: // word + case 148: // GENERIC_IDENTIFIER_UPPERCASE + case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 207: // Parameter + case 213: // SimpleDefinedType + case 225: // ModuleIdentifier + case 243: // GlobalModuleReference + case 246: // Symbol + case 247: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.copy< std::string > (v); break; - case 247: // AssignmentList + case 248: // AssignmentList value.copy< std::vector > (v); break; - case 236: // Exports + case 237: // Exports value.copy< std::vector > (v); break; - case 238: // Imports - case 239: // SymbolsImported - case 240: // SymbolsFromModuleList + case 239: // Imports + case 240: // SymbolsImported + case 241: // SymbolsFromModuleList value.copy< std::vector > (v); break; - case 272: // NamedNumberList + case 273: // NamedNumberList value.copy< std::vector > (v); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 295: // AlternativeTypeLists + case 296: // RootAlternativeTypeList + case 297: // AlternativeTypeList value.copy< std::vector > (v); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 306: // ObjectIdentifierValue + case 307: // ObjIdComponentsList value.copy< std::vector > (v); break; - case 253: // ActualParameterList + case 254: // ActualParameterList value.copy< std::vector > (v); break; - case 268: // SequenceOfValues + case 269: // SequenceOfValues value.copy< std::vector > (v); break; - case 244: // SymbolList + case 245: // SymbolList value.copy< std::vector > (v); break; @@ -3219,206 +3227,207 @@ namespace yy { // Type destructor. switch (yytype) { - case 158: // ObjectClassAssignment - case 194: // ObjectSetAssignment - case 198: // ParameterizedAssignment - case 199: // ParameterizedTypeAssignment - case 200: // ParameterizedValueAssignment - case 201: // ParameterizedValueSetTypeAssignment - case 202: // ParameterizedObjectClassAssignment - case 203: // ParameterizedObjectAssignment - case 248: // Assignment - case 257: // TypeAssignment - case 258: // ValueAssignment - case 259: // ValueSetTypeAssignment + case 159: // ObjectClassAssignment + case 195: // ObjectSetAssignment + case 199: // ParameterizedAssignment + case 200: // ParameterizedTypeAssignment + case 201: // ParameterizedValueAssignment + case 202: // ParameterizedValueSetTypeAssignment + case 203: // ParameterizedObjectClassAssignment + case 204: // ParameterizedObjectAssignment + case 249: // Assignment + case 258: // TypeAssignment + case 259: // ValueAssignment + case 260: // ValueSetTypeAssignment value.template destroy< Assignment > (); break; - case 280: // BitStringType + case 281: // BitStringType value.template destroy< BitStringType > (); break; - case 269: // BooleanType + case 270: // BooleanType value.template destroy< BooleanType > (); break; - case 261: // BuiltinType + case 262: // BuiltinType value.template destroy< BuiltinType > (); break; - case 326: // CharacterStringType + case 327: // CharacterStringType value.template destroy< CharacterStringType > (); break; - case 293: // ChoiceType + case 294: // ChoiceType value.template destroy< ChoiceType > (); break; - case 303: // Class + case 304: // Class value.template destroy< Class > (); break; - case 289: // ComponentType + case 290: // ComponentType value.template destroy< ComponentType > (); break; - case 286: // ComponentTypeLists - case 287: // RootComponentTypeList - case 288: // ComponentTypeList + case 287: // ComponentTypeLists + case 288: // RootComponentTypeList + case 289: // ComponentTypeList value.template destroy< ComponentTypeList > (); break; - case 324: // DateTimeType + case 325: // DateTimeType value.template destroy< DateTimeType > (); break; - case 322: // DateType + case 323: // DateType value.template destroy< DateType > (); break; - case 249: // DefinedType - case 251: // ParameterizedType + case 250: // DefinedType + case 252: // ParameterizedType value.template destroy< DefinedType > (); break; - case 250: // DefinedValue + case 251: // DefinedValue value.template destroy< DefinedValue > (); break; - case 325: // DurationType + case 326: // DurationType value.template destroy< DurationType > (); break; - case 318: // EmbeddedPDVType + case 319: // EmbeddedPDVType value.template destroy< EmbeddedPDVType > (); break; - case 275: // EnumeratedType - case 276: // Enumerations - case 277: // Enumeration + case 276: // EnumeratedType + case 277: // Enumerations + case 278: // Enumeration value.template destroy< EnumeratedType > (); break; - case 278: // EnumerationItem + case 279: // EnumerationItem value.template destroy< EnumerationValue > (); break; - case 319: // ExternalType + case 320: // ExternalType value.template destroy< ExternalType > (); break; - case 312: // IRIType + case 313: // IRIType value.template destroy< IRIType > (); break; - case 241: // SymbolsFromModule + case 242: // SymbolsFromModule value.template destroy< Import > (); break; - case 211: // InstanceOfType + case 212: // InstanceOfType value.template destroy< InstanceOfType > (); break; - case 271: // IntegerType + case 272: // IntegerType value.template destroy< IntegerType > (); break; - case 235: // ModuleBody + case 236: // ModuleBody value.template destroy< Module > (); break; - case 273: // NamedNumber + case 274: // NamedNumber value.template destroy< NamedNumber > (); break; - case 262: // NamedType + case 263: // NamedType value.template destroy< NamedType > (); break; - case 284: // NullType + case 285: // NullType value.template destroy< NullType > (); break; - case 197: // ObjectClassFieldType + case 198: // ObjectClassFieldType value.template destroy< ObjectClassFieldType > (); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 308: // ObjIdComponents + case 309: // NameForm + case 310: // NumberForm + case 311: // NameAndNumberForm value.template destroy< ObjectIdComponentValue > (); break; - case 304: // ObjectIdentifierType + case 305: // ObjectIdentifierType value.template destroy< ObjectIdentifierType > (); break; - case 283: // OctetStringType + case 284: // OctetStringType value.template destroy< OctetStringType > (); break; - case 298: // PrefixedType + case 299: // PrefixedType value.template destroy< PrefixedType > (); break; - case 279: // RealType + case 280: // RealType value.template destroy< RealType > (); break; - case 317: // RelativeIRIType + case 318: // RelativeIRIType value.template destroy< RelativeIRIType > (); break; - case 311: // RelativeOIDType + case 312: // RelativeOIDType value.template destroy< RelativeOIDType > (); break; - case 290: // SequenceOfType + case 291: // SequenceOfType value.template destroy< SequenceOfType > (); break; - case 285: // SequenceType + case 286: // SequenceType value.template destroy< SequenceType > (); break; - case 292: // SetOfType + case 293: // SetOfType value.template destroy< SetOfType > (); break; - case 291: // SetType + case 292: // SetType value.template destroy< SetType > (); break; - case 300: // Tag + case 301: // Tag value.template destroy< Tag > (); break; - case 299: // TaggedType + case 300: // TaggedType value.template destroy< TaggedType > (); break; - case 233: // TagDefault + case 234: // TagDefault value.template destroy< TaggingMode > (); break; - case 323: // TimeOfDayType + case 324: // TimeOfDayType value.template destroy< TimeOfDayType > (); break; - case 320: // TimeType + case 321: // TimeType value.template destroy< TimeType > (); break; - case 254: // ActualParameter - case 260: // Type - case 329: // ConstrainedType + case 255: // ActualParameter + case 261: // Type + case 330: // ConstrainedType + case 331: // TypeWithConstraint value.template destroy< Type > (); break; - case 263: // ValueWithoutTypeIdentifier - case 264: // Value - case 349: // SingleValue + case 264: // ValueWithoutTypeIdentifier + case 265: // Value + case 348: // SingleValue value.template destroy< Value > (); break; @@ -3426,17 +3435,17 @@ namespace yy { value.template destroy< double > (); break; - case 302: // ClassNumber + case 303: // ClassNumber value.template destroy< int > (); break; case 4: // number - case 274: // SignedNumber + case 275: // SignedNumber value.template destroy< long long > (); break; - case 204: // ParameterList - case 205: // ParameterSeries + case 205: // ParameterList + case 206: // ParameterSeries value.template destroy< std::set > (); break; @@ -3451,61 +3460,61 @@ namespace yy { case 21: // objectreference case 23: // typefieldreference case 24: // valuefieldreference - case 147: // GENERIC_IDENTIFIER_UPPERCASE - case 148: // GENERIC_IDENTIFIER_LOWERCASE - case 206: // Parameter - case 212: // SimpleDefinedType - case 224: // ModuleIdentifier - case 242: // GlobalModuleReference - case 245: // Symbol - case 246: // Reference - case 374: // typereference - case 375: // identifier - case 376: // valuereference - case 377: // modulereference - case 378: // objectclassreference - case 379: // word + case 148: // GENERIC_IDENTIFIER_UPPERCASE + case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 207: // Parameter + case 213: // SimpleDefinedType + case 225: // ModuleIdentifier + case 243: // GlobalModuleReference + case 246: // Symbol + case 247: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.template destroy< std::string > (); break; - case 247: // AssignmentList + case 248: // AssignmentList value.template destroy< std::vector > (); break; - case 236: // Exports + case 237: // Exports value.template destroy< std::vector > (); break; - case 238: // Imports - case 239: // SymbolsImported - case 240: // SymbolsFromModuleList + case 239: // Imports + case 240: // SymbolsImported + case 241: // SymbolsFromModuleList value.template destroy< std::vector > (); break; - case 272: // NamedNumberList + case 273: // NamedNumberList value.template destroy< std::vector > (); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 295: // AlternativeTypeLists + case 296: // RootAlternativeTypeList + case 297: // AlternativeTypeList value.template destroy< std::vector > (); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 306: // ObjectIdentifierValue + case 307: // ObjIdComponentsList value.template destroy< std::vector > (); break; - case 253: // ActualParameterList + case 254: // ActualParameterList value.template destroy< std::vector > (); break; - case 268: // SequenceOfValues + case 269: // SequenceOfValues value.template destroy< std::vector > (); break; - case 244: // SymbolList + case 245: // SymbolList value.template destroy< std::vector > (); break; @@ -3532,206 +3541,207 @@ namespace yy { super_type::move(s); switch (this->type_get ()) { - case 158: // ObjectClassAssignment - case 194: // ObjectSetAssignment - case 198: // ParameterizedAssignment - case 199: // ParameterizedTypeAssignment - case 200: // ParameterizedValueAssignment - case 201: // ParameterizedValueSetTypeAssignment - case 202: // ParameterizedObjectClassAssignment - case 203: // ParameterizedObjectAssignment - case 248: // Assignment - case 257: // TypeAssignment - case 258: // ValueAssignment - case 259: // ValueSetTypeAssignment + case 159: // ObjectClassAssignment + case 195: // ObjectSetAssignment + case 199: // ParameterizedAssignment + case 200: // ParameterizedTypeAssignment + case 201: // ParameterizedValueAssignment + case 202: // ParameterizedValueSetTypeAssignment + case 203: // ParameterizedObjectClassAssignment + case 204: // ParameterizedObjectAssignment + case 249: // Assignment + case 258: // TypeAssignment + case 259: // ValueAssignment + case 260: // ValueSetTypeAssignment value.move< Assignment > (s.value); break; - case 280: // BitStringType + case 281: // BitStringType value.move< BitStringType > (s.value); break; - case 269: // BooleanType + case 270: // BooleanType value.move< BooleanType > (s.value); break; - case 261: // BuiltinType + case 262: // BuiltinType value.move< BuiltinType > (s.value); break; - case 326: // CharacterStringType + case 327: // CharacterStringType value.move< CharacterStringType > (s.value); break; - case 293: // ChoiceType + case 294: // ChoiceType value.move< ChoiceType > (s.value); break; - case 303: // Class + case 304: // Class value.move< Class > (s.value); break; - case 289: // ComponentType + case 290: // ComponentType value.move< ComponentType > (s.value); break; - case 286: // ComponentTypeLists - case 287: // RootComponentTypeList - case 288: // ComponentTypeList + case 287: // ComponentTypeLists + case 288: // RootComponentTypeList + case 289: // ComponentTypeList value.move< ComponentTypeList > (s.value); break; - case 324: // DateTimeType + case 325: // DateTimeType value.move< DateTimeType > (s.value); break; - case 322: // DateType + case 323: // DateType value.move< DateType > (s.value); break; - case 249: // DefinedType - case 251: // ParameterizedType + case 250: // DefinedType + case 252: // ParameterizedType value.move< DefinedType > (s.value); break; - case 250: // DefinedValue + case 251: // DefinedValue value.move< DefinedValue > (s.value); break; - case 325: // DurationType + case 326: // DurationType value.move< DurationType > (s.value); break; - case 318: // EmbeddedPDVType + case 319: // EmbeddedPDVType value.move< EmbeddedPDVType > (s.value); break; - case 275: // EnumeratedType - case 276: // Enumerations - case 277: // Enumeration + case 276: // EnumeratedType + case 277: // Enumerations + case 278: // Enumeration value.move< EnumeratedType > (s.value); break; - case 278: // EnumerationItem + case 279: // EnumerationItem value.move< EnumerationValue > (s.value); break; - case 319: // ExternalType + case 320: // ExternalType value.move< ExternalType > (s.value); break; - case 312: // IRIType + case 313: // IRIType value.move< IRIType > (s.value); break; - case 241: // SymbolsFromModule + case 242: // SymbolsFromModule value.move< Import > (s.value); break; - case 211: // InstanceOfType + case 212: // InstanceOfType value.move< InstanceOfType > (s.value); break; - case 271: // IntegerType + case 272: // IntegerType value.move< IntegerType > (s.value); break; - case 235: // ModuleBody + case 236: // ModuleBody value.move< Module > (s.value); break; - case 273: // NamedNumber + case 274: // NamedNumber value.move< NamedNumber > (s.value); break; - case 262: // NamedType + case 263: // NamedType value.move< NamedType > (s.value); break; - case 284: // NullType + case 285: // NullType value.move< NullType > (s.value); break; - case 197: // ObjectClassFieldType + case 198: // ObjectClassFieldType value.move< ObjectClassFieldType > (s.value); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 308: // ObjIdComponents + case 309: // NameForm + case 310: // NumberForm + case 311: // NameAndNumberForm value.move< ObjectIdComponentValue > (s.value); break; - case 304: // ObjectIdentifierType + case 305: // ObjectIdentifierType value.move< ObjectIdentifierType > (s.value); break; - case 283: // OctetStringType + case 284: // OctetStringType value.move< OctetStringType > (s.value); break; - case 298: // PrefixedType + case 299: // PrefixedType value.move< PrefixedType > (s.value); break; - case 279: // RealType + case 280: // RealType value.move< RealType > (s.value); break; - case 317: // RelativeIRIType + case 318: // RelativeIRIType value.move< RelativeIRIType > (s.value); break; - case 311: // RelativeOIDType + case 312: // RelativeOIDType value.move< RelativeOIDType > (s.value); break; - case 290: // SequenceOfType + case 291: // SequenceOfType value.move< SequenceOfType > (s.value); break; - case 285: // SequenceType + case 286: // SequenceType value.move< SequenceType > (s.value); break; - case 292: // SetOfType + case 293: // SetOfType value.move< SetOfType > (s.value); break; - case 291: // SetType + case 292: // SetType value.move< SetType > (s.value); break; - case 300: // Tag + case 301: // Tag value.move< Tag > (s.value); break; - case 299: // TaggedType + case 300: // TaggedType value.move< TaggedType > (s.value); break; - case 233: // TagDefault + case 234: // TagDefault value.move< TaggingMode > (s.value); break; - case 323: // TimeOfDayType + case 324: // TimeOfDayType value.move< TimeOfDayType > (s.value); break; - case 320: // TimeType + case 321: // TimeType value.move< TimeType > (s.value); break; - case 254: // ActualParameter - case 260: // Type - case 329: // ConstrainedType + case 255: // ActualParameter + case 261: // Type + case 330: // ConstrainedType + case 331: // TypeWithConstraint value.move< Type > (s.value); break; - case 263: // ValueWithoutTypeIdentifier - case 264: // Value - case 349: // SingleValue + case 264: // ValueWithoutTypeIdentifier + case 265: // Value + case 348: // SingleValue value.move< Value > (s.value); break; @@ -3739,17 +3749,17 @@ namespace yy { value.move< double > (s.value); break; - case 302: // ClassNumber + case 303: // ClassNumber value.move< int > (s.value); break; case 4: // number - case 274: // SignedNumber + case 275: // SignedNumber value.move< long long > (s.value); break; - case 204: // ParameterList - case 205: // ParameterSeries + case 205: // ParameterList + case 206: // ParameterSeries value.move< std::set > (s.value); break; @@ -3764,61 +3774,61 @@ namespace yy { case 21: // objectreference case 23: // typefieldreference case 24: // valuefieldreference - case 147: // GENERIC_IDENTIFIER_UPPERCASE - case 148: // GENERIC_IDENTIFIER_LOWERCASE - case 206: // Parameter - case 212: // SimpleDefinedType - case 224: // ModuleIdentifier - case 242: // GlobalModuleReference - case 245: // Symbol - case 246: // Reference - case 374: // typereference - case 375: // identifier - case 376: // valuereference - case 377: // modulereference - case 378: // objectclassreference - case 379: // word + case 148: // GENERIC_IDENTIFIER_UPPERCASE + case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 207: // Parameter + case 213: // SimpleDefinedType + case 225: // ModuleIdentifier + case 243: // GlobalModuleReference + case 246: // Symbol + case 247: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.move< std::string > (s.value); break; - case 247: // AssignmentList + case 248: // AssignmentList value.move< std::vector > (s.value); break; - case 236: // Exports + case 237: // Exports value.move< std::vector > (s.value); break; - case 238: // Imports - case 239: // SymbolsImported - case 240: // SymbolsFromModuleList + case 239: // Imports + case 240: // SymbolsImported + case 241: // SymbolsFromModuleList value.move< std::vector > (s.value); break; - case 272: // NamedNumberList + case 273: // NamedNumberList value.move< std::vector > (s.value); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 295: // AlternativeTypeLists + case 296: // RootAlternativeTypeList + case 297: // AlternativeTypeList value.move< std::vector > (s.value); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 306: // ObjectIdentifierValue + case 307: // ObjIdComponentsList value.move< std::vector > (s.value); break; - case 253: // ActualParameterList + case 254: // ActualParameterList value.move< std::vector > (s.value); break; - case 268: // SequenceOfValues + case 269: // SequenceOfValues value.move< std::vector > (s.value); break; - case 244: // SymbolList + case 245: // SymbolList value.move< std::vector > (s.value); break; @@ -3892,7 +3902,7 @@ namespace yy { 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405 + 405, 406 }; return static_cast (yytoken_number_[type]); } @@ -4053,6 +4063,12 @@ namespace yy { return symbol_type (token::ALL, l); } + asn1_parser::symbol_type + asn1_parser::make_ANY (const location_type& l) + { + return symbol_type (token::ANY, l); + } + asn1_parser::symbol_type asn1_parser::make_APPLICATION (const location_type& l) { @@ -4776,7 +4792,7 @@ namespace yy { } // yy -#line 4778 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 4794 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 @@ -4784,7 +4800,7 @@ namespace yy { // User implementation prologue. -#line 4786 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 +#line 4802 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 // Unqualified %code blocks. #line 15 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:413 @@ -4803,7 +4819,7 @@ namespace yy { namespace yy { asn1_parser::symbol_type yylex(Context& c); } -#line 4805 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 +#line 4821 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 #ifndef YY_ @@ -4889,7 +4905,7 @@ namespace yy { namespace yy { -#line 4891 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 +#line 4907 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 /* Return YYSTR after stripping away unnecessary quotes and backslashes, so that it's suitable for yyerror. The heuristic is @@ -5001,206 +5017,207 @@ namespace yy { { switch (that.type_get ()) { - case 158: // ObjectClassAssignment - case 194: // ObjectSetAssignment - case 198: // ParameterizedAssignment - case 199: // ParameterizedTypeAssignment - case 200: // ParameterizedValueAssignment - case 201: // ParameterizedValueSetTypeAssignment - case 202: // ParameterizedObjectClassAssignment - case 203: // ParameterizedObjectAssignment - case 248: // Assignment - case 257: // TypeAssignment - case 258: // ValueAssignment - case 259: // ValueSetTypeAssignment + case 159: // ObjectClassAssignment + case 195: // ObjectSetAssignment + case 199: // ParameterizedAssignment + case 200: // ParameterizedTypeAssignment + case 201: // ParameterizedValueAssignment + case 202: // ParameterizedValueSetTypeAssignment + case 203: // ParameterizedObjectClassAssignment + case 204: // ParameterizedObjectAssignment + case 249: // Assignment + case 258: // TypeAssignment + case 259: // ValueAssignment + case 260: // ValueSetTypeAssignment value.move< Assignment > (that.value); break; - case 280: // BitStringType + case 281: // BitStringType value.move< BitStringType > (that.value); break; - case 269: // BooleanType + case 270: // BooleanType value.move< BooleanType > (that.value); break; - case 261: // BuiltinType + case 262: // BuiltinType value.move< BuiltinType > (that.value); break; - case 326: // CharacterStringType + case 327: // CharacterStringType value.move< CharacterStringType > (that.value); break; - case 293: // ChoiceType + case 294: // ChoiceType value.move< ChoiceType > (that.value); break; - case 303: // Class + case 304: // Class value.move< Class > (that.value); break; - case 289: // ComponentType + case 290: // ComponentType value.move< ComponentType > (that.value); break; - case 286: // ComponentTypeLists - case 287: // RootComponentTypeList - case 288: // ComponentTypeList + case 287: // ComponentTypeLists + case 288: // RootComponentTypeList + case 289: // ComponentTypeList value.move< ComponentTypeList > (that.value); break; - case 324: // DateTimeType + case 325: // DateTimeType value.move< DateTimeType > (that.value); break; - case 322: // DateType + case 323: // DateType value.move< DateType > (that.value); break; - case 249: // DefinedType - case 251: // ParameterizedType + case 250: // DefinedType + case 252: // ParameterizedType value.move< DefinedType > (that.value); break; - case 250: // DefinedValue + case 251: // DefinedValue value.move< DefinedValue > (that.value); break; - case 325: // DurationType + case 326: // DurationType value.move< DurationType > (that.value); break; - case 318: // EmbeddedPDVType + case 319: // EmbeddedPDVType value.move< EmbeddedPDVType > (that.value); break; - case 275: // EnumeratedType - case 276: // Enumerations - case 277: // Enumeration + case 276: // EnumeratedType + case 277: // Enumerations + case 278: // Enumeration value.move< EnumeratedType > (that.value); break; - case 278: // EnumerationItem + case 279: // EnumerationItem value.move< EnumerationValue > (that.value); break; - case 319: // ExternalType + case 320: // ExternalType value.move< ExternalType > (that.value); break; - case 312: // IRIType + case 313: // IRIType value.move< IRIType > (that.value); break; - case 241: // SymbolsFromModule + case 242: // SymbolsFromModule value.move< Import > (that.value); break; - case 211: // InstanceOfType + case 212: // InstanceOfType value.move< InstanceOfType > (that.value); break; - case 271: // IntegerType + case 272: // IntegerType value.move< IntegerType > (that.value); break; - case 235: // ModuleBody + case 236: // ModuleBody value.move< Module > (that.value); break; - case 273: // NamedNumber + case 274: // NamedNumber value.move< NamedNumber > (that.value); break; - case 262: // NamedType + case 263: // NamedType value.move< NamedType > (that.value); break; - case 284: // NullType + case 285: // NullType value.move< NullType > (that.value); break; - case 197: // ObjectClassFieldType + case 198: // ObjectClassFieldType value.move< ObjectClassFieldType > (that.value); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 308: // ObjIdComponents + case 309: // NameForm + case 310: // NumberForm + case 311: // NameAndNumberForm value.move< ObjectIdComponentValue > (that.value); break; - case 304: // ObjectIdentifierType + case 305: // ObjectIdentifierType value.move< ObjectIdentifierType > (that.value); break; - case 283: // OctetStringType + case 284: // OctetStringType value.move< OctetStringType > (that.value); break; - case 298: // PrefixedType + case 299: // PrefixedType value.move< PrefixedType > (that.value); break; - case 279: // RealType + case 280: // RealType value.move< RealType > (that.value); break; - case 317: // RelativeIRIType + case 318: // RelativeIRIType value.move< RelativeIRIType > (that.value); break; - case 311: // RelativeOIDType + case 312: // RelativeOIDType value.move< RelativeOIDType > (that.value); break; - case 290: // SequenceOfType + case 291: // SequenceOfType value.move< SequenceOfType > (that.value); break; - case 285: // SequenceType + case 286: // SequenceType value.move< SequenceType > (that.value); break; - case 292: // SetOfType + case 293: // SetOfType value.move< SetOfType > (that.value); break; - case 291: // SetType + case 292: // SetType value.move< SetType > (that.value); break; - case 300: // Tag + case 301: // Tag value.move< Tag > (that.value); break; - case 299: // TaggedType + case 300: // TaggedType value.move< TaggedType > (that.value); break; - case 233: // TagDefault + case 234: // TagDefault value.move< TaggingMode > (that.value); break; - case 323: // TimeOfDayType + case 324: // TimeOfDayType value.move< TimeOfDayType > (that.value); break; - case 320: // TimeType + case 321: // TimeType value.move< TimeType > (that.value); break; - case 254: // ActualParameter - case 260: // Type - case 329: // ConstrainedType + case 255: // ActualParameter + case 261: // Type + case 330: // ConstrainedType + case 331: // TypeWithConstraint value.move< Type > (that.value); break; - case 263: // ValueWithoutTypeIdentifier - case 264: // Value - case 349: // SingleValue + case 264: // ValueWithoutTypeIdentifier + case 265: // Value + case 348: // SingleValue value.move< Value > (that.value); break; @@ -5208,17 +5225,17 @@ namespace yy { value.move< double > (that.value); break; - case 302: // ClassNumber + case 303: // ClassNumber value.move< int > (that.value); break; case 4: // number - case 274: // SignedNumber + case 275: // SignedNumber value.move< long long > (that.value); break; - case 204: // ParameterList - case 205: // ParameterSeries + case 205: // ParameterList + case 206: // ParameterSeries value.move< std::set > (that.value); break; @@ -5233,61 +5250,61 @@ namespace yy { case 21: // objectreference case 23: // typefieldreference case 24: // valuefieldreference - case 147: // GENERIC_IDENTIFIER_UPPERCASE - case 148: // GENERIC_IDENTIFIER_LOWERCASE - case 206: // Parameter - case 212: // SimpleDefinedType - case 224: // ModuleIdentifier - case 242: // GlobalModuleReference - case 245: // Symbol - case 246: // Reference - case 374: // typereference - case 375: // identifier - case 376: // valuereference - case 377: // modulereference - case 378: // objectclassreference - case 379: // word + case 148: // GENERIC_IDENTIFIER_UPPERCASE + case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 207: // Parameter + case 213: // SimpleDefinedType + case 225: // ModuleIdentifier + case 243: // GlobalModuleReference + case 246: // Symbol + case 247: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.move< std::string > (that.value); break; - case 247: // AssignmentList + case 248: // AssignmentList value.move< std::vector > (that.value); break; - case 236: // Exports + case 237: // Exports value.move< std::vector > (that.value); break; - case 238: // Imports - case 239: // SymbolsImported - case 240: // SymbolsFromModuleList + case 239: // Imports + case 240: // SymbolsImported + case 241: // SymbolsFromModuleList value.move< std::vector > (that.value); break; - case 272: // NamedNumberList + case 273: // NamedNumberList value.move< std::vector > (that.value); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 295: // AlternativeTypeLists + case 296: // RootAlternativeTypeList + case 297: // AlternativeTypeList value.move< std::vector > (that.value); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 306: // ObjectIdentifierValue + case 307: // ObjIdComponentsList value.move< std::vector > (that.value); break; - case 253: // ActualParameterList + case 254: // ActualParameterList value.move< std::vector > (that.value); break; - case 268: // SequenceOfValues + case 269: // SequenceOfValues value.move< std::vector > (that.value); break; - case 244: // SymbolList + case 245: // SymbolList value.move< std::vector > (that.value); break; @@ -5306,206 +5323,207 @@ namespace yy { state = that.state; switch (that.type_get ()) { - case 158: // ObjectClassAssignment - case 194: // ObjectSetAssignment - case 198: // ParameterizedAssignment - case 199: // ParameterizedTypeAssignment - case 200: // ParameterizedValueAssignment - case 201: // ParameterizedValueSetTypeAssignment - case 202: // ParameterizedObjectClassAssignment - case 203: // ParameterizedObjectAssignment - case 248: // Assignment - case 257: // TypeAssignment - case 258: // ValueAssignment - case 259: // ValueSetTypeAssignment + case 159: // ObjectClassAssignment + case 195: // ObjectSetAssignment + case 199: // ParameterizedAssignment + case 200: // ParameterizedTypeAssignment + case 201: // ParameterizedValueAssignment + case 202: // ParameterizedValueSetTypeAssignment + case 203: // ParameterizedObjectClassAssignment + case 204: // ParameterizedObjectAssignment + case 249: // Assignment + case 258: // TypeAssignment + case 259: // ValueAssignment + case 260: // ValueSetTypeAssignment value.copy< Assignment > (that.value); break; - case 280: // BitStringType + case 281: // BitStringType value.copy< BitStringType > (that.value); break; - case 269: // BooleanType + case 270: // BooleanType value.copy< BooleanType > (that.value); break; - case 261: // BuiltinType + case 262: // BuiltinType value.copy< BuiltinType > (that.value); break; - case 326: // CharacterStringType + case 327: // CharacterStringType value.copy< CharacterStringType > (that.value); break; - case 293: // ChoiceType + case 294: // ChoiceType value.copy< ChoiceType > (that.value); break; - case 303: // Class + case 304: // Class value.copy< Class > (that.value); break; - case 289: // ComponentType + case 290: // ComponentType value.copy< ComponentType > (that.value); break; - case 286: // ComponentTypeLists - case 287: // RootComponentTypeList - case 288: // ComponentTypeList + case 287: // ComponentTypeLists + case 288: // RootComponentTypeList + case 289: // ComponentTypeList value.copy< ComponentTypeList > (that.value); break; - case 324: // DateTimeType + case 325: // DateTimeType value.copy< DateTimeType > (that.value); break; - case 322: // DateType + case 323: // DateType value.copy< DateType > (that.value); break; - case 249: // DefinedType - case 251: // ParameterizedType + case 250: // DefinedType + case 252: // ParameterizedType value.copy< DefinedType > (that.value); break; - case 250: // DefinedValue + case 251: // DefinedValue value.copy< DefinedValue > (that.value); break; - case 325: // DurationType + case 326: // DurationType value.copy< DurationType > (that.value); break; - case 318: // EmbeddedPDVType + case 319: // EmbeddedPDVType value.copy< EmbeddedPDVType > (that.value); break; - case 275: // EnumeratedType - case 276: // Enumerations - case 277: // Enumeration + case 276: // EnumeratedType + case 277: // Enumerations + case 278: // Enumeration value.copy< EnumeratedType > (that.value); break; - case 278: // EnumerationItem + case 279: // EnumerationItem value.copy< EnumerationValue > (that.value); break; - case 319: // ExternalType + case 320: // ExternalType value.copy< ExternalType > (that.value); break; - case 312: // IRIType + case 313: // IRIType value.copy< IRIType > (that.value); break; - case 241: // SymbolsFromModule + case 242: // SymbolsFromModule value.copy< Import > (that.value); break; - case 211: // InstanceOfType + case 212: // InstanceOfType value.copy< InstanceOfType > (that.value); break; - case 271: // IntegerType + case 272: // IntegerType value.copy< IntegerType > (that.value); break; - case 235: // ModuleBody + case 236: // ModuleBody value.copy< Module > (that.value); break; - case 273: // NamedNumber + case 274: // NamedNumber value.copy< NamedNumber > (that.value); break; - case 262: // NamedType + case 263: // NamedType value.copy< NamedType > (that.value); break; - case 284: // NullType + case 285: // NullType value.copy< NullType > (that.value); break; - case 197: // ObjectClassFieldType + case 198: // ObjectClassFieldType value.copy< ObjectClassFieldType > (that.value); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 308: // ObjIdComponents + case 309: // NameForm + case 310: // NumberForm + case 311: // NameAndNumberForm value.copy< ObjectIdComponentValue > (that.value); break; - case 304: // ObjectIdentifierType + case 305: // ObjectIdentifierType value.copy< ObjectIdentifierType > (that.value); break; - case 283: // OctetStringType + case 284: // OctetStringType value.copy< OctetStringType > (that.value); break; - case 298: // PrefixedType + case 299: // PrefixedType value.copy< PrefixedType > (that.value); break; - case 279: // RealType + case 280: // RealType value.copy< RealType > (that.value); break; - case 317: // RelativeIRIType + case 318: // RelativeIRIType value.copy< RelativeIRIType > (that.value); break; - case 311: // RelativeOIDType + case 312: // RelativeOIDType value.copy< RelativeOIDType > (that.value); break; - case 290: // SequenceOfType + case 291: // SequenceOfType value.copy< SequenceOfType > (that.value); break; - case 285: // SequenceType + case 286: // SequenceType value.copy< SequenceType > (that.value); break; - case 292: // SetOfType + case 293: // SetOfType value.copy< SetOfType > (that.value); break; - case 291: // SetType + case 292: // SetType value.copy< SetType > (that.value); break; - case 300: // Tag + case 301: // Tag value.copy< Tag > (that.value); break; - case 299: // TaggedType + case 300: // TaggedType value.copy< TaggedType > (that.value); break; - case 233: // TagDefault + case 234: // TagDefault value.copy< TaggingMode > (that.value); break; - case 323: // TimeOfDayType + case 324: // TimeOfDayType value.copy< TimeOfDayType > (that.value); break; - case 320: // TimeType + case 321: // TimeType value.copy< TimeType > (that.value); break; - case 254: // ActualParameter - case 260: // Type - case 329: // ConstrainedType + case 255: // ActualParameter + case 261: // Type + case 330: // ConstrainedType + case 331: // TypeWithConstraint value.copy< Type > (that.value); break; - case 263: // ValueWithoutTypeIdentifier - case 264: // Value - case 349: // SingleValue + case 264: // ValueWithoutTypeIdentifier + case 265: // Value + case 348: // SingleValue value.copy< Value > (that.value); break; @@ -5513,17 +5531,17 @@ namespace yy { value.copy< double > (that.value); break; - case 302: // ClassNumber + case 303: // ClassNumber value.copy< int > (that.value); break; case 4: // number - case 274: // SignedNumber + case 275: // SignedNumber value.copy< long long > (that.value); break; - case 204: // ParameterList - case 205: // ParameterSeries + case 205: // ParameterList + case 206: // ParameterSeries value.copy< std::set > (that.value); break; @@ -5538,61 +5556,61 @@ namespace yy { case 21: // objectreference case 23: // typefieldreference case 24: // valuefieldreference - case 147: // GENERIC_IDENTIFIER_UPPERCASE - case 148: // GENERIC_IDENTIFIER_LOWERCASE - case 206: // Parameter - case 212: // SimpleDefinedType - case 224: // ModuleIdentifier - case 242: // GlobalModuleReference - case 245: // Symbol - case 246: // Reference - case 374: // typereference - case 375: // identifier - case 376: // valuereference - case 377: // modulereference - case 378: // objectclassreference - case 379: // word + case 148: // GENERIC_IDENTIFIER_UPPERCASE + case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 207: // Parameter + case 213: // SimpleDefinedType + case 225: // ModuleIdentifier + case 243: // GlobalModuleReference + case 246: // Symbol + case 247: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.copy< std::string > (that.value); break; - case 247: // AssignmentList + case 248: // AssignmentList value.copy< std::vector > (that.value); break; - case 236: // Exports + case 237: // Exports value.copy< std::vector > (that.value); break; - case 238: // Imports - case 239: // SymbolsImported - case 240: // SymbolsFromModuleList + case 239: // Imports + case 240: // SymbolsImported + case 241: // SymbolsFromModuleList value.copy< std::vector > (that.value); break; - case 272: // NamedNumberList + case 273: // NamedNumberList value.copy< std::vector > (that.value); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 295: // AlternativeTypeLists + case 296: // RootAlternativeTypeList + case 297: // AlternativeTypeList value.copy< std::vector > (that.value); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 306: // ObjectIdentifierValue + case 307: // ObjIdComponentsList value.copy< std::vector > (that.value); break; - case 253: // ActualParameterList + case 254: // ActualParameterList value.copy< std::vector > (that.value); break; - case 268: // SequenceOfValues + case 269: // SequenceOfValues value.copy< std::vector > (that.value); break; - case 244: // SymbolList + case 245: // SymbolList value.copy< std::vector > (that.value); break; @@ -5824,206 +5842,207 @@ namespace yy { when using variants. */ switch (yyr1_[yyn]) { - case 158: // ObjectClassAssignment - case 194: // ObjectSetAssignment - case 198: // ParameterizedAssignment - case 199: // ParameterizedTypeAssignment - case 200: // ParameterizedValueAssignment - case 201: // ParameterizedValueSetTypeAssignment - case 202: // ParameterizedObjectClassAssignment - case 203: // ParameterizedObjectAssignment - case 248: // Assignment - case 257: // TypeAssignment - case 258: // ValueAssignment - case 259: // ValueSetTypeAssignment + case 159: // ObjectClassAssignment + case 195: // ObjectSetAssignment + case 199: // ParameterizedAssignment + case 200: // ParameterizedTypeAssignment + case 201: // ParameterizedValueAssignment + case 202: // ParameterizedValueSetTypeAssignment + case 203: // ParameterizedObjectClassAssignment + case 204: // ParameterizedObjectAssignment + case 249: // Assignment + case 258: // TypeAssignment + case 259: // ValueAssignment + case 260: // ValueSetTypeAssignment yylhs.value.build< Assignment > (); break; - case 280: // BitStringType + case 281: // BitStringType yylhs.value.build< BitStringType > (); break; - case 269: // BooleanType + case 270: // BooleanType yylhs.value.build< BooleanType > (); break; - case 261: // BuiltinType + case 262: // BuiltinType yylhs.value.build< BuiltinType > (); break; - case 326: // CharacterStringType + case 327: // CharacterStringType yylhs.value.build< CharacterStringType > (); break; - case 293: // ChoiceType + case 294: // ChoiceType yylhs.value.build< ChoiceType > (); break; - case 303: // Class + case 304: // Class yylhs.value.build< Class > (); break; - case 289: // ComponentType + case 290: // ComponentType yylhs.value.build< ComponentType > (); break; - case 286: // ComponentTypeLists - case 287: // RootComponentTypeList - case 288: // ComponentTypeList + case 287: // ComponentTypeLists + case 288: // RootComponentTypeList + case 289: // ComponentTypeList yylhs.value.build< ComponentTypeList > (); break; - case 324: // DateTimeType + case 325: // DateTimeType yylhs.value.build< DateTimeType > (); break; - case 322: // DateType + case 323: // DateType yylhs.value.build< DateType > (); break; - case 249: // DefinedType - case 251: // ParameterizedType + case 250: // DefinedType + case 252: // ParameterizedType yylhs.value.build< DefinedType > (); break; - case 250: // DefinedValue + case 251: // DefinedValue yylhs.value.build< DefinedValue > (); break; - case 325: // DurationType + case 326: // DurationType yylhs.value.build< DurationType > (); break; - case 318: // EmbeddedPDVType + case 319: // EmbeddedPDVType yylhs.value.build< EmbeddedPDVType > (); break; - case 275: // EnumeratedType - case 276: // Enumerations - case 277: // Enumeration + case 276: // EnumeratedType + case 277: // Enumerations + case 278: // Enumeration yylhs.value.build< EnumeratedType > (); break; - case 278: // EnumerationItem + case 279: // EnumerationItem yylhs.value.build< EnumerationValue > (); break; - case 319: // ExternalType + case 320: // ExternalType yylhs.value.build< ExternalType > (); break; - case 312: // IRIType + case 313: // IRIType yylhs.value.build< IRIType > (); break; - case 241: // SymbolsFromModule + case 242: // SymbolsFromModule yylhs.value.build< Import > (); break; - case 211: // InstanceOfType + case 212: // InstanceOfType yylhs.value.build< InstanceOfType > (); break; - case 271: // IntegerType + case 272: // IntegerType yylhs.value.build< IntegerType > (); break; - case 235: // ModuleBody + case 236: // ModuleBody yylhs.value.build< Module > (); break; - case 273: // NamedNumber + case 274: // NamedNumber yylhs.value.build< NamedNumber > (); break; - case 262: // NamedType + case 263: // NamedType yylhs.value.build< NamedType > (); break; - case 284: // NullType + case 285: // NullType yylhs.value.build< NullType > (); break; - case 197: // ObjectClassFieldType + case 198: // ObjectClassFieldType yylhs.value.build< ObjectClassFieldType > (); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 308: // ObjIdComponents + case 309: // NameForm + case 310: // NumberForm + case 311: // NameAndNumberForm yylhs.value.build< ObjectIdComponentValue > (); break; - case 304: // ObjectIdentifierType + case 305: // ObjectIdentifierType yylhs.value.build< ObjectIdentifierType > (); break; - case 283: // OctetStringType + case 284: // OctetStringType yylhs.value.build< OctetStringType > (); break; - case 298: // PrefixedType + case 299: // PrefixedType yylhs.value.build< PrefixedType > (); break; - case 279: // RealType + case 280: // RealType yylhs.value.build< RealType > (); break; - case 317: // RelativeIRIType + case 318: // RelativeIRIType yylhs.value.build< RelativeIRIType > (); break; - case 311: // RelativeOIDType + case 312: // RelativeOIDType yylhs.value.build< RelativeOIDType > (); break; - case 290: // SequenceOfType + case 291: // SequenceOfType yylhs.value.build< SequenceOfType > (); break; - case 285: // SequenceType + case 286: // SequenceType yylhs.value.build< SequenceType > (); break; - case 292: // SetOfType + case 293: // SetOfType yylhs.value.build< SetOfType > (); break; - case 291: // SetType + case 292: // SetType yylhs.value.build< SetType > (); break; - case 300: // Tag + case 301: // Tag yylhs.value.build< Tag > (); break; - case 299: // TaggedType + case 300: // TaggedType yylhs.value.build< TaggedType > (); break; - case 233: // TagDefault + case 234: // TagDefault yylhs.value.build< TaggingMode > (); break; - case 323: // TimeOfDayType + case 324: // TimeOfDayType yylhs.value.build< TimeOfDayType > (); break; - case 320: // TimeType + case 321: // TimeType yylhs.value.build< TimeType > (); break; - case 254: // ActualParameter - case 260: // Type - case 329: // ConstrainedType + case 255: // ActualParameter + case 261: // Type + case 330: // ConstrainedType + case 331: // TypeWithConstraint yylhs.value.build< Type > (); break; - case 263: // ValueWithoutTypeIdentifier - case 264: // Value - case 349: // SingleValue + case 264: // ValueWithoutTypeIdentifier + case 265: // Value + case 348: // SingleValue yylhs.value.build< Value > (); break; @@ -6031,17 +6050,17 @@ namespace yy { yylhs.value.build< double > (); break; - case 302: // ClassNumber + case 303: // ClassNumber yylhs.value.build< int > (); break; case 4: // number - case 274: // SignedNumber + case 275: // SignedNumber yylhs.value.build< long long > (); break; - case 204: // ParameterList - case 205: // ParameterSeries + case 205: // ParameterList + case 206: // ParameterSeries yylhs.value.build< std::set > (); break; @@ -6056,61 +6075,61 @@ namespace yy { case 21: // objectreference case 23: // typefieldreference case 24: // valuefieldreference - case 147: // GENERIC_IDENTIFIER_UPPERCASE - case 148: // GENERIC_IDENTIFIER_LOWERCASE - case 206: // Parameter - case 212: // SimpleDefinedType - case 224: // ModuleIdentifier - case 242: // GlobalModuleReference - case 245: // Symbol - case 246: // Reference - case 374: // typereference - case 375: // identifier - case 376: // valuereference - case 377: // modulereference - case 378: // objectclassreference - case 379: // word + case 148: // GENERIC_IDENTIFIER_UPPERCASE + case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 207: // Parameter + case 213: // SimpleDefinedType + case 225: // ModuleIdentifier + case 243: // GlobalModuleReference + case 246: // Symbol + case 247: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word yylhs.value.build< std::string > (); break; - case 247: // AssignmentList + case 248: // AssignmentList yylhs.value.build< std::vector > (); break; - case 236: // Exports + case 237: // Exports yylhs.value.build< std::vector > (); break; - case 238: // Imports - case 239: // SymbolsImported - case 240: // SymbolsFromModuleList + case 239: // Imports + case 240: // SymbolsImported + case 241: // SymbolsFromModuleList yylhs.value.build< std::vector > (); break; - case 272: // NamedNumberList + case 273: // NamedNumberList yylhs.value.build< std::vector > (); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 295: // AlternativeTypeLists + case 296: // RootAlternativeTypeList + case 297: // AlternativeTypeList yylhs.value.build< std::vector > (); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 306: // ObjectIdentifierValue + case 307: // ObjIdComponentsList yylhs.value.build< std::vector > (); break; - case 253: // ActualParameterList + case 254: // ActualParameterList yylhs.value.build< std::vector > (); break; - case 268: // SequenceOfValues + case 269: // SequenceOfValues yylhs.value.build< std::vector > (); break; - case 244: // SymbolList + case 245: // SymbolList yylhs.value.build< std::vector > (); break; @@ -6132,1144 +6151,1210 @@ namespace yy { switch (yyn) { case 4: -#line 321 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 323 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< Module > ().module_reference = yystack_[9].value.as< std::string > (); yystack_[2].value.as< Module > ().tagging_default = yystack_[6].value.as< TaggingMode > (); context.asn1_tree.modules.push_back(yystack_[2].value.as< Module > ()); } -#line 6138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6157 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 12: -#line 342 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 344 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[2].value.as< std::string > (), ObjectClassAssignment{}}; } -#line 6144 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6163 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 81: -#line 494 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 496 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[3].value.as< std::string > (), ObjectSetAssignment{}}; } -#line 6150 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 90: -#line 521 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 523 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6175 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 91: -#line 523 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 525 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6162 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 92: -#line 525 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 527 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6168 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6187 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 93: -#line 527 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 529 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6174 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6193 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 94: -#line 529 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 531 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6180 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6199 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 95: -#line 534 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 536 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {}, yystack_[2].value.as< std::set > () }; } -#line 6186 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6205 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 96: -#line 538 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 540 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6192 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6211 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 97: -#line 542 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 544 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6198 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6217 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 98: -#line 546 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 548 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6204 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6223 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 99: -#line 550 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 552 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6210 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6229 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 100: -#line 558 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 560 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[1].value.as< std::set > (); } -#line 6216 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6235 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 101: -#line 562 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 564 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6222 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6241 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 102: -#line 564 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 566 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[2].value.as< std::set > (); yystack_[2].value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6228 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6247 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 103: -#line 568 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 570 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6234 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6253 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 104: -#line 570 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 572 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6240 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6259 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 113: -#line 623 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 625 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6246 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6265 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 125: -#line 647 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 649 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Simple constraint\n"; } -#line 6252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6271 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 126: -#line 649 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 651 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Relation constraint\n"; } -#line 6258 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 139: -#line 691 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 693 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6266 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6285 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 154: -#line 730 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 732 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6272 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6291 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 155: -#line 732 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 734 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::implicit; } -#line 6278 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 156: -#line 734 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 736 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::automatic; } -#line 6284 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6303 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 157: -#line 736 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 738 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6290 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6309 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 160: -#line 744 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 746 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Module > () = Module{ {}, TaggingMode(), yystack_[2].value.as< std::vector > (), yystack_[1].value.as< std::vector > (), yystack_[0].value.as< std::vector > ()}; } -#line 6296 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6315 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 161: -#line 746 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 748 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { } -#line 6302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6321 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 167: -#line 759 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 761 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } -#line 6308 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 169: -#line 764 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 766 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6333 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 171: -#line 769 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 771 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6339 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 172: -#line 771 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 773 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6345 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 173: -#line 775 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 777 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Import > () = Import{ yystack_[0].value.as< std::string > (), yystack_[2].value.as< std::vector > () }; } -#line 6332 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6351 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 174: -#line 779 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 781 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6357 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 178: -#line 788 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 790 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6363 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 179: -#line 790 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 792 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6369 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 180: -#line 794 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 796 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6356 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6375 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 181: -#line 798 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 800 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6381 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 182: -#line 800 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 802 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[2].value.as< std::string > (); } -#line 6368 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6387 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 183: -#line 802 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 804 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6374 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6393 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 184: -#line 811 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 813 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } -#line 6380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6399 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 185: -#line 813 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } -#line 6386 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 815 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Assignment > ()); } +#line 6405 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 186: -#line 817 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 819 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6392 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6411 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 187: -#line 819 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 821 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6398 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6417 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 188: -#line 821 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 823 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6404 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6423 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 189: -#line 823 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 825 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6410 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6429 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 190: -#line 826 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 828 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6435 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 191: -#line 828 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 830 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6422 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6441 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 193: -#line 833 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 835 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{yystack_[0].value.as< std::string > (), {}}; } -#line 6428 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6447 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 194: -#line 835 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 837 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6434 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6453 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 195: -#line 841 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 843 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedValue > () = DefinedValue{yystack_[0].value.as< std::string > ()}; } -#line 6440 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6459 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 197: -#line 846 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 848 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{yystack_[1].value.as< std::string > (), yystack_[0].value.as< std::vector > ()}; } -#line 6446 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6465 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 199: -#line 853 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 855 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Type > ()); } -#line 6452 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6471 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 200: -#line 857 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 859 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6458 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6477 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 201: -#line 859 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 861 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not yet dealing with value paramaters\n"; } -#line 6464 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6483 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 205: -#line 900 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 902 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[2].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {} }; } -#line 6470 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6489 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 206: -#line 904 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 906 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ValueAssignment{yystack_[2].value.as< Type > (), yystack_[0].value.as< Value > ()}, {} }; } -#line 6476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6495 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 207: -#line 908 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 910 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[2].value.as< Type > ()}, {} }; } -#line 6482 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 208: -#line 912 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 914 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< BuiltinType > (); } -#line 6488 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6507 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 209: -#line 914 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 916 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6494 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6513 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 210: -#line 916 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 918 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< DefinedType > (); } -#line 6500 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6519 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 211: -#line 918 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 920 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - SelectionType\n"; } -#line 6506 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6525 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 212: -#line 920 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 922 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Not handled - TypeFromObject\n"); } -#line 6512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6531 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 213: -#line 924 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } -#line 6518 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 926 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = AnyType(); } +#line 6537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 214: -#line 925 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } -#line 6524 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 927 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } +#line 6543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 215: -#line 926 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } -#line 6530 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 928 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } +#line 6549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 216: -#line 927 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } -#line 6536 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 929 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } +#line 6555 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 217: -#line 928 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } -#line 6542 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 930 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } +#line 6561 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 218: -#line 929 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } -#line 6548 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 931 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } +#line 6567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 219: -#line 930 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } -#line 6554 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 932 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } +#line 6573 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 220: -#line 931 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } -#line 6560 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 933 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } +#line 6579 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 221: -#line 932 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } -#line 6566 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 934 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } +#line 6585 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 222: -#line 933 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } -#line 6572 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 935 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } +#line 6591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 223: -#line 934 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } -#line 6578 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 936 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } +#line 6597 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 224: -#line 935 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } -#line 6584 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 937 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } +#line 6603 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 225: -#line 936 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } -#line 6590 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 938 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } +#line 6609 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 226: -#line 937 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } -#line 6596 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 939 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } +#line 6615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 227: -#line 938 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } -#line 6602 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 940 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } +#line 6621 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 228: -#line 939 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } -#line 6608 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 941 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } +#line 6627 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 229: -#line 940 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } -#line 6614 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 942 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } +#line 6633 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 230: -#line 941 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } -#line 6620 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 943 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } +#line 6639 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 231: -#line 942 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } -#line 6626 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 944 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } +#line 6645 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 232: -#line 943 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } -#line 6632 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 945 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } +#line 6651 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 233: -#line 944 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } -#line 6638 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 946 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } +#line 6657 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 234: -#line 945 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } -#line 6644 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } +#line 6663 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 235: -#line 946 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } -#line 6650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 948 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } +#line 6669 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 236: -#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } -#line 6656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 949 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } +#line 6675 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 237: -#line 948 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } -#line 6662 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 950 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } +#line 6681 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 238: -#line 949 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } -#line 6668 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } +#line 6687 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 239: -#line 950 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } -#line 6674 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 952 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } +#line 6693 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 240: -#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } -#line 6680 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 953 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } +#line 6699 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 241: -#line 952 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } -#line 6686 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 954 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } +#line 6705 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 242: -#line 953 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = UTCTimeType(); } -#line 6692 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } +#line 6711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 243: -#line 957 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } -#line 6698 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 956 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = UTCTimeType(); } +#line 6717 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 244: -#line 961 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: BooleanValue\n"); } -#line 6704 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 960 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } +#line 6723 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 245: -#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: IRIValue\n"); } -#line 6710 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 964 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: BooleanValue\n"); } +#line 6729 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 246: -#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: ASN_NULL\n"); } -#line 6716 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 966 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: IRIValue\n"); } +#line 6735 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 247: -#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: TimeValue\n"); } -#line 6722 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 968 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: ASN_NULL\n"); } +#line 6741 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 248: -#line 969 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: bstring\n"); } -#line 6728 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 970 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: TimeValue\n"); } +#line 6747 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 249: -#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: hstring\n"); } -#line 6734 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 972 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: bstring\n"); } +#line 6753 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 250: -#line 973 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } -#line 6740 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 974 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: hstring\n"); } +#line 6759 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 251: -#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: CONTAINING\n"); } -#line 6746 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 976 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } +#line 6765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 252: -#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().defined_value = yystack_[0].value.as< DefinedValue > (); } -#line 6752 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 978 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: CONTAINING\n"); } +#line 6771 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 253: -#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } -#line 6758 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 980 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().defined_value = yystack_[0].value.as< DefinedValue > (); } +#line 6777 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 255: + case 254: #line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } -#line 6764 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } +#line 6783 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 256: -#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } -#line 6770 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } +#line 6789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 257: -#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } -#line 6776 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } +#line 6795 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 258: -#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } -#line 6782 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6801 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 259: -#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } -#line 6788 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } +#line 6807 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 260: -#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: ValueChoice\n"); } -#line 6794 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } +#line 6813 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 261: -#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: OPTIONAL\n"); } -#line 6800 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: ValueChoice\n"); } +#line 6819 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 262: -#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } -#line 6806 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: OPTIONAL\n"); } +#line 6825 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 263: -#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: BY\n"); } -#line 6812 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } +#line 6831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 264: -#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } -#line 6818 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Unhandled field: BY\n"); } +#line 6837 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 265: -#line 1006 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1007 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } +#line 6843 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 266: +#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } -#line 6824 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6849 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 271: -#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 272: +#line 1024 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 6830 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6855 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 272: -#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 273: +#line 1026 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 6836 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6861 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 276: -#line 1038 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 277: +#line 1041 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{{}}; } -#line 6842 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 277: -#line 1040 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 278: +#line 1043 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } -#line 6848 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 278: -#line 1044 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 279: +#line 1047 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } -#line 6854 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6879 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 279: -#line 1046 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 280: +#line 1049 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } -#line 6860 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6885 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 280: -#line 1050 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 281: +#line 1053 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } -#line 6866 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6891 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 281: -#line 1052 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 282: +#line 1055 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } -#line 6872 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6897 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 282: -#line 1056 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 283: +#line 1059 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } -#line 6878 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6903 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 283: -#line 1058 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 284: +#line 1061 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } -#line 6884 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 284: -#line 1062 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 285: +#line 1065 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } -#line 6890 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6915 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 285: -#line 1066 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 286: +#line 1069 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[0].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = false; } -#line 6897 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6922 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 286: -#line 1069 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 287: +#line 1072 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[3].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; } -#line 6904 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6929 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 287: -#line 1072 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 288: +#line 1075 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[5].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; yylhs.value.as< EnumeratedType > ().enum_values.insert(yylhs.value.as< EnumeratedType > ().enum_values.end(), yystack_[0].value.as< EnumeratedType > ().enum_values.begin(), yystack_[0].value.as< EnumeratedType > ().enum_values.end()); } -#line 6912 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6937 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 289: -#line 1079 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 290: +#line 1082 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6918 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6943 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 290: -#line 1081 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 291: +#line 1084 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6924 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6949 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 291: -#line 1085 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 292: +#line 1088 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } -#line 6930 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 292: -#line 1087 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 293: +#line 1090 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } -#line 6937 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 - break; - - case 302: -#line 1127 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceType > () = SequenceType(); } -#line 6943 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6962 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 303: -#line 1129 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 6949 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1130 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceType > () = SequenceType(); } +#line 6968 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 304: -#line 1137 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 6955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1132 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } +#line 6974 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 305: -#line 1141 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1140 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 6961 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6980 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 306: -#line 1143 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } -#line 6967 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1144 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } +#line 6986 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 307: -#line 1145 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 6973 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1146 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } +#line 6992 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 308: -#line 1147 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } -#line 6979 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1148 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } +#line 6998 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 309: -#line 1149 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 6985 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1150 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } +#line 7004 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 310: -#line 1151 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 6991 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1152 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } +#line 7010 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 311: -#line 1153 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 6997 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1154 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } +#line 7016 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 312: -#line 1155 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1156 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } +#line 7022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 313: -#line 1157 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1158 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7009 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 314: -#line 1161 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } -#line 7015 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1160 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = {}; } +#line 7034 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 315: -#line 1163 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7021 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1164 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } +#line 7040 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 316: -#line 1167 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt}; } -#line 7027 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1166 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } +#line 7046 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 317: -#line 1169 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt}; } -#line 7033 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1170 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt}; } +#line 7052 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 318: -#line 1171 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > ()}; } -#line 7039 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1172 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt}; } +#line 7058 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 320: -#line 1184 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7045 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + case 319: +#line 1174 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > ()}; } +#line 7064 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 321: -#line 1186 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1187 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 7070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 322: -#line 1190 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetType > () = SetType{}; } -#line 7057 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1189 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } +#line 7076 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 323: -#line 1192 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7063 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1193 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetType > () = SetType{}; } +#line 7082 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 324: -#line 1196 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7069 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } +#line 7088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 325: -#line 1198 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7075 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 7094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 326: -#line 1202 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } -#line 7081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } +#line 7100 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 327: -#line 1206 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7087 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } +#line 7106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 328: -#line 1210 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1209 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7093 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7112 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 329: -#line 1212 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } -#line 7099 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1213 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } +#line 7118 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 330: -#line 1216 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } -#line 7105 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } +#line 7124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 331: -#line 1218 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { 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 7111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { 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 7130 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 332: +#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } +#line 7136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 333: -#line 1228 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { 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 7142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 335: +#line 1233 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } -#line 7117 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 334: -#line 1232 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 336: +#line 1237 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } -#line 7123 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 335: -#line 1234 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 337: +#line 1239 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } -#line 7129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 336: -#line 1236 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 338: +#line 1241 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } -#line 7135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7166 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 337: -#line 1240 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 339: +#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } -#line 7141 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 340: -#line 1248 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 342: +#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } -#line 7147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 342: -#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 344: +#line 1258 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::universal; } -#line 7153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7184 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 343: -#line 1255 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 345: +#line 1260 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::application; } -#line 7159 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7190 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 344: -#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 346: +#line 1262 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::private_; } -#line 7165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7196 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 345: -#line 1259 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 347: +#line 1264 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::context_specific; } -#line 7171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7202 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 347: -#line 1272 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 349: +#line 1277 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7177 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 348: -#line 1274 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 350: +#line 1279 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7183 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7214 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 349: -#line 1278 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 351: +#line 1283 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } -#line 7189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7220 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 350: -#line 1280 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 352: +#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } -#line 7195 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7226 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 351: -#line 1284 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 353: +#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7201 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7232 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 352: -#line 1286 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 354: +#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7207 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7238 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 353: -#line 1288 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 355: +#line 1293 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7244 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 354: -#line 1292 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 356: +#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7250 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 355: -#line 1296 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 357: +#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } -#line 7225 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7256 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 357: -#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 359: +#line 1306 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } -#line 7231 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7262 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 391: -#line 1397 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 393: +#line 1402 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } -#line 7237 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 394: +#line 1404 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } +#line 7274 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 395: +#line 1408 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 7280 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 396: +#line 1410 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 7286 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 397: +#line 1412 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 7292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 398: +#line 1414 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 7298 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 399: +#line 1416 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } +#line 7304 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 400: +#line 1418 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } +#line 7310 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 401: +#line 1420 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } +#line 7316 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 402: +#line 1422 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } +#line 7322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 485: -#line 1587 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1595 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7243 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 486: -#line 1591 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1599 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7249 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7334 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 487: -#line 1595 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1603 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7255 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7340 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 488: -#line 1599 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1607 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7261 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7346 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 489: -#line 1603 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1611 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7267 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; -#line 7271 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7356 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 default: break; } @@ -7524,99 +7609,99 @@ namespace yy { } - const short int asn1_parser::yypact_ninf_ = -700; + const short int asn1_parser::yypact_ninf_ = -704; const short int asn1_parser::yytable_ninf_ = -489; const short int asn1_parser::yypact_[] = { - -87, -700, 87, -87, 51, 0, -700, -700, 115, 21, - -700, 2, -700, 106, 176, -700, -700, 127, 21, -700, - -700, -700, 145, 128, -700, -700, 192, 248, 257, 213, - -700, -700, 279, 133, 230, -700, -700, -700, 304, 265, - 252, -700, -700, -700, 133, 256, -700, 354, -700, 230, - -700, 263, -700, 50, -700, 319, 250, -700, -700, 254, - 266, -700, -700, 270, -700, 349, 232, 7, -700, -700, - 232, 283, -700, 269, 232, -700, -36, 285, -700, -700, - -700, -700, -700, -700, -700, -700, -700, 7, -700, -700, - -700, -700, 2409, 2706, 285, -700, -700, -700, -700, -87, - 2508, 91, -700, -700, -700, 310, -700, -700, 311, 291, - -700, -700, -700, 325, 293, -700, -700, -700, -700, -700, - 331, 296, -700, -700, 353, -700, 321, -700, -700, -700, - -700, -700, -33, 162, -700, -700, -700, -700, -700, -700, - -700, -700, -700, 2310, 409, -700, 142, -700, -700, 306, - -700, -700, 2805, 292, -700, -700, 308, -700, -700, 313, - 210, -700, -700, -700, -700, -700, -700, -700, -700, -700, - -700, -700, -700, -700, -700, -700, -700, 2607, -700, -700, - -700, -700, -700, -700, -700, -700, -700, -700, -700, -700, - -700, -700, -700, -700, 166, 309, 302, 303, 3003, 212, - 101, 305, 317, -700, 103, -700, -700, -700, -700, -700, - -700, 93, -700, 307, -700, 312, 320, 169, 302, 314, - -700, 316, 324, 318, 326, -700, 284, -700, -62, 91, - 284, -700, -700, 3003, 320, -2, 963, 364, 370, 3003, - 84, 371, 374, 340, -700, -700, -700, 320, 327, 168, - 341, 3003, 214, 322, 1612, -700, 343, -700, 3003, 3003, - 320, 38, 3003, 322, -3, 216, 693, 447, 49, 27, - -700, -700, -700, -700, 2508, 232, 18, 17, 332, 284, - -700, 348, -700, 347, 3003, 362, -700, 355, 359, -700, - 360, -700, 140, -700, 360, 320, -700, 2904, -700, 387, - 362, -700, -14, 372, -700, 361, -700, -700, -700, -700, - -700, -700, -700, 427, 179, 460, 3003, 461, -700, 320, - -700, -700, 693, 490, -700, 300, 1372, 1495, 499, 173, - 368, 383, -700, -700, -700, -700, 320, -700, -700, -700, - 362, -700, -700, 376, -700, -51, -26, -31, -20, -700, - 427, 450, -700, 195, -700, 3003, -700, 391, 392, -700, - -700, -700, -700, -700, -700, 3003, 3003, 320, -700, -700, - 399, 3003, 3003, 342, -700, -700, -700, -700, 29, -700, - 320, 693, -700, -700, -700, -700, -700, -700, 388, -700, - -700, -700, -700, 401, -700, 693, -700, 693, -700, 187, - 111, -700, 380, 308, -700, -700, 404, -700, 320, 405, - 189, 394, 389, -700, -700, -700, -700, 146, 395, 1495, - -700, 320, 320, 388, -700, 320, 388, -700, -700, 693, - -700, 16, 406, -700, -700, 189, 397, 398, -700, -700, - 27, 412, 27, -700, -700, -700, 413, 416, -700, -700, - -700, -700, 1124, -700, -700, -700, -700, -700, 175, -700, - 415, -700, -19, 320, 1954, -700, -700, -13, 23, -700, - 284, 3003, 410, 2112, -700, -700, 33, 1731, -700, 428, - -1, 693, -700, 189, -700, 320, 429, 414, 430, 417, - 431, -700, 418, 432, 438, -700, -700, 1731, -700, -700, - 1731, -700, 320, 2002, -700, 320, -700, 320, -700, -700, - 320, -700, 320, -700, 118, 2211, 91, 183, -700, -700, - -700, -700, -700, -700, -700, -700, 434, 189, 322, 189, - 189, 64, 555, -700, -700, 693, 693, 693, 693, 693, - 9, 439, 189, 322, 419, -700, 440, -700, -700, 36, - -700, -700, -700, -700, 401, -700, -700, 310, -700, -700, - -700, 311, 291, -700, -700, -700, -700, 693, -700, -700, - -700, -700, -700, 325, -700, -700, -700, 293, -700, -700, - -700, -700, -700, -700, -700, -700, -700, -700, -700, -700, - 331, -700, 296, -700, -700, -700, -700, -700, 353, 321, - -700, -700, -700, -700, -700, -700, -700, -700, -700, -700, - -700, -33, 162, -700, -700, -700, -700, -700, -700, -700, - -700, -700, -700, -700, -700, -700, -700, 16, 1848, -700, - 435, 1248, -700, -700, 320, 189, 433, -700, -700, 284, - 43, -700, -700, -700, 4, -700, -700, 362, -700, 446, - 448, -700, 320, 88, -700, -700, -700, -700, 362, -700, - -700, 2508, 526, 189, -700, -700, -10, -700, -700, -700, - 1495, -700, 445, -700, 156, 190, -700, -700, 443, -31, - -700, -700, 2080, -700, -700, -700, 3003, -700, -5, -700, - 6, -30, 8, 456, 342, -700, -700, -700, 189, 454, - 189, 189, 189, 189, 189, -700, -700, -700, 462, -700, - 444, -700, -700, 15, -700, 467, 470, 693, 451, -700, - -700, -700, 464, 469, 452, 457, 474, 258, 693, 471, - 479, 473, 320, -700, -700, 475, 478, 480, -700, -700, - 418, 1495, -700, 320, 17, -700, -700, 2112, -700, -700, - -700, 6, -700, -700, -700, 503, -700, -700, -700, -700, - 486, -700, -700, 189, 284, 94, -6, 2068, -700, 189, - 284, -700, 284, -700, -700, 161, 1495, 478, 284, 284, - -700, -700, -700, -700, -700, 489, -700, 483, -700, 484, - 1124, -700, 189, 492, -700, -700, -700, -700, -700, -700, - -700, 480, -700, 3489, -700, 284, 98, 189, -700, -700, - -700, -700, -700, -700, -700, -700, -700, -700, -700, -700, - -700, -700, -700, -700, -700, -700, -700, -700, -700, -700, - -700, -700, -700, -700, -700, -700, -700, -700, 3489, -700, - 3249, -700, -700, -700, 3129, -700, 485, 3369, -700, -700, - -700, -700, -6, -700, 488, -6 + -72, -704, 181, -72, 220, 127, -704, -704, 270, 23, + -704, 187, -704, 251, 15, -704, -704, 222, 23, -704, + -704, -704, 240, 235, -704, -704, 280, 291, 301, 348, + -704, -704, 408, 248, 274, -704, -704, -704, 344, 296, + 289, -704, -704, -704, 248, 287, -704, 385, -704, 274, + -704, 174, -704, 68, -704, 350, 294, -704, -704, 298, + 300, -704, -704, 309, -704, 382, 250, 12, -704, -704, + 250, 314, -704, 299, 250, -704, -41, 318, -704, -704, + -704, -704, -704, -704, -704, -704, -704, -704, 12, -704, + -704, -704, 2477, 2778, 318, -704, -704, -704, -704, -72, + 2580, 26, -704, -704, -704, -704, 341, -704, -704, 352, + 327, -704, -704, -704, 366, 336, -704, -704, -704, -704, + -704, 374, 342, -704, -704, 395, -704, 369, -704, -704, + -704, -704, -704, 101, 172, -704, -704, -704, -704, -704, + -704, -704, -704, -704, 2378, 453, -704, 117, -704, -704, + 354, -704, -704, 2877, 335, -704, -704, 359, -704, -704, + 365, 143, -704, -704, -704, -704, -704, -704, -704, -704, + -704, -704, -704, -704, -704, -704, -704, -704, 2679, -704, + -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, + -704, -704, -704, -704, -704, 156, 361, 346, 355, 3079, + 158, -52, 356, 357, -704, -48, -704, -704, -704, -704, + -704, -704, -12, -704, 351, -704, 358, 370, 166, 346, + 363, -704, 364, 383, 371, 384, -704, 373, -704, -42, + 26, 373, -704, -704, 3079, 370, 118, 929, 419, 420, + 3079, 120, 423, 424, 389, -704, -704, -704, 370, 377, + 2, 390, 3079, 213, 368, 1648, -704, 391, -704, 3079, + 3079, 370, 65, 3079, 368, 17, 246, 2148, 497, 0, + 42, -704, -704, -704, -704, 2580, 250, 22, 30, 372, + 373, -704, 400, -704, 393, 3079, 394, -704, 402, 396, + -704, 405, -704, 6, -704, 405, 370, -704, 2980, -704, + 441, 394, -704, -21, 407, -704, 397, -704, -704, -704, + -704, -704, -704, -704, 477, 219, 496, 3079, 498, -704, + 370, -704, -704, 2148, 526, -704, 360, 1400, 1524, 535, + 176, 409, 422, -704, -704, -704, -704, 370, -704, -704, + -704, 394, -704, -704, 411, -58, -50, -29, -16, -704, + 477, 492, -704, 238, -704, 3079, -704, 428, 426, -704, + -704, -704, -704, -704, -704, 3079, 3079, 370, -704, -704, + 429, 3079, 3079, 297, -704, -704, -704, -704, 44, -704, + 370, 2148, -704, -704, -704, -704, -704, -704, 415, -704, + -704, -704, -704, 431, -704, 2148, -704, 2148, -704, 195, + 247, -704, 413, 359, -704, -704, 434, -704, 370, 435, + 200, 425, 416, -704, -704, -704, -704, 122, 427, 1524, + -704, 370, 370, 415, -704, 370, 415, -704, -704, 2148, + -704, -59, 437, -704, -704, 200, 432, 433, -704, -704, + 42, 442, 42, -704, -704, -704, 440, 445, -704, -704, + -704, -704, 1150, -704, -704, -704, -704, -704, 76, -704, + 446, -704, -40, 370, 2012, -704, -704, 74, 28, -704, + 373, 3079, 439, 605, -704, -704, 141, 1768, -704, 454, + 1, 2148, -704, 200, -704, 370, 456, 444, 452, 457, + 455, -704, 447, 462, 468, -704, -704, 1768, -704, -704, + 1768, -704, 370, 922, -704, 370, -704, 370, -704, -704, + 370, -704, 370, -704, 199, 2279, 26, 113, -704, -704, + -704, -704, -704, -704, -704, -704, 464, 200, 368, 200, + 200, 2130, 590, -704, -704, 2148, 2148, 2148, 2148, 2148, + 35, 473, 200, 368, 450, -704, 476, -704, -704, 55, + -704, -704, -704, -704, 431, -704, -704, 341, -704, -704, + -704, 352, 327, -704, -704, -704, -704, 2148, -704, -704, + -704, -704, -704, 366, -704, -704, -704, 336, -704, -704, + -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, + 374, -704, 342, -704, -704, -704, -704, -704, 395, 369, + -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, + -704, 101, 172, -704, -704, -704, -704, -704, -704, -704, + -704, -704, -704, -704, -704, -704, -704, -59, 1892, -704, + 472, 1275, -704, -704, 370, 200, 475, -704, -704, 373, + 58, 480, -704, -704, -60, -704, -704, 394, -704, 491, + 494, -704, 370, 145, -704, -704, -704, -704, 394, -704, + -704, 2580, 579, 200, -704, -704, 89, -704, -704, -704, + 1524, -704, 500, -704, 159, 194, -704, -704, 487, -29, + -704, -704, 2160, -704, -704, -704, 3079, -704, -5, -704, + 14, 13, 20, 506, 297, -704, -704, -704, 200, 501, + 200, 200, 200, 200, 200, -704, -704, -704, 503, -704, + 479, -704, -704, 9, -704, 511, 513, 373, 2148, 504, + -704, -704, -704, 505, 507, 508, 502, 522, 286, 2148, + 514, 525, 515, 370, -704, 516, 517, 518, -704, -704, + 447, 1524, -704, 370, 30, -704, -704, 605, -704, -704, + -704, 14, -704, -704, -704, 550, -704, -704, -704, -704, + 532, -704, -704, 523, 200, 373, 167, -18, 31, -704, + 200, 373, -704, 373, -704, -704, 40, 1524, 517, 373, + 373, -704, -704, -704, -704, -704, 538, -704, 373, 528, + -704, 533, 1150, -704, 200, 544, -704, -704, -704, -704, + -704, -704, -704, 518, -704, 3557, -704, 373, 177, 200, + -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, + -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, + -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, + 3557, -704, 3323, -704, -704, -704, 3206, -704, 534, 3440, + -704, -704, -704, -704, -18, -704, 536, -18 }; const unsigned short int @@ -7624,1037 +7709,1051 @@ namespace yy { { 0, 488, 0, 2, 0, 142, 1, 3, 153, 0, 139, 140, 141, 0, 157, 150, 486, 0, 145, 148, - 149, 147, 354, 0, 144, 152, 0, 0, 0, 159, - 143, 146, 0, 0, 363, 156, 154, 155, 0, 0, - 0, 364, 365, 361, 0, 0, 158, 0, 151, 363, - 360, 164, 362, 166, 138, 168, 0, 485, 487, 0, + 149, 147, 356, 0, 144, 152, 0, 0, 0, 159, + 143, 146, 0, 0, 365, 156, 154, 155, 0, 0, + 0, 366, 367, 363, 0, 0, 158, 0, 151, 365, + 362, 164, 364, 166, 138, 168, 0, 485, 487, 0, 165, 178, 180, 181, 183, 0, 170, 0, 163, 162, 0, 0, 4, 0, 169, 171, 0, 0, 485, 188, 190, 191, 90, 91, 92, 93, 94, 160, 184, 186, 187, 189, 0, 0, 0, 179, 182, 167, 172, 0, - 0, 0, 185, 63, 301, 0, 377, 273, 0, 0, - 371, 373, 374, 0, 0, 368, 223, 378, 379, 380, - 0, 276, 381, 382, 0, 229, 0, 359, 383, 293, - 358, 366, 0, 0, 385, 384, 369, 372, 386, 242, - 387, 388, 389, 0, 339, 485, 486, 109, 62, 0, - 78, 228, 0, 0, 212, 224, 0, 210, 194, 192, - 0, 208, 214, 225, 221, 232, 213, 231, 227, 235, - 236, 237, 238, 216, 211, 239, 333, 0, 230, 234, - 226, 233, 220, 222, 240, 217, 241, 218, 219, 215, - 375, 376, 209, 392, 79, 0, 0, 0, 0, 0, - 193, 0, 0, 173, 177, 11, 10, 485, 108, 6, - 8, 0, 101, 0, 105, 104, 107, 181, 183, 0, - 7, 489, 0, 0, 294, 390, 0, 367, 0, 0, - 0, 346, 300, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 13, 12, 14, 205, 0, 345, - 0, 0, 0, 0, 0, 197, 0, 391, 0, 0, - 334, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 174, 175, 176, 100, 0, 0, 0, 0, 0, 0, - 330, 0, 327, 328, 0, 481, 292, 0, 285, 289, - 291, 111, 0, 278, 0, 320, 321, 0, 458, 0, - 481, 302, 316, 0, 304, 305, 314, 282, 446, 440, - 441, 442, 370, 0, 301, 0, 0, 0, 275, 0, - 448, 455, 0, 0, 274, 0, 0, 0, 0, 443, - 444, 125, 403, 116, 117, 118, 459, 437, 445, 439, - 481, 402, 404, 405, 408, 410, 0, 412, 0, 415, + 0, 0, 185, 63, 213, 302, 0, 379, 274, 0, + 0, 373, 375, 376, 0, 0, 370, 224, 380, 381, + 382, 0, 277, 383, 384, 0, 230, 0, 361, 385, + 294, 360, 368, 0, 0, 387, 386, 371, 374, 388, + 243, 389, 390, 391, 0, 341, 485, 486, 109, 62, + 0, 78, 229, 0, 0, 212, 225, 0, 210, 194, + 192, 0, 208, 215, 226, 222, 233, 214, 232, 228, + 236, 237, 238, 239, 217, 211, 240, 335, 0, 231, + 235, 227, 234, 221, 223, 241, 218, 242, 219, 220, + 216, 377, 378, 209, 394, 79, 0, 0, 0, 0, + 0, 193, 0, 0, 173, 177, 11, 10, 485, 108, + 6, 8, 0, 101, 0, 105, 104, 107, 181, 183, + 0, 7, 489, 0, 0, 295, 392, 0, 369, 0, + 0, 0, 348, 301, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 13, 12, 14, 205, 0, + 347, 0, 0, 0, 0, 0, 197, 0, 393, 0, + 0, 336, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 174, 175, 176, 100, 0, 0, 0, 0, 0, + 0, 332, 0, 328, 329, 0, 481, 293, 0, 286, + 290, 292, 111, 0, 279, 0, 321, 322, 0, 458, + 0, 481, 303, 317, 0, 305, 306, 315, 283, 446, + 440, 441, 442, 372, 0, 302, 0, 0, 0, 276, + 0, 448, 455, 0, 0, 275, 0, 0, 0, 0, + 443, 444, 125, 405, 116, 117, 118, 459, 437, 445, + 439, 481, 404, 406, 407, 410, 0, 412, 0, 415, 0, 418, 426, 428, 429, 0, 430, 0, 450, 432, - 433, 431, 434, 435, 436, 0, 0, 324, 325, 322, - 0, 0, 0, 0, 338, 343, 344, 342, 0, 81, - 95, 0, 23, 24, 25, 26, 27, 28, 110, 256, - 248, 249, 250, 246, 263, 0, 261, 0, 254, 485, - 487, 202, 228, 0, 252, 196, 0, 114, 200, 264, - 0, 262, 260, 244, 255, 245, 247, 195, 0, 0, - 207, 336, 335, 88, 203, 332, 89, 64, 80, 0, - 246, 265, 487, 257, 264, 206, 0, 0, 98, 355, - 356, 0, 349, 351, 352, 353, 354, 195, 102, 103, - 489, 9, 0, 65, 99, 66, 67, 68, 0, 296, - 0, 326, 0, 243, 0, 288, 284, 0, 0, 277, - 0, 0, 312, 0, 317, 303, 0, 0, 411, 0, + 433, 431, 434, 435, 436, 0, 0, 325, 326, 323, + 0, 0, 0, 0, 340, 345, 346, 344, 0, 81, + 95, 0, 23, 24, 25, 26, 27, 28, 110, 257, + 249, 250, 251, 247, 264, 0, 262, 0, 255, 485, + 487, 202, 229, 0, 253, 196, 0, 114, 200, 265, + 0, 263, 261, 245, 256, 246, 248, 195, 0, 0, + 207, 338, 337, 88, 203, 334, 89, 64, 80, 0, + 247, 266, 487, 258, 265, 206, 0, 0, 98, 357, + 358, 0, 351, 353, 354, 355, 356, 195, 102, 103, + 489, 9, 0, 65, 99, 66, 67, 68, 0, 297, + 0, 327, 0, 244, 0, 289, 285, 0, 0, 278, + 0, 0, 313, 0, 318, 304, 0, 0, 411, 0, 135, 0, 460, 478, 479, 0, 0, 85, 0, 83, - 0, 283, 0, 0, 0, 423, 422, 0, 425, 424, - 0, 419, 447, 0, 451, 395, 399, 396, 400, 323, - 393, 397, 394, 398, 33, 0, 0, 0, 16, 18, - 19, 20, 21, 22, 340, 341, 0, 97, 0, 251, - 271, 0, 0, 198, 199, 0, 0, 0, 0, 0, - 0, 0, 96, 0, 0, 356, 0, 347, 350, 0, - 491, 492, 493, 494, 246, 496, 497, 498, 377, 273, - 263, 502, 503, 504, 505, 506, 507, 508, 371, 373, - 511, 512, 374, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 368, 275, 525, 526, 527, 528, 529, 530, - 531, 532, 276, 534, 535, 536, 537, 538, 539, 540, - 541, 359, 261, 544, 545, 546, 547, 548, 293, 358, - 366, 552, 553, 554, 555, 556, 557, 558, 369, 372, - 274, 562, 563, 564, 565, 566, 61, 265, 0, 74, - 0, 0, 72, 75, 76, 77, 0, 60, 295, 0, - 0, 329, 331, 483, 0, 482, 480, 481, 290, 0, - 0, 279, 319, 0, 438, 443, 444, 318, 481, 315, + 0, 284, 0, 0, 0, 423, 422, 0, 425, 424, + 0, 419, 447, 0, 451, 397, 401, 398, 402, 324, + 395, 399, 396, 400, 33, 0, 0, 0, 16, 18, + 19, 20, 21, 22, 342, 343, 0, 97, 0, 252, + 272, 0, 0, 198, 199, 0, 0, 0, 0, 0, + 0, 0, 96, 0, 0, 358, 0, 349, 352, 0, + 491, 492, 493, 494, 247, 496, 497, 498, 379, 274, + 264, 502, 503, 504, 505, 506, 507, 508, 373, 375, + 511, 512, 376, 514, 515, 516, 517, 518, 519, 520, + 521, 522, 370, 276, 525, 526, 527, 528, 529, 530, + 531, 532, 277, 534, 535, 536, 537, 538, 539, 540, + 541, 361, 262, 544, 545, 546, 547, 548, 294, 360, + 368, 552, 553, 554, 555, 556, 557, 558, 371, 374, + 275, 562, 563, 564, 565, 566, 61, 266, 0, 74, + 0, 0, 72, 75, 76, 77, 0, 60, 296, 0, + 0, 330, 333, 483, 0, 482, 480, 481, 291, 0, + 0, 280, 320, 0, 438, 443, 444, 319, 481, 316, 421, 124, 0, 136, 463, 461, 0, 462, 464, 465, - 0, 82, 0, 427, 0, 0, 127, 401, 406, 413, + 0, 82, 0, 427, 0, 0, 127, 403, 408, 413, 416, 457, 0, 456, 449, 452, 0, 31, 44, 30, - 39, 35, 48, 50, 0, 337, 29, 259, 272, 0, - 266, 258, 268, 267, 269, 204, 270, 348, 0, 70, - 0, 71, 73, 0, 297, 0, 0, 0, 286, 281, - 280, 313, 310, 306, 108, 0, 0, 107, 0, 0, - 0, 468, 473, 86, 409, 84, 132, 129, 133, 126, + 39, 35, 48, 50, 0, 339, 29, 260, 273, 0, + 267, 259, 269, 268, 270, 204, 271, 350, 0, 70, + 0, 71, 73, 0, 298, 0, 0, 0, 0, 287, + 282, 281, 314, 311, 307, 108, 0, 0, 107, 0, + 0, 0, 468, 473, 86, 84, 132, 129, 133, 126, 0, 0, 453, 32, 0, 42, 41, 0, 37, 40, - 34, 39, 47, 46, 45, 0, 15, 17, 253, 357, - 0, 298, 299, 484, 0, 0, 0, 0, 119, 137, - 0, 466, 0, 472, 470, 477, 0, 132, 0, 0, - 128, 407, 43, 38, 36, 0, 69, 287, 311, 307, - 0, 121, 120, 0, 469, 475, 476, 474, 471, 87, - 131, 130, 134, 59, 49, 0, 0, 77, 467, 495, - 498, 499, 500, 501, 502, 503, 508, 509, 510, 513, - 514, 518, 523, 524, 531, 533, 539, 540, 542, 543, - 549, 550, 551, 552, 553, 559, 560, 561, 59, 490, - 59, 51, 54, 53, 0, 57, 308, 59, 5, 52, - 56, 58, 0, 55, 309, 0 + 34, 39, 47, 46, 45, 0, 15, 17, 254, 359, + 0, 299, 300, 331, 484, 0, 0, 0, 0, 119, + 137, 0, 466, 0, 472, 470, 477, 0, 132, 0, + 0, 128, 409, 43, 38, 36, 0, 69, 0, 288, + 312, 308, 0, 121, 120, 0, 469, 475, 476, 474, + 471, 87, 131, 130, 134, 59, 49, 0, 0, 77, + 467, 495, 498, 499, 500, 501, 502, 503, 508, 509, + 510, 513, 514, 518, 523, 524, 531, 533, 539, 540, + 542, 543, 549, 550, 551, 552, 553, 559, 560, 561, + 59, 490, 59, 51, 54, 53, 0, 57, 309, 59, + 5, 52, 56, 58, 0, 55, 310, 0 }; const short int asn1_parser::yypgoto_[] = { - -700, 618, -700, -700, -95, -700, -700, -700, 356, -700, - -700, -69, -440, -43, -700, -700, -700, -700, -123, -700, - -700, -700, -700, -700, -700, -209, -532, -700, -700, -700, - -439, -274, -700, -659, -700, -700, -700, -700, -700, 3, - 10, -700, -700, -700, 381, -700, -140, -700, -700, -700, - -700, -700, -700, 278, -700, 363, -700, -22, -700, -700, - -700, -700, -700, -700, -700, -700, -700, -700, -105, -137, - -136, -700, -700, -700, -700, -700, -700, 623, -700, 611, - -700, -700, -700, -700, -700, -700, -700, -700, -700, -700, - 574, -700, -700, 602, 586, -81, -700, 573, -700, -262, - -700, -700, 259, -700, -700, -700, -700, -700, -700, 455, - -700, -204, 407, 337, -700, -700, -700, -700, -700, 174, - -700, -700, -214, 149, -700, -700, -101, -446, -700, -700, - -700, 25, -700, -700, -700, 442, -700, -630, -462, -700, - -700, -700, -700, -700, -700, -700, -700, -700, -700, -700, - -700, -700, -700, -700, -700, -103, -700, 267, 119, -700, - -700, -700, 656, -700, 620, 626, -700, -700, -700, -700, - 181, -700, -700, -700, -700, -700, -700, -700, -700, -700, - -131, -700, -700, 253, 357, -699, -312, -700, -700, 178, - -700, 180, -700, 329, -700, -700, 209, -700, -453, -700, - -700, -700, -700, -700, -700, 11, -122, -700, -700, -700, - -700, -700, -700, -700, -417, -700, -700, -700, -700, -700, - -700, -283, -700, -21, -9, 45, 5, -63, -700 + -704, 659, -704, -704, -87, -704, -704, -704, 404, -704, + -704, -23, -441, -182, -704, -704, -704, -704, -75, -704, + -704, -704, -704, -704, -704, -166, -703, -704, -704, -704, + -437, -274, -704, -645, -704, -704, -704, -704, -704, 46, + 51, -704, -704, -704, 430, -704, 340, -704, -704, -704, + -704, -704, -704, 295, -704, 410, -704, 21, -704, -704, + -704, -704, -704, -704, -704, -704, -704, -704, -56, -92, + -91, -704, -704, -704, -704, -704, -704, 671, -704, 660, + -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, + 617, -704, -704, 640, 624, -77, 607, -704, -704, -267, + -704, -704, 302, -704, -704, -704, -704, -704, -704, 52, + -704, -215, 443, 380, -704, -704, -704, -704, -704, -51, + -704, -704, -214, -119, -704, -704, -68, -446, -704, -704, + -704, 60, -704, -704, -704, 459, -704, -640, -456, -704, + -704, -704, -704, -704, -704, -15, -704, -704, -704, -704, + -704, -704, -704, -704, -704, -63, -704, 237, 152, -704, + -704, -704, 693, -704, 657, 663, -704, -704, -704, -704, + -22, -704, -704, -704, -704, -704, -704, -704, -704, -704, + -132, -704, -704, -297, -311, -704, -704, 212, -704, 210, + -704, 362, -704, -704, 234, -704, -463, -704, -704, -704, + -704, -704, -704, 33, -127, -704, -704, -704, -704, -704, + -704, -704, -391, -704, -704, -704, -704, -704, -704, -283, + -704, 67, -9, 47, 5, -43, -704 }; const short int asn1_parser::yydefgoto_[] = { - -1, 2, 3, 804, 208, 209, 210, 79, 245, 246, + -1, 2, 3, 806, 209, 210, 211, 79, 246, 247, 517, 518, 387, 423, 519, 689, 751, 520, 749, 521, - 522, 746, 523, 754, 756, 840, 841, 842, 843, 844, - 845, 147, 148, 454, 455, 456, 630, 457, 631, 632, - 633, 149, 150, 80, 331, 488, 151, 81, 82, 83, - 84, 85, 86, 101, 211, 212, 213, 214, 153, 154, - 155, 156, 403, 332, 333, 726, 334, 675, 676, 778, - 737, 335, 65, 4, 10, 11, 12, 17, 18, 19, + 522, 746, 523, 754, 756, 842, 843, 844, 845, 846, + 847, 148, 149, 454, 455, 456, 630, 457, 631, 632, + 633, 150, 151, 80, 332, 488, 152, 81, 82, 83, + 84, 85, 86, 101, 212, 213, 214, 215, 154, 155, + 156, 157, 403, 333, 334, 727, 335, 675, 676, 779, + 737, 336, 65, 4, 10, 11, 12, 17, 18, 19, 20, 14, 29, 39, 54, 55, 59, 67, 73, 74, - 75, 203, 270, 76, 61, 62, 87, 88, 157, 404, - 158, 405, 255, 406, 159, 407, 89, 90, 91, 336, - 161, 302, 434, 635, 411, 412, 420, 531, 162, 413, - 163, 292, 286, 414, 164, 287, 288, 289, 165, 166, - 458, 459, 167, 168, 169, 303, 304, 305, 306, 170, - 171, 172, 173, 281, 282, 283, 174, 175, 176, 177, - 249, 526, 378, 178, 271, 441, 442, 443, 444, 445, - 179, 180, 415, 34, 45, 43, 181, 182, 183, 184, - 416, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 257, 340, 341, 342, 343, 733, 344, 345, 346, 347, - 348, 349, 350, 478, 497, 500, 351, 352, 353, 354, - 355, 356, 357, 684, 358, 685, 359, 360, 361, 362, - 665, 667, 668, 669, 730, 731, 774, 775, 798, 363, - 364, 465, 646, 200, 195, 196, 201, 220, 637 + 75, 204, 271, 76, 61, 62, 87, 88, 158, 404, + 159, 405, 256, 406, 160, 407, 89, 90, 91, 337, + 162, 303, 434, 635, 411, 412, 420, 531, 163, 413, + 164, 293, 287, 414, 165, 288, 289, 290, 166, 167, + 458, 459, 168, 169, 170, 304, 305, 306, 307, 171, + 172, 173, 174, 282, 283, 284, 175, 176, 177, 178, + 250, 526, 378, 179, 272, 441, 442, 443, 444, 445, + 180, 181, 415, 34, 45, 43, 182, 183, 184, 185, + 416, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 258, 341, 342, 343, 344, 345, 346, 347, 348, 349, + 350, 478, 497, 500, 351, 352, 353, 354, 355, 356, + 357, 684, 358, 685, 359, 360, 361, 362, 665, 667, + 668, 669, 731, 732, 775, 776, 800, 363, 364, 465, + 646, 201, 196, 197, 202, 221, 637 }; const short int asn1_parser::yytable_[] = { - 22, 237, 241, 453, 94, 5, 222, 440, 5, 22, - 238, 242, 628, 629, 659, 490, 293, 472, 427, 215, - 657, 648, 280, 722, 94, 15, 99, 307, 77, 296, - 427, 439, 63, 524, 473, 368, 427, 299, 103, 427, - 439, 299, 781, 744, -417, 63, 92, 715, 244, 63, - 683, 662, 233, 63, 747, 498, 752, 493, 285, -414, - 1, 382, 383, 384, 385, 386, 92, 234, 307, 389, - 390, 194, 391, 474, 392, 690, 299, 799, 205, 217, - 56, 750, 745, 312, 495, 782, 16, 6, 696, 235, - 243, 236, -414, 748, 236, 753, 430, 197, 64, 70, - 8, 641, 394, 298, 204, 219, 223, 647, 791, 395, - 729, 64, 93, -417, 402, 64, 525, 496, 300, 64, - 205, 301, 9, 236, 499, 318, 433, 299, 236, 16, - 13, 299, 93, 23, 291, 16, 789, 299, 16, 452, - -485, 299, 16, 717, 57, 218, 16, 205, 219, 41, - 42, 396, -485, 658, 78, 58, 450, 58, 206, 401, - 328, 506, 508, 58, 1, 450, 686, 511, 513, 16, - 1, 58, 324, 244, 1, 146, 1, 58, 545, 25, - 545, 16, 433, 1, 58, 57, 397, 697, 482, 795, - 1, 58, 629, 215, 449, 23, 221, 57, 58, 375, - 206, 328, 643, 398, 300, 687, 649, 369, 721, 26, - 388, 431, 432, 451, 788, 451, 273, 284, 846, 290, - 426, 294, 854, -113, 297, 269, 284, 206, 274, 683, - 297, 284, 16, 27, 223, 532, 16, 261, 221, -486, - 424, 433, 16, 428, 28, 436, 16, 239, 796, 272, - 30, 58, 797, 217, 63, 433, 651, 433, 642, 418, - 446, 376, 234, 469, -487, 221, 33, -487, -115, 32, - 460, 437, 38, 223, 437, 470, 21, -487, -487, 219, - 377, -487, 263, 15, 240, 21, 236, 545, -113, 433, - -193, 71, 736, -193, 783, -485, 35, -485, 638, 417, - -438, 436, 261, 659, 16, 261, 693, -438, 849, -485, - 639, 417, 402, 739, 447, 849, -454, -161, 694, 218, - 64, 53, -265, -454, 535, 740, -265, 437, 536, 256, - -265, 266, 537, 381, 236, 429, 236, 546, 236, 548, - 236, 433, 485, 486, 659, 382, 383, 384, 385, 386, - 628, 629, 36, 793, 664, 794, 297, 297, 734, 648, - 436, 37, 297, 297, 718, 514, 515, 417, 44, 516, - 152, 198, 202, 46, 436, 723, 436, 48, 716, 57, - 58, -122, 236, 437, 47, 338, 437, 50, 51, 66, - 68, 433, 71, 659, 69, 433, 433, 433, 433, 433, - 437, 70, 437, 72, 850, 851, 96, 100, 436, 97, - 337, 224, 225, 226, 227, 228, 229, 339, 230, 688, - 231, 692, 232, 447, 248, 250, 417, 433, 253, 734, - 254, 446, 16, 446, 437, -112, 268, 262, 263, 264, - 417, 267, 417, 277, 236, 437, 275, 437, 279, 365, - 276, -106, -488, 284, 278, 366, 371, 636, 290, 372, - 436, 294, 373, 326, 734, 419, 374, 284, 427, 636, - 453, 461, 471, 437, 417, 338, 338, 451, 466, 450, - 237, 241, 462, 477, 468, 447, 437, 447, 402, 238, - 242, 402, 464, 453, 467, 475, 476, 417, 479, 481, - 337, 337, 484, 491, -487, 492, -420, 339, 339, 417, - 436, 494, 503, 447, 436, 436, 436, 436, 436, 223, - 504, 223, 509, -257, 528, -301, 417, 534, -201, 538, - 532, 540, 539, 543, 544, 547, 437, 549, -115, 640, - 437, 437, 437, 437, 437, 653, 436, 160, 199, 670, - 661, 666, 672, 671, 437, 216, 673, 677, 678, 699, - 674, 695, 706, 707, 728, 735, 724, 58, 338, 713, - 710, 719, 437, 720, 755, -123, 417, 433, 741, 758, - 417, 417, 417, 417, 417, 705, 764, 759, 433, 705, - 760, 410, 761, 337, 447, 762, 767, 768, 247, 765, - 339, 773, 771, 435, 766, 785, 770, 252, 772, 786, - 776, 803, 417, 645, 777, 808, 779, 650, 805, 806, - 852, 7, 338, 855, 438, 757, 338, 433, 784, 847, - 460, 379, 260, 636, 712, 780, 636, 448, 709, 725, - 800, 31, 801, 40, 284, 437, 338, 337, 98, 338, - 402, 337, 338, 265, 339, 60, 95, 732, 339, 483, - 102, 409, 533, 787, 714, 738, 219, 24, 708, 52, - 49, 337, 541, 417, 337, 679, 417, 337, 339, 501, - 680, 339, 370, 489, 339, 447, 660, 0, 295, 0, - 0, 0, 0, 742, 367, 0, 436, 307, 389, 390, - 0, 391, 0, 392, 0, 0, 380, 436, 0, 408, - 0, 0, 312, 421, 422, 0, 0, 425, 527, 0, - 0, 0, 437, 0, 0, 430, 0, 0, 0, 216, - 0, 394, 529, 437, 530, 0, 0, 0, 395, 463, - 0, 0, 0, 0, 0, 0, 436, 0, 0, 0, - 0, 0, 463, 0, 318, 290, 284, 284, 705, 0, - 0, 732, 417, 732, 0, 0, 542, 0, 0, 738, - 802, 480, 636, 417, 0, 0, 0, 0, 0, 0, - 396, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 636, 290, 284, 0, 0, - 0, 324, 0, 0, 0, 0, 0, 0, 0, 0, - 502, 0, 417, 0, 0, 397, 0, 0, 663, 338, - 505, 507, 0, 0, 23, 0, 510, 512, 0, 0, - 328, 338, 398, 0, 0, 417, 0, 0, 0, 0, - 431, 432, 0, 284, 337, 0, 284, 0, 0, 0, - 0, 339, 0, 0, 0, 0, 337, 0, 0, 0, - 0, 0, 0, 339, 0, 0, 0, 0, 698, 0, - 0, 0, 700, 701, 702, 703, 704, 0, 0, 0, + 22, 238, 242, 440, 453, 5, 239, 243, 5, 22, + 657, 628, 281, 723, 223, 629, 489, 294, 472, 297, + 659, 648, 99, 216, 94, 368, 300, 15, 473, 206, + 427, 490, 308, 77, 375, 308, 389, 390, 427, 391, + 683, 392, 244, 427, 744, 94, 439, -417, 524, 26, + 313, 103, 103, -414, 662, 206, 427, 245, 493, 439, + 498, 495, 715, 747, 430, 237, -485, 474, 797, 752, + 394, -113, 388, 27, 690, 270, 1, 395, -485, 286, + 718, 641, 426, 745, 28, 262, -414, 696, 382, 383, + 384, 385, 386, 319, 496, 70, 376, 198, 56, 783, + 64, 58, 748, 299, 205, 220, 224, 16, 753, 16, + 207, 525, 274, 64, 93, 377, -417, 64, 339, 396, + 63, 64, 541, 793, 275, 750, 237, 791, 798, 499, + 469, 16, 799, 63, 92, 93, 207, 63, 237, 851, + 325, 63, 470, 292, 161, 200, 851, 219, 222, 220, + 506, 508, 217, 452, 792, 92, 511, 513, 58, 195, + 78, 58, 300, 23, 300, 57, 329, 218, 401, 329, + 450, 398, 16, 545, 222, 545, 1, 58, 1, 431, + 432, 6, 245, 450, 58, 300, 338, 234, 482, 300, + 1, 147, 1, 58, 629, 647, 248, 643, 216, 449, + 638, 649, 235, 1, 58, 253, 1, 58, 339, 339, + 730, 300, 639, 57, 856, 340, 57, 58, 285, 683, + 291, 300, 295, 16, 236, 298, 237, 285, 206, -161, + 261, 298, 285, 53, 451, 224, 451, 693, 16, 301, + -487, 301, 302, -487, 369, -115, 21, 642, 686, 694, + 9, 266, 273, -487, -487, 21, 651, -487, 240, 264, + 418, 446, 658, 257, 41, 42, 722, 16, 237, 16, + 8, 460, 437, 235, 224, 437, 338, 338, 267, -113, + 220, -193, 545, 237, 784, 13, 296, 687, 790, 71, + 16, -193, 367, 262, 16, 241, 736, 237, 848, -485, + 339, -485, 417, 262, 380, 340, 340, 408, 16, 207, + 659, 421, 422, -485, 417, 425, 16, 447, 739, 23, + 514, 515, 219, 64, 516, 25, 16, 217, 437, 424, + 740, -266, 428, 381, 436, -266, 535, 463, 237, -266, + 536, -438, 218, 63, 537, 645, 30, 222, -438, 650, + 463, 628, 659, 664, 339, 629, 298, 298, 339, 734, + -454, 648, 298, 298, 719, 32, 429, -454, 338, 480, + 417, 237, 532, 716, 33, 724, -486, 546, 339, 548, + 795, 339, 796, 437, 339, 35, 437, 153, 199, 203, + 436, 382, 383, 384, 385, 386, 36, 340, 57, 58, + 437, 659, 437, 485, 486, 852, 37, 502, 38, 853, + -122, 237, 15, 44, 46, 48, 47, 505, 507, 50, + 51, 66, 338, 510, 512, 447, 338, 688, 417, 692, + 782, 446, 71, 446, 437, 68, 70, 72, 96, 69, + 97, 100, 417, 225, 417, 437, 338, 437, 436, 338, + 227, 340, 338, 285, 226, 340, 228, 636, 291, 229, + 230, 295, 436, 232, 436, 231, 801, 285, 249, 636, + 453, 233, 254, 437, 251, 340, 417, 269, 340, 238, + 242, 340, 255, 264, 239, 243, 437, 447, -112, 447, + 263, 276, 265, 268, 453, 237, 436, 451, -106, 417, + 277, -488, 281, 278, 634, 365, 366, 280, 279, 371, + 372, 417, 373, 327, 419, 447, 644, 374, 427, 224, + 450, 224, 16, 652, 461, 464, 466, 471, 417, 462, + 468, 475, 467, 476, 477, 479, 437, 481, 484, 491, + 437, 437, 437, 437, 437, 492, -487, 494, 436, -420, + 503, 339, 528, 509, 437, 504, -302, -258, 534, -201, + 539, 538, 532, 339, 540, 549, 547, 691, -115, 543, + 544, 640, 437, 642, 725, 653, 671, 661, 417, 666, + 670, 673, 417, 417, 417, 417, 417, 705, 677, 678, + 674, 705, 695, 672, 699, 402, 447, 706, 436, 58, + 707, 774, 436, 436, 436, 436, 436, 433, 710, 308, + 309, 310, 713, 311, 417, 312, 717, 720, 729, 338, + 721, 735, 339, 741, 313, 755, 760, 758, 339, 759, + 460, 338, -123, 636, 436, 410, 636, 761, 654, 762, + 765, 766, 768, 767, 285, 437, 769, 435, 340, 772, + 771, 773, 777, 786, 778, 780, 787, 733, 339, 788, + 340, 805, 7, 433, 807, 738, 220, 319, 810, 808, + 854, 757, 857, 438, 849, 417, 785, 712, 417, 709, + 634, 379, 726, 634, 781, 448, 802, 447, 803, 31, + 338, 98, 40, 60, 95, 102, 338, 789, 409, 714, + 370, 708, 763, 483, 24, 533, 52, 49, 285, 679, + 680, 660, 501, 728, 325, 742, 0, 0, 0, 340, + 0, 433, 0, 437, 0, 340, 338, 0, 0, 0, + 0, 0, 0, 0, 437, 433, 0, 433, 743, 0, + 0, 0, 0, 329, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 655, 656, 340, 291, 285, 285, 0, + 705, 527, 733, 0, 733, 417, 0, 0, 0, 433, + 738, 804, 0, 636, 0, 529, 417, 530, 0, 285, + 0, 0, 0, 0, 0, 436, 0, 0, 0, 0, + 0, 0, 402, 0, 0, 0, 436, 636, 291, 285, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 542, + 0, 0, 0, 0, 0, 417, 0, 0, 0, 0, + 0, 433, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 436, 0, 0, 0, 417, + 0, 0, 0, 0, 634, 285, 0, 0, 285, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 663, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 433, 0, 0, 0, 433, 433, 433, 433, 433, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 338, 0, 0, 0, 0, 0, 338, 0, 0, 0, - 0, 0, 0, 0, 529, 0, 0, 634, 0, 0, - 0, 0, 0, 0, 0, 337, 0, 0, 0, 644, - 0, 337, 339, 0, 0, 338, 652, 0, 339, 0, + 0, 0, 0, 0, 0, 0, 0, 433, 0, 0, + 0, 698, 0, 0, 0, 700, 701, 702, 703, 704, + 0, 0, 0, 0, 0, 0, 308, 309, 310, 0, + 311, 0, 312, 308, 309, 310, 0, 311, 0, 312, + 0, 313, 0, 0, 0, 0, 0, 529, 313, 0, + 103, 0, 0, 0, 0, 654, 0, 0, 0, 314, + 104, 0, 315, 0, 0, 106, 107, 108, 402, 109, + 110, 402, 0, 0, 316, 317, 111, 112, 0, 0, + 113, 114, 318, 0, 319, 115, 0, 0, 0, 0, + 116, 319, 320, 117, 118, 119, 120, 0, 0, 0, + 681, 321, 121, 0, 122, 0, 123, 0, 322, 0, + 0, 124, 125, 126, 127, 0, 128, 0, 323, 0, + 0, 0, 129, 0, 130, 131, 132, 133, 134, 324, + 235, 325, 0, 135, 0, 136, 137, 138, 325, 0, + 0, 0, 0, 139, 140, 141, 142, 143, 326, 0, + 0, 682, 327, 0, 328, 0, 145, 0, 433, 0, + 329, 0, 0, 0, 0, 0, 0, 329, 0, 433, + 655, 656, 0, 0, 0, 0, 0, 330, 331, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 764, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 433, 770, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 337, 0, 0, 0, 0, 0, 0, 339, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 307, 308, 309, - 691, 310, 0, 311, 0, 0, 0, 0, 0, 0, - 0, 0, 312, 0, 103, 0, 0, 0, 0, 0, - 0, 0, 0, 313, 0, 314, 0, 0, 105, 106, - 107, 0, 108, 109, 0, 0, 0, 315, 316, 110, - 111, 0, 0, 112, 113, 317, 0, 0, 114, 0, - 0, 0, 0, 115, 318, 319, 116, 117, 118, 119, - 0, 0, 0, 0, 320, 120, 0, 121, 0, 122, - 0, 321, 0, 0, 123, 124, 125, 126, 0, 127, - 0, 322, 0, 0, 763, 128, 0, 129, 130, 131, - 132, 133, 323, 234, 0, 769, 134, 0, 135, 136, - 137, 324, 0, 0, 0, 0, 138, 139, 140, 141, - 142, 325, 0, 634, 0, 326, 634, 327, 0, 144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 328, 0, 0, 0, 792, 0, 0, 0, 0, 0, - 329, 330, 0, 0, 0, 0, 727, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 807, 307, 389, - 390, 0, 391, 0, 392, 0, 0, 0, 0, 0, - 0, 743, 0, 312, 0, 103, 0, 382, 383, 384, - 385, 386, 550, 551, 552, 553, 554, 555, 556, 557, - 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, - 578, 579, 580, 581, 582, 583, 584, 116, 117, 118, - 119, 585, 586, 587, 588, 589, 590, 591, 592, 593, - 122, 594, 595, 596, 597, 123, 598, 125, 599, 600, - 601, 602, 603, 604, 605, 606, 128, 607, 608, 609, - 610, 611, 612, 613, 614, 615, 616, 134, 617, 135, - 618, 619, 620, 621, 622, 623, 624, 138, 139, 140, - 141, 142, 625, 0, 0, 634, 397, 0, 0, 0, - 144, 0, 307, 389, 390, 23, 391, 0, 392, 626, - 0, 328, 0, 398, 0, 0, 0, 312, 0, 103, - 0, 627, 400, 0, 0, 0, 550, 551, 552, 553, - 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, - 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, - 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, - 584, 116, 117, 118, 119, 585, 586, 587, 588, 589, - 590, 591, 592, 593, 122, 594, 595, 596, 597, 123, - 598, 125, 599, 600, 601, 602, 603, 604, 605, 606, - 128, 607, 608, 609, 610, 611, 612, 613, 614, 615, - 616, 134, 617, 135, 618, 619, 620, 621, 622, 623, - 624, 138, 139, 140, 141, 142, 625, 0, 0, 0, - 397, 711, 0, 0, 144, 0, 307, 308, 309, 23, - 310, 0, 311, 626, 0, 328, 0, 398, 0, 0, - 0, 312, 0, 103, 0, 627, 400, 0, 0, 0, - 0, 0, 313, 0, 314, 0, 0, 105, 106, 107, - 0, 108, 109, 0, 0, 0, 0, 0, 110, 111, - 0, 0, 112, 113, 0, 0, 0, 114, 0, 0, - 0, 0, 115, 318, 319, 116, 117, 118, 119, 0, - 0, 0, 0, 320, 120, 0, 121, 0, 122, 0, - 321, 0, 0, 123, 124, 125, 126, 0, 127, 0, - 322, 0, 0, 0, 128, 0, 129, 130, 131, 132, - 133, 323, 234, 0, 0, 134, 0, 135, 136, 137, - 324, 0, 0, 0, 0, 138, 139, 140, 141, 142, - 325, 0, 487, 0, 0, 0, 327, 0, 144, 307, - 308, 309, 0, 310, 0, 311, 0, 0, 0, 328, - 0, 0, 0, 0, 312, 0, 103, 0, 0, 329, - 330, 0, 0, 0, 0, 313, 0, 314, 0, 0, - 105, 106, 107, 0, 108, 109, 0, 0, 0, 0, - 0, 110, 111, 0, 0, 112, 113, 0, 0, 0, - 114, 0, 0, 0, 0, 115, 318, 319, 116, 117, - 118, 119, 0, 0, 0, 0, 320, 120, 0, 121, - 0, 122, 0, 321, 0, 0, 123, 124, 125, 126, - 0, 127, 0, 322, 0, 0, 0, 128, 0, 129, - 130, 131, 132, 133, 323, 234, 0, 0, 134, 0, - 135, 136, 137, 324, 0, 0, 0, 0, 138, 139, - 140, 141, 142, 325, 0, 0, 307, 389, 390, 327, - 391, 144, 392, 0, 0, 0, 0, 0, 0, 0, - 0, 312, 328, 103, 0, 0, 0, 0, 0, 0, - 0, 205, 329, 330, 393, 0, 0, 105, 106, 107, - 394, 108, 109, 0, 0, 0, 0, 395, 110, 111, - 0, 0, 112, 113, 0, 0, 0, 114, 0, 0, - 0, 0, 115, 318, 0, 116, 117, 118, 119, 0, - 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, - 0, 0, 0, 123, 124, 125, 126, 0, 127, 396, - 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, - 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, - 324, 206, 0, 0, 0, 138, 139, 140, 141, 142, - 0, 0, 0, 0, 397, 307, 308, 309, 144, 310, - 0, 311, 0, 23, 0, 0, 0, 0, 0, 328, - 312, 398, 103, 0, 0, 0, 0, 0, 0, 399, - 400, 0, 0, 314, 0, 0, 105, 106, 107, 0, - 108, 109, 0, 0, 0, 0, 0, 110, 111, 0, - 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, - 0, 115, 318, 319, 116, 117, 118, 119, 0, 0, - 0, 0, 320, 120, 0, 121, 0, 122, 0, 321, - 0, 0, 123, 124, 125, 126, 0, 127, 0, 322, - 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, - 323, 234, 0, 0, 134, 0, 135, 136, 137, 324, - 0, 0, 0, 0, 138, 139, 140, 141, 142, 325, - 0, 0, 307, 389, 390, 327, 391, 144, 392, 0, - 0, 0, 0, 0, 0, 0, 0, 312, 328, 103, - 0, 0, 0, 0, 0, 0, 0, 0, 329, 330, - 393, 0, 0, 105, 106, 107, 394, 108, 109, 0, - 0, 0, 0, 395, 110, 111, 0, 0, 112, 113, - 0, 0, 0, 114, 0, 0, 0, 0, 115, 318, - 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, - 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, - 124, 125, 126, 0, 127, 396, 0, 0, 0, 0, - 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, - 0, 134, 0, 135, 136, 137, 324, 0, 307, 0, - 0, 138, 139, 140, 141, 142, 0, 0, 0, 0, - 397, 0, 0, 0, 144, 103, 0, 0, 0, 23, - 0, 0, 0, 0, 0, 328, 104, 398, 0, 105, - 106, 107, 0, 108, 109, 431, 400, 0, 0, 0, - 110, 111, 0, 0, 112, 113, 307, 308, 309, 114, - 310, 0, 311, 0, 115, 0, 0, 116, 117, 118, - 119, 312, 0, 0, 0, 0, 120, 0, 121, 0, - 122, 0, 0, 0, 654, 123, 124, 125, 126, 0, - 127, 0, 0, 0, 0, 0, 128, 0, 129, 130, - 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, - 136, 137, 0, 318, 0, 0, 0, 138, 139, 140, - 141, 142, 307, 389, 390, 0, 391, 0, 392, 681, - 144, 0, 0, 0, 307, 308, 309, 312, 310, 103, - 311, 328, 0, 0, 0, 0, 0, 0, 0, 312, - 430, 145, 146, 0, 0, 0, 394, 0, 0, 0, - 324, 0, 654, 395, 0, 0, 307, 308, 309, 0, - 310, 0, 311, 0, 0, 0, 0, 0, 0, 318, - 682, 312, 0, 0, 0, 0, 0, 0, 0, 328, - 0, 318, 0, 0, 654, 0, 0, 0, 0, 655, - 656, 0, 0, 0, 0, 396, 0, 681, 0, 0, + 0, 0, 402, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 794, 0, + 0, 0, 0, 0, 308, 389, 390, 0, 391, 0, + 392, 0, 0, 0, 0, 0, 0, 0, 0, 313, + 0, 103, 809, 382, 383, 384, 385, 386, 550, 551, + 552, 104, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, + 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, + 581, 582, 583, 584, 117, 118, 119, 120, 585, 586, + 587, 588, 589, 590, 591, 592, 593, 123, 594, 595, + 596, 597, 124, 598, 126, 599, 600, 601, 602, 603, + 604, 605, 606, 129, 607, 608, 609, 610, 611, 612, + 613, 614, 615, 616, 135, 617, 136, 618, 619, 620, + 621, 622, 623, 624, 139, 140, 141, 142, 143, 625, + 0, 0, 0, 397, 0, 0, 0, 145, 0, 308, + 389, 390, 23, 391, 0, 392, 626, 0, 329, 0, + 398, 0, 0, 0, 313, 0, 103, 0, 627, 400, + 0, 0, 0, 550, 551, 552, 104, 553, 554, 555, + 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, + 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, + 576, 577, 578, 579, 580, 581, 582, 583, 584, 117, + 118, 119, 120, 585, 586, 587, 588, 589, 590, 591, + 592, 593, 123, 594, 595, 596, 597, 124, 598, 126, + 599, 600, 601, 602, 603, 604, 605, 606, 129, 607, + 608, 609, 610, 611, 612, 613, 614, 615, 616, 135, + 617, 136, 618, 619, 620, 621, 622, 623, 624, 139, + 140, 141, 142, 143, 625, 0, 0, 0, 397, 711, + 0, 0, 145, 0, 308, 309, 310, 23, 311, 0, + 312, 626, 0, 329, 0, 398, 0, 0, 0, 313, + 0, 103, 0, 627, 400, 0, 0, 0, 0, 0, + 314, 104, 0, 315, 0, 0, 106, 107, 108, 0, + 109, 110, 0, 0, 0, 0, 0, 111, 112, 0, + 0, 113, 114, 0, 0, 0, 115, 0, 0, 0, + 0, 116, 319, 320, 117, 118, 119, 120, 0, 0, + 0, 0, 321, 121, 0, 122, 0, 123, 0, 322, + 0, 0, 124, 125, 126, 127, 0, 128, 0, 323, + 0, 0, 0, 129, 0, 130, 131, 132, 133, 134, + 324, 235, 0, 0, 135, 0, 136, 137, 138, 325, + 0, 0, 0, 0, 139, 140, 141, 142, 143, 326, + 0, 487, 0, 0, 0, 328, 0, 145, 308, 309, + 310, 0, 311, 0, 312, 0, 0, 0, 329, 0, + 0, 0, 0, 313, 0, 103, 0, 0, 330, 331, + 0, 0, 0, 0, 314, 104, 0, 315, 0, 0, + 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, + 0, 111, 112, 0, 0, 113, 114, 0, 0, 0, + 115, 0, 0, 0, 0, 116, 319, 320, 117, 118, + 119, 120, 0, 0, 0, 0, 321, 121, 0, 122, + 0, 123, 0, 322, 0, 0, 124, 125, 126, 127, + 0, 128, 0, 323, 0, 0, 0, 129, 0, 130, + 131, 132, 133, 134, 324, 235, 0, 0, 135, 0, + 136, 137, 138, 325, 0, 0, 0, 0, 139, 140, + 141, 142, 143, 326, 0, 0, 0, 0, 0, 328, + 0, 145, 308, 389, 390, 0, 391, 0, 392, 0, + 0, 0, 329, 0, 0, 0, 0, 313, 0, 103, + 0, 0, 330, 331, 0, 0, 0, 206, 0, 104, + 0, 393, 0, 0, 106, 107, 108, 394, 109, 110, + 0, 0, 0, 0, 395, 111, 112, 0, 0, 113, + 114, 0, 0, 0, 115, 0, 0, 0, 0, 116, + 319, 0, 117, 118, 119, 120, 0, 0, 0, 0, + 0, 121, 0, 122, 0, 123, 0, 0, 0, 0, + 124, 125, 126, 127, 0, 128, 396, 0, 0, 0, + 0, 129, 0, 130, 131, 132, 133, 134, 0, 0, + 0, 0, 135, 0, 136, 137, 138, 325, 207, 0, + 0, 0, 139, 140, 141, 142, 143, 0, 0, 0, + 0, 397, 308, 309, 310, 145, 311, 0, 312, 0, + 23, 0, 0, 0, 0, 0, 329, 313, 398, 103, + 0, 0, 0, 0, 0, 0, 399, 400, 0, 104, + 0, 315, 0, 0, 106, 107, 108, 0, 109, 110, + 0, 0, 0, 0, 0, 111, 112, 0, 0, 113, + 114, 0, 0, 0, 115, 0, 0, 0, 0, 116, + 319, 320, 117, 118, 119, 120, 0, 0, 0, 0, + 321, 121, 0, 122, 0, 123, 0, 322, 0, 0, + 124, 125, 126, 127, 0, 128, 0, 323, 0, 0, + 0, 129, 0, 130, 131, 132, 133, 134, 324, 235, + 0, 0, 135, 0, 136, 137, 138, 325, 0, 0, + 0, 0, 139, 140, 141, 142, 143, 326, 0, 0, + 0, 0, 0, 328, 0, 145, 308, 389, 390, 0, + 391, 0, 392, 0, 0, 0, 329, 0, 0, 0, + 0, 313, 0, 103, 0, 0, 330, 331, 0, 0, + 0, 0, 0, 104, 0, 393, 0, 0, 106, 107, + 108, 394, 109, 110, 0, 0, 0, 0, 395, 111, + 112, 0, 0, 113, 114, 0, 0, 0, 115, 0, + 0, 0, 0, 116, 319, 0, 117, 118, 119, 120, + 0, 0, 0, 0, 0, 121, 0, 122, 0, 123, + 0, 0, 0, 0, 124, 125, 126, 127, 0, 128, + 396, 0, 0, 0, 0, 129, 0, 130, 131, 132, + 133, 134, 0, 0, 0, 0, 135, 0, 136, 137, + 138, 325, 0, 0, 0, 0, 139, 140, 141, 142, + 143, 0, 0, 0, 0, 397, 308, 0, 0, 145, + 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, + 329, 0, 398, 103, 0, 0, 0, 0, 0, 0, + 431, 400, 0, 104, 0, 105, 0, 0, 106, 107, + 108, 0, 109, 110, 0, 0, 0, 0, 0, 111, + 112, 0, 0, 113, 114, 0, 0, 0, 115, 0, + 0, 0, 0, 116, 0, 0, 117, 118, 119, 120, + 0, 0, 0, 0, 0, 121, 0, 122, 0, 123, + 0, 0, 0, 0, 124, 125, 126, 127, 0, 128, + 0, 0, 0, 0, 0, 129, 0, 130, 131, 132, + 133, 134, 0, 0, 0, 0, 135, 0, 136, 137, + 138, 0, 0, 0, 0, 0, 139, 140, 141, 142, + 143, 0, 0, 0, 308, 389, 390, 0, 391, 145, + 392, 0, 0, 0, 0, 0, 0, 0, 0, 313, + 329, 0, 308, 389, 390, 0, 391, 0, 392, 0, + 146, 147, 0, 430, 308, 309, 310, 313, 311, 394, + 312, 0, 0, 0, 0, 0, 395, 0, 0, 313, + 0, 430, 0, 0, 0, 0, 0, 394, 0, 0, + 0, 0, 319, 654, 395, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 318, 0, 0, 324, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 324, 0, - 790, 0, 0, 0, 0, 0, 0, 0, 0, 23, - 0, 0, 0, 0, 0, 328, 0, 398, 0, 0, - 0, 0, 0, 0, 0, 431, 432, 328, 0, 0, - 324, 0, 0, 0, 0, 0, 0, 655, 656, 0, - 0, 0, 103, 0, 382, 383, 384, 385, 386, 0, - 0, 0, 0, 104, 0, 0, 105, 106, 107, 328, - 108, 109, 0, 0, 0, 0, 0, 110, 111, 655, - 656, 112, 113, 0, 0, 0, 114, 0, 0, 0, - 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, - 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, - 0, 0, 123, 124, 125, 126, 0, 127, 0, 0, - 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, - 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, - 0, 0, 0, 0, 138, 139, 140, 141, 142, 0, - 0, 103, 0, 0, 0, 0, 0, 144, 0, 205, - 0, 0, 104, 0, 0, 105, 106, 107, 0, 108, - 109, 243, 0, 0, 0, 0, 110, 111, 145, 146, - 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, - 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, - 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, - 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, - 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, - 0, 0, 0, 134, 0, 135, 136, 137, 0, 206, - 0, 0, 0, 138, 139, 140, 141, 142, 0, 0, - 103, 0, 0, 0, 0, 0, 144, 0, 0, 0, - 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, - 0, 0, 0, 0, 0, 110, 111, 207, 146, 112, - 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, - 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, - 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, - 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, - 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, - 0, 0, 134, 0, 135, 136, 137, 0, 0, 0, - 0, 0, 138, 139, 140, 141, 142, 0, 143, 103, - 0, 100, 0, 0, 0, 144, 0, 205, 0, 0, - 104, 0, 0, 105, 106, 107, 0, 108, 109, 0, - 0, 0, 0, 0, 110, 111, 145, 146, 112, 113, - 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, - 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, - 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, - 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, - 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, - 0, 134, 0, 135, 136, 137, 0, 206, 0, 0, - 0, 138, 139, 140, 141, 142, 0, 0, 103, 0, - 0, 0, 0, 0, 144, 0, 0, 0, 0, 104, - 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, - 0, 0, 0, 110, 111, 207, 146, 112, 113, 0, - 0, 0, 114, 0, 258, 0, 0, 115, 0, 0, - 116, 117, 118, 119, 0, 259, 0, 0, 0, 120, - 0, 121, 0, 122, 0, 0, 0, 0, 123, 124, - 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, - 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, - 134, 0, 135, 136, 137, 0, 0, 0, 0, 0, - 138, 139, 140, 141, 142, 0, 0, 103, 0, 0, - 0, 0, 0, 144, 0, 0, 0, 0, 104, 0, - 0, 105, 106, 107, 0, 108, 109, 0, 0, 0, - 0, 0, 110, 111, 145, 146, 112, 113, 0, 0, - 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, - 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, - 121, 0, 122, 0, 0, 0, 0, 123, 124, 125, - 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, - 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, - 0, 135, 136, 137, 0, 0, 0, 0, 0, 138, - 139, 140, 141, 142, 0, 0, 103, 0, 100, 0, - 0, 0, 144, 0, 0, 0, 0, 104, 0, 0, - 105, 106, 107, 0, 108, 109, 0, 0, 0, 0, - 0, 110, 111, 145, 146, 112, 113, 0, 0, 0, - 114, 0, 0, 0, 0, 115, 0, 0, 116, 117, - 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, - 0, 122, 0, 0, 0, 0, 123, 124, 125, 126, - 0, 127, 0, 0, 0, 0, 0, 128, 0, 129, - 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, - 135, 136, 137, 0, 0, 0, 0, 0, 138, 139, - 140, 141, 142, 0, 251, 103, 0, 0, 0, 0, - 0, 144, 0, 0, 0, 0, 104, 0, 0, 105, - 106, 107, 0, 108, 109, 0, 0, 0, 0, 0, - 110, 111, 145, 146, 112, 113, 0, 0, 0, 114, - 0, 0, 0, 0, 115, 0, 0, 116, 117, 118, - 119, 0, 0, 0, 0, 0, 120, 0, 121, 0, - 122, 0, 0, 0, 0, 123, 124, 125, 126, 0, - 127, 0, 0, 0, 0, 0, 128, 0, 129, 130, - 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, - 136, 137, 0, 0, 0, 0, 0, 138, 139, 140, - 141, 142, 0, 0, 103, 0, 0, 0, 0, 0, - 144, 0, 262, 0, 0, 104, 0, 0, 105, 106, - 107, 0, 108, 109, 0, 0, 0, 0, 0, 110, - 111, 145, 146, 112, 113, 0, 0, 0, 114, 0, - 0, 0, 0, 115, 0, 0, 116, 117, 118, 119, - 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, - 0, 0, 0, 0, 123, 124, 125, 126, 0, 127, - 0, 0, 0, 0, 0, 128, 0, 129, 130, 131, - 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, - 137, 0, 0, 0, 0, 0, 138, 139, 140, 141, - 142, 0, 0, 0, 0, 0, 0, 0, 0, 144, + 319, 0, 0, 0, 0, 0, 0, 0, 396, 0, + 0, 0, 319, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 396, 0, 681, 325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 397, 697, 0, 0, 325, 0, 0, + 0, 0, 23, 0, 0, 0, 0, 0, 329, 325, + 398, 397, 0, 0, 0, 0, 0, 0, 431, 432, + 23, 0, 0, 0, 0, 0, 329, 0, 398, 0, + 0, 0, 0, 0, 0, 0, 431, 432, 329, 0, + 103, 0, 382, 383, 384, 385, 386, 0, 655, 656, + 104, 0, 105, 0, 0, 106, 107, 108, 0, 109, + 110, 0, 0, 0, 0, 0, 111, 112, 0, 0, + 113, 114, 0, 0, 0, 115, 0, 0, 0, 0, + 116, 0, 0, 117, 118, 119, 120, 0, 0, 0, + 0, 0, 121, 0, 122, 0, 123, 0, 0, 0, + 0, 124, 125, 126, 127, 0, 128, 0, 0, 0, + 0, 0, 129, 0, 130, 131, 132, 133, 134, 0, + 0, 0, 0, 135, 0, 136, 137, 138, 0, 0, + 0, 0, 0, 139, 140, 141, 142, 143, 0, 103, + 0, 0, 0, 0, 0, 0, 145, 206, 0, 104, + 0, 105, 0, 0, 106, 107, 108, 0, 109, 110, + 244, 0, 0, 0, 0, 111, 112, 146, 147, 113, + 114, 0, 0, 0, 115, 0, 0, 0, 0, 116, + 0, 0, 117, 118, 119, 120, 0, 0, 0, 0, + 0, 121, 0, 122, 0, 123, 0, 0, 0, 0, + 124, 125, 126, 127, 0, 128, 0, 0, 0, 0, + 0, 129, 0, 130, 131, 132, 133, 134, 0, 0, + 0, 0, 135, 0, 136, 137, 138, 0, 207, 0, + 0, 0, 139, 140, 141, 142, 143, 0, 103, 0, + 0, 0, 0, 0, 0, 145, 0, 0, 104, 0, + 105, 0, 0, 106, 107, 108, 0, 109, 110, 0, + 0, 0, 0, 0, 111, 112, 208, 147, 113, 114, + 0, 0, 0, 115, 0, 0, 0, 0, 116, 0, + 0, 117, 118, 119, 120, 0, 0, 0, 0, 0, + 121, 0, 122, 0, 123, 0, 0, 0, 0, 124, + 125, 126, 127, 0, 128, 0, 0, 0, 0, 0, + 129, 0, 130, 131, 132, 133, 134, 0, 0, 0, + 0, 135, 0, 136, 137, 138, 0, 0, 0, 0, + 0, 139, 140, 141, 142, 143, 0, 144, 0, 0, + 100, 103, 0, 0, 145, 0, 0, 0, 0, 206, + 0, 104, 0, 105, 0, 0, 106, 107, 108, 0, + 109, 110, 0, 0, 0, 146, 147, 111, 112, 0, + 0, 113, 114, 0, 0, 0, 115, 0, 0, 0, + 0, 116, 0, 0, 117, 118, 119, 120, 0, 0, + 0, 0, 0, 121, 0, 122, 0, 123, 0, 0, + 0, 0, 124, 125, 126, 127, 0, 128, 0, 0, + 0, 0, 0, 129, 0, 130, 131, 132, 133, 134, + 0, 0, 0, 0, 135, 0, 136, 137, 138, 0, + 207, 0, 0, 0, 139, 140, 141, 142, 143, 0, + 103, 0, 0, 0, 0, 0, 0, 145, 0, 0, + 104, 0, 105, 0, 0, 106, 107, 108, 0, 109, + 110, 0, 0, 0, 0, 0, 111, 112, 208, 147, + 113, 114, 0, 0, 0, 115, 0, 259, 0, 0, + 116, 0, 0, 117, 118, 119, 120, 0, 260, 0, + 0, 0, 121, 0, 122, 0, 123, 0, 0, 0, + 0, 124, 125, 126, 127, 0, 128, 0, 0, 0, + 0, 0, 129, 0, 130, 131, 132, 133, 134, 0, + 0, 0, 0, 135, 0, 136, 137, 138, 0, 0, + 0, 0, 0, 139, 140, 141, 142, 143, 0, 103, + 0, 0, 0, 0, 0, 0, 145, 0, 0, 104, + 0, 105, 0, 0, 106, 107, 108, 0, 109, 110, + 0, 0, 0, 0, 0, 111, 112, 146, 147, 113, + 114, 0, 0, 0, 115, 0, 0, 0, 0, 116, + 0, 0, 117, 118, 119, 120, 0, 0, 0, 0, + 0, 121, 0, 122, 0, 123, 0, 0, 0, 0, + 124, 125, 126, 127, 0, 128, 0, 0, 0, 0, + 0, 129, 0, 130, 131, 132, 133, 134, 0, 0, + 0, 0, 135, 0, 136, 137, 138, 0, 0, 0, + 0, 0, 139, 140, 141, 142, 143, 0, 103, 0, + 0, 100, 0, 0, 0, 145, 0, 0, 104, 0, + 105, 0, 0, 106, 107, 108, 0, 109, 110, 0, + 0, 0, 0, 0, 111, 112, 146, 147, 113, 114, + 0, 0, 0, 115, 0, 0, 0, 0, 116, 0, + 0, 117, 118, 119, 120, 0, 0, 0, 0, 0, + 121, 0, 122, 0, 123, 0, 0, 0, 0, 124, + 125, 126, 127, 0, 128, 0, 0, 0, 0, 0, + 129, 0, 130, 131, 132, 133, 134, 0, 0, 0, + 0, 135, 0, 136, 137, 138, 0, 0, 0, 0, + 0, 139, 140, 141, 142, 143, 0, 252, 0, 0, + 0, 103, 0, 0, 145, 0, 0, 0, 0, 0, + 0, 104, 0, 105, 0, 0, 106, 107, 108, 0, + 109, 110, 0, 0, 0, 146, 147, 111, 112, 0, + 0, 113, 114, 0, 0, 0, 115, 0, 0, 0, + 0, 116, 0, 0, 117, 118, 119, 120, 0, 0, + 0, 0, 0, 121, 0, 122, 0, 123, 0, 0, + 0, 0, 124, 125, 126, 127, 0, 128, 0, 0, + 0, 0, 0, 129, 0, 130, 131, 132, 133, 134, + 0, 0, 0, 0, 135, 0, 136, 137, 138, 0, + 0, 0, 0, 0, 139, 140, 141, 142, 143, 0, + 103, 0, 0, 0, 0, 0, 0, 145, 0, 263, + 104, 0, 105, 0, 0, 106, 107, 108, 0, 109, + 110, 0, 0, 0, 0, 0, 111, 112, 146, 147, + 113, 114, 0, 0, 0, 115, 0, 0, 0, 0, + 116, 0, 0, 117, 118, 119, 120, 0, 0, 0, + 0, 0, 121, 0, 122, 0, 123, 0, 0, 0, + 0, 124, 125, 126, 127, 0, 128, 0, 0, 0, + 0, 0, 129, 0, 130, 131, 132, 133, 134, 0, + 0, 0, 0, 135, 0, 136, 137, 138, 0, 0, + 0, 0, 0, 139, 140, 141, 142, 143, 0, 0, + 0, 0, 0, 0, 0, 0, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 145, 146, 382, 383, 384, 385, 386, 550, 551, 552, - 553, 809, 555, 556, 810, 811, 812, 813, 814, 815, - 563, 564, 565, 566, 816, 817, 818, 570, 571, 819, - 820, 574, 575, 576, 821, 578, 579, 580, 581, 822, - 823, 584, 0, 0, 0, 0, 585, 586, 587, 588, - 589, 824, 591, 825, 593, 0, 594, 595, 596, 597, - 0, 826, 0, 827, 600, 828, 829, 603, 604, 605, - 606, 0, 607, 830, 831, 832, 833, 834, 613, 614, - 615, 616, 0, 617, 0, 835, 836, 837, 621, 622, - 623, 624, 0, 0, 0, 0, 0, 625, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 146, 147, 382, + 383, 384, 385, 386, 550, 551, 552, 0, 553, 811, + 555, 556, 812, 813, 814, 815, 816, 817, 563, 564, + 565, 566, 818, 819, 820, 570, 571, 821, 822, 574, + 575, 576, 823, 578, 579, 580, 581, 824, 825, 584, + 0, 0, 0, 0, 585, 586, 587, 588, 589, 826, + 591, 827, 593, 0, 594, 595, 596, 597, 0, 828, + 0, 829, 600, 830, 831, 603, 604, 605, 606, 0, + 607, 832, 833, 834, 835, 836, 613, 614, 615, 616, + 0, 617, 0, 837, 838, 839, 621, 622, 623, 624, + 0, 0, 0, 0, 0, 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 626, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 839, 550, 551, 552, - 553, 809, 555, 556, 810, 811, 812, 813, 814, 815, - 563, 564, 565, 566, 816, 817, 818, 570, 571, 819, - 820, 574, 575, 576, 821, 578, 579, 580, 581, 822, - 823, 584, 0, 0, 0, 0, 585, 586, 587, 588, - 589, 824, 591, 825, 593, 0, 594, 595, 596, 597, - 0, 826, 0, 827, 600, 828, 829, 603, 604, 605, - 606, 0, 607, 830, 831, 832, 833, 834, 613, 614, - 615, 616, 0, 617, 0, 835, 836, 837, 621, 622, - 623, 624, 0, 0, 0, 0, 0, 625, 0, 0, - 0, 0, 848, 0, 0, 838, 0, 0, 0, 0, - 0, 0, 0, 0, 626, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 839, 550, 551, 552, - 553, 809, 555, 556, 810, 811, 812, 813, 814, 815, - 563, 564, 565, 566, 816, 817, 818, 570, 571, 819, - 820, 574, 575, 576, 821, 578, 579, 580, 581, 822, - 823, 584, 0, 0, 0, 0, 585, 586, 587, 588, - 589, 824, 591, 825, 593, 0, 594, 595, 596, 597, - 0, 826, 0, 827, 600, 828, 829, 603, 604, 605, - 606, 0, 607, 830, 831, 832, 833, 834, 613, 614, - 615, 616, 0, 617, 0, 835, 836, 837, 621, 622, - 623, 624, 0, 0, 0, 0, 0, 625, 0, 0, - 0, 0, 0, 0, 0, 838, 853, 0, 0, 0, - 0, 0, 0, 0, 626, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 839, 550, 551, 552, - 553, 809, 555, 556, 810, 811, 812, 813, 814, 815, - 563, 564, 565, 566, 816, 817, 818, 570, 571, 819, - 820, 574, 575, 576, 821, 578, 579, 580, 581, 822, - 823, 584, 0, 0, 0, 0, 585, 586, 587, 588, - 589, 824, 591, 825, 593, 0, 594, 595, 596, 597, - 0, 826, 0, 827, 600, 828, 829, 603, 604, 605, - 606, 0, 607, 830, 831, 832, 833, 834, 613, 614, - 615, 616, 0, 617, 0, 835, 836, 837, 621, 622, - 623, 624, 0, 0, 0, 0, 0, 625, 0, 0, - 0, 0, 0, 0, 0, 838, 0, 0, 0, 0, - 0, 0, 0, 0, 626, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 839 + 0, 0, 626, 0, 0, 0, 0, 0, 0, 0, + 0, 550, 551, 552, 841, 553, 811, 555, 556, 812, + 813, 814, 815, 816, 817, 563, 564, 565, 566, 818, + 819, 820, 570, 571, 821, 822, 574, 575, 576, 823, + 578, 579, 580, 581, 824, 825, 584, 0, 0, 0, + 0, 585, 586, 587, 588, 589, 826, 591, 827, 593, + 0, 594, 595, 596, 597, 0, 828, 0, 829, 600, + 830, 831, 603, 604, 605, 606, 0, 607, 832, 833, + 834, 835, 836, 613, 614, 615, 616, 0, 617, 0, + 837, 838, 839, 621, 622, 623, 624, 0, 0, 0, + 0, 0, 625, 0, 0, 0, 0, 850, 0, 0, + 840, 0, 0, 0, 0, 0, 0, 0, 0, 626, + 0, 0, 0, 0, 0, 0, 0, 0, 550, 551, + 552, 841, 553, 811, 555, 556, 812, 813, 814, 815, + 816, 817, 563, 564, 565, 566, 818, 819, 820, 570, + 571, 821, 822, 574, 575, 576, 823, 578, 579, 580, + 581, 824, 825, 584, 0, 0, 0, 0, 585, 586, + 587, 588, 589, 826, 591, 827, 593, 0, 594, 595, + 596, 597, 0, 828, 0, 829, 600, 830, 831, 603, + 604, 605, 606, 0, 607, 832, 833, 834, 835, 836, + 613, 614, 615, 616, 0, 617, 0, 837, 838, 839, + 621, 622, 623, 624, 0, 0, 0, 0, 0, 625, + 0, 0, 0, 0, 0, 0, 0, 840, 855, 0, + 0, 0, 0, 0, 0, 0, 626, 0, 0, 0, + 0, 0, 0, 0, 0, 550, 551, 552, 841, 553, + 811, 555, 556, 812, 813, 814, 815, 816, 817, 563, + 564, 565, 566, 818, 819, 820, 570, 571, 821, 822, + 574, 575, 576, 823, 578, 579, 580, 581, 824, 825, + 584, 0, 0, 0, 0, 585, 586, 587, 588, 589, + 826, 591, 827, 593, 0, 594, 595, 596, 597, 0, + 828, 0, 829, 600, 830, 831, 603, 604, 605, 606, + 0, 607, 832, 833, 834, 835, 836, 613, 614, 615, + 616, 0, 617, 0, 837, 838, 839, 621, 622, 623, + 624, 0, 0, 0, 0, 0, 625, 0, 0, 0, + 0, 0, 0, 0, 840, 0, 0, 0, 0, 0, + 0, 0, 0, 626, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 841 }; const short int asn1_parser::yycheck_[] = { - 9, 132, 133, 277, 67, 0, 101, 269, 3, 18, - 132, 133, 452, 452, 476, 327, 230, 300, 21, 100, - 473, 467, 226, 653, 87, 4, 62, 4, 21, 233, - 21, 4, 53, 4, 48, 239, 21, 43, 21, 21, - 4, 43, 741, 48, 75, 66, 67, 4, 143, 70, - 503, 52, 85, 74, 48, 75, 48, 340, 120, 110, - 147, 23, 24, 25, 26, 27, 87, 100, 4, 5, - 6, 92, 8, 87, 10, 515, 43, 776, 29, 100, - 30, 111, 87, 19, 110, 744, 148, 0, 528, 122, - 41, 124, 143, 87, 124, 87, 32, 92, 53, 135, - 49, 120, 38, 234, 99, 100, 101, 120, 767, 45, - 120, 66, 67, 144, 254, 70, 378, 143, 120, 74, - 29, 123, 122, 124, 144, 61, 266, 43, 124, 148, - 15, 43, 87, 131, 229, 148, 766, 43, 148, 122, - 124, 43, 148, 139, 147, 100, 148, 29, 143, 16, - 17, 87, 136, 120, 147, 148, 147, 148, 109, 254, - 137, 365, 366, 148, 147, 147, 48, 371, 372, 148, - 147, 148, 108, 268, 147, 148, 147, 148, 440, 73, - 442, 148, 322, 147, 148, 147, 122, 123, 319, 28, - 147, 148, 631, 274, 275, 131, 147, 147, 148, 31, - 109, 137, 464, 139, 120, 87, 468, 123, 120, 33, - 253, 147, 148, 276, 120, 278, 123, 226, 120, 228, - 263, 230, 852, 122, 233, 122, 235, 109, 135, 682, - 239, 240, 148, 57, 229, 124, 148, 136, 147, 128, - 261, 381, 148, 264, 68, 266, 148, 85, 87, 204, - 123, 148, 91, 274, 275, 395, 470, 397, 462, 254, - 269, 93, 100, 123, 122, 147, 138, 125, 122, 124, - 279, 266, 59, 268, 269, 135, 9, 135, 136, 274, - 112, 139, 136, 4, 122, 18, 124, 549, 122, 429, - 124, 122, 136, 124, 747, 122, 104, 124, 123, 254, - 121, 322, 136, 765, 148, 136, 123, 128, 840, 136, - 135, 266, 452, 123, 269, 847, 121, 54, 135, 274, - 275, 58, 135, 128, 135, 135, 139, 322, 139, 119, - 143, 119, 143, 119, 124, 119, 124, 440, 124, 442, - 124, 481, 42, 43, 806, 23, 24, 25, 26, 27, - 790, 790, 104, 770, 485, 772, 365, 366, 670, 805, - 381, 104, 371, 372, 647, 23, 24, 322, 138, 27, - 92, 93, 94, 69, 395, 658, 397, 125, 640, 147, - 148, 123, 124, 378, 119, 236, 381, 131, 34, 70, - 140, 531, 122, 855, 140, 535, 536, 537, 538, 539, - 395, 135, 397, 54, 844, 844, 123, 122, 429, 140, - 236, 101, 101, 122, 89, 122, 85, 236, 122, 514, - 67, 516, 101, 378, 15, 119, 381, 567, 136, 741, - 122, 440, 148, 442, 429, 122, 119, 128, 136, 136, - 395, 136, 397, 119, 124, 440, 139, 442, 122, 85, - 136, 139, 136, 462, 136, 85, 85, 452, 467, 85, - 481, 470, 122, 122, 776, 122, 139, 476, 21, 464, - 744, 123, 85, 468, 429, 326, 327, 540, 123, 147, - 611, 612, 135, 56, 124, 440, 481, 442, 628, 611, - 612, 631, 130, 767, 135, 123, 135, 452, 38, 38, - 326, 327, 12, 4, 136, 122, 56, 326, 327, 464, - 531, 135, 121, 468, 535, 536, 537, 538, 539, 514, - 128, 516, 123, 143, 136, 124, 481, 123, 123, 135, - 124, 136, 143, 136, 136, 123, 531, 124, 122, 124, - 535, 536, 537, 538, 539, 135, 567, 92, 93, 135, - 122, 122, 135, 123, 549, 100, 125, 125, 120, 4, - 142, 127, 123, 123, 38, 120, 661, 148, 419, 136, - 135, 125, 567, 125, 118, 123, 531, 717, 135, 125, - 535, 536, 537, 538, 539, 540, 135, 125, 728, 544, - 146, 254, 125, 419, 549, 125, 139, 123, 143, 135, - 419, 732, 123, 266, 135, 102, 135, 152, 135, 123, - 135, 122, 567, 464, 136, 123, 136, 468, 135, 135, - 135, 3, 473, 135, 268, 694, 477, 767, 751, 838, - 639, 250, 177, 628, 631, 740, 631, 274, 628, 661, - 777, 18, 778, 32, 653, 640, 497, 473, 74, 500, - 790, 477, 503, 198, 473, 53, 70, 666, 477, 322, - 87, 254, 403, 764, 639, 674, 661, 11, 549, 49, - 44, 497, 419, 628, 500, 497, 631, 503, 497, 350, - 500, 500, 240, 326, 503, 640, 477, -1, 233, -1, - -1, -1, -1, 682, 239, -1, 717, 4, 5, 6, - -1, 8, -1, 10, -1, -1, 251, 728, -1, 254, - -1, -1, 19, 258, 259, -1, -1, 262, 381, -1, - -1, -1, 717, -1, -1, 32, -1, -1, -1, 274, - -1, 38, 395, 728, 397, -1, -1, -1, 45, 284, - -1, -1, -1, -1, -1, -1, 767, -1, -1, -1, - -1, -1, 297, -1, 61, 764, 765, 766, 713, -1, - -1, 770, 717, 772, -1, -1, 429, -1, -1, 778, - 779, 316, 767, 728, -1, -1, -1, -1, -1, -1, - 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 790, 805, 806, -1, -1, - -1, 108, -1, -1, -1, -1, -1, -1, -1, -1, - 355, -1, 767, -1, -1, 122, -1, -1, 481, 670, - 365, 366, -1, -1, 131, -1, 371, 372, -1, -1, - 137, 682, 139, -1, -1, 790, -1, -1, -1, -1, - 147, 148, -1, 852, 670, -1, 855, -1, -1, -1, - -1, 670, -1, -1, -1, -1, 682, -1, -1, -1, - -1, -1, -1, 682, -1, -1, -1, -1, 531, -1, - -1, -1, 535, 536, 537, 538, 539, -1, -1, -1, + 9, 133, 134, 270, 278, 0, 133, 134, 3, 18, + 473, 452, 227, 653, 101, 452, 327, 231, 301, 234, + 476, 467, 63, 100, 67, 240, 44, 4, 49, 29, + 21, 328, 4, 21, 32, 4, 5, 6, 21, 8, + 503, 10, 42, 21, 49, 88, 4, 76, 4, 34, + 19, 21, 21, 111, 53, 29, 21, 144, 341, 4, + 76, 111, 4, 49, 33, 125, 125, 88, 28, 49, + 39, 123, 254, 58, 515, 123, 148, 46, 137, 121, + 140, 121, 264, 88, 69, 137, 144, 528, 23, 24, + 25, 26, 27, 62, 144, 136, 94, 92, 30, 744, + 53, 149, 88, 235, 99, 100, 101, 149, 88, 149, + 110, 378, 124, 66, 67, 113, 145, 70, 237, 88, + 53, 74, 419, 768, 136, 112, 125, 767, 88, 145, + 124, 149, 92, 66, 67, 88, 110, 70, 125, 842, + 109, 74, 136, 230, 92, 93, 849, 100, 148, 144, + 365, 366, 100, 123, 123, 88, 371, 372, 149, 92, + 148, 149, 44, 132, 44, 148, 138, 100, 255, 138, + 148, 140, 149, 440, 148, 442, 148, 149, 148, 148, + 149, 0, 269, 148, 149, 44, 237, 86, 320, 44, + 148, 149, 148, 149, 631, 121, 144, 464, 275, 276, + 124, 468, 101, 148, 149, 153, 148, 149, 327, 328, + 121, 44, 136, 148, 854, 237, 148, 149, 227, 682, + 229, 44, 231, 149, 123, 234, 125, 236, 29, 55, + 178, 240, 241, 59, 277, 230, 279, 124, 149, 121, + 123, 121, 124, 126, 124, 123, 9, 462, 49, 136, + 123, 199, 205, 136, 137, 18, 470, 140, 86, 137, + 255, 270, 121, 120, 16, 17, 121, 149, 125, 149, + 50, 280, 267, 101, 269, 270, 327, 328, 120, 123, + 275, 125, 549, 125, 747, 15, 234, 88, 121, 123, + 149, 125, 240, 137, 149, 123, 137, 125, 121, 123, + 419, 125, 255, 137, 252, 327, 328, 255, 149, 110, + 766, 259, 260, 137, 267, 263, 149, 270, 124, 132, + 23, 24, 275, 276, 27, 74, 149, 275, 323, 262, + 136, 136, 265, 120, 267, 140, 136, 285, 125, 144, + 140, 122, 275, 276, 144, 464, 124, 148, 129, 468, + 298, 792, 808, 485, 473, 792, 365, 366, 477, 670, + 122, 807, 371, 372, 647, 125, 120, 129, 419, 317, + 323, 125, 125, 640, 139, 658, 129, 440, 497, 442, + 771, 500, 773, 378, 503, 105, 381, 92, 93, 94, + 323, 23, 24, 25, 26, 27, 105, 419, 148, 149, + 395, 857, 397, 43, 44, 846, 105, 355, 60, 846, + 124, 125, 4, 139, 70, 126, 120, 365, 366, 132, + 35, 71, 473, 371, 372, 378, 477, 514, 381, 516, + 741, 440, 123, 442, 429, 141, 136, 55, 124, 141, + 141, 123, 395, 102, 397, 440, 497, 442, 381, 500, + 123, 473, 503, 462, 102, 477, 90, 452, 467, 123, + 86, 470, 395, 68, 397, 123, 777, 476, 15, 464, + 744, 102, 137, 468, 120, 497, 429, 120, 500, 611, + 612, 503, 123, 137, 611, 612, 481, 440, 123, 442, + 129, 140, 137, 137, 768, 125, 429, 540, 140, 452, + 137, 137, 717, 120, 452, 86, 86, 123, 137, 86, + 86, 464, 123, 123, 123, 468, 464, 140, 21, 514, + 148, 516, 149, 471, 124, 131, 124, 86, 481, 136, + 125, 124, 136, 136, 57, 39, 531, 39, 12, 4, + 535, 536, 537, 538, 539, 123, 137, 136, 481, 57, + 122, 670, 137, 124, 549, 129, 125, 144, 124, 124, + 144, 136, 125, 682, 137, 125, 124, 515, 123, 137, + 137, 125, 567, 788, 661, 136, 124, 123, 531, 123, + 136, 126, 535, 536, 537, 538, 539, 540, 126, 121, + 143, 544, 128, 136, 4, 255, 549, 124, 531, 149, + 124, 733, 535, 536, 537, 538, 539, 267, 136, 4, + 5, 6, 137, 8, 567, 10, 136, 126, 39, 670, + 126, 121, 741, 136, 19, 119, 147, 126, 747, 126, + 639, 682, 124, 628, 567, 255, 631, 126, 33, 126, + 136, 136, 140, 136, 653, 640, 124, 267, 670, 124, + 136, 136, 136, 103, 137, 137, 124, 666, 777, 136, + 682, 123, 3, 323, 136, 674, 661, 62, 124, 136, + 136, 694, 136, 269, 840, 628, 751, 631, 631, 628, + 628, 251, 661, 631, 740, 275, 778, 640, 779, 18, + 741, 74, 32, 53, 70, 88, 747, 765, 255, 639, + 241, 549, 717, 323, 11, 403, 49, 44, 717, 497, + 500, 477, 350, 661, 109, 682, -1, -1, -1, 741, + -1, 381, -1, 718, -1, 747, 777, -1, -1, -1, + -1, -1, -1, -1, 729, 395, -1, 397, 686, -1, + -1, -1, -1, 138, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 148, 149, 777, 765, 766, 767, -1, + 713, 381, 771, -1, 773, 718, -1, -1, -1, 429, + 779, 780, -1, 768, -1, 395, 729, 397, -1, 788, + -1, -1, -1, -1, -1, 718, -1, -1, -1, -1, + -1, -1, 452, -1, -1, -1, 729, 792, 807, 808, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 429, + -1, -1, -1, -1, -1, 768, -1, -1, -1, -1, + -1, 481, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 768, -1, -1, -1, 792, + -1, -1, -1, -1, 792, 854, -1, -1, 857, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 741, -1, -1, -1, -1, -1, 747, -1, -1, -1, - -1, -1, -1, -1, 567, -1, -1, 452, -1, -1, - -1, -1, -1, -1, -1, 741, -1, -1, -1, 464, - -1, 747, 741, -1, -1, 776, 471, -1, 747, -1, + -1, 481, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 531, -1, -1, -1, 535, 536, 537, 538, 539, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 776, -1, -1, -1, -1, -1, -1, 776, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 4, 5, 6, - 515, 8, -1, 10, -1, -1, -1, -1, -1, -1, - -1, -1, 19, -1, 21, -1, -1, -1, -1, -1, - -1, -1, -1, 30, -1, 32, -1, -1, 35, 36, - 37, -1, 39, 40, -1, -1, -1, 44, 45, 46, - 47, -1, -1, 50, 51, 52, -1, -1, 55, -1, - -1, -1, -1, 60, 61, 62, 63, 64, 65, 66, - -1, -1, -1, -1, 71, 72, -1, 74, -1, 76, - -1, 78, -1, -1, 81, 82, 83, 84, -1, 86, - -1, 88, -1, -1, 717, 92, -1, 94, 95, 96, - 97, 98, 99, 100, -1, 728, 103, -1, 105, 106, - 107, 108, -1, -1, -1, -1, 113, 114, 115, 116, - 117, 118, -1, 628, -1, 122, 631, 124, -1, 126, + -1, -1, -1, -1, -1, -1, -1, 567, -1, -1, + -1, 531, -1, -1, -1, 535, 536, 537, 538, 539, + -1, -1, -1, -1, -1, -1, 4, 5, 6, -1, + 8, -1, 10, 4, 5, 6, -1, 8, -1, 10, + -1, 19, -1, -1, -1, -1, -1, 567, 19, -1, + 21, -1, -1, -1, -1, 33, -1, -1, -1, 30, + 31, -1, 33, -1, -1, 36, 37, 38, 628, 40, + 41, 631, -1, -1, 45, 46, 47, 48, -1, -1, + 51, 52, 53, -1, 62, 56, -1, -1, -1, -1, + 61, 62, 63, 64, 65, 66, 67, -1, -1, -1, + 78, 72, 73, -1, 75, -1, 77, -1, 79, -1, + -1, 82, 83, 84, 85, -1, 87, -1, 89, -1, + -1, -1, 93, -1, 95, 96, 97, 98, 99, 100, + 101, 109, -1, 104, -1, 106, 107, 108, 109, -1, + -1, -1, -1, 114, 115, 116, 117, 118, 119, -1, + -1, 129, 123, -1, 125, -1, 127, -1, 718, -1, + 138, -1, -1, -1, -1, -1, -1, 138, -1, 729, + 148, 149, -1, -1, -1, -1, -1, 148, 149, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 137, -1, -1, -1, 767, -1, -1, -1, -1, -1, - 147, 148, -1, -1, -1, -1, 661, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 790, 4, 5, - 6, -1, 8, -1, 10, -1, -1, -1, -1, -1, - -1, 686, -1, 19, -1, 21, -1, 23, 24, 25, - 26, 27, 28, 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, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, -1, -1, 790, 122, -1, -1, -1, - 126, -1, 4, 5, 6, 131, 8, -1, 10, 135, - -1, 137, -1, 139, -1, -1, -1, 19, -1, 21, - -1, 147, 148, -1, -1, -1, 28, 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, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, -1, -1, -1, - 122, 123, -1, -1, 126, -1, 4, 5, 6, 131, - 8, -1, 10, 135, -1, 137, -1, 139, -1, -1, - -1, 19, -1, 21, -1, 147, 148, -1, -1, -1, - -1, -1, 30, -1, 32, -1, -1, 35, 36, 37, - -1, 39, 40, -1, -1, -1, -1, -1, 46, 47, - -1, -1, 50, 51, -1, -1, -1, 55, -1, -1, - -1, -1, 60, 61, 62, 63, 64, 65, 66, -1, - -1, -1, -1, 71, 72, -1, 74, -1, 76, -1, - 78, -1, -1, 81, 82, 83, 84, -1, 86, -1, - 88, -1, -1, -1, 92, -1, 94, 95, 96, 97, - 98, 99, 100, -1, -1, 103, -1, 105, 106, 107, - 108, -1, -1, -1, -1, 113, 114, 115, 116, 117, - 118, -1, 120, -1, -1, -1, 124, -1, 126, 4, - 5, 6, -1, 8, -1, 10, -1, -1, -1, 137, - -1, -1, -1, -1, 19, -1, 21, -1, -1, 147, - 148, -1, -1, -1, -1, 30, -1, 32, -1, -1, - 35, 36, 37, -1, 39, 40, -1, -1, -1, -1, - -1, 46, 47, -1, -1, 50, 51, -1, -1, -1, - 55, -1, -1, -1, -1, 60, 61, 62, 63, 64, - 65, 66, -1, -1, -1, -1, 71, 72, -1, 74, - -1, 76, -1, 78, -1, -1, 81, 82, 83, 84, - -1, 86, -1, 88, -1, -1, -1, 92, -1, 94, - 95, 96, 97, 98, 99, 100, -1, -1, 103, -1, - 105, 106, 107, 108, -1, -1, -1, -1, 113, 114, - 115, 116, 117, 118, -1, -1, 4, 5, 6, 124, - 8, 126, 10, -1, -1, -1, -1, -1, -1, -1, - -1, 19, 137, 21, -1, -1, -1, -1, -1, -1, - -1, 29, 147, 148, 32, -1, -1, 35, 36, 37, - 38, 39, 40, -1, -1, -1, -1, 45, 46, 47, - -1, -1, 50, 51, -1, -1, -1, 55, -1, -1, - -1, -1, 60, 61, -1, 63, 64, 65, 66, -1, - -1, -1, -1, -1, 72, -1, 74, -1, 76, -1, - -1, -1, -1, 81, 82, 83, 84, -1, 86, 87, - -1, -1, -1, -1, 92, -1, 94, 95, 96, 97, - 98, -1, -1, -1, -1, 103, -1, 105, 106, 107, - 108, 109, -1, -1, -1, 113, 114, 115, 116, 117, - -1, -1, -1, -1, 122, 4, 5, 6, 126, 8, - -1, 10, -1, 131, -1, -1, -1, -1, -1, 137, - 19, 139, 21, -1, -1, -1, -1, -1, -1, 147, - 148, -1, -1, 32, -1, -1, 35, 36, 37, -1, - 39, 40, -1, -1, -1, -1, -1, 46, 47, -1, - -1, 50, 51, -1, -1, -1, 55, -1, -1, -1, - -1, 60, 61, 62, 63, 64, 65, 66, -1, -1, - -1, -1, 71, 72, -1, 74, -1, 76, -1, 78, - -1, -1, 81, 82, 83, 84, -1, 86, -1, 88, - -1, -1, -1, 92, -1, 94, 95, 96, 97, 98, - 99, 100, -1, -1, 103, -1, 105, 106, 107, 108, - -1, -1, -1, -1, 113, 114, 115, 116, 117, 118, - -1, -1, 4, 5, 6, 124, 8, 126, 10, -1, - -1, -1, -1, -1, -1, -1, -1, 19, 137, 21, - -1, -1, -1, -1, -1, -1, -1, -1, 147, 148, - 32, -1, -1, 35, 36, 37, 38, 39, 40, -1, - -1, -1, -1, 45, 46, 47, -1, -1, 50, 51, - -1, -1, -1, 55, -1, -1, -1, -1, 60, 61, - -1, 63, 64, 65, 66, -1, -1, -1, -1, -1, - 72, -1, 74, -1, 76, -1, -1, -1, -1, 81, - 82, 83, 84, -1, 86, 87, -1, -1, -1, -1, - 92, -1, 94, 95, 96, 97, 98, -1, -1, -1, - -1, 103, -1, 105, 106, 107, 108, -1, 4, -1, - -1, 113, 114, 115, 116, 117, -1, -1, -1, -1, - 122, -1, -1, -1, 126, 21, -1, -1, -1, 131, - -1, -1, -1, -1, -1, 137, 32, 139, -1, 35, - 36, 37, -1, 39, 40, 147, 148, -1, -1, -1, - 46, 47, -1, -1, 50, 51, 4, 5, 6, 55, - 8, -1, 10, -1, 60, -1, -1, 63, 64, 65, - 66, 19, -1, -1, -1, -1, 72, -1, 74, -1, - 76, -1, -1, -1, 32, 81, 82, 83, 84, -1, - 86, -1, -1, -1, -1, -1, 92, -1, 94, 95, - 96, 97, 98, -1, -1, -1, -1, 103, -1, 105, - 106, 107, -1, 61, -1, -1, -1, 113, 114, 115, - 116, 117, 4, 5, 6, -1, 8, -1, 10, 77, - 126, -1, -1, -1, 4, 5, 6, 19, 8, 21, - 10, 137, -1, -1, -1, -1, -1, -1, -1, 19, - 32, 147, 148, -1, -1, -1, 38, -1, -1, -1, - 108, -1, 32, 45, -1, -1, 4, 5, 6, -1, - 8, -1, 10, -1, -1, -1, -1, -1, -1, 61, - 128, 19, -1, -1, -1, -1, -1, -1, -1, 137, - -1, 61, -1, -1, 32, -1, -1, -1, -1, 147, - 148, -1, -1, -1, -1, 87, -1, 77, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 718, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 768, 729, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 792, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 768, -1, + -1, -1, -1, -1, 4, 5, 6, -1, 8, -1, + 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, + -1, 21, 792, 23, 24, 25, 26, 27, 28, 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, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + -1, -1, -1, 123, -1, -1, -1, 127, -1, 4, + 5, 6, 132, 8, -1, 10, 136, -1, 138, -1, + 140, -1, -1, -1, 19, -1, 21, -1, 148, 149, + -1, -1, -1, 28, 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, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, -1, -1, -1, 123, 124, + -1, -1, 127, -1, 4, 5, 6, 132, 8, -1, + 10, 136, -1, 138, -1, 140, -1, -1, -1, 19, + -1, 21, -1, 148, 149, -1, -1, -1, -1, -1, + 30, 31, -1, 33, -1, -1, 36, 37, 38, -1, + 40, 41, -1, -1, -1, -1, -1, 47, 48, -1, + -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, + -1, 61, 62, 63, 64, 65, 66, 67, -1, -1, + -1, -1, 72, 73, -1, 75, -1, 77, -1, 79, + -1, -1, 82, 83, 84, 85, -1, 87, -1, 89, + -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, + 100, 101, -1, -1, 104, -1, 106, 107, 108, 109, + -1, -1, -1, -1, 114, 115, 116, 117, 118, 119, + -1, 121, -1, -1, -1, 125, -1, 127, 4, 5, + 6, -1, 8, -1, 10, -1, -1, -1, 138, -1, + -1, -1, -1, 19, -1, 21, -1, -1, 148, 149, + -1, -1, -1, -1, 30, 31, -1, 33, -1, -1, + 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, + -1, 47, 48, -1, -1, 51, 52, -1, -1, -1, + 56, -1, -1, -1, -1, 61, 62, 63, 64, 65, + 66, 67, -1, -1, -1, -1, 72, 73, -1, 75, + -1, 77, -1, 79, -1, -1, 82, 83, 84, 85, + -1, 87, -1, 89, -1, -1, -1, 93, -1, 95, + 96, 97, 98, 99, 100, 101, -1, -1, 104, -1, + 106, 107, 108, 109, -1, -1, -1, -1, 114, 115, + 116, 117, 118, 119, -1, -1, -1, -1, -1, 125, + -1, 127, 4, 5, 6, -1, 8, -1, 10, -1, + -1, -1, 138, -1, -1, -1, -1, 19, -1, 21, + -1, -1, 148, 149, -1, -1, -1, 29, -1, 31, + -1, 33, -1, -1, 36, 37, 38, 39, 40, 41, + -1, -1, -1, -1, 46, 47, 48, -1, -1, 51, + 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, + 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, + -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, + 82, 83, 84, 85, -1, 87, 88, -1, -1, -1, + -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, + -1, -1, 104, -1, 106, 107, 108, 109, 110, -1, + -1, -1, 114, 115, 116, 117, 118, -1, -1, -1, + -1, 123, 4, 5, 6, 127, 8, -1, 10, -1, + 132, -1, -1, -1, -1, -1, 138, 19, 140, 21, + -1, -1, -1, -1, -1, -1, 148, 149, -1, 31, + -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, + -1, -1, -1, -1, -1, 47, 48, -1, -1, 51, + 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, + 62, 63, 64, 65, 66, 67, -1, -1, -1, -1, + 72, 73, -1, 75, -1, 77, -1, 79, -1, -1, + 82, 83, 84, 85, -1, 87, -1, 89, -1, -1, + -1, 93, -1, 95, 96, 97, 98, 99, 100, 101, + -1, -1, 104, -1, 106, 107, 108, 109, -1, -1, + -1, -1, 114, 115, 116, 117, 118, 119, -1, -1, + -1, -1, -1, 125, -1, 127, 4, 5, 6, -1, + 8, -1, 10, -1, -1, -1, 138, -1, -1, -1, + -1, 19, -1, 21, -1, -1, 148, 149, -1, -1, + -1, -1, -1, 31, -1, 33, -1, -1, 36, 37, + 38, 39, 40, 41, -1, -1, -1, -1, 46, 47, + 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, + -1, -1, -1, 61, 62, -1, 64, 65, 66, 67, + -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, + -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, + 88, -1, -1, -1, -1, 93, -1, 95, 96, 97, + 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, + 108, 109, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, -1, -1, 123, 4, -1, -1, 127, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + 138, -1, 140, 21, -1, -1, -1, -1, -1, -1, + 148, 149, -1, 31, -1, 33, -1, -1, 36, 37, + 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, + 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, + -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, + -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, + -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, + -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, + 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, + 108, -1, -1, -1, -1, -1, 114, 115, 116, 117, + 118, -1, -1, -1, 4, 5, 6, -1, 8, 127, + 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, + 138, -1, 4, 5, 6, -1, 8, -1, 10, -1, + 148, 149, -1, 33, 4, 5, 6, 19, 8, 39, + 10, -1, -1, -1, -1, -1, 46, -1, -1, 19, + -1, 33, -1, -1, -1, -1, -1, 39, -1, -1, + -1, -1, 62, 33, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 61, -1, -1, 108, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 108, -1, - 122, -1, -1, -1, -1, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, 137, -1, 139, -1, -1, - -1, -1, -1, -1, -1, 147, 148, 137, -1, -1, - 108, -1, -1, -1, -1, -1, -1, 147, 148, -1, - -1, -1, 21, -1, 23, 24, 25, 26, 27, -1, - -1, -1, -1, 32, -1, -1, 35, 36, 37, 137, - 39, 40, -1, -1, -1, -1, -1, 46, 47, 147, - 148, 50, 51, -1, -1, -1, 55, -1, -1, -1, - -1, 60, -1, -1, 63, 64, 65, 66, -1, -1, - -1, -1, -1, 72, -1, 74, -1, 76, -1, -1, - -1, -1, 81, 82, 83, 84, -1, 86, -1, -1, - -1, -1, -1, 92, -1, 94, 95, 96, 97, 98, - -1, -1, -1, -1, 103, -1, 105, 106, 107, -1, - -1, -1, -1, -1, 113, 114, 115, 116, 117, -1, - -1, 21, -1, -1, -1, -1, -1, 126, -1, 29, - -1, -1, 32, -1, -1, 35, 36, 37, -1, 39, - 40, 41, -1, -1, -1, -1, 46, 47, 147, 148, - 50, 51, -1, -1, -1, 55, -1, -1, -1, -1, - 60, -1, -1, 63, 64, 65, 66, -1, -1, -1, - -1, -1, 72, -1, 74, -1, 76, -1, -1, -1, - -1, 81, 82, 83, 84, -1, 86, -1, -1, -1, - -1, -1, 92, -1, 94, 95, 96, 97, 98, -1, - -1, -1, -1, 103, -1, 105, 106, 107, -1, 109, - -1, -1, -1, 113, 114, 115, 116, 117, -1, -1, - 21, -1, -1, -1, -1, -1, 126, -1, -1, -1, - -1, 32, -1, -1, 35, 36, 37, -1, 39, 40, - -1, -1, -1, -1, -1, 46, 47, 147, 148, 50, - 51, -1, -1, -1, 55, -1, -1, -1, -1, 60, - -1, -1, 63, 64, 65, 66, -1, -1, -1, -1, - -1, 72, -1, 74, -1, 76, -1, -1, -1, -1, - 81, 82, 83, 84, -1, 86, -1, -1, -1, -1, - -1, 92, -1, 94, 95, 96, 97, 98, -1, -1, - -1, -1, 103, -1, 105, 106, 107, -1, -1, -1, - -1, -1, 113, 114, 115, 116, 117, -1, 119, 21, - -1, 122, -1, -1, -1, 126, -1, 29, -1, -1, - 32, -1, -1, 35, 36, 37, -1, 39, 40, -1, - -1, -1, -1, -1, 46, 47, 147, 148, 50, 51, - -1, -1, -1, 55, -1, -1, -1, -1, 60, -1, - -1, 63, 64, 65, 66, -1, -1, -1, -1, -1, - 72, -1, 74, -1, 76, -1, -1, -1, -1, 81, - 82, 83, 84, -1, 86, -1, -1, -1, -1, -1, - 92, -1, 94, 95, 96, 97, 98, -1, -1, -1, - -1, 103, -1, 105, 106, 107, -1, 109, -1, -1, - -1, 113, 114, 115, 116, 117, -1, -1, 21, -1, - -1, -1, -1, -1, 126, -1, -1, -1, -1, 32, - -1, -1, 35, 36, 37, -1, 39, 40, -1, -1, - -1, -1, -1, 46, 47, 147, 148, 50, 51, -1, - -1, -1, 55, -1, 57, -1, -1, 60, -1, -1, - 63, 64, 65, 66, -1, 68, -1, -1, -1, 72, - -1, 74, -1, 76, -1, -1, -1, -1, 81, 82, - 83, 84, -1, 86, -1, -1, -1, -1, -1, 92, - -1, 94, 95, 96, 97, 98, -1, -1, -1, -1, - 103, -1, 105, 106, 107, -1, -1, -1, -1, -1, - 113, 114, 115, 116, 117, -1, -1, 21, -1, -1, - -1, -1, -1, 126, -1, -1, -1, -1, 32, -1, - -1, 35, 36, 37, -1, 39, 40, -1, -1, -1, - -1, -1, 46, 47, 147, 148, 50, 51, -1, -1, - -1, 55, -1, -1, -1, -1, 60, -1, -1, 63, - 64, 65, 66, -1, -1, -1, -1, -1, 72, -1, - 74, -1, 76, -1, -1, -1, -1, 81, 82, 83, - 84, -1, 86, -1, -1, -1, -1, -1, 92, -1, - 94, 95, 96, 97, 98, -1, -1, -1, -1, 103, - -1, 105, 106, 107, -1, -1, -1, -1, -1, 113, - 114, 115, 116, 117, -1, -1, 21, -1, 122, -1, - -1, -1, 126, -1, -1, -1, -1, 32, -1, -1, - 35, 36, 37, -1, 39, 40, -1, -1, -1, -1, - -1, 46, 47, 147, 148, 50, 51, -1, -1, -1, - 55, -1, -1, -1, -1, 60, -1, -1, 63, 64, - 65, 66, -1, -1, -1, -1, -1, 72, -1, 74, - -1, 76, -1, -1, -1, -1, 81, 82, 83, 84, - -1, 86, -1, -1, -1, -1, -1, 92, -1, 94, - 95, 96, 97, 98, -1, -1, -1, -1, 103, -1, - 105, 106, 107, -1, -1, -1, -1, -1, 113, 114, - 115, 116, 117, -1, 119, 21, -1, -1, -1, -1, - -1, 126, -1, -1, -1, -1, 32, -1, -1, 35, - 36, 37, -1, 39, 40, -1, -1, -1, -1, -1, - 46, 47, 147, 148, 50, 51, -1, -1, -1, 55, - -1, -1, -1, -1, 60, -1, -1, 63, 64, 65, - 66, -1, -1, -1, -1, -1, 72, -1, 74, -1, - 76, -1, -1, -1, -1, 81, 82, 83, 84, -1, - 86, -1, -1, -1, -1, -1, 92, -1, 94, 95, - 96, 97, 98, -1, -1, -1, -1, 103, -1, 105, - 106, 107, -1, -1, -1, -1, -1, 113, 114, 115, - 116, 117, -1, -1, 21, -1, -1, -1, -1, -1, - 126, -1, 128, -1, -1, 32, -1, -1, 35, 36, - 37, -1, 39, 40, -1, -1, -1, -1, -1, 46, - 47, 147, 148, 50, 51, -1, -1, -1, 55, -1, - -1, -1, -1, 60, -1, -1, 63, 64, 65, 66, - -1, -1, -1, -1, -1, 72, -1, 74, -1, 76, - -1, -1, -1, -1, 81, 82, 83, 84, -1, 86, - -1, -1, -1, -1, -1, 92, -1, 94, 95, 96, - 97, 98, -1, -1, -1, -1, 103, -1, 105, 106, - 107, -1, -1, -1, -1, -1, 113, 114, 115, 116, - 117, -1, -1, -1, -1, -1, -1, -1, -1, 126, + 62, -1, -1, -1, -1, -1, -1, -1, 88, -1, + -1, -1, 62, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 88, -1, 78, 109, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 123, 124, -1, -1, 109, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, 138, 109, + 140, 123, -1, -1, -1, -1, -1, -1, 148, 149, + 132, -1, -1, -1, -1, -1, 138, -1, 140, -1, + -1, -1, -1, -1, -1, -1, 148, 149, 138, -1, + 21, -1, 23, 24, 25, 26, 27, -1, 148, 149, + 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, + 41, -1, -1, -1, -1, -1, 47, 48, -1, -1, + 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, + 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, + -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, + -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, + -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, + -1, -1, -1, 104, -1, 106, 107, 108, -1, -1, + -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, + -1, -1, -1, -1, -1, -1, 127, 29, -1, 31, + -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, + 42, -1, -1, -1, -1, 47, 48, 148, 149, 51, + 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, + -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, + -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, + 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, + -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, + -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, + -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, + -1, -1, -1, -1, -1, 127, -1, -1, 31, -1, + 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, + -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, + -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, + -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, + 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, + 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, + 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, + -1, 104, -1, 106, 107, 108, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, 120, -1, -1, + 123, 21, -1, -1, 127, -1, -1, -1, -1, 29, + -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, + 40, 41, -1, -1, -1, 148, 149, 47, 48, -1, + -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, + -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, + -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, + -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, + -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, + -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, + 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, + 21, -1, -1, -1, -1, -1, -1, 127, -1, -1, + 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, + 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, + 51, 52, -1, -1, -1, 56, -1, 58, -1, -1, + 61, -1, -1, 64, 65, 66, 67, -1, 69, -1, + -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, + -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, + -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, + -1, -1, -1, 104, -1, 106, 107, 108, -1, -1, + -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, + -1, -1, -1, -1, -1, -1, 127, -1, -1, 31, + -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, + -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, + 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, + -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, + -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, + 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, + -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, + -1, -1, 104, -1, 106, 107, 108, -1, -1, -1, + -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, + -1, 123, -1, -1, -1, 127, -1, -1, 31, -1, + 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, + -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, + -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, + -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, + 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, + 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, + 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, + -1, 104, -1, 106, 107, 108, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, 120, -1, -1, + -1, 21, -1, -1, 127, -1, -1, -1, -1, -1, + -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, + 40, 41, -1, -1, -1, 148, 149, 47, 48, -1, + -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, + -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, + -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, + -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, + -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, + -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, + -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, + 21, -1, -1, -1, -1, -1, -1, 127, -1, 129, + 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, + 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, + 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, + 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, + -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, + -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, + -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, + -1, -1, -1, 104, -1, 106, 107, 108, -1, -1, + -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, + -1, -1, -1, -1, -1, -1, 127, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 147, 148, 23, 24, 25, 26, 27, 28, 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, 62, -1, -1, -1, -1, 67, 68, 69, 70, - 71, 72, 73, 74, 75, -1, 77, 78, 79, 80, - -1, 82, -1, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, -1, 104, -1, 106, 107, 108, 109, 110, - 111, 112, -1, -1, -1, -1, -1, 118, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 148, 149, 23, + 24, 25, 26, 27, 28, 29, 30, -1, 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, 62, 63, + -1, -1, -1, -1, 68, 69, 70, 71, 72, 73, + 74, 75, 76, -1, 78, 79, 80, 81, -1, 83, + -1, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + -1, 105, -1, 107, 108, 109, 110, 111, 112, 113, + -1, -1, -1, -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 147, 28, 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, 62, -1, -1, -1, -1, 67, 68, 69, 70, - 71, 72, 73, 74, 75, -1, 77, 78, 79, 80, - -1, 82, -1, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, -1, 104, -1, 106, 107, 108, 109, 110, - 111, 112, -1, -1, -1, -1, -1, 118, -1, -1, - -1, -1, 123, -1, -1, 126, -1, -1, -1, -1, - -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 147, 28, 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, 62, -1, -1, -1, -1, 67, 68, 69, 70, - 71, 72, 73, 74, 75, -1, 77, 78, 79, 80, - -1, 82, -1, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, -1, 104, -1, 106, 107, 108, 109, 110, - 111, 112, -1, -1, -1, -1, -1, 118, -1, -1, - -1, -1, -1, -1, -1, 126, 127, -1, -1, -1, - -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 147, 28, 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, 62, -1, -1, -1, -1, 67, 68, 69, 70, - 71, 72, 73, 74, 75, -1, 77, 78, 79, 80, - -1, 82, -1, 84, 85, 86, 87, 88, 89, 90, - 91, -1, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, -1, 104, -1, 106, 107, 108, 109, 110, - 111, 112, -1, -1, -1, -1, -1, 118, -1, -1, - -1, -1, -1, -1, -1, 126, -1, -1, -1, -1, - -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 147 + -1, -1, 136, -1, -1, -1, -1, -1, -1, -1, + -1, 28, 29, 30, 148, 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, 62, 63, -1, -1, -1, + -1, 68, 69, 70, 71, 72, 73, 74, 75, 76, + -1, 78, 79, 80, 81, -1, 83, -1, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, -1, 105, -1, + 107, 108, 109, 110, 111, 112, 113, -1, -1, -1, + -1, -1, 119, -1, -1, -1, -1, 124, -1, -1, + 127, -1, -1, -1, -1, -1, -1, -1, -1, 136, + -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, + 30, 148, 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, 62, 63, -1, -1, -1, -1, 68, 69, + 70, 71, 72, 73, 74, 75, 76, -1, 78, 79, + 80, 81, -1, 83, -1, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, -1, 105, -1, 107, 108, 109, + 110, 111, 112, 113, -1, -1, -1, -1, -1, 119, + -1, -1, -1, -1, -1, -1, -1, 127, 128, -1, + -1, -1, -1, -1, -1, -1, 136, -1, -1, -1, + -1, -1, -1, -1, -1, 28, 29, 30, 148, 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, 62, + 63, -1, -1, -1, -1, 68, 69, 70, 71, 72, + 73, 74, 75, 76, -1, 78, 79, 80, 81, -1, + 83, -1, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, 100, 101, 102, + 103, -1, 105, -1, 107, 108, 109, 110, 111, 112, + 113, -1, -1, -1, -1, -1, 119, -1, -1, -1, + -1, -1, -1, -1, 127, -1, -1, -1, -1, -1, + -1, -1, -1, 136, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 148 }; const unsigned short int asn1_parser::yystos_[] = { - 0, 147, 152, 153, 224, 377, 0, 152, 49, 122, - 225, 226, 227, 15, 232, 4, 148, 228, 229, 230, - 231, 308, 375, 131, 313, 73, 33, 57, 68, 233, - 123, 228, 124, 138, 314, 104, 104, 104, 59, 234, - 230, 16, 17, 316, 138, 315, 69, 119, 125, 316, - 131, 34, 315, 58, 235, 236, 30, 147, 148, 237, - 244, 245, 246, 374, 376, 223, 70, 238, 140, 140, - 135, 122, 54, 239, 240, 241, 244, 21, 147, 158, - 194, 198, 199, 200, 201, 202, 203, 247, 248, 257, - 258, 259, 374, 376, 378, 245, 123, 140, 241, 62, - 122, 204, 248, 21, 32, 35, 36, 37, 39, 40, - 46, 47, 50, 51, 55, 60, 63, 64, 65, 66, - 72, 74, 76, 81, 82, 83, 84, 86, 92, 94, - 95, 96, 97, 98, 103, 105, 106, 107, 113, 114, - 115, 116, 117, 119, 126, 147, 148, 182, 183, 192, - 193, 197, 204, 209, 210, 211, 212, 249, 251, 255, - 260, 261, 269, 271, 275, 279, 280, 283, 284, 285, - 290, 291, 292, 293, 297, 298, 299, 300, 304, 311, - 312, 317, 318, 319, 320, 322, 323, 324, 325, 326, - 327, 328, 329, 330, 374, 375, 376, 377, 204, 260, - 374, 377, 204, 242, 377, 29, 109, 147, 155, 156, - 157, 205, 206, 207, 208, 246, 260, 374, 376, 377, - 378, 147, 155, 377, 101, 101, 122, 89, 122, 85, - 122, 67, 101, 85, 100, 122, 124, 331, 357, 85, - 122, 331, 357, 41, 155, 159, 160, 260, 15, 301, - 119, 119, 260, 136, 122, 253, 119, 331, 57, 68, - 260, 136, 128, 136, 136, 260, 119, 136, 119, 122, - 243, 305, 376, 123, 135, 139, 136, 119, 136, 122, - 262, 294, 295, 296, 375, 120, 273, 276, 277, 278, - 375, 155, 272, 273, 375, 260, 262, 375, 331, 43, - 120, 123, 262, 286, 287, 288, 289, 4, 5, 6, - 8, 10, 19, 30, 32, 44, 45, 52, 61, 62, - 71, 78, 88, 99, 108, 118, 122, 124, 137, 147, - 148, 195, 214, 215, 217, 222, 260, 270, 274, 321, - 332, 333, 334, 335, 337, 338, 339, 340, 341, 342, - 343, 347, 348, 349, 350, 351, 352, 353, 355, 357, - 358, 359, 360, 370, 371, 85, 85, 260, 262, 123, - 286, 85, 85, 122, 139, 31, 93, 112, 303, 195, - 260, 119, 23, 24, 25, 26, 27, 163, 164, 5, - 6, 8, 10, 32, 38, 45, 87, 122, 139, 147, - 148, 155, 197, 213, 250, 252, 254, 256, 260, 263, - 264, 265, 266, 270, 274, 313, 321, 376, 377, 122, - 267, 260, 260, 164, 374, 260, 164, 21, 374, 119, - 32, 147, 148, 197, 263, 264, 374, 377, 159, 4, - 250, 306, 307, 308, 309, 310, 375, 376, 206, 246, - 147, 378, 122, 182, 184, 185, 186, 188, 281, 282, - 375, 123, 135, 260, 130, 372, 123, 135, 124, 123, - 135, 85, 372, 48, 87, 123, 135, 56, 344, 38, - 260, 38, 331, 264, 12, 42, 43, 120, 196, 335, - 337, 4, 122, 372, 135, 110, 143, 345, 75, 144, - 346, 344, 260, 121, 128, 260, 262, 260, 262, 123, - 260, 262, 260, 262, 23, 24, 27, 161, 162, 165, - 168, 170, 171, 173, 4, 250, 302, 264, 136, 264, - 264, 268, 124, 253, 123, 135, 139, 143, 135, 143, - 136, 334, 264, 136, 136, 250, 306, 123, 306, 124, - 28, 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, 62, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 77, 78, 79, 80, 82, 84, - 85, 86, 87, 88, 89, 90, 91, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 104, 106, 107, - 108, 109, 110, 111, 112, 118, 135, 147, 163, 181, - 187, 189, 190, 191, 260, 264, 377, 379, 123, 135, - 124, 120, 262, 250, 260, 274, 373, 120, 278, 250, - 274, 273, 260, 135, 32, 147, 148, 349, 120, 289, - 347, 122, 52, 264, 331, 361, 122, 362, 363, 364, - 135, 123, 135, 125, 142, 218, 219, 125, 120, 340, - 342, 77, 128, 349, 354, 356, 48, 87, 155, 166, - 163, 260, 155, 123, 135, 127, 163, 123, 264, 4, - 264, 264, 264, 264, 264, 376, 123, 123, 309, 191, - 135, 123, 190, 136, 282, 4, 250, 139, 372, 125, - 125, 120, 288, 372, 155, 208, 216, 260, 38, 120, - 365, 366, 375, 336, 337, 120, 136, 221, 375, 123, - 135, 135, 356, 260, 48, 87, 172, 48, 87, 169, - 111, 167, 48, 87, 174, 118, 175, 162, 125, 125, - 146, 125, 125, 264, 135, 135, 135, 139, 123, 264, - 135, 123, 135, 331, 367, 368, 135, 136, 220, 136, - 219, 336, 184, 349, 169, 102, 123, 277, 120, 288, - 122, 184, 264, 365, 365, 28, 87, 91, 369, 336, - 220, 221, 375, 122, 154, 135, 135, 264, 123, 32, - 35, 36, 37, 38, 39, 40, 45, 46, 47, 50, - 51, 55, 60, 61, 72, 74, 82, 84, 86, 87, - 94, 95, 96, 97, 98, 106, 107, 108, 126, 147, - 176, 177, 178, 179, 180, 181, 120, 176, 123, 177, - 163, 181, 135, 127, 288, 135 + 0, 148, 153, 154, 225, 376, 0, 153, 50, 123, + 226, 227, 228, 15, 233, 4, 149, 229, 230, 231, + 232, 309, 374, 132, 314, 74, 34, 58, 69, 234, + 124, 229, 125, 139, 315, 105, 105, 105, 60, 235, + 231, 16, 17, 317, 139, 316, 70, 120, 126, 317, + 132, 35, 316, 59, 236, 237, 30, 148, 149, 238, + 245, 246, 247, 373, 375, 224, 71, 239, 141, 141, + 136, 123, 55, 240, 241, 242, 245, 21, 148, 159, + 195, 199, 200, 201, 202, 203, 204, 248, 249, 258, + 259, 260, 373, 375, 377, 246, 124, 141, 242, 63, + 123, 205, 248, 21, 31, 33, 36, 37, 38, 40, + 41, 47, 48, 51, 52, 56, 61, 64, 65, 66, + 67, 73, 75, 77, 82, 83, 84, 85, 87, 93, + 95, 96, 97, 98, 99, 104, 106, 107, 108, 114, + 115, 116, 117, 118, 120, 127, 148, 149, 183, 184, + 193, 194, 198, 205, 210, 211, 212, 213, 250, 252, + 256, 261, 262, 270, 272, 276, 280, 281, 284, 285, + 286, 291, 292, 293, 294, 298, 299, 300, 301, 305, + 312, 313, 318, 319, 320, 321, 323, 324, 325, 326, + 327, 328, 329, 330, 331, 373, 374, 375, 376, 205, + 261, 373, 376, 205, 243, 376, 29, 110, 148, 156, + 157, 158, 206, 207, 208, 209, 247, 261, 373, 375, + 376, 377, 148, 156, 376, 102, 102, 123, 90, 123, + 86, 123, 68, 102, 86, 101, 123, 125, 332, 356, + 86, 123, 332, 356, 42, 156, 160, 161, 261, 15, + 302, 120, 120, 261, 137, 123, 254, 120, 332, 58, + 69, 261, 137, 129, 137, 137, 261, 120, 137, 120, + 123, 244, 306, 375, 124, 136, 140, 137, 120, 137, + 123, 263, 295, 296, 297, 374, 121, 274, 277, 278, + 279, 374, 156, 273, 274, 374, 261, 263, 374, 332, + 44, 121, 124, 263, 287, 288, 289, 290, 4, 5, + 6, 8, 10, 19, 30, 33, 45, 46, 53, 62, + 63, 72, 79, 89, 100, 109, 119, 123, 125, 138, + 148, 149, 196, 215, 216, 218, 223, 261, 271, 275, + 322, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 346, 347, 348, 349, 350, 351, 352, 354, 356, + 357, 358, 359, 369, 370, 86, 86, 261, 263, 124, + 287, 86, 86, 123, 140, 32, 94, 113, 304, 196, + 261, 120, 23, 24, 25, 26, 27, 164, 165, 5, + 6, 8, 10, 33, 39, 46, 88, 123, 140, 148, + 149, 156, 198, 214, 251, 253, 255, 257, 261, 264, + 265, 266, 267, 271, 275, 314, 322, 375, 376, 123, + 268, 261, 261, 165, 373, 261, 165, 21, 373, 120, + 33, 148, 149, 198, 264, 265, 373, 376, 160, 4, + 251, 307, 308, 309, 310, 311, 374, 375, 207, 247, + 148, 377, 123, 183, 185, 186, 187, 189, 282, 283, + 374, 124, 136, 261, 131, 371, 124, 136, 125, 124, + 136, 86, 371, 49, 88, 124, 136, 57, 343, 39, + 261, 39, 332, 265, 12, 43, 44, 121, 197, 336, + 335, 4, 123, 371, 136, 111, 144, 344, 76, 145, + 345, 343, 261, 122, 129, 261, 263, 261, 263, 124, + 261, 263, 261, 263, 23, 24, 27, 162, 163, 166, + 169, 171, 172, 174, 4, 251, 303, 265, 137, 265, + 265, 269, 125, 254, 124, 136, 140, 144, 136, 144, + 137, 335, 265, 137, 137, 251, 307, 124, 307, 125, + 28, 29, 30, 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, 62, 63, 68, 69, 70, 71, 72, + 73, 74, 75, 76, 78, 79, 80, 81, 83, 85, + 86, 87, 88, 89, 90, 91, 92, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 105, 107, 108, + 109, 110, 111, 112, 113, 119, 136, 148, 164, 182, + 188, 190, 191, 192, 261, 265, 376, 378, 124, 136, + 125, 121, 263, 251, 261, 275, 372, 121, 279, 251, + 275, 274, 261, 136, 33, 148, 149, 348, 121, 290, + 346, 123, 53, 265, 332, 360, 123, 361, 362, 363, + 136, 124, 136, 126, 143, 219, 220, 126, 121, 339, + 341, 78, 129, 348, 353, 355, 49, 88, 156, 167, + 164, 261, 156, 124, 136, 128, 164, 124, 265, 4, + 265, 265, 265, 265, 265, 375, 124, 124, 310, 192, + 136, 124, 191, 137, 283, 4, 251, 136, 140, 371, + 126, 126, 121, 289, 371, 156, 209, 217, 261, 39, + 121, 364, 365, 374, 336, 121, 137, 222, 374, 124, + 136, 136, 355, 261, 49, 88, 173, 49, 88, 170, + 112, 168, 49, 88, 175, 119, 176, 163, 126, 126, + 147, 126, 126, 297, 265, 136, 136, 136, 140, 124, + 265, 136, 124, 136, 332, 366, 367, 136, 137, 221, + 137, 220, 336, 185, 348, 170, 103, 124, 136, 278, + 121, 289, 123, 185, 265, 364, 364, 28, 88, 92, + 368, 336, 221, 222, 374, 123, 155, 136, 136, 265, + 124, 33, 36, 37, 38, 39, 40, 41, 46, 47, + 48, 51, 52, 56, 61, 62, 73, 75, 83, 85, + 87, 88, 95, 96, 97, 98, 99, 107, 108, 109, + 127, 148, 177, 178, 179, 180, 181, 182, 121, 177, + 124, 178, 164, 182, 136, 128, 289, 136 }; const unsigned short int asn1_parser::yyr1_[] = { - 0, 151, 152, 152, 153, 154, 155, 155, 155, 156, - 157, 157, 158, 159, 159, 160, 161, 161, 162, 162, - 162, 162, 162, 163, 163, 163, 163, 163, 164, 164, - 165, 166, 166, 166, 167, 167, 168, 169, 169, 169, - 170, 171, 172, 172, 172, 173, 174, 174, 174, 175, - 175, 176, 176, 177, 177, 178, 179, 180, 180, 180, - 181, 181, 182, 182, 183, 184, 184, 185, 185, 186, - 187, 188, 189, 189, 190, 190, 191, 191, 192, 192, - 193, 194, 195, 196, 196, 196, 196, 196, 197, 197, - 198, 198, 198, 198, 198, 199, 200, 201, 202, 203, - 204, 205, 205, 206, 206, 207, 207, 208, 208, 209, - 210, 211, 212, 212, 213, 213, 214, 214, 214, 215, - 216, 216, 216, 216, 216, 217, 217, 218, 218, 219, - 219, 220, 220, 221, 221, 222, 222, 222, 223, 224, - 225, 225, 225, 226, 227, 228, 228, 229, 229, 229, - 230, 231, 232, 232, 233, 233, 233, 233, 234, 234, - 235, 235, 236, 236, 236, 237, 237, 238, 238, 239, - 239, 240, 240, 241, 242, 243, 243, 243, 244, 244, - 245, 246, 246, 246, 247, 247, 248, 248, 248, 248, - 248, 248, 249, 249, 249, 250, 250, 251, 252, 253, - 254, 254, 254, 255, 256, 257, 258, 259, 260, 260, - 260, 260, 260, 261, 261, 261, 261, 261, 261, 261, - 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, - 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, - 261, 261, 261, 262, 263, 263, 263, 263, 263, 263, - 263, 263, 263, 263, 263, 263, 263, 263, 263, 263, - 263, 263, 263, 263, 264, 264, 265, 265, 266, 266, - 267, 268, 268, 269, 270, 270, 271, 271, 272, 272, - 273, 273, 274, 274, 275, 276, 276, 276, 276, 277, - 277, 278, 278, 279, 280, 280, 281, 281, 282, 282, - 283, 284, 285, 285, 286, 287, 287, 287, 287, 287, - 287, 287, 287, 287, 288, 288, 289, 289, 289, 289, - 290, 290, 291, 291, 292, 292, 293, 294, 295, 295, - 296, 296, 297, 298, 299, 299, 299, 300, 301, 301, - 302, 302, 303, 303, 303, 303, 304, 305, 305, 306, - 306, 307, 307, 307, 308, 309, 309, 310, 311, 312, - 313, 314, 315, 315, 316, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 326, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 328, 329, 329, 330, 330, 330, 330, 330, 330, 330, - 330, 331, 332, 332, 333, 334, 334, 334, 335, 336, - 337, 337, 338, 338, 339, 340, 340, 341, 342, 342, - 343, 344, 345, 345, 346, 346, 347, 347, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 349, 349, 349, - 349, 349, 349, 349, 349, 349, 349, 350, 351, 352, - 353, 353, 354, 354, 355, 355, 356, 356, 357, 358, - 359, 360, 360, 361, 362, 362, 363, 364, 365, 365, - 366, 367, 368, 368, 369, 369, 369, 369, 370, 371, - 372, 372, 373, 373, 373, 374, 375, 376, 377, 378, - 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 379, 379, 379, 379, - 379, 379, 379, 379, 379, 379, 379 + 0, 152, 153, 153, 154, 155, 156, 156, 156, 157, + 158, 158, 159, 160, 160, 161, 162, 162, 163, 163, + 163, 163, 163, 164, 164, 164, 164, 164, 165, 165, + 166, 167, 167, 167, 168, 168, 169, 170, 170, 170, + 171, 172, 173, 173, 173, 174, 175, 175, 175, 176, + 176, 177, 177, 178, 178, 179, 180, 181, 181, 181, + 182, 182, 183, 183, 184, 185, 185, 186, 186, 187, + 188, 189, 190, 190, 191, 191, 192, 192, 193, 193, + 194, 195, 196, 197, 197, 197, 197, 197, 198, 198, + 199, 199, 199, 199, 199, 200, 201, 202, 203, 204, + 205, 206, 206, 207, 207, 208, 208, 209, 209, 210, + 211, 212, 213, 213, 214, 214, 215, 215, 215, 216, + 217, 217, 217, 217, 217, 218, 218, 219, 219, 220, + 220, 221, 221, 222, 222, 223, 223, 223, 224, 225, + 226, 226, 226, 227, 228, 229, 229, 230, 230, 230, + 231, 232, 233, 233, 234, 234, 234, 234, 235, 235, + 236, 236, 237, 237, 237, 238, 238, 239, 239, 240, + 240, 241, 241, 242, 243, 244, 244, 244, 245, 245, + 246, 247, 247, 247, 248, 248, 249, 249, 249, 249, + 249, 249, 250, 250, 250, 251, 251, 252, 253, 254, + 255, 255, 255, 256, 257, 258, 259, 260, 261, 261, + 261, 261, 261, 262, 262, 262, 262, 262, 262, 262, + 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, + 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, + 262, 262, 262, 262, 263, 264, 264, 264, 264, 264, + 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, + 264, 264, 264, 264, 264, 265, 265, 266, 266, 267, + 267, 268, 269, 269, 270, 271, 271, 272, 272, 273, + 273, 274, 274, 275, 275, 276, 277, 277, 277, 277, + 278, 278, 279, 279, 280, 281, 281, 282, 282, 283, + 283, 284, 285, 286, 286, 287, 288, 288, 288, 288, + 288, 288, 288, 288, 288, 289, 289, 290, 290, 290, + 290, 291, 291, 292, 292, 293, 293, 294, 295, 296, + 296, 296, 297, 297, 298, 299, 300, 300, 300, 301, + 302, 302, 303, 303, 304, 304, 304, 304, 305, 306, + 306, 307, 307, 308, 308, 308, 309, 310, 310, 311, + 312, 313, 314, 315, 316, 316, 317, 317, 318, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 327, 328, + 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, + 328, 328, 329, 330, 330, 331, 331, 331, 331, 331, + 331, 331, 331, 332, 333, 333, 334, 335, 335, 335, + 336, 336, 337, 337, 338, 339, 339, 340, 341, 341, + 342, 343, 344, 344, 345, 345, 346, 346, 347, 347, + 347, 347, 347, 347, 347, 347, 347, 348, 348, 348, + 348, 348, 348, 348, 348, 348, 348, 349, 350, 351, + 352, 352, 353, 353, 354, 354, 355, 355, 356, 357, + 358, 359, 359, 360, 361, 361, 362, 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 }; const unsigned char @@ -8684,23 +8783,23 @@ 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, 2, 1, 1, 1, 1, 1, 1, - 1, 2, 1, 4, 1, 1, 1, 1, 3, 3, - 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, - 3, 1, 2, 1, 1, 1, 1, 4, 1, 3, - 4, 4, 1, 2, 4, 1, 4, 6, 2, 1, - 3, 1, 1, 1, 2, 5, 1, 3, 4, 4, - 2, 1, 3, 4, 1, 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, - 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, 2, 1, 1, 1, 1, 1, + 1, 1, 2, 1, 4, 1, 1, 1, 1, 3, + 3, 1, 1, 1, 1, 1, 1, 3, 3, 3, + 3, 3, 1, 2, 1, 1, 1, 1, 4, 1, + 3, 4, 4, 1, 2, 4, 1, 4, 6, 2, + 1, 3, 1, 1, 1, 2, 5, 1, 3, 4, + 4, 2, 1, 3, 4, 1, 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, 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, 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, @@ -8733,7 +8832,7 @@ namespace yy { "extended-true", "tstring", "extended-false", "objectreference", "objectsetreference", "typefieldreference", "valuefieldreference", "valuesetfieldreference", "objectfieldreference", - "objectsetfieldreference", "ABSENT", "ABSTRACT_SYNTAX", "ALL", + "objectsetfieldreference", "ABSENT", "ABSTRACT_SYNTAX", "ALL", "ANY", "APPLICATION", "ASN_NULL", "AUTOMATIC", "BEGIN", "BIT", "BMPString", "BOOLEAN", "BY", "CHARACTER", "CHOICE", "CLASS", "COMPONENT", "COMPONENTS", "CONSTRAINED", "CONTAINING", "DATE", "DATE_TIME", @@ -8811,13 +8910,12 @@ namespace yy { "DurationType", "CharacterStringType", "RestrictedCharacterStringType", "UnrestrictedCharacterStringType", "ConstrainedType", "TypeWithConstraint", "Constraint", "ConstraintSpec", - "SubtypeConstraint", "ElementSetSpecs", "RootElementSetSpec", - "AdditionalElementSetSpec", "ElementSetSpec", "Unions", "UElems", - "Intersections", "IElems", "IntersectionElements", "Elems", "Exclusions", - "UnionMark", "IntersectionMark", "Elements", "SubtypeElements", - "SingleValue", "ContainedSubtype", "Includes", "ValueRange", - "LowerEndpoint", "UpperEndpoint", "LowerEndValue", "UpperEndValue", - "SizeConstraint", "TypeConstraint", "PermittedAlphabet", + "SubtypeConstraint", "ElementSetSpecs", "ElementSetSpec", "Unions", + "UElems", "Intersections", "IElems", "IntersectionElements", "Elems", + "Exclusions", "UnionMark", "IntersectionMark", "Elements", + "SubtypeElements", "SingleValue", "ContainedSubtype", "Includes", + "ValueRange", "LowerEndpoint", "UpperEndpoint", "LowerEndValue", + "UpperEndValue", "SizeConstraint", "TypeConstraint", "PermittedAlphabet", "InnerTypeConstraints", "SingleTypeConstraint", "MultipleTypeConstraints", "FullSpecification", "PartialSpecification", "TypeConstraints", "NamedConstraint", "ComponentConstraint", @@ -8831,63 +8929,63 @@ namespace yy { const unsigned short int asn1_parser::yyrline_[] = { - 0, 307, 307, 308, 311, 326, 329, 330, 331, 334, - 337, 338, 341, 345, 346, 350, 353, 354, 357, 358, - 359, 360, 361, 364, 365, 366, 367, 368, 371, 372, - 375, 378, 379, 380, 383, 384, 387, 390, 391, 392, - 395, 398, 401, 402, 403, 406, 409, 410, 411, 417, - 418, 421, 422, 425, 426, 429, 432, 435, 436, 437, - 440, 441, 444, 445, 448, 454, 455, 460, 461, 464, - 467, 470, 473, 474, 477, 478, 481, 482, 486, 487, - 490, 493, 497, 500, 501, 502, 503, 504, 513, 514, - 520, 522, 524, 526, 528, 533, 537, 541, 545, 549, - 557, 561, 563, 567, 569, 573, 574, 577, 578, 593, - 605, 614, 621, 622, 626, 627, 630, 631, 632, 635, - 638, 639, 641, 642, 643, 646, 648, 652, 653, 656, - 657, 660, 661, 664, 665, 668, 669, 670, 681, 689, - 696, 697, 698, 701, 704, 708, 709, 713, 714, 715, - 718, 721, 725, 726, 729, 731, 733, 735, 739, 740, - 743, 745, 749, 750, 751, 754, 755, 758, 760, 763, - 765, 768, 770, 774, 778, 782, 783, 784, 787, 789, - 793, 797, 799, 801, 810, 812, 816, 818, 820, 822, - 825, 827, 831, 832, 834, 840, 842, 845, 849, 852, - 856, 858, 861, 871, 874, 899, 903, 907, 911, 913, - 915, 917, 919, 924, 925, 926, 927, 928, 929, 930, - 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, - 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, - 951, 952, 953, 956, 960, 962, 964, 966, 968, 970, - 972, 974, 976, 978, 980, 981, 983, 985, 987, 991, - 993, 995, 997, 999, 1003, 1005, 1009, 1010, 1013, 1014, - 1017, 1020, 1022, 1030, 1033, 1034, 1037, 1039, 1043, 1045, - 1049, 1051, 1055, 1057, 1061, 1065, 1068, 1071, 1075, 1078, - 1080, 1084, 1086, 1094, 1097, 1098, 1101, 1102, 1105, 1106, - 1120, 1123, 1126, 1128, 1136, 1140, 1142, 1144, 1146, 1148, - 1150, 1152, 1154, 1156, 1160, 1162, 1166, 1168, 1170, 1172, - 1183, 1185, 1189, 1191, 1195, 1197, 1201, 1205, 1209, 1211, - 1215, 1217, 1224, 1227, 1231, 1233, 1235, 1239, 1243, 1244, - 1247, 1249, 1252, 1254, 1256, 1258, 1268, 1271, 1273, 1277, - 1279, 1283, 1285, 1287, 1291, 1295, 1297, 1300, 1304, 1316, - 1319, 1325, 1328, 1329, 1332, 1333, 1336, 1342, 1349, 1355, - 1358, 1361, 1364, 1367, 1370, 1373, 1374, 1377, 1378, 1379, - 1380, 1381, 1382, 1383, 1384, 1385, 1386, 1387, 1388, 1389, - 1393, 1396, 1398, 1401, 1402, 1403, 1404, 1405, 1406, 1407, - 1408, 1411, 1414, 1415, 1418, 1421, 1422, 1423, 1426, 1429, - 1432, 1433, 1436, 1437, 1440, 1443, 1444, 1447, 1450, 1451, - 1454, 1457, 1460, 1461, 1464, 1465, 1468, 1470, 1473, 1474, - 1475, 1476, 1477, 1478, 1479, 1480, 1481, 1487, 1489, 1490, - 1491, 1492, 1493, 1494, 1495, 1496, 1497, 1500, 1503, 1506, - 1509, 1510, 1513, 1514, 1517, 1518, 1521, 1522, 1525, 1528, - 1531, 1534, 1535, 1538, 1541, 1542, 1545, 1548, 1551, 1552, - 1555, 1558, 1561, 1562, 1565, 1566, 1567, 1568, 1571, 1574, - 1577, 1578, 1581, 1582, 1583, 1586, 1590, 1594, 1598, 1602, - 1606, 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, - 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623, 1624, 1625, - 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, - 1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645, - 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, 1655, - 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, 1664, 1665, - 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, - 1676, 1677, 1678, 1679, 1680, 1681, 1682 + 0, 309, 309, 310, 313, 328, 331, 332, 333, 336, + 339, 340, 343, 347, 348, 352, 355, 356, 359, 360, + 361, 362, 363, 366, 367, 368, 369, 370, 373, 374, + 377, 380, 381, 382, 385, 386, 389, 392, 393, 394, + 397, 400, 403, 404, 405, 408, 411, 412, 413, 419, + 420, 423, 424, 427, 428, 431, 434, 437, 438, 439, + 442, 443, 446, 447, 450, 456, 457, 462, 463, 466, + 469, 472, 475, 476, 479, 480, 483, 484, 488, 489, + 492, 495, 499, 502, 503, 504, 505, 506, 515, 516, + 522, 524, 526, 528, 530, 535, 539, 543, 547, 551, + 559, 563, 565, 569, 571, 575, 576, 579, 580, 595, + 607, 616, 623, 624, 628, 629, 632, 633, 634, 637, + 640, 641, 643, 644, 645, 648, 650, 654, 655, 658, + 659, 662, 663, 666, 667, 670, 671, 672, 683, 691, + 698, 699, 700, 703, 706, 710, 711, 715, 716, 717, + 720, 723, 727, 728, 731, 733, 735, 737, 741, 742, + 745, 747, 751, 752, 753, 756, 757, 760, 762, 765, + 767, 770, 772, 776, 780, 784, 785, 786, 789, 791, + 795, 799, 801, 803, 812, 814, 818, 820, 822, 824, + 827, 829, 833, 834, 836, 842, 844, 847, 851, 854, + 858, 860, 863, 873, 876, 901, 905, 909, 913, 915, + 917, 919, 921, 926, 927, 928, 929, 930, 931, 932, + 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, + 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, + 953, 954, 955, 956, 959, 963, 965, 967, 969, 971, + 973, 975, 977, 979, 981, 983, 984, 986, 988, 990, + 994, 996, 998, 1000, 1002, 1006, 1008, 1012, 1013, 1016, + 1017, 1020, 1023, 1025, 1033, 1036, 1037, 1040, 1042, 1046, + 1048, 1052, 1054, 1058, 1060, 1064, 1068, 1071, 1074, 1078, + 1081, 1083, 1087, 1089, 1097, 1100, 1101, 1104, 1105, 1108, + 1109, 1123, 1126, 1129, 1131, 1139, 1143, 1145, 1147, 1149, + 1151, 1153, 1155, 1157, 1159, 1163, 1165, 1169, 1171, 1173, + 1175, 1186, 1188, 1192, 1194, 1198, 1200, 1204, 1208, 1212, + 1214, 1216, 1220, 1222, 1229, 1232, 1236, 1238, 1240, 1244, + 1248, 1249, 1252, 1254, 1257, 1259, 1261, 1263, 1273, 1276, + 1278, 1282, 1284, 1288, 1290, 1292, 1296, 1300, 1302, 1305, + 1309, 1321, 1324, 1330, 1333, 1334, 1337, 1338, 1341, 1347, + 1354, 1360, 1363, 1366, 1369, 1372, 1375, 1378, 1379, 1382, + 1383, 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, + 1393, 1394, 1398, 1401, 1403, 1407, 1409, 1411, 1413, 1415, + 1417, 1419, 1421, 1425, 1428, 1429, 1432, 1435, 1436, 1437, + 1440, 1441, 1444, 1445, 1448, 1451, 1452, 1455, 1458, 1459, + 1462, 1465, 1468, 1469, 1472, 1473, 1476, 1478, 1481, 1482, + 1483, 1484, 1485, 1486, 1487, 1488, 1489, 1495, 1497, 1498, + 1499, 1500, 1501, 1502, 1503, 1504, 1505, 1508, 1511, 1514, + 1517, 1518, 1521, 1522, 1525, 1526, 1529, 1530, 1533, 1536, + 1539, 1542, 1543, 1546, 1549, 1550, 1553, 1556, 1559, 1560, + 1563, 1566, 1569, 1570, 1573, 1574, 1575, 1576, 1579, 1582, + 1585, 1586, 1589, 1590, 1591, 1594, 1598, 1602, 1606, 1610, + 1614, 1615, 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623, + 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, + 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, + 1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653, + 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, + 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, + 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, + 1684, 1685, 1686, 1687, 1688, 1689, 1690 }; // Print the state stack on the debug stream. @@ -8922,8 +9020,8 @@ namespace yy { } // yy -#line 8924 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 -#line 1684 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 +#line 9022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 +#line 1692 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 @@ -8936,7 +9034,7 @@ namespace yy { context.location.step(); // Lexer -#line 8940 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9038 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -9002,6 +9100,7 @@ namespace yy { case 'W': goto yy60; case '[': goto yy61; case ']': goto yy63; + case '^': goto yy65; case 'a': case 'b': case 'c': @@ -9027,33 +9126,33 @@ namespace yy { case 'w': case 'x': case 'y': - case 'z': goto yy65; - case '{': goto yy68; - case '|': goto yy70; - case '}': goto yy72; + case 'z': goto yy67; + case '{': goto yy70; + case '|': goto yy72; + case '}': goto yy74; default: goto yy4; } yy2: ++context.cursor; -#line 9054 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9153 "/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 9041 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 9079 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9180 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } -#line 9047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 9058 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9157 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 9052 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 9057 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 9057 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -9062,15 +9161,15 @@ namespace yy { } yy11: ++context.cursor; -#line 9076 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9175 "/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 9068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { - case '"': goto yy74; - case '\'': goto yy76; - case '\\': goto yy77; + case '"': goto yy76; + case '\'': goto yy78; + case '\\': goto yy79; default: goto yy13; } yy15: @@ -9101,7 +9200,7 @@ namespace yy { case 'W': case 'X': case 'Y': - case 'Z': goto yy79; + case 'Z': goto yy81; case 'a': case 'b': case 'c': @@ -9127,58 +9226,58 @@ namespace yy { case 'w': case 'x': case 'y': - case 'z': goto yy82; + case 'z': goto yy84; default: goto yy5; } yy16: yych = *++context.cursor; switch (yych) { - case '"': goto yy74; - case '\'': goto yy85; + case '"': goto yy76; + case '\'': goto yy87; case '0': case '1': goto yy16; - case '\\': goto yy77; + case '\\': goto yy79; default: goto yy13; } yy18: ++context.cursor; -#line 9066 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9165 "/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 9148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9247 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 9067 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9166 "/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 9153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 9072 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9171 "/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 9158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { - case '-': goto yy86; + case '-': goto yy88; default: goto yy25; } yy25: -#line 9073 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9172 "/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 9168 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9267 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { - case '.': goto yy89; + case '.': goto yy91; default: goto yy27; } yy27: -#line 9074 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9173 "/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 9178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { - case '*': goto yy91; + case '*': goto yy93; default: goto yy5; } yy29: @@ -9197,94 +9296,95 @@ namespace yy { default: goto yy31; } yy31: -#line 9043 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9142 "/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 9203 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy32: yyaccept = 0; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case ':': goto yy93; + case ':': goto yy95; default: goto yy33; } yy33: -#line 9070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9169 "/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 9214 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9313 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 9071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9170 "/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 9219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9318 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 9077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9176 "/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 9224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9323 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 9078 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9179 "/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 9229 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy40: yych = *++context.cursor; switch (yych) { - case 'B': goto yy95; - case 'L': goto yy96; - case 'P': goto yy97; - case 'U': goto yy98; + case 'B': goto yy97; + case 'L': goto yy98; + case 'N': goto yy99; + case 'P': goto yy100; + case 'U': goto yy101; default: goto yy49; } yy41: -#line 9048 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9147 "/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 9242 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9342 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy42: yych = *++context.cursor; switch (yych) { - case 'E': goto yy99; - case 'I': goto yy100; - case 'M': goto yy101; - case 'O': goto yy102; - case 'Y': goto yy103; + case 'E': goto yy102; + case 'I': goto yy103; + case 'M': goto yy104; + case 'O': goto yy105; + case 'Y': goto yy106; default: goto yy49; } yy43: yych = *++context.cursor; switch (yych) { - case 'H': goto yy105; - case 'L': goto yy106; - case 'O': goto yy107; + case 'H': goto yy108; + case 'L': goto yy109; + case 'O': goto yy110; default: goto yy49; } yy44: yych = *++context.cursor; switch (yych) { - case 'A': goto yy108; - case 'E': goto yy109; - case 'U': goto yy110; + case 'A': goto yy111; + case 'E': goto yy112; + case 'U': goto yy113; default: goto yy49; } yy45: yych = *++context.cursor; switch (yych) { - case 'M': goto yy111; - case 'N': goto yy112; - case 'X': goto yy113; + case 'M': goto yy114; + case 'N': goto yy115; + case 'X': goto yy116; default: goto yy49; } yy46: yych = *++context.cursor; switch (yych) { - case 'A': goto yy114; - case 'R': goto yy115; + case 'A': goto yy117; + case 'R': goto yy118; default: goto yy49; } yy47: yych = *++context.cursor; switch (yych) { - case 'e': goto yy116; - case 'r': goto yy117; + case 'e': goto yy119; + case 'r': goto yy120; default: goto yy49; } yy48: @@ -9360,106 +9460,111 @@ namespace yy { yy50: yych = *++context.cursor; switch (yych) { - case 'A': goto yy118; - case 'D': goto yy119; - case 'M': goto yy120; - case 'N': goto yy121; - case 'S': goto yy122; + case 'A': goto yy121; + case 'D': goto yy122; + case 'M': goto yy123; + case 'N': goto yy124; + case 'S': goto yy125; default: goto yy49; } yy51: yych = *++context.cursor; switch (yych) { - case 'A': goto yy123; - case 'I': goto yy124; + case 'A': goto yy126; + case 'I': goto yy127; default: goto yy49; } yy52: yych = *++context.cursor; switch (yych) { - case 'O': goto yy125; - case 'U': goto yy126; - case 'u': goto yy127; + case 'O': goto yy128; + case 'U': goto yy129; + case 'u': goto yy130; default: goto yy49; } yy53: yych = *++context.cursor; switch (yych) { - case 'B': goto yy128; - case 'C': goto yy129; - case 'F': goto yy130; - case 'I': goto yy132; - case 'P': goto yy133; - case 'b': goto yy134; + case 'B': goto yy131; + case 'C': goto yy132; + case 'F': goto yy133; + case 'I': goto yy135; + case 'P': goto yy136; + case 'b': goto yy137; default: goto yy49; } yy54: yych = *++context.cursor; switch (yych) { - case 'A': goto yy135; - case 'D': goto yy136; - case 'L': goto yy137; - case 'R': goto yy138; - case 'r': goto yy139; + case 'A': goto yy138; + case 'D': goto yy139; + case 'L': goto yy140; + case 'R': goto yy141; + case 'r': goto yy142; default: goto yy49; } yy55: yych = *++context.cursor; switch (yych) { - case 'E': goto yy140; + case 'E': goto yy143; default: goto yy49; } yy56: yych = *++context.cursor; switch (yych) { - case 'E': goto yy141; - case 'I': goto yy142; - case 'T': goto yy143; - case 'Y': goto yy144; + case 'E': goto yy144; + case 'I': goto yy145; + case 'T': goto yy146; + case 'Y': goto yy147; default: goto yy49; } yy57: yych = *++context.cursor; switch (yych) { - case '6': goto yy145; - case 'A': goto yy146; - case 'I': goto yy147; - case 'R': goto yy148; - case 'Y': goto yy149; - case 'e': goto yy150; + case '6': goto yy148; + case 'A': goto yy149; + case 'I': goto yy150; + case 'R': goto yy151; + case 'Y': goto yy152; + case 'e': goto yy153; default: goto yy49; } yy58: yych = *++context.cursor; switch (yych) { - case 'N': goto yy151; - case 'T': goto yy152; - case 'n': goto yy153; + case 'N': goto yy154; + case 'T': goto yy155; + case 'n': goto yy156; default: goto yy49; } yy59: yych = *++context.cursor; switch (yych) { - case 'i': goto yy154; + case 'i': goto yy157; default: goto yy49; } yy60: yych = *++context.cursor; switch (yych) { - case 'I': goto yy155; + case 'I': goto yy158; default: goto yy49; } yy61: ++context.cursor; -#line 9068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9167 "/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 9457 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 9069 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9168 "/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 9462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy65: + ++context.cursor; +#line 9177 "/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 9567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy67: yych = *++context.cursor; switch (yych) { case '-': @@ -9525,49 +9630,49 @@ namespace yy { case 'w': case 'x': case 'y': - case 'z': goto yy65; - default: goto yy67; + case 'z': goto yy67; + default: goto yy69; } -yy67: -#line 9049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy69: +#line 9148 "/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 9535 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy68: +#line 9640 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy70: ++context.cursor; -#line 9064 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9163 "/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 9540 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy70: +#line 9645 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy72: ++context.cursor; -#line 9075 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9174 "/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 9545 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy72: +#line 9650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy74: ++context.cursor; -#line 9065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9164 "/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 9550 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy74: +#line 9655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy76: yych = *++context.cursor; switch (yych) { case '"': goto yy13; - default: goto yy75; + default: goto yy77; } -yy75: -#line 9045 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy77: +#line 9144 "/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 9560 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy76: +#line 9665 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy78: ++context.cursor; - goto yy75; -yy77: + goto yy77; +yy79: yych = *++context.cursor; switch (yych) { - case '"': goto yy156; - case '\\': goto yy77; + case '"': goto yy159; + case '\\': goto yy79; default: goto yy13; } -yy79: +yy81: yych = *++context.cursor; switch (yych) { case '-': @@ -9633,14 +9738,14 @@ namespace yy { case 'w': case 'x': case 'y': - case 'z': goto yy79; - default: goto yy81; + case 'z': goto yy81; + default: goto yy83; } -yy81: -#line 9050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy83: +#line 9149 "/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 9643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy82: +#line 9748 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy84: yych = *++context.cursor; switch (yych) { case '-': @@ -9706,110 +9811,116 @@ namespace yy { case 'w': case 'x': case 'y': - case 'z': goto yy82; - default: goto yy84; + case 'z': goto yy84; + default: goto yy86; } -yy84: -#line 9051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy86: +#line 9150 "/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 9716 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy85: +#line 9821 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy87: yych = *++context.cursor; switch (yych) { - case 'B': goto yy158; - default: goto yy75; + case 'B': goto yy161; + default: goto yy77; } -yy86: +yy88: yyaccept = 1; yych = *(YYMARKER = ++context.cursor); switch (yych) { case '\n': - case '\r': goto yy88; - case '-': goto yy160; - default: goto yy86; + case '\r': goto yy90; + case '-': goto yy163; + default: goto yy88; } -yy88: -#line 9037 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy90: +#line 9136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 9735 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy89: +#line 9840 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy91: yych = *++context.cursor; switch (yych) { - case '.': goto yy161; - default: goto yy90; + case '.': goto yy164; + default: goto yy92; } -yy90: -#line 9063 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy92: +#line 9162 "/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 9745 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy91: +#line 9850 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy93: yych = *++context.cursor; switch (yych) { - case '*': goto yy163; - default: goto yy91; + case '*': goto yy166; + default: goto yy93; } -yy93: +yy95: yych = *++context.cursor; switch (yych) { - case '=': goto yy164; - default: goto yy94; + case '=': goto yy167; + default: goto yy96; } -yy94: +yy96: context.cursor = YYMARKER; if (yyaccept == 0) { goto yy33; } else { - goto yy88; + goto yy90; } -yy95: +yy97: yych = *++context.cursor; switch (yych) { - case 'S': goto yy166; + case 'S': goto yy169; default: goto yy49; } -yy96: +yy98: yych = *++context.cursor; switch (yych) { - case 'L': goto yy167; + case 'L': goto yy170; default: goto yy49; } -yy97: +yy99: yych = *++context.cursor; switch (yych) { - case 'P': goto yy169; + case 'Y': goto yy172; default: goto yy49; } -yy98: +yy100: yych = *++context.cursor; switch (yych) { - case 'T': goto yy170; + case 'P': goto yy174; default: goto yy49; } -yy99: +yy101: yych = *++context.cursor; switch (yych) { - case 'G': goto yy171; + case 'T': goto yy175; default: goto yy49; } -yy100: +yy102: yych = *++context.cursor; switch (yych) { - case 'T': goto yy172; + case 'G': goto yy176; default: goto yy49; } -yy101: +yy103: yych = *++context.cursor; switch (yych) { - case 'P': goto yy174; + case 'T': goto yy177; default: goto yy49; } -yy102: +yy104: yych = *++context.cursor; switch (yych) { - case 'O': goto yy175; + case 'P': goto yy179; default: goto yy49; } -yy103: +yy105: + yych = *++context.cursor; + switch (yych) { + case 'O': goto yy180; + default: goto yy49; + } +yy106: yych = *++context.cursor; switch (yych) { case '-': @@ -9876,171 +9987,171 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy104; - } -yy104: -#line 8951 "/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 9885 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy105: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy176; - case 'O': goto yy177; - default: goto yy49; - } -yy106: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy178; - default: goto yy49; + default: goto yy107; } yy107: - yych = *++context.cursor; - switch (yych) { - case 'M': goto yy179; - case 'N': goto yy180; - default: goto yy49; - } +#line 9050 "/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 9996 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy108: yych = *++context.cursor; switch (yych) { - case 'T': goto yy181; + case 'A': goto yy181; + case 'O': goto yy182; default: goto yy49; } yy109: yych = *++context.cursor; switch (yych) { - case 'F': goto yy182; + case 'A': goto yy183; default: goto yy49; } yy110: yych = *++context.cursor; switch (yych) { - case 'R': goto yy183; + case 'M': goto yy184; + case 'N': goto yy185; default: goto yy49; } yy111: yych = *++context.cursor; switch (yych) { - case 'B': goto yy184; + case 'T': goto yy186; default: goto yy49; } yy112: yych = *++context.cursor; switch (yych) { - case 'C': goto yy185; - case 'D': goto yy186; - case 'U': goto yy188; + case 'F': goto yy187; default: goto yy49; } yy113: yych = *++context.cursor; switch (yych) { - case 'C': goto yy189; - case 'P': goto yy190; - case 'T': goto yy191; + case 'R': goto yy188; default: goto yy49; } yy114: yych = *++context.cursor; switch (yych) { - case 'L': goto yy192; + case 'B': goto yy189; default: goto yy49; } yy115: yych = *++context.cursor; switch (yych) { - case 'O': goto yy193; + case 'C': goto yy190; + case 'D': goto yy191; + case 'U': goto yy193; default: goto yy49; } yy116: yych = *++context.cursor; switch (yych) { - case 'n': goto yy194; + case 'C': goto yy194; + case 'P': goto yy195; + case 'T': goto yy196; default: goto yy49; } yy117: yych = *++context.cursor; switch (yych) { - case 'a': goto yy195; + case 'L': goto yy197; default: goto yy49; } yy118: yych = *++context.cursor; switch (yych) { - case '5': goto yy196; + case 'O': goto yy198; default: goto yy49; } yy119: yych = *++context.cursor; switch (yych) { - case 'E': goto yy197; + case 'n': goto yy199; default: goto yy49; } yy120: yych = *++context.cursor; switch (yych) { - case 'P': goto yy198; + case 'a': goto yy200; default: goto yy49; } yy121: yych = *++context.cursor; switch (yych) { - case 'C': goto yy199; - case 'S': goto yy200; - case 'T': goto yy201; + case '5': goto yy201; default: goto yy49; } yy122: yych = *++context.cursor; switch (yych) { - case 'O': goto yy202; + case 'E': goto yy202; default: goto yy49; } yy123: yych = *++context.cursor; switch (yych) { - case 'X': goto yy203; + case 'P': goto yy203; default: goto yy49; } yy124: yych = *++context.cursor; switch (yych) { - case 'N': goto yy205; + case 'C': goto yy204; + case 'S': goto yy205; + case 'T': goto yy206; default: goto yy49; } yy125: yych = *++context.cursor; switch (yych) { - case 'T': goto yy207; + case 'O': goto yy207; default: goto yy49; } yy126: yych = *++context.cursor; switch (yych) { - case 'L': goto yy208; + case 'X': goto yy208; default: goto yy49; } yy127: yych = *++context.cursor; switch (yych) { - case 'm': goto yy209; + case 'N': goto yy210; default: goto yy49; } yy128: yych = *++context.cursor; switch (yych) { - case 'J': goto yy210; + case 'T': goto yy212; default: goto yy49; } yy129: yych = *++context.cursor; switch (yych) { - case 'T': goto yy211; + case 'L': goto yy213; default: goto yy49; } yy130: + yych = *++context.cursor; + switch (yych) { + case 'm': goto yy214; + default: goto yy49; + } +yy131: + yych = *++context.cursor; + switch (yych) { + case 'J': goto yy215; + default: goto yy49; + } +yy132: + yych = *++context.cursor; + switch (yych) { + case 'T': goto yy216; + default: goto yy49; + } +yy133: yych = *++context.cursor; switch (yych) { case '-': @@ -10107,206 +10218,206 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy131; + default: goto yy134; } -yy131: -#line 8999 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy134: +#line 9098 "/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 10116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy132: +#line 10227 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy135: yych = *++context.cursor; switch (yych) { - case 'D': goto yy212; - default: goto yy49; - } -yy133: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy213; - default: goto yy49; - } -yy134: - yych = *++context.cursor; - switch (yych) { - case 'j': goto yy214; - default: goto yy49; - } -yy135: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy215; + case 'D': goto yy217; default: goto yy49; } yy136: yych = *++context.cursor; switch (yych) { - case 'V': goto yy216; + case 'T': goto yy218; default: goto yy49; } yy137: yych = *++context.cursor; switch (yych) { - case 'U': goto yy218; + case 'j': goto yy219; default: goto yy49; } yy138: yych = *++context.cursor; switch (yych) { - case 'E': goto yy219; - case 'I': goto yy220; + case 'T': goto yy220; default: goto yy49; } yy139: yych = *++context.cursor; switch (yych) { - case 'i': goto yy221; + case 'V': goto yy221; default: goto yy49; } yy140: yych = *++context.cursor; switch (yych) { - case 'A': goto yy222; - case 'L': goto yy223; + case 'U': goto yy223; default: goto yy49; } yy141: yych = *++context.cursor; switch (yych) { - case 'Q': goto yy224; - case 'T': goto yy225; + case 'E': goto yy224; + case 'I': goto yy225; default: goto yy49; } yy142: yych = *++context.cursor; switch (yych) { - case 'Z': goto yy227; + case 'i': goto yy226; default: goto yy49; } yy143: yych = *++context.cursor; switch (yych) { - case 'R': goto yy228; + case 'A': goto yy227; + case 'L': goto yy228; default: goto yy49; } yy144: yych = *++context.cursor; switch (yych) { - case 'N': goto yy229; + case 'Q': goto yy229; + case 'T': goto yy230; default: goto yy49; } yy145: yych = *++context.cursor; switch (yych) { - case '1': goto yy230; + case 'Z': goto yy232; default: goto yy49; } yy146: yych = *++context.cursor; switch (yych) { - case 'G': goto yy231; + case 'R': goto yy233; default: goto yy49; } yy147: yych = *++context.cursor; switch (yych) { - case 'M': goto yy232; + case 'N': goto yy234; default: goto yy49; } yy148: yych = *++context.cursor; switch (yych) { - case 'U': goto yy233; + case '1': goto yy235; default: goto yy49; } yy149: yych = *++context.cursor; switch (yych) { - case 'P': goto yy234; + case 'G': goto yy236; default: goto yy49; } yy150: yych = *++context.cursor; switch (yych) { - case 'l': goto yy235; + case 'M': goto yy237; default: goto yy49; } yy151: yych = *++context.cursor; switch (yych) { - case 'I': goto yy236; + case 'U': goto yy238; default: goto yy49; } yy152: yych = *++context.cursor; switch (yych) { - case 'C': goto yy237; - case 'F': goto yy238; + case 'P': goto yy239; default: goto yy49; } yy153: yych = *++context.cursor; switch (yych) { - case 'i': goto yy239; + case 'l': goto yy240; default: goto yy49; } yy154: yych = *++context.cursor; switch (yych) { - case 'd': goto yy240; - case 's': goto yy241; + case 'I': goto yy241; default: goto yy49; } yy155: yych = *++context.cursor; switch (yych) { - case 'T': goto yy242; + case 'C': goto yy242; + case 'F': goto yy243; default: goto yy49; } yy156: yych = *++context.cursor; switch (yych) { - case '"': goto yy156; - case '\'': goto yy76; - case '\\': goto yy77; - default: goto yy13; + case 'i': goto yy244; + default: goto yy49; + } +yy157: + yych = *++context.cursor; + switch (yych) { + case 'd': goto yy245; + case 's': goto yy246; + default: goto yy49; } yy158: + yych = *++context.cursor; + switch (yych) { + case 'T': goto yy247; + default: goto yy49; + } +yy159: + yych = *++context.cursor; + switch (yych) { + case '"': goto yy159; + case '\'': goto yy78; + case '\\': goto yy79; + default: goto yy13; + } +yy161: ++context.cursor; -#line 9047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9146 "/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, context.cursor), context.location); } -#line 10278 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy160: +#line 10389 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy163: yych = *++context.cursor; switch (yych) { case '\n': - case '\r': goto yy94; - case '-': goto yy243; - default: goto yy86; + case '\r': goto yy96; + case '-': goto yy248; + default: goto yy88; } -yy161: +yy164: ++context.cursor; -#line 9062 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9161 "/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 10291 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy163: +#line 10402 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy166: yych = *++context.cursor; switch (yych) { - case '/': goto yy245; - default: goto yy91; + case '/': goto yy250; + default: goto yy93; } -yy164: +yy167: ++context.cursor; -#line 9061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9160 "/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 10302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy166: +#line 10413 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy169: yych = *++context.cursor; switch (yych) { - case 'E': goto yy247; - case 'T': goto yy248; + case 'E': goto yy252; + case 'T': goto yy253; default: goto yy49; } -yy167: +yy170: yych = *++context.cursor; switch (yych) { case '-': @@ -10373,31 +10484,104 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy168; + default: goto yy171; } -yy168: -#line 8944 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy171: +#line 9042 "/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 10382 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy169: +#line 10493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy172: yych = *++context.cursor; switch (yych) { - case 'L': goto yy249; + case '-': + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + default: goto yy173; + } +yy173: +#line 9043 "/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 10566 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy174: + yych = *++context.cursor; + switch (yych) { + case 'L': goto yy254; default: goto yy49; } -yy170: +yy175: yych = *++context.cursor; switch (yych) { - case 'O': goto yy250; + case 'O': goto yy255; default: goto yy49; } -yy171: +yy176: yych = *++context.cursor; switch (yych) { - case 'I': goto yy251; + case 'I': goto yy256; default: goto yy49; } -yy172: +yy177: yych = *++context.cursor; switch (yych) { case '-': @@ -10464,87 +10648,87 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy173; + default: goto yy178; } -yy173: -#line 8948 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy178: +#line 9047 "/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 10473 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy174: +#line 10657 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy179: yych = *++context.cursor; switch (yych) { - case 'S': goto yy252; + case 'S': goto yy257; default: goto yy49; } -yy175: +yy180: yych = *++context.cursor; switch (yych) { - case 'L': goto yy253; + case 'L': goto yy258; default: goto yy49; } -yy176: +yy181: yych = *++context.cursor; switch (yych) { - case 'R': goto yy254; + case 'R': goto yy259; default: goto yy49; } -yy177: +yy182: yych = *++context.cursor; switch (yych) { - case 'I': goto yy255; + case 'I': goto yy260; default: goto yy49; } -yy178: +yy183: yych = *++context.cursor; switch (yych) { - case 'S': goto yy256; + case 'S': goto yy261; default: goto yy49; } -yy179: +yy184: yych = *++context.cursor; switch (yych) { - case 'P': goto yy257; + case 'P': goto yy262; default: goto yy49; } -yy180: +yy185: yych = *++context.cursor; switch (yych) { - case 'S': goto yy258; - case 'T': goto yy259; + case 'S': goto yy263; + case 'T': goto yy264; default: goto yy49; } -yy181: +yy186: yych = *++context.cursor; switch (yych) { - case 'E': goto yy260; + case 'E': goto yy265; default: goto yy49; } -yy182: +yy187: yych = *++context.cursor; switch (yych) { - case 'A': goto yy262; - case 'I': goto yy263; + case 'A': goto yy267; + case 'I': goto yy268; default: goto yy49; } -yy183: +yy188: yych = *++context.cursor; switch (yych) { - case 'A': goto yy264; + case 'A': goto yy269; default: goto yy49; } -yy184: +yy189: yych = *++context.cursor; switch (yych) { - case 'E': goto yy265; + case 'E': goto yy270; default: goto yy49; } -yy185: +yy190: yych = *++context.cursor; switch (yych) { - case 'O': goto yy266; + case 'O': goto yy271; default: goto yy49; } -yy186: +yy191: yych = *++context.cursor; switch (yych) { case '-': @@ -10611,105 +10795,105 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy187; + default: goto yy192; } -yy187: -#line 8967 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy192: +#line 9066 "/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 10620 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy188: +#line 10804 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy193: yych = *++context.cursor; switch (yych) { - case 'M': goto yy267; + case 'M': goto yy272; default: goto yy49; } -yy189: +yy194: yych = *++context.cursor; switch (yych) { - case 'E': goto yy268; + case 'E': goto yy273; default: goto yy49; } -yy190: +yy195: yych = *++context.cursor; switch (yych) { - case 'L': goto yy269; - case 'O': goto yy270; + case 'L': goto yy274; + case 'O': goto yy275; default: goto yy49; } -yy191: +yy196: yych = *++context.cursor; switch (yych) { - case 'E': goto yy271; + case 'E': goto yy276; default: goto yy49; } -yy192: +yy197: yych = *++context.cursor; switch (yych) { - case 'S': goto yy272; + case 'S': goto yy277; default: goto yy49; } -yy193: +yy198: yych = *++context.cursor; switch (yych) { - case 'M': goto yy273; + case 'M': goto yy278; default: goto yy49; } -yy194: +yy199: yych = *++context.cursor; switch (yych) { - case 'e': goto yy275; + case 'e': goto yy280; default: goto yy49; } -yy195: +yy200: yych = *++context.cursor; switch (yych) { - case 'p': goto yy276; + case 'p': goto yy281; default: goto yy49; } -yy196: +yy201: yych = *++context.cursor; switch (yych) { - case 'S': goto yy277; + case 'S': goto yy282; default: goto yy49; } -yy197: +yy202: yych = *++context.cursor; switch (yych) { - case 'N': goto yy278; + case 'N': goto yy283; default: goto yy49; } -yy198: +yy203: yych = *++context.cursor; switch (yych) { - case 'L': goto yy279; - case 'O': goto yy280; + case 'L': goto yy284; + case 'O': goto yy285; default: goto yy49; } -yy199: +yy204: yych = *++context.cursor; switch (yych) { - case 'L': goto yy281; + case 'L': goto yy286; default: goto yy49; } -yy200: +yy205: yych = *++context.cursor; switch (yych) { - case 'T': goto yy282; + case 'T': goto yy287; default: goto yy49; } -yy201: +yy206: yych = *++context.cursor; switch (yych) { - case 'E': goto yy283; + case 'E': goto yy288; default: goto yy49; } -yy202: +yy207: yych = *++context.cursor; switch (yych) { - case '6': goto yy284; + case '6': goto yy289; default: goto yy49; } -yy203: +yy208: yych = *++context.cursor; switch (yych) { case '-': @@ -10776,13 +10960,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy204; + default: goto yy209; } -yy204: -#line 8990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy209: +#line 9089 "/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 10785 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy205: +#line 10969 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy210: yych = *++context.cursor; switch (yych) { case '-': @@ -10848,68 +11032,68 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'U': goto yy285; - default: goto yy206; + case 'U': goto yy290; + default: goto yy211; } -yy206: -#line 8991 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy211: +#line 9090 "/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 10858 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy207: +#line 11042 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy212: yych = *++context.cursor; switch (yych) { - case '-': goto yy286; + case '-': goto yy291; default: goto yy49; } -yy208: +yy213: yych = *++context.cursor; switch (yych) { - case 'L': goto yy287; + case 'L': goto yy292; default: goto yy49; } -yy209: +yy214: yych = *++context.cursor; switch (yych) { - case 'e': goto yy289; + case 'e': goto yy294; default: goto yy49; } -yy210: +yy215: yych = *++context.cursor; switch (yych) { - case 'E': goto yy290; + case 'E': goto yy295; default: goto yy49; } -yy211: +yy216: yych = *++context.cursor; switch (yych) { - case 'E': goto yy291; + case 'E': goto yy296; default: goto yy49; } -yy212: +yy217: yych = *++context.cursor; switch (yych) { - case '_': goto yy292; + case '_': goto yy297; default: goto yy49; } -yy213: +yy218: yych = *++context.cursor; switch (yych) { - case 'I': goto yy293; + case 'I': goto yy298; default: goto yy49; } -yy214: +yy219: yych = *++context.cursor; switch (yych) { - case 'e': goto yy294; + case 'e': goto yy299; default: goto yy49; } -yy215: +yy220: yych = *++context.cursor; switch (yych) { - case 'T': goto yy295; + case 'T': goto yy300; default: goto yy49; } -yy216: +yy221: yych = *++context.cursor; switch (yych) { case '-': @@ -10976,55 +11160,55 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy217; + default: goto yy222; } -yy217: -#line 9003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy222: +#line 9102 "/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 10985 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy218: +#line 11169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy223: yych = *++context.cursor; switch (yych) { - case 'S': goto yy296; + case 'S': goto yy301; default: goto yy49; } -yy219: +yy224: yych = *++context.cursor; switch (yych) { - case 'S': goto yy297; + case 'S': goto yy302; default: goto yy49; } -yy220: +yy225: yych = *++context.cursor; switch (yych) { - case 'V': goto yy298; + case 'V': goto yy303; default: goto yy49; } -yy221: +yy226: yych = *++context.cursor; switch (yych) { - case 'n': goto yy299; + case 'n': goto yy304; default: goto yy49; } -yy222: +yy227: yych = *++context.cursor; switch (yych) { - case 'L': goto yy300; + case 'L': goto yy305; default: goto yy49; } -yy223: +yy228: yych = *++context.cursor; switch (yych) { - case 'A': goto yy302; + case 'A': goto yy307; default: goto yy49; } -yy224: +yy229: yych = *++context.cursor; switch (yych) { - case 'U': goto yy303; + case 'U': goto yy308; default: goto yy49; } -yy225: +yy230: yych = *++context.cursor; switch (yych) { case '-': @@ -11090,203 +11274,203 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'T': goto yy304; - default: goto yy226; + case 'T': goto yy309; + default: goto yy231; } -yy226: -#line 9012 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy231: +#line 9111 "/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 11100 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy227: +#line 11284 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy232: yych = *++context.cursor; switch (yych) { - case 'E': goto yy305; + case 'E': goto yy310; default: goto yy49; } -yy228: +yy233: yych = *++context.cursor; switch (yych) { - case 'I': goto yy307; + case 'I': goto yy312; default: goto yy49; } -yy229: +yy234: yych = *++context.cursor; switch (yych) { - case 'T': goto yy308; + case 'T': goto yy313; default: goto yy49; } -yy230: +yy235: yych = *++context.cursor; switch (yych) { - case 'S': goto yy309; + case 'S': goto yy314; default: goto yy49; } -yy231: +yy236: yych = *++context.cursor; switch (yych) { - case 'S': goto yy310; + case 'S': goto yy315; default: goto yy49; } -yy232: +yy237: yych = *++context.cursor; switch (yych) { - case 'E': goto yy312; + case 'E': goto yy317; default: goto yy49; } -yy233: +yy238: yych = *++context.cursor; switch (yych) { - case 'E': goto yy314; + case 'E': goto yy319; default: goto yy49; } -yy234: +yy239: yych = *++context.cursor; switch (yych) { - case 'E': goto yy316; + case 'E': goto yy321; default: goto yy49; } -yy235: +yy240: yych = *++context.cursor; switch (yych) { - case 'e': goto yy317; + case 'e': goto yy322; default: goto yy49; } -yy236: +yy241: yych = *++context.cursor; switch (yych) { - case 'O': goto yy318; - case 'Q': goto yy319; - case 'V': goto yy320; + case 'O': goto yy323; + case 'Q': goto yy324; + case 'V': goto yy325; default: goto yy49; } -yy237: +yy242: yych = *++context.cursor; switch (yych) { - case 'T': goto yy321; + case 'T': goto yy326; default: goto yy49; } -yy238: +yy243: yych = *++context.cursor; switch (yych) { - case '8': goto yy322; + case '8': goto yy327; default: goto yy49; } -yy239: +yy244: yych = *++context.cursor; switch (yych) { - case 'v': goto yy323; + case 'v': goto yy328; default: goto yy49; } -yy240: +yy245: yych = *++context.cursor; switch (yych) { - case 'e': goto yy324; + case 'e': goto yy329; default: goto yy49; } -yy241: +yy246: yych = *++context.cursor; switch (yych) { - case 'i': goto yy325; + case 'i': goto yy330; default: goto yy49; } -yy242: +yy247: yych = *++context.cursor; switch (yych) { - case 'H': goto yy326; + case 'H': goto yy331; default: goto yy49; } -yy243: +yy248: ++context.cursor; -#line 9036 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11203 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy245: +#line 11387 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy250: ++context.cursor; -#line 9039 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy247: +#line 11392 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy252: yych = *++context.cursor; switch (yych) { - case 'N': goto yy328; + case 'N': goto yy333; default: goto yy49; } -yy248: +yy253: yych = *++context.cursor; switch (yych) { - case 'R': goto yy329; + case 'R': goto yy334; default: goto yy49; } -yy249: +yy254: yych = *++context.cursor; switch (yych) { - case 'I': goto yy330; + case 'I': goto yy335; default: goto yy49; } -yy250: +yy255: yych = *++context.cursor; switch (yych) { - case 'M': goto yy331; + case 'M': goto yy336; default: goto yy49; } -yy251: +yy256: yych = *++context.cursor; switch (yych) { - case 'N': goto yy332; + case 'N': goto yy337; default: goto yy49; } -yy252: +yy257: yych = *++context.cursor; switch (yych) { - case 't': goto yy334; + case 't': goto yy339; default: goto yy49; } -yy253: +yy258: yych = *++context.cursor; switch (yych) { - case 'E': goto yy335; + case 'E': goto yy340; default: goto yy49; } -yy254: +yy259: yych = *++context.cursor; switch (yych) { - case 'A': goto yy336; + case 'A': goto yy341; default: goto yy49; } -yy255: +yy260: yych = *++context.cursor; switch (yych) { - case 'C': goto yy337; + case 'C': goto yy342; default: goto yy49; } -yy256: +yy261: yych = *++context.cursor; switch (yych) { - case 'S': goto yy338; + case 'S': goto yy343; default: goto yy49; } -yy257: +yy262: yych = *++context.cursor; switch (yych) { - case 'O': goto yy340; + case 'O': goto yy345; default: goto yy49; } -yy258: +yy263: yych = *++context.cursor; switch (yych) { - case 'T': goto yy341; + case 'T': goto yy346; default: goto yy49; } -yy259: +yy264: yych = *++context.cursor; switch (yych) { - case 'A': goto yy342; + case 'A': goto yy347; default: goto yy49; } -yy260: +yy265: yych = *++context.cursor; switch (yych) { - case '-': goto yy343; + case '-': goto yy348; case '0': case '1': case '2': @@ -11350,80 +11534,80 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy261; + default: goto yy266; } -yy261: -#line 8959 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy266: +#line 9058 "/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 11359 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy262: +#line 11543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy267: yych = *++context.cursor; switch (yych) { - case 'U': goto yy344; + case 'U': goto yy349; default: goto yy49; } -yy263: +yy268: yych = *++context.cursor; switch (yych) { - case 'N': goto yy345; + case 'N': goto yy350; default: goto yy49; } -yy264: +yy269: yych = *++context.cursor; switch (yych) { - case 'T': goto yy346; + case 'T': goto yy351; default: goto yy49; } -yy265: +yy270: yych = *++context.cursor; switch (yych) { - case 'D': goto yy347; + case 'D': goto yy352; default: goto yy49; } -yy266: +yy271: yych = *++context.cursor; switch (yych) { - case 'D': goto yy348; + case 'D': goto yy353; default: goto yy49; } -yy267: +yy272: yych = *++context.cursor; switch (yych) { - case 'E': goto yy349; + case 'E': goto yy354; default: goto yy49; } -yy268: +yy273: yych = *++context.cursor; switch (yych) { - case 'P': goto yy350; + case 'P': goto yy355; default: goto yy49; } -yy269: +yy274: yych = *++context.cursor; switch (yych) { - case 'I': goto yy351; + case 'I': goto yy356; default: goto yy49; } -yy270: +yy275: yych = *++context.cursor; switch (yych) { - case 'R': goto yy352; + case 'R': goto yy357; default: goto yy49; } -yy271: +yy276: yych = *++context.cursor; switch (yych) { - case 'N': goto yy353; - case 'R': goto yy354; + case 'N': goto yy358; + case 'R': goto yy359; default: goto yy49; } -yy272: +yy277: yych = *++context.cursor; switch (yych) { - case 'E': goto yy355; + case 'E': goto yy360; default: goto yy49; } -yy273: +yy278: yych = *++context.cursor; switch (yych) { case '-': @@ -11490,87 +11674,87 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy274; + default: goto yy279; } -yy274: -#line 8975 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy279: +#line 9074 "/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 11499 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy275: +#line 11683 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy280: yych = *++context.cursor; switch (yych) { - case 'r': goto yy357; + case 'r': goto yy362; default: goto yy49; } -yy276: +yy281: yych = *++context.cursor; switch (yych) { - case 'h': goto yy358; + case 'h': goto yy363; default: goto yy49; } -yy277: +yy282: yych = *++context.cursor; switch (yych) { - case 't': goto yy359; + case 't': goto yy364; default: goto yy49; } -yy278: +yy283: yych = *++context.cursor; switch (yych) { - case 'T': goto yy360; + case 'T': goto yy365; default: goto yy49; } -yy279: +yy284: yych = *++context.cursor; switch (yych) { - case 'I': goto yy361; + case 'I': goto yy366; default: goto yy49; } -yy280: +yy285: yych = *++context.cursor; switch (yych) { - case 'R': goto yy362; + case 'R': goto yy367; default: goto yy49; } -yy281: +yy286: yych = *++context.cursor; switch (yych) { - case 'U': goto yy363; + case 'U': goto yy368; default: goto yy49; } -yy282: +yy287: yych = *++context.cursor; switch (yych) { - case 'A': goto yy364; - case 'R': goto yy365; + case 'A': goto yy369; + case 'R': goto yy370; default: goto yy49; } -yy283: +yy288: yych = *++context.cursor; switch (yych) { - case 'G': goto yy366; - case 'R': goto yy367; + case 'G': goto yy371; + case 'R': goto yy372; default: goto yy49; } -yy284: +yy289: yych = *++context.cursor; switch (yych) { - case '4': goto yy368; + case '4': goto yy373; default: goto yy49; } -yy285: +yy290: yych = *++context.cursor; switch (yych) { - case 'S': goto yy369; + case 'S': goto yy374; default: goto yy49; } -yy286: +yy291: yych = *++context.cursor; switch (yych) { - case 'A': goto yy370; + case 'A': goto yy375; default: goto yy49; } -yy287: +yy292: yych = *++context.cursor; switch (yych) { case '-': @@ -11637,79 +11821,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy288; + default: goto yy293; } -yy288: -#line 8994 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy293: +#line 9093 "/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 11646 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy289: +#line 11830 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy294: yych = *++context.cursor; switch (yych) { - case 'r': goto yy371; + case 'r': goto yy376; default: goto yy49; } -yy290: +yy295: yych = *++context.cursor; switch (yych) { - case 'C': goto yy372; + case 'C': goto yy377; default: goto yy49; } -yy291: +yy296: yych = *++context.cursor; switch (yych) { - case 'T': goto yy373; + case 'T': goto yy378; default: goto yy49; } -yy292: +yy297: yych = *++context.cursor; switch (yych) { - case 'I': goto yy375; + case 'I': goto yy380; default: goto yy49; } -yy293: +yy298: yych = *++context.cursor; switch (yych) { - case 'O': goto yy376; + case 'O': goto yy381; default: goto yy49; } -yy294: +yy299: yych = *++context.cursor; switch (yych) { - case 'c': goto yy377; + case 'c': goto yy382; default: goto yy49; } -yy295: +yy300: yych = *++context.cursor; switch (yych) { - case 'E': goto yy378; + case 'E': goto yy383; default: goto yy49; } -yy296: +yy301: yych = *++context.cursor; switch (yych) { - case '_': goto yy379; + case '_': goto yy384; default: goto yy49; } -yy297: +yy302: yych = *++context.cursor; switch (yych) { - case 'E': goto yy380; + case 'E': goto yy385; default: goto yy49; } -yy298: +yy303: yych = *++context.cursor; switch (yych) { - case 'A': goto yy381; + case 'A': goto yy386; default: goto yy49; } -yy299: +yy304: yych = *++context.cursor; switch (yych) { - case 't': goto yy382; + case 't': goto yy387; default: goto yy49; } -yy300: +yy305: yych = *++context.cursor; switch (yych) { case '-': @@ -11776,31 +11960,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy301; + default: goto yy306; } -yy301: -#line 9008 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy306: +#line 9107 "/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 11785 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy302: +#line 11969 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy307: yych = *++context.cursor; switch (yych) { - case 'T': goto yy383; + case 'T': goto yy388; default: goto yy49; } -yy303: +yy308: yych = *++context.cursor; switch (yych) { - case 'E': goto yy384; + case 'E': goto yy389; default: goto yy49; } -yy304: +yy309: yych = *++context.cursor; switch (yych) { - case 'I': goto yy385; + case 'I': goto yy390; default: goto yy49; } -yy305: +yy310: yych = *++context.cursor; switch (yych) { case '-': @@ -11867,31 +12051,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy306; + default: goto yy311; } -yy306: -#line 9014 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy311: +#line 9113 "/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 11876 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy307: +#line 12060 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy312: yych = *++context.cursor; switch (yych) { - case 'N': goto yy386; + case 'N': goto yy391; default: goto yy49; } -yy308: +yy313: yych = *++context.cursor; switch (yych) { - case 'A': goto yy387; + case 'A': goto yy392; default: goto yy49; } -yy309: +yy314: yych = *++context.cursor; switch (yych) { - case 't': goto yy388; + case 't': goto yy393; default: goto yy49; } -yy310: +yy315: yych = *++context.cursor; switch (yych) { case '-': @@ -11958,16 +12142,16 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy311; + default: goto yy316; } -yy311: -#line 9018 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy316: +#line 9117 "/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 11967 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy312: +#line 12151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy317: yych = *++context.cursor; switch (yych) { - case '-': goto yy389; + case '-': goto yy394; case '0': case '1': case '2': @@ -12031,13 +12215,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy313; + default: goto yy318; } -yy313: -#line 9020 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy318: +#line 9119 "/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 12040 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy314: +#line 12224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy319: yych = *++context.cursor; switch (yych) { case '-': @@ -12104,73 +12288,73 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy315; + default: goto yy320; } -yy315: -#line 9022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy320: +#line 9121 "/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 12113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy316: +#line 12297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy321: yych = *++context.cursor; switch (yych) { - case '-': goto yy390; + case '-': goto yy395; default: goto yy49; } -yy317: +yy322: yych = *++context.cursor; switch (yych) { - case 't': goto yy391; + case 't': goto yy396; default: goto yy49; } -yy318: +yy323: yych = *++context.cursor; switch (yych) { - case 'N': goto yy392; + case 'N': goto yy397; default: goto yy49; } -yy319: +yy324: yych = *++context.cursor; switch (yych) { - case 'U': goto yy394; + case 'U': goto yy399; default: goto yy49; } -yy320: +yy325: yych = *++context.cursor; switch (yych) { - case 'E': goto yy395; + case 'E': goto yy400; default: goto yy49; } -yy321: +yy326: yych = *++context.cursor; switch (yych) { - case 'i': goto yy396; + case 'i': goto yy401; default: goto yy49; } -yy322: +yy327: yych = *++context.cursor; switch (yych) { - case 'S': goto yy397; + case 'S': goto yy402; default: goto yy49; } -yy323: +yy328: yych = *++context.cursor; switch (yych) { - case 'e': goto yy398; + case 'e': goto yy403; default: goto yy49; } -yy324: +yy329: yych = *++context.cursor; switch (yych) { - case 'o': goto yy399; + case 'o': goto yy404; default: goto yy49; } -yy325: +yy330: yych = *++context.cursor; switch (yych) { - case 'b': goto yy400; + case 'b': goto yy405; default: goto yy49; } -yy326: +yy331: yych = *++context.cursor; switch (yych) { case '-': @@ -12237,37 +12421,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy327; + default: goto yy332; } -yy327: -#line 9032 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy332: +#line 9131 "/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 12246 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy328: +#line 12430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy333: yych = *++context.cursor; switch (yych) { - case 'T': goto yy401; + case 'T': goto yy406; default: goto yy49; } -yy329: +yy334: yych = *++context.cursor; switch (yych) { - case 'A': goto yy403; + case 'A': goto yy408; default: goto yy49; } -yy330: +yy335: yych = *++context.cursor; switch (yych) { - case 'C': goto yy404; + case 'C': goto yy409; default: goto yy49; } -yy331: +yy336: yych = *++context.cursor; switch (yych) { - case 'A': goto yy405; + case 'A': goto yy410; default: goto yy49; } -yy332: +yy337: yych = *++context.cursor; switch (yych) { case '-': @@ -12334,37 +12518,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy333; + default: goto yy338; } -yy333: -#line 8947 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy338: +#line 9046 "/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 12343 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy334: +#line 12527 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy339: yych = *++context.cursor; switch (yych) { - case 'r': goto yy406; + case 'r': goto yy411; default: goto yy49; } -yy335: +yy340: yych = *++context.cursor; switch (yych) { - case 'A': goto yy407; + case 'A': goto yy412; default: goto yy49; } -yy336: +yy341: yych = *++context.cursor; switch (yych) { - case 'C': goto yy408; + case 'C': goto yy413; default: goto yy49; } -yy337: +yy342: yych = *++context.cursor; switch (yych) { - case 'E': goto yy409; + case 'E': goto yy414; default: goto yy49; } -yy338: +yy343: yych = *++context.cursor; switch (yych) { case '-': @@ -12431,104 +12615,104 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy339; + default: goto yy344; } -yy339: -#line 8954 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy344: +#line 9053 "/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 12440 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy340: +#line 12624 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy345: yych = *++context.cursor; switch (yych) { - case 'N': goto yy411; + case 'N': goto yy416; default: goto yy49; } -yy341: +yy346: yych = *++context.cursor; switch (yych) { - case 'R': goto yy412; + case 'R': goto yy417; default: goto yy49; } -yy342: +yy347: yych = *++context.cursor; switch (yych) { - case 'I': goto yy413; + case 'I': goto yy418; default: goto yy49; } -yy343: +yy348: yych = *++context.cursor; switch (yych) { - case 'T': goto yy414; + case 'T': goto yy419; default: goto yy49; } -yy344: +yy349: yych = *++context.cursor; switch (yych) { - case 'L': goto yy415; + case 'L': goto yy420; default: goto yy49; } -yy345: +yy350: yych = *++context.cursor; switch (yych) { - case 'I': goto yy416; + case 'I': goto yy421; default: goto yy49; } -yy346: +yy351: yych = *++context.cursor; switch (yych) { - case 'I': goto yy417; + case 'I': goto yy422; default: goto yy49; } -yy347: +yy352: yych = *++context.cursor; switch (yych) { - case 'D': goto yy418; + case 'D': goto yy423; default: goto yy49; } -yy348: +yy353: yych = *++context.cursor; switch (yych) { - case 'E': goto yy419; - case 'I': goto yy420; + case 'E': goto yy424; + case 'I': goto yy425; default: goto yy49; } -yy349: +yy354: yych = *++context.cursor; switch (yych) { - case 'R': goto yy421; + case 'R': goto yy426; default: goto yy49; } -yy350: +yy355: yych = *++context.cursor; switch (yych) { - case 'T': goto yy422; + case 'T': goto yy427; default: goto yy49; } -yy351: +yy356: yych = *++context.cursor; switch (yych) { - case 'C': goto yy424; + case 'C': goto yy429; default: goto yy49; } -yy352: +yy357: yych = *++context.cursor; switch (yych) { - case 'T': goto yy425; + case 'T': goto yy430; default: goto yy49; } -yy353: +yy358: yych = *++context.cursor; switch (yych) { - case 'S': goto yy426; + case 'S': goto yy431; default: goto yy49; } -yy354: +yy359: yych = *++context.cursor; switch (yych) { - case 'N': goto yy427; + case 'N': goto yy432; default: goto yy49; } -yy355: +yy360: yych = *++context.cursor; switch (yych) { case '-': @@ -12595,110 +12779,110 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy356; + default: goto yy361; } -yy356: -#line 8974 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy361: +#line 9073 "/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 12604 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy357: +#line 12788 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy362: yych = *++context.cursor; switch (yych) { - case 'a': goto yy428; + case 'a': goto yy433; default: goto yy49; } -yy358: +yy363: yych = *++context.cursor; switch (yych) { - case 'i': goto yy429; + case 'i': goto yy434; default: goto yy49; } -yy359: +yy364: yych = *++context.cursor; switch (yych) { - case 'r': goto yy430; + case 'r': goto yy435; default: goto yy49; } -yy360: +yy365: yych = *++context.cursor; switch (yych) { - case 'I': goto yy431; + case 'I': goto yy436; default: goto yy49; } -yy361: +yy366: yych = *++context.cursor; switch (yych) { - case 'C': goto yy432; - case 'E': goto yy433; + case 'C': goto yy437; + case 'E': goto yy438; default: goto yy49; } -yy362: +yy367: yych = *++context.cursor; switch (yych) { - case 'T': goto yy434; + case 'T': goto yy439; default: goto yy49; } -yy363: +yy368: yych = *++context.cursor; switch (yych) { - case 'D': goto yy435; + case 'D': goto yy440; default: goto yy49; } -yy364: +yy369: yych = *++context.cursor; switch (yych) { - case 'N': goto yy436; + case 'N': goto yy441; default: goto yy49; } -yy365: +yy370: yych = *++context.cursor; switch (yych) { - case 'U': goto yy437; + case 'U': goto yy442; default: goto yy49; } -yy366: +yy371: yych = *++context.cursor; switch (yych) { - case 'E': goto yy438; + case 'E': goto yy443; default: goto yy49; } -yy367: +yy372: yych = *++context.cursor; switch (yych) { - case 'S': goto yy439; + case 'S': goto yy444; default: goto yy49; } -yy368: +yy373: yych = *++context.cursor; switch (yych) { - case '6': goto yy440; + case '6': goto yy445; default: goto yy49; } -yy369: +yy374: yych = *++context.cursor; switch (yych) { - case '-': goto yy441; + case '-': goto yy446; default: goto yy49; } -yy370: +yy375: yych = *++context.cursor; switch (yych) { - case '-': goto yy442; + case '-': goto yy447; default: goto yy49; } -yy371: +yy376: yych = *++context.cursor; switch (yych) { - case 'i': goto yy443; + case 'i': goto yy448; default: goto yy49; } -yy372: +yy377: yych = *++context.cursor; switch (yych) { - case 'T': goto yy444; + case 'T': goto yy449; default: goto yy49; } -yy373: +yy378: yych = *++context.cursor; switch (yych) { case '-': @@ -12765,115 +12949,115 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy374; + default: goto yy379; } -yy374: -#line 8998 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy379: +#line 9097 "/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 12774 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy375: +#line 12958 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy380: yych = *++context.cursor; switch (yych) { - case 'R': goto yy446; + case 'R': goto yy451; default: goto yy49; } -yy376: +yy381: yych = *++context.cursor; switch (yych) { - case 'N': goto yy447; + case 'N': goto yy452; default: goto yy49; } -yy377: +yy382: yych = *++context.cursor; switch (yych) { - case 't': goto yy448; + case 't': goto yy453; default: goto yy49; } -yy378: +yy383: yych = *++context.cursor; switch (yych) { - case 'R': goto yy449; + case 'R': goto yy454; default: goto yy49; } -yy379: +yy384: yych = *++context.cursor; switch (yych) { - case 'I': goto yy450; + case 'I': goto yy455; default: goto yy49; } -yy380: +yy385: yych = *++context.cursor; switch (yych) { - case 'N': goto yy451; + case 'N': goto yy456; default: goto yy49; } -yy381: +yy386: yych = *++context.cursor; switch (yych) { - case 'T': goto yy452; + case 'T': goto yy457; default: goto yy49; } -yy382: +yy387: yych = *++context.cursor; switch (yych) { - case 'a': goto yy453; + case 'a': goto yy458; default: goto yy49; } -yy383: +yy388: yych = *++context.cursor; switch (yych) { - case 'I': goto yy454; + case 'I': goto yy459; default: goto yy49; } -yy384: +yy389: yych = *++context.cursor; switch (yych) { - case 'N': goto yy455; + case 'N': goto yy460; default: goto yy49; } -yy385: +yy390: yych = *++context.cursor; switch (yych) { - case 'N': goto yy456; + case 'N': goto yy461; default: goto yy49; } -yy386: +yy391: yych = *++context.cursor; switch (yych) { - case 'G': goto yy457; + case 'G': goto yy462; default: goto yy49; } -yy387: +yy392: yych = *++context.cursor; switch (yych) { - case 'X': goto yy459; + case 'X': goto yy464; default: goto yy49; } -yy388: +yy393: yych = *++context.cursor; switch (yych) { - case 'r': goto yy461; + case 'r': goto yy466; default: goto yy49; } -yy389: +yy394: yych = *++context.cursor; switch (yych) { - case 'O': goto yy462; + case 'O': goto yy467; default: goto yy49; } -yy390: +yy395: yych = *++context.cursor; switch (yych) { - case 'I': goto yy463; + case 'I': goto yy468; default: goto yy49; } -yy391: +yy396: yych = *++context.cursor; switch (yych) { - case 'e': goto yy464; + case 'e': goto yy469; default: goto yy49; } -yy392: +yy397: yych = *++context.cursor; switch (yych) { case '-': @@ -12940,55 +13124,55 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy393; + default: goto yy398; } -yy393: -#line 9024 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy398: +#line 9123 "/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 12949 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy394: +#line 13133 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy399: yych = *++context.cursor; switch (yych) { - case 'E': goto yy465; + case 'E': goto yy470; default: goto yy49; } -yy395: +yy400: yych = *++context.cursor; switch (yych) { - case 'R': goto yy467; + case 'R': goto yy472; default: goto yy49; } -yy396: +yy401: yych = *++context.cursor; switch (yych) { - case 'm': goto yy468; + case 'm': goto yy473; default: goto yy49; } -yy397: +yy402: yych = *++context.cursor; switch (yych) { - case 't': goto yy469; + case 't': goto yy474; default: goto yy49; } -yy398: +yy403: yych = *++context.cursor; switch (yych) { - case 'r': goto yy470; + case 'r': goto yy475; default: goto yy49; } -yy399: +yy404: yych = *++context.cursor; switch (yych) { - case 't': goto yy471; + case 't': goto yy476; default: goto yy49; } -yy400: +yy405: yych = *++context.cursor; switch (yych) { - case 'l': goto yy472; + case 'l': goto yy477; default: goto yy49; } -yy401: +yy406: yych = *++context.cursor; switch (yych) { case '-': @@ -13055,49 +13239,49 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy402; + default: goto yy407; } -yy402: -#line 8942 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy407: +#line 9040 "/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 13064 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy403: +#line 13248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy408: yych = *++context.cursor; switch (yych) { - case 'C': goto yy473; + case 'C': goto yy478; default: goto yy49; } -yy404: +yy409: yych = *++context.cursor; switch (yych) { - case 'A': goto yy474; + case 'A': goto yy479; default: goto yy49; } -yy405: +yy410: yych = *++context.cursor; switch (yych) { - case 'T': goto yy475; + case 'T': goto yy480; default: goto yy49; } -yy406: +yy411: yych = *++context.cursor; switch (yych) { - case 'i': goto yy476; + case 'i': goto yy481; default: goto yy49; } -yy407: +yy412: yych = *++context.cursor; switch (yych) { - case 'N': goto yy477; + case 'N': goto yy482; default: goto yy49; } -yy408: +yy413: yych = *++context.cursor; switch (yych) { - case 'T': goto yy479; + case 'T': goto yy484; default: goto yy49; } -yy409: +yy414: yych = *++context.cursor; switch (yych) { case '-': @@ -13164,79 +13348,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy410; + default: goto yy415; } -yy410: -#line 8953 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy415: +#line 9052 "/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 13173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy411: +#line 13357 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy416: yych = *++context.cursor; switch (yych) { - case 'E': goto yy480; + case 'E': goto yy485; default: goto yy49; } -yy412: +yy417: yych = *++context.cursor; switch (yych) { - case 'A': goto yy481; + case 'A': goto yy486; default: goto yy49; } -yy413: +yy418: yych = *++context.cursor; switch (yych) { - case 'N': goto yy482; + case 'N': goto yy487; default: goto yy49; } -yy414: +yy419: yych = *++context.cursor; switch (yych) { - case 'I': goto yy483; + case 'I': goto yy488; default: goto yy49; } -yy415: +yy420: yych = *++context.cursor; switch (yych) { - case 'T': goto yy484; + case 'T': goto yy489; default: goto yy49; } -yy416: +yy421: yych = *++context.cursor; switch (yych) { - case 'T': goto yy486; + case 'T': goto yy491; default: goto yy49; } -yy417: +yy422: yych = *++context.cursor; switch (yych) { - case 'O': goto yy487; + case 'O': goto yy492; default: goto yy49; } -yy418: +yy423: yych = *++context.cursor; switch (yych) { - case 'E': goto yy488; + case 'E': goto yy493; default: goto yy49; } -yy419: +yy424: yych = *++context.cursor; switch (yych) { - case 'D': goto yy489; + case 'D': goto yy494; default: goto yy49; } -yy420: +yy425: yych = *++context.cursor; switch (yych) { - case 'N': goto yy491; + case 'N': goto yy496; default: goto yy49; } -yy421: +yy426: yych = *++context.cursor; switch (yych) { - case 'A': goto yy492; + case 'A': goto yy497; default: goto yy49; } -yy422: +yy427: yych = *++context.cursor; switch (yych) { case '-': @@ -13303,133 +13487,133 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy423; + default: goto yy428; } -yy423: -#line 8969 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy428: +#line 9068 "/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 13312 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy424: +#line 13496 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy429: yych = *++context.cursor; switch (yych) { - case 'I': goto yy493; + case 'I': goto yy498; default: goto yy49; } -yy425: +yy430: yych = *++context.cursor; switch (yych) { - case 'S': goto yy494; + case 'S': goto yy499; default: goto yy49; } -yy426: +yy431: yych = *++context.cursor; switch (yych) { - case 'I': goto yy496; + case 'I': goto yy501; default: goto yy49; } -yy427: +yy432: yych = *++context.cursor; switch (yych) { - case 'A': goto yy497; + case 'A': goto yy502; default: goto yy49; } -yy428: +yy433: yych = *++context.cursor; switch (yych) { - case 'l': goto yy498; + case 'l': goto yy503; default: goto yy49; } -yy429: +yy434: yych = *++context.cursor; switch (yych) { - case 'c': goto yy499; + case 'c': goto yy504; default: goto yy49; } -yy430: +yy435: yych = *++context.cursor; switch (yych) { - case 'i': goto yy500; + case 'i': goto yy505; default: goto yy49; } -yy431: +yy436: yych = *++context.cursor; switch (yych) { - case 'F': goto yy501; + case 'F': goto yy506; default: goto yy49; } -yy432: +yy437: yych = *++context.cursor; switch (yych) { - case 'I': goto yy502; + case 'I': goto yy507; default: goto yy49; } -yy433: +yy438: yych = *++context.cursor; switch (yych) { - case 'D': goto yy503; + case 'D': goto yy508; default: goto yy49; } -yy434: +yy439: yych = *++context.cursor; switch (yych) { - case 'S': goto yy505; + case 'S': goto yy510; default: goto yy49; } -yy435: +yy440: yych = *++context.cursor; switch (yych) { - case 'E': goto yy507; + case 'E': goto yy512; default: goto yy49; } -yy436: +yy441: yych = *++context.cursor; switch (yych) { - case 'C': goto yy508; + case 'C': goto yy513; default: goto yy49; } -yy437: +yy442: yych = *++context.cursor; switch (yych) { - case 'C': goto yy509; + case 'C': goto yy514; default: goto yy49; } -yy438: +yy443: yych = *++context.cursor; switch (yych) { - case 'R': goto yy510; + case 'R': goto yy515; default: goto yy49; } -yy439: +yy444: yych = *++context.cursor; switch (yych) { - case 'E': goto yy512; + case 'E': goto yy517; default: goto yy49; } -yy440: +yy445: yych = *++context.cursor; switch (yych) { - case 'S': goto yy513; + case 'S': goto yy518; default: goto yy49; } -yy441: +yy446: yych = *++context.cursor; switch (yych) { - case 'I': goto yy514; + case 'I': goto yy519; default: goto yy49; } -yy442: +yy447: yych = *++context.cursor; switch (yych) { - case 'N': goto yy515; + case 'N': goto yy520; default: goto yy49; } -yy443: +yy448: yych = *++context.cursor; switch (yych) { - case 'c': goto yy516; + case 'c': goto yy521; default: goto yy49; } -yy444: +yy449: yych = *++context.cursor; switch (yych) { case '-': @@ -13496,79 +13680,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy445; + default: goto yy450; } -yy445: -#line 8996 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy450: +#line 9095 "/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 13505 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy446: +#line 13689 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy451: yych = *++context.cursor; switch (yych) { - case 'I': goto yy517; + case 'I': goto yy522; default: goto yy49; } -yy447: +yy452: yych = *++context.cursor; switch (yych) { - case 'A': goto yy519; + case 'A': goto yy524; default: goto yy49; } -yy448: +yy453: yych = *++context.cursor; switch (yych) { - case 'D': goto yy520; + case 'D': goto yy525; default: goto yy49; } -yy449: +yy454: yych = *++context.cursor; switch (yych) { - case 'N': goto yy521; + case 'N': goto yy526; default: goto yy49; } -yy450: +yy455: yych = *++context.cursor; switch (yych) { - case 'N': goto yy523; + case 'N': goto yy528; default: goto yy49; } -yy451: +yy456: yych = *++context.cursor; switch (yych) { - case 'T': goto yy524; + case 'T': goto yy529; default: goto yy49; } -yy452: +yy457: yych = *++context.cursor; switch (yych) { - case 'E': goto yy526; + case 'E': goto yy531; default: goto yy49; } -yy453: +yy458: yych = *++context.cursor; switch (yych) { - case 'b': goto yy528; + case 'b': goto yy533; default: goto yy49; } -yy454: +yy459: yych = *++context.cursor; switch (yych) { - case 'V': goto yy529; + case 'V': goto yy534; default: goto yy49; } -yy455: +yy460: yych = *++context.cursor; switch (yych) { - case 'C': goto yy530; + case 'C': goto yy535; default: goto yy49; } -yy456: +yy461: yych = *++context.cursor; switch (yych) { - case 'G': goto yy531; + case 'G': goto yy536; default: goto yy49; } -yy457: +yy462: yych = *++context.cursor; switch (yych) { case '-': @@ -13635,13 +13819,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy458; + default: goto yy463; } -yy458: -#line 9015 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy463: +#line 9114 "/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 13644 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy459: +#line 13828 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy464: yych = *++context.cursor; switch (yych) { case '-': @@ -13708,37 +13892,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy460; + default: goto yy465; } -yy460: -#line 9016 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy465: +#line 9115 "/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 13717 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy461: +#line 13901 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy466: yych = *++context.cursor; switch (yych) { - case 'i': goto yy532; + case 'i': goto yy537; default: goto yy49; } -yy462: +yy467: yych = *++context.cursor; switch (yych) { - case 'F': goto yy533; + case 'F': goto yy538; default: goto yy49; } -yy463: +yy468: yych = *++context.cursor; switch (yych) { - case 'D': goto yy534; + case 'D': goto yy539; default: goto yy49; } -yy464: +yy469: yych = *++context.cursor; switch (yych) { - case 'x': goto yy535; + case 'x': goto yy540; default: goto yy49; } -yy465: +yy470: yych = *++context.cursor; switch (yych) { case '-': @@ -13805,73 +13989,73 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy466; + default: goto yy471; } -yy466: -#line 9025 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy471: +#line 9124 "/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 13814 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy467: +#line 13998 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy472: yych = *++context.cursor; switch (yych) { - case 'S': goto yy536; + case 'S': goto yy541; default: goto yy49; } -yy468: +yy473: yych = *++context.cursor; switch (yych) { - case 'e': goto yy537; + case 'e': goto yy542; default: goto yy49; } -yy469: +yy474: yych = *++context.cursor; switch (yych) { - case 'r': goto yy539; + case 'r': goto yy544; default: goto yy49; } -yy470: +yy475: yych = *++context.cursor; switch (yych) { - case 's': goto yy540; + case 's': goto yy545; default: goto yy49; } -yy471: +yy476: yych = *++context.cursor; switch (yych) { - case 'e': goto yy541; + case 'e': goto yy546; default: goto yy49; } -yy472: +yy477: yych = *++context.cursor; switch (yych) { - case 'e': goto yy542; + case 'e': goto yy547; default: goto yy49; } -yy473: +yy478: yych = *++context.cursor; switch (yych) { - case 'T': goto yy543; + case 'T': goto yy548; default: goto yy49; } -yy474: +yy479: yych = *++context.cursor; switch (yych) { - case 'T': goto yy544; + case 'T': goto yy549; default: goto yy49; } -yy475: +yy480: yych = *++context.cursor; switch (yych) { - case 'I': goto yy545; + case 'I': goto yy550; default: goto yy49; } -yy476: +yy481: yych = *++context.cursor; switch (yych) { - case 'n': goto yy546; + case 'n': goto yy551; default: goto yy49; } -yy477: +yy482: yych = *++context.cursor; switch (yych) { case '-': @@ -13938,43 +14122,43 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy478; + default: goto yy483; } -yy478: -#line 8950 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy483: +#line 9049 "/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 13947 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy479: +#line 14131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy484: yych = *++context.cursor; switch (yych) { - case 'E': goto yy547; + case 'E': goto yy552; default: goto yy49; } -yy480: +yy485: yych = *++context.cursor; switch (yych) { - case 'N': goto yy548; + case 'N': goto yy553; default: goto yy49; } -yy481: +yy486: yych = *++context.cursor; switch (yych) { - case 'I': goto yy549; + case 'I': goto yy554; default: goto yy49; } -yy482: +yy487: yych = *++context.cursor; switch (yych) { - case 'I': goto yy550; + case 'I': goto yy555; default: goto yy49; } -yy483: +yy488: yych = *++context.cursor; switch (yych) { - case 'M': goto yy551; + case 'M': goto yy556; default: goto yy49; } -yy484: +yy489: yych = *++context.cursor; switch (yych) { case '-': @@ -14041,31 +14225,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy485; + default: goto yy490; } -yy485: -#line 8961 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy490: +#line 9060 "/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 14050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy486: +#line 14234 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy491: yych = *++context.cursor; switch (yych) { - case 'I': goto yy552; + case 'I': goto yy557; default: goto yy49; } -yy487: +yy492: yych = *++context.cursor; switch (yych) { - case 'N': goto yy553; + case 'N': goto yy558; default: goto yy49; } -yy488: +yy493: yych = *++context.cursor; switch (yych) { - case 'D': goto yy555; + case 'D': goto yy560; default: goto yy49; } -yy489: +yy494: yych = *++context.cursor; switch (yych) { case '-': @@ -14132,31 +14316,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy490; + default: goto yy495; } -yy490: -#line 8965 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy495: +#line 9064 "/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 14141 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy491: +#line 14325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy496: yych = *++context.cursor; switch (yych) { - case 'G': goto yy557; + case 'G': goto yy562; default: goto yy49; } -yy492: +yy497: yych = *++context.cursor; switch (yych) { - case 'T': goto yy558; + case 'T': goto yy563; default: goto yy49; } -yy493: +yy498: yych = *++context.cursor; switch (yych) { - case 'T': goto yy559; + case 'T': goto yy564; default: goto yy49; } -yy494: +yy499: yych = *++context.cursor; switch (yych) { case '-': @@ -14223,56 +14407,56 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy495; + default: goto yy500; } -yy495: -#line 8971 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy500: +#line 9070 "/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 14232 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy496: +#line 14416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy501: yych = *++context.cursor; switch (yych) { - case 'B': goto yy561; + case 'B': goto yy566; default: goto yy49; } -yy497: +yy502: yych = *++context.cursor; switch (yych) { - case 'L': goto yy562; + case 'L': goto yy567; default: goto yy49; } -yy498: +yy503: yych = *++context.cursor; switch (yych) { - case 'S': goto yy564; - case 'i': goto yy565; + case 'S': goto yy569; + case 'i': goto yy570; default: goto yy49; } -yy499: +yy504: yych = *++context.cursor; switch (yych) { - case 'S': goto yy566; + case 'S': goto yy571; default: goto yy49; } -yy500: +yy505: yych = *++context.cursor; switch (yych) { - case 'n': goto yy567; + case 'n': goto yy572; default: goto yy49; } -yy501: +yy506: yych = *++context.cursor; switch (yych) { - case 'I': goto yy568; + case 'I': goto yy573; default: goto yy49; } -yy502: +yy507: yych = *++context.cursor; switch (yych) { - case 'T': goto yy569; + case 'T': goto yy574; default: goto yy49; } -yy503: +yy508: yych = *++context.cursor; switch (yych) { case '-': @@ -14339,13 +14523,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy504; + default: goto yy509; } -yy504: -#line 8982 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy509: +#line 9081 "/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 14348 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy505: +#line 14532 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy510: yych = *++context.cursor; switch (yych) { case '-': @@ -14412,31 +14596,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy506; + default: goto yy511; } -yy506: -#line 8983 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy511: +#line 9082 "/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 14421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy507: +#line 14605 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy512: yych = *++context.cursor; switch (yych) { - case 'S': goto yy571; + case 'S': goto yy576; default: goto yy49; } -yy508: +yy513: yych = *++context.cursor; switch (yych) { - case 'E': goto yy573; + case 'E': goto yy578; default: goto yy49; } -yy509: +yy514: yych = *++context.cursor; switch (yych) { - case 'T': goto yy575; + case 'T': goto yy580; default: goto yy49; } -yy510: +yy515: yych = *++context.cursor; switch (yych) { case '-': @@ -14503,43 +14687,43 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy511; + default: goto yy516; } -yy511: -#line 8987 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy516: +#line 9086 "/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 14512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy512: +#line 14696 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy517: yych = *++context.cursor; switch (yych) { - case 'C': goto yy576; + case 'C': goto yy581; default: goto yy49; } -yy513: +yy518: yych = *++context.cursor; switch (yych) { - case 't': goto yy577; + case 't': goto yy582; default: goto yy49; } -yy514: +yy519: yych = *++context.cursor; switch (yych) { - case 'N': goto yy578; + case 'N': goto yy583; default: goto yy49; } -yy515: +yy520: yych = *++context.cursor; switch (yych) { - case 'U': goto yy579; + case 'U': goto yy584; default: goto yy49; } -yy516: +yy521: yych = *++context.cursor; switch (yych) { - case 'S': goto yy580; + case 'S': goto yy585; default: goto yy49; } -yy517: +yy522: yych = *++context.cursor; switch (yych) { case '-': @@ -14606,25 +14790,25 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy518; + default: goto yy523; } -yy518: -#line 9000 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy523: +#line 9099 "/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 14615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy519: +#line 14799 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy524: yych = *++context.cursor; switch (yych) { - case 'L': goto yy581; + case 'L': goto yy586; default: goto yy49; } -yy520: +yy525: yych = *++context.cursor; switch (yych) { - case 'e': goto yy583; + case 'e': goto yy588; default: goto yy49; } -yy521: +yy526: yych = *++context.cursor; switch (yych) { case '-': @@ -14691,19 +14875,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy522; + default: goto yy527; } -yy522: -#line 9002 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy527: +#line 9101 "/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 14700 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy523: +#line 14884 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy528: yych = *++context.cursor; switch (yych) { - case 'F': goto yy584; + case 'F': goto yy589; default: goto yy49; } -yy524: +yy529: yych = *++context.cursor; switch (yych) { case '-': @@ -14770,13 +14954,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy525; + default: goto yy530; } -yy525: -#line 9005 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy530: +#line 9104 "/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 14779 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy526: +#line 14963 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy531: yych = *++context.cursor; switch (yych) { case '-': @@ -14843,67 +15027,67 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy527; + default: goto yy532; } -yy527: -#line 9007 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy532: +#line 9106 "/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 14852 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy528: +#line 15036 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy533: yych = *++context.cursor; switch (yych) { - case 'l': goto yy585; + case 'l': goto yy590; default: goto yy49; } -yy529: +yy534: yych = *++context.cursor; switch (yych) { - case 'E': goto yy586; + case 'E': goto yy591; default: goto yy49; } -yy530: +yy535: yych = *++context.cursor; switch (yych) { - case 'E': goto yy587; + case 'E': goto yy592; default: goto yy49; } -yy531: +yy536: yych = *++context.cursor; switch (yych) { - case 'S': goto yy589; + case 'S': goto yy594; default: goto yy49; } -yy532: +yy537: yych = *++context.cursor; switch (yych) { - case 'n': goto yy591; + case 'n': goto yy596; default: goto yy49; } -yy533: +yy538: yych = *++context.cursor; switch (yych) { - case '-': goto yy592; + case '-': goto yy597; default: goto yy49; } -yy534: +yy539: yych = *++context.cursor; switch (yych) { - case 'E': goto yy593; + case 'E': goto yy598; default: goto yy49; } -yy535: +yy540: yych = *++context.cursor; switch (yych) { - case 'S': goto yy594; + case 'S': goto yy599; default: goto yy49; } -yy536: +yy541: yych = *++context.cursor; switch (yych) { - case 'A': goto yy595; + case 'A': goto yy600; default: goto yy49; } -yy537: +yy542: yych = *++context.cursor; switch (yych) { case '-': @@ -14970,97 +15154,97 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy538; + default: goto yy543; } -yy538: -#line 9028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy543: +#line 9127 "/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 14979 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy539: +#line 15163 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy544: yych = *++context.cursor; switch (yych) { - case 'i': goto yy596; + case 'i': goto yy601; default: goto yy49; } -yy540: +yy545: yych = *++context.cursor; switch (yych) { - case 'a': goto yy597; + case 'a': goto yy602; default: goto yy49; } -yy541: +yy546: yych = *++context.cursor; switch (yych) { - case 'x': goto yy598; + case 'x': goto yy603; default: goto yy49; } -yy542: +yy547: yych = *++context.cursor; switch (yych) { - case 'S': goto yy599; + case 'S': goto yy604; default: goto yy49; } -yy543: +yy548: yych = *++context.cursor; switch (yych) { - case '-': goto yy600; + case '-': goto yy605; default: goto yy49; } -yy544: +yy549: yych = *++context.cursor; switch (yych) { - case 'I': goto yy601; + case 'I': goto yy606; default: goto yy49; } -yy545: +yy550: yych = *++context.cursor; switch (yych) { - case 'C': goto yy602; + case 'C': goto yy607; default: goto yy49; } -yy546: +yy551: yych = *++context.cursor; switch (yych) { - case 'g': goto yy604; + case 'g': goto yy609; default: goto yy49; } -yy547: +yy552: yych = *++context.cursor; switch (yych) { - case 'R': goto yy606; + case 'R': goto yy611; default: goto yy49; } -yy548: +yy553: yych = *++context.cursor; switch (yych) { - case 'T': goto yy608; + case 'T': goto yy613; default: goto yy49; } -yy549: +yy554: yych = *++context.cursor; switch (yych) { - case 'N': goto yy610; + case 'N': goto yy615; default: goto yy49; } -yy550: +yy555: yych = *++context.cursor; switch (yych) { - case 'N': goto yy611; + case 'N': goto yy616; default: goto yy49; } -yy551: +yy556: yych = *++context.cursor; switch (yych) { - case 'E': goto yy612; + case 'E': goto yy617; default: goto yy49; } -yy552: +yy557: yych = *++context.cursor; switch (yych) { - case 'O': goto yy614; + case 'O': goto yy619; default: goto yy49; } -yy553: +yy558: yych = *++context.cursor; switch (yych) { case '-': @@ -15127,13 +15311,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy554; + default: goto yy559; } -yy554: -#line 8963 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy559: +#line 9062 "/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 15136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy555: +#line 15320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy560: yych = *++context.cursor; switch (yych) { case '-': @@ -15200,25 +15384,25 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy556; + default: goto yy561; } -yy556: -#line 8964 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy561: +#line 9063 "/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 15209 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy557: +#line 15393 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy562: yych = *++context.cursor; switch (yych) { - case '_': goto yy615; + case '_': goto yy620; default: goto yy49; } -yy558: +yy563: yych = *++context.cursor; switch (yych) { - case 'E': goto yy616; + case 'E': goto yy621; default: goto yy49; } -yy559: +yy564: yych = *++context.cursor; switch (yych) { case '-': @@ -15285,19 +15469,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy560; + default: goto yy565; } -yy560: -#line 8970 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy565: +#line 9069 "/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 15294 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy561: +#line 15478 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy566: yych = *++context.cursor; switch (yych) { - case 'I': goto yy617; + case 'I': goto yy622; default: goto yy49; } -yy562: +yy567: yych = *++context.cursor; switch (yych) { case '-': @@ -15364,43 +15548,43 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy563; + default: goto yy568; } -yy563: -#line 8973 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy568: +#line 9072 "/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 15373 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy564: +#line 15557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy569: yych = *++context.cursor; switch (yych) { - case 't': goto yy618; + case 't': goto yy623; default: goto yy49; } -yy565: +yy570: yych = *++context.cursor; switch (yych) { - case 'z': goto yy619; + case 'z': goto yy624; default: goto yy49; } -yy566: +yy571: yych = *++context.cursor; switch (yych) { - case 't': goto yy620; + case 't': goto yy625; default: goto yy49; } -yy567: +yy572: yych = *++context.cursor; switch (yych) { - case 'g': goto yy621; + case 'g': goto yy626; default: goto yy49; } -yy568: +yy573: yych = *++context.cursor; switch (yych) { - case 'E': goto yy623; + case 'E': goto yy628; default: goto yy49; } -yy569: +yy574: yych = *++context.cursor; switch (yych) { case '-': @@ -15467,13 +15651,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy570; + default: goto yy575; } -yy570: -#line 8981 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy575: +#line 9080 "/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 15476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy571: +#line 15660 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy576: yych = *++context.cursor; switch (yych) { case '-': @@ -15540,13 +15724,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy572; + default: goto yy577; } -yy572: -#line 8984 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy577: +#line 9083 "/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 15549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy573: +#line 15733 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy578: yych = *++context.cursor; switch (yych) { case '-': @@ -15613,49 +15797,49 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy574; + default: goto yy579; } -yy574: -#line 8985 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy579: +#line 9084 "/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 15622 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy575: +#line 15806 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy580: yych = *++context.cursor; switch (yych) { - case 'I': goto yy624; + case 'I': goto yy629; default: goto yy49; } -yy576: +yy581: yych = *++context.cursor; switch (yych) { - case 'T': goto yy625; + case 'T': goto yy630; default: goto yy49; } -yy577: +yy582: yych = *++context.cursor; switch (yych) { - case 'r': goto yy626; + case 'r': goto yy631; default: goto yy49; } -yy578: +yy583: yych = *++context.cursor; switch (yych) { - case 'F': goto yy627; + case 'F': goto yy632; default: goto yy49; } -yy579: +yy584: yych = *++context.cursor; switch (yych) { - case 'M': goto yy628; + case 'M': goto yy633; default: goto yy49; } -yy580: +yy585: yych = *++context.cursor; switch (yych) { - case 't': goto yy629; + case 't': goto yy634; default: goto yy49; } -yy581: +yy586: yych = *++context.cursor; switch (yych) { case '-': @@ -15722,37 +15906,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy582; + default: goto yy587; } -yy582: -#line 9001 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy587: +#line 9100 "/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 15731 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy583: +#line 15915 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy588: yych = *++context.cursor; switch (yych) { - case 's': goto yy630; + case 's': goto yy635; default: goto yy49; } -yy584: +yy589: yych = *++context.cursor; switch (yych) { - case 'I': goto yy631; + case 'I': goto yy636; default: goto yy49; } -yy585: +yy590: yych = *++context.cursor; switch (yych) { - case 'e': goto yy632; + case 'e': goto yy637; default: goto yy49; } -yy586: +yy591: yych = *++context.cursor; switch (yych) { - case '-': goto yy633; + case '-': goto yy638; default: goto yy49; } -yy587: +yy592: yych = *++context.cursor; switch (yych) { case '-': @@ -15819,13 +16003,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy588; + default: goto yy593; } -yy588: -#line 9011 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy593: +#line 9110 "/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 15828 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy589: +#line 16012 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy594: yych = *++context.cursor; switch (yych) { case '-': @@ -15892,79 +16076,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy590; + default: goto yy595; } -yy590: -#line 9013 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy595: +#line 9112 "/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 15901 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy591: +#line 16085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy596: yych = *++context.cursor; switch (yych) { - case 'g': goto yy634; + case 'g': goto yy639; default: goto yy49; } -yy592: +yy597: yych = *++context.cursor; switch (yych) { - case 'D': goto yy636; + case 'D': goto yy641; default: goto yy49; } -yy593: +yy598: yych = *++context.cursor; switch (yych) { - case 'N': goto yy637; + case 'N': goto yy642; default: goto yy49; } -yy594: +yy599: yych = *++context.cursor; switch (yych) { - case 't': goto yy638; + case 't': goto yy643; default: goto yy49; } -yy595: +yy600: yych = *++context.cursor; switch (yych) { - case 'L': goto yy639; + case 'L': goto yy644; default: goto yy49; } -yy596: +yy601: yych = *++context.cursor; switch (yych) { - case 'n': goto yy641; + case 'n': goto yy646; default: goto yy49; } -yy597: +yy602: yych = *++context.cursor; switch (yych) { - case 'l': goto yy642; + case 'l': goto yy647; default: goto yy49; } -yy598: +yy603: yych = *++context.cursor; switch (yych) { - case 'S': goto yy643; + case 'S': goto yy648; default: goto yy49; } -yy599: +yy604: yych = *++context.cursor; switch (yych) { - case 't': goto yy644; + case 't': goto yy649; default: goto yy49; } -yy600: +yy605: yych = *++context.cursor; switch (yych) { - case 'S': goto yy645; + case 'S': goto yy650; default: goto yy49; } -yy601: +yy606: yych = *++context.cursor; switch (yych) { - case 'O': goto yy646; + case 'O': goto yy651; default: goto yy49; } -yy602: +yy607: yych = *++context.cursor; switch (yych) { case '-': @@ -16031,13 +16215,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy603; + default: goto yy608; } -yy603: -#line 8946 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy608: +#line 9045 "/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 16040 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy604: +#line 16224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy609: yych = *++context.cursor; switch (yych) { case '-': @@ -16104,13 +16288,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy605; + default: goto yy610; } -yy605: -#line 8949 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy610: +#line 9048 "/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 16113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy606: +#line 16297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy611: yych = *++context.cursor; switch (yych) { case '-': @@ -16177,13 +16361,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy607; + default: goto yy612; } -yy607: -#line 8952 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy612: +#line 9051 "/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 16186 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy608: +#line 16370 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy613: yych = *++context.cursor; switch (yych) { case '-': @@ -16249,26 +16433,26 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'S': goto yy647; - default: goto yy609; + case 'S': goto yy652; + default: goto yy614; } -yy609: -#line 8955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy614: +#line 9054 "/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 16259 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy610: +#line 16443 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy615: yych = *++context.cursor; switch (yych) { - case 'E': goto yy649; + case 'E': goto yy654; default: goto yy49; } -yy611: +yy616: yych = *++context.cursor; switch (yych) { - case 'G': goto yy650; + case 'G': goto yy655; default: goto yy49; } -yy612: +yy617: yych = *++context.cursor; switch (yych) { case '-': @@ -16335,55 +16519,55 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy613; + default: goto yy618; } -yy613: -#line 8960 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy618: +#line 9059 "/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 16344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy614: +#line 16528 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy619: yych = *++context.cursor; switch (yych) { - case 'N': goto yy652; + case 'N': goto yy657; default: goto yy49; } -yy615: +yy620: yych = *++context.cursor; switch (yych) { - case 'C': goto yy653; + case 'C': goto yy658; default: goto yy49; } -yy616: +yy621: yych = *++context.cursor; switch (yych) { - case 'D': goto yy654; + case 'D': goto yy659; default: goto yy49; } -yy617: +yy622: yych = *++context.cursor; switch (yych) { - case 'L': goto yy656; + case 'L': goto yy661; default: goto yy49; } -yy618: +yy623: yych = *++context.cursor; switch (yych) { - case 'r': goto yy657; + case 'r': goto yy662; default: goto yy49; } -yy619: +yy624: yych = *++context.cursor; switch (yych) { - case 'e': goto yy658; + case 'e': goto yy663; default: goto yy49; } -yy620: +yy625: yych = *++context.cursor; switch (yych) { - case 'r': goto yy659; + case 'r': goto yy664; default: goto yy49; } -yy621: +yy626: yych = *++context.cursor; switch (yych) { case '-': @@ -16450,79 +16634,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy622; + default: goto yy627; } -yy622: -#line 8979 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy627: +#line 9078 "/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 16459 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy623: +#line 16643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy628: yych = *++context.cursor; switch (yych) { - case 'R': goto yy660; + case 'R': goto yy665; default: goto yy49; } -yy624: +yy629: yych = *++context.cursor; switch (yych) { - case 'O': goto yy662; + case 'O': goto yy667; default: goto yy49; } -yy625: +yy630: yych = *++context.cursor; switch (yych) { - case 'I': goto yy663; + case 'I': goto yy668; default: goto yy49; } -yy626: +yy631: yych = *++context.cursor; switch (yych) { - case 'i': goto yy664; + case 'i': goto yy669; default: goto yy49; } -yy627: +yy632: yych = *++context.cursor; switch (yych) { - case 'I': goto yy665; + case 'I': goto yy670; default: goto yy49; } -yy628: +yy633: yych = *++context.cursor; switch (yych) { - case 'B': goto yy666; + case 'B': goto yy671; default: goto yy49; } -yy629: +yy634: yych = *++context.cursor; switch (yych) { - case 'r': goto yy667; + case 'r': goto yy672; default: goto yy49; } -yy630: +yy635: yych = *++context.cursor; switch (yych) { - case 'c': goto yy668; + case 'c': goto yy673; default: goto yy49; } -yy631: +yy636: yych = *++context.cursor; switch (yych) { - case 'N': goto yy669; + case 'N': goto yy674; default: goto yy49; } -yy632: +yy637: yych = *++context.cursor; switch (yych) { - case 'S': goto yy670; + case 'S': goto yy675; default: goto yy49; } -yy633: +yy638: yych = *++context.cursor; switch (yych) { - case 'O': goto yy671; + case 'O': goto yy676; default: goto yy49; } -yy634: +yy639: yych = *++context.cursor; switch (yych) { case '-': @@ -16589,31 +16773,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy635; + default: goto yy640; } -yy635: -#line 9017 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy640: +#line 9116 "/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 16598 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy636: +#line 16782 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy641: yych = *++context.cursor; switch (yych) { - case 'A': goto yy672; + case 'A': goto yy677; default: goto yy49; } -yy637: +yy642: yych = *++context.cursor; switch (yych) { - case 'T': goto yy673; + case 'T': goto yy678; default: goto yy49; } -yy638: +yy643: yych = *++context.cursor; switch (yych) { - case 'r': goto yy674; + case 'r': goto yy679; default: goto yy49; } -yy639: +yy644: yych = *++context.cursor; switch (yych) { case '-': @@ -16680,49 +16864,49 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy640; + default: goto yy645; } -yy640: -#line 9026 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy645: +#line 9125 "/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 16689 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy641: +#line 16873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy646: yych = *++context.cursor; switch (yych) { - case 'g': goto yy675; + case 'g': goto yy680; default: goto yy49; } -yy642: +yy647: yych = *++context.cursor; switch (yych) { - case 'S': goto yy677; + case 'S': goto yy682; default: goto yy49; } -yy643: +yy648: yych = *++context.cursor; switch (yych) { - case 't': goto yy678; + case 't': goto yy683; default: goto yy49; } -yy644: +yy649: yych = *++context.cursor; switch (yych) { - case 'r': goto yy679; + case 'r': goto yy684; default: goto yy49; } -yy645: +yy650: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy680; + case 'Y': goto yy685; default: goto yy49; } -yy646: +yy651: yych = *++context.cursor; switch (yych) { - case 'N': goto yy681; + case 'N': goto yy686; default: goto yy49; } -yy647: +yy652: yych = *++context.cursor; switch (yych) { case '-': @@ -16789,19 +16973,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy648; + default: goto yy653; } -yy648: -#line 8956 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy653: +#line 9055 "/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 16798 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy649: +#line 16982 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy654: yych = *++context.cursor; switch (yych) { - case 'D': goto yy683; + case 'D': goto yy688; default: goto yy49; } -yy650: +yy655: yych = *++context.cursor; switch (yych) { case '-': @@ -16868,25 +17052,25 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy651; + default: goto yy656; } -yy651: -#line 8958 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy656: +#line 9057 "/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 16877 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy652: +#line 17061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy657: yych = *++context.cursor; switch (yych) { - case 'S': goto yy685; + case 'S': goto yy690; default: goto yy49; } -yy653: +yy658: yych = *++context.cursor; switch (yych) { - case 'O': goto yy687; + case 'O': goto yy692; default: goto yy49; } -yy654: +yy659: yych = *++context.cursor; switch (yych) { case '-': @@ -16953,37 +17137,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy655; + default: goto yy660; } -yy655: -#line 8968 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy660: +#line 9067 "/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 16962 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy656: +#line 17146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy661: yych = *++context.cursor; switch (yych) { - case 'I': goto yy688; + case 'I': goto yy693; default: goto yy49; } -yy657: +yy662: yych = *++context.cursor; switch (yych) { - case 'i': goto yy689; + case 'i': goto yy694; default: goto yy49; } -yy658: +yy663: yych = *++context.cursor; switch (yych) { - case 'd': goto yy690; + case 'd': goto yy695; default: goto yy49; } -yy659: +yy664: yych = *++context.cursor; switch (yych) { - case 'i': goto yy691; + case 'i': goto yy696; default: goto yy49; } -yy660: +yy665: yych = *++context.cursor; switch (yych) { case '-': @@ -17050,91 +17234,91 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy661; + default: goto yy666; } -yy661: -#line 8980 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy666: +#line 9079 "/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 17059 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy662: +#line 17243 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy667: yych = *++context.cursor; switch (yych) { - case 'N': goto yy692; + case 'N': goto yy697; default: goto yy49; } -yy663: +yy668: yych = *++context.cursor; switch (yych) { - case 'O': goto yy693; + case 'O': goto yy698; default: goto yy49; } -yy664: +yy669: yych = *++context.cursor; switch (yych) { - case 'n': goto yy694; + case 'n': goto yy699; default: goto yy49; } -yy665: +yy670: yych = *++context.cursor; switch (yych) { - case 'N': goto yy695; + case 'N': goto yy700; default: goto yy49; } -yy666: +yy671: yych = *++context.cursor; switch (yych) { - case 'E': goto yy696; + case 'E': goto yy701; default: goto yy49; } -yy667: +yy672: yych = *++context.cursor; switch (yych) { - case 'i': goto yy697; + case 'i': goto yy702; default: goto yy49; } -yy668: +yy673: yych = *++context.cursor; switch (yych) { - case 'r': goto yy698; + case 'r': goto yy703; default: goto yy49; } -yy669: +yy674: yych = *++context.cursor; switch (yych) { - case 'I': goto yy699; + case 'I': goto yy704; default: goto yy49; } -yy670: +yy675: yych = *++context.cursor; switch (yych) { - case 't': goto yy700; + case 't': goto yy705; default: goto yy49; } -yy671: +yy676: yych = *++context.cursor; switch (yych) { - case 'I': goto yy701; + case 'I': goto yy706; default: goto yy49; } -yy672: +yy677: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy702; + case 'Y': goto yy707; default: goto yy49; } -yy673: +yy678: yych = *++context.cursor; switch (yych) { - case 'I': goto yy704; + case 'I': goto yy709; default: goto yy49; } -yy674: +yy679: yych = *++context.cursor; switch (yych) { - case 'i': goto yy705; + case 'i': goto yy710; default: goto yy49; } -yy675: +yy680: yych = *++context.cursor; switch (yych) { case '-': @@ -17201,37 +17385,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy676; + default: goto yy681; } -yy676: -#line 9029 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy681: +#line 9128 "/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 17210 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy677: +#line 17394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy682: yych = *++context.cursor; switch (yych) { - case 't': goto yy706; + case 't': goto yy711; default: goto yy49; } -yy678: +yy683: yych = *++context.cursor; switch (yych) { - case 'r': goto yy707; + case 'r': goto yy712; default: goto yy49; } -yy679: +yy684: yych = *++context.cursor; switch (yych) { - case 'i': goto yy708; + case 'i': goto yy713; default: goto yy49; } -yy680: +yy685: yych = *++context.cursor; switch (yych) { - case 'N': goto yy709; + case 'N': goto yy714; default: goto yy49; } -yy681: +yy686: yych = *++context.cursor; switch (yych) { case '-': @@ -17298,13 +17482,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy682; + default: goto yy687; } -yy682: -#line 8945 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy687: +#line 9044 "/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 17307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy683: +#line 17491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy688: yych = *++context.cursor; switch (yych) { case '-': @@ -17371,13 +17555,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy684; + default: goto yy689; } -yy684: -#line 8957 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy689: +#line 9056 "/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 17380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy685: +#line 17564 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy690: yych = *++context.cursor; switch (yych) { case '-': @@ -17444,103 +17628,103 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy686; + default: goto yy691; } -yy686: -#line 8962 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy691: +#line 9061 "/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 17453 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy687: +#line 17637 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy692: yych = *++context.cursor; switch (yych) { - case 'N': goto yy710; + case 'N': goto yy715; default: goto yy49; } -yy688: +yy693: yych = *++context.cursor; switch (yych) { - case 'T': goto yy711; + case 'T': goto yy716; default: goto yy49; } -yy689: +yy694: yych = *++context.cursor; switch (yych) { - case 'n': goto yy712; + case 'n': goto yy717; default: goto yy49; } -yy690: +yy695: yych = *++context.cursor; switch (yych) { - case 'T': goto yy713; + case 'T': goto yy718; default: goto yy49; } -yy691: +yy696: yych = *++context.cursor; switch (yych) { - case 'n': goto yy714; + case 'n': goto yy719; default: goto yy49; } -yy692: +yy697: yych = *++context.cursor; switch (yych) { - case 'S': goto yy715; + case 'S': goto yy720; default: goto yy49; } -yy693: +yy698: yych = *++context.cursor; switch (yych) { - case 'N': goto yy717; + case 'N': goto yy722; default: goto yy49; } -yy694: +yy699: yych = *++context.cursor; switch (yych) { - case 'g': goto yy719; + case 'g': goto yy724; default: goto yy49; } -yy695: +yy700: yych = *++context.cursor; switch (yych) { - case 'I': goto yy721; + case 'I': goto yy726; default: goto yy49; } -yy696: +yy701: yych = *++context.cursor; switch (yych) { - case 'R': goto yy722; + case 'R': goto yy727; default: goto yy49; } -yy697: +yy702: yych = *++context.cursor; switch (yych) { - case 'n': goto yy724; + case 'n': goto yy729; default: goto yy49; } -yy698: +yy703: yych = *++context.cursor; switch (yych) { - case 'i': goto yy725; + case 'i': goto yy730; default: goto yy49; } -yy699: +yy704: yych = *++context.cursor; switch (yych) { - case 'T': goto yy726; + case 'T': goto yy731; default: goto yy49; } -yy700: +yy705: yych = *++context.cursor; switch (yych) { - case 'r': goto yy727; + case 'r': goto yy732; default: goto yy49; } -yy701: +yy706: yych = *++context.cursor; switch (yych) { - case 'D': goto yy728; + case 'D': goto yy733; default: goto yy49; } -yy702: +yy707: yych = *++context.cursor; switch (yych) { case '-': @@ -17607,79 +17791,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy703; + default: goto yy708; } -yy703: -#line 9021 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy708: +#line 9120 "/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 17616 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy704: +#line 17800 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy709: yych = *++context.cursor; switch (yych) { - case 'F': goto yy730; + case 'F': goto yy735; default: goto yy49; } -yy705: +yy710: yych = *++context.cursor; switch (yych) { - case 'n': goto yy731; + case 'n': goto yy736; default: goto yy49; } -yy706: +yy711: yych = *++context.cursor; switch (yych) { - case 'r': goto yy732; + case 'r': goto yy737; default: goto yy49; } -yy707: +yy712: yych = *++context.cursor; switch (yych) { - case 'i': goto yy733; + case 'i': goto yy738; default: goto yy49; } -yy708: +yy713: yych = *++context.cursor; switch (yych) { - case 'n': goto yy734; + case 'n': goto yy739; default: goto yy49; } -yy709: +yy714: yych = *++context.cursor; switch (yych) { - case 'T': goto yy735; + case 'T': goto yy740; default: goto yy49; } -yy710: +yy715: yych = *++context.cursor; switch (yych) { - case 'T': goto yy736; + case 'T': goto yy741; default: goto yy49; } -yy711: +yy716: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy737; + case 'Y': goto yy742; default: goto yy49; } -yy712: +yy717: yych = *++context.cursor; switch (yych) { - case 'g': goto yy739; + case 'g': goto yy744; default: goto yy49; } -yy713: +yy718: yych = *++context.cursor; switch (yych) { - case 'i': goto yy741; + case 'i': goto yy746; default: goto yy49; } -yy714: +yy719: yych = *++context.cursor; switch (yych) { - case 'g': goto yy742; + case 'g': goto yy747; default: goto yy49; } -yy715: +yy720: yych = *++context.cursor; switch (yych) { case '-': @@ -17746,13 +17930,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy716; + default: goto yy721; } -yy716: -#line 8986 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy721: +#line 9085 "/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 17755 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy717: +#line 17939 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy722: yych = *++context.cursor; switch (yych) { case '-': @@ -17819,13 +18003,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy718; + default: goto yy723; } -yy718: -#line 8988 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy723: +#line 9087 "/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 17828 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy719: +#line 18012 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy724: yych = *++context.cursor; switch (yych) { case '-': @@ -17892,19 +18076,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy720; + default: goto yy725; } -yy720: -#line 8989 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy725: +#line 9088 "/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 17901 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy721: +#line 18085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy726: yych = *++context.cursor; switch (yych) { - case 'T': goto yy744; + case 'T': goto yy749; default: goto yy49; } -yy722: +yy727: yych = *++context.cursor; switch (yych) { case '-': @@ -17971,40 +18155,40 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy723; + default: goto yy728; } -yy723: -#line 8993 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy728: +#line 9092 "/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 17980 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy724: +#line 18164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy729: yych = *++context.cursor; switch (yych) { - case 'g': goto yy745; + case 'g': goto yy750; default: goto yy49; } -yy725: +yy730: yych = *++context.cursor; switch (yych) { - case 'p': goto yy747; + case 'p': goto yy752; default: goto yy49; } -yy726: +yy731: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy748; + case 'Y': goto yy753; default: goto yy49; } -yy727: +yy732: yych = *++context.cursor; switch (yych) { - case 'i': goto yy750; + case 'i': goto yy755; default: goto yy49; } -yy728: +yy733: yych = *++context.cursor; switch (yych) { - case '-': goto yy751; + case '-': goto yy756; case '0': case '1': case '2': @@ -18068,55 +18252,55 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy729; + default: goto yy734; } -yy729: -#line 9009 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy734: +#line 9108 "/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 18077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy730: +#line 18261 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy735: yych = *++context.cursor; switch (yych) { - case 'I': goto yy752; + case 'I': goto yy757; default: goto yy49; } -yy731: +yy736: yych = *++context.cursor; switch (yych) { - case 'g': goto yy753; + case 'g': goto yy758; default: goto yy49; } -yy732: +yy737: yych = *++context.cursor; switch (yych) { - case 'i': goto yy755; + case 'i': goto yy760; default: goto yy49; } -yy733: +yy738: yych = *++context.cursor; switch (yych) { - case 'n': goto yy756; + case 'n': goto yy761; default: goto yy49; } -yy734: +yy739: yych = *++context.cursor; switch (yych) { - case 'g': goto yy757; + case 'g': goto yy762; default: goto yy49; } -yy735: +yy740: yych = *++context.cursor; switch (yych) { - case 'A': goto yy759; + case 'A': goto yy764; default: goto yy49; } -yy736: +yy741: yych = *++context.cursor; switch (yych) { - case 'R': goto yy760; + case 'R': goto yy765; default: goto yy49; } -yy737: +yy742: yych = *++context.cursor; switch (yych) { case '-': @@ -18183,13 +18367,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy738; + default: goto yy743; } -yy738: -#line 8972 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy743: +#line 9071 "/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 18192 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy739: +#line 18376 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy744: yych = *++context.cursor; switch (yych) { case '-': @@ -18256,19 +18440,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy740; + default: goto yy745; } -yy740: -#line 8977 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy745: +#line 9076 "/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 18265 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy741: +#line 18449 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy746: yych = *++context.cursor; switch (yych) { - case 'm': goto yy761; + case 'm': goto yy766; default: goto yy49; } -yy742: +yy747: yych = *++context.cursor; switch (yych) { case '-': @@ -18335,19 +18519,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy743; + default: goto yy748; } -yy743: -#line 8978 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy748: +#line 9077 "/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 18344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy744: +#line 18528 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy749: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy762; + case 'Y': goto yy767; default: goto yy49; } -yy745: +yy750: yych = *++context.cursor; switch (yych) { case '-': @@ -18414,19 +18598,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy746; + default: goto yy751; } -yy746: -#line 8995 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy751: +#line 9094 "/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 18423 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy747: +#line 18607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy752: yych = *++context.cursor; switch (yych) { - case 't': goto yy764; + case 't': goto yy769; default: goto yy49; } -yy748: +yy753: yych = *++context.cursor; switch (yych) { case '-': @@ -18493,31 +18677,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy749; + default: goto yy754; } -yy749: -#line 9004 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy754: +#line 9103 "/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 18502 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy750: +#line 18686 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy755: yych = *++context.cursor; switch (yych) { - case 'n': goto yy765; + case 'n': goto yy770; default: goto yy49; } -yy751: +yy756: yych = *++context.cursor; switch (yych) { - case 'I': goto yy766; + case 'I': goto yy771; default: goto yy49; } -yy752: +yy757: yych = *++context.cursor; switch (yych) { - case 'E': goto yy767; + case 'E': goto yy772; default: goto yy49; } -yy753: +yy758: yych = *++context.cursor; switch (yych) { case '-': @@ -18584,25 +18768,25 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy754; + default: goto yy759; } -yy754: -#line 9019 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy759: +#line 9118 "/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 18593 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy755: +#line 18777 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy760: yych = *++context.cursor; switch (yych) { - case 'n': goto yy768; + case 'n': goto yy773; default: goto yy49; } -yy756: +yy761: yych = *++context.cursor; switch (yych) { - case 'g': goto yy769; + case 'g': goto yy774; default: goto yy49; } -yy757: +yy762: yych = *++context.cursor; switch (yych) { case '-': @@ -18669,31 +18853,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy758; + default: goto yy763; } -yy758: -#line 9031 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy763: +#line 9130 "/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 18678 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy759: +#line 18862 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy764: yych = *++context.cursor; switch (yych) { - case 'X': goto yy771; + case 'X': goto yy776; default: goto yy49; } -yy760: +yy765: yych = *++context.cursor; switch (yych) { - case 'O': goto yy773; + case 'O': goto yy778; default: goto yy49; } -yy761: +yy766: yych = *++context.cursor; switch (yych) { - case 'e': goto yy774; + case 'e': goto yy779; default: goto yy49; } -yy762: +yy767: yych = *++context.cursor; switch (yych) { case '-': @@ -18760,43 +18944,43 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy763; + default: goto yy768; } -yy763: -#line 8992 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy768: +#line 9091 "/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 18769 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy764: +#line 18953 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy769: yych = *++context.cursor; switch (yych) { - case 'o': goto yy776; + case 'o': goto yy781; default: goto yy49; } -yy765: +yy770: yych = *++context.cursor; switch (yych) { - case 'g': goto yy777; + case 'g': goto yy782; default: goto yy49; } -yy766: +yy771: yych = *++context.cursor; switch (yych) { - case 'R': goto yy779; + case 'R': goto yy784; default: goto yy49; } -yy767: +yy772: yych = *++context.cursor; switch (yych) { - case 'R': goto yy780; + case 'R': goto yy785; default: goto yy49; } -yy768: +yy773: yych = *++context.cursor; switch (yych) { - case 'g': goto yy782; + case 'g': goto yy787; default: goto yy49; } -yy769: +yy774: yych = *++context.cursor; switch (yych) { case '-': @@ -18863,13 +19047,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy770; + default: goto yy775; } -yy770: -#line 9030 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy775: +#line 9129 "/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 18872 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy771: +#line 19056 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy776: yych = *++context.cursor; switch (yych) { case '-': @@ -18936,19 +19120,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy772; + default: goto yy777; } -yy772: -#line 8943 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy777: +#line 9041 "/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 18945 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy773: +#line 19129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy778: yych = *++context.cursor; switch (yych) { - case 'L': goto yy784; + case 'L': goto yy789; default: goto yy49; } -yy774: +yy779: yych = *++context.cursor; switch (yych) { case '-': @@ -19015,19 +19199,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy775; + default: goto yy780; } -yy775: -#line 8976 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy780: +#line 9075 "/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 19024 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy776: +#line 19208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy781: yych = *++context.cursor; switch (yych) { - case 'r': goto yy786; + case 'r': goto yy791; default: goto yy49; } -yy777: +yy782: yych = *++context.cursor; switch (yych) { case '-': @@ -19094,19 +19278,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy778; + default: goto yy783; } -yy778: -#line 9006 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy783: +#line 9105 "/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 19103 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy779: +#line 19287 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy784: yych = *++context.cursor; switch (yych) { - case 'I': goto yy788; + case 'I': goto yy793; default: goto yy49; } -yy780: +yy785: yych = *++context.cursor; switch (yych) { case '-': @@ -19173,13 +19357,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy781; + default: goto yy786; } -yy781: -#line 9023 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy786: +#line 9122 "/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 19182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy782: +#line 19366 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy787: yych = *++context.cursor; switch (yych) { case '-': @@ -19246,13 +19430,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy783; + default: goto yy788; } -yy783: -#line 9027 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy788: +#line 9126 "/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 19255 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy784: +#line 19439 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy789: yych = *++context.cursor; switch (yych) { case '-': @@ -19319,13 +19503,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy785; + default: goto yy790; } -yy785: -#line 8966 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy790: +#line 9065 "/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 19328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy786: +#line 19512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy791: yych = *++context.cursor; switch (yych) { case '-': @@ -19392,13 +19576,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy787; + default: goto yy792; } -yy787: -#line 8997 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy792: +#line 9096 "/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 19401 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy788: +#line 19585 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy793: yych = *++context.cursor; switch (yych) { case '-': @@ -19465,14 +19649,14 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy789; + default: goto yy794; } -yy789: -#line 9010 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy794: +#line 9109 "/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 19474 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19658 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" } -#line 9080 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" } } diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index a4e13e25..1c7de15f 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -100,6 +100,26 @@ add_test(NAME fast_ber_parse_asn_46 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR add_test(NAME fast_ber_parse_asn_47 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/47-set-ext-OK.asn1 parse_test_47) add_test(NAME fast_ber_parse_asn_48 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/48-real-life-OK.asn1 parse_test_48) #add_test(NAME fast_ber_parse_asn_49 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/49-real-life-OK.asn1 parse_test_49) +add_test(NAME fast_ber_parse_asn_50 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/50-constraint-OK.asn1 parse_test_50) +add_test(NAME fast_ber_parse_asn_51 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/51-constraint-SE.asn1 parse_test_51) +add_test(NAME fast_ber_parse_asn_52 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/52-constraint-SE.asn1 parse_test_52) +add_test(NAME fast_ber_parse_asn_53 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/53-constraint-SE.asn1 parse_test_53) +add_test(NAME fast_ber_parse_asn_54 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/54-constraint-SE.asn1 parse_test_54) +add_test(NAME fast_ber_parse_asn_55 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/55-components-of-OK.asn1 parse_test_55) +add_test(NAME fast_ber_parse_asn_56 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/56-components-of-SE.asn1 parse_test_56) +add_test(NAME fast_ber_parse_asn_57 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/57-components-of-OK.asn1 parse_test_57) +add_test(NAME fast_ber_parse_asn_58 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/58-param-OK.asn1 parse_test_58) +#add_test(NAME fast_ber_parse_asn_59 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/59-choice-extended-OK.asn1 parse_test_59) +add_test(NAME fast_ber_parse_asn_60 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/60-any-OK.asn1 parse_test_60) +add_test(NAME fast_ber_parse_asn_61 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/61-any-1-SE.asn1 parse_test_61) +add_test(NAME fast_ber_parse_asn_62 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/62-any-OK.asn1 parse_test_62) +add_test(NAME fast_ber_parse_asn_63 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/63-any-2-SE.asn1 parse_test_63) +add_test(NAME fast_ber_parse_asn_64 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/64-oid-constr-OK.asn1 parse_test_64) +add_test(NAME fast_ber_parse_asn_65 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/65-multi-tag-OK.asn1 parse_test_65) +add_test(NAME fast_ber_parse_asn_66 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/66-ref-simple-OK.asn1 parse_test_66) +add_test(NAME fast_ber_parse_asn_67 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/67-embedded-choice-OK.asn1 parse_test_67) +add_test(NAME fast_ber_parse_asn_68 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/68-enum-default-OK.asn1 parse_test_68) +add_test(NAME fast_ber_parse_asn_69 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/69-reserved-words-OK.asn1 parse_test_69) add_test(NAME fast_ber_compiler_0 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/simple0.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/simple0) add_test(NAME fast_ber_compiler_1 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/simple1.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/simple1) From d148e106c8f0a9b12c03a050b153fe92dd029f8d Mon Sep 17 00:00:00 2001 From: Sam Date: Mon, 22 Apr 2019 04:57:31 +0100 Subject: [PATCH 02/31] Add parsing of TypeIdentifier in DefinedObjectClass type --- src/compiler/asn_compiler.yacc | 36 +- src/compiler/autogen_copy/asn_compiler.hpp | 2825 ++++++++++---------- 2 files changed, 1444 insertions(+), 1417 deletions(-) diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 8ad2e0ea..5f0202b6 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -512,8 +512,8 @@ ObjectSetElements: //| ParameterizedObjectSet; ObjectClassFieldType: - typereference "." FieldNameList -| valuereference "." FieldNameList + UsefulObjectClassReference "." FieldNameList +| typereference "." FieldNameList ObjectClassFieldValue: Type COLON Value; @@ -919,7 +919,7 @@ Type: | SelectionType { std::cerr << "Warning: Not handled - SelectionType\n"; } | TypeFromObject - { std::cerr << std::string("Not handled - TypeFromObject\n"); } + { std::cerr << "Warning: Not handled - TypeFromObject\n"; } //| ValueSetFromObjects { std::cerr << std::string("Not handled - ValueSetFromObjects\n"); } BuiltinType: @@ -961,21 +961,21 @@ NamedType: ValueWithoutTypeIdentifier: BooleanValue - { std::cerr << std::string("Unhandled field: BooleanValue\n"); } + { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } | IRIValue - { std::cerr << std::string("Unhandled field: IRIValue\n"); } + { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } | ASN_NULL - { std::cerr << std::string("Unhandled field: ASN_NULL\n"); } + { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } | TimeValue - { std::cerr << std::string("Unhandled field: TimeValue\n"); } + { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } | bstring - { std::cerr << std::string("Unhandled field: bstring\n"); } + { std::cerr << std::string("Warning: Unhandled field: bstring\n"); } | hstring - { std::cerr << std::string("Unhandled field: hstring\n"); } + { std::cerr << std::string("Warning: Unhandled field: hstring\n"); } | cstring { $$.value_selection = $1; } | CONTAINING Value - { std::cerr << std::string("Unhandled field: CONTAINING\n"); } + { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } | DefinedValue { $$.defined_value = $1; } | GENERIC_IDENTIFIER_LOWERCASE "(" number ")" @@ -986,21 +986,23 @@ ValueWithoutTypeIdentifier: | realnumber { $$.value_selection = $1; } | ObjectClassFieldType - { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } + { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } | Value COLON Value - { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } + { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } //| ObjectClassFieldValue -// { std::cerr << std::string("Unhandled field: ObjectClassFieldValue\n"); } +// { std::cerr << std::string("Warning: Unhandled field: ObjectClassFieldValue\n"); } | "{" SequenceOfValues "}" { $$.value_selection = $2; } | ValueChoice - { std::cerr << std::string("Unhandled field: ValueChoice\n"); } + { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } | OPTIONAL - { std::cerr << std::string("Unhandled field: OPTIONAL\n"); } + { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } | ValueCommaListChoice - { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } + { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } | BY - { std::cerr << std::string("Unhandled field: BY\n"); } + { std::cerr << std::string("Warning: Unhandled field: BY\n"); } +| WITH + { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } Value: ValueWithoutTypeIdentifier diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index 93792b17..d7a87d6f 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -2077,7 +2077,7 @@ namespace yy { enum { yyeof_ = 0, - yylast_ = 3705, ///< Last index in yytable_. + yylast_ = 3786, ///< Last index in yytable_. yynnts_ = 227, ///< Number of nonterminal symbols. yyfinal_ = 6, ///< Termination state number. yyterror_ = 1, @@ -6528,7 +6528,7 @@ namespace yy { case 212: #line 922 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Not handled - TypeFromObject\n"); } + { std::cerr << "Warning: Not handled - TypeFromObject\n"; } #line 6531 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -6726,37 +6726,37 @@ namespace yy { case 245: #line 964 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: BooleanValue\n"); } + { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } #line 6729 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 246: #line 966 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: IRIValue\n"); } + { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } #line 6735 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 247: #line 968 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: ASN_NULL\n"); } + { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } #line 6741 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 248: #line 970 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: TimeValue\n"); } + { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } #line 6747 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 249: #line 972 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: bstring\n"); } + { std::cerr << std::string("Warning: Unhandled field: bstring\n"); } #line 6753 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 250: #line 974 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: hstring\n"); } + { std::cerr << std::string("Warning: Unhandled field: hstring\n"); } #line 6759 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -6768,7 +6768,7 @@ namespace yy { case 252: #line 978 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: CONTAINING\n"); } + { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } #line 6771 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -6798,13 +6798,13 @@ namespace yy { case 258: #line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } + { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } #line 6801 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 259: #line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } + { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } #line 6807 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -6816,216 +6816,216 @@ namespace yy { case 261: #line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: ValueChoice\n"); } + { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } #line 6819 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 262: #line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: OPTIONAL\n"); } + { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } #line 6825 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 263: #line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: ValueCommaListChoice\n"); } + { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } #line 6831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 264: #line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Unhandled field: BY\n"); } + { std::cerr << std::string("Warning: Unhandled field: BY\n"); } #line 6837 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 265: -#line 1007 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } +#line 1005 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } #line 6843 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 266: #line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } + { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } #line 6849 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 272: -#line 1024 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } + case 267: +#line 1011 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } #line 6855 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 273: #line 1026 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } #line 6861 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 277: -#line 1041 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< IntegerType > () = IntegerType{{}}; } + case 274: +#line 1028 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } #line 6867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 278: #line 1043 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } + { yylhs.value.as< IntegerType > () = IntegerType{{}}; } #line 6873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 279: -#line 1047 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } +#line 1045 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } #line 6879 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 280: #line 1049 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } + { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } #line 6885 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 281: -#line 1053 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } +#line 1051 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } #line 6891 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 282: #line 1055 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } + { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } #line 6897 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 283: -#line 1059 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } +#line 1057 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } #line 6903 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 284: #line 1061 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } + { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } #line 6909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 285: -#line 1065 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } +#line 1063 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } #line 6915 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 286: -#line 1069 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1067 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } +#line 6921 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 287: +#line 1071 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[0].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = false; } -#line 6922 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6928 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 287: -#line 1072 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 288: +#line 1074 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[3].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; } -#line 6929 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6935 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 288: -#line 1075 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 289: +#line 1077 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[5].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; yylhs.value.as< EnumeratedType > ().enum_values.insert(yylhs.value.as< EnumeratedType > ().enum_values.end(), yystack_[0].value.as< EnumeratedType > ().enum_values.begin(), yystack_[0].value.as< EnumeratedType > ().enum_values.end()); } -#line 6937 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 - break; - - case 290: -#line 1082 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } #line 6943 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 291: #line 1084 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } + { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } #line 6949 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 292: -#line 1088 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } +#line 1086 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } #line 6955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 293: #line 1090 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; - yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } -#line 6962 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } +#line 6961 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 303: -#line 1130 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceType > () = SequenceType(); } + case 294: +#line 1092 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; + yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } #line 6968 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 304: #line 1132 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } + { yylhs.value.as< SequenceType > () = SequenceType(); } #line 6974 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 305: -#line 1140 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } +#line 1134 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } #line 6980 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 306: -#line 1144 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1142 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } #line 6986 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 307: #line 1146 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } + { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } #line 6992 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 308: #line 1148 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } + { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } #line 6998 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 309: #line 1150 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } + { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } #line 7004 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 310: #line 1152 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } + { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } #line 7010 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 311: #line 1154 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } + { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } #line 7016 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 312: #line 1156 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } + { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } #line 7022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 313: #line 1158 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = {}; } + { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } #line 7028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -7036,176 +7036,176 @@ namespace yy { break; case 315: -#line 1164 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } +#line 1162 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = {}; } #line 7040 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 316: #line 1166 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } + { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } #line 7046 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 317: -#line 1170 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt}; } +#line 1168 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } #line 7052 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 318: #line 1172 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt}; } + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt}; } #line 7058 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 319: #line 1174 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > ()}; } + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt}; } #line 7064 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 321: -#line 1187 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + case 320: +#line 1176 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > ()}; } #line 7070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 322: #line 1189 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7076 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 323: -#line 1193 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetType > () = SetType{}; } +#line 1191 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7082 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 324: #line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } + { yylhs.value.as< SetType > () = SetType{}; } #line 7088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 325: -#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 1197 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } #line 7094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 326: #line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7100 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 327: -#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } +#line 1203 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 328: -#line 1209 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } +#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } #line 7112 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 329: -#line 1213 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } #line 7118 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 330: #line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } #line 7124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 331: #line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { 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()); } + { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } #line 7130 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 332: -#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } +#line 1219 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { 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 7136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 333: #line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yystack_[2].value.as< std::vector > ().push_back( yystack_[0].value.as< NamedType > () ); yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } + { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } #line 7142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 335: -#line 1233 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } + case 334: +#line 1225 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { 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 7148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 336: -#line 1237 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } +#line 1235 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } #line 7154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 337: #line 1239 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } + { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } #line 7160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 338: #line 1241 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } + { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } #line 7166 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 339: -#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } +#line 1243 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } #line 7172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 342: -#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } + case 340: +#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } #line 7178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 344: -#line 1258 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Class > () = Class::universal; } + case 343: +#line 1255 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } #line 7184 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 345: #line 1260 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Class > () = Class::application; } + { yylhs.value.as< Class > () = Class::universal; } #line 7190 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 346: #line 1262 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Class > () = Class::private_; } + { yylhs.value.as< Class > () = Class::application; } #line 7196 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 347: #line 1264 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Class > () = Class::context_specific; } + { yylhs.value.as< Class > () = Class::private_; } #line 7202 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 349: -#line 1277 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { 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 348: +#line 1266 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Class > () = Class::context_specific; } #line 7208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -7216,20 +7216,20 @@ namespace yy { break; case 351: -#line 1283 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } +#line 1281 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { 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 7220 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 352: #line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } #line 7226 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 353: -#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } +#line 1287 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } #line 7232 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -7246,38 +7246,38 @@ namespace yy { break; case 356: -#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } +#line 1295 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } #line 7250 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 357: -#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } +#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } #line 7256 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 359: -#line 1306 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } + case 358: +#line 1303 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } #line 7262 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 393: -#line 1402 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } + case 360: +#line 1308 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } #line 7268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 394: #line 1404 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } + { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } #line 7274 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 395: -#line 1408 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 1406 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } #line 7280 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -7289,7 +7289,7 @@ namespace yy { case 397: #line 1412 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -7301,7 +7301,7 @@ namespace yy { case 399: #line 1416 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7304 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -7313,7 +7313,7 @@ namespace yy { case 401: #line 1420 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7316 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -7323,38 +7323,44 @@ namespace yy { #line 7322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 485: -#line 1595 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } + case 403: +#line 1424 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 486: -#line 1599 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1597 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 7334 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 487: -#line 1603 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1601 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 7340 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 488: -#line 1607 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1605 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 7346 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 489: -#line 1611 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1609 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 7352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; + case 490: +#line 1613 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } +#line 7358 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; -#line 7356 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + +#line 7362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 default: break; } @@ -7609,745 +7615,745 @@ namespace yy { } - const short int asn1_parser::yypact_ninf_ = -704; + const short int asn1_parser::yypact_ninf_ = -653; - const short int asn1_parser::yytable_ninf_ = -489; + const short int asn1_parser::yytable_ninf_ = -490; const short int asn1_parser::yypact_[] = { - -72, -704, 181, -72, 220, 127, -704, -704, 270, 23, - -704, 187, -704, 251, 15, -704, -704, 222, 23, -704, - -704, -704, 240, 235, -704, -704, 280, 291, 301, 348, - -704, -704, 408, 248, 274, -704, -704, -704, 344, 296, - 289, -704, -704, -704, 248, 287, -704, 385, -704, 274, - -704, 174, -704, 68, -704, 350, 294, -704, -704, 298, - 300, -704, -704, 309, -704, 382, 250, 12, -704, -704, - 250, 314, -704, 299, 250, -704, -41, 318, -704, -704, - -704, -704, -704, -704, -704, -704, -704, -704, 12, -704, - -704, -704, 2477, 2778, 318, -704, -704, -704, -704, -72, - 2580, 26, -704, -704, -704, -704, 341, -704, -704, 352, - 327, -704, -704, -704, 366, 336, -704, -704, -704, -704, - -704, 374, 342, -704, -704, 395, -704, 369, -704, -704, - -704, -704, -704, 101, 172, -704, -704, -704, -704, -704, - -704, -704, -704, -704, 2378, 453, -704, 117, -704, -704, - 354, -704, -704, 2877, 335, -704, -704, 359, -704, -704, - 365, 143, -704, -704, -704, -704, -704, -704, -704, -704, - -704, -704, -704, -704, -704, -704, -704, -704, 2679, -704, - -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, - -704, -704, -704, -704, -704, 156, 361, 346, 355, 3079, - 158, -52, 356, 357, -704, -48, -704, -704, -704, -704, - -704, -704, -12, -704, 351, -704, 358, 370, 166, 346, - 363, -704, 364, 383, 371, 384, -704, 373, -704, -42, - 26, 373, -704, -704, 3079, 370, 118, 929, 419, 420, - 3079, 120, 423, 424, 389, -704, -704, -704, 370, 377, - 2, 390, 3079, 213, 368, 1648, -704, 391, -704, 3079, - 3079, 370, 65, 3079, 368, 17, 246, 2148, 497, 0, - 42, -704, -704, -704, -704, 2580, 250, 22, 30, 372, - 373, -704, 400, -704, 393, 3079, 394, -704, 402, 396, - -704, 405, -704, 6, -704, 405, 370, -704, 2980, -704, - 441, 394, -704, -21, 407, -704, 397, -704, -704, -704, - -704, -704, -704, -704, 477, 219, 496, 3079, 498, -704, - 370, -704, -704, 2148, 526, -704, 360, 1400, 1524, 535, - 176, 409, 422, -704, -704, -704, -704, 370, -704, -704, - -704, 394, -704, -704, 411, -58, -50, -29, -16, -704, - 477, 492, -704, 238, -704, 3079, -704, 428, 426, -704, - -704, -704, -704, -704, -704, 3079, 3079, 370, -704, -704, - 429, 3079, 3079, 297, -704, -704, -704, -704, 44, -704, - 370, 2148, -704, -704, -704, -704, -704, -704, 415, -704, - -704, -704, -704, 431, -704, 2148, -704, 2148, -704, 195, - 247, -704, 413, 359, -704, -704, 434, -704, 370, 435, - 200, 425, 416, -704, -704, -704, -704, 122, 427, 1524, - -704, 370, 370, 415, -704, 370, 415, -704, -704, 2148, - -704, -59, 437, -704, -704, 200, 432, 433, -704, -704, - 42, 442, 42, -704, -704, -704, 440, 445, -704, -704, - -704, -704, 1150, -704, -704, -704, -704, -704, 76, -704, - 446, -704, -40, 370, 2012, -704, -704, 74, 28, -704, - 373, 3079, 439, 605, -704, -704, 141, 1768, -704, 454, - 1, 2148, -704, 200, -704, 370, 456, 444, 452, 457, - 455, -704, 447, 462, 468, -704, -704, 1768, -704, -704, - 1768, -704, 370, 922, -704, 370, -704, 370, -704, -704, - 370, -704, 370, -704, 199, 2279, 26, 113, -704, -704, - -704, -704, -704, -704, -704, -704, 464, 200, 368, 200, - 200, 2130, 590, -704, -704, 2148, 2148, 2148, 2148, 2148, - 35, 473, 200, 368, 450, -704, 476, -704, -704, 55, - -704, -704, -704, -704, 431, -704, -704, 341, -704, -704, - -704, 352, 327, -704, -704, -704, -704, 2148, -704, -704, - -704, -704, -704, 366, -704, -704, -704, 336, -704, -704, - -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, - 374, -704, 342, -704, -704, -704, -704, -704, 395, 369, - -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, - -704, 101, 172, -704, -704, -704, -704, -704, -704, -704, - -704, -704, -704, -704, -704, -704, -704, -59, 1892, -704, - 472, 1275, -704, -704, 370, 200, 475, -704, -704, 373, - 58, 480, -704, -704, -60, -704, -704, 394, -704, 491, - 494, -704, 370, 145, -704, -704, -704, -704, 394, -704, - -704, 2580, 579, 200, -704, -704, 89, -704, -704, -704, - 1524, -704, 500, -704, 159, 194, -704, -704, 487, -29, - -704, -704, 2160, -704, -704, -704, 3079, -704, -5, -704, - 14, 13, 20, 506, 297, -704, -704, -704, 200, 501, - 200, 200, 200, 200, 200, -704, -704, -704, 503, -704, - 479, -704, -704, 9, -704, 511, 513, 373, 2148, 504, - -704, -704, -704, 505, 507, 508, 502, 522, 286, 2148, - 514, 525, 515, 370, -704, 516, 517, 518, -704, -704, - 447, 1524, -704, 370, 30, -704, -704, 605, -704, -704, - -704, 14, -704, -704, -704, 550, -704, -704, -704, -704, - 532, -704, -704, 523, 200, 373, 167, -18, 31, -704, - 200, 373, -704, 373, -704, -704, 40, 1524, 517, 373, - 373, -704, -704, -704, -704, -704, 538, -704, 373, 528, - -704, 533, 1150, -704, 200, 544, -704, -704, -704, -704, - -704, -704, -704, 518, -704, 3557, -704, 373, 177, 200, - -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, - -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, - -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, - 3557, -704, 3323, -704, -704, -704, 3206, -704, 534, 3440, - -704, -704, -704, -704, -18, -704, 536, -18 + -74, -653, 114, -74, 67, 24, -653, -653, 105, 2, + -653, 39, -653, 196, 46, -653, -653, 69, 2, -653, + -653, -653, 91, 185, -653, -653, 216, 232, 239, 230, + -653, -653, 347, 252, 215, -653, -653, -653, 291, 244, + 246, -653, -653, -653, 252, 238, -653, 352, -653, 215, + -653, 279, -653, 7, -653, 326, 261, -653, -653, 265, + 278, -653, -653, 286, -653, 363, 236, 17, -653, -653, + 236, 301, -653, 292, 236, -653, -17, 297, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -653, 17, -653, + -653, -653, 2360, 2562, 297, -653, -653, -653, -653, -74, + 2962, 103, -653, -653, -653, -653, -653, 325, -653, -653, + 335, 317, -653, -653, -653, 351, 320, -653, -653, -653, + -653, -653, 361, 327, -653, -653, 384, -653, 353, -653, + -653, -653, -653, -653, 280, 290, -653, -653, -653, -653, + -653, -653, -653, -653, -653, -653, 2661, 439, -653, 319, + -653, -653, 339, -653, -653, 2760, 328, -653, -653, 334, + -653, -653, 340, 235, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + 2463, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, -653, -653, -653, 89, 341, 329, + 3061, 254, 142, 332, 344, -653, 4, -653, 171, -653, + -653, 319, -52, -653, 348, -653, 350, 366, 135, 338, + -653, 359, 381, -653, 362, 382, -653, 357, -653, -58, + 103, 357, -653, -653, 3061, 366, -3, 1175, 416, 421, + 3061, 138, 422, 423, 387, -653, -653, -653, 366, 371, + 45, 460, 391, 3061, 263, 460, 1671, -653, 392, -653, + 3061, 3061, 366, 63, 3061, 44, 273, 2132, 500, 94, + 27, -653, -653, -653, -653, 2962, 236, 54, 29, 375, + 357, -653, 401, -653, 390, 3061, 396, -653, 404, 394, + -653, 406, -653, 119, -653, 406, 366, -653, 2863, -653, + 446, 396, -653, 10, 409, -653, 398, -653, -653, -653, + -653, -653, -653, -653, 478, 95, 497, 3061, 498, -653, + 366, -653, -653, 2132, 530, -653, 379, 1299, 1423, 545, + 151, -653, 428, -653, -653, -653, -653, 366, -653, -653, + -653, 396, -653, -653, 417, -41, -32, -16, -8, -653, + 478, 499, -653, 144, -653, 3061, -653, 432, 426, -653, + -653, -653, -653, -653, -653, 3061, 3061, 366, -653, -653, + 435, 3061, 3061, 296, -653, -653, -653, -653, 31, -653, + -653, -653, -653, -653, -653, 425, -653, 366, 2132, 425, + -653, -653, -653, -653, 438, -653, 2132, -653, -653, 2132, + -653, 186, 270, -653, 424, 334, -653, -653, 436, -653, + 366, 441, 199, 431, 427, -653, -653, -653, -653, 447, + 437, 1423, -653, 366, 366, 425, -653, 366, -653, -653, + 2132, -653, 166, 444, -653, -653, 199, 440, 443, -653, + -653, 27, 448, 27, -653, -653, -653, 451, -653, -653, + -653, -653, 834, -653, -653, -653, -653, -653, 176, -653, + 453, -653, -50, 366, 1917, -653, -653, -24, 25, -653, + 357, 3061, 445, 688, -653, -653, 20, 1547, -653, 459, + -1, 2132, -653, 199, -653, 366, 461, 449, 462, 452, + 457, -653, 450, 463, 466, -653, -653, 1547, -653, -653, + 1547, -653, 366, 658, -653, 366, -653, 366, -653, -653, + 366, -653, 366, -653, 205, 2261, 103, 182, -653, -653, + -653, -653, -653, -653, -653, -653, 464, 460, 199, 199, + 199, 2035, 586, -653, -653, 2132, 2132, 2132, 2132, 2132, + 36, 470, 199, 460, 455, -653, 471, -653, -653, 40, + -653, 465, -653, -653, 438, -653, -653, 325, -653, -653, + -653, 335, 317, -653, -653, -653, -653, 2132, -653, -653, + -653, -653, -653, 351, -653, -653, -653, 320, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + 361, -653, 327, -653, -653, -653, -653, -653, 384, 353, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, 280, 290, -653, -653, -653, -653, -653, -653, -653, + -653, 468, -653, -653, -653, -653, -653, 166, 1796, -653, + 474, 1050, -653, -653, 366, 199, 469, -653, -653, 357, + 49, 475, -653, -653, -12, -653, -653, 396, -653, 472, + 473, -653, 366, 118, -653, -653, -653, -653, 396, -653, + -653, 3160, 557, 199, -653, -653, 132, -653, -653, -653, + 1423, -653, 476, -653, 180, 189, -653, -653, 477, -16, + -653, -653, 2043, -653, -653, -653, 3061, -653, 47, -653, + 52, 111, 57, 482, 296, -653, -653, -653, 199, 481, + 199, 199, 199, 199, 199, -653, -653, -653, 486, -653, + 467, -653, -653, 18, -653, 491, 492, 357, 2132, 483, + -653, -653, -653, 484, 485, 501, 487, 502, 311, 2132, + 488, 504, 493, 366, -653, 495, 496, 503, -653, -653, + 450, 1423, -653, 366, 29, -653, -653, 688, -653, -653, + -653, 52, -653, -653, -653, 519, -653, -653, -653, -653, + 508, -653, -653, 506, 199, 357, 159, 12, 2067, -653, + 199, 357, -653, 357, -653, -653, 34, 1423, 496, 357, + 357, -653, -653, -653, -653, -653, 511, -653, 357, 507, + -653, 510, 834, -653, 199, 513, -653, -653, -653, -653, + -653, -653, -653, 503, -653, 3638, -653, 357, 165, 199, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, 3638, -653, 3404, -653, -653, -653, 3287, + -653, 514, 3521, -653, -653, -653, -653, 12, -653, 515, + 12 }; const unsigned short int asn1_parser::yydefact_[] = { - 0, 488, 0, 2, 0, 142, 1, 3, 153, 0, - 139, 140, 141, 0, 157, 150, 486, 0, 145, 148, - 149, 147, 356, 0, 144, 152, 0, 0, 0, 159, - 143, 146, 0, 0, 365, 156, 154, 155, 0, 0, - 0, 366, 367, 363, 0, 0, 158, 0, 151, 365, - 362, 164, 364, 166, 138, 168, 0, 485, 487, 0, + 0, 489, 0, 2, 0, 142, 1, 3, 153, 0, + 139, 140, 141, 0, 157, 150, 487, 0, 145, 148, + 149, 147, 357, 0, 144, 152, 0, 0, 0, 159, + 143, 146, 0, 0, 366, 156, 154, 155, 0, 0, + 0, 367, 368, 364, 0, 0, 158, 0, 151, 366, + 363, 164, 365, 166, 138, 168, 0, 486, 488, 0, 165, 178, 180, 181, 183, 0, 170, 0, 163, 162, - 0, 0, 4, 0, 169, 171, 0, 0, 485, 188, + 0, 0, 4, 0, 169, 171, 0, 0, 486, 188, 190, 191, 90, 91, 92, 93, 94, 160, 184, 186, 187, 189, 0, 0, 0, 179, 182, 167, 172, 0, - 0, 0, 185, 63, 213, 302, 0, 379, 274, 0, - 0, 373, 375, 376, 0, 0, 370, 224, 380, 381, - 382, 0, 277, 383, 384, 0, 230, 0, 361, 385, - 294, 360, 368, 0, 0, 387, 386, 371, 374, 388, - 243, 389, 390, 391, 0, 341, 485, 486, 109, 62, - 0, 78, 229, 0, 0, 212, 225, 0, 210, 194, - 192, 0, 208, 215, 226, 222, 233, 214, 232, 228, - 236, 237, 238, 239, 217, 211, 240, 335, 0, 231, - 235, 227, 234, 221, 223, 241, 218, 242, 219, 220, - 216, 377, 378, 209, 394, 79, 0, 0, 0, 0, - 0, 193, 0, 0, 173, 177, 11, 10, 485, 108, - 6, 8, 0, 101, 0, 105, 104, 107, 181, 183, - 0, 7, 489, 0, 0, 295, 392, 0, 369, 0, - 0, 0, 348, 301, 0, 0, 0, 0, 0, 0, + 0, 0, 185, 63, 11, 213, 303, 0, 380, 275, + 0, 0, 374, 376, 377, 0, 0, 371, 224, 381, + 382, 383, 0, 278, 384, 385, 0, 230, 0, 362, + 386, 295, 361, 369, 0, 0, 388, 387, 372, 375, + 10, 389, 243, 390, 391, 392, 0, 342, 486, 0, + 109, 62, 0, 78, 229, 0, 0, 212, 225, 0, + 210, 194, 192, 0, 208, 215, 226, 222, 233, 214, + 232, 228, 236, 237, 238, 239, 217, 211, 240, 336, + 0, 231, 235, 227, 234, 221, 223, 241, 218, 242, + 219, 220, 216, 378, 379, 209, 395, 79, 0, 0, + 0, 0, 193, 0, 0, 173, 177, 486, 487, 108, + 6, 8, 0, 101, 0, 105, 104, 107, 181, 0, + 7, 490, 0, 8, 0, 296, 393, 0, 370, 0, + 0, 0, 349, 302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 12, 14, 205, 0, - 347, 0, 0, 0, 0, 0, 197, 0, 393, 0, - 0, 336, 0, 0, 0, 0, 0, 0, 0, 0, + 348, 0, 0, 0, 0, 0, 0, 197, 0, 394, + 0, 0, 337, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 100, 0, 0, 0, 0, 0, - 0, 332, 0, 328, 329, 0, 481, 293, 0, 286, - 290, 292, 111, 0, 279, 0, 321, 322, 0, 458, - 0, 481, 303, 317, 0, 305, 306, 315, 283, 446, - 440, 441, 442, 372, 0, 302, 0, 0, 0, 276, - 0, 448, 455, 0, 0, 275, 0, 0, 0, 0, - 443, 444, 125, 405, 116, 117, 118, 459, 437, 445, - 439, 481, 404, 406, 407, 410, 0, 412, 0, 415, - 0, 418, 426, 428, 429, 0, 430, 0, 450, 432, - 433, 431, 434, 435, 436, 0, 0, 325, 326, 323, - 0, 0, 0, 0, 340, 345, 346, 344, 0, 81, - 95, 0, 23, 24, 25, 26, 27, 28, 110, 257, - 249, 250, 251, 247, 264, 0, 262, 0, 255, 485, - 487, 202, 229, 0, 253, 196, 0, 114, 200, 265, - 0, 263, 261, 245, 256, 246, 248, 195, 0, 0, - 207, 338, 337, 88, 203, 334, 89, 64, 80, 0, - 247, 266, 487, 258, 265, 206, 0, 0, 98, 357, - 358, 0, 351, 353, 354, 355, 356, 195, 102, 103, - 489, 9, 0, 65, 99, 66, 67, 68, 0, 297, - 0, 327, 0, 244, 0, 289, 285, 0, 0, 278, - 0, 0, 313, 0, 318, 304, 0, 0, 411, 0, - 135, 0, 460, 478, 479, 0, 0, 85, 0, 83, - 0, 284, 0, 0, 0, 423, 422, 0, 425, 424, - 0, 419, 447, 0, 451, 397, 401, 398, 402, 324, - 395, 399, 396, 400, 33, 0, 0, 0, 16, 18, - 19, 20, 21, 22, 342, 343, 0, 97, 0, 252, - 272, 0, 0, 198, 199, 0, 0, 0, 0, 0, - 0, 0, 96, 0, 0, 358, 0, 349, 352, 0, - 491, 492, 493, 494, 247, 496, 497, 498, 379, 274, - 264, 502, 503, 504, 505, 506, 507, 508, 373, 375, - 511, 512, 376, 514, 515, 516, 517, 518, 519, 520, - 521, 522, 370, 276, 525, 526, 527, 528, 529, 530, - 531, 532, 277, 534, 535, 536, 537, 538, 539, 540, - 541, 361, 262, 544, 545, 546, 547, 548, 294, 360, - 368, 552, 553, 554, 555, 556, 557, 558, 371, 374, - 275, 562, 563, 564, 565, 566, 61, 266, 0, 74, - 0, 0, 72, 75, 76, 77, 0, 60, 296, 0, - 0, 330, 333, 483, 0, 482, 480, 481, 291, 0, - 0, 280, 320, 0, 438, 443, 444, 319, 481, 316, - 421, 124, 0, 136, 463, 461, 0, 462, 464, 465, - 0, 82, 0, 427, 0, 0, 127, 403, 408, 413, - 416, 457, 0, 456, 449, 452, 0, 31, 44, 30, - 39, 35, 48, 50, 0, 339, 29, 260, 273, 0, - 267, 259, 269, 268, 270, 204, 271, 350, 0, 70, - 0, 71, 73, 0, 298, 0, 0, 0, 0, 287, - 282, 281, 314, 311, 307, 108, 0, 0, 107, 0, - 0, 0, 468, 473, 86, 84, 132, 129, 133, 126, - 0, 0, 453, 32, 0, 42, 41, 0, 37, 40, - 34, 39, 47, 46, 45, 0, 15, 17, 254, 359, - 0, 299, 300, 331, 484, 0, 0, 0, 0, 119, - 137, 0, 466, 0, 472, 470, 477, 0, 132, 0, - 0, 128, 409, 43, 38, 36, 0, 69, 0, 288, - 312, 308, 0, 121, 120, 0, 469, 475, 476, 474, - 471, 87, 131, 130, 134, 59, 49, 0, 0, 77, - 467, 495, 498, 499, 500, 501, 502, 503, 508, 509, - 510, 513, 514, 518, 523, 524, 531, 533, 539, 540, - 542, 543, 549, 550, 551, 552, 553, 559, 560, 561, - 59, 490, 59, 51, 54, 53, 0, 57, 309, 59, - 5, 52, 56, 58, 0, 55, 310, 0 + 0, 333, 0, 329, 330, 0, 482, 294, 0, 287, + 291, 293, 111, 0, 280, 0, 322, 323, 0, 459, + 0, 482, 304, 318, 0, 306, 307, 316, 284, 447, + 441, 442, 443, 373, 0, 303, 0, 0, 0, 277, + 0, 449, 456, 0, 0, 276, 0, 0, 0, 0, + 444, 445, 125, 406, 116, 117, 118, 460, 438, 446, + 440, 482, 405, 407, 408, 411, 0, 413, 0, 416, + 0, 419, 427, 429, 430, 0, 431, 0, 451, 433, + 434, 432, 435, 436, 437, 0, 0, 326, 327, 324, + 0, 0, 0, 0, 341, 346, 347, 345, 0, 23, + 24, 25, 26, 27, 28, 88, 81, 95, 0, 110, + 257, 249, 250, 251, 247, 264, 0, 262, 265, 0, + 255, 486, 488, 202, 229, 0, 253, 196, 0, 114, + 200, 266, 0, 263, 261, 245, 256, 246, 248, 195, + 0, 0, 207, 339, 338, 89, 203, 335, 64, 80, + 0, 247, 267, 488, 258, 266, 206, 0, 0, 98, + 358, 359, 0, 352, 354, 355, 356, 357, 102, 103, + 490, 9, 0, 65, 99, 66, 67, 68, 0, 298, + 0, 328, 0, 244, 0, 290, 286, 0, 0, 279, + 0, 0, 314, 0, 319, 305, 0, 0, 412, 0, + 135, 0, 461, 479, 480, 0, 0, 85, 0, 83, + 0, 285, 0, 0, 0, 424, 423, 0, 426, 425, + 0, 420, 448, 0, 452, 398, 402, 399, 403, 325, + 396, 400, 397, 401, 33, 0, 0, 0, 16, 18, + 19, 20, 21, 22, 343, 344, 0, 0, 97, 252, + 273, 0, 0, 198, 199, 0, 0, 0, 0, 0, + 0, 0, 96, 0, 0, 359, 0, 350, 353, 0, + 492, 493, 494, 495, 247, 497, 498, 499, 380, 275, + 264, 503, 504, 505, 506, 507, 508, 509, 374, 376, + 512, 513, 377, 515, 516, 517, 518, 519, 520, 521, + 522, 523, 371, 277, 526, 527, 528, 529, 530, 531, + 532, 533, 278, 535, 536, 537, 538, 539, 540, 541, + 542, 362, 262, 545, 546, 547, 548, 549, 295, 361, + 369, 553, 554, 555, 556, 557, 558, 559, 372, 375, + 276, 563, 564, 565, 566, 265, 61, 267, 0, 74, + 0, 0, 72, 75, 76, 77, 0, 60, 297, 0, + 0, 331, 334, 484, 0, 483, 481, 482, 292, 0, + 0, 281, 321, 0, 439, 444, 445, 320, 482, 317, + 422, 124, 0, 136, 464, 462, 0, 463, 465, 466, + 0, 82, 0, 428, 0, 0, 127, 404, 409, 414, + 417, 458, 0, 457, 450, 453, 0, 31, 44, 30, + 39, 35, 48, 50, 0, 340, 29, 260, 274, 0, + 268, 259, 270, 269, 271, 204, 272, 351, 0, 70, + 0, 71, 73, 0, 299, 0, 0, 0, 0, 288, + 283, 282, 315, 312, 308, 108, 0, 0, 107, 0, + 0, 0, 469, 474, 86, 84, 132, 129, 133, 126, + 0, 0, 454, 32, 0, 42, 41, 0, 37, 40, + 34, 39, 47, 46, 45, 0, 15, 17, 254, 360, + 0, 300, 301, 332, 485, 0, 0, 0, 0, 119, + 137, 0, 467, 0, 473, 471, 478, 0, 132, 0, + 0, 128, 410, 43, 38, 36, 0, 69, 0, 289, + 313, 309, 0, 121, 120, 0, 470, 476, 477, 475, + 472, 87, 131, 130, 134, 59, 49, 0, 0, 77, + 468, 493, 496, 499, 500, 501, 502, 503, 504, 509, + 510, 511, 514, 515, 519, 524, 525, 532, 534, 540, + 541, 543, 544, 550, 551, 552, 553, 554, 560, 561, + 562, 563, 567, 59, 491, 59, 51, 54, 53, 0, + 57, 310, 59, 5, 52, 56, 58, 0, 55, 311, + 0 }; const short int asn1_parser::yypgoto_[] = { - -704, 659, -704, -704, -87, -704, -704, -704, 404, -704, - -704, -23, -441, -182, -704, -704, -704, -704, -75, -704, - -704, -704, -704, -704, -704, -166, -703, -704, -704, -704, - -437, -274, -704, -645, -704, -704, -704, -704, -704, 46, - 51, -704, -704, -704, 430, -704, 340, -704, -704, -704, - -704, -704, -704, 295, -704, 410, -704, 21, -704, -704, - -704, -704, -704, -704, -704, -704, -704, -704, -56, -92, - -91, -704, -704, -704, -704, -704, -704, 671, -704, 660, - -704, -704, -704, -704, -704, -704, -704, -704, -704, -704, - 617, -704, -704, 640, 624, -77, 607, -704, -704, -267, - -704, -704, 302, -704, -704, -704, -704, -704, -704, 52, - -704, -215, 443, 380, -704, -704, -704, -704, -704, -51, - -704, -704, -214, -119, -704, -704, -68, -446, -704, -704, - -704, 60, -704, -704, -704, 459, -704, -640, -456, -704, - -704, -704, -704, -704, -704, -15, -704, -704, -704, -704, - -704, -704, -704, -704, -704, -63, -704, 237, 152, -704, - -704, -704, 693, -704, 657, 663, -704, -704, -704, -704, - -22, -704, -704, -704, -704, -704, -704, -704, -704, -704, - -132, -704, -704, -297, -311, -704, -704, 212, -704, 210, - -704, 362, -704, -704, 234, -704, -463, -704, -704, -704, - -704, -704, -704, 33, -127, -704, -704, -704, -704, -704, - -704, -704, -391, -704, -704, -704, -704, -704, -704, -283, - -704, 67, -9, 47, 5, -43, -704 + -653, 620, -653, -653, -88, -653, -97, -653, 369, -653, + -653, -59, -433, 157, -653, -653, -653, -653, -104, -653, + -653, -653, -653, -653, -653, -194, -512, -653, -653, -653, + -425, -264, -653, -652, -653, -653, -653, -653, -653, 21, + 26, -653, -653, -653, 403, -653, -189, -653, -653, -653, + -653, -653, -653, 337, -653, 383, -653, -5, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -653, -81, -118, + -108, -653, -653, -653, -653, -653, -653, 643, -653, 640, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + 600, -653, -653, 622, 606, -75, 590, -653, -653, -159, + -653, -653, 274, -653, -653, -653, -653, -653, -653, -70, + -653, -222, 429, 285, -653, -653, -653, -653, -653, -29, + -653, -653, -221, -132, -653, -653, -85, -434, -653, -653, + -653, 48, -653, -653, -653, 442, -653, -636, -450, -653, + -653, -653, -653, -653, -653, -31, -653, -653, -653, -653, + -653, -653, -653, -653, -653, -348, -653, 139, 140, -653, + -653, -653, 677, -653, 641, 651, -653, -653, -653, -653, + 0, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -133, -653, -653, -283, -295, -653, -653, 200, -653, 201, + -653, 354, -653, -653, 223, -653, -437, -653, -653, -653, + -653, -653, -653, 23, -119, -653, -653, -653, -653, -653, + -653, -653, -538, -653, -653, -653, -653, -653, -653, -258, + -653, -19, -9, -46, 8, -27, -653 }; const short int asn1_parser::yydefgoto_[] = { - -1, 2, 3, 806, 209, 210, 211, 79, 246, 247, - 517, 518, 387, 423, 519, 689, 751, 520, 749, 521, - 522, 746, 523, 754, 756, 842, 843, 844, 845, 846, - 847, 148, 149, 454, 455, 456, 630, 457, 631, 632, - 633, 150, 151, 80, 332, 488, 152, 81, 82, 83, - 84, 85, 86, 101, 212, 213, 214, 215, 154, 155, - 156, 157, 403, 333, 334, 727, 335, 675, 676, 779, + -1, 2, 3, 806, 209, 210, 149, 79, 246, 247, + 517, 518, 384, 425, 519, 689, 751, 520, 749, 521, + 522, 746, 523, 754, 756, 845, 846, 847, 848, 849, + 850, 150, 151, 454, 455, 456, 630, 457, 631, 632, + 633, 152, 153, 80, 332, 488, 154, 81, 82, 83, + 84, 85, 86, 101, 212, 213, 214, 215, 156, 157, + 158, 159, 405, 333, 334, 727, 335, 675, 676, 779, 737, 336, 65, 4, 10, 11, 12, 17, 18, 19, 20, 14, 29, 39, 54, 55, 59, 67, 73, 74, - 75, 204, 271, 76, 61, 62, 87, 88, 158, 404, - 159, 405, 256, 406, 160, 407, 89, 90, 91, 337, - 162, 303, 434, 635, 411, 412, 420, 531, 163, 413, - 164, 293, 287, 414, 165, 288, 289, 290, 166, 167, - 458, 459, 168, 169, 170, 304, 305, 306, 307, 171, - 172, 173, 174, 282, 283, 284, 175, 176, 177, 178, - 250, 526, 378, 179, 272, 441, 442, 443, 444, 445, - 180, 181, 415, 34, 45, 43, 182, 183, 184, 185, - 416, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 258, 341, 342, 343, 344, 345, 346, 347, 348, 349, + 75, 205, 271, 76, 61, 62, 87, 88, 160, 406, + 161, 407, 257, 408, 162, 409, 89, 90, 91, 337, + 164, 303, 435, 635, 413, 414, 422, 531, 165, 415, + 166, 293, 287, 416, 167, 288, 289, 290, 168, 169, + 458, 459, 170, 171, 172, 304, 305, 306, 307, 173, + 174, 175, 176, 282, 283, 284, 177, 178, 179, 180, + 250, 526, 378, 181, 272, 442, 443, 444, 445, 446, + 182, 183, 417, 34, 45, 43, 184, 185, 186, 187, + 418, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 259, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 478, 497, 500, 351, 352, 353, 354, 355, 356, 357, 684, 358, 685, 359, 360, 361, 362, 665, 667, 668, 669, 731, 732, 775, 776, 800, 363, 364, 465, - 646, 201, 196, 197, 202, 221, 637 + 646, 202, 198, 419, 203, 220, 637 }; const short int asn1_parser::yytable_[] = { - 22, 238, 242, 440, 453, 5, 239, 243, 5, 22, - 657, 628, 281, 723, 223, 629, 489, 294, 472, 297, - 659, 648, 99, 216, 94, 368, 300, 15, 473, 206, - 427, 490, 308, 77, 375, 308, 389, 390, 427, 391, - 683, 392, 244, 427, 744, 94, 439, -417, 524, 26, - 313, 103, 103, -414, 662, 206, 427, 245, 493, 439, - 498, 495, 715, 747, 430, 237, -485, 474, 797, 752, - 394, -113, 388, 27, 690, 270, 1, 395, -485, 286, - 718, 641, 426, 745, 28, 262, -414, 696, 382, 383, - 384, 385, 386, 319, 496, 70, 376, 198, 56, 783, - 64, 58, 748, 299, 205, 220, 224, 16, 753, 16, - 207, 525, 274, 64, 93, 377, -417, 64, 339, 396, - 63, 64, 541, 793, 275, 750, 237, 791, 798, 499, - 469, 16, 799, 63, 92, 93, 207, 63, 237, 851, - 325, 63, 470, 292, 161, 200, 851, 219, 222, 220, - 506, 508, 217, 452, 792, 92, 511, 513, 58, 195, - 78, 58, 300, 23, 300, 57, 329, 218, 401, 329, - 450, 398, 16, 545, 222, 545, 1, 58, 1, 431, - 432, 6, 245, 450, 58, 300, 338, 234, 482, 300, - 1, 147, 1, 58, 629, 647, 248, 643, 216, 449, - 638, 649, 235, 1, 58, 253, 1, 58, 339, 339, - 730, 300, 639, 57, 856, 340, 57, 58, 285, 683, - 291, 300, 295, 16, 236, 298, 237, 285, 206, -161, - 261, 298, 285, 53, 451, 224, 451, 693, 16, 301, - -487, 301, 302, -487, 369, -115, 21, 642, 686, 694, - 9, 266, 273, -487, -487, 21, 651, -487, 240, 264, - 418, 446, 658, 257, 41, 42, 722, 16, 237, 16, - 8, 460, 437, 235, 224, 437, 338, 338, 267, -113, - 220, -193, 545, 237, 784, 13, 296, 687, 790, 71, - 16, -193, 367, 262, 16, 241, 736, 237, 848, -485, - 339, -485, 417, 262, 380, 340, 340, 408, 16, 207, - 659, 421, 422, -485, 417, 425, 16, 447, 739, 23, - 514, 515, 219, 64, 516, 25, 16, 217, 437, 424, - 740, -266, 428, 381, 436, -266, 535, 463, 237, -266, - 536, -438, 218, 63, 537, 645, 30, 222, -438, 650, - 463, 628, 659, 664, 339, 629, 298, 298, 339, 734, - -454, 648, 298, 298, 719, 32, 429, -454, 338, 480, - 417, 237, 532, 716, 33, 724, -486, 546, 339, 548, - 795, 339, 796, 437, 339, 35, 437, 153, 199, 203, - 436, 382, 383, 384, 385, 386, 36, 340, 57, 58, - 437, 659, 437, 485, 486, 852, 37, 502, 38, 853, - -122, 237, 15, 44, 46, 48, 47, 505, 507, 50, - 51, 66, 338, 510, 512, 447, 338, 688, 417, 692, - 782, 446, 71, 446, 437, 68, 70, 72, 96, 69, - 97, 100, 417, 225, 417, 437, 338, 437, 436, 338, - 227, 340, 338, 285, 226, 340, 228, 636, 291, 229, - 230, 295, 436, 232, 436, 231, 801, 285, 249, 636, - 453, 233, 254, 437, 251, 340, 417, 269, 340, 238, - 242, 340, 255, 264, 239, 243, 437, 447, -112, 447, - 263, 276, 265, 268, 453, 237, 436, 451, -106, 417, - 277, -488, 281, 278, 634, 365, 366, 280, 279, 371, - 372, 417, 373, 327, 419, 447, 644, 374, 427, 224, - 450, 224, 16, 652, 461, 464, 466, 471, 417, 462, - 468, 475, 467, 476, 477, 479, 437, 481, 484, 491, - 437, 437, 437, 437, 437, 492, -487, 494, 436, -420, - 503, 339, 528, 509, 437, 504, -302, -258, 534, -201, - 539, 538, 532, 339, 540, 549, 547, 691, -115, 543, - 544, 640, 437, 642, 725, 653, 671, 661, 417, 666, - 670, 673, 417, 417, 417, 417, 417, 705, 677, 678, - 674, 705, 695, 672, 699, 402, 447, 706, 436, 58, - 707, 774, 436, 436, 436, 436, 436, 433, 710, 308, - 309, 310, 713, 311, 417, 312, 717, 720, 729, 338, - 721, 735, 339, 741, 313, 755, 760, 758, 339, 759, - 460, 338, -123, 636, 436, 410, 636, 761, 654, 762, - 765, 766, 768, 767, 285, 437, 769, 435, 340, 772, - 771, 773, 777, 786, 778, 780, 787, 733, 339, 788, - 340, 805, 7, 433, 807, 738, 220, 319, 810, 808, - 854, 757, 857, 438, 849, 417, 785, 712, 417, 709, - 634, 379, 726, 634, 781, 448, 802, 447, 803, 31, - 338, 98, 40, 60, 95, 102, 338, 789, 409, 714, - 370, 708, 763, 483, 24, 533, 52, 49, 285, 679, - 680, 660, 501, 728, 325, 742, 0, 0, 0, 340, - 0, 433, 0, 437, 0, 340, 338, 0, 0, 0, - 0, 0, 0, 0, 437, 433, 0, 433, 743, 0, - 0, 0, 0, 329, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 655, 656, 340, 291, 285, 285, 0, - 705, 527, 733, 0, 733, 417, 0, 0, 0, 433, - 738, 804, 0, 636, 0, 529, 417, 530, 0, 285, - 0, 0, 0, 0, 0, 436, 0, 0, 0, 0, - 0, 0, 402, 0, 0, 0, 436, 636, 291, 285, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 542, - 0, 0, 0, 0, 0, 417, 0, 0, 0, 0, - 0, 433, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 436, 0, 0, 0, 417, - 0, 0, 0, 0, 634, 285, 0, 0, 285, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 663, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 433, 0, 0, 0, 433, 433, 433, 433, 433, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 22, 238, 242, 211, 223, 281, 15, 64, 5, 22, + 294, 5, 297, 222, 453, 239, 243, 723, 368, 628, + 64, 93, 163, 201, 64, 216, 659, 629, 64, 308, + 217, 440, 489, 648, 63, 524, 657, 56, 77, 428, + 94, 300, 93, 472, 440, 490, 99, 63, 92, 211, + 103, 63, 662, 715, 64, 63, 300, 428, 245, 473, + -418, 94, 797, 286, 300, 428, 683, 404, 498, 92, + -415, 641, 274, 197, 1, 428, 248, 375, 434, 495, + 26, 218, 690, 493, 275, 254, 379, 380, 381, 382, + 383, 16, 783, 546, 696, 548, 744, 647, 474, 16, + 199, 747, 299, -415, 27, 339, 752, 206, 219, 224, + 262, 441, 496, 237, 6, 28, 793, 8, 301, 70, + 13, 302, 798, 104, 237, 16, 799, 270, 718, -418, + 266, 791, 104, 223, 434, 745, 244, 499, 541, 376, + 748, 658, 292, 506, 508, 753, 16, 9, 21, 511, + 513, 16, 452, 58, 219, 57, 58, 21, 377, 211, + 273, 16, 300, 329, 296, 78, 58, 58, 403, 16, + 367, 23, 223, 1, 58, 1, 208, 1, 211, 1, + 58, 245, 300, 387, 450, 58, 410, 482, 1, 58, + 423, 424, 57, 30, 427, 339, 339, 1, 58, 434, + 216, 449, 450, 300, 140, 217, 629, 434, 338, 300, + 434, 57, -113, 140, -193, 463, 32, -439, 285, 525, + 291, 859, 295, 750, -439, 298, 263, 285, 463, 64, + 64, 298, 285, 795, 104, 796, 237, 340, 224, 722, + 642, 434, 221, 469, 426, 683, 429, 480, 437, 651, + 451, 221, 451, 730, 686, 470, 218, 63, 71, 301, + -193, 447, 369, 404, 420, -113, -455, 16, 41, 42, + 25, 460, 263, -455, -486, 438, -486, 224, 438, 263, + 790, 16, 545, 219, 545, 502, 851, 16, -486, 339, + 38, -486, 434, 687, -488, 505, 507, -488, 338, 338, + 638, 510, 512, -486, 437, 643, 693, -488, 16, 649, + 784, -488, 639, 739, 16, 140, 659, 736, 694, 514, + 515, 35, -267, 516, 33, 740, -267, 340, 340, 16, + -267, 438, 645, 854, -161, 535, 650, 36, 53, 536, + 854, 339, 434, 537, 37, 339, 434, 434, 434, 434, + 434, 15, 664, 221, 44, 258, 298, 298, 659, 628, + 237, 46, 298, 298, 47, 339, 234, 629, 339, 437, + 50, 339, 48, 648, 267, 734, 240, 437, 434, 237, + 437, 235, 634, 388, 57, 58, 438, 51, 237, 719, + 545, 235, 338, 430, 644, 532, 438, 66, 237, -487, + 724, 652, 68, 236, 438, 237, 69, 438, 385, 71, + 659, 437, 389, 241, 70, 237, 855, 223, 72, 223, + 100, 340, 485, 486, 856, 96, 688, 225, 692, 155, + 200, 204, 447, 97, 447, -122, 237, 226, 438, 404, + 227, 228, 404, 229, 338, 691, 782, 230, 338, 438, + 231, 438, 232, 285, 249, 233, 251, 256, 291, 252, + 636, 295, 437, -112, 269, 255, 265, 285, 338, 268, + 264, 338, 636, 340, 338, 277, 438, 340, 238, 242, + 453, 716, 801, 379, 380, 381, 382, 383, 276, 438, + -106, 237, 239, 243, 705, 281, -489, 340, 705, 279, + 340, 278, 365, 340, 453, 280, 16, 366, 371, 372, + 373, 374, 437, 451, 327, 421, 437, 437, 437, 437, + 437, 428, 224, 450, 224, 461, 462, 464, 466, 434, + 467, 468, 471, 475, 476, 477, 479, 481, 339, 438, + 434, 412, 484, 438, 438, 438, 438, 438, 437, 491, + 339, 492, 436, 494, 503, 504, -421, 438, 634, 509, + 534, 634, 527, -303, 211, -201, 642, 538, -258, 532, + -115, 539, 547, 725, 540, 438, 549, 543, 640, 434, + 544, 653, 661, 673, 666, 670, 671, 678, 672, 677, + 699, 728, 695, 674, 706, 707, 729, 735, 720, 721, + 774, 755, -11, 404, 58, -10, 713, 758, 483, 339, + 710, 717, 759, 741, 760, 339, 743, 761, 762, 765, + 766, 767, 786, 7, 771, -123, 769, 768, 772, 773, + 460, 777, 787, 778, 805, 757, 636, 810, 439, 636, + 780, 338, 788, 807, 285, 339, 808, 785, 438, 852, + 857, 860, 712, 338, 709, 386, 726, 733, 448, 781, + 802, 31, 308, 309, 310, 738, 311, 705, 312, 219, + 340, 803, 40, 528, 98, 60, 95, 313, 102, 533, + 789, 529, 340, 370, 530, 411, 763, 714, 24, 708, + 52, 654, 308, 309, 310, 49, 311, 679, 312, 437, + 660, 680, 0, 0, 501, 742, 0, 313, 285, 0, + 437, 0, 338, 0, 0, 542, 0, 0, 338, 0, + 319, 654, 634, 0, 0, 0, 438, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 681, 438, 0, 0, + 0, 340, 0, 0, 0, 0, 0, 340, 338, 437, + 319, 0, 0, 0, 0, 0, 291, 285, 285, 0, + 0, 0, 733, 0, 733, 0, 663, 325, 0, 0, + 738, 804, 0, 0, 0, 0, 636, 340, 0, 285, + 0, 0, 0, 0, 0, 0, 0, 682, 0, 0, + 0, 0, 0, 0, 0, 0, 329, 325, 291, 285, + 636, 0, 0, 0, 0, 0, 655, 656, 0, 0, + 0, 0, 0, 0, 0, 0, 698, 0, 0, 0, + 700, 701, 702, 703, 704, 0, 329, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 655, 656, 308, 390, + 391, 0, 392, 0, 393, 0, 0, 0, 285, 0, + 0, 285, 529, 313, 0, 103, 0, 379, 380, 381, + 382, 383, 550, 551, 552, 105, 553, 554, 555, 556, + 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, + 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, + 577, 578, 579, 580, 581, 582, 583, 584, 118, 119, + 120, 121, 585, 586, 587, 588, 589, 590, 591, 592, + 593, 124, 594, 595, 596, 597, 125, 598, 127, 599, + 600, 601, 602, 603, 604, 605, 606, 130, 607, 608, + 609, 610, 611, 612, 613, 614, 615, 616, 136, 617, + 137, 618, 619, 620, 621, 622, 623, 624, 141, 142, + 143, 144, 145, 625, 0, 0, 0, 399, 0, 0, + 0, 147, 0, 0, 0, 0, 23, 0, 0, 0, + 626, 0, 329, 0, 400, 0, 0, 0, 0, 0, + 0, 0, 627, 402, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 433, 0, 0, - 0, 698, 0, 0, 0, 700, 701, 702, 703, 704, - 0, 0, 0, 0, 0, 0, 308, 309, 310, 0, - 311, 0, 312, 308, 309, 310, 0, 311, 0, 312, - 0, 313, 0, 0, 0, 0, 0, 529, 313, 0, - 103, 0, 0, 0, 0, 654, 0, 0, 0, 314, - 104, 0, 315, 0, 0, 106, 107, 108, 402, 109, - 110, 402, 0, 0, 316, 317, 111, 112, 0, 0, - 113, 114, 318, 0, 319, 115, 0, 0, 0, 0, - 116, 319, 320, 117, 118, 119, 120, 0, 0, 0, - 681, 321, 121, 0, 122, 0, 123, 0, 322, 0, - 0, 124, 125, 126, 127, 0, 128, 0, 323, 0, - 0, 0, 129, 0, 130, 131, 132, 133, 134, 324, - 235, 325, 0, 135, 0, 136, 137, 138, 325, 0, - 0, 0, 0, 139, 140, 141, 142, 143, 326, 0, - 0, 682, 327, 0, 328, 0, 145, 0, 433, 0, - 329, 0, 0, 0, 0, 0, 0, 329, 0, 433, - 655, 656, 0, 0, 0, 0, 0, 330, 331, 0, + 0, 0, 0, 764, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 770, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 764, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 433, 770, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 402, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 794, 0, - 0, 0, 0, 0, 308, 389, 390, 0, 391, 0, - 392, 0, 0, 0, 0, 0, 0, 0, 0, 313, - 0, 103, 809, 382, 383, 384, 385, 386, 550, 551, - 552, 104, 553, 554, 555, 556, 557, 558, 559, 560, + 0, 0, 0, 794, 308, 390, 391, 0, 392, 0, + 393, 0, 0, 0, 0, 0, 0, 0, 0, 313, + 0, 103, 0, 0, 0, 0, 0, 809, 550, 551, + 552, 105, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, - 581, 582, 583, 584, 117, 118, 119, 120, 585, 586, - 587, 588, 589, 590, 591, 592, 593, 123, 594, 595, - 596, 597, 124, 598, 126, 599, 600, 601, 602, 603, - 604, 605, 606, 129, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 135, 617, 136, 618, 619, 620, - 621, 622, 623, 624, 139, 140, 141, 142, 143, 625, - 0, 0, 0, 397, 0, 0, 0, 145, 0, 308, - 389, 390, 23, 391, 0, 392, 626, 0, 329, 0, - 398, 0, 0, 0, 313, 0, 103, 0, 627, 400, - 0, 0, 0, 550, 551, 552, 104, 553, 554, 555, - 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, - 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, - 576, 577, 578, 579, 580, 581, 582, 583, 584, 117, - 118, 119, 120, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 123, 594, 595, 596, 597, 124, 598, 126, - 599, 600, 601, 602, 603, 604, 605, 606, 129, 607, - 608, 609, 610, 611, 612, 613, 614, 615, 616, 135, - 617, 136, 618, 619, 620, 621, 622, 623, 624, 139, - 140, 141, 142, 143, 625, 0, 0, 0, 397, 711, - 0, 0, 145, 0, 308, 309, 310, 23, 311, 0, - 312, 626, 0, 329, 0, 398, 0, 0, 0, 313, - 0, 103, 0, 627, 400, 0, 0, 0, 0, 0, - 314, 104, 0, 315, 0, 0, 106, 107, 108, 0, - 109, 110, 0, 0, 0, 0, 0, 111, 112, 0, - 0, 113, 114, 0, 0, 0, 115, 0, 0, 0, - 0, 116, 319, 320, 117, 118, 119, 120, 0, 0, - 0, 0, 321, 121, 0, 122, 0, 123, 0, 322, - 0, 0, 124, 125, 126, 127, 0, 128, 0, 323, - 0, 0, 0, 129, 0, 130, 131, 132, 133, 134, - 324, 235, 0, 0, 135, 0, 136, 137, 138, 325, - 0, 0, 0, 0, 139, 140, 141, 142, 143, 326, - 0, 487, 0, 0, 0, 328, 0, 145, 308, 309, - 310, 0, 311, 0, 312, 0, 0, 0, 329, 0, - 0, 0, 0, 313, 0, 103, 0, 0, 330, 331, - 0, 0, 0, 0, 314, 104, 0, 315, 0, 0, - 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, - 0, 111, 112, 0, 0, 113, 114, 0, 0, 0, - 115, 0, 0, 0, 0, 116, 319, 320, 117, 118, - 119, 120, 0, 0, 0, 0, 321, 121, 0, 122, - 0, 123, 0, 322, 0, 0, 124, 125, 126, 127, - 0, 128, 0, 323, 0, 0, 0, 129, 0, 130, - 131, 132, 133, 134, 324, 235, 0, 0, 135, 0, - 136, 137, 138, 325, 0, 0, 0, 0, 139, 140, - 141, 142, 143, 326, 0, 0, 0, 0, 0, 328, - 0, 145, 308, 389, 390, 0, 391, 0, 392, 0, - 0, 0, 329, 0, 0, 0, 0, 313, 0, 103, - 0, 0, 330, 331, 0, 0, 0, 206, 0, 104, - 0, 393, 0, 0, 106, 107, 108, 394, 109, 110, - 0, 0, 0, 0, 395, 111, 112, 0, 0, 113, - 114, 0, 0, 0, 115, 0, 0, 0, 0, 116, - 319, 0, 117, 118, 119, 120, 0, 0, 0, 0, - 0, 121, 0, 122, 0, 123, 0, 0, 0, 0, - 124, 125, 126, 127, 0, 128, 396, 0, 0, 0, - 0, 129, 0, 130, 131, 132, 133, 134, 0, 0, - 0, 0, 135, 0, 136, 137, 138, 325, 207, 0, - 0, 0, 139, 140, 141, 142, 143, 0, 0, 0, - 0, 397, 308, 309, 310, 145, 311, 0, 312, 0, - 23, 0, 0, 0, 0, 0, 329, 313, 398, 103, - 0, 0, 0, 0, 0, 0, 399, 400, 0, 104, - 0, 315, 0, 0, 106, 107, 108, 0, 109, 110, - 0, 0, 0, 0, 0, 111, 112, 0, 0, 113, - 114, 0, 0, 0, 115, 0, 0, 0, 0, 116, - 319, 320, 117, 118, 119, 120, 0, 0, 0, 0, - 321, 121, 0, 122, 0, 123, 0, 322, 0, 0, - 124, 125, 126, 127, 0, 128, 0, 323, 0, 0, - 0, 129, 0, 130, 131, 132, 133, 134, 324, 235, - 0, 0, 135, 0, 136, 137, 138, 325, 0, 0, - 0, 0, 139, 140, 141, 142, 143, 326, 0, 0, - 0, 0, 0, 328, 0, 145, 308, 389, 390, 0, - 391, 0, 392, 0, 0, 0, 329, 0, 0, 0, - 0, 313, 0, 103, 0, 0, 330, 331, 0, 0, - 0, 0, 0, 104, 0, 393, 0, 0, 106, 107, - 108, 394, 109, 110, 0, 0, 0, 0, 395, 111, - 112, 0, 0, 113, 114, 0, 0, 0, 115, 0, - 0, 0, 0, 116, 319, 0, 117, 118, 119, 120, - 0, 0, 0, 0, 0, 121, 0, 122, 0, 123, - 0, 0, 0, 0, 124, 125, 126, 127, 0, 128, - 396, 0, 0, 0, 0, 129, 0, 130, 131, 132, - 133, 134, 0, 0, 0, 0, 135, 0, 136, 137, - 138, 325, 0, 0, 0, 0, 139, 140, 141, 142, - 143, 0, 0, 0, 0, 397, 308, 0, 0, 145, - 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, - 329, 0, 398, 103, 0, 0, 0, 0, 0, 0, - 431, 400, 0, 104, 0, 105, 0, 0, 106, 107, - 108, 0, 109, 110, 0, 0, 0, 0, 0, 111, - 112, 0, 0, 113, 114, 0, 0, 0, 115, 0, - 0, 0, 0, 116, 0, 0, 117, 118, 119, 120, - 0, 0, 0, 0, 0, 121, 0, 122, 0, 123, - 0, 0, 0, 0, 124, 125, 126, 127, 0, 128, - 0, 0, 0, 0, 0, 129, 0, 130, 131, 132, - 133, 134, 0, 0, 0, 0, 135, 0, 136, 137, - 138, 0, 0, 0, 0, 0, 139, 140, 141, 142, - 143, 0, 0, 0, 308, 389, 390, 0, 391, 145, - 392, 0, 0, 0, 0, 0, 0, 0, 0, 313, - 329, 0, 308, 389, 390, 0, 391, 0, 392, 0, - 146, 147, 0, 430, 308, 309, 310, 313, 311, 394, - 312, 0, 0, 0, 0, 0, 395, 0, 0, 313, - 0, 430, 0, 0, 0, 0, 0, 394, 0, 0, - 0, 0, 319, 654, 395, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 319, 0, 0, 0, 0, 0, 0, 0, 396, 0, - 0, 0, 319, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 396, 0, 681, 325, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 397, 697, 0, 0, 325, 0, 0, - 0, 0, 23, 0, 0, 0, 0, 0, 329, 325, - 398, 397, 0, 0, 0, 0, 0, 0, 431, 432, - 23, 0, 0, 0, 0, 0, 329, 0, 398, 0, - 0, 0, 0, 0, 0, 0, 431, 432, 329, 0, - 103, 0, 382, 383, 384, 385, 386, 0, 655, 656, - 104, 0, 105, 0, 0, 106, 107, 108, 0, 109, - 110, 0, 0, 0, 0, 0, 111, 112, 0, 0, - 113, 114, 0, 0, 0, 115, 0, 0, 0, 0, - 116, 0, 0, 117, 118, 119, 120, 0, 0, 0, - 0, 0, 121, 0, 122, 0, 123, 0, 0, 0, - 0, 124, 125, 126, 127, 0, 128, 0, 0, 0, - 0, 0, 129, 0, 130, 131, 132, 133, 134, 0, - 0, 0, 0, 135, 0, 136, 137, 138, 0, 0, - 0, 0, 0, 139, 140, 141, 142, 143, 0, 103, - 0, 0, 0, 0, 0, 0, 145, 206, 0, 104, - 0, 105, 0, 0, 106, 107, 108, 0, 109, 110, - 244, 0, 0, 0, 0, 111, 112, 146, 147, 113, - 114, 0, 0, 0, 115, 0, 0, 0, 0, 116, - 0, 0, 117, 118, 119, 120, 0, 0, 0, 0, - 0, 121, 0, 122, 0, 123, 0, 0, 0, 0, - 124, 125, 126, 127, 0, 128, 0, 0, 0, 0, - 0, 129, 0, 130, 131, 132, 133, 134, 0, 0, - 0, 0, 135, 0, 136, 137, 138, 0, 207, 0, - 0, 0, 139, 140, 141, 142, 143, 0, 103, 0, - 0, 0, 0, 0, 0, 145, 0, 0, 104, 0, - 105, 0, 0, 106, 107, 108, 0, 109, 110, 0, - 0, 0, 0, 0, 111, 112, 208, 147, 113, 114, - 0, 0, 0, 115, 0, 0, 0, 0, 116, 0, - 0, 117, 118, 119, 120, 0, 0, 0, 0, 0, - 121, 0, 122, 0, 123, 0, 0, 0, 0, 124, - 125, 126, 127, 0, 128, 0, 0, 0, 0, 0, - 129, 0, 130, 131, 132, 133, 134, 0, 0, 0, - 0, 135, 0, 136, 137, 138, 0, 0, 0, 0, - 0, 139, 140, 141, 142, 143, 0, 144, 0, 0, - 100, 103, 0, 0, 145, 0, 0, 0, 0, 206, - 0, 104, 0, 105, 0, 0, 106, 107, 108, 0, - 109, 110, 0, 0, 0, 146, 147, 111, 112, 0, - 0, 113, 114, 0, 0, 0, 115, 0, 0, 0, - 0, 116, 0, 0, 117, 118, 119, 120, 0, 0, - 0, 0, 0, 121, 0, 122, 0, 123, 0, 0, - 0, 0, 124, 125, 126, 127, 0, 128, 0, 0, - 0, 0, 0, 129, 0, 130, 131, 132, 133, 134, - 0, 0, 0, 0, 135, 0, 136, 137, 138, 0, - 207, 0, 0, 0, 139, 140, 141, 142, 143, 0, - 103, 0, 0, 0, 0, 0, 0, 145, 0, 0, - 104, 0, 105, 0, 0, 106, 107, 108, 0, 109, - 110, 0, 0, 0, 0, 0, 111, 112, 208, 147, - 113, 114, 0, 0, 0, 115, 0, 259, 0, 0, - 116, 0, 0, 117, 118, 119, 120, 0, 260, 0, - 0, 0, 121, 0, 122, 0, 123, 0, 0, 0, - 0, 124, 125, 126, 127, 0, 128, 0, 0, 0, - 0, 0, 129, 0, 130, 131, 132, 133, 134, 0, - 0, 0, 0, 135, 0, 136, 137, 138, 0, 0, - 0, 0, 0, 139, 140, 141, 142, 143, 0, 103, - 0, 0, 0, 0, 0, 0, 145, 0, 0, 104, - 0, 105, 0, 0, 106, 107, 108, 0, 109, 110, - 0, 0, 0, 0, 0, 111, 112, 146, 147, 113, - 114, 0, 0, 0, 115, 0, 0, 0, 0, 116, - 0, 0, 117, 118, 119, 120, 0, 0, 0, 0, - 0, 121, 0, 122, 0, 123, 0, 0, 0, 0, - 124, 125, 126, 127, 0, 128, 0, 0, 0, 0, - 0, 129, 0, 130, 131, 132, 133, 134, 0, 0, - 0, 0, 135, 0, 136, 137, 138, 0, 0, 0, - 0, 0, 139, 140, 141, 142, 143, 0, 103, 0, - 0, 100, 0, 0, 0, 145, 0, 0, 104, 0, - 105, 0, 0, 106, 107, 108, 0, 109, 110, 0, - 0, 0, 0, 0, 111, 112, 146, 147, 113, 114, - 0, 0, 0, 115, 0, 0, 0, 0, 116, 0, - 0, 117, 118, 119, 120, 0, 0, 0, 0, 0, - 121, 0, 122, 0, 123, 0, 0, 0, 0, 124, - 125, 126, 127, 0, 128, 0, 0, 0, 0, 0, - 129, 0, 130, 131, 132, 133, 134, 0, 0, 0, - 0, 135, 0, 136, 137, 138, 0, 0, 0, 0, - 0, 139, 140, 141, 142, 143, 0, 252, 0, 0, - 0, 103, 0, 0, 145, 0, 0, 0, 0, 0, - 0, 104, 0, 105, 0, 0, 106, 107, 108, 0, - 109, 110, 0, 0, 0, 146, 147, 111, 112, 0, - 0, 113, 114, 0, 0, 0, 115, 0, 0, 0, - 0, 116, 0, 0, 117, 118, 119, 120, 0, 0, - 0, 0, 0, 121, 0, 122, 0, 123, 0, 0, - 0, 0, 124, 125, 126, 127, 0, 128, 0, 0, - 0, 0, 0, 129, 0, 130, 131, 132, 133, 134, - 0, 0, 0, 0, 135, 0, 136, 137, 138, 0, - 0, 0, 0, 0, 139, 140, 141, 142, 143, 0, - 103, 0, 0, 0, 0, 0, 0, 145, 0, 263, - 104, 0, 105, 0, 0, 106, 107, 108, 0, 109, - 110, 0, 0, 0, 0, 0, 111, 112, 146, 147, - 113, 114, 0, 0, 0, 115, 0, 0, 0, 0, - 116, 0, 0, 117, 118, 119, 120, 0, 0, 0, - 0, 0, 121, 0, 122, 0, 123, 0, 0, 0, - 0, 124, 125, 126, 127, 0, 128, 0, 0, 0, - 0, 0, 129, 0, 130, 131, 132, 133, 134, 0, - 0, 0, 0, 135, 0, 136, 137, 138, 0, 0, - 0, 0, 0, 139, 140, 141, 142, 143, 0, 0, - 0, 0, 0, 0, 0, 0, 145, 0, 0, 0, + 581, 582, 583, 584, 118, 119, 120, 121, 585, 586, + 587, 588, 589, 590, 591, 592, 593, 124, 594, 595, + 596, 597, 125, 598, 127, 599, 600, 601, 602, 603, + 604, 605, 606, 130, 607, 608, 609, 610, 611, 612, + 613, 614, 615, 616, 136, 617, 137, 618, 619, 620, + 621, 622, 623, 624, 141, 142, 143, 144, 145, 625, + 0, 0, 0, 399, 711, 0, 0, 147, 0, 308, + 309, 310, 23, 311, 0, 312, 626, 0, 329, 0, + 400, 0, 0, 0, 313, 0, 103, 0, 627, 402, + 0, 0, 0, 0, 104, 314, 105, 0, 315, 0, + 0, 107, 108, 109, 0, 110, 111, 0, 0, 0, + 316, 317, 112, 113, 0, 0, 114, 115, 318, 0, + 0, 116, 0, 0, 0, 0, 117, 319, 320, 118, + 119, 120, 121, 0, 0, 0, 0, 321, 122, 0, + 123, 0, 124, 0, 322, 0, 0, 125, 126, 127, + 128, 0, 129, 0, 323, 0, 0, 0, 130, 0, + 131, 132, 133, 134, 135, 324, 235, 0, 0, 136, + 0, 137, 138, 139, 325, 140, 0, 0, 0, 141, + 142, 143, 144, 145, 326, 0, 0, 0, 327, 0, + 328, 0, 147, 308, 309, 310, 0, 311, 0, 312, + 0, 0, 0, 329, 0, 0, 0, 0, 313, 0, + 103, 0, 0, 330, 331, 0, 0, 0, 104, 314, + 105, 0, 315, 0, 0, 107, 108, 109, 0, 110, + 111, 0, 0, 0, 0, 0, 112, 113, 0, 0, + 114, 115, 0, 0, 0, 116, 0, 0, 0, 0, + 117, 319, 320, 118, 119, 120, 121, 0, 0, 0, + 0, 321, 122, 0, 123, 0, 124, 0, 322, 0, + 0, 125, 126, 127, 128, 0, 129, 0, 323, 0, + 0, 0, 130, 0, 131, 132, 133, 134, 135, 324, + 235, 0, 0, 136, 0, 137, 138, 139, 325, 140, + 0, 0, 0, 141, 142, 143, 144, 145, 326, 0, + 487, 0, 0, 0, 328, 0, 147, 308, 309, 310, + 0, 311, 0, 312, 0, 0, 0, 329, 0, 0, + 0, 0, 313, 0, 103, 0, 0, 330, 331, 0, + 0, 0, 104, 314, 105, 0, 315, 0, 0, 107, + 108, 109, 0, 110, 111, 0, 0, 0, 0, 0, + 112, 113, 0, 0, 114, 115, 0, 0, 0, 116, + 0, 0, 0, 0, 117, 319, 320, 118, 119, 120, + 121, 0, 0, 0, 0, 321, 122, 0, 123, 0, + 124, 0, 322, 0, 0, 125, 126, 127, 128, 0, + 129, 0, 323, 0, 0, 0, 130, 0, 131, 132, + 133, 134, 135, 324, 235, 0, 0, 136, 0, 137, + 138, 139, 325, 140, 0, 0, 0, 141, 142, 143, + 144, 145, 326, 0, 0, 0, 0, 0, 328, 0, + 147, 308, 309, 310, 0, 311, 0, 312, 0, 0, + 0, 329, 0, 0, 0, 0, 313, 0, 103, 0, + 0, 330, 331, 0, 0, 0, 104, 0, 105, 0, + 315, 0, 0, 107, 108, 109, 0, 110, 111, 0, + 0, 0, 0, 0, 112, 113, 0, 0, 114, 115, + 0, 0, 0, 116, 0, 0, 0, 0, 117, 319, + 320, 118, 119, 120, 121, 0, 0, 0, 0, 321, + 122, 0, 123, 0, 124, 0, 322, 0, 0, 125, + 126, 127, 128, 0, 129, 0, 323, 0, 0, 0, + 130, 0, 131, 132, 133, 134, 135, 324, 235, 0, + 0, 136, 0, 137, 138, 139, 325, 140, 0, 0, + 0, 141, 142, 143, 144, 145, 326, 0, 0, 0, + 0, 0, 328, 0, 147, 308, 390, 391, 0, 392, + 0, 393, 0, 0, 0, 329, 0, 0, 0, 0, + 313, 0, 103, 0, 0, 330, 331, 0, 0, 0, + 104, 0, 105, 0, 394, 0, 0, 107, 108, 109, + 395, 110, 111, 0, 0, 0, 0, 396, 112, 113, + 0, 0, 114, 115, 0, 0, 0, 116, 0, 0, + 0, 0, 117, 319, 0, 118, 119, 120, 121, 0, + 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, + 0, 0, 0, 125, 126, 127, 128, 0, 129, 397, + 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, + 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, + 325, 140, 0, 0, 0, 141, 142, 143, 144, 145, + 398, 0, 0, 0, 399, 0, 0, 0, 147, 0, + 308, 390, 391, 23, 392, 0, 393, 0, 0, 329, + 0, 400, 0, 0, 0, 313, 0, 103, 0, 401, + 402, 0, 0, 0, 0, 104, 0, 105, 0, 394, + 0, 0, 107, 108, 109, 395, 110, 111, 0, 0, + 0, 0, 396, 112, 113, 0, 0, 114, 115, 0, + 0, 0, 116, 0, 0, 0, 0, 117, 319, 0, + 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, + 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, + 127, 128, 0, 129, 397, 0, 0, 0, 0, 130, + 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, + 136, 0, 137, 138, 139, 325, 140, 0, 0, 0, + 141, 142, 143, 144, 145, 398, 0, 0, 0, 399, + 0, 308, 0, 147, 0, 0, 0, 0, 23, 0, + 0, 0, 0, 0, 329, 0, 400, 0, 103, 0, + 0, 0, 0, 0, 432, 402, 104, 0, 105, 0, + 106, 0, 0, 107, 108, 109, 0, 110, 111, 0, + 0, 0, 0, 0, 112, 113, 0, 0, 114, 115, + 0, 0, 0, 116, 0, 0, 0, 0, 117, 0, + 0, 118, 119, 120, 121, 0, 0, 0, 0, 0, + 122, 0, 123, 0, 124, 0, 0, 0, 0, 125, + 126, 127, 128, 0, 129, 0, 0, 0, 0, 0, + 130, 0, 131, 132, 133, 134, 135, 0, 0, 0, + 0, 136, 0, 137, 138, 139, 0, 140, 0, 0, + 0, 141, 142, 143, 144, 145, 0, 0, 0, 308, + 390, 391, 0, 392, 147, 393, 0, 308, 309, 310, + 0, 311, 0, 312, 313, 329, 0, 0, 0, 0, + 0, 0, 313, 0, 104, 148, 208, 0, 431, 0, + 0, 308, 390, 391, 395, 392, 654, 393, 0, 0, + 0, 396, 0, 0, 0, 0, 313, 0, 103, 0, + 0, 0, 0, 0, 0, 0, 104, 319, 0, 0, + 431, 0, 0, 0, 0, 319, 395, 0, 0, 0, + 0, 0, 0, 396, 0, 0, 0, 0, 0, 0, + 0, 681, 0, 397, 0, 0, 0, 0, 0, 319, + 0, 0, 0, 0, 0, 0, 308, 390, 391, 0, + 392, 0, 393, 0, 325, 140, 0, 0, 0, 0, + 0, 313, 325, 0, 398, 397, 0, 0, 399, 697, + 0, 104, 0, 0, 0, 431, 0, 23, 0, 0, + 0, 395, 0, 329, 0, 400, 325, 140, 396, 0, + 0, 329, 0, 432, 433, 0, 398, 0, 0, 0, + 792, 655, 656, 0, 319, 0, 0, 0, 0, 23, + 0, 0, 0, 0, 0, 329, 0, 400, 0, 0, + 0, 0, 0, 0, 0, 432, 433, 0, 0, 0, + 397, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 146, 147, 382, - 383, 384, 385, 386, 550, 551, 552, 0, 553, 811, - 555, 556, 812, 813, 814, 815, 816, 817, 563, 564, - 565, 566, 818, 819, 820, 570, 571, 821, 822, 574, - 575, 576, 823, 578, 579, 580, 581, 824, 825, 584, - 0, 0, 0, 0, 585, 586, 587, 588, 589, 826, - 591, 827, 593, 0, 594, 595, 596, 597, 0, 828, - 0, 829, 600, 830, 831, 603, 604, 605, 606, 0, - 607, 832, 833, 834, 835, 836, 613, 614, 615, 616, - 0, 617, 0, 837, 838, 839, 621, 622, 623, 624, - 0, 0, 0, 0, 0, 625, 0, 0, 0, 0, + 0, 325, 140, 0, 0, 0, 0, 0, 0, 0, + 0, 398, 0, 0, 0, 399, 0, 0, 0, 0, + 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, + 329, 0, 400, 0, 0, 0, 0, 0, 0, 0, + 432, 433, 103, 0, 379, 380, 381, 382, 383, 0, + 104, 0, 105, 0, 106, 0, 0, 107, 108, 109, + 0, 110, 111, 0, 0, 0, 0, 0, 112, 113, + 0, 0, 114, 115, 0, 0, 0, 116, 0, 0, + 0, 0, 117, 0, 0, 118, 119, 120, 121, 0, + 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, + 0, 0, 0, 125, 126, 127, 128, 0, 129, 0, + 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, + 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, + 0, 140, 0, 0, 0, 141, 142, 143, 144, 145, + 0, 103, 0, 0, 0, 0, 0, 0, 147, 104, + 0, 105, 0, 106, 0, 0, 107, 108, 109, 0, + 110, 111, 0, 0, 0, 0, 0, 112, 113, 148, + 16, 114, 115, 0, 0, 0, 116, 0, 0, 0, + 0, 117, 0, 0, 118, 119, 120, 121, 0, 0, + 0, 0, 0, 122, 0, 123, 0, 124, 0, 0, + 0, 0, 125, 126, 127, 128, 0, 129, 0, 0, + 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, + 0, 0, 0, 0, 136, 0, 137, 138, 139, 0, + 140, 0, 0, 0, 141, 142, 143, 144, 145, 0, + 146, 0, 0, 100, 103, 0, 0, 147, 0, 0, + 0, 0, 104, 0, 105, 0, 106, 0, 0, 107, + 108, 109, 0, 110, 111, 0, 0, 0, 148, 16, + 112, 113, 0, 0, 114, 115, 0, 0, 0, 116, + 0, 260, 0, 0, 117, 0, 0, 118, 119, 120, + 121, 0, 261, 0, 0, 0, 122, 0, 123, 0, + 124, 0, 0, 0, 0, 125, 126, 127, 128, 0, + 129, 0, 0, 0, 0, 0, 130, 0, 131, 132, + 133, 134, 135, 0, 0, 0, 0, 136, 0, 137, + 138, 139, 0, 140, 0, 0, 0, 141, 142, 143, + 144, 145, 0, 103, 0, 0, 0, 0, 0, 0, + 147, 104, 0, 105, 0, 106, 0, 0, 107, 108, + 109, 0, 110, 111, 0, 0, 0, 0, 0, 112, + 113, 148, 16, 114, 115, 0, 0, 0, 116, 0, + 0, 0, 0, 117, 0, 0, 118, 119, 120, 121, + 0, 0, 0, 0, 0, 122, 0, 123, 0, 124, + 0, 0, 0, 0, 125, 126, 127, 128, 0, 129, + 0, 0, 0, 0, 0, 130, 0, 131, 132, 133, + 134, 135, 0, 0, 0, 0, 136, 0, 137, 138, + 139, 0, 140, 0, 0, 0, 141, 142, 143, 144, + 145, 0, 103, 0, 0, 100, 0, 0, 0, 147, + 104, 0, 105, 0, 106, 0, 0, 107, 108, 109, + 0, 110, 111, 244, 0, 0, 0, 0, 112, 113, + 148, 16, 114, 115, 0, 0, 0, 116, 0, 0, + 0, 0, 117, 0, 0, 118, 119, 120, 121, 0, + 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, + 0, 0, 0, 125, 126, 127, 128, 0, 129, 0, + 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, + 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, + 0, 140, 0, 0, 0, 141, 142, 143, 144, 145, + 0, 103, 0, 0, 0, 0, 0, 0, 147, 104, + 0, 105, 0, 106, 0, 0, 107, 108, 109, 0, + 110, 111, 0, 0, 0, 0, 0, 112, 113, 207, + 16, 114, 115, 0, 0, 0, 116, 0, 0, 0, + 0, 117, 0, 0, 118, 119, 120, 121, 0, 0, + 0, 0, 0, 122, 0, 123, 0, 124, 0, 0, + 0, 0, 125, 126, 127, 128, 0, 129, 0, 0, + 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, + 0, 0, 0, 0, 136, 0, 137, 138, 139, 0, + 140, 0, 0, 0, 141, 142, 143, 144, 145, 0, + 253, 0, 0, 0, 103, 0, 0, 147, 0, 0, + 0, 0, 104, 0, 105, 0, 106, 0, 0, 107, + 108, 109, 0, 110, 111, 0, 0, 0, 148, 16, + 112, 113, 0, 0, 114, 115, 0, 0, 0, 116, + 0, 0, 0, 0, 117, 0, 0, 118, 119, 120, + 121, 0, 0, 0, 0, 0, 122, 0, 123, 0, + 124, 0, 0, 0, 0, 125, 126, 127, 128, 0, + 129, 0, 0, 0, 0, 0, 130, 0, 131, 132, + 133, 134, 135, 0, 0, 0, 0, 136, 0, 137, + 138, 139, 0, 140, 0, 0, 0, 141, 142, 143, + 144, 145, 0, 103, 0, 0, 0, 0, 0, 0, + 147, 104, 264, 105, 0, 106, 0, 0, 107, 108, + 109, 0, 110, 111, 0, 0, 0, 0, 0, 112, + 113, 148, 16, 114, 115, 0, 0, 0, 116, 0, + 0, 0, 0, 117, 0, 0, 118, 119, 120, 121, + 0, 0, 0, 0, 0, 122, 0, 123, 0, 124, + 0, 0, 0, 0, 125, 126, 127, 128, 0, 129, + 0, 0, 0, 0, 0, 130, 0, 131, 132, 133, + 134, 135, 0, 0, 0, 0, 136, 0, 137, 138, + 139, 0, 140, 0, 0, 0, 141, 142, 143, 144, + 145, 0, 103, 0, 0, 0, 0, 0, 0, 147, + 104, 0, 105, 0, 106, 0, 0, 107, 108, 109, + 0, 110, 111, 0, 0, 0, 0, 0, 112, 113, + 207, 208, 114, 115, 0, 0, 0, 116, 0, 0, + 0, 0, 117, 0, 0, 118, 119, 120, 121, 0, + 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, + 0, 0, 0, 125, 126, 127, 128, 0, 129, 0, + 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, + 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, + 0, 140, 0, 0, 0, 141, 142, 143, 144, 145, + 0, 103, 0, 0, 0, 0, 0, 0, 147, 104, + 0, 105, 0, 106, 0, 0, 107, 108, 109, 0, + 110, 111, 0, 0, 0, 0, 0, 112, 113, 148, + 16, 114, 115, 0, 0, 0, 116, 0, 0, 0, + 0, 117, 0, 0, 118, 119, 120, 121, 0, 0, + 0, 0, 0, 122, 0, 123, 0, 124, 0, 0, + 0, 0, 125, 126, 127, 128, 0, 129, 0, 0, + 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, + 0, 0, 0, 0, 136, 0, 137, 138, 139, 0, + 140, 0, 0, 0, 141, 142, 143, 144, 145, 0, + 0, 0, 0, 0, 0, 0, 0, 147, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 626, 0, 0, 0, 0, 0, 0, 0, - 0, 550, 551, 552, 841, 553, 811, 555, 556, 812, - 813, 814, 815, 816, 817, 563, 564, 565, 566, 818, - 819, 820, 570, 571, 821, 822, 574, 575, 576, 823, - 578, 579, 580, 581, 824, 825, 584, 0, 0, 0, - 0, 585, 586, 587, 588, 589, 826, 591, 827, 593, - 0, 594, 595, 596, 597, 0, 828, 0, 829, 600, - 830, 831, 603, 604, 605, 606, 0, 607, 832, 833, - 834, 835, 836, 613, 614, 615, 616, 0, 617, 0, - 837, 838, 839, 621, 622, 623, 624, 0, 0, 0, - 0, 0, 625, 0, 0, 0, 0, 850, 0, 0, - 840, 0, 0, 0, 0, 0, 0, 0, 0, 626, - 0, 0, 0, 0, 0, 0, 0, 0, 550, 551, - 552, 841, 553, 811, 555, 556, 812, 813, 814, 815, - 816, 817, 563, 564, 565, 566, 818, 819, 820, 570, - 571, 821, 822, 574, 575, 576, 823, 578, 579, 580, - 581, 824, 825, 584, 0, 0, 0, 0, 585, 586, - 587, 588, 589, 826, 591, 827, 593, 0, 594, 595, - 596, 597, 0, 828, 0, 829, 600, 830, 831, 603, - 604, 605, 606, 0, 607, 832, 833, 834, 835, 836, - 613, 614, 615, 616, 0, 617, 0, 837, 838, 839, - 621, 622, 623, 624, 0, 0, 0, 0, 0, 625, - 0, 0, 0, 0, 0, 0, 0, 840, 855, 0, - 0, 0, 0, 0, 0, 0, 626, 0, 0, 0, - 0, 0, 0, 0, 0, 550, 551, 552, 841, 553, - 811, 555, 556, 812, 813, 814, 815, 816, 817, 563, - 564, 565, 566, 818, 819, 820, 570, 571, 821, 822, - 574, 575, 576, 823, 578, 579, 580, 581, 824, 825, + 0, 0, 0, 0, 0, 0, 0, 0, 207, 16, + 379, 380, 381, 382, 383, 550, 811, 552, 0, 553, + 812, 555, 556, 813, 814, 815, 816, 817, 818, 563, + 564, 565, 566, 819, 820, 821, 570, 571, 822, 823, + 574, 575, 576, 824, 578, 579, 580, 581, 825, 826, 584, 0, 0, 0, 0, 585, 586, 587, 588, 589, - 826, 591, 827, 593, 0, 594, 595, 596, 597, 0, - 828, 0, 829, 600, 830, 831, 603, 604, 605, 606, - 0, 607, 832, 833, 834, 835, 836, 613, 614, 615, - 616, 0, 617, 0, 837, 838, 839, 621, 622, 623, - 624, 0, 0, 0, 0, 0, 625, 0, 0, 0, - 0, 0, 0, 0, 840, 0, 0, 0, 0, 0, + 827, 591, 828, 593, 0, 594, 595, 596, 597, 0, + 829, 0, 830, 600, 831, 832, 603, 604, 605, 606, + 0, 607, 833, 834, 835, 836, 837, 613, 614, 615, + 616, 0, 617, 0, 838, 839, 840, 841, 622, 623, + 624, 0, 0, 0, 0, 0, 842, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 626, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 841 + 0, 0, 550, 811, 552, 844, 553, 812, 555, 556, + 813, 814, 815, 816, 817, 818, 563, 564, 565, 566, + 819, 820, 821, 570, 571, 822, 823, 574, 575, 576, + 824, 578, 579, 580, 581, 825, 826, 584, 0, 0, + 0, 0, 585, 586, 587, 588, 589, 827, 591, 828, + 593, 0, 594, 595, 596, 597, 0, 829, 0, 830, + 600, 831, 832, 603, 604, 605, 606, 0, 607, 833, + 834, 835, 836, 837, 613, 614, 615, 616, 0, 617, + 0, 838, 839, 840, 841, 622, 623, 624, 0, 0, + 0, 0, 0, 842, 0, 0, 0, 0, 853, 0, + 0, 843, 0, 0, 0, 0, 0, 0, 0, 0, + 626, 0, 0, 0, 0, 0, 0, 0, 0, 550, + 811, 552, 844, 553, 812, 555, 556, 813, 814, 815, + 816, 817, 818, 563, 564, 565, 566, 819, 820, 821, + 570, 571, 822, 823, 574, 575, 576, 824, 578, 579, + 580, 581, 825, 826, 584, 0, 0, 0, 0, 585, + 586, 587, 588, 589, 827, 591, 828, 593, 0, 594, + 595, 596, 597, 0, 829, 0, 830, 600, 831, 832, + 603, 604, 605, 606, 0, 607, 833, 834, 835, 836, + 837, 613, 614, 615, 616, 0, 617, 0, 838, 839, + 840, 841, 622, 623, 624, 0, 0, 0, 0, 0, + 842, 0, 0, 0, 0, 0, 0, 0, 843, 858, + 0, 0, 0, 0, 0, 0, 0, 626, 0, 0, + 0, 0, 0, 0, 0, 0, 550, 811, 552, 844, + 553, 812, 555, 556, 813, 814, 815, 816, 817, 818, + 563, 564, 565, 566, 819, 820, 821, 570, 571, 822, + 823, 574, 575, 576, 824, 578, 579, 580, 581, 825, + 826, 584, 0, 0, 0, 0, 585, 586, 587, 588, + 589, 827, 591, 828, 593, 0, 594, 595, 596, 597, + 0, 829, 0, 830, 600, 831, 832, 603, 604, 605, + 606, 0, 607, 833, 834, 835, 836, 837, 613, 614, + 615, 616, 0, 617, 0, 838, 839, 840, 841, 622, + 623, 624, 0, 0, 0, 0, 0, 842, 0, 0, + 0, 0, 0, 0, 0, 843, 0, 0, 0, 0, + 0, 0, 0, 0, 626, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 844 }; const short int asn1_parser::yycheck_[] = { - 9, 133, 134, 270, 278, 0, 133, 134, 3, 18, - 473, 452, 227, 653, 101, 452, 327, 231, 301, 234, - 476, 467, 63, 100, 67, 240, 44, 4, 49, 29, - 21, 328, 4, 21, 32, 4, 5, 6, 21, 8, - 503, 10, 42, 21, 49, 88, 4, 76, 4, 34, - 19, 21, 21, 111, 53, 29, 21, 144, 341, 4, - 76, 111, 4, 49, 33, 125, 125, 88, 28, 49, - 39, 123, 254, 58, 515, 123, 148, 46, 137, 121, - 140, 121, 264, 88, 69, 137, 144, 528, 23, 24, - 25, 26, 27, 62, 144, 136, 94, 92, 30, 744, - 53, 149, 88, 235, 99, 100, 101, 149, 88, 149, - 110, 378, 124, 66, 67, 113, 145, 70, 237, 88, - 53, 74, 419, 768, 136, 112, 125, 767, 88, 145, - 124, 149, 92, 66, 67, 88, 110, 70, 125, 842, - 109, 74, 136, 230, 92, 93, 849, 100, 148, 144, - 365, 366, 100, 123, 123, 88, 371, 372, 149, 92, - 148, 149, 44, 132, 44, 148, 138, 100, 255, 138, - 148, 140, 149, 440, 148, 442, 148, 149, 148, 148, - 149, 0, 269, 148, 149, 44, 237, 86, 320, 44, - 148, 149, 148, 149, 631, 121, 144, 464, 275, 276, - 124, 468, 101, 148, 149, 153, 148, 149, 327, 328, - 121, 44, 136, 148, 854, 237, 148, 149, 227, 682, - 229, 44, 231, 149, 123, 234, 125, 236, 29, 55, - 178, 240, 241, 59, 277, 230, 279, 124, 149, 121, - 123, 121, 124, 126, 124, 123, 9, 462, 49, 136, - 123, 199, 205, 136, 137, 18, 470, 140, 86, 137, - 255, 270, 121, 120, 16, 17, 121, 149, 125, 149, - 50, 280, 267, 101, 269, 270, 327, 328, 120, 123, - 275, 125, 549, 125, 747, 15, 234, 88, 121, 123, - 149, 125, 240, 137, 149, 123, 137, 125, 121, 123, - 419, 125, 255, 137, 252, 327, 328, 255, 149, 110, - 766, 259, 260, 137, 267, 263, 149, 270, 124, 132, - 23, 24, 275, 276, 27, 74, 149, 275, 323, 262, - 136, 136, 265, 120, 267, 140, 136, 285, 125, 144, - 140, 122, 275, 276, 144, 464, 124, 148, 129, 468, - 298, 792, 808, 485, 473, 792, 365, 366, 477, 670, - 122, 807, 371, 372, 647, 125, 120, 129, 419, 317, - 323, 125, 125, 640, 139, 658, 129, 440, 497, 442, - 771, 500, 773, 378, 503, 105, 381, 92, 93, 94, - 323, 23, 24, 25, 26, 27, 105, 419, 148, 149, - 395, 857, 397, 43, 44, 846, 105, 355, 60, 846, - 124, 125, 4, 139, 70, 126, 120, 365, 366, 132, - 35, 71, 473, 371, 372, 378, 477, 514, 381, 516, - 741, 440, 123, 442, 429, 141, 136, 55, 124, 141, - 141, 123, 395, 102, 397, 440, 497, 442, 381, 500, - 123, 473, 503, 462, 102, 477, 90, 452, 467, 123, - 86, 470, 395, 68, 397, 123, 777, 476, 15, 464, - 744, 102, 137, 468, 120, 497, 429, 120, 500, 611, - 612, 503, 123, 137, 611, 612, 481, 440, 123, 442, - 129, 140, 137, 137, 768, 125, 429, 540, 140, 452, - 137, 137, 717, 120, 452, 86, 86, 123, 137, 86, - 86, 464, 123, 123, 123, 468, 464, 140, 21, 514, - 148, 516, 149, 471, 124, 131, 124, 86, 481, 136, - 125, 124, 136, 136, 57, 39, 531, 39, 12, 4, - 535, 536, 537, 538, 539, 123, 137, 136, 481, 57, - 122, 670, 137, 124, 549, 129, 125, 144, 124, 124, - 144, 136, 125, 682, 137, 125, 124, 515, 123, 137, - 137, 125, 567, 788, 661, 136, 124, 123, 531, 123, - 136, 126, 535, 536, 537, 538, 539, 540, 126, 121, - 143, 544, 128, 136, 4, 255, 549, 124, 531, 149, - 124, 733, 535, 536, 537, 538, 539, 267, 136, 4, - 5, 6, 137, 8, 567, 10, 136, 126, 39, 670, - 126, 121, 741, 136, 19, 119, 147, 126, 747, 126, - 639, 682, 124, 628, 567, 255, 631, 126, 33, 126, - 136, 136, 140, 136, 653, 640, 124, 267, 670, 124, - 136, 136, 136, 103, 137, 137, 124, 666, 777, 136, - 682, 123, 3, 323, 136, 674, 661, 62, 124, 136, - 136, 694, 136, 269, 840, 628, 751, 631, 631, 628, - 628, 251, 661, 631, 740, 275, 778, 640, 779, 18, - 741, 74, 32, 53, 70, 88, 747, 765, 255, 639, - 241, 549, 717, 323, 11, 403, 49, 44, 717, 497, - 500, 477, 350, 661, 109, 682, -1, -1, -1, 741, - -1, 381, -1, 718, -1, 747, 777, -1, -1, -1, - -1, -1, -1, -1, 729, 395, -1, 397, 686, -1, - -1, -1, -1, 138, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 148, 149, 777, 765, 766, 767, -1, - 713, 381, 771, -1, 773, 718, -1, -1, -1, 429, - 779, 780, -1, 768, -1, 395, 729, 397, -1, 788, - -1, -1, -1, -1, -1, 718, -1, -1, -1, -1, - -1, -1, 452, -1, -1, -1, 729, 792, 807, 808, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 429, - -1, -1, -1, -1, -1, 768, -1, -1, -1, -1, - -1, 481, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 768, -1, -1, -1, 792, - -1, -1, -1, -1, 792, 854, -1, -1, 857, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 481, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 531, -1, -1, -1, 535, 536, 537, 538, 539, + 9, 134, 135, 100, 101, 227, 4, 53, 0, 18, + 231, 3, 234, 101, 278, 134, 135, 653, 240, 452, + 66, 67, 92, 93, 70, 100, 476, 452, 74, 4, + 100, 4, 327, 467, 53, 4, 473, 30, 21, 21, + 67, 44, 88, 301, 4, 328, 63, 66, 67, 146, + 21, 70, 53, 4, 100, 74, 44, 21, 146, 49, + 76, 88, 28, 121, 44, 21, 503, 256, 76, 88, + 111, 121, 124, 92, 148, 21, 146, 32, 267, 111, + 34, 100, 515, 341, 136, 155, 23, 24, 25, 26, + 27, 149, 744, 441, 527, 443, 49, 121, 88, 149, + 92, 49, 235, 144, 58, 237, 49, 99, 100, 101, + 180, 270, 144, 125, 0, 69, 768, 50, 121, 136, + 15, 124, 88, 29, 125, 149, 92, 123, 140, 145, + 200, 767, 29, 230, 323, 88, 42, 145, 421, 94, + 88, 121, 230, 365, 366, 88, 149, 123, 9, 371, + 372, 149, 123, 149, 146, 148, 149, 18, 113, 256, + 206, 149, 44, 138, 234, 148, 149, 149, 256, 149, + 240, 132, 269, 148, 149, 148, 149, 148, 275, 148, + 149, 269, 44, 253, 148, 149, 256, 320, 148, 149, + 260, 261, 148, 124, 264, 327, 328, 148, 149, 388, + 275, 276, 148, 44, 110, 275, 631, 396, 237, 44, + 399, 148, 123, 110, 125, 285, 125, 122, 227, 378, + 229, 857, 231, 112, 129, 234, 137, 236, 298, 275, + 276, 240, 241, 771, 29, 773, 125, 237, 230, 121, + 462, 430, 148, 124, 263, 682, 265, 317, 267, 470, + 277, 148, 279, 121, 49, 136, 275, 276, 123, 121, + 125, 270, 124, 452, 256, 123, 122, 149, 16, 17, + 74, 280, 137, 129, 123, 267, 125, 269, 270, 137, + 121, 149, 441, 275, 443, 355, 121, 149, 137, 421, + 60, 125, 481, 88, 123, 365, 366, 126, 327, 328, + 124, 371, 372, 137, 323, 464, 124, 136, 149, 468, + 747, 140, 136, 124, 149, 110, 766, 137, 136, 23, + 24, 105, 136, 27, 139, 136, 140, 327, 328, 149, + 144, 323, 464, 845, 55, 136, 468, 105, 59, 140, + 852, 473, 531, 144, 105, 477, 535, 536, 537, 538, + 539, 4, 485, 148, 139, 120, 365, 366, 808, 792, + 125, 70, 371, 372, 120, 497, 86, 792, 500, 388, + 132, 503, 126, 807, 120, 670, 86, 396, 567, 125, + 399, 101, 452, 120, 148, 149, 378, 35, 125, 647, + 549, 101, 421, 120, 464, 125, 388, 71, 125, 129, + 658, 471, 141, 123, 396, 125, 141, 399, 251, 123, + 860, 430, 255, 123, 136, 125, 849, 514, 55, 516, + 123, 421, 43, 44, 849, 124, 514, 102, 516, 92, + 93, 94, 441, 141, 443, 124, 125, 102, 430, 628, + 123, 90, 631, 123, 473, 515, 741, 86, 477, 441, + 123, 443, 68, 462, 15, 102, 137, 123, 467, 120, + 452, 470, 481, 123, 120, 137, 137, 476, 497, 137, + 129, 500, 464, 473, 503, 137, 468, 477, 611, 612, + 744, 640, 777, 23, 24, 25, 26, 27, 140, 481, + 140, 125, 611, 612, 540, 717, 137, 497, 544, 137, + 500, 120, 86, 503, 768, 123, 149, 86, 86, 86, + 123, 140, 531, 540, 123, 123, 535, 536, 537, 538, + 539, 21, 514, 148, 516, 124, 136, 131, 124, 718, + 136, 125, 86, 124, 136, 57, 39, 39, 670, 531, + 729, 256, 12, 535, 536, 537, 538, 539, 567, 4, + 682, 123, 267, 136, 122, 129, 57, 549, 628, 124, + 124, 631, 137, 125, 661, 124, 788, 136, 144, 125, + 123, 144, 124, 661, 137, 567, 125, 137, 125, 768, + 137, 136, 123, 126, 123, 136, 124, 121, 136, 126, + 4, 661, 128, 143, 124, 124, 39, 121, 126, 126, + 733, 119, 137, 792, 149, 137, 137, 126, 323, 741, + 136, 136, 126, 136, 147, 747, 686, 126, 126, 136, + 136, 136, 103, 3, 136, 124, 124, 140, 124, 136, + 639, 136, 124, 137, 123, 694, 628, 124, 269, 631, + 137, 670, 136, 136, 653, 777, 136, 751, 640, 843, + 136, 136, 631, 682, 628, 252, 661, 666, 275, 740, + 778, 18, 4, 5, 6, 674, 8, 713, 10, 661, + 670, 779, 32, 388, 74, 53, 70, 19, 88, 405, + 765, 396, 682, 241, 399, 256, 717, 639, 11, 549, + 49, 33, 4, 5, 6, 44, 8, 497, 10, 718, + 477, 500, -1, -1, 350, 682, -1, 19, 717, -1, + 729, -1, 741, -1, -1, 430, -1, -1, 747, -1, + 62, 33, 792, -1, -1, -1, 718, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 78, 729, -1, -1, + -1, 741, -1, -1, -1, -1, -1, 747, 777, 768, + 62, -1, -1, -1, -1, -1, 765, 766, 767, -1, + -1, -1, 771, -1, 773, -1, 481, 109, -1, -1, + 779, 780, -1, -1, -1, -1, 768, 777, -1, 788, + -1, -1, -1, -1, -1, -1, -1, 129, -1, -1, + -1, -1, -1, -1, -1, -1, 138, 109, 807, 808, + 792, -1, -1, -1, -1, -1, 148, 149, -1, -1, + -1, -1, -1, -1, -1, -1, 531, -1, -1, -1, + 535, 536, 537, 538, 539, -1, 138, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 148, 149, 4, 5, + 6, -1, 8, -1, 10, -1, -1, -1, 857, -1, + -1, 860, 567, 19, -1, 21, -1, 23, 24, 25, + 26, 27, 28, 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, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, -1, -1, -1, 123, -1, -1, + -1, 127, -1, -1, -1, -1, 132, -1, -1, -1, + 136, -1, 138, -1, 140, -1, -1, -1, -1, -1, + -1, -1, 148, 149, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 718, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 729, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 567, -1, -1, - -1, 531, -1, -1, -1, 535, 536, 537, 538, 539, - -1, -1, -1, -1, -1, -1, 4, 5, 6, -1, - 8, -1, 10, 4, 5, 6, -1, 8, -1, 10, - -1, 19, -1, -1, -1, -1, -1, 567, 19, -1, - 21, -1, -1, -1, -1, 33, -1, -1, -1, 30, - 31, -1, 33, -1, -1, 36, 37, 38, 628, 40, - 41, 631, -1, -1, 45, 46, 47, 48, -1, -1, - 51, 52, 53, -1, 62, 56, -1, -1, -1, -1, - 61, 62, 63, 64, 65, 66, 67, -1, -1, -1, - 78, 72, 73, -1, 75, -1, 77, -1, 79, -1, - -1, 82, 83, 84, 85, -1, 87, -1, 89, -1, - -1, -1, 93, -1, 95, 96, 97, 98, 99, 100, - 101, 109, -1, 104, -1, 106, 107, 108, 109, -1, - -1, -1, -1, 114, 115, 116, 117, 118, 119, -1, - -1, 129, 123, -1, 125, -1, 127, -1, 718, -1, - 138, -1, -1, -1, -1, -1, -1, 138, -1, 729, - 148, 149, -1, -1, -1, -1, -1, 148, 149, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 718, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 768, 729, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 792, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 768, -1, - -1, -1, -1, -1, 4, 5, 6, -1, 8, -1, + -1, -1, -1, 768, 4, 5, 6, -1, 8, -1, 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, - -1, 21, 792, 23, 24, 25, 26, 27, 28, 29, + -1, 21, -1, -1, -1, -1, -1, 792, 28, 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, @@ -8357,238 +8363,221 @@ namespace yy { 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, -1, -1, 123, -1, -1, -1, 127, -1, 4, + -1, -1, -1, 123, 124, -1, -1, 127, -1, 4, 5, 6, 132, 8, -1, 10, 136, -1, 138, -1, 140, -1, -1, -1, 19, -1, 21, -1, 148, 149, - -1, -1, -1, 28, 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, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, -1, -1, 123, 124, - -1, -1, 127, -1, 4, 5, 6, 132, 8, -1, - 10, 136, -1, 138, -1, 140, -1, -1, -1, 19, - -1, 21, -1, 148, 149, -1, -1, -1, -1, -1, - 30, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, -1, -1, 47, 48, -1, - -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, - -1, 61, 62, 63, 64, 65, 66, 67, -1, -1, - -1, -1, 72, 73, -1, 75, -1, 77, -1, 79, - -1, -1, 82, 83, 84, 85, -1, 87, -1, 89, - -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, - 100, 101, -1, -1, 104, -1, 106, 107, 108, 109, - -1, -1, -1, -1, 114, 115, 116, 117, 118, 119, - -1, 121, -1, -1, -1, 125, -1, 127, 4, 5, - 6, -1, 8, -1, 10, -1, -1, -1, 138, -1, - -1, -1, -1, 19, -1, 21, -1, -1, 148, 149, - -1, -1, -1, -1, 30, 31, -1, 33, -1, -1, - 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, - -1, 47, 48, -1, -1, 51, 52, -1, -1, -1, - 56, -1, -1, -1, -1, 61, 62, 63, 64, 65, - 66, 67, -1, -1, -1, -1, 72, 73, -1, 75, - -1, 77, -1, 79, -1, -1, 82, 83, 84, 85, - -1, 87, -1, 89, -1, -1, -1, 93, -1, 95, - 96, 97, 98, 99, 100, 101, -1, -1, 104, -1, - 106, 107, 108, 109, -1, -1, -1, -1, 114, 115, - 116, 117, 118, 119, -1, -1, -1, -1, -1, 125, - -1, 127, 4, 5, 6, -1, 8, -1, 10, -1, - -1, -1, 138, -1, -1, -1, -1, 19, -1, 21, - -1, -1, 148, 149, -1, -1, -1, 29, -1, 31, - -1, 33, -1, -1, 36, 37, 38, 39, 40, 41, - -1, -1, -1, -1, 46, 47, 48, -1, -1, 51, - 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, - 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, - -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, - 82, 83, 84, 85, -1, 87, 88, -1, -1, -1, - -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, - -1, -1, 104, -1, 106, 107, 108, 109, 110, -1, - -1, -1, 114, 115, 116, 117, 118, -1, -1, -1, - -1, 123, 4, 5, 6, 127, 8, -1, 10, -1, - 132, -1, -1, -1, -1, -1, 138, 19, 140, 21, - -1, -1, -1, -1, -1, -1, 148, 149, -1, 31, - -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - -1, -1, -1, -1, -1, 47, 48, -1, -1, 51, - 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, -1, - 72, 73, -1, 75, -1, 77, -1, 79, -1, -1, - 82, 83, 84, 85, -1, 87, -1, 89, -1, -1, - -1, 93, -1, 95, 96, 97, 98, 99, 100, 101, - -1, -1, 104, -1, 106, 107, 108, 109, -1, -1, - -1, -1, 114, 115, 116, 117, 118, 119, -1, -1, - -1, -1, -1, 125, -1, 127, 4, 5, 6, -1, - 8, -1, 10, -1, -1, -1, 138, -1, -1, -1, - -1, 19, -1, 21, -1, -1, 148, 149, -1, -1, - -1, -1, -1, 31, -1, 33, -1, -1, 36, 37, - 38, 39, 40, 41, -1, -1, -1, -1, 46, 47, - 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, - -1, -1, -1, 61, 62, -1, 64, 65, 66, 67, - -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, - -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, - 88, -1, -1, -1, -1, 93, -1, 95, 96, 97, - 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, - 108, 109, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, -1, -1, 123, 4, -1, -1, 127, - -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, - 138, -1, 140, 21, -1, -1, -1, -1, -1, -1, - 148, 149, -1, 31, -1, 33, -1, -1, 36, 37, - 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, - 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, - -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, - -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, - -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, - -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, - 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, - 108, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, -1, 4, 5, 6, -1, 8, 127, - 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, - 138, -1, 4, 5, 6, -1, 8, -1, 10, -1, - 148, 149, -1, 33, 4, 5, 6, 19, 8, 39, - 10, -1, -1, -1, -1, -1, 46, -1, -1, 19, - -1, 33, -1, -1, -1, -1, -1, 39, -1, -1, - -1, -1, 62, 33, 46, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 62, -1, -1, -1, -1, -1, -1, -1, 88, -1, - -1, -1, 62, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 88, -1, 78, 109, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 123, 124, -1, -1, 109, -1, -1, - -1, -1, 132, -1, -1, -1, -1, -1, 138, 109, - 140, 123, -1, -1, -1, -1, -1, -1, 148, 149, - 132, -1, -1, -1, -1, -1, 138, -1, 140, -1, - -1, -1, -1, -1, -1, -1, 148, 149, 138, -1, - 21, -1, 23, 24, 25, 26, 27, -1, 148, 149, + -1, -1, -1, -1, 29, 30, 31, -1, 33, -1, + -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, + 45, 46, 47, 48, -1, -1, 51, 52, 53, -1, + -1, 56, -1, -1, -1, -1, 61, 62, 63, 64, + 65, 66, 67, -1, -1, -1, -1, 72, 73, -1, + 75, -1, 77, -1, 79, -1, -1, 82, 83, 84, + 85, -1, 87, -1, 89, -1, -1, -1, 93, -1, + 95, 96, 97, 98, 99, 100, 101, -1, -1, 104, + -1, 106, 107, 108, 109, 110, -1, -1, -1, 114, + 115, 116, 117, 118, 119, -1, -1, -1, 123, -1, + 125, -1, 127, 4, 5, 6, -1, 8, -1, 10, + -1, -1, -1, 138, -1, -1, -1, -1, 19, -1, + 21, -1, -1, 148, 149, -1, -1, -1, 29, 30, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, - 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, - -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, - -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, - -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, - -1, -1, -1, 104, -1, 106, 107, 108, -1, -1, - -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, - -1, -1, -1, -1, -1, -1, 127, 29, -1, 31, - -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - 42, -1, -1, -1, -1, 47, 48, 148, 149, 51, - 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, - -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, - -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, - 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, - -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, - -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, - -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, - -1, -1, -1, -1, -1, 127, -1, -1, 31, -1, + 61, 62, 63, 64, 65, 66, 67, -1, -1, -1, + -1, 72, 73, -1, 75, -1, 77, -1, 79, -1, + -1, 82, 83, 84, 85, -1, 87, -1, 89, -1, + -1, -1, 93, -1, 95, 96, 97, 98, 99, 100, + 101, -1, -1, 104, -1, 106, 107, 108, 109, 110, + -1, -1, -1, 114, 115, 116, 117, 118, 119, -1, + 121, -1, -1, -1, 125, -1, 127, 4, 5, 6, + -1, 8, -1, 10, -1, -1, -1, 138, -1, -1, + -1, -1, 19, -1, 21, -1, -1, 148, 149, -1, + -1, -1, 29, 30, 31, -1, 33, -1, -1, 36, + 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, + 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, + -1, -1, -1, -1, 61, 62, 63, 64, 65, 66, + 67, -1, -1, -1, -1, 72, 73, -1, 75, -1, + 77, -1, 79, -1, -1, 82, 83, 84, 85, -1, + 87, -1, 89, -1, -1, -1, 93, -1, 95, 96, + 97, 98, 99, 100, 101, -1, -1, 104, -1, 106, + 107, 108, 109, 110, -1, -1, -1, 114, 115, 116, + 117, 118, 119, -1, -1, -1, -1, -1, 125, -1, + 127, 4, 5, 6, -1, 8, -1, 10, -1, -1, + -1, 138, -1, -1, -1, -1, 19, -1, 21, -1, + -1, 148, 149, -1, -1, -1, 29, -1, 31, -1, + 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, + -1, -1, -1, -1, 47, 48, -1, -1, 51, 52, + -1, -1, -1, 56, -1, -1, -1, -1, 61, 62, + 63, 64, 65, 66, 67, -1, -1, -1, -1, 72, + 73, -1, 75, -1, 77, -1, 79, -1, -1, 82, + 83, 84, 85, -1, 87, -1, 89, -1, -1, -1, + 93, -1, 95, 96, 97, 98, 99, 100, 101, -1, + -1, 104, -1, 106, 107, 108, 109, 110, -1, -1, + -1, 114, 115, 116, 117, 118, 119, -1, -1, -1, + -1, -1, 125, -1, 127, 4, 5, 6, -1, 8, + -1, 10, -1, -1, -1, 138, -1, -1, -1, -1, + 19, -1, 21, -1, -1, 148, 149, -1, -1, -1, + 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, + 39, 40, 41, -1, -1, -1, -1, 46, 47, 48, + -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, + -1, -1, 61, 62, -1, 64, 65, 66, 67, -1, + -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, + -1, -1, -1, 82, 83, 84, 85, -1, 87, 88, + -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, + 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, + 109, 110, -1, -1, -1, 114, 115, 116, 117, 118, + 119, -1, -1, -1, 123, -1, -1, -1, 127, -1, + 4, 5, 6, 132, 8, -1, 10, -1, -1, 138, + -1, 140, -1, -1, -1, 19, -1, 21, -1, 148, + 149, -1, -1, -1, -1, 29, -1, 31, -1, 33, + -1, -1, 36, 37, 38, 39, 40, 41, -1, -1, + -1, -1, 46, 47, 48, -1, -1, 51, 52, -1, + -1, -1, 56, -1, -1, -1, -1, 61, 62, -1, + 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, + -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, + 84, 85, -1, 87, 88, -1, -1, -1, -1, 93, + -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, + 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, + 114, 115, 116, 117, 118, 119, -1, -1, -1, 123, + -1, 4, -1, 127, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, 138, -1, 140, -1, 21, -1, + -1, -1, -1, -1, 148, 149, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, - -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, + -1, -1, -1, -1, 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, - -1, 104, -1, 106, 107, 108, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 120, -1, -1, - 123, 21, -1, -1, 127, -1, -1, -1, -1, 29, + -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, -1, 4, + 5, 6, -1, 8, 127, 10, -1, 4, 5, 6, + -1, 8, -1, 10, 19, 138, -1, -1, -1, -1, + -1, -1, 19, -1, 29, 148, 149, -1, 33, -1, + -1, 4, 5, 6, 39, 8, 33, 10, -1, -1, + -1, 46, -1, -1, -1, -1, 19, -1, 21, -1, + -1, -1, -1, -1, -1, -1, 29, 62, -1, -1, + 33, -1, -1, -1, -1, 62, 39, -1, -1, -1, + -1, -1, -1, 46, -1, -1, -1, -1, -1, -1, + -1, 78, -1, 88, -1, -1, -1, -1, -1, 62, + -1, -1, -1, -1, -1, -1, 4, 5, 6, -1, + 8, -1, 10, -1, 109, 110, -1, -1, -1, -1, + -1, 19, 109, -1, 119, 88, -1, -1, 123, 124, + -1, 29, -1, -1, -1, 33, -1, 132, -1, -1, + -1, 39, -1, 138, -1, 140, 109, 110, 46, -1, + -1, 138, -1, 148, 149, -1, 119, -1, -1, -1, + 123, 148, 149, -1, 62, -1, -1, -1, -1, 132, + -1, -1, -1, -1, -1, 138, -1, 140, -1, -1, + -1, -1, -1, -1, -1, 148, 149, -1, -1, -1, + 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 109, 110, -1, -1, -1, -1, -1, -1, -1, + -1, 119, -1, -1, -1, 123, -1, -1, -1, -1, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + 138, -1, 140, -1, -1, -1, -1, -1, -1, -1, + 148, 149, 21, -1, 23, 24, 25, 26, 27, -1, + 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, + -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, + -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, + -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, + -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, + -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, + -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, + 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, + -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, + -1, 21, -1, -1, -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, 148, 149, 47, 48, -1, - -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, + 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, + 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, - 21, -1, -1, -1, -1, -1, -1, 127, -1, -1, - 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, - 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, - 51, 52, -1, -1, -1, 56, -1, 58, -1, -1, - 61, -1, -1, 64, 65, 66, 67, -1, 69, -1, - -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, - -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, - -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, - -1, -1, -1, 104, -1, 106, 107, 108, -1, -1, - -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, - -1, -1, -1, -1, -1, -1, 127, -1, -1, 31, - -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, - 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, - -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, - -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, - 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, - -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, - -1, -1, 104, -1, 106, 107, 108, -1, -1, -1, - -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, - -1, 123, -1, -1, -1, 127, -1, -1, 31, -1, - 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, - -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, - -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, - -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, - 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, - 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, - 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, - -1, 104, -1, 106, 107, 108, -1, -1, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 120, -1, -1, - -1, 21, -1, -1, 127, -1, -1, -1, -1, -1, + 120, -1, -1, 123, 21, -1, -1, 127, -1, -1, + -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, + 37, 38, -1, 40, 41, -1, -1, -1, 148, 149, + 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, + -1, 58, -1, -1, 61, -1, -1, 64, 65, 66, + 67, -1, 69, -1, -1, -1, 73, -1, 75, -1, + 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, + 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, + 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, + 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, + 117, 118, -1, 21, -1, -1, -1, -1, -1, -1, + 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, + 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, + 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, + -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, + -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, + -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, + -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, + 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, + 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, + 118, -1, 21, -1, -1, 123, -1, -1, -1, 127, + 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, + -1, 40, 41, 42, -1, -1, -1, -1, 47, 48, + 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, + -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, + -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, + -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, + -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, + 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, + -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, + -1, 21, -1, -1, -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, 148, 149, 47, 48, -1, - -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, + 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, + 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, - -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, - 21, -1, -1, -1, -1, -1, -1, 127, -1, 129, - 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, - 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, - 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, - 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, - -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, - -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, - -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, - -1, -1, -1, 104, -1, 106, 107, 108, -1, -1, - -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, - -1, -1, -1, -1, -1, -1, 127, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 148, 149, 23, - 24, 25, 26, 27, 28, 29, 30, -1, 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, 62, 63, - -1, -1, -1, -1, 68, 69, 70, 71, 72, 73, - 74, 75, 76, -1, 78, 79, 80, 81, -1, 83, - -1, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - -1, 105, -1, 107, 108, 109, 110, 111, 112, 113, - -1, -1, -1, -1, -1, 119, -1, -1, -1, -1, + 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, + 120, -1, -1, -1, 21, -1, -1, 127, -1, -1, + -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, + 37, 38, -1, 40, 41, -1, -1, -1, 148, 149, + 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, + -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, + 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, + 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, + 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, + 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, + 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, + 117, 118, -1, 21, -1, -1, -1, -1, -1, -1, + 127, 29, 129, 31, -1, 33, -1, -1, 36, 37, + 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, + 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, + -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, + -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, + -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, + -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, + 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, + 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, + 118, -1, 21, -1, -1, -1, -1, -1, -1, 127, + 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, + -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, + 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, + -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, + -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, + -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, + -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, + 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, + -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, + -1, 21, -1, -1, -1, -1, -1, -1, 127, 29, + -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, + 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, + 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, + -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, + -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, + -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, + -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, + -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, + 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, + -1, -1, -1, -1, -1, -1, -1, 127, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 136, -1, -1, -1, -1, -1, -1, -1, - -1, 28, 29, 30, 148, 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, 62, 63, -1, -1, -1, - -1, 68, 69, 70, 71, 72, 73, 74, 75, 76, - -1, 78, 79, 80, 81, -1, 83, -1, 85, 86, - 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, -1, 105, -1, - 107, 108, 109, 110, 111, 112, 113, -1, -1, -1, - -1, -1, 119, -1, -1, -1, -1, 124, -1, -1, - 127, -1, -1, -1, -1, -1, -1, -1, -1, 136, - -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, - 30, 148, 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, 62, 63, -1, -1, -1, -1, 68, 69, - 70, 71, 72, 73, 74, 75, 76, -1, 78, 79, - 80, 81, -1, 83, -1, 85, 86, 87, 88, 89, - 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, -1, 105, -1, 107, 108, 109, - 110, 111, 112, 113, -1, -1, -1, -1, -1, 119, - -1, -1, -1, -1, -1, -1, -1, 127, 128, -1, - -1, -1, -1, -1, -1, -1, 136, -1, -1, -1, - -1, -1, -1, -1, -1, 28, 29, 30, 148, 32, + -1, -1, -1, -1, -1, -1, -1, -1, 148, 149, + 23, 24, 25, 26, 27, 28, 29, 30, -1, 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, 62, @@ -8598,9 +8587,44 @@ namespace yy { -1, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, 105, -1, 107, 108, 109, 110, 111, 112, 113, -1, -1, -1, -1, -1, 119, -1, -1, -1, - -1, -1, -1, -1, 127, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 136, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 148 + -1, -1, 28, 29, 30, 148, 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, 62, 63, -1, -1, + -1, -1, 68, 69, 70, 71, 72, 73, 74, 75, + 76, -1, 78, 79, 80, 81, -1, 83, -1, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, -1, 105, + -1, 107, 108, 109, 110, 111, 112, 113, -1, -1, + -1, -1, -1, 119, -1, -1, -1, -1, 124, -1, + -1, 127, -1, -1, -1, -1, -1, -1, -1, -1, + 136, -1, -1, -1, -1, -1, -1, -1, -1, 28, + 29, 30, 148, 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, 62, 63, -1, -1, -1, -1, 68, + 69, 70, 71, 72, 73, 74, 75, 76, -1, 78, + 79, 80, 81, -1, 83, -1, 85, 86, 87, 88, + 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, + 99, 100, 101, 102, 103, -1, 105, -1, 107, 108, + 109, 110, 111, 112, 113, -1, -1, -1, -1, -1, + 119, -1, -1, -1, -1, -1, -1, -1, 127, 128, + -1, -1, -1, -1, -1, -1, -1, 136, -1, -1, + -1, -1, -1, -1, -1, -1, 28, 29, 30, 148, + 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, + 62, 63, -1, -1, -1, -1, 68, 69, 70, 71, + 72, 73, 74, 75, 76, -1, 78, 79, 80, 81, + -1, 83, -1, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, -1, 105, -1, 107, 108, 109, 110, 111, + 112, 113, -1, -1, -1, -1, -1, 119, -1, -1, + -1, -1, -1, -1, -1, 127, -1, -1, -1, -1, + -1, -1, -1, -1, 136, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 148 }; const unsigned short int @@ -8616,23 +8640,23 @@ namespace yy { 136, 123, 55, 240, 241, 242, 245, 21, 148, 159, 195, 199, 200, 201, 202, 203, 204, 248, 249, 258, 259, 260, 373, 375, 377, 246, 124, 141, 242, 63, - 123, 205, 248, 21, 31, 33, 36, 37, 38, 40, - 41, 47, 48, 51, 52, 56, 61, 64, 65, 66, - 67, 73, 75, 77, 82, 83, 84, 85, 87, 93, - 95, 96, 97, 98, 99, 104, 106, 107, 108, 114, - 115, 116, 117, 118, 120, 127, 148, 149, 183, 184, - 193, 194, 198, 205, 210, 211, 212, 213, 250, 252, - 256, 261, 262, 270, 272, 276, 280, 281, 284, 285, - 286, 291, 292, 293, 294, 298, 299, 300, 301, 305, - 312, 313, 318, 319, 320, 321, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 373, 374, 375, 376, 205, - 261, 373, 376, 205, 243, 376, 29, 110, 148, 156, - 157, 158, 206, 207, 208, 209, 247, 261, 373, 375, - 376, 377, 148, 156, 376, 102, 102, 123, 90, 123, + 123, 205, 248, 21, 29, 31, 33, 36, 37, 38, + 40, 41, 47, 48, 51, 52, 56, 61, 64, 65, + 66, 67, 73, 75, 77, 82, 83, 84, 85, 87, + 93, 95, 96, 97, 98, 99, 104, 106, 107, 108, + 110, 114, 115, 116, 117, 118, 120, 127, 148, 158, + 183, 184, 193, 194, 198, 205, 210, 211, 212, 213, + 250, 252, 256, 261, 262, 270, 272, 276, 280, 281, + 284, 285, 286, 291, 292, 293, 294, 298, 299, 300, + 301, 305, 312, 313, 318, 319, 320, 321, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 373, 374, 376, + 205, 261, 373, 376, 205, 243, 376, 148, 149, 156, + 157, 158, 206, 207, 208, 209, 247, 261, 373, 376, + 377, 148, 156, 158, 376, 102, 102, 123, 90, 123, 86, 123, 68, 102, 86, 101, 123, 125, 332, 356, 86, 123, 332, 356, 42, 156, 160, 161, 261, 15, - 302, 120, 120, 261, 137, 123, 254, 120, 332, 58, - 69, 261, 137, 129, 137, 137, 261, 120, 137, 120, + 302, 137, 120, 120, 261, 137, 123, 254, 120, 332, + 58, 69, 261, 137, 129, 137, 261, 120, 137, 120, 123, 244, 306, 375, 124, 136, 140, 137, 120, 137, 123, 263, 295, 296, 297, 374, 121, 274, 277, 278, 279, 374, 156, 273, 274, 374, 261, 263, 374, 332, @@ -8643,14 +8667,14 @@ namespace yy { 322, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 346, 347, 348, 349, 350, 351, 352, 354, 356, 357, 358, 359, 369, 370, 86, 86, 261, 263, 124, - 287, 86, 86, 123, 140, 32, 94, 113, 304, 196, - 261, 120, 23, 24, 25, 26, 27, 164, 165, 5, - 6, 8, 10, 33, 39, 46, 88, 123, 140, 148, - 149, 156, 198, 214, 251, 253, 255, 257, 261, 264, - 265, 266, 267, 271, 275, 314, 322, 375, 376, 123, - 268, 261, 261, 165, 373, 261, 165, 21, 373, 120, - 33, 148, 149, 198, 264, 265, 373, 376, 160, 4, - 251, 307, 308, 309, 310, 311, 374, 375, 207, 247, + 287, 86, 86, 123, 140, 32, 94, 113, 304, 23, + 24, 25, 26, 27, 164, 165, 196, 261, 120, 165, + 5, 6, 8, 10, 33, 39, 46, 88, 119, 123, + 140, 148, 149, 156, 198, 214, 251, 253, 255, 257, + 261, 264, 265, 266, 267, 271, 275, 314, 322, 375, + 376, 123, 268, 261, 261, 165, 373, 261, 21, 373, + 120, 33, 148, 149, 198, 264, 265, 373, 376, 160, + 4, 251, 307, 308, 309, 310, 311, 374, 207, 247, 148, 377, 123, 183, 185, 186, 187, 189, 282, 283, 374, 124, 136, 261, 131, 371, 124, 136, 125, 124, 136, 86, 371, 49, 88, 124, 136, 57, 343, 39, @@ -8658,7 +8682,7 @@ namespace yy { 335, 4, 123, 371, 136, 111, 144, 344, 76, 145, 345, 343, 261, 122, 129, 261, 263, 261, 263, 124, 261, 263, 261, 263, 23, 24, 27, 162, 163, 166, - 169, 171, 172, 174, 4, 251, 303, 265, 137, 265, + 169, 171, 172, 174, 4, 251, 303, 137, 265, 265, 265, 269, 125, 254, 124, 136, 140, 144, 136, 144, 137, 335, 265, 137, 137, 251, 307, 124, 307, 125, 28, 29, 30, 32, 33, 34, 35, 36, 37, 38, @@ -8687,11 +8711,12 @@ namespace yy { 137, 220, 336, 185, 348, 170, 103, 124, 136, 278, 121, 289, 123, 185, 265, 364, 364, 28, 88, 92, 368, 336, 221, 222, 374, 123, 155, 136, 136, 265, - 124, 33, 36, 37, 38, 39, 40, 41, 46, 47, - 48, 51, 52, 56, 61, 62, 73, 75, 83, 85, - 87, 88, 95, 96, 97, 98, 99, 107, 108, 109, - 127, 148, 177, 178, 179, 180, 181, 182, 121, 177, - 124, 178, 164, 182, 136, 128, 289, 136 + 124, 29, 33, 36, 37, 38, 39, 40, 41, 46, + 47, 48, 51, 52, 56, 61, 62, 73, 75, 83, + 85, 87, 88, 95, 96, 97, 98, 99, 107, 108, + 109, 110, 119, 127, 148, 177, 178, 179, 180, 181, + 182, 121, 177, 124, 178, 164, 182, 136, 128, 289, + 136 }; const unsigned short int @@ -8723,37 +8748,37 @@ namespace yy { 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, 263, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, 264, 264, 264, 265, 265, 266, 266, 267, - 267, 268, 269, 269, 270, 271, 271, 272, 272, 273, - 273, 274, 274, 275, 275, 276, 277, 277, 277, 277, - 278, 278, 279, 279, 280, 281, 281, 282, 282, 283, - 283, 284, 285, 286, 286, 287, 288, 288, 288, 288, - 288, 288, 288, 288, 288, 289, 289, 290, 290, 290, - 290, 291, 291, 292, 292, 293, 293, 294, 295, 296, - 296, 296, 297, 297, 298, 299, 300, 300, 300, 301, - 302, 302, 303, 303, 304, 304, 304, 304, 305, 306, - 306, 307, 307, 308, 308, 308, 309, 310, 310, 311, - 312, 313, 314, 315, 316, 316, 317, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 327, 328, + 264, 264, 264, 264, 264, 264, 265, 265, 266, 266, + 267, 267, 268, 269, 269, 270, 271, 271, 272, 272, + 273, 273, 274, 274, 275, 275, 276, 277, 277, 277, + 277, 278, 278, 279, 279, 280, 281, 281, 282, 282, + 283, 283, 284, 285, 286, 286, 287, 288, 288, 288, + 288, 288, 288, 288, 288, 288, 289, 289, 290, 290, + 290, 290, 291, 291, 292, 292, 293, 293, 294, 295, + 296, 296, 296, 297, 297, 298, 299, 300, 300, 300, + 301, 302, 302, 303, 303, 304, 304, 304, 304, 305, + 306, 306, 307, 307, 308, 308, 308, 309, 310, 310, + 311, 312, 313, 314, 315, 316, 316, 317, 317, 318, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 327, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, - 328, 328, 329, 330, 330, 331, 331, 331, 331, 331, - 331, 331, 331, 332, 333, 333, 334, 335, 335, 335, - 336, 336, 337, 337, 338, 339, 339, 340, 341, 341, - 342, 343, 344, 344, 345, 345, 346, 346, 347, 347, - 347, 347, 347, 347, 347, 347, 347, 348, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 349, 350, 351, - 352, 352, 353, 353, 354, 354, 355, 355, 356, 357, - 358, 359, 359, 360, 361, 361, 362, 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, + 328, 328, 328, 329, 330, 330, 331, 331, 331, 331, + 331, 331, 331, 331, 332, 333, 333, 334, 335, 335, + 335, 336, 336, 337, 337, 338, 339, 339, 340, 341, + 341, 342, 343, 344, 344, 345, 345, 346, 346, 347, + 347, 347, 347, 347, 347, 347, 347, 347, 348, 348, + 348, 348, 348, 348, 348, 348, 348, 348, 349, 350, + 351, 352, 352, 353, 353, 354, 354, 355, 355, 356, + 357, 358, 359, 359, 360, 361, 361, 362, 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 }; const unsigned char @@ -8785,37 +8810,37 @@ namespace yy { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 4, 1, 1, 1, 1, 3, - 3, 1, 1, 1, 1, 1, 1, 3, 3, 3, - 3, 3, 1, 2, 1, 1, 1, 1, 4, 1, - 3, 4, 4, 1, 2, 4, 1, 4, 6, 2, - 1, 3, 1, 1, 1, 2, 5, 1, 3, 4, - 4, 2, 1, 3, 4, 1, 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, + 3, 1, 1, 1, 1, 1, 1, 1, 3, 3, + 3, 3, 3, 1, 2, 1, 1, 1, 1, 4, + 1, 3, 4, 4, 1, 2, 4, 1, 4, 6, + 2, 1, 3, 1, 1, 1, 2, 5, 1, 3, + 4, 4, 2, 1, 3, 4, 1, 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, 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, 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, 2, 1, + 3, 1, 2, 1, 2, 1, 1, 1, 1, 2, + 1, 2, 3, 3, 1, 1, 1, 3, 5, 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, 2, 1, 3, - 1, 2, 1, 2, 1, 1, 1, 1, 2, 1, - 2, 3, 3, 1, 1, 1, 3, 5, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1 + 1, 1, 1, 1, 1, 1, 1, 1 }; @@ -8955,37 +8980,37 @@ namespace yy { 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 959, 963, 965, 967, 969, 971, 973, 975, 977, 979, 981, 983, 984, 986, 988, 990, - 994, 996, 998, 1000, 1002, 1006, 1008, 1012, 1013, 1016, - 1017, 1020, 1023, 1025, 1033, 1036, 1037, 1040, 1042, 1046, - 1048, 1052, 1054, 1058, 1060, 1064, 1068, 1071, 1074, 1078, - 1081, 1083, 1087, 1089, 1097, 1100, 1101, 1104, 1105, 1108, - 1109, 1123, 1126, 1129, 1131, 1139, 1143, 1145, 1147, 1149, - 1151, 1153, 1155, 1157, 1159, 1163, 1165, 1169, 1171, 1173, - 1175, 1186, 1188, 1192, 1194, 1198, 1200, 1204, 1208, 1212, - 1214, 1216, 1220, 1222, 1229, 1232, 1236, 1238, 1240, 1244, - 1248, 1249, 1252, 1254, 1257, 1259, 1261, 1263, 1273, 1276, - 1278, 1282, 1284, 1288, 1290, 1292, 1296, 1300, 1302, 1305, - 1309, 1321, 1324, 1330, 1333, 1334, 1337, 1338, 1341, 1347, - 1354, 1360, 1363, 1366, 1369, 1372, 1375, 1378, 1379, 1382, - 1383, 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, - 1393, 1394, 1398, 1401, 1403, 1407, 1409, 1411, 1413, 1415, - 1417, 1419, 1421, 1425, 1428, 1429, 1432, 1435, 1436, 1437, - 1440, 1441, 1444, 1445, 1448, 1451, 1452, 1455, 1458, 1459, - 1462, 1465, 1468, 1469, 1472, 1473, 1476, 1478, 1481, 1482, - 1483, 1484, 1485, 1486, 1487, 1488, 1489, 1495, 1497, 1498, - 1499, 1500, 1501, 1502, 1503, 1504, 1505, 1508, 1511, 1514, - 1517, 1518, 1521, 1522, 1525, 1526, 1529, 1530, 1533, 1536, - 1539, 1542, 1543, 1546, 1549, 1550, 1553, 1556, 1559, 1560, - 1563, 1566, 1569, 1570, 1573, 1574, 1575, 1576, 1579, 1582, - 1585, 1586, 1589, 1590, 1591, 1594, 1598, 1602, 1606, 1610, - 1614, 1615, 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623, - 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, - 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, - 1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653, - 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, - 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, - 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, - 1684, 1685, 1686, 1687, 1688, 1689, 1690 + 994, 996, 998, 1000, 1002, 1004, 1008, 1010, 1014, 1015, + 1018, 1019, 1022, 1025, 1027, 1035, 1038, 1039, 1042, 1044, + 1048, 1050, 1054, 1056, 1060, 1062, 1066, 1070, 1073, 1076, + 1080, 1083, 1085, 1089, 1091, 1099, 1102, 1103, 1106, 1107, + 1110, 1111, 1125, 1128, 1131, 1133, 1141, 1145, 1147, 1149, + 1151, 1153, 1155, 1157, 1159, 1161, 1165, 1167, 1171, 1173, + 1175, 1177, 1188, 1190, 1194, 1196, 1200, 1202, 1206, 1210, + 1214, 1216, 1218, 1222, 1224, 1231, 1234, 1238, 1240, 1242, + 1246, 1250, 1251, 1254, 1256, 1259, 1261, 1263, 1265, 1275, + 1278, 1280, 1284, 1286, 1290, 1292, 1294, 1298, 1302, 1304, + 1307, 1311, 1323, 1326, 1332, 1335, 1336, 1339, 1340, 1343, + 1349, 1356, 1362, 1365, 1368, 1371, 1374, 1377, 1380, 1381, + 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, + 1394, 1395, 1396, 1400, 1403, 1405, 1409, 1411, 1413, 1415, + 1417, 1419, 1421, 1423, 1427, 1430, 1431, 1434, 1437, 1438, + 1439, 1442, 1443, 1446, 1447, 1450, 1453, 1454, 1457, 1460, + 1461, 1464, 1467, 1470, 1471, 1474, 1475, 1478, 1480, 1483, + 1484, 1485, 1486, 1487, 1488, 1489, 1490, 1491, 1497, 1499, + 1500, 1501, 1502, 1503, 1504, 1505, 1506, 1507, 1510, 1513, + 1516, 1519, 1520, 1523, 1524, 1527, 1528, 1531, 1532, 1535, + 1538, 1541, 1544, 1545, 1548, 1551, 1552, 1555, 1558, 1561, + 1562, 1565, 1568, 1571, 1572, 1575, 1576, 1577, 1578, 1581, + 1584, 1587, 1588, 1591, 1592, 1593, 1596, 1600, 1604, 1608, + 1612, 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623, 1624, + 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, + 1635, 1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, + 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, + 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, 1664, + 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, + 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, + 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692 }; // Print the state stack on the debug stream. @@ -9020,8 +9045,8 @@ namespace yy { } // yy -#line 9022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 -#line 1692 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 +#line 9047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 +#line 1694 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 @@ -9034,7 +9059,7 @@ namespace yy { context.location.step(); // Lexer -#line 9038 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9063 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -9134,25 +9159,25 @@ namespace yy { } yy2: ++context.cursor; -#line 9153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9178 "/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 9140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 9180 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9205 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } -#line 9146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 9157 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 9151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 9156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 9156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -9161,9 +9186,9 @@ namespace yy { } yy11: ++context.cursor; -#line 9175 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9200 "/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 9167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9192 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { @@ -9241,19 +9266,19 @@ namespace yy { } yy18: ++context.cursor; -#line 9165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9190 "/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 9247 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9272 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 9166 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9191 "/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 9252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 9171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9196 "/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 9257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9282 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { @@ -9261,9 +9286,9 @@ namespace yy { default: goto yy25; } yy25: -#line 9172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9197 "/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 9267 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { @@ -9271,9 +9296,9 @@ namespace yy { default: goto yy27; } yy27: -#line 9173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9198 "/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 9277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { @@ -9296,9 +9321,9 @@ namespace yy { default: goto yy31; } yy31: -#line 9142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9167 "/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 9302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy32: yyaccept = 0; yych = *(YYMARKER = ++context.cursor); @@ -9307,24 +9332,24 @@ namespace yy { default: goto yy33; } yy33: -#line 9169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9194 "/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 9313 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 9170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9195 "/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 9318 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9343 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 9176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9201 "/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 9323 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9348 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 9179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9204 "/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 9328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9353 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy40: yych = *++context.cursor; switch (yych) { @@ -9336,9 +9361,9 @@ namespace yy { default: goto yy49; } yy41: -#line 9147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9172 "/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 9342 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy42: yych = *++context.cursor; switch (yych) { @@ -9551,19 +9576,19 @@ namespace yy { } yy61: ++context.cursor; -#line 9167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9192 "/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 9557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 9168 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9193 "/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 9562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9587 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; -#line 9177 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9202 "/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 9567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9592 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy67: yych = *++context.cursor; switch (yych) { @@ -9634,24 +9659,24 @@ namespace yy { default: goto yy69; } yy69: -#line 9148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9173 "/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 9640 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9665 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; -#line 9163 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9188 "/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 9645 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9670 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; -#line 9174 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9199 "/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 9650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9675 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; -#line 9164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9189 "/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 9655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9680 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -9659,9 +9684,9 @@ namespace yy { default: goto yy77; } yy77: -#line 9144 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9169 "/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 9665 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9690 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; @@ -9742,9 +9767,9 @@ namespace yy { default: goto yy83; } yy83: -#line 9149 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9174 "/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 9748 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9773 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy84: yych = *++context.cursor; switch (yych) { @@ -9815,9 +9840,9 @@ namespace yy { default: goto yy86; } yy86: -#line 9150 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9175 "/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 9821 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9846 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { @@ -9834,9 +9859,9 @@ namespace yy { default: goto yy88; } yy90: -#line 9136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 9840 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9865 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy91: yych = *++context.cursor; switch (yych) { @@ -9844,9 +9869,9 @@ namespace yy { default: goto yy92; } yy92: -#line 9162 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9187 "/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 9850 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9875 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { @@ -9990,9 +10015,9 @@ namespace yy { default: goto yy107; } yy107: -#line 9050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9075 "/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 9996 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10021 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy108: yych = *++context.cursor; switch (yych) { @@ -10221,9 +10246,9 @@ namespace yy { default: goto yy134; } yy134: -#line 9098 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9123 "/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 10227 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy135: yych = *++context.cursor; switch (yych) { @@ -10383,9 +10408,9 @@ namespace yy { } yy161: ++context.cursor; -#line 9146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9171 "/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, context.cursor), context.location); } -#line 10389 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10414 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy163: yych = *++context.cursor; switch (yych) { @@ -10396,9 +10421,9 @@ namespace yy { } yy164: ++context.cursor; -#line 9161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9186 "/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 10402 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy166: yych = *++context.cursor; switch (yych) { @@ -10407,9 +10432,9 @@ namespace yy { } yy167: ++context.cursor; -#line 9160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9185 "/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 10413 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10438 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy169: yych = *++context.cursor; switch (yych) { @@ -10487,9 +10512,9 @@ namespace yy { default: goto yy171; } yy171: -#line 9042 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9067 "/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 10493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10518 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy172: yych = *++context.cursor; switch (yych) { @@ -10560,9 +10585,9 @@ namespace yy { default: goto yy173; } yy173: -#line 9043 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9068 "/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 10566 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy174: yych = *++context.cursor; switch (yych) { @@ -10651,9 +10676,9 @@ namespace yy { default: goto yy178; } yy178: -#line 9047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9072 "/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 10657 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10682 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy179: yych = *++context.cursor; switch (yych) { @@ -10798,9 +10823,9 @@ namespace yy { default: goto yy192; } yy192: -#line 9066 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9091 "/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 10804 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10829 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy193: yych = *++context.cursor; switch (yych) { @@ -10963,9 +10988,9 @@ namespace yy { default: goto yy209; } yy209: -#line 9089 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9114 "/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 10969 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10994 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy210: yych = *++context.cursor; switch (yych) { @@ -11036,9 +11061,9 @@ namespace yy { default: goto yy211; } yy211: -#line 9090 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9115 "/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 11042 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11067 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy212: yych = *++context.cursor; switch (yych) { @@ -11163,9 +11188,9 @@ namespace yy { default: goto yy222; } yy222: -#line 9102 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9127 "/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 11169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy223: yych = *++context.cursor; switch (yych) { @@ -11278,9 +11303,9 @@ namespace yy { default: goto yy231; } yy231: -#line 9111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9136 "/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 11284 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11309 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy232: yych = *++context.cursor; switch (yych) { @@ -11381,14 +11406,14 @@ namespace yy { } yy248: ++context.cursor; -#line 9135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11387 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11412 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy250: ++context.cursor; -#line 9138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9163 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11392 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11417 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy252: yych = *++context.cursor; switch (yych) { @@ -11537,9 +11562,9 @@ namespace yy { default: goto yy266; } yy266: -#line 9058 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9083 "/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 11543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11568 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy267: yych = *++context.cursor; switch (yych) { @@ -11677,9 +11702,9 @@ namespace yy { default: goto yy279; } yy279: -#line 9074 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9099 "/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 11683 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11708 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy280: yych = *++context.cursor; switch (yych) { @@ -11824,9 +11849,9 @@ namespace yy { default: goto yy293; } yy293: -#line 9093 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9118 "/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 11830 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11855 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy294: yych = *++context.cursor; switch (yych) { @@ -11963,9 +11988,9 @@ namespace yy { default: goto yy306; } yy306: -#line 9107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9132 "/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 11969 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11994 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy307: yych = *++context.cursor; switch (yych) { @@ -12054,9 +12079,9 @@ namespace yy { default: goto yy311; } yy311: -#line 9113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9138 "/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 12060 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy312: yych = *++context.cursor; switch (yych) { @@ -12145,9 +12170,9 @@ namespace yy { default: goto yy316; } yy316: -#line 9117 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9142 "/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 12151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy317: yych = *++context.cursor; switch (yych) { @@ -12218,9 +12243,9 @@ namespace yy { default: goto yy318; } yy318: -#line 9119 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9144 "/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 12224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12249 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy319: yych = *++context.cursor; switch (yych) { @@ -12291,9 +12316,9 @@ namespace yy { default: goto yy320; } yy320: -#line 9121 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9146 "/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 12297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy321: yych = *++context.cursor; switch (yych) { @@ -12424,9 +12449,9 @@ namespace yy { default: goto yy332; } yy332: -#line 9131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9156 "/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 12430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12455 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy333: yych = *++context.cursor; switch (yych) { @@ -12521,9 +12546,9 @@ namespace yy { default: goto yy338; } yy338: -#line 9046 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9071 "/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 12527 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12552 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy339: yych = *++context.cursor; switch (yych) { @@ -12618,9 +12643,9 @@ namespace yy { default: goto yy344; } yy344: -#line 9053 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9078 "/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 12624 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12649 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy345: yych = *++context.cursor; switch (yych) { @@ -12782,9 +12807,9 @@ namespace yy { default: goto yy361; } yy361: -#line 9073 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9098 "/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 12788 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12813 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy362: yych = *++context.cursor; switch (yych) { @@ -12952,9 +12977,9 @@ namespace yy { default: goto yy379; } yy379: -#line 9097 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9122 "/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 12958 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12983 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy380: yych = *++context.cursor; switch (yych) { @@ -13127,9 +13152,9 @@ namespace yy { default: goto yy398; } yy398: -#line 9123 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9148 "/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 13133 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy399: yych = *++context.cursor; switch (yych) { @@ -13242,9 +13267,9 @@ namespace yy { default: goto yy407; } yy407: -#line 9040 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9065 "/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 13248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13273 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy408: yych = *++context.cursor; switch (yych) { @@ -13351,9 +13376,9 @@ namespace yy { default: goto yy415; } yy415: -#line 9052 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9077 "/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 13357 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13382 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy416: yych = *++context.cursor; switch (yych) { @@ -13490,9 +13515,9 @@ namespace yy { default: goto yy428; } yy428: -#line 9068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9093 "/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 13496 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13521 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy429: yych = *++context.cursor; switch (yych) { @@ -13683,9 +13708,9 @@ namespace yy { default: goto yy450; } yy450: -#line 9095 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9120 "/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 13689 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13714 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy451: yych = *++context.cursor; switch (yych) { @@ -13822,9 +13847,9 @@ namespace yy { default: goto yy463; } yy463: -#line 9114 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9139 "/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 13828 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13853 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy464: yych = *++context.cursor; switch (yych) { @@ -13895,9 +13920,9 @@ namespace yy { default: goto yy465; } yy465: -#line 9115 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9140 "/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 13901 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13926 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy466: yych = *++context.cursor; switch (yych) { @@ -13992,9 +14017,9 @@ namespace yy { default: goto yy471; } yy471: -#line 9124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9149 "/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 13998 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14023 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy472: yych = *++context.cursor; switch (yych) { @@ -14125,9 +14150,9 @@ namespace yy { default: goto yy483; } yy483: -#line 9049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9074 "/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 14131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy484: yych = *++context.cursor; switch (yych) { @@ -14228,9 +14253,9 @@ namespace yy { default: goto yy490; } yy490: -#line 9060 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9085 "/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 14234 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14259 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy491: yych = *++context.cursor; switch (yych) { @@ -14319,9 +14344,9 @@ namespace yy { default: goto yy495; } yy495: -#line 9064 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9089 "/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 14325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy496: yych = *++context.cursor; switch (yych) { @@ -14410,9 +14435,9 @@ namespace yy { default: goto yy500; } yy500: -#line 9070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9095 "/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 14416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14441 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy501: yych = *++context.cursor; switch (yych) { @@ -14526,9 +14551,9 @@ namespace yy { default: goto yy509; } yy509: -#line 9081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9106 "/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 14532 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy510: yych = *++context.cursor; switch (yych) { @@ -14599,9 +14624,9 @@ namespace yy { default: goto yy511; } yy511: -#line 9082 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9107 "/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 14605 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14630 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy512: yych = *++context.cursor; switch (yych) { @@ -14690,9 +14715,9 @@ namespace yy { default: goto yy516; } yy516: -#line 9086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9111 "/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 14696 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy517: yych = *++context.cursor; switch (yych) { @@ -14793,9 +14818,9 @@ namespace yy { default: goto yy523; } yy523: -#line 9099 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9124 "/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 14799 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14824 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy524: yych = *++context.cursor; switch (yych) { @@ -14878,9 +14903,9 @@ namespace yy { default: goto yy527; } yy527: -#line 9101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9126 "/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 14884 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy528: yych = *++context.cursor; switch (yych) { @@ -14957,9 +14982,9 @@ namespace yy { default: goto yy530; } yy530: -#line 9104 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9129 "/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 14963 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14988 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy531: yych = *++context.cursor; switch (yych) { @@ -15030,9 +15055,9 @@ namespace yy { default: goto yy532; } yy532: -#line 9106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9131 "/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 15036 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy533: yych = *++context.cursor; switch (yych) { @@ -15157,9 +15182,9 @@ namespace yy { default: goto yy543; } yy543: -#line 9127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9152 "/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 15163 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy544: yych = *++context.cursor; switch (yych) { @@ -15314,9 +15339,9 @@ namespace yy { default: goto yy559; } yy559: -#line 9062 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9087 "/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 15320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15345 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy560: yych = *++context.cursor; switch (yych) { @@ -15387,9 +15412,9 @@ namespace yy { default: goto yy561; } yy561: -#line 9063 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9088 "/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 15393 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15418 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy562: yych = *++context.cursor; switch (yych) { @@ -15472,9 +15497,9 @@ namespace yy { default: goto yy565; } yy565: -#line 9069 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9094 "/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 15478 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15503 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy566: yych = *++context.cursor; switch (yych) { @@ -15551,9 +15576,9 @@ namespace yy { default: goto yy568; } yy568: -#line 9072 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9097 "/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 15557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy569: yych = *++context.cursor; switch (yych) { @@ -15654,9 +15679,9 @@ namespace yy { default: goto yy575; } yy575: -#line 9080 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9105 "/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 15660 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy576: yych = *++context.cursor; switch (yych) { @@ -15727,9 +15752,9 @@ namespace yy { default: goto yy577; } yy577: -#line 9083 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9108 "/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 15733 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15758 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy578: yych = *++context.cursor; switch (yych) { @@ -15800,9 +15825,9 @@ namespace yy { default: goto yy579; } yy579: -#line 9084 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9109 "/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 15806 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy580: yych = *++context.cursor; switch (yych) { @@ -15909,9 +15934,9 @@ namespace yy { default: goto yy587; } yy587: -#line 9100 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9125 "/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 15915 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15940 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy588: yych = *++context.cursor; switch (yych) { @@ -16006,9 +16031,9 @@ namespace yy { default: goto yy593; } yy593: -#line 9110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9135 "/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 16012 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16037 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy594: yych = *++context.cursor; switch (yych) { @@ -16079,9 +16104,9 @@ namespace yy { default: goto yy595; } yy595: -#line 9112 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9137 "/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 16085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy596: yych = *++context.cursor; switch (yych) { @@ -16218,9 +16243,9 @@ namespace yy { default: goto yy608; } yy608: -#line 9045 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9070 "/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 16224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16249 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy609: yych = *++context.cursor; switch (yych) { @@ -16291,9 +16316,9 @@ namespace yy { default: goto yy610; } yy610: -#line 9048 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9073 "/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 16297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy611: yych = *++context.cursor; switch (yych) { @@ -16364,9 +16389,9 @@ namespace yy { default: goto yy612; } yy612: -#line 9051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9076 "/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 16370 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16395 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy613: yych = *++context.cursor; switch (yych) { @@ -16437,9 +16462,9 @@ namespace yy { default: goto yy614; } yy614: -#line 9054 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9079 "/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 16443 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16468 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy615: yych = *++context.cursor; switch (yych) { @@ -16522,9 +16547,9 @@ namespace yy { default: goto yy618; } yy618: -#line 9059 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9084 "/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 16528 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy619: yych = *++context.cursor; switch (yych) { @@ -16637,9 +16662,9 @@ namespace yy { default: goto yy627; } yy627: -#line 9078 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9103 "/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 16643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16668 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy628: yych = *++context.cursor; switch (yych) { @@ -16776,9 +16801,9 @@ namespace yy { default: goto yy640; } yy640: -#line 9116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9141 "/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 16782 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16807 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy641: yych = *++context.cursor; switch (yych) { @@ -16867,9 +16892,9 @@ namespace yy { default: goto yy645; } yy645: -#line 9125 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9150 "/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 16873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16898 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy646: yych = *++context.cursor; switch (yych) { @@ -16976,9 +17001,9 @@ namespace yy { default: goto yy653; } yy653: -#line 9055 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9080 "/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 16982 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17007 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy654: yych = *++context.cursor; switch (yych) { @@ -17055,9 +17080,9 @@ namespace yy { default: goto yy656; } yy656: -#line 9057 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9082 "/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 17061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy657: yych = *++context.cursor; switch (yych) { @@ -17140,9 +17165,9 @@ namespace yy { default: goto yy660; } yy660: -#line 9067 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9092 "/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 17146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy661: yych = *++context.cursor; switch (yych) { @@ -17237,9 +17262,9 @@ namespace yy { default: goto yy666; } yy666: -#line 9079 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9104 "/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 17243 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy667: yych = *++context.cursor; switch (yych) { @@ -17388,9 +17413,9 @@ namespace yy { default: goto yy681; } yy681: -#line 9128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9153 "/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 17394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17419 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy682: yych = *++context.cursor; switch (yych) { @@ -17485,9 +17510,9 @@ namespace yy { default: goto yy687; } yy687: -#line 9044 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9069 "/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 17491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17516 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy688: yych = *++context.cursor; switch (yych) { @@ -17558,9 +17583,9 @@ namespace yy { default: goto yy689; } yy689: -#line 9056 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9081 "/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 17564 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17589 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy690: yych = *++context.cursor; switch (yych) { @@ -17631,9 +17656,9 @@ namespace yy { default: goto yy691; } yy691: -#line 9061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9086 "/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 17637 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17662 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy692: yych = *++context.cursor; switch (yych) { @@ -17794,9 +17819,9 @@ namespace yy { default: goto yy708; } yy708: -#line 9120 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9145 "/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 17800 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17825 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy709: yych = *++context.cursor; switch (yych) { @@ -17933,9 +17958,9 @@ namespace yy { default: goto yy721; } yy721: -#line 9085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9110 "/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 17939 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17964 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy722: yych = *++context.cursor; switch (yych) { @@ -18006,9 +18031,9 @@ namespace yy { default: goto yy723; } yy723: -#line 9087 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9112 "/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 18012 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18037 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy724: yych = *++context.cursor; switch (yych) { @@ -18079,9 +18104,9 @@ namespace yy { default: goto yy725; } yy725: -#line 9088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9113 "/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 18085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy726: yych = *++context.cursor; switch (yych) { @@ -18158,9 +18183,9 @@ namespace yy { default: goto yy728; } yy728: -#line 9092 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9117 "/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 18164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy729: yych = *++context.cursor; switch (yych) { @@ -18255,9 +18280,9 @@ namespace yy { default: goto yy734; } yy734: -#line 9108 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9133 "/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 18261 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18286 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy735: yych = *++context.cursor; switch (yych) { @@ -18370,9 +18395,9 @@ namespace yy { default: goto yy743; } yy743: -#line 9071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9096 "/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 18376 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18401 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy744: yych = *++context.cursor; switch (yych) { @@ -18443,9 +18468,9 @@ namespace yy { default: goto yy745; } yy745: -#line 9076 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9101 "/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 18449 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18474 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy746: yych = *++context.cursor; switch (yych) { @@ -18522,9 +18547,9 @@ namespace yy { default: goto yy748; } yy748: -#line 9077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9102 "/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 18528 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy749: yych = *++context.cursor; switch (yych) { @@ -18601,9 +18626,9 @@ namespace yy { default: goto yy751; } yy751: -#line 9094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9119 "/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 18607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18632 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy752: yych = *++context.cursor; switch (yych) { @@ -18680,9 +18705,9 @@ namespace yy { default: goto yy754; } yy754: -#line 9103 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9128 "/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 18686 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy755: yych = *++context.cursor; switch (yych) { @@ -18771,9 +18796,9 @@ namespace yy { default: goto yy759; } yy759: -#line 9118 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9143 "/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 18777 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18802 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy760: yych = *++context.cursor; switch (yych) { @@ -18856,9 +18881,9 @@ namespace yy { default: goto yy763; } yy763: -#line 9130 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9155 "/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 18862 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18887 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy764: yych = *++context.cursor; switch (yych) { @@ -18947,9 +18972,9 @@ namespace yy { default: goto yy768; } yy768: -#line 9091 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9116 "/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 18953 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18978 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy769: yych = *++context.cursor; switch (yych) { @@ -19050,9 +19075,9 @@ namespace yy { default: goto yy775; } yy775: -#line 9129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9154 "/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 19056 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy776: yych = *++context.cursor; switch (yych) { @@ -19123,9 +19148,9 @@ namespace yy { default: goto yy777; } yy777: -#line 9041 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9066 "/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 19129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy778: yych = *++context.cursor; switch (yych) { @@ -19202,9 +19227,9 @@ namespace yy { default: goto yy780; } yy780: -#line 9075 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9100 "/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 19208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19233 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy781: yych = *++context.cursor; switch (yych) { @@ -19281,9 +19306,9 @@ namespace yy { default: goto yy783; } yy783: -#line 9105 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9130 "/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 19287 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19312 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy784: yych = *++context.cursor; switch (yych) { @@ -19360,9 +19385,9 @@ namespace yy { default: goto yy786; } yy786: -#line 9122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9147 "/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 19366 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy787: yych = *++context.cursor; switch (yych) { @@ -19433,9 +19458,9 @@ namespace yy { default: goto yy788; } yy788: -#line 9126 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9151 "/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 19439 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19464 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy789: yych = *++context.cursor; switch (yych) { @@ -19506,9 +19531,9 @@ namespace yy { default: goto yy790; } yy790: -#line 9065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9090 "/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 19512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy791: yych = *++context.cursor; switch (yych) { @@ -19579,9 +19604,9 @@ namespace yy { default: goto yy792; } yy792: -#line 9096 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9121 "/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 19585 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy793: yych = *++context.cursor; switch (yych) { @@ -19652,11 +19677,11 @@ namespace yy { default: goto yy794; } yy794: -#line 9109 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9134 "/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 19658 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19683 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" } -#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9206 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" } } From a1c20b04261590b04105724d7d4f70ec1c3be354 Mon Sep 17 00:00:00 2001 From: Sam Date: Mon, 22 Apr 2019 05:37:54 +0100 Subject: [PATCH 03/31] Add more parsing tests --- src/compiler/asn_compiler.yacc | 20 +- src/compiler/autogen_copy/asn_compiler.hpp | 4240 ++++++++++---------- test/CMakeLists.txt | 30 + 3 files changed, 2143 insertions(+), 2147 deletions(-) diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 5f0202b6..990edd53 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -278,7 +278,6 @@ %type ComponentType; %type ComponentTypeList; %type ComponentTypeLists; -%type RootComponentTypeList; %type Value; %type SingleValue; %type ValueWithoutTypeIdentifier; @@ -1133,15 +1132,7 @@ SequenceType: | SEQUENCE "{" ComponentTypeLists "}" { $$ = SequenceType{$3}; } -ExtensionAndException: - ELIPSIS -| ELIPSIS ExceptionSpec; - ComponentTypeLists: - RootComponentTypeList - { $$ = $1; } - -RootComponentTypeList: ComponentTypeList { $$ = $1; } | ComponentTypeList "," ELIPSIS ExceptionSpec @@ -1548,14 +1539,9 @@ SingleTypeConstraint: Constraint; MultipleTypeConstraints: - FullSpecification -| PartialSpecification; - -FullSpecification: - "{" TypeConstraints "}"; - -PartialSpecification: - "{" ELIPSIS "," TypeConstraints "}"; +| "{" ELIPSIS "}" +| "{" ELIPSIS "," TypeConstraints "}" +| "{" TypeConstraints "}" TypeConstraints: NamedConstraint diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index d7a87d6f..7d5c19bc 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -698,7 +698,6 @@ namespace yy { char dummy8[sizeof(ComponentType)]; // ComponentTypeLists - // RootComponentTypeList // ComponentTypeList char dummy9[sizeof(ComponentTypeList)]; @@ -2077,8 +2076,8 @@ namespace yy { enum { yyeof_ = 0, - yylast_ = 3786, ///< Last index in yytable_. - yynnts_ = 227, ///< Number of nonterminal symbols. + yylast_ = 3771, ///< Last index in yytable_. + yynnts_ = 224, ///< Number of nonterminal symbols. yyfinal_ = 6, ///< Termination state number. yyterror_ = 1, yyerrcode_ = 256, @@ -2201,33 +2200,32 @@ namespace yy { value.copy< BuiltinType > (other.value); break; - case 327: // CharacterStringType + case 326: // CharacterStringType value.copy< CharacterStringType > (other.value); break; - case 294: // ChoiceType + case 293: // ChoiceType value.copy< ChoiceType > (other.value); break; - case 304: // Class + case 303: // Class value.copy< Class > (other.value); break; - case 290: // ComponentType + case 289: // ComponentType value.copy< ComponentType > (other.value); break; case 287: // ComponentTypeLists - case 288: // RootComponentTypeList - case 289: // ComponentTypeList + case 288: // ComponentTypeList value.copy< ComponentTypeList > (other.value); break; - case 325: // DateTimeType + case 324: // DateTimeType value.copy< DateTimeType > (other.value); break; - case 323: // DateType + case 322: // DateType value.copy< DateType > (other.value); break; @@ -2240,11 +2238,11 @@ namespace yy { value.copy< DefinedValue > (other.value); break; - case 326: // DurationType + case 325: // DurationType value.copy< DurationType > (other.value); break; - case 319: // EmbeddedPDVType + case 318: // EmbeddedPDVType value.copy< EmbeddedPDVType > (other.value); break; @@ -2258,11 +2256,11 @@ namespace yy { value.copy< EnumerationValue > (other.value); break; - case 320: // ExternalType + case 319: // ExternalType value.copy< ExternalType > (other.value); break; - case 313: // IRIType + case 312: // IRIType value.copy< IRIType > (other.value); break; @@ -2298,14 +2296,14 @@ namespace yy { value.copy< ObjectClassFieldType > (other.value); break; - case 308: // ObjIdComponents - case 309: // NameForm - case 310: // NumberForm - case 311: // NameAndNumberForm + case 307: // ObjIdComponents + case 308: // NameForm + case 309: // NumberForm + case 310: // NameAndNumberForm value.copy< ObjectIdComponentValue > (other.value); break; - case 305: // ObjectIdentifierType + case 304: // ObjectIdentifierType value.copy< ObjectIdentifierType > (other.value); break; @@ -2313,7 +2311,7 @@ namespace yy { value.copy< OctetStringType > (other.value); break; - case 299: // PrefixedType + case 298: // PrefixedType value.copy< PrefixedType > (other.value); break; @@ -2321,15 +2319,15 @@ namespace yy { value.copy< RealType > (other.value); break; - case 318: // RelativeIRIType + case 317: // RelativeIRIType value.copy< RelativeIRIType > (other.value); break; - case 312: // RelativeOIDType + case 311: // RelativeOIDType value.copy< RelativeOIDType > (other.value); break; - case 291: // SequenceOfType + case 290: // SequenceOfType value.copy< SequenceOfType > (other.value); break; @@ -2337,19 +2335,19 @@ namespace yy { value.copy< SequenceType > (other.value); break; - case 293: // SetOfType + case 292: // SetOfType value.copy< SetOfType > (other.value); break; - case 292: // SetType + case 291: // SetType value.copy< SetType > (other.value); break; - case 301: // Tag + case 300: // Tag value.copy< Tag > (other.value); break; - case 300: // TaggedType + case 299: // TaggedType value.copy< TaggedType > (other.value); break; @@ -2357,24 +2355,24 @@ namespace yy { value.copy< TaggingMode > (other.value); break; - case 324: // TimeOfDayType + case 323: // TimeOfDayType value.copy< TimeOfDayType > (other.value); break; - case 321: // TimeType + case 320: // TimeType value.copy< TimeType > (other.value); break; case 255: // ActualParameter case 261: // Type - case 330: // ConstrainedType - case 331: // TypeWithConstraint + case 329: // ConstrainedType + case 330: // TypeWithConstraint value.copy< Type > (other.value); break; case 264: // ValueWithoutTypeIdentifier case 265: // Value - case 348: // SingleValue + case 347: // SingleValue value.copy< Value > (other.value); break; @@ -2382,7 +2380,7 @@ namespace yy { value.copy< double > (other.value); break; - case 303: // ClassNumber + case 302: // ClassNumber value.copy< int > (other.value); break; @@ -2415,12 +2413,12 @@ namespace yy { case 243: // GlobalModuleReference case 246: // Symbol case 247: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 370: // typereference + case 371: // identifier + case 372: // valuereference + case 373: // modulereference + case 374: // objectclassreference + case 375: // word value.copy< std::string > (other.value); break; @@ -2442,14 +2440,14 @@ namespace yy { value.copy< std::vector > (other.value); break; - case 295: // AlternativeTypeLists - case 296: // RootAlternativeTypeList - case 297: // AlternativeTypeList + case 294: // AlternativeTypeLists + case 295: // RootAlternativeTypeList + case 296: // AlternativeTypeList value.copy< std::vector > (other.value); break; - case 306: // ObjectIdentifierValue - case 307: // ObjIdComponentsList + case 305: // ObjectIdentifierValue + case 306: // ObjIdComponentsList value.copy< std::vector > (other.value); break; @@ -2509,33 +2507,32 @@ namespace yy { value.copy< BuiltinType > (v); break; - case 327: // CharacterStringType + case 326: // CharacterStringType value.copy< CharacterStringType > (v); break; - case 294: // ChoiceType + case 293: // ChoiceType value.copy< ChoiceType > (v); break; - case 304: // Class + case 303: // Class value.copy< Class > (v); break; - case 290: // ComponentType + case 289: // ComponentType value.copy< ComponentType > (v); break; case 287: // ComponentTypeLists - case 288: // RootComponentTypeList - case 289: // ComponentTypeList + case 288: // ComponentTypeList value.copy< ComponentTypeList > (v); break; - case 325: // DateTimeType + case 324: // DateTimeType value.copy< DateTimeType > (v); break; - case 323: // DateType + case 322: // DateType value.copy< DateType > (v); break; @@ -2548,11 +2545,11 @@ namespace yy { value.copy< DefinedValue > (v); break; - case 326: // DurationType + case 325: // DurationType value.copy< DurationType > (v); break; - case 319: // EmbeddedPDVType + case 318: // EmbeddedPDVType value.copy< EmbeddedPDVType > (v); break; @@ -2566,11 +2563,11 @@ namespace yy { value.copy< EnumerationValue > (v); break; - case 320: // ExternalType + case 319: // ExternalType value.copy< ExternalType > (v); break; - case 313: // IRIType + case 312: // IRIType value.copy< IRIType > (v); break; @@ -2606,14 +2603,14 @@ namespace yy { value.copy< ObjectClassFieldType > (v); break; - case 308: // ObjIdComponents - case 309: // NameForm - case 310: // NumberForm - case 311: // NameAndNumberForm + case 307: // ObjIdComponents + case 308: // NameForm + case 309: // NumberForm + case 310: // NameAndNumberForm value.copy< ObjectIdComponentValue > (v); break; - case 305: // ObjectIdentifierType + case 304: // ObjectIdentifierType value.copy< ObjectIdentifierType > (v); break; @@ -2621,7 +2618,7 @@ namespace yy { value.copy< OctetStringType > (v); break; - case 299: // PrefixedType + case 298: // PrefixedType value.copy< PrefixedType > (v); break; @@ -2629,15 +2626,15 @@ namespace yy { value.copy< RealType > (v); break; - case 318: // RelativeIRIType + case 317: // RelativeIRIType value.copy< RelativeIRIType > (v); break; - case 312: // RelativeOIDType + case 311: // RelativeOIDType value.copy< RelativeOIDType > (v); break; - case 291: // SequenceOfType + case 290: // SequenceOfType value.copy< SequenceOfType > (v); break; @@ -2645,19 +2642,19 @@ namespace yy { value.copy< SequenceType > (v); break; - case 293: // SetOfType + case 292: // SetOfType value.copy< SetOfType > (v); break; - case 292: // SetType + case 291: // SetType value.copy< SetType > (v); break; - case 301: // Tag + case 300: // Tag value.copy< Tag > (v); break; - case 300: // TaggedType + case 299: // TaggedType value.copy< TaggedType > (v); break; @@ -2665,24 +2662,24 @@ namespace yy { value.copy< TaggingMode > (v); break; - case 324: // TimeOfDayType + case 323: // TimeOfDayType value.copy< TimeOfDayType > (v); break; - case 321: // TimeType + case 320: // TimeType value.copy< TimeType > (v); break; case 255: // ActualParameter case 261: // Type - case 330: // ConstrainedType - case 331: // TypeWithConstraint + case 329: // ConstrainedType + case 330: // TypeWithConstraint value.copy< Type > (v); break; case 264: // ValueWithoutTypeIdentifier case 265: // Value - case 348: // SingleValue + case 347: // SingleValue value.copy< Value > (v); break; @@ -2690,7 +2687,7 @@ namespace yy { value.copy< double > (v); break; - case 303: // ClassNumber + case 302: // ClassNumber value.copy< int > (v); break; @@ -2723,12 +2720,12 @@ namespace yy { case 243: // GlobalModuleReference case 246: // Symbol case 247: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 370: // typereference + case 371: // identifier + case 372: // valuereference + case 373: // modulereference + case 374: // objectclassreference + case 375: // word value.copy< std::string > (v); break; @@ -2750,14 +2747,14 @@ namespace yy { value.copy< std::vector > (v); break; - case 295: // AlternativeTypeLists - case 296: // RootAlternativeTypeList - case 297: // AlternativeTypeList + case 294: // AlternativeTypeLists + case 295: // RootAlternativeTypeList + case 296: // AlternativeTypeList value.copy< std::vector > (v); break; - case 306: // ObjectIdentifierValue - case 307: // ObjIdComponentsList + case 305: // ObjectIdentifierValue + case 306: // ObjIdComponentsList value.copy< std::vector > (v); break; @@ -3254,33 +3251,32 @@ namespace yy { value.template destroy< BuiltinType > (); break; - case 327: // CharacterStringType + case 326: // CharacterStringType value.template destroy< CharacterStringType > (); break; - case 294: // ChoiceType + case 293: // ChoiceType value.template destroy< ChoiceType > (); break; - case 304: // Class + case 303: // Class value.template destroy< Class > (); break; - case 290: // ComponentType + case 289: // ComponentType value.template destroy< ComponentType > (); break; case 287: // ComponentTypeLists - case 288: // RootComponentTypeList - case 289: // ComponentTypeList + case 288: // ComponentTypeList value.template destroy< ComponentTypeList > (); break; - case 325: // DateTimeType + case 324: // DateTimeType value.template destroy< DateTimeType > (); break; - case 323: // DateType + case 322: // DateType value.template destroy< DateType > (); break; @@ -3293,11 +3289,11 @@ namespace yy { value.template destroy< DefinedValue > (); break; - case 326: // DurationType + case 325: // DurationType value.template destroy< DurationType > (); break; - case 319: // EmbeddedPDVType + case 318: // EmbeddedPDVType value.template destroy< EmbeddedPDVType > (); break; @@ -3311,11 +3307,11 @@ namespace yy { value.template destroy< EnumerationValue > (); break; - case 320: // ExternalType + case 319: // ExternalType value.template destroy< ExternalType > (); break; - case 313: // IRIType + case 312: // IRIType value.template destroy< IRIType > (); break; @@ -3351,14 +3347,14 @@ namespace yy { value.template destroy< ObjectClassFieldType > (); break; - case 308: // ObjIdComponents - case 309: // NameForm - case 310: // NumberForm - case 311: // NameAndNumberForm + case 307: // ObjIdComponents + case 308: // NameForm + case 309: // NumberForm + case 310: // NameAndNumberForm value.template destroy< ObjectIdComponentValue > (); break; - case 305: // ObjectIdentifierType + case 304: // ObjectIdentifierType value.template destroy< ObjectIdentifierType > (); break; @@ -3366,7 +3362,7 @@ namespace yy { value.template destroy< OctetStringType > (); break; - case 299: // PrefixedType + case 298: // PrefixedType value.template destroy< PrefixedType > (); break; @@ -3374,15 +3370,15 @@ namespace yy { value.template destroy< RealType > (); break; - case 318: // RelativeIRIType + case 317: // RelativeIRIType value.template destroy< RelativeIRIType > (); break; - case 312: // RelativeOIDType + case 311: // RelativeOIDType value.template destroy< RelativeOIDType > (); break; - case 291: // SequenceOfType + case 290: // SequenceOfType value.template destroy< SequenceOfType > (); break; @@ -3390,19 +3386,19 @@ namespace yy { value.template destroy< SequenceType > (); break; - case 293: // SetOfType + case 292: // SetOfType value.template destroy< SetOfType > (); break; - case 292: // SetType + case 291: // SetType value.template destroy< SetType > (); break; - case 301: // Tag + case 300: // Tag value.template destroy< Tag > (); break; - case 300: // TaggedType + case 299: // TaggedType value.template destroy< TaggedType > (); break; @@ -3410,24 +3406,24 @@ namespace yy { value.template destroy< TaggingMode > (); break; - case 324: // TimeOfDayType + case 323: // TimeOfDayType value.template destroy< TimeOfDayType > (); break; - case 321: // TimeType + case 320: // TimeType value.template destroy< TimeType > (); break; case 255: // ActualParameter case 261: // Type - case 330: // ConstrainedType - case 331: // TypeWithConstraint + case 329: // ConstrainedType + case 330: // TypeWithConstraint value.template destroy< Type > (); break; case 264: // ValueWithoutTypeIdentifier case 265: // Value - case 348: // SingleValue + case 347: // SingleValue value.template destroy< Value > (); break; @@ -3435,7 +3431,7 @@ namespace yy { value.template destroy< double > (); break; - case 303: // ClassNumber + case 302: // ClassNumber value.template destroy< int > (); break; @@ -3468,12 +3464,12 @@ namespace yy { case 243: // GlobalModuleReference case 246: // Symbol case 247: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 370: // typereference + case 371: // identifier + case 372: // valuereference + case 373: // modulereference + case 374: // objectclassreference + case 375: // word value.template destroy< std::string > (); break; @@ -3495,14 +3491,14 @@ namespace yy { value.template destroy< std::vector > (); break; - case 295: // AlternativeTypeLists - case 296: // RootAlternativeTypeList - case 297: // AlternativeTypeList + case 294: // AlternativeTypeLists + case 295: // RootAlternativeTypeList + case 296: // AlternativeTypeList value.template destroy< std::vector > (); break; - case 306: // ObjectIdentifierValue - case 307: // ObjIdComponentsList + case 305: // ObjectIdentifierValue + case 306: // ObjIdComponentsList value.template destroy< std::vector > (); break; @@ -3568,33 +3564,32 @@ namespace yy { value.move< BuiltinType > (s.value); break; - case 327: // CharacterStringType + case 326: // CharacterStringType value.move< CharacterStringType > (s.value); break; - case 294: // ChoiceType + case 293: // ChoiceType value.move< ChoiceType > (s.value); break; - case 304: // Class + case 303: // Class value.move< Class > (s.value); break; - case 290: // ComponentType + case 289: // ComponentType value.move< ComponentType > (s.value); break; case 287: // ComponentTypeLists - case 288: // RootComponentTypeList - case 289: // ComponentTypeList + case 288: // ComponentTypeList value.move< ComponentTypeList > (s.value); break; - case 325: // DateTimeType + case 324: // DateTimeType value.move< DateTimeType > (s.value); break; - case 323: // DateType + case 322: // DateType value.move< DateType > (s.value); break; @@ -3607,11 +3602,11 @@ namespace yy { value.move< DefinedValue > (s.value); break; - case 326: // DurationType + case 325: // DurationType value.move< DurationType > (s.value); break; - case 319: // EmbeddedPDVType + case 318: // EmbeddedPDVType value.move< EmbeddedPDVType > (s.value); break; @@ -3625,11 +3620,11 @@ namespace yy { value.move< EnumerationValue > (s.value); break; - case 320: // ExternalType + case 319: // ExternalType value.move< ExternalType > (s.value); break; - case 313: // IRIType + case 312: // IRIType value.move< IRIType > (s.value); break; @@ -3665,14 +3660,14 @@ namespace yy { value.move< ObjectClassFieldType > (s.value); break; - case 308: // ObjIdComponents - case 309: // NameForm - case 310: // NumberForm - case 311: // NameAndNumberForm + case 307: // ObjIdComponents + case 308: // NameForm + case 309: // NumberForm + case 310: // NameAndNumberForm value.move< ObjectIdComponentValue > (s.value); break; - case 305: // ObjectIdentifierType + case 304: // ObjectIdentifierType value.move< ObjectIdentifierType > (s.value); break; @@ -3680,7 +3675,7 @@ namespace yy { value.move< OctetStringType > (s.value); break; - case 299: // PrefixedType + case 298: // PrefixedType value.move< PrefixedType > (s.value); break; @@ -3688,15 +3683,15 @@ namespace yy { value.move< RealType > (s.value); break; - case 318: // RelativeIRIType + case 317: // RelativeIRIType value.move< RelativeIRIType > (s.value); break; - case 312: // RelativeOIDType + case 311: // RelativeOIDType value.move< RelativeOIDType > (s.value); break; - case 291: // SequenceOfType + case 290: // SequenceOfType value.move< SequenceOfType > (s.value); break; @@ -3704,19 +3699,19 @@ namespace yy { value.move< SequenceType > (s.value); break; - case 293: // SetOfType + case 292: // SetOfType value.move< SetOfType > (s.value); break; - case 292: // SetType + case 291: // SetType value.move< SetType > (s.value); break; - case 301: // Tag + case 300: // Tag value.move< Tag > (s.value); break; - case 300: // TaggedType + case 299: // TaggedType value.move< TaggedType > (s.value); break; @@ -3724,24 +3719,24 @@ namespace yy { value.move< TaggingMode > (s.value); break; - case 324: // TimeOfDayType + case 323: // TimeOfDayType value.move< TimeOfDayType > (s.value); break; - case 321: // TimeType + case 320: // TimeType value.move< TimeType > (s.value); break; case 255: // ActualParameter case 261: // Type - case 330: // ConstrainedType - case 331: // TypeWithConstraint + case 329: // ConstrainedType + case 330: // TypeWithConstraint value.move< Type > (s.value); break; case 264: // ValueWithoutTypeIdentifier case 265: // Value - case 348: // SingleValue + case 347: // SingleValue value.move< Value > (s.value); break; @@ -3749,7 +3744,7 @@ namespace yy { value.move< double > (s.value); break; - case 303: // ClassNumber + case 302: // ClassNumber value.move< int > (s.value); break; @@ -3782,12 +3777,12 @@ namespace yy { case 243: // GlobalModuleReference case 246: // Symbol case 247: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 370: // typereference + case 371: // identifier + case 372: // valuereference + case 373: // modulereference + case 374: // objectclassreference + case 375: // word value.move< std::string > (s.value); break; @@ -3809,14 +3804,14 @@ namespace yy { value.move< std::vector > (s.value); break; - case 295: // AlternativeTypeLists - case 296: // RootAlternativeTypeList - case 297: // AlternativeTypeList + case 294: // AlternativeTypeLists + case 295: // RootAlternativeTypeList + case 296: // AlternativeTypeList value.move< std::vector > (s.value); break; - case 306: // ObjectIdentifierValue - case 307: // ObjIdComponentsList + case 305: // ObjectIdentifierValue + case 306: // ObjIdComponentsList value.move< std::vector > (s.value); break; @@ -4792,7 +4787,7 @@ namespace yy { } // yy -#line 4794 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 4789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 @@ -4800,7 +4795,7 @@ namespace yy { // User implementation prologue. -#line 4802 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 +#line 4797 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 // Unqualified %code blocks. #line 15 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:413 @@ -4819,7 +4814,7 @@ namespace yy { namespace yy { asn1_parser::symbol_type yylex(Context& c); } -#line 4821 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 +#line 4816 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 #ifndef YY_ @@ -4905,7 +4900,7 @@ namespace yy { namespace yy { -#line 4907 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 +#line 4902 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 /* Return YYSTR after stripping away unnecessary quotes and backslashes, so that it's suitable for yyerror. The heuristic is @@ -5044,33 +5039,32 @@ namespace yy { value.move< BuiltinType > (that.value); break; - case 327: // CharacterStringType + case 326: // CharacterStringType value.move< CharacterStringType > (that.value); break; - case 294: // ChoiceType + case 293: // ChoiceType value.move< ChoiceType > (that.value); break; - case 304: // Class + case 303: // Class value.move< Class > (that.value); break; - case 290: // ComponentType + case 289: // ComponentType value.move< ComponentType > (that.value); break; case 287: // ComponentTypeLists - case 288: // RootComponentTypeList - case 289: // ComponentTypeList + case 288: // ComponentTypeList value.move< ComponentTypeList > (that.value); break; - case 325: // DateTimeType + case 324: // DateTimeType value.move< DateTimeType > (that.value); break; - case 323: // DateType + case 322: // DateType value.move< DateType > (that.value); break; @@ -5083,11 +5077,11 @@ namespace yy { value.move< DefinedValue > (that.value); break; - case 326: // DurationType + case 325: // DurationType value.move< DurationType > (that.value); break; - case 319: // EmbeddedPDVType + case 318: // EmbeddedPDVType value.move< EmbeddedPDVType > (that.value); break; @@ -5101,11 +5095,11 @@ namespace yy { value.move< EnumerationValue > (that.value); break; - case 320: // ExternalType + case 319: // ExternalType value.move< ExternalType > (that.value); break; - case 313: // IRIType + case 312: // IRIType value.move< IRIType > (that.value); break; @@ -5141,14 +5135,14 @@ namespace yy { value.move< ObjectClassFieldType > (that.value); break; - case 308: // ObjIdComponents - case 309: // NameForm - case 310: // NumberForm - case 311: // NameAndNumberForm + case 307: // ObjIdComponents + case 308: // NameForm + case 309: // NumberForm + case 310: // NameAndNumberForm value.move< ObjectIdComponentValue > (that.value); break; - case 305: // ObjectIdentifierType + case 304: // ObjectIdentifierType value.move< ObjectIdentifierType > (that.value); break; @@ -5156,7 +5150,7 @@ namespace yy { value.move< OctetStringType > (that.value); break; - case 299: // PrefixedType + case 298: // PrefixedType value.move< PrefixedType > (that.value); break; @@ -5164,15 +5158,15 @@ namespace yy { value.move< RealType > (that.value); break; - case 318: // RelativeIRIType + case 317: // RelativeIRIType value.move< RelativeIRIType > (that.value); break; - case 312: // RelativeOIDType + case 311: // RelativeOIDType value.move< RelativeOIDType > (that.value); break; - case 291: // SequenceOfType + case 290: // SequenceOfType value.move< SequenceOfType > (that.value); break; @@ -5180,19 +5174,19 @@ namespace yy { value.move< SequenceType > (that.value); break; - case 293: // SetOfType + case 292: // SetOfType value.move< SetOfType > (that.value); break; - case 292: // SetType + case 291: // SetType value.move< SetType > (that.value); break; - case 301: // Tag + case 300: // Tag value.move< Tag > (that.value); break; - case 300: // TaggedType + case 299: // TaggedType value.move< TaggedType > (that.value); break; @@ -5200,24 +5194,24 @@ namespace yy { value.move< TaggingMode > (that.value); break; - case 324: // TimeOfDayType + case 323: // TimeOfDayType value.move< TimeOfDayType > (that.value); break; - case 321: // TimeType + case 320: // TimeType value.move< TimeType > (that.value); break; case 255: // ActualParameter case 261: // Type - case 330: // ConstrainedType - case 331: // TypeWithConstraint + case 329: // ConstrainedType + case 330: // TypeWithConstraint value.move< Type > (that.value); break; case 264: // ValueWithoutTypeIdentifier case 265: // Value - case 348: // SingleValue + case 347: // SingleValue value.move< Value > (that.value); break; @@ -5225,7 +5219,7 @@ namespace yy { value.move< double > (that.value); break; - case 303: // ClassNumber + case 302: // ClassNumber value.move< int > (that.value); break; @@ -5258,12 +5252,12 @@ namespace yy { case 243: // GlobalModuleReference case 246: // Symbol case 247: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 370: // typereference + case 371: // identifier + case 372: // valuereference + case 373: // modulereference + case 374: // objectclassreference + case 375: // word value.move< std::string > (that.value); break; @@ -5285,14 +5279,14 @@ namespace yy { value.move< std::vector > (that.value); break; - case 295: // AlternativeTypeLists - case 296: // RootAlternativeTypeList - case 297: // AlternativeTypeList + case 294: // AlternativeTypeLists + case 295: // RootAlternativeTypeList + case 296: // AlternativeTypeList value.move< std::vector > (that.value); break; - case 306: // ObjectIdentifierValue - case 307: // ObjIdComponentsList + case 305: // ObjectIdentifierValue + case 306: // ObjIdComponentsList value.move< std::vector > (that.value); break; @@ -5350,33 +5344,32 @@ namespace yy { value.copy< BuiltinType > (that.value); break; - case 327: // CharacterStringType + case 326: // CharacterStringType value.copy< CharacterStringType > (that.value); break; - case 294: // ChoiceType + case 293: // ChoiceType value.copy< ChoiceType > (that.value); break; - case 304: // Class + case 303: // Class value.copy< Class > (that.value); break; - case 290: // ComponentType + case 289: // ComponentType value.copy< ComponentType > (that.value); break; case 287: // ComponentTypeLists - case 288: // RootComponentTypeList - case 289: // ComponentTypeList + case 288: // ComponentTypeList value.copy< ComponentTypeList > (that.value); break; - case 325: // DateTimeType + case 324: // DateTimeType value.copy< DateTimeType > (that.value); break; - case 323: // DateType + case 322: // DateType value.copy< DateType > (that.value); break; @@ -5389,11 +5382,11 @@ namespace yy { value.copy< DefinedValue > (that.value); break; - case 326: // DurationType + case 325: // DurationType value.copy< DurationType > (that.value); break; - case 319: // EmbeddedPDVType + case 318: // EmbeddedPDVType value.copy< EmbeddedPDVType > (that.value); break; @@ -5407,11 +5400,11 @@ namespace yy { value.copy< EnumerationValue > (that.value); break; - case 320: // ExternalType + case 319: // ExternalType value.copy< ExternalType > (that.value); break; - case 313: // IRIType + case 312: // IRIType value.copy< IRIType > (that.value); break; @@ -5447,14 +5440,14 @@ namespace yy { value.copy< ObjectClassFieldType > (that.value); break; - case 308: // ObjIdComponents - case 309: // NameForm - case 310: // NumberForm - case 311: // NameAndNumberForm + case 307: // ObjIdComponents + case 308: // NameForm + case 309: // NumberForm + case 310: // NameAndNumberForm value.copy< ObjectIdComponentValue > (that.value); break; - case 305: // ObjectIdentifierType + case 304: // ObjectIdentifierType value.copy< ObjectIdentifierType > (that.value); break; @@ -5462,7 +5455,7 @@ namespace yy { value.copy< OctetStringType > (that.value); break; - case 299: // PrefixedType + case 298: // PrefixedType value.copy< PrefixedType > (that.value); break; @@ -5470,15 +5463,15 @@ namespace yy { value.copy< RealType > (that.value); break; - case 318: // RelativeIRIType + case 317: // RelativeIRIType value.copy< RelativeIRIType > (that.value); break; - case 312: // RelativeOIDType + case 311: // RelativeOIDType value.copy< RelativeOIDType > (that.value); break; - case 291: // SequenceOfType + case 290: // SequenceOfType value.copy< SequenceOfType > (that.value); break; @@ -5486,19 +5479,19 @@ namespace yy { value.copy< SequenceType > (that.value); break; - case 293: // SetOfType + case 292: // SetOfType value.copy< SetOfType > (that.value); break; - case 292: // SetType + case 291: // SetType value.copy< SetType > (that.value); break; - case 301: // Tag + case 300: // Tag value.copy< Tag > (that.value); break; - case 300: // TaggedType + case 299: // TaggedType value.copy< TaggedType > (that.value); break; @@ -5506,24 +5499,24 @@ namespace yy { value.copy< TaggingMode > (that.value); break; - case 324: // TimeOfDayType + case 323: // TimeOfDayType value.copy< TimeOfDayType > (that.value); break; - case 321: // TimeType + case 320: // TimeType value.copy< TimeType > (that.value); break; case 255: // ActualParameter case 261: // Type - case 330: // ConstrainedType - case 331: // TypeWithConstraint + case 329: // ConstrainedType + case 330: // TypeWithConstraint value.copy< Type > (that.value); break; case 264: // ValueWithoutTypeIdentifier case 265: // Value - case 348: // SingleValue + case 347: // SingleValue value.copy< Value > (that.value); break; @@ -5531,7 +5524,7 @@ namespace yy { value.copy< double > (that.value); break; - case 303: // ClassNumber + case 302: // ClassNumber value.copy< int > (that.value); break; @@ -5564,12 +5557,12 @@ namespace yy { case 243: // GlobalModuleReference case 246: // Symbol case 247: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 370: // typereference + case 371: // identifier + case 372: // valuereference + case 373: // modulereference + case 374: // objectclassreference + case 375: // word value.copy< std::string > (that.value); break; @@ -5591,14 +5584,14 @@ namespace yy { value.copy< std::vector > (that.value); break; - case 295: // AlternativeTypeLists - case 296: // RootAlternativeTypeList - case 297: // AlternativeTypeList + case 294: // AlternativeTypeLists + case 295: // RootAlternativeTypeList + case 296: // AlternativeTypeList value.copy< std::vector > (that.value); break; - case 306: // ObjectIdentifierValue - case 307: // ObjIdComponentsList + case 305: // ObjectIdentifierValue + case 306: // ObjIdComponentsList value.copy< std::vector > (that.value); break; @@ -5869,33 +5862,32 @@ namespace yy { yylhs.value.build< BuiltinType > (); break; - case 327: // CharacterStringType + case 326: // CharacterStringType yylhs.value.build< CharacterStringType > (); break; - case 294: // ChoiceType + case 293: // ChoiceType yylhs.value.build< ChoiceType > (); break; - case 304: // Class + case 303: // Class yylhs.value.build< Class > (); break; - case 290: // ComponentType + case 289: // ComponentType yylhs.value.build< ComponentType > (); break; case 287: // ComponentTypeLists - case 288: // RootComponentTypeList - case 289: // ComponentTypeList + case 288: // ComponentTypeList yylhs.value.build< ComponentTypeList > (); break; - case 325: // DateTimeType + case 324: // DateTimeType yylhs.value.build< DateTimeType > (); break; - case 323: // DateType + case 322: // DateType yylhs.value.build< DateType > (); break; @@ -5908,11 +5900,11 @@ namespace yy { yylhs.value.build< DefinedValue > (); break; - case 326: // DurationType + case 325: // DurationType yylhs.value.build< DurationType > (); break; - case 319: // EmbeddedPDVType + case 318: // EmbeddedPDVType yylhs.value.build< EmbeddedPDVType > (); break; @@ -5926,11 +5918,11 @@ namespace yy { yylhs.value.build< EnumerationValue > (); break; - case 320: // ExternalType + case 319: // ExternalType yylhs.value.build< ExternalType > (); break; - case 313: // IRIType + case 312: // IRIType yylhs.value.build< IRIType > (); break; @@ -5966,14 +5958,14 @@ namespace yy { yylhs.value.build< ObjectClassFieldType > (); break; - case 308: // ObjIdComponents - case 309: // NameForm - case 310: // NumberForm - case 311: // NameAndNumberForm + case 307: // ObjIdComponents + case 308: // NameForm + case 309: // NumberForm + case 310: // NameAndNumberForm yylhs.value.build< ObjectIdComponentValue > (); break; - case 305: // ObjectIdentifierType + case 304: // ObjectIdentifierType yylhs.value.build< ObjectIdentifierType > (); break; @@ -5981,7 +5973,7 @@ namespace yy { yylhs.value.build< OctetStringType > (); break; - case 299: // PrefixedType + case 298: // PrefixedType yylhs.value.build< PrefixedType > (); break; @@ -5989,15 +5981,15 @@ namespace yy { yylhs.value.build< RealType > (); break; - case 318: // RelativeIRIType + case 317: // RelativeIRIType yylhs.value.build< RelativeIRIType > (); break; - case 312: // RelativeOIDType + case 311: // RelativeOIDType yylhs.value.build< RelativeOIDType > (); break; - case 291: // SequenceOfType + case 290: // SequenceOfType yylhs.value.build< SequenceOfType > (); break; @@ -6005,19 +5997,19 @@ namespace yy { yylhs.value.build< SequenceType > (); break; - case 293: // SetOfType + case 292: // SetOfType yylhs.value.build< SetOfType > (); break; - case 292: // SetType + case 291: // SetType yylhs.value.build< SetType > (); break; - case 301: // Tag + case 300: // Tag yylhs.value.build< Tag > (); break; - case 300: // TaggedType + case 299: // TaggedType yylhs.value.build< TaggedType > (); break; @@ -6025,24 +6017,24 @@ namespace yy { yylhs.value.build< TaggingMode > (); break; - case 324: // TimeOfDayType + case 323: // TimeOfDayType yylhs.value.build< TimeOfDayType > (); break; - case 321: // TimeType + case 320: // TimeType yylhs.value.build< TimeType > (); break; case 255: // ActualParameter case 261: // Type - case 330: // ConstrainedType - case 331: // TypeWithConstraint + case 329: // ConstrainedType + case 330: // TypeWithConstraint yylhs.value.build< Type > (); break; case 264: // ValueWithoutTypeIdentifier case 265: // Value - case 348: // SingleValue + case 347: // SingleValue yylhs.value.build< Value > (); break; @@ -6050,7 +6042,7 @@ namespace yy { yylhs.value.build< double > (); break; - case 303: // ClassNumber + case 302: // ClassNumber yylhs.value.build< int > (); break; @@ -6083,12 +6075,12 @@ namespace yy { case 243: // GlobalModuleReference case 246: // Symbol case 247: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 370: // typereference + case 371: // identifier + case 372: // valuereference + case 373: // modulereference + case 374: // objectclassreference + case 375: // word yylhs.value.build< std::string > (); break; @@ -6110,14 +6102,14 @@ namespace yy { yylhs.value.build< std::vector > (); break; - case 295: // AlternativeTypeLists - case 296: // RootAlternativeTypeList - case 297: // AlternativeTypeList + case 294: // AlternativeTypeLists + case 295: // RootAlternativeTypeList + case 296: // AlternativeTypeList yylhs.value.build< std::vector > (); break; - case 306: // ObjectIdentifierValue - case 307: // ObjIdComponentsList + case 305: // ObjectIdentifierValue + case 306: // ObjIdComponentsList yylhs.value.build< std::vector > (); break; @@ -6151,1216 +6143,1210 @@ namespace yy { switch (yyn) { case 4: -#line 323 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 322 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< Module > ().module_reference = yystack_[9].value.as< std::string > (); yystack_[2].value.as< Module > ().tagging_default = yystack_[6].value.as< TaggingMode > (); context.asn1_tree.modules.push_back(yystack_[2].value.as< Module > ()); } -#line 6157 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6149 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 12: -#line 344 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 343 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[2].value.as< std::string > (), ObjectClassAssignment{}}; } -#line 6163 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6155 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 81: -#line 496 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 495 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[3].value.as< std::string > (), ObjectSetAssignment{}}; } -#line 6169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 90: -#line 523 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 522 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6175 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 91: -#line 525 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 524 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 92: -#line 527 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 526 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6187 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 93: -#line 529 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 528 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6193 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 94: -#line 531 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 530 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6199 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6191 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 95: -#line 536 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 535 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {}, yystack_[2].value.as< std::set > () }; } -#line 6205 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 96: -#line 540 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 539 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6211 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6203 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 97: -#line 544 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 543 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6217 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6209 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 98: -#line 548 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 547 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6223 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6215 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 99: -#line 552 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 551 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6229 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6221 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 100: -#line 560 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 559 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[1].value.as< std::set > (); } -#line 6235 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6227 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 101: -#line 564 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 563 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6241 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6233 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 102: -#line 566 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 565 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[2].value.as< std::set > (); yystack_[2].value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6247 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6239 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 103: -#line 570 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6253 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6245 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 104: -#line 572 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 571 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6259 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6251 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 113: -#line 625 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 624 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6265 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 125: -#line 649 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 648 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Simple constraint\n"; } -#line 6271 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6263 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 126: -#line 651 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 650 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Relation constraint\n"; } -#line 6277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6269 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 139: -#line 693 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 692 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6285 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 154: -#line 732 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 731 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6291 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6283 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 155: -#line 734 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 733 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::implicit; } -#line 6297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6289 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 156: -#line 736 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 735 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::automatic; } -#line 6303 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6295 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 157: -#line 738 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 737 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6309 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6301 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 160: -#line 746 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 745 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Module > () = Module{ {}, TaggingMode(), yystack_[2].value.as< std::vector > (), yystack_[1].value.as< std::vector > (), yystack_[0].value.as< std::vector > ()}; } -#line 6315 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 161: -#line 748 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 747 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { } -#line 6321 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6313 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 167: -#line 761 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 760 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } -#line 6327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6319 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 169: -#line 766 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 765 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6333 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 171: -#line 771 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 770 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6339 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6331 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 172: -#line 773 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 772 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6345 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6337 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 173: -#line 777 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 776 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Import > () = Import{ yystack_[0].value.as< std::string > (), yystack_[2].value.as< std::vector > () }; } -#line 6351 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6343 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 174: -#line 781 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 780 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6357 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6349 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 178: -#line 790 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 789 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6363 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 179: -#line 792 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 791 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6369 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6361 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 180: -#line 796 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 795 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6375 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 181: -#line 800 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 799 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6381 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6373 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 182: -#line 802 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 801 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[2].value.as< std::string > (); } -#line 6387 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6379 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 183: -#line 804 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 803 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6393 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6385 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 184: -#line 813 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 812 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } -#line 6399 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 185: -#line 815 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 814 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Assignment > ()); } -#line 6405 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6397 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 186: -#line 819 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 818 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6411 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6403 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 187: -#line 821 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 820 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6417 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6409 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 188: -#line 823 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 822 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6423 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6415 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 189: -#line 825 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 824 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6429 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 190: -#line 828 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 827 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6435 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 191: -#line 830 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 829 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6441 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 193: -#line 835 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 834 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{yystack_[0].value.as< std::string > (), {}}; } -#line 6447 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6439 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 194: -#line 837 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 836 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6453 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6445 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 195: -#line 843 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 842 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedValue > () = DefinedValue{yystack_[0].value.as< std::string > ()}; } -#line 6459 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6451 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 197: -#line 848 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 847 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{yystack_[1].value.as< std::string > (), yystack_[0].value.as< std::vector > ()}; } -#line 6465 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6457 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 199: -#line 855 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 854 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Type > ()); } -#line 6471 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6463 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 200: -#line 859 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 858 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6477 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 201: -#line 861 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 860 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not yet dealing with value paramaters\n"; } -#line 6483 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6475 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 205: -#line 902 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 901 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[2].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {} }; } -#line 6489 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6481 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 206: -#line 906 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 905 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ValueAssignment{yystack_[2].value.as< Type > (), yystack_[0].value.as< Value > ()}, {} }; } -#line 6495 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 207: -#line 910 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 909 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[2].value.as< Type > ()}, {} }; } -#line 6501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 208: -#line 914 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 913 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< BuiltinType > (); } -#line 6507 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6499 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 209: -#line 916 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 915 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6513 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6505 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 210: -#line 918 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 917 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< DefinedType > (); } -#line 6519 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6511 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 211: -#line 920 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 919 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - SelectionType\n"; } -#line 6525 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 212: -#line 922 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 921 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - TypeFromObject\n"; } -#line 6531 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6523 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 213: -#line 926 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 925 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = AnyType(); } -#line 6537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6529 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 214: -#line 927 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 926 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } -#line 6543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6535 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 215: -#line 928 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 927 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } -#line 6549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6541 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 216: -#line 929 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 928 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } -#line 6555 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6547 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 217: -#line 930 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 929 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } -#line 6561 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 218: -#line 931 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 930 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } -#line 6567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6559 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 219: -#line 932 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 931 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } -#line 6573 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6565 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 220: -#line 933 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 932 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } -#line 6579 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6571 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 221: -#line 934 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 933 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } -#line 6585 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6577 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 222: -#line 935 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 934 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } -#line 6591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6583 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 223: -#line 936 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 935 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } -#line 6597 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6589 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 224: -#line 937 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 936 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } -#line 6603 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6595 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 225: -#line 938 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 937 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } -#line 6609 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6601 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 226: -#line 939 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 938 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } -#line 6615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 227: -#line 940 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 939 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } -#line 6621 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6613 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 228: -#line 941 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 940 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } -#line 6627 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 229: -#line 942 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 941 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } -#line 6633 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6625 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 230: -#line 943 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 942 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } -#line 6639 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6631 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 231: -#line 944 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 943 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } -#line 6645 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6637 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 232: -#line 945 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 944 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } -#line 6651 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 233: -#line 946 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 945 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } -#line 6657 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6649 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 234: -#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 946 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } -#line 6663 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 235: -#line 948 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } -#line 6669 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6661 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 236: -#line 949 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 948 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } -#line 6675 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6667 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 237: -#line 950 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 949 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } -#line 6681 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6673 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 238: -#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 950 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } -#line 6687 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6679 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 239: -#line 952 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } -#line 6693 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 240: -#line 953 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 952 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } -#line 6699 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 241: -#line 954 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 953 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } -#line 6705 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6697 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 242: -#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 954 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } -#line 6711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6703 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 243: -#line 956 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = UTCTimeType(); } -#line 6717 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6709 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 244: -#line 960 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } -#line 6723 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6715 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 245: -#line 964 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } -#line 6729 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 246: -#line 966 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } -#line 6735 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6727 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 247: -#line 968 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } -#line 6741 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6733 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 248: -#line 970 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 969 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } -#line 6747 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6739 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 249: -#line 972 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: bstring\n"); } -#line 6753 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6745 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 250: -#line 974 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 973 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: hstring\n"); } -#line 6759 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6751 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 251: -#line 976 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } -#line 6765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6757 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 252: -#line 978 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } -#line 6771 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6763 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 253: -#line 980 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().defined_value = yystack_[0].value.as< DefinedValue > (); } -#line 6777 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6769 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 254: -#line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } -#line 6783 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6775 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 256: -#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } -#line 6789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6781 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 257: -#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } -#line 6795 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6787 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 258: -#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 6801 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6793 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 259: -#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 6807 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6799 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 260: -#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } -#line 6813 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6805 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 261: -#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } -#line 6819 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6811 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 262: -#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } -#line 6825 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6817 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 263: -#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 6831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6823 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 264: -#line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1002 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BY\n"); } -#line 6837 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6829 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 265: -#line 1005 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } -#line 6843 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6835 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 266: -#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1008 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } -#line 6849 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6841 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 267: -#line 1011 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1010 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } -#line 6855 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6847 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 273: -#line 1026 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1025 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 6861 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6853 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 274: -#line 1028 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1027 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 6867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6859 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 278: -#line 1043 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1042 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{{}}; } -#line 6873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6865 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 279: -#line 1045 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1044 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } -#line 6879 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6871 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 280: -#line 1049 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1048 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } -#line 6885 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6877 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 281: -#line 1051 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1050 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } -#line 6891 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6883 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 282: -#line 1055 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1054 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } -#line 6897 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6889 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 283: -#line 1057 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1056 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } -#line 6903 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6895 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 284: -#line 1061 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1060 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } -#line 6909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6901 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 285: -#line 1063 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1062 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } -#line 6915 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6907 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 286: -#line 1067 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1066 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } -#line 6921 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6913 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 287: -#line 1071 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1070 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[0].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = false; } -#line 6928 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6920 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 288: -#line 1074 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1073 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[3].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; } -#line 6935 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6927 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 289: -#line 1077 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1076 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[5].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; yylhs.value.as< EnumeratedType > ().enum_values.insert(yylhs.value.as< EnumeratedType > ().enum_values.end(), yystack_[0].value.as< EnumeratedType > ().enum_values.begin(), yystack_[0].value.as< EnumeratedType > ().enum_values.end()); } -#line 6943 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6935 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 291: -#line 1084 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1083 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6949 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6941 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 292: -#line 1086 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1085 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6947 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 293: -#line 1090 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1089 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } -#line 6961 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6953 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 294: -#line 1092 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1091 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } -#line 6968 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6960 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 304: -#line 1132 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1131 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType(); } -#line 6974 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6966 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 305: -#line 1134 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1133 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 6980 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6972 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 306: -#line 1142 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1137 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 6986 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6978 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 307: -#line 1146 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 6992 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1139 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } +#line 6984 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 308: -#line 1148 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } -#line 6998 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1141 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } +#line 6990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 309: -#line 1150 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7004 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1143 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } +#line 6996 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 310: -#line 1152 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } -#line 7010 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1145 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } +#line 7002 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 311: -#line 1154 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7016 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1147 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } +#line 7008 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 312: -#line 1156 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1149 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } +#line 7014 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 313: -#line 1158 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1151 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = {}; } +#line 7020 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 314: -#line 1160 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1153 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7034 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7026 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 315: -#line 1162 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7040 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 - break; - - case 316: -#line 1166 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1157 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } -#line 7046 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7032 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 317: -#line 1168 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 316: +#line 1159 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7052 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7038 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 318: -#line 1172 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 317: +#line 1163 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt}; } -#line 7058 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7044 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 319: -#line 1174 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 318: +#line 1165 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt}; } -#line 7064 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 320: -#line 1176 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 319: +#line 1167 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > ()}; } -#line 7070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7056 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 322: -#line 1189 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 321: +#line 1180 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7076 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7062 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 323: -#line 1191 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 322: +#line 1182 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7082 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 324: -#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 323: +#line 1186 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{}; } -#line 7088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7074 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 325: -#line 1197 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 324: +#line 1188 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7080 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 326: -#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 325: +#line 1192 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7100 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 327: -#line 1203 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 326: +#line 1194 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7092 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 328: -#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 327: +#line 1198 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } -#line 7112 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7098 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 329: -#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 328: +#line 1202 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7118 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7104 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 330: -#line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 329: +#line 1206 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 331: -#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 330: +#line 1208 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } -#line 7130 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 332: -#line 1219 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 331: +#line 1210 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 333: -#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 332: +#line 1214 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } -#line 7142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 334: -#line 1225 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 333: +#line 1216 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 336: -#line 1235 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 335: +#line 1226 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } -#line 7154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 337: -#line 1239 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 336: +#line 1230 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } -#line 7160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 338: -#line 1241 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 337: +#line 1232 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } -#line 7166 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7152 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 339: -#line 1243 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 338: +#line 1234 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } -#line 7172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 340: -#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 339: +#line 1238 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } -#line 7178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 343: -#line 1255 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 342: +#line 1246 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } -#line 7184 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 345: -#line 1260 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 344: +#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::universal; } -#line 7190 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 346: -#line 1262 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 345: +#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::application; } -#line 7196 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 347: -#line 1264 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 346: +#line 1255 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::private_; } -#line 7202 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 348: -#line 1266 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 347: +#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::context_specific; } -#line 7208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 349: +#line 1270 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { 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 7200 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 350: -#line 1279 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1272 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7214 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7206 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 351: -#line 1281 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { 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 7220 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1276 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } +#line 7212 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 352: -#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } -#line 7226 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1278 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } +#line 7218 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 353: -#line 1287 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } -#line 7232 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1282 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } +#line 7224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 354: -#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1284 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7238 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7230 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 355: -#line 1293 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1286 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7244 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7236 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 356: -#line 1295 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7250 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 - break; - - case 357: -#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1290 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7256 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7242 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 358: -#line 1303 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 357: +#line 1294 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } -#line 7262 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 360: -#line 1308 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 359: +#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } -#line 7268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7254 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 394: -#line 1404 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 393: +#line 1395 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } -#line 7274 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7260 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 395: -#line 1406 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 394: +#line 1397 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 7280 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7266 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 395: +#line 1401 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 7272 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 396: -#line 1410 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1403 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7286 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7278 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 397: -#line 1412 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1405 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } +#line 7284 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 398: -#line 1414 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1407 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7298 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7290 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 399: -#line 1416 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7304 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1409 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } +#line 7296 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 400: -#line 1418 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1411 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7310 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 401: -#line 1420 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7316 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1413 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } +#line 7308 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 402: -#line 1422 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1415 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 403: -#line 1424 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + case 485: +#line 1583 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } +#line 7320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 486: -#line 1597 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1587 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7334 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 487: -#line 1601 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1591 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7340 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7332 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 488: -#line 1605 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1595 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7346 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 489: -#line 1609 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1599 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 490: -#line 1613 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7358 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 - break; - -#line 7362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7348 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 default: break; } @@ -7615,1031 +7601,1027 @@ namespace yy { } - const short int asn1_parser::yypact_ninf_ = -653; + const short int asn1_parser::yypact_ninf_ = -705; - const short int asn1_parser::yytable_ninf_ = -490; + const short int asn1_parser::yytable_ninf_ = -489; const short int asn1_parser::yypact_[] = { - -74, -653, 114, -74, 67, 24, -653, -653, 105, 2, - -653, 39, -653, 196, 46, -653, -653, 69, 2, -653, - -653, -653, 91, 185, -653, -653, 216, 232, 239, 230, - -653, -653, 347, 252, 215, -653, -653, -653, 291, 244, - 246, -653, -653, -653, 252, 238, -653, 352, -653, 215, - -653, 279, -653, 7, -653, 326, 261, -653, -653, 265, - 278, -653, -653, 286, -653, 363, 236, 17, -653, -653, - 236, 301, -653, 292, 236, -653, -17, 297, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -653, 17, -653, - -653, -653, 2360, 2562, 297, -653, -653, -653, -653, -74, - 2962, 103, -653, -653, -653, -653, -653, 325, -653, -653, - 335, 317, -653, -653, -653, 351, 320, -653, -653, -653, - -653, -653, 361, 327, -653, -653, 384, -653, 353, -653, - -653, -653, -653, -653, 280, 290, -653, -653, -653, -653, - -653, -653, -653, -653, -653, -653, 2661, 439, -653, 319, - -653, -653, 339, -653, -653, 2760, 328, -653, -653, 334, - -653, -653, 340, 235, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - 2463, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, -653, -653, -653, 89, 341, 329, - 3061, 254, 142, 332, 344, -653, 4, -653, 171, -653, - -653, 319, -52, -653, 348, -653, 350, 366, 135, 338, - -653, 359, 381, -653, 362, 382, -653, 357, -653, -58, - 103, 357, -653, -653, 3061, 366, -3, 1175, 416, 421, - 3061, 138, 422, 423, 387, -653, -653, -653, 366, 371, - 45, 460, 391, 3061, 263, 460, 1671, -653, 392, -653, - 3061, 3061, 366, 63, 3061, 44, 273, 2132, 500, 94, - 27, -653, -653, -653, -653, 2962, 236, 54, 29, 375, - 357, -653, 401, -653, 390, 3061, 396, -653, 404, 394, - -653, 406, -653, 119, -653, 406, 366, -653, 2863, -653, - 446, 396, -653, 10, 409, -653, 398, -653, -653, -653, - -653, -653, -653, -653, 478, 95, 497, 3061, 498, -653, - 366, -653, -653, 2132, 530, -653, 379, 1299, 1423, 545, - 151, -653, 428, -653, -653, -653, -653, 366, -653, -653, - -653, 396, -653, -653, 417, -41, -32, -16, -8, -653, - 478, 499, -653, 144, -653, 3061, -653, 432, 426, -653, - -653, -653, -653, -653, -653, 3061, 3061, 366, -653, -653, - 435, 3061, 3061, 296, -653, -653, -653, -653, 31, -653, - -653, -653, -653, -653, -653, 425, -653, 366, 2132, 425, - -653, -653, -653, -653, 438, -653, 2132, -653, -653, 2132, - -653, 186, 270, -653, 424, 334, -653, -653, 436, -653, - 366, 441, 199, 431, 427, -653, -653, -653, -653, 447, - 437, 1423, -653, 366, 366, 425, -653, 366, -653, -653, - 2132, -653, 166, 444, -653, -653, 199, 440, 443, -653, - -653, 27, 448, 27, -653, -653, -653, 451, -653, -653, - -653, -653, 834, -653, -653, -653, -653, -653, 176, -653, - 453, -653, -50, 366, 1917, -653, -653, -24, 25, -653, - 357, 3061, 445, 688, -653, -653, 20, 1547, -653, 459, - -1, 2132, -653, 199, -653, 366, 461, 449, 462, 452, - 457, -653, 450, 463, 466, -653, -653, 1547, -653, -653, - 1547, -653, 366, 658, -653, 366, -653, 366, -653, -653, - 366, -653, 366, -653, 205, 2261, 103, 182, -653, -653, - -653, -653, -653, -653, -653, -653, 464, 460, 199, 199, - 199, 2035, 586, -653, -653, 2132, 2132, 2132, 2132, 2132, - 36, 470, 199, 460, 455, -653, 471, -653, -653, 40, - -653, 465, -653, -653, 438, -653, -653, 325, -653, -653, - -653, 335, 317, -653, -653, -653, -653, 2132, -653, -653, - -653, -653, -653, 351, -653, -653, -653, 320, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - 361, -653, 327, -653, -653, -653, -653, -653, 384, 353, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, 280, 290, -653, -653, -653, -653, -653, -653, -653, - -653, 468, -653, -653, -653, -653, -653, 166, 1796, -653, - 474, 1050, -653, -653, 366, 199, 469, -653, -653, 357, - 49, 475, -653, -653, -12, -653, -653, 396, -653, 472, - 473, -653, 366, 118, -653, -653, -653, -653, 396, -653, - -653, 3160, 557, 199, -653, -653, 132, -653, -653, -653, - 1423, -653, 476, -653, 180, 189, -653, -653, 477, -16, - -653, -653, 2043, -653, -653, -653, 3061, -653, 47, -653, - 52, 111, 57, 482, 296, -653, -653, -653, 199, 481, - 199, 199, 199, 199, 199, -653, -653, -653, 486, -653, - 467, -653, -653, 18, -653, 491, 492, 357, 2132, 483, - -653, -653, -653, 484, 485, 501, 487, 502, 311, 2132, - 488, 504, 493, 366, -653, 495, 496, 503, -653, -653, - 450, 1423, -653, 366, 29, -653, -653, 688, -653, -653, - -653, 52, -653, -653, -653, 519, -653, -653, -653, -653, - 508, -653, -653, 506, 199, 357, 159, 12, 2067, -653, - 199, 357, -653, 357, -653, -653, 34, 1423, 496, 357, - 357, -653, -653, -653, -653, -653, 511, -653, 357, 507, - -653, 510, 834, -653, 199, 513, -653, -653, -653, -653, - -653, -653, -653, 503, -653, 3638, -653, 357, 165, 199, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, 3638, -653, 3404, -653, -653, -653, 3287, - -653, 514, 3521, -653, -653, -653, -653, 12, -653, 515, - 12 + -56, -705, 221, -56, 190, 137, -705, -705, 264, 41, + -705, 200, -705, 266, 239, -705, -705, 194, 41, -705, + -705, -705, 196, 208, -705, -705, 252, 260, 282, 337, + -705, -705, 403, 117, 278, -705, -705, -705, 365, 329, + 325, -705, -705, -705, 117, 321, -705, 423, -705, 278, + -705, 370, -705, 96, -705, 390, 328, -705, -705, 331, + 327, -705, -705, 347, -705, 419, 298, 18, -705, -705, + 298, 353, -705, 340, 298, -705, -6, 364, -705, -705, + -705, -705, -705, -705, -705, -705, -705, -705, 18, -705, + -705, -705, 2345, 2547, 364, -705, -705, -705, -705, -56, + 2947, 9, -705, -705, -705, -705, -705, 387, -705, -705, + 388, 368, -705, -705, -705, 404, 372, -705, -705, -705, + -705, -705, 414, 375, -705, -705, 434, -705, 401, -705, + -705, -705, -705, -705, -2, 219, -705, -705, -705, -705, + -705, -705, -705, -705, -705, -705, 2646, 490, -705, 371, + -705, -705, 389, -705, -705, 2745, 374, -705, -705, 384, + -705, -705, 392, 238, -705, -705, -705, -705, -705, -705, + -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, + 2448, -705, -705, -705, -705, -705, -705, -705, -705, -705, + -705, -705, -705, -705, -705, -705, -705, 189, 383, 376, + 3046, 271, -40, 380, 402, -705, 157, -705, 244, -705, + -705, 371, -34, -705, 385, -705, 386, 395, 241, 393, + -705, 411, 407, -705, 413, 406, -705, 405, -705, -46, + 9, 405, -705, -705, 3046, 395, 3, 1160, 438, 451, + 3046, 27, 455, 463, 428, -705, -705, -705, 395, 415, + 12, 509, 430, 3046, 285, 509, 1656, -705, 436, -705, + 3046, 3046, 395, 228, 3046, 48, 288, 2117, 536, 118, + 55, -705, -705, -705, -705, 2947, 298, 57, 59, 416, + 405, -705, 439, -705, 424, 3046, 431, -705, 443, 432, + -705, 444, -705, 201, -705, 444, 395, -705, 2848, -705, + 484, 431, -705, -3, 448, 437, -705, -705, -705, -705, + -705, -705, -705, 519, -35, 538, 3046, 539, -705, 395, + -705, -705, 2117, 567, -705, 412, 1284, 1408, 576, 256, + -705, 459, -705, -705, -705, -705, 395, -705, -705, -705, + 431, -705, -705, 447, 90, 163, -4, 69, -705, 519, + 527, -705, -31, -705, 3046, -705, 464, 456, -705, -705, + -705, -705, -705, -705, 3046, 3046, 395, -705, -705, 465, + 3046, 3046, 400, -705, -705, -705, -705, 101, -705, -705, + -705, -705, -705, -705, 450, -705, 395, 2117, 450, -705, + -705, -705, -705, 467, -705, 2117, -705, -705, 2117, -705, + 286, 186, -705, 449, 384, -705, -705, 471, -705, 395, + 474, 296, 452, 462, -705, -705, -705, -705, 477, 470, + 1408, -705, 395, 395, 450, -705, 395, -705, -705, 2117, + -705, 213, 483, -705, -705, 296, 472, 473, -705, -705, + 55, 489, 55, -705, -705, -705, 491, -705, -705, -705, + -705, 835, -705, -705, -705, -705, -705, 247, -705, 493, + -705, 135, 395, 1902, -705, -705, 141, 45, -705, 405, + 3046, 479, 110, -705, -705, 19, 1532, -705, 496, 7, + 2117, -705, 296, -705, 395, 497, 485, 501, 494, 505, + -705, 498, 506, 513, -705, -705, 1532, -705, -705, 1532, + -705, 395, 60, -705, 395, -705, 395, -705, -705, 395, + -705, 395, -705, 181, 2246, 9, 250, -705, -705, -705, + -705, -705, -705, -705, -705, 508, 509, 296, 296, 296, + 2020, 635, -705, -705, 2117, 2117, 2117, 2117, 2117, 37, + 516, 296, 509, 495, -705, 518, -705, -705, 133, -705, + 512, -705, -705, 467, -705, -705, 387, -705, -705, -705, + 388, 368, -705, -705, -705, -705, 2117, -705, -705, -705, + -705, -705, 404, -705, -705, -705, 372, -705, -705, -705, + -705, -705, -705, -705, -705, -705, -705, -705, -705, 414, + -705, 375, -705, -705, -705, -705, -705, 434, 401, -705, + -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, + -2, 219, -705, -705, -705, -705, -705, -705, -705, -705, + 515, -705, -705, -705, -705, -705, 213, 1781, -705, 510, + 1035, -705, -705, 395, 296, 517, -705, -705, 405, 138, + 514, -705, -705, -44, -705, -705, 431, -705, 529, 531, + -705, 395, 168, -705, -705, -705, -705, 431, -705, -705, + 3145, 606, 296, -705, -705, 178, -705, 1408, -705, 532, + -705, 253, 268, -705, -705, 522, -4, -705, -705, 618, + -705, -705, -705, 3046, -705, 13, -705, 24, 151, 109, + 541, 400, -705, -705, -705, 296, 535, 296, 296, 296, + 296, 296, -705, -705, -705, 540, -705, 524, -705, -705, + 21, -705, 543, 546, 405, 2117, 528, -705, -705, -705, + 537, 542, 551, 525, 552, 343, 2117, 276, 555, 545, + 395, -705, 547, 548, 549, -705, -705, 498, 1408, -705, + 395, 59, -705, -705, 110, -705, -705, -705, 24, -705, + -705, -705, 579, -705, -705, -705, -705, 560, -705, -705, + 553, 296, 405, 173, 10, 2052, -705, 296, -705, 405, + -705, 405, -705, -705, 25, 1408, 548, 405, 405, -705, + -705, -705, -705, -705, 564, -705, 405, 554, -705, 556, + 835, -705, 296, 569, -705, -705, -705, -705, -705, -705, + -705, 549, -705, 3623, -705, 405, 182, 296, -705, -705, + -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, + -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, + -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, + -705, 3623, -705, 3389, -705, -705, -705, 3272, -705, 559, + 3506, -705, -705, -705, -705, 10, -705, 562, 10 }; const unsigned short int asn1_parser::yydefact_[] = { - 0, 489, 0, 2, 0, 142, 1, 3, 153, 0, - 139, 140, 141, 0, 157, 150, 487, 0, 145, 148, - 149, 147, 357, 0, 144, 152, 0, 0, 0, 159, - 143, 146, 0, 0, 366, 156, 154, 155, 0, 0, - 0, 367, 368, 364, 0, 0, 158, 0, 151, 366, - 363, 164, 365, 166, 138, 168, 0, 486, 488, 0, + 0, 488, 0, 2, 0, 142, 1, 3, 153, 0, + 139, 140, 141, 0, 157, 150, 486, 0, 145, 148, + 149, 147, 356, 0, 144, 152, 0, 0, 0, 159, + 143, 146, 0, 0, 365, 156, 154, 155, 0, 0, + 0, 366, 367, 363, 0, 0, 158, 0, 151, 365, + 362, 164, 364, 166, 138, 168, 0, 485, 487, 0, 165, 178, 180, 181, 183, 0, 170, 0, 163, 162, - 0, 0, 4, 0, 169, 171, 0, 0, 486, 188, + 0, 0, 4, 0, 169, 171, 0, 0, 485, 188, 190, 191, 90, 91, 92, 93, 94, 160, 184, 186, 187, 189, 0, 0, 0, 179, 182, 167, 172, 0, - 0, 0, 185, 63, 11, 213, 303, 0, 380, 275, - 0, 0, 374, 376, 377, 0, 0, 371, 224, 381, - 382, 383, 0, 278, 384, 385, 0, 230, 0, 362, - 386, 295, 361, 369, 0, 0, 388, 387, 372, 375, - 10, 389, 243, 390, 391, 392, 0, 342, 486, 0, + 0, 0, 185, 63, 11, 213, 303, 0, 379, 275, + 0, 0, 373, 375, 376, 0, 0, 370, 224, 380, + 381, 382, 0, 278, 383, 384, 0, 230, 0, 361, + 385, 295, 360, 368, 0, 0, 387, 386, 371, 374, + 10, 388, 243, 389, 390, 391, 0, 341, 485, 0, 109, 62, 0, 78, 229, 0, 0, 212, 225, 0, 210, 194, 192, 0, 208, 215, 226, 222, 233, 214, - 232, 228, 236, 237, 238, 239, 217, 211, 240, 336, + 232, 228, 236, 237, 238, 239, 217, 211, 240, 335, 0, 231, 235, 227, 234, 221, 223, 241, 218, 242, - 219, 220, 216, 378, 379, 209, 395, 79, 0, 0, - 0, 0, 193, 0, 0, 173, 177, 486, 487, 108, + 219, 220, 216, 377, 378, 209, 394, 79, 0, 0, + 0, 0, 193, 0, 0, 173, 177, 485, 486, 108, 6, 8, 0, 101, 0, 105, 104, 107, 181, 0, - 7, 490, 0, 8, 0, 296, 393, 0, 370, 0, - 0, 0, 349, 302, 0, 0, 0, 0, 0, 0, + 7, 489, 0, 8, 0, 296, 392, 0, 369, 0, + 0, 0, 348, 302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 12, 14, 205, 0, - 348, 0, 0, 0, 0, 0, 0, 197, 0, 394, - 0, 0, 337, 0, 0, 0, 0, 0, 0, 0, + 347, 0, 0, 0, 0, 0, 0, 197, 0, 393, + 0, 0, 336, 0, 0, 0, 0, 0, 0, 0, 0, 174, 175, 176, 100, 0, 0, 0, 0, 0, - 0, 333, 0, 329, 330, 0, 482, 294, 0, 287, - 291, 293, 111, 0, 280, 0, 322, 323, 0, 459, - 0, 482, 304, 318, 0, 306, 307, 316, 284, 447, - 441, 442, 443, 373, 0, 303, 0, 0, 0, 277, - 0, 449, 456, 0, 0, 276, 0, 0, 0, 0, - 444, 445, 125, 406, 116, 117, 118, 460, 438, 446, - 440, 482, 405, 407, 408, 411, 0, 413, 0, 416, - 0, 419, 427, 429, 430, 0, 431, 0, 451, 433, - 434, 432, 435, 436, 437, 0, 0, 326, 327, 324, - 0, 0, 0, 0, 341, 346, 347, 345, 0, 23, - 24, 25, 26, 27, 28, 88, 81, 95, 0, 110, - 257, 249, 250, 251, 247, 264, 0, 262, 265, 0, - 255, 486, 488, 202, 229, 0, 253, 196, 0, 114, - 200, 266, 0, 263, 261, 245, 256, 246, 248, 195, - 0, 0, 207, 339, 338, 89, 203, 335, 64, 80, - 0, 247, 267, 488, 258, 266, 206, 0, 0, 98, - 358, 359, 0, 352, 354, 355, 356, 357, 102, 103, - 490, 9, 0, 65, 99, 66, 67, 68, 0, 298, - 0, 328, 0, 244, 0, 290, 286, 0, 0, 279, - 0, 0, 314, 0, 319, 305, 0, 0, 412, 0, - 135, 0, 461, 479, 480, 0, 0, 85, 0, 83, - 0, 285, 0, 0, 0, 424, 423, 0, 426, 425, - 0, 420, 448, 0, 452, 398, 402, 399, 403, 325, - 396, 400, 397, 401, 33, 0, 0, 0, 16, 18, - 19, 20, 21, 22, 343, 344, 0, 0, 97, 252, - 273, 0, 0, 198, 199, 0, 0, 0, 0, 0, - 0, 0, 96, 0, 0, 359, 0, 350, 353, 0, - 492, 493, 494, 495, 247, 497, 498, 499, 380, 275, - 264, 503, 504, 505, 506, 507, 508, 509, 374, 376, - 512, 513, 377, 515, 516, 517, 518, 519, 520, 521, - 522, 523, 371, 277, 526, 527, 528, 529, 530, 531, - 532, 533, 278, 535, 536, 537, 538, 539, 540, 541, - 542, 362, 262, 545, 546, 547, 548, 549, 295, 361, - 369, 553, 554, 555, 556, 557, 558, 559, 372, 375, - 276, 563, 564, 565, 566, 265, 61, 267, 0, 74, - 0, 0, 72, 75, 76, 77, 0, 60, 297, 0, - 0, 331, 334, 484, 0, 483, 481, 482, 292, 0, - 0, 281, 321, 0, 439, 444, 445, 320, 482, 317, - 422, 124, 0, 136, 464, 462, 0, 463, 465, 466, - 0, 82, 0, 428, 0, 0, 127, 404, 409, 414, - 417, 458, 0, 457, 450, 453, 0, 31, 44, 30, - 39, 35, 48, 50, 0, 340, 29, 260, 274, 0, - 268, 259, 270, 269, 271, 204, 272, 351, 0, 70, - 0, 71, 73, 0, 299, 0, 0, 0, 0, 288, - 283, 282, 315, 312, 308, 108, 0, 0, 107, 0, - 0, 0, 469, 474, 86, 84, 132, 129, 133, 126, - 0, 0, 454, 32, 0, 42, 41, 0, 37, 40, - 34, 39, 47, 46, 45, 0, 15, 17, 254, 360, - 0, 300, 301, 332, 485, 0, 0, 0, 0, 119, - 137, 0, 467, 0, 473, 471, 478, 0, 132, 0, - 0, 128, 410, 43, 38, 36, 0, 69, 0, 289, - 313, 309, 0, 121, 120, 0, 470, 476, 477, 475, - 472, 87, 131, 130, 134, 59, 49, 0, 0, 77, - 468, 493, 496, 499, 500, 501, 502, 503, 504, 509, - 510, 511, 514, 515, 519, 524, 525, 532, 534, 540, - 541, 543, 544, 550, 551, 552, 553, 554, 560, 561, - 562, 563, 567, 59, 491, 59, 51, 54, 53, 0, - 57, 310, 59, 5, 52, 56, 58, 0, 55, 311, - 0 + 0, 332, 0, 328, 329, 0, 481, 294, 0, 287, + 291, 293, 111, 0, 280, 0, 321, 322, 0, 458, + 0, 481, 304, 317, 0, 306, 315, 284, 446, 440, + 441, 442, 372, 0, 303, 0, 0, 0, 277, 0, + 448, 455, 0, 0, 276, 0, 0, 0, 0, 443, + 444, 125, 405, 116, 117, 118, 459, 437, 445, 439, + 481, 404, 406, 407, 410, 0, 412, 0, 415, 0, + 418, 426, 428, 429, 0, 430, 0, 450, 432, 433, + 431, 434, 435, 436, 0, 0, 325, 326, 323, 0, + 0, 0, 0, 340, 345, 346, 344, 0, 23, 24, + 25, 26, 27, 28, 88, 81, 95, 0, 110, 257, + 249, 250, 251, 247, 264, 0, 262, 265, 0, 255, + 485, 487, 202, 229, 0, 253, 196, 0, 114, 200, + 266, 0, 263, 261, 245, 256, 246, 248, 195, 0, + 0, 207, 338, 337, 89, 203, 334, 64, 80, 0, + 247, 267, 487, 258, 266, 206, 0, 0, 98, 357, + 358, 0, 351, 353, 354, 355, 356, 102, 103, 489, + 9, 0, 65, 99, 66, 67, 68, 0, 298, 0, + 327, 0, 244, 0, 290, 286, 0, 0, 279, 0, + 0, 313, 0, 318, 305, 0, 0, 411, 0, 135, + 0, 460, 478, 479, 0, 464, 85, 0, 83, 0, + 285, 0, 0, 0, 423, 422, 0, 425, 424, 0, + 419, 447, 0, 451, 397, 401, 398, 402, 324, 395, + 399, 396, 400, 33, 0, 0, 0, 16, 18, 19, + 20, 21, 22, 342, 343, 0, 0, 97, 252, 273, + 0, 0, 198, 199, 0, 0, 0, 0, 0, 0, + 0, 96, 0, 0, 358, 0, 349, 352, 0, 491, + 492, 493, 494, 247, 496, 497, 498, 379, 275, 264, + 502, 503, 504, 505, 506, 507, 508, 373, 375, 511, + 512, 376, 514, 515, 516, 517, 518, 519, 520, 521, + 522, 370, 277, 525, 526, 527, 528, 529, 530, 531, + 532, 278, 534, 535, 536, 537, 538, 539, 540, 541, + 361, 262, 544, 545, 546, 547, 548, 295, 360, 368, + 552, 553, 554, 555, 556, 557, 558, 371, 374, 276, + 562, 563, 564, 565, 265, 61, 267, 0, 74, 0, + 0, 72, 75, 76, 77, 0, 60, 297, 0, 0, + 330, 333, 483, 0, 482, 480, 481, 292, 0, 0, + 281, 320, 0, 438, 443, 444, 319, 481, 316, 421, + 124, 0, 136, 463, 461, 0, 462, 0, 82, 0, + 427, 0, 0, 127, 403, 408, 413, 416, 457, 0, + 456, 449, 452, 0, 31, 44, 30, 39, 35, 48, + 50, 0, 339, 29, 260, 274, 0, 268, 259, 270, + 269, 271, 204, 272, 350, 0, 70, 0, 71, 73, + 0, 299, 0, 0, 0, 0, 288, 283, 282, 314, + 311, 307, 108, 0, 0, 107, 0, 0, 0, 468, + 473, 86, 84, 132, 129, 133, 126, 0, 0, 453, + 32, 0, 42, 41, 0, 37, 40, 34, 39, 47, + 46, 45, 0, 15, 17, 254, 359, 0, 300, 301, + 331, 484, 0, 0, 0, 0, 119, 137, 465, 0, + 467, 0, 472, 470, 477, 0, 132, 0, 0, 128, + 409, 43, 38, 36, 0, 69, 0, 289, 312, 308, + 0, 121, 120, 0, 469, 475, 476, 474, 471, 87, + 131, 130, 134, 59, 49, 0, 0, 77, 466, 492, + 495, 498, 499, 500, 501, 502, 503, 508, 509, 510, + 513, 514, 518, 523, 524, 531, 533, 539, 540, 542, + 543, 549, 550, 551, 552, 553, 559, 560, 561, 562, + 566, 59, 490, 59, 51, 54, 53, 0, 57, 309, + 59, 5, 52, 56, 58, 0, 55, 310, 0 }; const short int asn1_parser::yypgoto_[] = { - -653, 620, -653, -653, -88, -653, -97, -653, 369, -653, - -653, -59, -433, 157, -653, -653, -653, -653, -104, -653, - -653, -653, -653, -653, -653, -194, -512, -653, -653, -653, - -425, -264, -653, -652, -653, -653, -653, -653, -653, 21, - 26, -653, -653, -653, 403, -653, -189, -653, -653, -653, - -653, -653, -653, 337, -653, 383, -653, -5, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -653, -81, -118, - -108, -653, -653, -653, -653, -653, -653, 643, -653, 640, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - 600, -653, -653, 622, 606, -75, 590, -653, -653, -159, - -653, -653, 274, -653, -653, -653, -653, -653, -653, -70, - -653, -222, 429, 285, -653, -653, -653, -653, -653, -29, - -653, -653, -221, -132, -653, -653, -85, -434, -653, -653, - -653, 48, -653, -653, -653, 442, -653, -636, -450, -653, - -653, -653, -653, -653, -653, -31, -653, -653, -653, -653, - -653, -653, -653, -653, -653, -348, -653, 139, 140, -653, - -653, -653, 677, -653, 641, 651, -653, -653, -653, -653, - 0, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -133, -653, -653, -283, -295, -653, -653, 200, -653, 201, - -653, 354, -653, -653, 223, -653, -437, -653, -653, -653, - -653, -653, -653, 23, -119, -653, -653, -653, -653, -653, - -653, -653, -538, -653, -653, -653, -653, -653, -653, -258, - -653, -19, -9, -46, 8, -27, -653 + -705, 685, -705, -705, -94, -705, -95, -705, 422, -705, + -705, 11, -438, 183, -705, -705, -705, -705, -49, -705, + -705, -705, -705, -705, -705, -141, -704, -705, -705, -705, + -449, -268, -705, -588, -705, -705, -705, -705, -705, 73, + 77, -705, -705, -705, 454, -705, 67, -705, -705, -705, + -705, -705, -705, 322, -705, 433, -705, 47, -705, -705, + -705, -705, -705, -705, -705, -705, -705, -705, -28, -66, + -65, -705, -705, -705, -705, -705, -705, 693, -705, 682, + -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, + 641, -705, -705, 663, 647, -39, 630, -705, -705, -175, + -705, -705, 315, -705, -705, -705, -705, -705, -705, -69, + -705, -215, 466, 272, -705, -705, -705, -705, -705, -148, + -705, -705, -201, -163, -705, -705, -42, -445, -705, -705, + -705, 86, -705, -705, -705, 487, -620, -447, -705, -705, + -705, -705, -705, -705, 15, -705, -705, -705, -705, -705, + -705, -705, -705, -705, 1, -705, 301, 177, -705, -705, + -705, 715, -705, 681, 687, -705, -705, -705, -705, -127, + -705, -705, -705, -705, -705, -705, -705, -705, -705, -131, + -705, -705, -292, -299, -705, -705, 236, -705, 234, -705, + 391, -705, -705, 259, -705, -446, -705, -705, -705, -705, + -705, -705, 58, -118, -705, -705, -705, -705, -705, -327, + -705, -705, -705, -705, -705, -705, -258, -705, -52, -9, + -33, 8, -38, -705 }; const short int asn1_parser::yydefgoto_[] = { - -1, 2, 3, 806, 209, 210, 149, 79, 246, 247, - 517, 518, 384, 425, 519, 689, 751, 520, 749, 521, - 522, 746, 523, 754, 756, 845, 846, 847, 848, 849, - 850, 150, 151, 454, 455, 456, 630, 457, 631, 632, - 633, 152, 153, 80, 332, 488, 154, 81, 82, 83, + -1, 2, 3, 804, 209, 210, 149, 79, 246, 247, + 516, 517, 383, 424, 518, 686, 748, 519, 746, 520, + 521, 743, 522, 751, 753, 843, 844, 845, 846, 847, + 848, 150, 151, 453, 454, 455, 629, 456, 630, 631, + 632, 152, 153, 80, 331, 487, 154, 81, 82, 83, 84, 85, 86, 101, 212, 213, 214, 215, 156, 157, - 158, 159, 405, 333, 334, 727, 335, 675, 676, 779, - 737, 336, 65, 4, 10, 11, 12, 17, 18, 19, + 158, 159, 404, 332, 333, 724, 334, 672, 673, 777, + 734, 335, 65, 4, 10, 11, 12, 17, 18, 19, 20, 14, 29, 39, 54, 55, 59, 67, 73, 74, - 75, 205, 271, 76, 61, 62, 87, 88, 160, 406, - 161, 407, 257, 408, 162, 409, 89, 90, 91, 337, - 164, 303, 435, 635, 413, 414, 422, 531, 165, 415, - 166, 293, 287, 416, 167, 288, 289, 290, 168, 169, - 458, 459, 170, 171, 172, 304, 305, 306, 307, 173, - 174, 175, 176, 282, 283, 284, 177, 178, 179, 180, - 250, 526, 378, 181, 272, 442, 443, 444, 445, 446, - 182, 183, 417, 34, 45, 43, 184, 185, 186, 187, - 418, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 259, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 350, 478, 497, 500, 351, 352, 353, 354, 355, 356, - 357, 684, 358, 685, 359, 360, 361, 362, 665, 667, - 668, 669, 731, 732, 775, 776, 800, 363, 364, 465, - 646, 202, 198, 419, 203, 220, 637 + 75, 205, 271, 76, 61, 62, 87, 88, 160, 405, + 161, 406, 257, 407, 162, 408, 89, 90, 91, 336, + 164, 303, 434, 634, 412, 413, 421, 530, 165, 414, + 166, 293, 287, 415, 167, 288, 289, 290, 168, 169, + 457, 458, 170, 171, 172, 304, 305, 306, 173, 174, + 175, 176, 282, 283, 284, 177, 178, 179, 180, 250, + 525, 377, 181, 272, 441, 442, 443, 444, 445, 182, + 183, 416, 34, 45, 43, 184, 185, 186, 187, 417, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 259, + 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, + 477, 496, 499, 350, 351, 352, 353, 354, 355, 356, + 681, 357, 682, 358, 359, 360, 361, 664, 666, 728, + 729, 773, 774, 798, 362, 363, 464, 645, 202, 198, + 418, 203, 220, 636 }; const short int asn1_parser::yytable_[] = { - 22, 238, 242, 211, 223, 281, 15, 64, 5, 22, - 294, 5, 297, 222, 453, 239, 243, 723, 368, 628, - 64, 93, 163, 201, 64, 216, 659, 629, 64, 308, - 217, 440, 489, 648, 63, 524, 657, 56, 77, 428, - 94, 300, 93, 472, 440, 490, 99, 63, 92, 211, - 103, 63, 662, 715, 64, 63, 300, 428, 245, 473, - -418, 94, 797, 286, 300, 428, 683, 404, 498, 92, - -415, 641, 274, 197, 1, 428, 248, 375, 434, 495, - 26, 218, 690, 493, 275, 254, 379, 380, 381, 382, - 383, 16, 783, 546, 696, 548, 744, 647, 474, 16, - 199, 747, 299, -415, 27, 339, 752, 206, 219, 224, - 262, 441, 496, 237, 6, 28, 793, 8, 301, 70, - 13, 302, 798, 104, 237, 16, 799, 270, 718, -418, - 266, 791, 104, 223, 434, 745, 244, 499, 541, 376, - 748, 658, 292, 506, 508, 753, 16, 9, 21, 511, - 513, 16, 452, 58, 219, 57, 58, 21, 377, 211, - 273, 16, 300, 329, 296, 78, 58, 58, 403, 16, - 367, 23, 223, 1, 58, 1, 208, 1, 211, 1, - 58, 245, 300, 387, 450, 58, 410, 482, 1, 58, - 423, 424, 57, 30, 427, 339, 339, 1, 58, 434, - 216, 449, 450, 300, 140, 217, 629, 434, 338, 300, - 434, 57, -113, 140, -193, 463, 32, -439, 285, 525, - 291, 859, 295, 750, -439, 298, 263, 285, 463, 64, - 64, 298, 285, 795, 104, 796, 237, 340, 224, 722, - 642, 434, 221, 469, 426, 683, 429, 480, 437, 651, - 451, 221, 451, 730, 686, 470, 218, 63, 71, 301, - -193, 447, 369, 404, 420, -113, -455, 16, 41, 42, - 25, 460, 263, -455, -486, 438, -486, 224, 438, 263, - 790, 16, 545, 219, 545, 502, 851, 16, -486, 339, - 38, -486, 434, 687, -488, 505, 507, -488, 338, 338, - 638, 510, 512, -486, 437, 643, 693, -488, 16, 649, - 784, -488, 639, 739, 16, 140, 659, 736, 694, 514, - 515, 35, -267, 516, 33, 740, -267, 340, 340, 16, - -267, 438, 645, 854, -161, 535, 650, 36, 53, 536, - 854, 339, 434, 537, 37, 339, 434, 434, 434, 434, - 434, 15, 664, 221, 44, 258, 298, 298, 659, 628, - 237, 46, 298, 298, 47, 339, 234, 629, 339, 437, - 50, 339, 48, 648, 267, 734, 240, 437, 434, 237, - 437, 235, 634, 388, 57, 58, 438, 51, 237, 719, - 545, 235, 338, 430, 644, 532, 438, 66, 237, -487, - 724, 652, 68, 236, 438, 237, 69, 438, 385, 71, - 659, 437, 389, 241, 70, 237, 855, 223, 72, 223, - 100, 340, 485, 486, 856, 96, 688, 225, 692, 155, - 200, 204, 447, 97, 447, -122, 237, 226, 438, 404, - 227, 228, 404, 229, 338, 691, 782, 230, 338, 438, - 231, 438, 232, 285, 249, 233, 251, 256, 291, 252, - 636, 295, 437, -112, 269, 255, 265, 285, 338, 268, - 264, 338, 636, 340, 338, 277, 438, 340, 238, 242, - 453, 716, 801, 379, 380, 381, 382, 383, 276, 438, - -106, 237, 239, 243, 705, 281, -489, 340, 705, 279, - 340, 278, 365, 340, 453, 280, 16, 366, 371, 372, - 373, 374, 437, 451, 327, 421, 437, 437, 437, 437, - 437, 428, 224, 450, 224, 461, 462, 464, 466, 434, - 467, 468, 471, 475, 476, 477, 479, 481, 339, 438, - 434, 412, 484, 438, 438, 438, 438, 438, 437, 491, - 339, 492, 436, 494, 503, 504, -421, 438, 634, 509, - 534, 634, 527, -303, 211, -201, 642, 538, -258, 532, - -115, 539, 547, 725, 540, 438, 549, 543, 640, 434, - 544, 653, 661, 673, 666, 670, 671, 678, 672, 677, - 699, 728, 695, 674, 706, 707, 729, 735, 720, 721, - 774, 755, -11, 404, 58, -10, 713, 758, 483, 339, - 710, 717, 759, 741, 760, 339, 743, 761, 762, 765, - 766, 767, 786, 7, 771, -123, 769, 768, 772, 773, - 460, 777, 787, 778, 805, 757, 636, 810, 439, 636, - 780, 338, 788, 807, 285, 339, 808, 785, 438, 852, - 857, 860, 712, 338, 709, 386, 726, 733, 448, 781, - 802, 31, 308, 309, 310, 738, 311, 705, 312, 219, - 340, 803, 40, 528, 98, 60, 95, 313, 102, 533, - 789, 529, 340, 370, 530, 411, 763, 714, 24, 708, - 52, 654, 308, 309, 310, 49, 311, 679, 312, 437, - 660, 680, 0, 0, 501, 742, 0, 313, 285, 0, - 437, 0, 338, 0, 0, 542, 0, 0, 338, 0, - 319, 654, 634, 0, 0, 0, 438, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 681, 438, 0, 0, - 0, 340, 0, 0, 0, 0, 0, 340, 338, 437, - 319, 0, 0, 0, 0, 0, 291, 285, 285, 0, - 0, 0, 733, 0, 733, 0, 663, 325, 0, 0, - 738, 804, 0, 0, 0, 0, 636, 340, 0, 285, - 0, 0, 0, 0, 0, 0, 0, 682, 0, 0, - 0, 0, 0, 0, 0, 0, 329, 325, 291, 285, - 636, 0, 0, 0, 0, 0, 655, 656, 0, 0, - 0, 0, 0, 0, 0, 0, 698, 0, 0, 0, - 700, 701, 702, 703, 704, 0, 329, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 655, 656, 308, 390, - 391, 0, 392, 0, 393, 0, 0, 0, 285, 0, - 0, 285, 529, 313, 0, 103, 0, 379, 380, 381, - 382, 383, 550, 551, 552, 105, 553, 554, 555, 556, - 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, - 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, - 577, 578, 579, 580, 581, 582, 583, 584, 118, 119, - 120, 121, 585, 586, 587, 588, 589, 590, 591, 592, - 593, 124, 594, 595, 596, 597, 125, 598, 127, 599, - 600, 601, 602, 603, 604, 605, 606, 130, 607, 608, - 609, 610, 611, 612, 613, 614, 615, 616, 136, 617, - 137, 618, 619, 620, 621, 622, 623, 624, 141, 142, - 143, 144, 145, 625, 0, 0, 0, 399, 0, 0, - 0, 147, 0, 0, 0, 0, 23, 0, 0, 0, - 626, 0, 329, 0, 400, 0, 0, 0, 0, 0, - 0, 0, 627, 402, 0, 0, 0, 0, 0, 0, + 22, 63, 628, 238, 242, 211, 223, 222, 5, 22, + 452, 5, 281, 627, 63, 92, 239, 243, 63, 297, + 64, 647, 63, 163, 201, 367, 656, 488, 658, 94, + 294, 217, 720, 64, 93, 489, 92, 64, 104, 77, + 197, 64, 427, 471, 374, 15, 472, 300, 218, 307, + 94, 211, 245, 795, 300, 93, 680, 99, 427, 439, + 661, 216, 741, 300, 307, 308, 309, 64, 310, 427, + 311, 300, -417, 744, 338, 286, 687, 248, 427, 312, + 103, 237, 492, -113, 234, 473, 254, -438, 693, 337, + 274, -454, 1, 653, -438, 440, 715, 263, -454, 235, + 199, 742, 275, 16, 299, 523, 375, 206, 219, 224, + 339, 262, 745, 796, 307, 308, 309, 797, 310, 140, + 311, 236, 318, 237, 301, 376, 56, 302, 540, 312, + 70, 266, 237, 41, 42, 223, 292, 439, 678, 852, + 657, -417, 712, 653, 789, 497, 852, 104, 301, 505, + 507, 368, 16, 781, 219, 510, 512, 221, 749, 16, + 244, 211, 402, 338, 338, 296, 78, 58, 16, 324, + 58, 366, 318, 273, 223, 245, 16, 791, 337, 337, + 211, 628, 451, 328, 386, 449, 58, 409, 481, 679, + 16, 422, 423, 1, 58, 426, 57, 750, 328, 339, + 339, -414, 524, 1, 208, 449, 217, 1, 654, 655, + 104, 425, 300, 428, 498, 436, 462, 300, 285, 324, + 291, 6, 295, 218, 63, 298, 300, 285, 140, 462, + 683, 298, 285, 680, -414, 857, 216, 448, 224, 450, + 8, 450, 64, 64, 57, 58, 641, 479, 328, 1, + 58, 378, 379, 380, 381, 382, 640, 338, 654, 655, + 9, 446, 646, 747, 419, 544, 221, 544, 650, 684, + 436, 459, 337, 26, 494, 437, 237, 224, 437, 13, + 270, 1, 58, 219, 16, 501, 1, 58, 642, 719, + 16, 140, 648, 339, 788, 504, 506, 27, 782, 727, + 644, 509, 511, 849, 649, 240, 58, 495, 28, 338, + 21, 531, -113, 338, -193, -486, 658, 16, 30, 21, + 235, 32, 16, 403, 337, 468, 263, 16, 337, 221, + 437, 16, 23, 338, 433, 436, 338, 469, -485, 338, + 25, 628, 241, 436, 237, 339, 436, 33, 337, 339, + -485, 337, 627, 663, 337, 298, 298, 35, 258, 658, + 647, 298, 298, 237, 71, 36, -193, -487, 731, 339, + -487, 637, 339, 544, 690, 339, 57, 436, 263, -485, + -487, -485, 633, 638, -487, 437, 691, 37, 716, 433, + 733, 267, 736, -485, 643, 437, 237, 38, 854, 721, + 768, 651, 16, 437, 737, 387, 437, 15, 429, 853, + 237, 658, 769, 237, 155, 200, 204, 44, 223, 685, + 223, 689, -267, 513, 514, -161, -267, 515, 436, 53, + -267, 446, 534, 446, 384, 46, 535, 437, 388, 780, + 536, 545, 793, 547, 794, 688, 57, 58, 437, 47, + 437, 48, 285, 50, 433, 484, 485, 291, 51, 635, + 295, 66, 433, 70, 713, 433, 285, -122, 237, 68, + 71, 635, 69, 452, 72, 437, 799, 96, 436, 238, + 242, 97, 436, 436, 436, 436, 436, 100, 437, 225, + 226, 227, 239, 243, 228, 229, 433, 452, 231, 281, + 230, 450, 232, 233, 338, 249, 702, 256, 251, 252, + 702, 255, 264, 265, 436, -112, 338, 268, 403, 337, + 237, 224, 269, 224, 364, 276, -106, 278, 411, 280, + 277, 337, 378, 379, 380, 381, 382, 365, 437, 435, + 339, 370, 437, 437, 437, 437, 437, 433, -488, 371, + 279, 372, 339, 326, 16, 373, 437, 427, 633, 420, + 461, 633, 463, 460, 449, 211, 722, 465, 466, 467, + 470, 641, 474, 475, 437, 338, 476, 478, 480, 483, + 490, 338, 491, 493, -420, 503, 502, 526, 537, 508, + 337, 725, -303, -258, 482, 533, 337, 433, -201, 772, + -115, 433, 433, 433, 433, 433, 538, 539, 531, 542, + 543, 339, 338, 546, 740, 652, 548, 339, 639, 660, + 665, 667, 307, 308, 309, 668, 310, 337, 311, 459, + 669, 670, 674, 433, 675, 635, 692, 312, 635, 696, + 703, 671, 704, 285, 58, 726, 707, 437, 339, -11, + 714, 653, -10, 732, 710, 717, 730, 718, 738, 527, + 752, 755, 735, 436, 762, 765, 756, 528, 219, 758, + 529, 757, 759, 763, 436, -123, 766, 702, 764, 770, + 318, 771, 784, 775, 785, 776, 778, 803, 7, 786, + 805, 438, 806, 808, 403, 855, 678, 403, 858, 783, + 850, 541, 754, 709, 706, 285, 385, 723, 447, 779, + 800, 31, 801, 436, 40, 98, 60, 95, 102, 532, + 787, 633, 410, 437, 711, 705, 24, 324, 369, 760, + 52, 49, 676, 677, 437, 659, 0, 739, 0, 0, + 500, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 662, 291, 285, 285, 328, 0, 0, 0, + 730, 0, 730, 0, 0, 0, 654, 655, 735, 802, + 0, 0, 0, 635, 0, 0, 0, 285, 0, 0, + 0, 0, 433, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 433, 0, 0, 291, 285, 635, 0, + 0, 0, 695, 0, 0, 0, 697, 698, 699, 700, + 701, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 764, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 770, 0, 0, 0, 0, 0, + 0, 0, 433, 0, 0, 0, 0, 0, 528, 307, + 389, 390, 0, 391, 0, 392, 285, 0, 0, 285, + 0, 0, 0, 0, 312, 0, 103, 403, 378, 379, + 380, 381, 382, 549, 550, 551, 105, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, + 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, + 575, 576, 577, 578, 579, 580, 581, 582, 583, 118, + 119, 120, 121, 584, 585, 586, 587, 588, 589, 590, + 591, 592, 124, 593, 594, 595, 596, 125, 597, 127, + 598, 599, 600, 601, 602, 603, 604, 605, 130, 606, + 607, 608, 609, 610, 611, 612, 613, 614, 615, 136, + 616, 137, 617, 618, 619, 620, 621, 622, 623, 141, + 142, 143, 144, 145, 624, 0, 0, 0, 398, 0, + 0, 0, 147, 0, 0, 0, 0, 23, 0, 0, + 0, 625, 0, 328, 0, 399, 0, 0, 0, 0, + 0, 0, 0, 626, 401, 0, 0, 761, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 767, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 794, 308, 390, 391, 0, 392, 0, - 393, 0, 0, 0, 0, 0, 0, 0, 0, 313, - 0, 103, 0, 0, 0, 0, 0, 809, 550, 551, - 552, 105, 553, 554, 555, 556, 557, 558, 559, 560, - 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, - 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, - 581, 582, 583, 584, 118, 119, 120, 121, 585, 586, - 587, 588, 589, 590, 591, 592, 593, 124, 594, 595, - 596, 597, 125, 598, 127, 599, 600, 601, 602, 603, - 604, 605, 606, 130, 607, 608, 609, 610, 611, 612, - 613, 614, 615, 616, 136, 617, 137, 618, 619, 620, - 621, 622, 623, 624, 141, 142, 143, 144, 145, 625, - 0, 0, 0, 399, 711, 0, 0, 147, 0, 308, - 309, 310, 23, 311, 0, 312, 626, 0, 329, 0, - 400, 0, 0, 0, 313, 0, 103, 0, 627, 402, - 0, 0, 0, 0, 104, 314, 105, 0, 315, 0, - 0, 107, 108, 109, 0, 110, 111, 0, 0, 0, - 316, 317, 112, 113, 0, 0, 114, 115, 318, 0, - 0, 116, 0, 0, 0, 0, 117, 319, 320, 118, - 119, 120, 121, 0, 0, 0, 0, 321, 122, 0, - 123, 0, 124, 0, 322, 0, 0, 125, 126, 127, - 128, 0, 129, 0, 323, 0, 0, 0, 130, 0, - 131, 132, 133, 134, 135, 324, 235, 0, 0, 136, - 0, 137, 138, 139, 325, 140, 0, 0, 0, 141, - 142, 143, 144, 145, 326, 0, 0, 0, 327, 0, - 328, 0, 147, 308, 309, 310, 0, 311, 0, 312, - 0, 0, 0, 329, 0, 0, 0, 0, 313, 0, - 103, 0, 0, 330, 331, 0, 0, 0, 104, 314, - 105, 0, 315, 0, 0, 107, 108, 109, 0, 110, - 111, 0, 0, 0, 0, 0, 112, 113, 0, 0, - 114, 115, 0, 0, 0, 116, 0, 0, 0, 0, - 117, 319, 320, 118, 119, 120, 121, 0, 0, 0, - 0, 321, 122, 0, 123, 0, 124, 0, 322, 0, - 0, 125, 126, 127, 128, 0, 129, 0, 323, 0, - 0, 0, 130, 0, 131, 132, 133, 134, 135, 324, - 235, 0, 0, 136, 0, 137, 138, 139, 325, 140, - 0, 0, 0, 141, 142, 143, 144, 145, 326, 0, - 487, 0, 0, 0, 328, 0, 147, 308, 309, 310, - 0, 311, 0, 312, 0, 0, 0, 329, 0, 0, - 0, 0, 313, 0, 103, 0, 0, 330, 331, 0, - 0, 0, 104, 314, 105, 0, 315, 0, 0, 107, - 108, 109, 0, 110, 111, 0, 0, 0, 0, 0, - 112, 113, 0, 0, 114, 115, 0, 0, 0, 116, - 0, 0, 0, 0, 117, 319, 320, 118, 119, 120, - 121, 0, 0, 0, 0, 321, 122, 0, 123, 0, - 124, 0, 322, 0, 0, 125, 126, 127, 128, 0, - 129, 0, 323, 0, 0, 0, 130, 0, 131, 132, - 133, 134, 135, 324, 235, 0, 0, 136, 0, 137, - 138, 139, 325, 140, 0, 0, 0, 141, 142, 143, - 144, 145, 326, 0, 0, 0, 0, 0, 328, 0, - 147, 308, 309, 310, 0, 311, 0, 312, 0, 0, - 0, 329, 0, 0, 0, 0, 313, 0, 103, 0, - 0, 330, 331, 0, 0, 0, 104, 0, 105, 0, - 315, 0, 0, 107, 108, 109, 0, 110, 111, 0, - 0, 0, 0, 0, 112, 113, 0, 0, 114, 115, - 0, 0, 0, 116, 0, 0, 0, 0, 117, 319, - 320, 118, 119, 120, 121, 0, 0, 0, 0, 321, - 122, 0, 123, 0, 124, 0, 322, 0, 0, 125, - 126, 127, 128, 0, 129, 0, 323, 0, 0, 0, - 130, 0, 131, 132, 133, 134, 135, 324, 235, 0, - 0, 136, 0, 137, 138, 139, 325, 140, 0, 0, - 0, 141, 142, 143, 144, 145, 326, 0, 0, 0, - 0, 0, 328, 0, 147, 308, 390, 391, 0, 392, - 0, 393, 0, 0, 0, 329, 0, 0, 0, 0, - 313, 0, 103, 0, 0, 330, 331, 0, 0, 0, - 104, 0, 105, 0, 394, 0, 0, 107, 108, 109, - 395, 110, 111, 0, 0, 0, 0, 396, 112, 113, - 0, 0, 114, 115, 0, 0, 0, 116, 0, 0, - 0, 0, 117, 319, 0, 118, 119, 120, 121, 0, - 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, - 0, 0, 0, 125, 126, 127, 128, 0, 129, 397, - 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, - 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, - 325, 140, 0, 0, 0, 141, 142, 143, 144, 145, - 398, 0, 0, 0, 399, 0, 0, 0, 147, 0, - 308, 390, 391, 23, 392, 0, 393, 0, 0, 329, - 0, 400, 0, 0, 0, 313, 0, 103, 0, 401, - 402, 0, 0, 0, 0, 104, 0, 105, 0, 394, - 0, 0, 107, 108, 109, 395, 110, 111, 0, 0, - 0, 0, 396, 112, 113, 0, 0, 114, 115, 0, - 0, 0, 116, 0, 0, 0, 0, 117, 319, 0, + 0, 0, 0, 0, 0, 0, 0, 792, 0, 307, + 389, 390, 0, 391, 0, 392, 0, 0, 0, 0, + 0, 0, 0, 0, 312, 0, 103, 0, 0, 0, + 0, 0, 807, 549, 550, 551, 105, 552, 553, 554, + 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, + 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, + 575, 576, 577, 578, 579, 580, 581, 582, 583, 118, + 119, 120, 121, 584, 585, 586, 587, 588, 589, 590, + 591, 592, 124, 593, 594, 595, 596, 125, 597, 127, + 598, 599, 600, 601, 602, 603, 604, 605, 130, 606, + 607, 608, 609, 610, 611, 612, 613, 614, 615, 136, + 616, 137, 617, 618, 619, 620, 621, 622, 623, 141, + 142, 143, 144, 145, 624, 0, 0, 0, 398, 708, + 0, 0, 147, 0, 307, 308, 309, 23, 310, 0, + 311, 625, 0, 328, 0, 399, 0, 0, 0, 312, + 0, 103, 0, 626, 401, 0, 0, 0, 0, 104, + 313, 105, 0, 314, 0, 0, 107, 108, 109, 0, + 110, 111, 0, 0, 0, 315, 316, 112, 113, 0, + 0, 114, 115, 317, 0, 0, 116, 0, 0, 0, + 0, 117, 318, 319, 118, 119, 120, 121, 0, 0, + 0, 0, 320, 122, 0, 123, 0, 124, 0, 321, + 0, 0, 125, 126, 127, 128, 0, 129, 0, 322, + 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, + 323, 235, 0, 0, 136, 0, 137, 138, 139, 324, + 140, 0, 0, 0, 141, 142, 143, 144, 145, 325, + 0, 0, 0, 326, 0, 327, 0, 147, 307, 308, + 309, 0, 310, 0, 311, 0, 0, 0, 328, 0, + 0, 0, 0, 312, 0, 103, 0, 0, 329, 330, + 0, 0, 0, 104, 313, 105, 0, 314, 0, 0, + 107, 108, 109, 0, 110, 111, 0, 0, 0, 0, + 0, 112, 113, 0, 0, 114, 115, 0, 0, 0, + 116, 0, 0, 0, 0, 117, 318, 319, 118, 119, + 120, 121, 0, 0, 0, 0, 320, 122, 0, 123, + 0, 124, 0, 321, 0, 0, 125, 126, 127, 128, + 0, 129, 0, 322, 0, 0, 0, 130, 0, 131, + 132, 133, 134, 135, 323, 235, 0, 0, 136, 0, + 137, 138, 139, 324, 140, 0, 0, 0, 141, 142, + 143, 144, 145, 325, 0, 486, 0, 0, 0, 327, + 0, 147, 307, 308, 309, 0, 310, 0, 311, 0, + 0, 0, 328, 0, 0, 0, 0, 312, 0, 103, + 0, 0, 329, 330, 0, 0, 0, 104, 313, 105, + 0, 314, 0, 0, 107, 108, 109, 0, 110, 111, + 0, 0, 0, 0, 0, 112, 113, 0, 0, 114, + 115, 0, 0, 0, 116, 0, 0, 0, 0, 117, + 318, 319, 118, 119, 120, 121, 0, 0, 0, 0, + 320, 122, 0, 123, 0, 124, 0, 321, 0, 0, + 125, 126, 127, 128, 0, 129, 0, 322, 0, 0, + 0, 130, 0, 131, 132, 133, 134, 135, 323, 235, + 0, 0, 136, 0, 137, 138, 139, 324, 140, 0, + 0, 0, 141, 142, 143, 144, 145, 325, 0, 0, + 0, 0, 0, 327, 0, 147, 307, 308, 309, 0, + 310, 0, 311, 0, 0, 0, 328, 0, 0, 0, + 0, 312, 0, 103, 0, 0, 329, 330, 0, 0, + 0, 104, 0, 105, 0, 314, 0, 0, 107, 108, + 109, 0, 110, 111, 0, 0, 0, 0, 0, 112, + 113, 0, 0, 114, 115, 0, 0, 0, 116, 0, + 0, 0, 0, 117, 318, 319, 118, 119, 120, 121, + 0, 0, 0, 0, 320, 122, 0, 123, 0, 124, + 0, 321, 0, 0, 125, 126, 127, 128, 0, 129, + 0, 322, 0, 0, 0, 130, 0, 131, 132, 133, + 134, 135, 323, 235, 0, 0, 136, 0, 137, 138, + 139, 324, 140, 0, 0, 0, 141, 142, 143, 144, + 145, 325, 0, 0, 0, 0, 0, 327, 0, 147, + 307, 389, 390, 0, 391, 0, 392, 0, 0, 0, + 328, 0, 0, 0, 0, 312, 0, 103, 0, 0, + 329, 330, 0, 0, 0, 104, 0, 105, 0, 393, + 0, 0, 107, 108, 109, 394, 110, 111, 0, 0, + 0, 0, 395, 112, 113, 0, 0, 114, 115, 0, + 0, 0, 116, 0, 0, 0, 0, 117, 318, 0, 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, - 127, 128, 0, 129, 397, 0, 0, 0, 0, 130, + 127, 128, 0, 129, 396, 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, - 136, 0, 137, 138, 139, 325, 140, 0, 0, 0, - 141, 142, 143, 144, 145, 398, 0, 0, 0, 399, - 0, 308, 0, 147, 0, 0, 0, 0, 23, 0, - 0, 0, 0, 0, 329, 0, 400, 0, 103, 0, - 0, 0, 0, 0, 432, 402, 104, 0, 105, 0, - 106, 0, 0, 107, 108, 109, 0, 110, 111, 0, - 0, 0, 0, 0, 112, 113, 0, 0, 114, 115, - 0, 0, 0, 116, 0, 0, 0, 0, 117, 0, - 0, 118, 119, 120, 121, 0, 0, 0, 0, 0, - 122, 0, 123, 0, 124, 0, 0, 0, 0, 125, - 126, 127, 128, 0, 129, 0, 0, 0, 0, 0, - 130, 0, 131, 132, 133, 134, 135, 0, 0, 0, - 0, 136, 0, 137, 138, 139, 0, 140, 0, 0, - 0, 141, 142, 143, 144, 145, 0, 0, 0, 308, - 390, 391, 0, 392, 147, 393, 0, 308, 309, 310, - 0, 311, 0, 312, 313, 329, 0, 0, 0, 0, - 0, 0, 313, 0, 104, 148, 208, 0, 431, 0, - 0, 308, 390, 391, 395, 392, 654, 393, 0, 0, - 0, 396, 0, 0, 0, 0, 313, 0, 103, 0, - 0, 0, 0, 0, 0, 0, 104, 319, 0, 0, - 431, 0, 0, 0, 0, 319, 395, 0, 0, 0, - 0, 0, 0, 396, 0, 0, 0, 0, 0, 0, - 0, 681, 0, 397, 0, 0, 0, 0, 0, 319, - 0, 0, 0, 0, 0, 0, 308, 390, 391, 0, - 392, 0, 393, 0, 325, 140, 0, 0, 0, 0, - 0, 313, 325, 0, 398, 397, 0, 0, 399, 697, - 0, 104, 0, 0, 0, 431, 0, 23, 0, 0, - 0, 395, 0, 329, 0, 400, 325, 140, 396, 0, - 0, 329, 0, 432, 433, 0, 398, 0, 0, 0, - 792, 655, 656, 0, 319, 0, 0, 0, 0, 23, - 0, 0, 0, 0, 0, 329, 0, 400, 0, 0, - 0, 0, 0, 0, 0, 432, 433, 0, 0, 0, - 397, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 325, 140, 0, 0, 0, 0, 0, 0, 0, - 0, 398, 0, 0, 0, 399, 0, 0, 0, 0, - 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, - 329, 0, 400, 0, 0, 0, 0, 0, 0, 0, - 432, 433, 103, 0, 379, 380, 381, 382, 383, 0, - 104, 0, 105, 0, 106, 0, 0, 107, 108, 109, - 0, 110, 111, 0, 0, 0, 0, 0, 112, 113, + 136, 0, 137, 138, 139, 324, 140, 0, 0, 0, + 141, 142, 143, 144, 145, 397, 0, 0, 0, 398, + 0, 0, 0, 147, 0, 307, 389, 390, 23, 391, + 0, 392, 0, 0, 328, 0, 399, 0, 0, 0, + 312, 0, 103, 0, 400, 401, 0, 0, 0, 0, + 104, 0, 105, 0, 393, 0, 0, 107, 108, 109, + 394, 110, 111, 0, 0, 0, 0, 395, 112, 113, 0, 0, 114, 115, 0, 0, 0, 116, 0, 0, - 0, 0, 117, 0, 0, 118, 119, 120, 121, 0, - 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, - 0, 0, 0, 125, 126, 127, 128, 0, 129, 0, - 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, - 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, - 0, 140, 0, 0, 0, 141, 142, 143, 144, 145, - 0, 103, 0, 0, 0, 0, 0, 0, 147, 104, - 0, 105, 0, 106, 0, 0, 107, 108, 109, 0, - 110, 111, 0, 0, 0, 0, 0, 112, 113, 148, - 16, 114, 115, 0, 0, 0, 116, 0, 0, 0, - 0, 117, 0, 0, 118, 119, 120, 121, 0, 0, - 0, 0, 0, 122, 0, 123, 0, 124, 0, 0, - 0, 0, 125, 126, 127, 128, 0, 129, 0, 0, - 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, - 0, 0, 0, 0, 136, 0, 137, 138, 139, 0, - 140, 0, 0, 0, 141, 142, 143, 144, 145, 0, - 146, 0, 0, 100, 103, 0, 0, 147, 0, 0, - 0, 0, 104, 0, 105, 0, 106, 0, 0, 107, - 108, 109, 0, 110, 111, 0, 0, 0, 148, 16, - 112, 113, 0, 0, 114, 115, 0, 0, 0, 116, - 0, 260, 0, 0, 117, 0, 0, 118, 119, 120, - 121, 0, 261, 0, 0, 0, 122, 0, 123, 0, - 124, 0, 0, 0, 0, 125, 126, 127, 128, 0, - 129, 0, 0, 0, 0, 0, 130, 0, 131, 132, - 133, 134, 135, 0, 0, 0, 0, 136, 0, 137, - 138, 139, 0, 140, 0, 0, 0, 141, 142, 143, - 144, 145, 0, 103, 0, 0, 0, 0, 0, 0, - 147, 104, 0, 105, 0, 106, 0, 0, 107, 108, - 109, 0, 110, 111, 0, 0, 0, 0, 0, 112, - 113, 148, 16, 114, 115, 0, 0, 0, 116, 0, - 0, 0, 0, 117, 0, 0, 118, 119, 120, 121, - 0, 0, 0, 0, 0, 122, 0, 123, 0, 124, - 0, 0, 0, 0, 125, 126, 127, 128, 0, 129, - 0, 0, 0, 0, 0, 130, 0, 131, 132, 133, - 134, 135, 0, 0, 0, 0, 136, 0, 137, 138, - 139, 0, 140, 0, 0, 0, 141, 142, 143, 144, - 145, 0, 103, 0, 0, 100, 0, 0, 0, 147, - 104, 0, 105, 0, 106, 0, 0, 107, 108, 109, - 0, 110, 111, 244, 0, 0, 0, 0, 112, 113, - 148, 16, 114, 115, 0, 0, 0, 116, 0, 0, - 0, 0, 117, 0, 0, 118, 119, 120, 121, 0, + 0, 0, 117, 318, 0, 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, - 0, 0, 0, 125, 126, 127, 128, 0, 129, 0, + 0, 0, 0, 125, 126, 127, 128, 0, 129, 396, 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, - 0, 140, 0, 0, 0, 141, 142, 143, 144, 145, - 0, 103, 0, 0, 0, 0, 0, 0, 147, 104, - 0, 105, 0, 106, 0, 0, 107, 108, 109, 0, - 110, 111, 0, 0, 0, 0, 0, 112, 113, 207, - 16, 114, 115, 0, 0, 0, 116, 0, 0, 0, - 0, 117, 0, 0, 118, 119, 120, 121, 0, 0, - 0, 0, 0, 122, 0, 123, 0, 124, 0, 0, - 0, 0, 125, 126, 127, 128, 0, 129, 0, 0, - 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, - 0, 0, 0, 0, 136, 0, 137, 138, 139, 0, - 140, 0, 0, 0, 141, 142, 143, 144, 145, 0, - 253, 0, 0, 0, 103, 0, 0, 147, 0, 0, - 0, 0, 104, 0, 105, 0, 106, 0, 0, 107, - 108, 109, 0, 110, 111, 0, 0, 0, 148, 16, - 112, 113, 0, 0, 114, 115, 0, 0, 0, 116, - 0, 0, 0, 0, 117, 0, 0, 118, 119, 120, - 121, 0, 0, 0, 0, 0, 122, 0, 123, 0, - 124, 0, 0, 0, 0, 125, 126, 127, 128, 0, - 129, 0, 0, 0, 0, 0, 130, 0, 131, 132, - 133, 134, 135, 0, 0, 0, 0, 136, 0, 137, - 138, 139, 0, 140, 0, 0, 0, 141, 142, 143, - 144, 145, 0, 103, 0, 0, 0, 0, 0, 0, - 147, 104, 264, 105, 0, 106, 0, 0, 107, 108, + 324, 140, 0, 0, 0, 141, 142, 143, 144, 145, + 397, 0, 0, 0, 398, 0, 307, 0, 147, 0, + 0, 0, 0, 23, 0, 0, 0, 0, 0, 328, + 0, 399, 0, 103, 0, 0, 0, 0, 0, 431, + 401, 104, 0, 105, 0, 106, 0, 0, 107, 108, 109, 0, 110, 111, 0, 0, 0, 0, 0, 112, - 113, 148, 16, 114, 115, 0, 0, 0, 116, 0, + 113, 0, 0, 114, 115, 0, 0, 0, 116, 0, 0, 0, 0, 117, 0, 0, 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, 127, 128, 0, 129, 0, 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, 0, 140, 0, 0, 0, 141, 142, 143, 144, - 145, 0, 103, 0, 0, 0, 0, 0, 0, 147, - 104, 0, 105, 0, 106, 0, 0, 107, 108, 109, - 0, 110, 111, 0, 0, 0, 0, 0, 112, 113, - 207, 208, 114, 115, 0, 0, 0, 116, 0, 0, - 0, 0, 117, 0, 0, 118, 119, 120, 121, 0, - 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, - 0, 0, 0, 125, 126, 127, 128, 0, 129, 0, - 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, - 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, - 0, 140, 0, 0, 0, 141, 142, 143, 144, 145, - 0, 103, 0, 0, 0, 0, 0, 0, 147, 104, - 0, 105, 0, 106, 0, 0, 107, 108, 109, 0, - 110, 111, 0, 0, 0, 0, 0, 112, 113, 148, - 16, 114, 115, 0, 0, 0, 116, 0, 0, 0, - 0, 117, 0, 0, 118, 119, 120, 121, 0, 0, - 0, 0, 0, 122, 0, 123, 0, 124, 0, 0, - 0, 0, 125, 126, 127, 128, 0, 129, 0, 0, - 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, - 0, 0, 0, 0, 136, 0, 137, 138, 139, 0, - 140, 0, 0, 0, 141, 142, 143, 144, 145, 0, - 0, 0, 0, 0, 0, 0, 0, 147, 0, 0, + 145, 0, 0, 0, 307, 389, 390, 0, 391, 147, + 392, 0, 0, 0, 0, 0, 0, 0, 0, 312, + 328, 0, 0, 0, 0, 0, 0, 0, 0, 104, + 148, 208, 0, 430, 0, 0, 307, 389, 390, 394, + 391, 0, 392, 0, 0, 0, 395, 0, 0, 0, + 0, 312, 0, 103, 0, 0, 0, 0, 0, 0, + 0, 104, 318, 0, 0, 430, 0, 0, 0, 0, + 0, 394, 0, 0, 0, 0, 0, 0, 395, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 396, 0, + 0, 0, 0, 0, 318, 0, 0, 0, 0, 0, + 0, 307, 389, 390, 0, 391, 0, 392, 0, 324, + 140, 0, 0, 0, 0, 0, 312, 0, 0, 397, + 396, 0, 0, 398, 694, 0, 104, 0, 0, 0, + 430, 0, 23, 0, 0, 0, 394, 0, 328, 0, + 399, 324, 140, 395, 0, 0, 0, 0, 431, 432, + 0, 397, 0, 0, 0, 790, 0, 0, 0, 318, + 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, + 328, 0, 399, 0, 0, 0, 0, 0, 0, 0, + 431, 432, 0, 0, 0, 396, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 324, 140, 0, 0, + 0, 0, 0, 0, 0, 0, 397, 0, 0, 0, + 398, 0, 0, 0, 0, 0, 0, 0, 0, 23, + 0, 0, 0, 0, 0, 328, 0, 399, 0, 0, + 0, 0, 0, 0, 0, 431, 432, 103, 0, 378, + 379, 380, 381, 382, 0, 104, 0, 105, 0, 106, + 0, 0, 107, 108, 109, 0, 110, 111, 0, 0, + 0, 0, 0, 112, 113, 0, 0, 114, 115, 0, + 0, 0, 116, 0, 0, 0, 0, 117, 0, 0, + 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, + 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, + 127, 128, 0, 129, 0, 0, 0, 0, 0, 130, + 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, + 136, 0, 137, 138, 139, 0, 140, 0, 0, 0, + 141, 142, 143, 144, 145, 0, 103, 0, 0, 0, + 0, 0, 0, 147, 104, 0, 105, 0, 106, 0, + 0, 107, 108, 109, 0, 110, 111, 0, 0, 0, + 0, 0, 112, 113, 148, 16, 114, 115, 0, 0, + 0, 116, 0, 0, 0, 0, 117, 0, 0, 118, + 119, 120, 121, 0, 0, 0, 0, 0, 122, 0, + 123, 0, 124, 0, 0, 0, 0, 125, 126, 127, + 128, 0, 129, 0, 0, 0, 0, 0, 130, 0, + 131, 132, 133, 134, 135, 0, 0, 0, 0, 136, + 0, 137, 138, 139, 0, 140, 0, 0, 0, 141, + 142, 143, 144, 145, 0, 146, 0, 0, 100, 103, + 0, 0, 147, 0, 0, 0, 0, 104, 0, 105, + 0, 106, 0, 0, 107, 108, 109, 0, 110, 111, + 0, 0, 0, 148, 16, 112, 113, 0, 0, 114, + 115, 0, 0, 0, 116, 0, 260, 0, 0, 117, + 0, 0, 118, 119, 120, 121, 0, 261, 0, 0, + 0, 122, 0, 123, 0, 124, 0, 0, 0, 0, + 125, 126, 127, 128, 0, 129, 0, 0, 0, 0, + 0, 130, 0, 131, 132, 133, 134, 135, 0, 0, + 0, 0, 136, 0, 137, 138, 139, 0, 140, 0, + 0, 0, 141, 142, 143, 144, 145, 0, 103, 0, + 0, 0, 0, 0, 0, 147, 104, 0, 105, 0, + 106, 0, 0, 107, 108, 109, 0, 110, 111, 0, + 0, 0, 0, 0, 112, 113, 148, 16, 114, 115, + 0, 0, 0, 116, 0, 0, 0, 0, 117, 0, + 0, 118, 119, 120, 121, 0, 0, 0, 0, 0, + 122, 0, 123, 0, 124, 0, 0, 0, 0, 125, + 126, 127, 128, 0, 129, 0, 0, 0, 0, 0, + 130, 0, 131, 132, 133, 134, 135, 0, 0, 0, + 0, 136, 0, 137, 138, 139, 0, 140, 0, 0, + 0, 141, 142, 143, 144, 145, 0, 103, 0, 0, + 100, 0, 0, 0, 147, 104, 0, 105, 0, 106, + 0, 0, 107, 108, 109, 0, 110, 111, 244, 0, + 0, 0, 0, 112, 113, 148, 16, 114, 115, 0, + 0, 0, 116, 0, 0, 0, 0, 117, 0, 0, + 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, + 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, + 127, 128, 0, 129, 0, 0, 0, 0, 0, 130, + 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, + 136, 0, 137, 138, 139, 0, 140, 0, 0, 0, + 141, 142, 143, 144, 145, 0, 103, 0, 0, 0, + 0, 0, 0, 147, 104, 0, 105, 0, 106, 0, + 0, 107, 108, 109, 0, 110, 111, 0, 0, 0, + 0, 0, 112, 113, 207, 16, 114, 115, 0, 0, + 0, 116, 0, 0, 0, 0, 117, 0, 0, 118, + 119, 120, 121, 0, 0, 0, 0, 0, 122, 0, + 123, 0, 124, 0, 0, 0, 0, 125, 126, 127, + 128, 0, 129, 0, 0, 0, 0, 0, 130, 0, + 131, 132, 133, 134, 135, 0, 0, 0, 0, 136, + 0, 137, 138, 139, 0, 140, 0, 0, 0, 141, + 142, 143, 144, 145, 0, 253, 0, 0, 0, 103, + 0, 0, 147, 0, 0, 0, 0, 104, 0, 105, + 0, 106, 0, 0, 107, 108, 109, 0, 110, 111, + 0, 0, 0, 148, 16, 112, 113, 0, 0, 114, + 115, 0, 0, 0, 116, 0, 0, 0, 0, 117, + 0, 0, 118, 119, 120, 121, 0, 0, 0, 0, + 0, 122, 0, 123, 0, 124, 0, 0, 0, 0, + 125, 126, 127, 128, 0, 129, 0, 0, 0, 0, + 0, 130, 0, 131, 132, 133, 134, 135, 0, 0, + 0, 0, 136, 0, 137, 138, 139, 0, 140, 0, + 0, 0, 141, 142, 143, 144, 145, 0, 103, 0, + 0, 0, 0, 0, 0, 147, 104, 264, 105, 0, + 106, 0, 0, 107, 108, 109, 0, 110, 111, 0, + 0, 0, 0, 0, 112, 113, 148, 16, 114, 115, + 0, 0, 0, 116, 0, 0, 0, 0, 117, 0, + 0, 118, 119, 120, 121, 0, 0, 0, 0, 0, + 122, 0, 123, 0, 124, 0, 0, 0, 0, 125, + 126, 127, 128, 0, 129, 0, 0, 0, 0, 0, + 130, 0, 131, 132, 133, 134, 135, 0, 0, 0, + 0, 136, 0, 137, 138, 139, 0, 140, 0, 0, + 0, 141, 142, 143, 144, 145, 0, 103, 0, 0, + 0, 0, 0, 0, 147, 104, 0, 105, 0, 106, + 0, 0, 107, 108, 109, 0, 110, 111, 0, 0, + 0, 0, 0, 112, 113, 207, 208, 114, 115, 0, + 0, 0, 116, 0, 0, 0, 0, 117, 0, 0, + 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, + 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, + 127, 128, 0, 129, 0, 0, 0, 0, 0, 130, + 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, + 136, 0, 137, 138, 139, 0, 140, 0, 0, 0, + 141, 142, 143, 144, 145, 0, 103, 0, 0, 0, + 0, 0, 0, 147, 104, 0, 105, 0, 106, 0, + 0, 107, 108, 109, 0, 110, 111, 0, 0, 0, + 0, 0, 112, 113, 148, 16, 114, 115, 0, 0, + 0, 116, 0, 0, 0, 0, 117, 0, 0, 118, + 119, 120, 121, 0, 0, 0, 0, 0, 122, 0, + 123, 0, 124, 0, 0, 0, 0, 125, 126, 127, + 128, 0, 129, 0, 0, 0, 0, 0, 130, 0, + 131, 132, 133, 134, 135, 0, 0, 0, 0, 136, + 0, 137, 138, 139, 0, 140, 0, 0, 0, 141, + 142, 143, 144, 145, 0, 0, 0, 0, 0, 0, + 0, 0, 147, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 207, 16, - 379, 380, 381, 382, 383, 550, 811, 552, 0, 553, - 812, 555, 556, 813, 814, 815, 816, 817, 818, 563, - 564, 565, 566, 819, 820, 821, 570, 571, 822, 823, - 574, 575, 576, 824, 578, 579, 580, 581, 825, 826, - 584, 0, 0, 0, 0, 585, 586, 587, 588, 589, - 827, 591, 828, 593, 0, 594, 595, 596, 597, 0, - 829, 0, 830, 600, 831, 832, 603, 604, 605, 606, - 0, 607, 833, 834, 835, 836, 837, 613, 614, 615, - 616, 0, 617, 0, 838, 839, 840, 841, 622, 623, - 624, 0, 0, 0, 0, 0, 842, 0, 0, 0, + 0, 0, 0, 207, 16, 378, 379, 380, 381, 382, + 549, 809, 551, 0, 552, 810, 554, 555, 811, 812, + 813, 814, 815, 816, 562, 563, 564, 565, 817, 818, + 819, 569, 570, 820, 821, 573, 574, 575, 822, 577, + 578, 579, 580, 823, 824, 583, 0, 0, 0, 0, + 584, 585, 586, 587, 588, 825, 590, 826, 592, 0, + 593, 594, 595, 596, 0, 827, 0, 828, 599, 829, + 830, 602, 603, 604, 605, 0, 606, 831, 832, 833, + 834, 835, 612, 613, 614, 615, 0, 616, 0, 836, + 837, 838, 839, 621, 622, 623, 0, 0, 0, 0, + 0, 840, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 625, 0, + 0, 0, 0, 0, 0, 0, 0, 549, 809, 551, + 842, 552, 810, 554, 555, 811, 812, 813, 814, 815, + 816, 562, 563, 564, 565, 817, 818, 819, 569, 570, + 820, 821, 573, 574, 575, 822, 577, 578, 579, 580, + 823, 824, 583, 0, 0, 0, 0, 584, 585, 586, + 587, 588, 825, 590, 826, 592, 0, 593, 594, 595, + 596, 0, 827, 0, 828, 599, 829, 830, 602, 603, + 604, 605, 0, 606, 831, 832, 833, 834, 835, 612, + 613, 614, 615, 0, 616, 0, 836, 837, 838, 839, + 621, 622, 623, 0, 0, 0, 0, 0, 840, 0, + 0, 0, 0, 851, 0, 0, 841, 0, 0, 0, + 0, 0, 0, 0, 0, 625, 0, 0, 0, 0, + 0, 0, 0, 0, 549, 809, 551, 842, 552, 810, + 554, 555, 811, 812, 813, 814, 815, 816, 562, 563, + 564, 565, 817, 818, 819, 569, 570, 820, 821, 573, + 574, 575, 822, 577, 578, 579, 580, 823, 824, 583, + 0, 0, 0, 0, 584, 585, 586, 587, 588, 825, + 590, 826, 592, 0, 593, 594, 595, 596, 0, 827, + 0, 828, 599, 829, 830, 602, 603, 604, 605, 0, + 606, 831, 832, 833, 834, 835, 612, 613, 614, 615, + 0, 616, 0, 836, 837, 838, 839, 621, 622, 623, + 0, 0, 0, 0, 0, 840, 0, 0, 0, 0, + 0, 0, 0, 841, 856, 0, 0, 0, 0, 0, + 0, 0, 625, 0, 0, 0, 0, 0, 0, 0, + 0, 549, 809, 551, 842, 552, 810, 554, 555, 811, + 812, 813, 814, 815, 816, 562, 563, 564, 565, 817, + 818, 819, 569, 570, 820, 821, 573, 574, 575, 822, + 577, 578, 579, 580, 823, 824, 583, 0, 0, 0, + 0, 584, 585, 586, 587, 588, 825, 590, 826, 592, + 0, 593, 594, 595, 596, 0, 827, 0, 828, 599, + 829, 830, 602, 603, 604, 605, 0, 606, 831, 832, + 833, 834, 835, 612, 613, 614, 615, 0, 616, 0, + 836, 837, 838, 839, 621, 622, 623, 0, 0, 0, + 0, 0, 840, 0, 0, 0, 0, 0, 0, 0, + 841, 0, 0, 0, 0, 0, 0, 0, 0, 625, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 626, 0, 0, 0, 0, 0, 0, - 0, 0, 550, 811, 552, 844, 553, 812, 555, 556, - 813, 814, 815, 816, 817, 818, 563, 564, 565, 566, - 819, 820, 821, 570, 571, 822, 823, 574, 575, 576, - 824, 578, 579, 580, 581, 825, 826, 584, 0, 0, - 0, 0, 585, 586, 587, 588, 589, 827, 591, 828, - 593, 0, 594, 595, 596, 597, 0, 829, 0, 830, - 600, 831, 832, 603, 604, 605, 606, 0, 607, 833, - 834, 835, 836, 837, 613, 614, 615, 616, 0, 617, - 0, 838, 839, 840, 841, 622, 623, 624, 0, 0, - 0, 0, 0, 842, 0, 0, 0, 0, 853, 0, - 0, 843, 0, 0, 0, 0, 0, 0, 0, 0, - 626, 0, 0, 0, 0, 0, 0, 0, 0, 550, - 811, 552, 844, 553, 812, 555, 556, 813, 814, 815, - 816, 817, 818, 563, 564, 565, 566, 819, 820, 821, - 570, 571, 822, 823, 574, 575, 576, 824, 578, 579, - 580, 581, 825, 826, 584, 0, 0, 0, 0, 585, - 586, 587, 588, 589, 827, 591, 828, 593, 0, 594, - 595, 596, 597, 0, 829, 0, 830, 600, 831, 832, - 603, 604, 605, 606, 0, 607, 833, 834, 835, 836, - 837, 613, 614, 615, 616, 0, 617, 0, 838, 839, - 840, 841, 622, 623, 624, 0, 0, 0, 0, 0, - 842, 0, 0, 0, 0, 0, 0, 0, 843, 858, - 0, 0, 0, 0, 0, 0, 0, 626, 0, 0, - 0, 0, 0, 0, 0, 0, 550, 811, 552, 844, - 553, 812, 555, 556, 813, 814, 815, 816, 817, 818, - 563, 564, 565, 566, 819, 820, 821, 570, 571, 822, - 823, 574, 575, 576, 824, 578, 579, 580, 581, 825, - 826, 584, 0, 0, 0, 0, 585, 586, 587, 588, - 589, 827, 591, 828, 593, 0, 594, 595, 596, 597, - 0, 829, 0, 830, 600, 831, 832, 603, 604, 605, - 606, 0, 607, 833, 834, 835, 836, 837, 613, 614, - 615, 616, 0, 617, 0, 838, 839, 840, 841, 622, - 623, 624, 0, 0, 0, 0, 0, 842, 0, 0, - 0, 0, 0, 0, 0, 843, 0, 0, 0, 0, - 0, 0, 0, 0, 626, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 844 + 0, 842 }; const short int asn1_parser::yycheck_[] = { - 9, 134, 135, 100, 101, 227, 4, 53, 0, 18, - 231, 3, 234, 101, 278, 134, 135, 653, 240, 452, - 66, 67, 92, 93, 70, 100, 476, 452, 74, 4, - 100, 4, 327, 467, 53, 4, 473, 30, 21, 21, - 67, 44, 88, 301, 4, 328, 63, 66, 67, 146, - 21, 70, 53, 4, 100, 74, 44, 21, 146, 49, - 76, 88, 28, 121, 44, 21, 503, 256, 76, 88, - 111, 121, 124, 92, 148, 21, 146, 32, 267, 111, - 34, 100, 515, 341, 136, 155, 23, 24, 25, 26, - 27, 149, 744, 441, 527, 443, 49, 121, 88, 149, - 92, 49, 235, 144, 58, 237, 49, 99, 100, 101, - 180, 270, 144, 125, 0, 69, 768, 50, 121, 136, - 15, 124, 88, 29, 125, 149, 92, 123, 140, 145, - 200, 767, 29, 230, 323, 88, 42, 145, 421, 94, - 88, 121, 230, 365, 366, 88, 149, 123, 9, 371, - 372, 149, 123, 149, 146, 148, 149, 18, 113, 256, - 206, 149, 44, 138, 234, 148, 149, 149, 256, 149, - 240, 132, 269, 148, 149, 148, 149, 148, 275, 148, - 149, 269, 44, 253, 148, 149, 256, 320, 148, 149, - 260, 261, 148, 124, 264, 327, 328, 148, 149, 388, - 275, 276, 148, 44, 110, 275, 631, 396, 237, 44, - 399, 148, 123, 110, 125, 285, 125, 122, 227, 378, - 229, 857, 231, 112, 129, 234, 137, 236, 298, 275, - 276, 240, 241, 771, 29, 773, 125, 237, 230, 121, - 462, 430, 148, 124, 263, 682, 265, 317, 267, 470, - 277, 148, 279, 121, 49, 136, 275, 276, 123, 121, - 125, 270, 124, 452, 256, 123, 122, 149, 16, 17, - 74, 280, 137, 129, 123, 267, 125, 269, 270, 137, - 121, 149, 441, 275, 443, 355, 121, 149, 137, 421, - 60, 125, 481, 88, 123, 365, 366, 126, 327, 328, - 124, 371, 372, 137, 323, 464, 124, 136, 149, 468, - 747, 140, 136, 124, 149, 110, 766, 137, 136, 23, - 24, 105, 136, 27, 139, 136, 140, 327, 328, 149, - 144, 323, 464, 845, 55, 136, 468, 105, 59, 140, - 852, 473, 531, 144, 105, 477, 535, 536, 537, 538, - 539, 4, 485, 148, 139, 120, 365, 366, 808, 792, - 125, 70, 371, 372, 120, 497, 86, 792, 500, 388, - 132, 503, 126, 807, 120, 670, 86, 396, 567, 125, - 399, 101, 452, 120, 148, 149, 378, 35, 125, 647, - 549, 101, 421, 120, 464, 125, 388, 71, 125, 129, - 658, 471, 141, 123, 396, 125, 141, 399, 251, 123, - 860, 430, 255, 123, 136, 125, 849, 514, 55, 516, - 123, 421, 43, 44, 849, 124, 514, 102, 516, 92, - 93, 94, 441, 141, 443, 124, 125, 102, 430, 628, - 123, 90, 631, 123, 473, 515, 741, 86, 477, 441, - 123, 443, 68, 462, 15, 102, 137, 123, 467, 120, - 452, 470, 481, 123, 120, 137, 137, 476, 497, 137, - 129, 500, 464, 473, 503, 137, 468, 477, 611, 612, - 744, 640, 777, 23, 24, 25, 26, 27, 140, 481, - 140, 125, 611, 612, 540, 717, 137, 497, 544, 137, - 500, 120, 86, 503, 768, 123, 149, 86, 86, 86, - 123, 140, 531, 540, 123, 123, 535, 536, 537, 538, - 539, 21, 514, 148, 516, 124, 136, 131, 124, 718, - 136, 125, 86, 124, 136, 57, 39, 39, 670, 531, - 729, 256, 12, 535, 536, 537, 538, 539, 567, 4, - 682, 123, 267, 136, 122, 129, 57, 549, 628, 124, - 124, 631, 137, 125, 661, 124, 788, 136, 144, 125, - 123, 144, 124, 661, 137, 567, 125, 137, 125, 768, - 137, 136, 123, 126, 123, 136, 124, 121, 136, 126, - 4, 661, 128, 143, 124, 124, 39, 121, 126, 126, - 733, 119, 137, 792, 149, 137, 137, 126, 323, 741, - 136, 136, 126, 136, 147, 747, 686, 126, 126, 136, - 136, 136, 103, 3, 136, 124, 124, 140, 124, 136, - 639, 136, 124, 137, 123, 694, 628, 124, 269, 631, - 137, 670, 136, 136, 653, 777, 136, 751, 640, 843, - 136, 136, 631, 682, 628, 252, 661, 666, 275, 740, - 778, 18, 4, 5, 6, 674, 8, 713, 10, 661, - 670, 779, 32, 388, 74, 53, 70, 19, 88, 405, - 765, 396, 682, 241, 399, 256, 717, 639, 11, 549, - 49, 33, 4, 5, 6, 44, 8, 497, 10, 718, - 477, 500, -1, -1, 350, 682, -1, 19, 717, -1, - 729, -1, 741, -1, -1, 430, -1, -1, 747, -1, - 62, 33, 792, -1, -1, -1, 718, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 78, 729, -1, -1, - -1, 741, -1, -1, -1, -1, -1, 747, 777, 768, - 62, -1, -1, -1, -1, -1, 765, 766, 767, -1, - -1, -1, 771, -1, 773, -1, 481, 109, -1, -1, - 779, 780, -1, -1, -1, -1, 768, 777, -1, 788, - -1, -1, -1, -1, -1, -1, -1, 129, -1, -1, - -1, -1, -1, -1, -1, -1, 138, 109, 807, 808, - 792, -1, -1, -1, -1, -1, 148, 149, -1, -1, - -1, -1, -1, -1, -1, -1, 531, -1, -1, -1, - 535, 536, 537, 538, 539, -1, 138, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 148, 149, 4, 5, - 6, -1, 8, -1, 10, -1, -1, -1, 857, -1, - -1, 860, 567, 19, -1, 21, -1, 23, 24, 25, - 26, 27, 28, 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, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, -1, -1, 123, -1, -1, - -1, 127, -1, -1, -1, -1, 132, -1, -1, -1, - 136, -1, 138, -1, 140, -1, -1, -1, -1, -1, - -1, -1, 148, 149, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 718, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 729, -1, -1, -1, -1, -1, + 9, 53, 451, 134, 135, 100, 101, 101, 0, 18, + 278, 3, 227, 451, 66, 67, 134, 135, 70, 234, + 53, 466, 74, 92, 93, 240, 472, 326, 475, 67, + 231, 100, 652, 66, 67, 327, 88, 70, 29, 21, + 92, 74, 21, 301, 32, 4, 49, 44, 100, 4, + 88, 146, 146, 28, 44, 88, 502, 63, 21, 4, + 53, 100, 49, 44, 4, 5, 6, 100, 8, 21, + 10, 44, 76, 49, 237, 121, 514, 146, 21, 19, + 21, 125, 340, 123, 86, 88, 155, 122, 526, 237, + 124, 122, 148, 33, 129, 270, 140, 137, 129, 101, + 92, 88, 136, 149, 235, 4, 94, 99, 100, 101, + 237, 180, 88, 88, 4, 5, 6, 92, 8, 110, + 10, 123, 62, 125, 121, 113, 30, 124, 420, 19, + 136, 200, 125, 16, 17, 230, 230, 4, 78, 843, + 121, 145, 4, 33, 764, 76, 850, 29, 121, 364, + 365, 124, 149, 741, 146, 370, 371, 148, 49, 149, + 42, 256, 256, 326, 327, 234, 148, 149, 149, 109, + 149, 240, 62, 206, 269, 269, 149, 765, 326, 327, + 275, 630, 123, 138, 253, 148, 149, 256, 319, 129, + 149, 260, 261, 148, 149, 264, 148, 88, 138, 326, + 327, 111, 377, 148, 149, 148, 275, 148, 148, 149, + 29, 263, 44, 265, 145, 267, 285, 44, 227, 109, + 229, 0, 231, 275, 276, 234, 44, 236, 110, 298, + 49, 240, 241, 679, 144, 855, 275, 276, 230, 277, + 50, 279, 275, 276, 148, 149, 461, 316, 138, 148, + 149, 23, 24, 25, 26, 27, 121, 420, 148, 149, + 123, 270, 121, 112, 256, 440, 148, 442, 469, 88, + 322, 280, 420, 34, 111, 267, 125, 269, 270, 15, + 123, 148, 149, 275, 149, 354, 148, 149, 463, 121, + 149, 110, 467, 420, 121, 364, 365, 58, 744, 121, + 463, 370, 371, 121, 467, 86, 149, 144, 69, 472, + 9, 125, 123, 476, 125, 129, 763, 149, 124, 18, + 101, 125, 149, 256, 472, 124, 137, 149, 476, 148, + 322, 149, 132, 496, 267, 387, 499, 136, 125, 502, + 74, 790, 123, 395, 125, 472, 398, 139, 496, 476, + 137, 499, 790, 484, 502, 364, 365, 105, 120, 806, + 805, 370, 371, 125, 123, 105, 125, 123, 667, 496, + 126, 124, 499, 548, 124, 502, 148, 429, 137, 123, + 136, 125, 451, 136, 140, 377, 136, 105, 646, 322, + 137, 120, 124, 137, 463, 387, 125, 60, 847, 657, + 124, 470, 149, 395, 136, 120, 398, 4, 120, 847, + 125, 858, 136, 125, 92, 93, 94, 139, 513, 513, + 515, 515, 136, 23, 24, 55, 140, 27, 480, 59, + 144, 440, 136, 442, 251, 70, 140, 429, 255, 738, + 144, 440, 769, 442, 771, 514, 148, 149, 440, 120, + 442, 126, 461, 132, 387, 43, 44, 466, 35, 451, + 469, 71, 395, 136, 639, 398, 475, 124, 125, 141, + 123, 463, 141, 741, 55, 467, 775, 124, 530, 610, + 611, 141, 534, 535, 536, 537, 538, 123, 480, 102, + 102, 123, 610, 611, 90, 123, 429, 765, 123, 714, + 86, 539, 68, 102, 667, 15, 539, 123, 137, 120, + 543, 137, 129, 137, 566, 123, 679, 137, 451, 667, + 125, 513, 120, 515, 86, 140, 140, 120, 256, 123, + 137, 679, 23, 24, 25, 26, 27, 86, 530, 267, + 667, 86, 534, 535, 536, 537, 538, 480, 137, 86, + 137, 123, 679, 123, 149, 140, 548, 21, 627, 123, + 136, 630, 131, 124, 148, 660, 660, 124, 136, 125, + 86, 786, 124, 136, 566, 738, 57, 39, 39, 12, + 4, 744, 123, 136, 57, 129, 122, 137, 136, 124, + 738, 660, 125, 144, 322, 124, 744, 530, 124, 730, + 123, 534, 535, 536, 537, 538, 144, 137, 125, 137, + 137, 738, 775, 124, 683, 136, 125, 744, 125, 123, + 123, 136, 4, 5, 6, 124, 8, 775, 10, 638, + 136, 126, 126, 566, 121, 627, 128, 19, 630, 4, + 124, 143, 124, 652, 149, 39, 136, 639, 775, 137, + 136, 33, 137, 121, 137, 126, 665, 126, 136, 387, + 119, 126, 671, 715, 136, 140, 126, 395, 660, 126, + 398, 147, 126, 136, 726, 124, 124, 710, 136, 124, + 62, 136, 103, 136, 124, 137, 137, 123, 3, 136, + 136, 269, 136, 124, 627, 136, 78, 630, 136, 748, + 841, 429, 691, 630, 627, 714, 252, 660, 275, 737, + 776, 18, 777, 765, 32, 74, 53, 70, 88, 404, + 762, 790, 256, 715, 638, 548, 11, 109, 241, 714, + 49, 44, 496, 499, 726, 476, -1, 679, -1, -1, + 349, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 480, 762, 763, 764, 138, -1, -1, -1, + 769, -1, 771, -1, -1, -1, 148, 149, 777, 778, + -1, -1, -1, 765, -1, -1, -1, 786, -1, -1, + -1, -1, 715, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 726, -1, -1, 805, 806, 790, -1, + -1, -1, 530, -1, -1, -1, 534, 535, 536, 537, + 538, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 765, -1, -1, -1, -1, -1, 566, 4, + 5, 6, -1, 8, -1, 10, 855, -1, -1, 858, + -1, -1, -1, -1, 19, -1, 21, 790, 23, 24, + 25, 26, 27, 28, 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, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, -1, -1, -1, 123, -1, + -1, -1, 127, -1, -1, -1, -1, 132, -1, -1, + -1, 136, -1, 138, -1, 140, -1, -1, -1, -1, + -1, -1, -1, 148, 149, -1, -1, 715, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 726, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 768, 4, 5, 6, -1, 8, -1, - 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, - -1, 21, -1, -1, -1, -1, -1, 792, 28, 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, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, -1, -1, 123, 124, -1, -1, 127, -1, 4, - 5, 6, 132, 8, -1, 10, 136, -1, 138, -1, - 140, -1, -1, -1, 19, -1, 21, -1, 148, 149, - -1, -1, -1, -1, 29, 30, 31, -1, 33, -1, - -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, - 45, 46, 47, 48, -1, -1, 51, 52, 53, -1, - -1, 56, -1, -1, -1, -1, 61, 62, 63, 64, - 65, 66, 67, -1, -1, -1, -1, 72, 73, -1, - 75, -1, 77, -1, 79, -1, -1, 82, 83, 84, - 85, -1, 87, -1, 89, -1, -1, -1, 93, -1, - 95, 96, 97, 98, 99, 100, 101, -1, -1, 104, - -1, 106, 107, 108, 109, 110, -1, -1, -1, 114, - 115, 116, 117, 118, 119, -1, -1, -1, 123, -1, - 125, -1, 127, 4, 5, 6, -1, 8, -1, 10, - -1, -1, -1, 138, -1, -1, -1, -1, 19, -1, - 21, -1, -1, 148, 149, -1, -1, -1, 29, 30, - 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, - 41, -1, -1, -1, -1, -1, 47, 48, -1, -1, - 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, - 61, 62, 63, 64, 65, 66, 67, -1, -1, -1, - -1, 72, 73, -1, 75, -1, 77, -1, 79, -1, - -1, 82, 83, 84, 85, -1, 87, -1, 89, -1, - -1, -1, 93, -1, 95, 96, 97, 98, 99, 100, - 101, -1, -1, 104, -1, 106, 107, 108, 109, 110, - -1, -1, -1, 114, 115, 116, 117, 118, 119, -1, - 121, -1, -1, -1, 125, -1, 127, 4, 5, 6, - -1, 8, -1, 10, -1, -1, -1, 138, -1, -1, - -1, -1, 19, -1, 21, -1, -1, 148, 149, -1, - -1, -1, 29, 30, 31, -1, 33, -1, -1, 36, - 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, - 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, - -1, -1, -1, -1, 61, 62, 63, 64, 65, 66, - 67, -1, -1, -1, -1, 72, 73, -1, 75, -1, - 77, -1, 79, -1, -1, 82, 83, 84, 85, -1, - 87, -1, 89, -1, -1, -1, 93, -1, 95, 96, - 97, 98, 99, 100, 101, -1, -1, 104, -1, 106, - 107, 108, 109, 110, -1, -1, -1, 114, 115, 116, - 117, 118, 119, -1, -1, -1, -1, -1, 125, -1, - 127, 4, 5, 6, -1, 8, -1, 10, -1, -1, - -1, 138, -1, -1, -1, -1, 19, -1, 21, -1, - -1, 148, 149, -1, -1, -1, 29, -1, 31, -1, - 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, - -1, -1, -1, -1, 47, 48, -1, -1, 51, 52, - -1, -1, -1, 56, -1, -1, -1, -1, 61, 62, - 63, 64, 65, 66, 67, -1, -1, -1, -1, 72, - 73, -1, 75, -1, 77, -1, 79, -1, -1, 82, - 83, 84, 85, -1, 87, -1, 89, -1, -1, -1, - 93, -1, 95, 96, 97, 98, 99, 100, 101, -1, - -1, 104, -1, 106, 107, 108, 109, 110, -1, -1, - -1, 114, 115, 116, 117, 118, 119, -1, -1, -1, - -1, -1, 125, -1, 127, 4, 5, 6, -1, 8, - -1, 10, -1, -1, -1, 138, -1, -1, -1, -1, - 19, -1, 21, -1, -1, 148, 149, -1, -1, -1, - 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, - 39, 40, 41, -1, -1, -1, -1, 46, 47, 48, - -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, - -1, -1, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, - -1, -1, -1, 82, 83, 84, 85, -1, 87, 88, - -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, - 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, - 109, 110, -1, -1, -1, 114, 115, 116, 117, 118, - 119, -1, -1, -1, 123, -1, -1, -1, 127, -1, - 4, 5, 6, 132, 8, -1, 10, -1, -1, 138, - -1, 140, -1, -1, -1, 19, -1, 21, -1, 148, - 149, -1, -1, -1, -1, 29, -1, 31, -1, 33, - -1, -1, 36, 37, 38, 39, 40, 41, -1, -1, - -1, -1, 46, 47, 48, -1, -1, 51, 52, -1, - -1, -1, 56, -1, -1, -1, -1, 61, 62, -1, - 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, - -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, - 84, 85, -1, 87, 88, -1, -1, -1, -1, 93, - -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, - 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, - 114, 115, 116, 117, 118, 119, -1, -1, -1, 123, - -1, 4, -1, 127, -1, -1, -1, -1, 132, -1, - -1, -1, -1, -1, 138, -1, 140, -1, 21, -1, - -1, -1, -1, -1, 148, 149, 29, -1, 31, -1, - 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, - -1, -1, -1, -1, 47, 48, -1, -1, 51, 52, - -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, - -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, - 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, - 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, - 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, - -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, -1, 4, - 5, 6, -1, 8, 127, 10, -1, 4, 5, 6, - -1, 8, -1, 10, 19, 138, -1, -1, -1, -1, - -1, -1, 19, -1, 29, 148, 149, -1, 33, -1, - -1, 4, 5, 6, 39, 8, 33, 10, -1, -1, - -1, 46, -1, -1, -1, -1, 19, -1, 21, -1, - -1, -1, -1, -1, -1, -1, 29, 62, -1, -1, - 33, -1, -1, -1, -1, 62, 39, -1, -1, -1, - -1, -1, -1, 46, -1, -1, -1, -1, -1, -1, - -1, 78, -1, 88, -1, -1, -1, -1, -1, 62, - -1, -1, -1, -1, -1, -1, 4, 5, 6, -1, - 8, -1, 10, -1, 109, 110, -1, -1, -1, -1, - -1, 19, 109, -1, 119, 88, -1, -1, 123, 124, - -1, 29, -1, -1, -1, 33, -1, 132, -1, -1, - -1, 39, -1, 138, -1, 140, 109, 110, 46, -1, - -1, 138, -1, 148, 149, -1, 119, -1, -1, -1, - 123, 148, 149, -1, 62, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, 138, -1, 140, -1, -1, - -1, -1, -1, -1, -1, 148, 149, -1, -1, -1, - 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 109, 110, -1, -1, -1, -1, -1, -1, -1, - -1, 119, -1, -1, -1, 123, -1, -1, -1, -1, - -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, - 138, -1, 140, -1, -1, -1, -1, -1, -1, -1, - 148, 149, 21, -1, 23, 24, 25, 26, 27, -1, - 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, - -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, - -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, - -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, - -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, - -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, - -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, - 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, - -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, - -1, 21, -1, -1, -1, -1, -1, -1, 127, 29, - -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, - 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, - -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, - -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, - -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 765, -1, 4, + 5, 6, -1, 8, -1, 10, -1, -1, -1, -1, + -1, -1, -1, -1, 19, -1, 21, -1, -1, -1, + -1, -1, 790, 28, 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, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, -1, -1, -1, 123, 124, + -1, -1, 127, -1, 4, 5, 6, 132, 8, -1, + 10, 136, -1, 138, -1, 140, -1, -1, -1, 19, + -1, 21, -1, 148, 149, -1, -1, -1, -1, 29, + 30, 31, -1, 33, -1, -1, 36, 37, 38, -1, + 40, 41, -1, -1, -1, 45, 46, 47, 48, -1, + -1, 51, 52, 53, -1, -1, 56, -1, -1, -1, + -1, 61, 62, 63, 64, 65, 66, 67, -1, -1, + -1, -1, 72, 73, -1, 75, -1, 77, -1, 79, + -1, -1, 82, 83, 84, 85, -1, 87, -1, 89, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, - -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, - 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, - 120, -1, -1, 123, 21, -1, -1, 127, -1, -1, - -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, - 37, 38, -1, 40, 41, -1, -1, -1, 148, 149, - 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, - -1, 58, -1, -1, 61, -1, -1, 64, 65, 66, - 67, -1, 69, -1, -1, -1, 73, -1, 75, -1, - 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, - 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, - 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, - 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, - 117, 118, -1, 21, -1, -1, -1, -1, -1, -1, - 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, + 100, 101, -1, -1, 104, -1, 106, 107, 108, 109, + 110, -1, -1, -1, 114, 115, 116, 117, 118, 119, + -1, -1, -1, 123, -1, 125, -1, 127, 4, 5, + 6, -1, 8, -1, 10, -1, -1, -1, 138, -1, + -1, -1, -1, 19, -1, 21, -1, -1, 148, 149, + -1, -1, -1, 29, 30, 31, -1, 33, -1, -1, + 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, + -1, 47, 48, -1, -1, 51, 52, -1, -1, -1, + 56, -1, -1, -1, -1, 61, 62, 63, 64, 65, + 66, 67, -1, -1, -1, -1, 72, 73, -1, 75, + -1, 77, -1, 79, -1, -1, 82, 83, 84, 85, + -1, 87, -1, 89, -1, -1, -1, 93, -1, 95, + 96, 97, 98, 99, 100, 101, -1, -1, 104, -1, + 106, 107, 108, 109, 110, -1, -1, -1, 114, 115, + 116, 117, 118, 119, -1, 121, -1, -1, -1, 125, + -1, 127, 4, 5, 6, -1, 8, -1, 10, -1, + -1, -1, 138, -1, -1, -1, -1, 19, -1, 21, + -1, -1, 148, 149, -1, -1, -1, 29, 30, 31, + -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, + -1, -1, -1, -1, -1, 47, 48, -1, -1, 51, + 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, + 62, 63, 64, 65, 66, 67, -1, -1, -1, -1, + 72, 73, -1, 75, -1, 77, -1, 79, -1, -1, + 82, 83, 84, 85, -1, 87, -1, 89, -1, -1, + -1, 93, -1, 95, 96, 97, 98, 99, 100, 101, + -1, -1, 104, -1, 106, 107, 108, 109, 110, -1, + -1, -1, 114, 115, 116, 117, 118, 119, -1, -1, + -1, -1, -1, 125, -1, 127, 4, 5, 6, -1, + 8, -1, 10, -1, -1, -1, 138, -1, -1, -1, + -1, 19, -1, 21, -1, -1, 148, 149, -1, -1, + -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, - 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, - -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, - -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, - -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, - -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, - 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, - 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, - 118, -1, 21, -1, -1, 123, -1, -1, -1, 127, + 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, + -1, -1, -1, 61, 62, 63, 64, 65, 66, 67, + -1, -1, -1, -1, 72, 73, -1, 75, -1, 77, + -1, 79, -1, -1, 82, 83, 84, 85, -1, 87, + -1, 89, -1, -1, -1, 93, -1, 95, 96, 97, + 98, 99, 100, 101, -1, -1, 104, -1, 106, 107, + 108, 109, 110, -1, -1, -1, 114, 115, 116, 117, + 118, 119, -1, -1, -1, -1, -1, 125, -1, 127, + 4, 5, 6, -1, 8, -1, 10, -1, -1, -1, + 138, -1, -1, -1, -1, 19, -1, 21, -1, -1, + 148, 149, -1, -1, -1, 29, -1, 31, -1, 33, + -1, -1, 36, 37, 38, 39, 40, 41, -1, -1, + -1, -1, 46, 47, 48, -1, -1, 51, 52, -1, + -1, -1, 56, -1, -1, -1, -1, 61, 62, -1, + 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, + -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, + 84, 85, -1, 87, 88, -1, -1, -1, -1, 93, + -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, + 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, + 114, 115, 116, 117, 118, 119, -1, -1, -1, 123, + -1, -1, -1, 127, -1, 4, 5, 6, 132, 8, + -1, 10, -1, -1, 138, -1, 140, -1, -1, -1, + 19, -1, 21, -1, 148, 149, -1, -1, -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, - -1, 40, 41, 42, -1, -1, -1, -1, 47, 48, - 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, - -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, + 39, 40, 41, -1, -1, -1, -1, 46, 47, 48, + -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, + -1, -1, 61, 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, - -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, + -1, -1, -1, 82, 83, 84, 85, -1, 87, 88, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, - -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, - -1, 21, -1, -1, -1, -1, -1, -1, 127, 29, - -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, - 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, - -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, - -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, - -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, - -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, - -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, - 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, - 120, -1, -1, -1, 21, -1, -1, 127, -1, -1, - -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, - 37, 38, -1, 40, 41, -1, -1, -1, 148, 149, - 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, - -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, - 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, - 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, - 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, - 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, - 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, - 117, 118, -1, 21, -1, -1, -1, -1, -1, -1, - 127, 29, 129, 31, -1, 33, -1, -1, 36, 37, + 109, 110, -1, -1, -1, 114, 115, 116, 117, 118, + 119, -1, -1, -1, 123, -1, 4, -1, 127, -1, + -1, -1, -1, 132, -1, -1, -1, -1, -1, 138, + -1, 140, -1, 21, -1, -1, -1, -1, -1, 148, + 149, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, - 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, + 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, - 118, -1, 21, -1, -1, -1, -1, -1, -1, 127, - 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, - -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, - 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, - -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, - -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, - -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, - -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, - 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, - -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, - -1, 21, -1, -1, -1, -1, -1, -1, 127, 29, - -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, - 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, - -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, - -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, - -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, - -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, - -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, - 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, - -1, -1, -1, -1, -1, -1, -1, 127, -1, -1, + 118, -1, -1, -1, 4, 5, 6, -1, 8, 127, + 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, + 138, -1, -1, -1, -1, -1, -1, -1, -1, 29, + 148, 149, -1, 33, -1, -1, 4, 5, 6, 39, + 8, -1, 10, -1, -1, -1, 46, -1, -1, -1, + -1, 19, -1, 21, -1, -1, -1, -1, -1, -1, + -1, 29, 62, -1, -1, 33, -1, -1, -1, -1, + -1, 39, -1, -1, -1, -1, -1, -1, 46, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 88, -1, + -1, -1, -1, -1, 62, -1, -1, -1, -1, -1, + -1, 4, 5, 6, -1, 8, -1, 10, -1, 109, + 110, -1, -1, -1, -1, -1, 19, -1, -1, 119, + 88, -1, -1, 123, 124, -1, 29, -1, -1, -1, + 33, -1, 132, -1, -1, -1, 39, -1, 138, -1, + 140, 109, 110, 46, -1, -1, -1, -1, 148, 149, + -1, 119, -1, -1, -1, 123, -1, -1, -1, 62, + -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, + 138, -1, 140, -1, -1, -1, -1, -1, -1, -1, + 148, 149, -1, -1, -1, 88, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 109, 110, -1, -1, + -1, -1, -1, -1, -1, -1, 119, -1, -1, -1, + 123, -1, -1, -1, -1, -1, -1, -1, -1, 132, + -1, -1, -1, -1, -1, 138, -1, 140, -1, -1, + -1, -1, -1, -1, -1, 148, 149, 21, -1, 23, + 24, 25, 26, 27, -1, 29, -1, 31, -1, 33, + -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, + -1, -1, -1, 47, 48, -1, -1, 51, 52, -1, + -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, + 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, + -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, + 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, + -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, + 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, + 114, 115, 116, 117, 118, -1, 21, -1, -1, -1, + -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, + -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, + -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, + -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, + 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, + 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, + 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, + 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, + -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, + 115, 116, 117, 118, -1, 120, -1, -1, 123, 21, + -1, -1, 127, -1, -1, -1, -1, 29, -1, 31, + -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, + -1, -1, -1, 148, 149, 47, 48, -1, -1, 51, + 52, -1, -1, -1, 56, -1, 58, -1, -1, 61, + -1, -1, 64, 65, 66, 67, -1, 69, -1, -1, + -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, + 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, + -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, + -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, + -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, + -1, -1, -1, -1, -1, 127, 29, -1, 31, -1, + 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, + -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, + -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, + -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, + 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, + 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, + 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, + -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, + -1, 114, 115, 116, 117, 118, -1, 21, -1, -1, + 123, -1, -1, -1, 127, 29, -1, 31, -1, 33, + -1, -1, 36, 37, 38, -1, 40, 41, 42, -1, + -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, + -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, + 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, + -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, + 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, + -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, + 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, + 114, 115, 116, 117, 118, -1, 21, -1, -1, -1, + -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, + -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, + -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, + -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, + 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, + 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, + 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, + 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, + -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, + 115, 116, 117, 118, -1, 120, -1, -1, -1, 21, + -1, -1, 127, -1, -1, -1, -1, 29, -1, 31, + -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, + -1, -1, -1, 148, 149, 47, 48, -1, -1, 51, + 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, + -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, + -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, + 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, + -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, + -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, + -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, + -1, -1, -1, -1, -1, 127, 29, 129, 31, -1, + 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, + -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, + -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, + -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, + 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, + 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, + 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, + -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, + -1, 114, 115, 116, 117, 118, -1, 21, -1, -1, + -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, + -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, + -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, + -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, + 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, + -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, + 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, + -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, + 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, + 114, 115, 116, 117, 118, -1, 21, -1, -1, -1, + -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, + -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, + -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, + -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, + 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, + 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, + 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, + 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, + -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, + 115, 116, 117, 118, -1, -1, -1, -1, -1, -1, + -1, -1, 127, -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, 148, 149, - 23, 24, 25, 26, 27, 28, 29, 30, -1, 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, 62, - 63, -1, -1, -1, -1, 68, 69, 70, 71, 72, - 73, 74, 75, 76, -1, 78, 79, 80, 81, -1, - 83, -1, 85, 86, 87, 88, 89, 90, 91, 92, - -1, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, -1, 105, -1, 107, 108, 109, 110, 111, 112, - 113, -1, -1, -1, -1, -1, 119, -1, -1, -1, + -1, -1, -1, 148, 149, 23, 24, 25, 26, 27, + 28, 29, 30, -1, 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, 62, 63, -1, -1, -1, -1, + 68, 69, 70, 71, 72, 73, 74, 75, 76, -1, + 78, 79, 80, 81, -1, 83, -1, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, -1, 105, -1, 107, + 108, 109, 110, 111, 112, 113, -1, -1, -1, -1, + -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 136, -1, + -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, + 148, 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, 62, 63, -1, -1, -1, -1, 68, 69, 70, + 71, 72, 73, 74, 75, 76, -1, 78, 79, 80, + 81, -1, 83, -1, 85, 86, 87, 88, 89, 90, + 91, 92, -1, 94, 95, 96, 97, 98, 99, 100, + 101, 102, 103, -1, 105, -1, 107, 108, 109, 110, + 111, 112, 113, -1, -1, -1, -1, -1, 119, -1, + -1, -1, -1, 124, -1, -1, 127, -1, -1, -1, + -1, -1, -1, -1, -1, 136, -1, -1, -1, -1, + -1, -1, -1, -1, 28, 29, 30, 148, 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, 62, 63, + -1, -1, -1, -1, 68, 69, 70, 71, 72, 73, + 74, 75, 76, -1, 78, 79, 80, 81, -1, 83, + -1, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + -1, 105, -1, 107, 108, 109, 110, 111, 112, 113, + -1, -1, -1, -1, -1, 119, -1, -1, -1, -1, + -1, -1, -1, 127, 128, -1, -1, -1, -1, -1, + -1, -1, 136, -1, -1, -1, -1, -1, -1, -1, + -1, 28, 29, 30, 148, 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, 62, 63, -1, -1, -1, + -1, 68, 69, 70, 71, 72, 73, 74, 75, 76, + -1, 78, 79, 80, 81, -1, 83, -1, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, -1, 105, -1, + 107, 108, 109, 110, 111, 112, 113, -1, -1, -1, + -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, + 127, -1, -1, -1, -1, -1, -1, -1, -1, 136, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 136, -1, -1, -1, -1, -1, -1, - -1, -1, 28, 29, 30, 148, 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, 62, 63, -1, -1, - -1, -1, 68, 69, 70, 71, 72, 73, 74, 75, - 76, -1, 78, 79, 80, 81, -1, 83, -1, 85, - 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, -1, 105, - -1, 107, 108, 109, 110, 111, 112, 113, -1, -1, - -1, -1, -1, 119, -1, -1, -1, -1, 124, -1, - -1, 127, -1, -1, -1, -1, -1, -1, -1, -1, - 136, -1, -1, -1, -1, -1, -1, -1, -1, 28, - 29, 30, 148, 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, 62, 63, -1, -1, -1, -1, 68, - 69, 70, 71, 72, 73, 74, 75, 76, -1, 78, - 79, 80, 81, -1, 83, -1, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, -1, 105, -1, 107, 108, - 109, 110, 111, 112, 113, -1, -1, -1, -1, -1, - 119, -1, -1, -1, -1, -1, -1, -1, 127, 128, - -1, -1, -1, -1, -1, -1, -1, 136, -1, -1, - -1, -1, -1, -1, -1, -1, 28, 29, 30, 148, - 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, - 62, 63, -1, -1, -1, -1, 68, 69, 70, 71, - 72, 73, 74, 75, 76, -1, 78, 79, 80, 81, - -1, 83, -1, 85, 86, 87, 88, 89, 90, 91, - 92, -1, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, -1, 105, -1, 107, 108, 109, 110, 111, - 112, 113, -1, -1, -1, -1, -1, 119, -1, -1, - -1, -1, -1, -1, -1, 127, -1, -1, -1, -1, - -1, -1, -1, -1, 136, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 148 + -1, 148 }; const unsigned short int asn1_parser::yystos_[] = { - 0, 148, 153, 154, 225, 376, 0, 153, 50, 123, + 0, 148, 153, 154, 225, 373, 0, 153, 50, 123, 226, 227, 228, 15, 233, 4, 149, 229, 230, 231, - 232, 309, 374, 132, 314, 74, 34, 58, 69, 234, - 124, 229, 125, 139, 315, 105, 105, 105, 60, 235, - 231, 16, 17, 317, 139, 316, 70, 120, 126, 317, - 132, 35, 316, 59, 236, 237, 30, 148, 149, 238, - 245, 246, 247, 373, 375, 224, 71, 239, 141, 141, + 232, 308, 371, 132, 313, 74, 34, 58, 69, 234, + 124, 229, 125, 139, 314, 105, 105, 105, 60, 235, + 231, 16, 17, 316, 139, 315, 70, 120, 126, 316, + 132, 35, 315, 59, 236, 237, 30, 148, 149, 238, + 245, 246, 247, 370, 372, 224, 71, 239, 141, 141, 136, 123, 55, 240, 241, 242, 245, 21, 148, 159, 195, 199, 200, 201, 202, 203, 204, 248, 249, 258, - 259, 260, 373, 375, 377, 246, 124, 141, 242, 63, + 259, 260, 370, 372, 374, 246, 124, 141, 242, 63, 123, 205, 248, 21, 29, 31, 33, 36, 37, 38, 40, 41, 47, 48, 51, 52, 56, 61, 64, 65, 66, 67, 73, 75, 77, 82, 83, 84, 85, 87, @@ -8647,76 +8629,75 @@ namespace yy { 110, 114, 115, 116, 117, 118, 120, 127, 148, 158, 183, 184, 193, 194, 198, 205, 210, 211, 212, 213, 250, 252, 256, 261, 262, 270, 272, 276, 280, 281, - 284, 285, 286, 291, 292, 293, 294, 298, 299, 300, - 301, 305, 312, 313, 318, 319, 320, 321, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 373, 374, 376, - 205, 261, 373, 376, 205, 243, 376, 148, 149, 156, - 157, 158, 206, 207, 208, 209, 247, 261, 373, 376, - 377, 148, 156, 158, 376, 102, 102, 123, 90, 123, - 86, 123, 68, 102, 86, 101, 123, 125, 332, 356, - 86, 123, 332, 356, 42, 156, 160, 161, 261, 15, - 302, 137, 120, 120, 261, 137, 123, 254, 120, 332, + 284, 285, 286, 290, 291, 292, 293, 297, 298, 299, + 300, 304, 311, 312, 317, 318, 319, 320, 322, 323, + 324, 325, 326, 327, 328, 329, 330, 370, 371, 373, + 205, 261, 370, 373, 205, 243, 373, 148, 149, 156, + 157, 158, 206, 207, 208, 209, 247, 261, 370, 373, + 374, 148, 156, 158, 373, 102, 102, 123, 90, 123, + 86, 123, 68, 102, 86, 101, 123, 125, 331, 355, + 86, 123, 331, 355, 42, 156, 160, 161, 261, 15, + 301, 137, 120, 120, 261, 137, 123, 254, 120, 331, 58, 69, 261, 137, 129, 137, 261, 120, 137, 120, - 123, 244, 306, 375, 124, 136, 140, 137, 120, 137, - 123, 263, 295, 296, 297, 374, 121, 274, 277, 278, - 279, 374, 156, 273, 274, 374, 261, 263, 374, 332, - 44, 121, 124, 263, 287, 288, 289, 290, 4, 5, - 6, 8, 10, 19, 30, 33, 45, 46, 53, 62, - 63, 72, 79, 89, 100, 109, 119, 123, 125, 138, - 148, 149, 196, 215, 216, 218, 223, 261, 271, 275, - 322, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 346, 347, 348, 349, 350, 351, 352, 354, 356, - 357, 358, 359, 369, 370, 86, 86, 261, 263, 124, - 287, 86, 86, 123, 140, 32, 94, 113, 304, 23, - 24, 25, 26, 27, 164, 165, 196, 261, 120, 165, - 5, 6, 8, 10, 33, 39, 46, 88, 119, 123, - 140, 148, 149, 156, 198, 214, 251, 253, 255, 257, - 261, 264, 265, 266, 267, 271, 275, 314, 322, 375, - 376, 123, 268, 261, 261, 165, 373, 261, 21, 373, - 120, 33, 148, 149, 198, 264, 265, 373, 376, 160, - 4, 251, 307, 308, 309, 310, 311, 374, 207, 247, - 148, 377, 123, 183, 185, 186, 187, 189, 282, 283, - 374, 124, 136, 261, 131, 371, 124, 136, 125, 124, - 136, 86, 371, 49, 88, 124, 136, 57, 343, 39, - 261, 39, 332, 265, 12, 43, 44, 121, 197, 336, - 335, 4, 123, 371, 136, 111, 144, 344, 76, 145, - 345, 343, 261, 122, 129, 261, 263, 261, 263, 124, - 261, 263, 261, 263, 23, 24, 27, 162, 163, 166, - 169, 171, 172, 174, 4, 251, 303, 137, 265, 265, - 265, 269, 125, 254, 124, 136, 140, 144, 136, 144, - 137, 335, 265, 137, 137, 251, 307, 124, 307, 125, - 28, 29, 30, 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, 62, 63, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 78, 79, 80, 81, 83, 85, - 86, 87, 88, 89, 90, 91, 92, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 105, 107, 108, - 109, 110, 111, 112, 113, 119, 136, 148, 164, 182, - 188, 190, 191, 192, 261, 265, 376, 378, 124, 136, - 125, 121, 263, 251, 261, 275, 372, 121, 279, 251, - 275, 274, 261, 136, 33, 148, 149, 348, 121, 290, - 346, 123, 53, 265, 332, 360, 123, 361, 362, 363, - 136, 124, 136, 126, 143, 219, 220, 126, 121, 339, - 341, 78, 129, 348, 353, 355, 49, 88, 156, 167, - 164, 261, 156, 124, 136, 128, 164, 124, 265, 4, - 265, 265, 265, 265, 265, 375, 124, 124, 310, 192, - 136, 124, 191, 137, 283, 4, 251, 136, 140, 371, - 126, 126, 121, 289, 371, 156, 209, 217, 261, 39, - 121, 364, 365, 374, 336, 121, 137, 222, 374, 124, - 136, 136, 355, 261, 49, 88, 173, 49, 88, 170, - 112, 168, 49, 88, 175, 119, 176, 163, 126, 126, - 147, 126, 126, 297, 265, 136, 136, 136, 140, 124, - 265, 136, 124, 136, 332, 366, 367, 136, 137, 221, - 137, 220, 336, 185, 348, 170, 103, 124, 136, 278, - 121, 289, 123, 185, 265, 364, 364, 28, 88, 92, - 368, 336, 221, 222, 374, 123, 155, 136, 136, 265, - 124, 29, 33, 36, 37, 38, 39, 40, 41, 46, - 47, 48, 51, 52, 56, 61, 62, 73, 75, 83, - 85, 87, 88, 95, 96, 97, 98, 99, 107, 108, - 109, 110, 119, 127, 148, 177, 178, 179, 180, 181, - 182, 121, 177, 124, 178, 164, 182, 136, 128, 289, - 136 + 123, 244, 305, 372, 124, 136, 140, 137, 120, 137, + 123, 263, 294, 295, 296, 371, 121, 274, 277, 278, + 279, 371, 156, 273, 274, 371, 261, 263, 371, 331, + 44, 121, 124, 263, 287, 288, 289, 4, 5, 6, + 8, 10, 19, 30, 33, 45, 46, 53, 62, 63, + 72, 79, 89, 100, 109, 119, 123, 125, 138, 148, + 149, 196, 215, 216, 218, 223, 261, 271, 275, 321, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 345, 346, 347, 348, 349, 350, 351, 353, 355, 356, + 357, 358, 366, 367, 86, 86, 261, 263, 124, 287, + 86, 86, 123, 140, 32, 94, 113, 303, 23, 24, + 25, 26, 27, 164, 165, 196, 261, 120, 165, 5, + 6, 8, 10, 33, 39, 46, 88, 119, 123, 140, + 148, 149, 156, 198, 214, 251, 253, 255, 257, 261, + 264, 265, 266, 267, 271, 275, 313, 321, 372, 373, + 123, 268, 261, 261, 165, 370, 261, 21, 370, 120, + 33, 148, 149, 198, 264, 265, 370, 373, 160, 4, + 251, 306, 307, 308, 309, 310, 371, 207, 247, 148, + 374, 123, 183, 185, 186, 187, 189, 282, 283, 371, + 124, 136, 261, 131, 368, 124, 136, 125, 124, 136, + 86, 368, 49, 88, 124, 136, 57, 342, 39, 261, + 39, 331, 265, 12, 43, 44, 121, 197, 335, 334, + 4, 123, 368, 136, 111, 144, 343, 76, 145, 344, + 342, 261, 122, 129, 261, 263, 261, 263, 124, 261, + 263, 261, 263, 23, 24, 27, 162, 163, 166, 169, + 171, 172, 174, 4, 251, 302, 137, 265, 265, 265, + 269, 125, 254, 124, 136, 140, 144, 136, 144, 137, + 334, 265, 137, 137, 251, 306, 124, 306, 125, 28, + 29, 30, 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, 62, 63, 68, 69, 70, 71, 72, 73, + 74, 75, 76, 78, 79, 80, 81, 83, 85, 86, + 87, 88, 89, 90, 91, 92, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 105, 107, 108, 109, + 110, 111, 112, 113, 119, 136, 148, 164, 182, 188, + 190, 191, 192, 261, 265, 373, 375, 124, 136, 125, + 121, 263, 251, 261, 275, 369, 121, 279, 251, 275, + 274, 261, 136, 33, 148, 149, 347, 121, 289, 345, + 123, 53, 265, 331, 359, 123, 360, 136, 124, 136, + 126, 143, 219, 220, 126, 121, 338, 340, 78, 129, + 347, 352, 354, 49, 88, 156, 167, 164, 261, 156, + 124, 136, 128, 164, 124, 265, 4, 265, 265, 265, + 265, 265, 372, 124, 124, 309, 192, 136, 124, 191, + 137, 283, 4, 251, 136, 140, 368, 126, 126, 121, + 288, 368, 156, 209, 217, 261, 39, 121, 361, 362, + 371, 335, 121, 137, 222, 371, 124, 136, 136, 354, + 261, 49, 88, 173, 49, 88, 170, 112, 168, 49, + 88, 175, 119, 176, 163, 126, 126, 147, 126, 126, + 296, 265, 136, 136, 136, 140, 124, 265, 124, 136, + 124, 136, 331, 363, 364, 136, 137, 221, 137, 220, + 335, 185, 347, 170, 103, 124, 136, 278, 121, 288, + 123, 185, 265, 361, 361, 28, 88, 92, 365, 335, + 221, 222, 371, 123, 155, 136, 136, 265, 124, 29, + 33, 36, 37, 38, 39, 40, 41, 46, 47, 48, + 51, 52, 56, 61, 62, 73, 75, 83, 85, 87, + 88, 95, 96, 97, 98, 99, 107, 108, 109, 110, + 119, 127, 148, 177, 178, 179, 180, 181, 182, 121, + 177, 124, 178, 164, 182, 136, 128, 288, 136 }; const unsigned short int @@ -8752,33 +8733,33 @@ namespace yy { 267, 267, 268, 269, 269, 270, 271, 271, 272, 272, 273, 273, 274, 274, 275, 275, 276, 277, 277, 277, 277, 278, 278, 279, 279, 280, 281, 281, 282, 282, - 283, 283, 284, 285, 286, 286, 287, 288, 288, 288, - 288, 288, 288, 288, 288, 288, 289, 289, 290, 290, - 290, 290, 291, 291, 292, 292, 293, 293, 294, 295, - 296, 296, 296, 297, 297, 298, 299, 300, 300, 300, - 301, 302, 302, 303, 303, 304, 304, 304, 304, 305, - 306, 306, 307, 307, 308, 308, 308, 309, 310, 310, - 311, 312, 313, 314, 315, 316, 316, 317, 317, 318, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 327, - 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, - 328, 328, 328, 329, 330, 330, 331, 331, 331, 331, - 331, 331, 331, 331, 332, 333, 333, 334, 335, 335, - 335, 336, 336, 337, 337, 338, 339, 339, 340, 341, - 341, 342, 343, 344, 344, 345, 345, 346, 346, 347, - 347, 347, 347, 347, 347, 347, 347, 347, 348, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 349, 350, - 351, 352, 352, 353, 353, 354, 354, 355, 355, 356, - 357, 358, 359, 359, 360, 361, 361, 362, 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 + 283, 283, 284, 285, 286, 286, 287, 287, 287, 287, + 287, 287, 287, 287, 287, 288, 288, 289, 289, 289, + 289, 290, 290, 291, 291, 292, 292, 293, 294, 295, + 295, 295, 296, 296, 297, 298, 299, 299, 299, 300, + 301, 301, 302, 302, 303, 303, 303, 303, 304, 305, + 305, 306, 306, 307, 307, 307, 308, 309, 309, 310, + 311, 312, 313, 314, 315, 315, 316, 316, 317, 318, + 319, 320, 321, 322, 323, 324, 325, 326, 326, 327, + 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, + 327, 327, 328, 329, 329, 330, 330, 330, 330, 330, + 330, 330, 330, 331, 332, 332, 333, 334, 334, 334, + 335, 335, 336, 336, 337, 338, 338, 339, 340, 340, + 341, 342, 343, 343, 344, 344, 345, 345, 346, 346, + 346, 346, 346, 346, 346, 346, 346, 347, 347, 347, + 347, 347, 347, 347, 347, 347, 347, 348, 349, 350, + 351, 351, 352, 352, 353, 353, 354, 354, 355, 356, + 357, 358, 358, 359, 360, 360, 360, 360, 361, 361, + 362, 363, 364, 364, 365, 365, 365, 365, 366, 367, + 368, 368, 369, 369, 369, 370, 371, 372, 373, 374, + 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, + 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, + 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, + 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, + 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, + 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, + 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, + 375, 375, 375, 375, 375, 375, 375 }; const unsigned char @@ -8814,25 +8795,25 @@ namespace yy { 3, 3, 3, 1, 2, 1, 1, 1, 1, 4, 1, 3, 4, 4, 1, 2, 4, 1, 4, 6, 2, 1, 3, 1, 1, 1, 2, 5, 1, 3, - 4, 4, 2, 1, 3, 4, 1, 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, + 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, 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, 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, 2, 1, - 3, 1, 2, 1, 2, 1, 1, 1, 1, 2, - 1, 2, 3, 3, 1, 1, 1, 3, 5, 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, 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, 1, 1, 1, 1, @@ -8840,7 +8821,7 @@ 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 }; @@ -8922,8 +8903,8 @@ namespace yy { "SignedNumber", "EnumeratedType", "Enumerations", "Enumeration", "EnumerationItem", "RealType", "BitStringType", "NamedBitList", "NamedBit", "OctetStringType", "NullType", "SequenceType", - "ComponentTypeLists", "RootComponentTypeList", "ComponentTypeList", - "ComponentType", "SequenceOfType", "SetType", "SetOfType", "ChoiceType", + "ComponentTypeLists", "ComponentTypeList", "ComponentType", + "SequenceOfType", "SetType", "SetOfType", "ChoiceType", "AlternativeTypeLists", "RootAlternativeTypeList", "AlternativeTypeList", "SelectionType", "PrefixedType", "TaggedType", "Tag", "EncodingReference", "ClassNumber", "Class", "ObjectIdentifierType", @@ -8942,75 +8923,74 @@ namespace yy { "ValueRange", "LowerEndpoint", "UpperEndpoint", "LowerEndValue", "UpperEndValue", "SizeConstraint", "TypeConstraint", "PermittedAlphabet", "InnerTypeConstraints", "SingleTypeConstraint", - "MultipleTypeConstraints", "FullSpecification", "PartialSpecification", - "TypeConstraints", "NamedConstraint", "ComponentConstraint", - "ValueConstraint", "PresenceConstraint", "PatternConstraint", - "PropertySettings", "ExceptionSpec", "ExceptionIdentification", - "typereference", "identifier", "valuereference", "modulereference", - "objectclassreference", "word", YY_NULLPTR + "MultipleTypeConstraints", "TypeConstraints", "NamedConstraint", + "ComponentConstraint", "ValueConstraint", "PresenceConstraint", + "PatternConstraint", "PropertySettings", "ExceptionSpec", + "ExceptionIdentification", "typereference", "identifier", + "valuereference", "modulereference", "objectclassreference", "word", YY_NULLPTR }; #if YYDEBUG const unsigned short int asn1_parser::yyrline_[] = { - 0, 309, 309, 310, 313, 328, 331, 332, 333, 336, - 339, 340, 343, 347, 348, 352, 355, 356, 359, 360, - 361, 362, 363, 366, 367, 368, 369, 370, 373, 374, - 377, 380, 381, 382, 385, 386, 389, 392, 393, 394, - 397, 400, 403, 404, 405, 408, 411, 412, 413, 419, - 420, 423, 424, 427, 428, 431, 434, 437, 438, 439, - 442, 443, 446, 447, 450, 456, 457, 462, 463, 466, - 469, 472, 475, 476, 479, 480, 483, 484, 488, 489, - 492, 495, 499, 502, 503, 504, 505, 506, 515, 516, - 522, 524, 526, 528, 530, 535, 539, 543, 547, 551, - 559, 563, 565, 569, 571, 575, 576, 579, 580, 595, - 607, 616, 623, 624, 628, 629, 632, 633, 634, 637, - 640, 641, 643, 644, 645, 648, 650, 654, 655, 658, - 659, 662, 663, 666, 667, 670, 671, 672, 683, 691, - 698, 699, 700, 703, 706, 710, 711, 715, 716, 717, - 720, 723, 727, 728, 731, 733, 735, 737, 741, 742, - 745, 747, 751, 752, 753, 756, 757, 760, 762, 765, - 767, 770, 772, 776, 780, 784, 785, 786, 789, 791, - 795, 799, 801, 803, 812, 814, 818, 820, 822, 824, - 827, 829, 833, 834, 836, 842, 844, 847, 851, 854, - 858, 860, 863, 873, 876, 901, 905, 909, 913, 915, - 917, 919, 921, 926, 927, 928, 929, 930, 931, 932, - 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, - 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, - 953, 954, 955, 956, 959, 963, 965, 967, 969, 971, - 973, 975, 977, 979, 981, 983, 984, 986, 988, 990, - 994, 996, 998, 1000, 1002, 1004, 1008, 1010, 1014, 1015, - 1018, 1019, 1022, 1025, 1027, 1035, 1038, 1039, 1042, 1044, - 1048, 1050, 1054, 1056, 1060, 1062, 1066, 1070, 1073, 1076, - 1080, 1083, 1085, 1089, 1091, 1099, 1102, 1103, 1106, 1107, - 1110, 1111, 1125, 1128, 1131, 1133, 1141, 1145, 1147, 1149, - 1151, 1153, 1155, 1157, 1159, 1161, 1165, 1167, 1171, 1173, - 1175, 1177, 1188, 1190, 1194, 1196, 1200, 1202, 1206, 1210, - 1214, 1216, 1218, 1222, 1224, 1231, 1234, 1238, 1240, 1242, - 1246, 1250, 1251, 1254, 1256, 1259, 1261, 1263, 1265, 1275, - 1278, 1280, 1284, 1286, 1290, 1292, 1294, 1298, 1302, 1304, - 1307, 1311, 1323, 1326, 1332, 1335, 1336, 1339, 1340, 1343, - 1349, 1356, 1362, 1365, 1368, 1371, 1374, 1377, 1380, 1381, - 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, - 1394, 1395, 1396, 1400, 1403, 1405, 1409, 1411, 1413, 1415, - 1417, 1419, 1421, 1423, 1427, 1430, 1431, 1434, 1437, 1438, - 1439, 1442, 1443, 1446, 1447, 1450, 1453, 1454, 1457, 1460, - 1461, 1464, 1467, 1470, 1471, 1474, 1475, 1478, 1480, 1483, - 1484, 1485, 1486, 1487, 1488, 1489, 1490, 1491, 1497, 1499, - 1500, 1501, 1502, 1503, 1504, 1505, 1506, 1507, 1510, 1513, - 1516, 1519, 1520, 1523, 1524, 1527, 1528, 1531, 1532, 1535, - 1538, 1541, 1544, 1545, 1548, 1551, 1552, 1555, 1558, 1561, - 1562, 1565, 1568, 1571, 1572, 1575, 1576, 1577, 1578, 1581, - 1584, 1587, 1588, 1591, 1592, 1593, 1596, 1600, 1604, 1608, - 1612, 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623, 1624, - 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, - 1635, 1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, - 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, - 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, 1664, - 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, - 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, - 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692 + 0, 308, 308, 309, 312, 327, 330, 331, 332, 335, + 338, 339, 342, 346, 347, 351, 354, 355, 358, 359, + 360, 361, 362, 365, 366, 367, 368, 369, 372, 373, + 376, 379, 380, 381, 384, 385, 388, 391, 392, 393, + 396, 399, 402, 403, 404, 407, 410, 411, 412, 418, + 419, 422, 423, 426, 427, 430, 433, 436, 437, 438, + 441, 442, 445, 446, 449, 455, 456, 461, 462, 465, + 468, 471, 474, 475, 478, 479, 482, 483, 487, 488, + 491, 494, 498, 501, 502, 503, 504, 505, 514, 515, + 521, 523, 525, 527, 529, 534, 538, 542, 546, 550, + 558, 562, 564, 568, 570, 574, 575, 578, 579, 594, + 606, 615, 622, 623, 627, 628, 631, 632, 633, 636, + 639, 640, 642, 643, 644, 647, 649, 653, 654, 657, + 658, 661, 662, 665, 666, 669, 670, 671, 682, 690, + 697, 698, 699, 702, 705, 709, 710, 714, 715, 716, + 719, 722, 726, 727, 730, 732, 734, 736, 740, 741, + 744, 746, 750, 751, 752, 755, 756, 759, 761, 764, + 766, 769, 771, 775, 779, 783, 784, 785, 788, 790, + 794, 798, 800, 802, 811, 813, 817, 819, 821, 823, + 826, 828, 832, 833, 835, 841, 843, 846, 850, 853, + 857, 859, 862, 872, 875, 900, 904, 908, 912, 914, + 916, 918, 920, 925, 926, 927, 928, 929, 930, 931, + 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, + 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, + 952, 953, 954, 955, 958, 962, 964, 966, 968, 970, + 972, 974, 976, 978, 980, 982, 983, 985, 987, 989, + 993, 995, 997, 999, 1001, 1003, 1007, 1009, 1013, 1014, + 1017, 1018, 1021, 1024, 1026, 1034, 1037, 1038, 1041, 1043, + 1047, 1049, 1053, 1055, 1059, 1061, 1065, 1069, 1072, 1075, + 1079, 1082, 1084, 1088, 1090, 1098, 1101, 1102, 1105, 1106, + 1109, 1110, 1124, 1127, 1130, 1132, 1136, 1138, 1140, 1142, + 1144, 1146, 1148, 1150, 1152, 1156, 1158, 1162, 1164, 1166, + 1168, 1179, 1181, 1185, 1187, 1191, 1193, 1197, 1201, 1205, + 1207, 1209, 1213, 1215, 1222, 1225, 1229, 1231, 1233, 1237, + 1241, 1242, 1245, 1247, 1250, 1252, 1254, 1256, 1266, 1269, + 1271, 1275, 1277, 1281, 1283, 1285, 1289, 1293, 1295, 1298, + 1302, 1314, 1317, 1323, 1326, 1327, 1330, 1331, 1334, 1340, + 1347, 1353, 1356, 1359, 1362, 1365, 1368, 1371, 1372, 1375, + 1376, 1377, 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385, + 1386, 1387, 1391, 1394, 1396, 1400, 1402, 1404, 1406, 1408, + 1410, 1412, 1414, 1418, 1421, 1422, 1425, 1428, 1429, 1430, + 1433, 1434, 1437, 1438, 1441, 1444, 1445, 1448, 1451, 1452, + 1455, 1458, 1461, 1462, 1465, 1466, 1469, 1471, 1474, 1475, + 1476, 1477, 1478, 1479, 1480, 1481, 1482, 1488, 1490, 1491, + 1492, 1493, 1494, 1495, 1496, 1497, 1498, 1501, 1504, 1507, + 1510, 1511, 1514, 1515, 1518, 1519, 1522, 1523, 1526, 1529, + 1532, 1535, 1536, 1539, 1541, 1542, 1543, 1544, 1547, 1548, + 1551, 1554, 1557, 1558, 1561, 1562, 1563, 1564, 1567, 1570, + 1573, 1574, 1577, 1578, 1579, 1582, 1586, 1590, 1594, 1598, + 1602, 1603, 1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, + 1612, 1613, 1614, 1615, 1616, 1617, 1618, 1619, 1620, 1621, + 1622, 1623, 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, + 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, + 1642, 1643, 1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, + 1652, 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, + 1662, 1663, 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, + 1672, 1673, 1674, 1675, 1676, 1677, 1678 }; // Print the state stack on the debug stream. @@ -9045,8 +9025,8 @@ namespace yy { } // yy -#line 9047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 -#line 1694 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 +#line 9027 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 +#line 1680 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 @@ -9059,7 +9039,7 @@ namespace yy { context.location.step(); // Lexer -#line 9063 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9043 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -9159,25 +9139,25 @@ namespace yy { } yy2: ++context.cursor; -#line 9178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9158 "/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 9165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9145 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 9205 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } -#line 9171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 9182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9162 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 9176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -9186,9 +9166,9 @@ namespace yy { } yy11: ++context.cursor; -#line 9200 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9180 "/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 9192 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { @@ -9266,19 +9246,19 @@ namespace yy { } yy18: ++context.cursor; -#line 9190 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9170 "/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 9272 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 9191 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9171 "/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 9277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 9196 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9176 "/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 9282 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9262 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { @@ -9286,9 +9266,9 @@ namespace yy { default: goto yy25; } yy25: -#line 9197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9177 "/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 9292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9272 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { @@ -9296,9 +9276,9 @@ namespace yy { default: goto yy27; } yy27: -#line 9198 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9178 "/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 9302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9282 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { @@ -9321,9 +9301,9 @@ namespace yy { default: goto yy31; } yy31: -#line 9167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9147 "/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 9327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy32: yyaccept = 0; yych = *(YYMARKER = ++context.cursor); @@ -9332,24 +9312,24 @@ namespace yy { default: goto yy33; } yy33: -#line 9194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9174 "/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 9338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9318 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 9195 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9175 "/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 9343 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9323 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 9201 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9181 "/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 9348 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 9204 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9184 "/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 9353 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9333 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy40: yych = *++context.cursor; switch (yych) { @@ -9361,9 +9341,9 @@ namespace yy { default: goto yy49; } yy41: -#line 9172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9152 "/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 9367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9347 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy42: yych = *++context.cursor; switch (yych) { @@ -9576,19 +9556,19 @@ namespace yy { } yy61: ++context.cursor; -#line 9192 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9172 "/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 9582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 9193 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9173 "/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 9587 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; -#line 9202 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9182 "/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 9592 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9572 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy67: yych = *++context.cursor; switch (yych) { @@ -9659,24 +9639,24 @@ namespace yy { default: goto yy69; } yy69: -#line 9173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9153 "/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 9665 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9645 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; -#line 9188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9168 "/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 9670 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; -#line 9199 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9179 "/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 9675 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; -#line 9189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9169 "/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 9680 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9660 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -9684,9 +9664,9 @@ namespace yy { default: goto yy77; } yy77: -#line 9169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9149 "/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 9690 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9670 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; @@ -9767,9 +9747,9 @@ namespace yy { default: goto yy83; } yy83: -#line 9174 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9154 "/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 9773 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9753 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy84: yych = *++context.cursor; switch (yych) { @@ -9840,9 +9820,9 @@ namespace yy { default: goto yy86; } yy86: -#line 9175 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9155 "/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 9846 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9826 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { @@ -9859,9 +9839,9 @@ namespace yy { default: goto yy88; } yy90: -#line 9161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9141 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 9865 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9845 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy91: yych = *++context.cursor; switch (yych) { @@ -9869,9 +9849,9 @@ namespace yy { default: goto yy92; } yy92: -#line 9187 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9167 "/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 9875 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9855 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { @@ -10015,9 +9995,9 @@ namespace yy { default: goto yy107; } yy107: -#line 9075 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9055 "/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 10021 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10001 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy108: yych = *++context.cursor; switch (yych) { @@ -10246,9 +10226,9 @@ namespace yy { default: goto yy134; } yy134: -#line 9123 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9103 "/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 10252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10232 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy135: yych = *++context.cursor; switch (yych) { @@ -10408,9 +10388,9 @@ namespace yy { } yy161: ++context.cursor; -#line 9171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9151 "/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, context.cursor), context.location); } -#line 10414 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy163: yych = *++context.cursor; switch (yych) { @@ -10421,9 +10401,9 @@ namespace yy { } yy164: ++context.cursor; -#line 9186 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9166 "/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 10427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10407 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy166: yych = *++context.cursor; switch (yych) { @@ -10432,9 +10412,9 @@ namespace yy { } yy167: ++context.cursor; -#line 9185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9165 "/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 10438 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10418 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy169: yych = *++context.cursor; switch (yych) { @@ -10512,9 +10492,9 @@ namespace yy { default: goto yy171; } yy171: -#line 9067 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9047 "/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 10518 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10498 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy172: yych = *++context.cursor; switch (yych) { @@ -10585,9 +10565,9 @@ namespace yy { default: goto yy173; } yy173: -#line 9068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9048 "/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 10591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10571 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy174: yych = *++context.cursor; switch (yych) { @@ -10676,9 +10656,9 @@ namespace yy { default: goto yy178; } yy178: -#line 9072 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9052 "/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 10682 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10662 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy179: yych = *++context.cursor; switch (yych) { @@ -10823,9 +10803,9 @@ namespace yy { default: goto yy192; } yy192: -#line 9091 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9071 "/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 10829 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10809 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy193: yych = *++context.cursor; switch (yych) { @@ -10988,9 +10968,9 @@ namespace yy { default: goto yy209; } yy209: -#line 9114 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9094 "/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 10994 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10974 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy210: yych = *++context.cursor; switch (yych) { @@ -11061,9 +11041,9 @@ namespace yy { default: goto yy211; } yy211: -#line 9115 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9095 "/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 11067 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy212: yych = *++context.cursor; switch (yych) { @@ -11188,9 +11168,9 @@ namespace yy { default: goto yy222; } yy222: -#line 9127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9107 "/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 11194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11174 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy223: yych = *++context.cursor; switch (yych) { @@ -11303,9 +11283,9 @@ namespace yy { default: goto yy231; } yy231: -#line 9136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9116 "/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 11309 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11289 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy232: yych = *++context.cursor; switch (yych) { @@ -11406,14 +11386,14 @@ namespace yy { } yy248: ++context.cursor; -#line 9160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11412 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11392 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy250: ++context.cursor; -#line 9163 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9143 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11417 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11397 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy252: yych = *++context.cursor; switch (yych) { @@ -11562,9 +11542,9 @@ namespace yy { default: goto yy266; } yy266: -#line 9083 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9063 "/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 11568 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11548 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy267: yych = *++context.cursor; switch (yych) { @@ -11702,9 +11682,9 @@ namespace yy { default: goto yy279; } yy279: -#line 9099 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9079 "/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 11708 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11688 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy280: yych = *++context.cursor; switch (yych) { @@ -11849,9 +11829,9 @@ namespace yy { default: goto yy293; } yy293: -#line 9118 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9098 "/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 11855 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11835 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy294: yych = *++context.cursor; switch (yych) { @@ -11988,9 +11968,9 @@ namespace yy { default: goto yy306; } yy306: -#line 9132 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9112 "/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 11994 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11974 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy307: yych = *++context.cursor; switch (yych) { @@ -12079,9 +12059,9 @@ namespace yy { default: goto yy311; } yy311: -#line 9138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9118 "/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 12085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy312: yych = *++context.cursor; switch (yych) { @@ -12170,9 +12150,9 @@ namespace yy { default: goto yy316; } yy316: -#line 9142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9122 "/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 12176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy317: yych = *++context.cursor; switch (yych) { @@ -12243,9 +12223,9 @@ namespace yy { default: goto yy318; } yy318: -#line 9144 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9124 "/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 12249 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12229 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy319: yych = *++context.cursor; switch (yych) { @@ -12316,9 +12296,9 @@ namespace yy { default: goto yy320; } yy320: -#line 9146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9126 "/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 12322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy321: yych = *++context.cursor; switch (yych) { @@ -12449,9 +12429,9 @@ namespace yy { default: goto yy332; } yy332: -#line 9156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9136 "/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 12455 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12435 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy333: yych = *++context.cursor; switch (yych) { @@ -12546,9 +12526,9 @@ namespace yy { default: goto yy338; } yy338: -#line 9071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9051 "/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 12552 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12532 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy339: yych = *++context.cursor; switch (yych) { @@ -12643,9 +12623,9 @@ namespace yy { default: goto yy344; } yy344: -#line 9078 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9058 "/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 12649 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12629 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy345: yych = *++context.cursor; switch (yych) { @@ -12807,9 +12787,9 @@ namespace yy { default: goto yy361; } yy361: -#line 9098 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9078 "/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 12813 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12793 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy362: yych = *++context.cursor; switch (yych) { @@ -12977,9 +12957,9 @@ namespace yy { default: goto yy379; } yy379: -#line 9122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9102 "/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 12983 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12963 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy380: yych = *++context.cursor; switch (yych) { @@ -13152,9 +13132,9 @@ namespace yy { default: goto yy398; } yy398: -#line 9148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9128 "/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 13158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy399: yych = *++context.cursor; switch (yych) { @@ -13267,9 +13247,9 @@ namespace yy { default: goto yy407; } yy407: -#line 9065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9045 "/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 13273 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13253 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy408: yych = *++context.cursor; switch (yych) { @@ -13376,9 +13356,9 @@ namespace yy { default: goto yy415; } yy415: -#line 9077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9057 "/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 13382 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy416: yych = *++context.cursor; switch (yych) { @@ -13515,9 +13495,9 @@ namespace yy { default: goto yy428; } yy428: -#line 9093 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9073 "/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 13521 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy429: yych = *++context.cursor; switch (yych) { @@ -13708,9 +13688,9 @@ namespace yy { default: goto yy450; } yy450: -#line 9120 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9100 "/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 13714 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13694 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy451: yych = *++context.cursor; switch (yych) { @@ -13847,9 +13827,9 @@ namespace yy { default: goto yy463; } yy463: -#line 9139 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9119 "/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 13853 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13833 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy464: yych = *++context.cursor; switch (yych) { @@ -13920,9 +13900,9 @@ namespace yy { default: goto yy465; } yy465: -#line 9140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9120 "/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 13926 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13906 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy466: yych = *++context.cursor; switch (yych) { @@ -14017,9 +13997,9 @@ namespace yy { default: goto yy471; } yy471: -#line 9149 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9129 "/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 14023 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy472: yych = *++context.cursor; switch (yych) { @@ -14150,9 +14130,9 @@ namespace yy { default: goto yy483; } yy483: -#line 9074 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9054 "/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 14156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy484: yych = *++context.cursor; switch (yych) { @@ -14253,9 +14233,9 @@ namespace yy { default: goto yy490; } yy490: -#line 9085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9065 "/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 14259 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14239 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy491: yych = *++context.cursor; switch (yych) { @@ -14344,9 +14324,9 @@ namespace yy { default: goto yy495; } yy495: -#line 9089 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9069 "/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 14350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14330 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy496: yych = *++context.cursor; switch (yych) { @@ -14435,9 +14415,9 @@ namespace yy { default: goto yy500; } yy500: -#line 9095 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9075 "/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 14441 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy501: yych = *++context.cursor; switch (yych) { @@ -14551,9 +14531,9 @@ namespace yy { default: goto yy509; } yy509: -#line 9106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9086 "/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 14557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy510: yych = *++context.cursor; switch (yych) { @@ -14624,9 +14604,9 @@ namespace yy { default: goto yy511; } yy511: -#line 9107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9087 "/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 14630 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy512: yych = *++context.cursor; switch (yych) { @@ -14715,9 +14695,9 @@ namespace yy { default: goto yy516; } yy516: -#line 9111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9091 "/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 14721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14701 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy517: yych = *++context.cursor; switch (yych) { @@ -14818,9 +14798,9 @@ namespace yy { default: goto yy523; } yy523: -#line 9124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9104 "/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 14824 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14804 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy524: yych = *++context.cursor; switch (yych) { @@ -14903,9 +14883,9 @@ namespace yy { default: goto yy527; } yy527: -#line 9126 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9106 "/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 14909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14889 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy528: yych = *++context.cursor; switch (yych) { @@ -14982,9 +14962,9 @@ namespace yy { default: goto yy530; } yy530: -#line 9129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9109 "/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 14988 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14968 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy531: yych = *++context.cursor; switch (yych) { @@ -15055,9 +15035,9 @@ namespace yy { default: goto yy532; } yy532: -#line 9131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9111 "/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 15061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15041 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy533: yych = *++context.cursor; switch (yych) { @@ -15182,9 +15162,9 @@ namespace yy { default: goto yy543; } yy543: -#line 9152 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9132 "/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 15188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15168 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy544: yych = *++context.cursor; switch (yych) { @@ -15339,9 +15319,9 @@ namespace yy { default: goto yy559; } yy559: -#line 9087 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9067 "/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 15345 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy560: yych = *++context.cursor; switch (yych) { @@ -15412,9 +15392,9 @@ namespace yy { default: goto yy561; } yy561: -#line 9088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9068 "/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 15418 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15398 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy562: yych = *++context.cursor; switch (yych) { @@ -15497,9 +15477,9 @@ namespace yy { default: goto yy565; } yy565: -#line 9094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9074 "/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 15503 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15483 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy566: yych = *++context.cursor; switch (yych) { @@ -15576,9 +15556,9 @@ namespace yy { default: goto yy568; } yy568: -#line 9097 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9077 "/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 15582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy569: yych = *++context.cursor; switch (yych) { @@ -15679,9 +15659,9 @@ namespace yy { default: goto yy575; } yy575: -#line 9105 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9085 "/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 15685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15665 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy576: yych = *++context.cursor; switch (yych) { @@ -15752,9 +15732,9 @@ namespace yy { default: goto yy577; } yy577: -#line 9108 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9088 "/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 15758 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15738 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy578: yych = *++context.cursor; switch (yych) { @@ -15825,9 +15805,9 @@ namespace yy { default: goto yy579; } yy579: -#line 9109 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9089 "/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 15831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15811 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy580: yych = *++context.cursor; switch (yych) { @@ -15934,9 +15914,9 @@ namespace yy { default: goto yy587; } yy587: -#line 9125 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9105 "/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 15940 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15920 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy588: yych = *++context.cursor; switch (yych) { @@ -16031,9 +16011,9 @@ namespace yy { default: goto yy593; } yy593: -#line 9135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9115 "/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 16037 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16017 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy594: yych = *++context.cursor; switch (yych) { @@ -16104,9 +16084,9 @@ namespace yy { default: goto yy595; } yy595: -#line 9137 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9117 "/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 16110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16090 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy596: yych = *++context.cursor; switch (yych) { @@ -16243,9 +16223,9 @@ namespace yy { default: goto yy608; } yy608: -#line 9070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9050 "/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 16249 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16229 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy609: yych = *++context.cursor; switch (yych) { @@ -16316,9 +16296,9 @@ namespace yy { default: goto yy610; } yy610: -#line 9073 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9053 "/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 16322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy611: yych = *++context.cursor; switch (yych) { @@ -16389,9 +16369,9 @@ namespace yy { default: goto yy612; } yy612: -#line 9076 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9056 "/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 16395 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16375 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy613: yych = *++context.cursor; switch (yych) { @@ -16462,9 +16442,9 @@ namespace yy { default: goto yy614; } yy614: -#line 9079 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9059 "/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 16468 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16448 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy615: yych = *++context.cursor; switch (yych) { @@ -16547,9 +16527,9 @@ namespace yy { default: goto yy618; } yy618: -#line 9084 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9064 "/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 16553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy619: yych = *++context.cursor; switch (yych) { @@ -16662,9 +16642,9 @@ namespace yy { default: goto yy627; } yy627: -#line 9103 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9083 "/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 16668 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16648 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy628: yych = *++context.cursor; switch (yych) { @@ -16801,9 +16781,9 @@ namespace yy { default: goto yy640; } yy640: -#line 9141 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9121 "/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 16807 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16787 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy641: yych = *++context.cursor; switch (yych) { @@ -16892,9 +16872,9 @@ namespace yy { default: goto yy645; } yy645: -#line 9150 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9130 "/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 16898 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16878 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy646: yych = *++context.cursor; switch (yych) { @@ -17001,9 +16981,9 @@ namespace yy { default: goto yy653; } yy653: -#line 9080 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9060 "/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 17007 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16987 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy654: yych = *++context.cursor; switch (yych) { @@ -17080,9 +17060,9 @@ namespace yy { default: goto yy656; } yy656: -#line 9082 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9062 "/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 17086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17066 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy657: yych = *++context.cursor; switch (yych) { @@ -17165,9 +17145,9 @@ namespace yy { default: goto yy660; } yy660: -#line 9092 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9072 "/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 17171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy661: yych = *++context.cursor; switch (yych) { @@ -17262,9 +17242,9 @@ namespace yy { default: goto yy666; } yy666: -#line 9104 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9084 "/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 17268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy667: yych = *++context.cursor; switch (yych) { @@ -17413,9 +17393,9 @@ namespace yy { default: goto yy681; } yy681: -#line 9153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9133 "/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 17419 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17399 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy682: yych = *++context.cursor; switch (yych) { @@ -17510,9 +17490,9 @@ namespace yy { default: goto yy687; } yy687: -#line 9069 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9049 "/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 17516 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17496 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy688: yych = *++context.cursor; switch (yych) { @@ -17583,9 +17563,9 @@ namespace yy { default: goto yy689; } yy689: -#line 9081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9061 "/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 17589 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17569 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy690: yych = *++context.cursor; switch (yych) { @@ -17656,9 +17636,9 @@ namespace yy { default: goto yy691; } yy691: -#line 9086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9066 "/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 17662 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17642 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy692: yych = *++context.cursor; switch (yych) { @@ -17819,9 +17799,9 @@ namespace yy { default: goto yy708; } yy708: -#line 9145 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9125 "/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 17825 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17805 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy709: yych = *++context.cursor; switch (yych) { @@ -17958,9 +17938,9 @@ namespace yy { default: goto yy721; } yy721: -#line 9110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9090 "/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 17964 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17944 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy722: yych = *++context.cursor; switch (yych) { @@ -18031,9 +18011,9 @@ namespace yy { default: goto yy723; } yy723: -#line 9112 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9092 "/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 18037 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18017 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy724: yych = *++context.cursor; switch (yych) { @@ -18104,9 +18084,9 @@ namespace yy { default: goto yy725; } yy725: -#line 9113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9093 "/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 18110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18090 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy726: yych = *++context.cursor; switch (yych) { @@ -18183,9 +18163,9 @@ namespace yy { default: goto yy728; } yy728: -#line 9117 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9097 "/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 18189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy729: yych = *++context.cursor; switch (yych) { @@ -18280,9 +18260,9 @@ namespace yy { default: goto yy734; } yy734: -#line 9133 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9113 "/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 18286 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18266 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy735: yych = *++context.cursor; switch (yych) { @@ -18395,9 +18375,9 @@ namespace yy { default: goto yy743; } yy743: -#line 9096 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9076 "/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 18401 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18381 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy744: yych = *++context.cursor; switch (yych) { @@ -18468,9 +18448,9 @@ namespace yy { default: goto yy745; } yy745: -#line 9101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9081 "/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 18474 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18454 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy746: yych = *++context.cursor; switch (yych) { @@ -18547,9 +18527,9 @@ namespace yy { default: goto yy748; } yy748: -#line 9102 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9082 "/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 18553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy749: yych = *++context.cursor; switch (yych) { @@ -18626,9 +18606,9 @@ namespace yy { default: goto yy751; } yy751: -#line 9119 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9099 "/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 18632 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18612 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy752: yych = *++context.cursor; switch (yych) { @@ -18705,9 +18685,9 @@ namespace yy { default: goto yy754; } yy754: -#line 9128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9108 "/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 18711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy755: yych = *++context.cursor; switch (yych) { @@ -18796,9 +18776,9 @@ namespace yy { default: goto yy759; } yy759: -#line 9143 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9123 "/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 18802 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18782 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy760: yych = *++context.cursor; switch (yych) { @@ -18881,9 +18861,9 @@ namespace yy { default: goto yy763; } yy763: -#line 9155 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9135 "/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 18887 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy764: yych = *++context.cursor; switch (yych) { @@ -18972,9 +18952,9 @@ namespace yy { default: goto yy768; } yy768: -#line 9116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9096 "/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 18978 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18958 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy769: yych = *++context.cursor; switch (yych) { @@ -19075,9 +19055,9 @@ namespace yy { default: goto yy775; } yy775: -#line 9154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9134 "/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 19081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy776: yych = *++context.cursor; switch (yych) { @@ -19148,9 +19128,9 @@ namespace yy { default: goto yy777; } yy777: -#line 9066 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9046 "/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 19154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy778: yych = *++context.cursor; switch (yych) { @@ -19227,9 +19207,9 @@ namespace yy { default: goto yy780; } yy780: -#line 9100 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9080 "/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 19233 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy781: yych = *++context.cursor; switch (yych) { @@ -19306,9 +19286,9 @@ namespace yy { default: goto yy783; } yy783: -#line 9130 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9110 "/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 19312 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy784: yych = *++context.cursor; switch (yych) { @@ -19385,9 +19365,9 @@ namespace yy { default: goto yy786; } yy786: -#line 9147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9127 "/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 19391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19371 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy787: yych = *++context.cursor; switch (yych) { @@ -19458,9 +19438,9 @@ namespace yy { default: goto yy788; } yy788: -#line 9151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9131 "/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 19464 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19444 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy789: yych = *++context.cursor; switch (yych) { @@ -19531,9 +19511,9 @@ namespace yy { default: goto yy790; } yy790: -#line 9090 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9070 "/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 19537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy791: yych = *++context.cursor; switch (yych) { @@ -19604,9 +19584,9 @@ namespace yy { default: goto yy792; } yy792: -#line 9121 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9101 "/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 19610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19590 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy793: yych = *++context.cursor; switch (yych) { @@ -19677,11 +19657,11 @@ namespace yy { default: goto yy794; } yy794: -#line 9134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9114 "/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 19683 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19663 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" } -#line 9206 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9186 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" } } diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 1c7de15f..4c5c9244 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -120,6 +120,36 @@ add_test(NAME fast_ber_parse_asn_66 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR add_test(NAME fast_ber_parse_asn_67 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/67-embedded-choice-OK.asn1 parse_test_67) add_test(NAME fast_ber_parse_asn_68 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/68-enum-default-OK.asn1 parse_test_68) add_test(NAME fast_ber_parse_asn_69 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/69-reserved-words-OK.asn1 parse_test_69) +#add_test(NAME fast_ber_parse_asn_70 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/70-xer-test-OK.asn1 parse_test_70) +add_test(NAME fast_ber_parse_asn_71 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/71-duplicate-types-SE.asn1 parse_test_71) +#add_test(NAME fast_ber_parse_asn_72 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/72-same-names-OK.asn1 parse_test_72) +#add_test(NAME fast_ber_parse_asn_73 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/73-circular-OK.asn1 parse_test_73) +add_test(NAME fast_ber_parse_asn_74 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/74-int-enum-constraints-OK.asn1 parse_test_74) +#add_test(NAME fast_ber_parse_asn_75 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/75-duplicate-modules-SE.asn1 parse_test_75) +#add_test(NAME fast_ber_parse_asn_76 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/76-duplicate-modules-SW.asn1 parse_test_76) +add_test(NAME fast_ber_parse_asn_77 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/77-str-default-OK.asn1 parse_test_77) +add_test(NAME fast_ber_parse_asn_78 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/78-str-default-SE.asn1 parse_test_78) +add_test(NAME fast_ber_parse_asn_79 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/79-constrained-by-OK.asn1 parse_test_79) +#add_test(NAME fast_ber_parse_asn_80 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/80-chardefs-OK.asn1 parse_test_80) +#add_test(NAME fast_ber_parse_asn_81 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/81-type-default-OK.asn1 parse_test_81) +add_test(NAME fast_ber_parse_asn_82 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/82-with-comps-OK.asn1 parse_test_82) +add_test(NAME fast_ber_parse_asn_83 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/83-with-comps-OK.asn1 parse_test_83) +add_test(NAME fast_ber_parse_asn_84 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/84-param-tags-OK.asn1 parse_test_84) +#add_test(NAME fast_ber_parse_asn_85 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/85-comments-OK.asn1 parse_test_85) +add_test(NAME fast_ber_parse_asn_86 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/86-atags-OK.asn1 parse_test_86) +#add_test(NAME fast_ber_parse_asn_87 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/87-old-syntax-OK.asn1 parse_test_87) +add_test(NAME fast_ber_parse_asn_88 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/88-integer-enum-OK.asn1 parse_test_88) +add_test(NAME fast_ber_parse_asn_89 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/89-bit-string-enum-OK.asn1 parse_test_89) +#add_test(NAME fast_ber_parse_asn_90 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/90-cond-int-type-OK.asn1 parse_test_90) +add_test(NAME fast_ber_parse_asn_91 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/91-cond-int-blessSize-OK.asn1 parse_test_91) +#add_test(NAME fast_ber_parse_asn_92 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/92-circular-loops-OK.asn1 parse_test_92) +add_test(NAME fast_ber_parse_asn_93 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/93-asn1c-controls-OK.asn1 parse_test_93) +add_test(NAME fast_ber_parse_asn_94 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/94-set-optionals-OK.asn1 parse_test_94) +add_test(NAME fast_ber_parse_asn_95 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/95-choice-per-order-OK.asn1 parse_test_95) +add_test(NAME fast_ber_parse_asn_96 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/96-type-identifier-OK.asn1 parse_test_96) +#add_test(NAME fast_ber_parse_asn_97 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/97-type-identifier-SW.asn1 parse_test_97) +#add_test(NAME fast_ber_parse_asn_98 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/98-attribute-class-OK.asn1 parse_test_98) +add_test(NAME fast_ber_parse_asn_99 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/99-class-sample-OK.asn1 parse_test_99) add_test(NAME fast_ber_compiler_0 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/simple0.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/simple0) add_test(NAME fast_ber_compiler_1 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/simple1.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/simple1) From e1d3345ce2558027b0c7831beea811f316aab523 Mon Sep 17 00:00:00 2001 From: Sam Date: Mon, 22 Apr 2019 08:15:50 +0100 Subject: [PATCH 04/31] Add parsing of remaining asn1c tests --- src/compiler/asn_compiler.yacc | 31 +- src/compiler/autogen_copy/asn_compiler.hpp | 8069 ++++++++++---------- test/CMakeLists.txt | 34 + 3 files changed, 4153 insertions(+), 3981 deletions(-) diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 990edd53..90540959 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -358,6 +358,7 @@ FieldSpec: TypeFieldSpec | FixedTypeValueFieldSpec | VariableTypeValueFieldSpec +| FixedTypeValueSetFieldSpec | ObjectFieldSpec | ObjectSetFieldSpec; @@ -392,9 +393,18 @@ ValueOptionalitySpec: | DEFAULT SingleValue | %empty + VariableTypeValueFieldSpec: valuefieldreference FieldName ValueOptionalitySpec; +FixedTypeValueSetFieldSpec: + typefieldreference Type ValueSetOptionalitySpec + +ValueSetOptionalitySpec: + OPTIONAL +| DEFAULT ValueSet +| %empty + ObjectFieldSpec: typefieldreference DefinedObjectClass ObjectOptionalitySpec; @@ -543,7 +553,7 @@ ParameterizedValueSetTypeAssignment: { $$ = Assignment{ $1, ValueAssignment{} }; } ParameterizedObjectClassAssignment: - objectclassreference ParameterList DEFINED_AS ObjectClass + typereference ParameterList DEFINED_AS ObjectClass { $$ = Assignment{ $1, ObjectClassAssignment{} }; } ParameterizedObjectAssignment: @@ -638,9 +648,10 @@ UserDefinedConstraint: UserDefinedConstraintParameter: Governor ":" Value | Governor ":" Object -//| DefinedObjectSet +| DefinedObjectSet | Type | DefinedObjectClass +| ELIPSIS | %empty TableConstraint: @@ -843,15 +854,17 @@ DefinedValue: | ParameterizedValue; ParameterizedType: - SimpleDefinedType ActualParameterList - { $$ = DefinedType{$1, $2}; } + SimpleDefinedType "{" ActualParameterList "}" + { $$ = DefinedType{$1, $3}; } ParameterizedValue: - SimpleDefinedValue ActualParameterList + SimpleDefinedValue "{" ActualParameterList "}" ActualParameterList: - "{" ActualParameter "}" - { $$.push_back($2); } + ActualParameter + { $$.push_back($1); } +| ActualParameter "," ActualParameterList + { $$ = $3; $$.push_back($1); } ActualParameter: Type @@ -1795,12 +1808,14 @@ re2c:define:YYCURSOR = "context.cursor"; { context.location.columns(context.cursor - start); return yylex(context); } // Identifiers -//[0-9]+\.[0-9]+ { context.location.columns(context.cursor - start); return asn1_parser::make_realnumber(std::stod(std::string(start, context.cursor)), context.location); } +[0-9]+'\.'[0-9]+ { context.location.columns(context.cursor - start); return asn1_parser::make_realnumber(std::stod(std::string(start, context.cursor)), context.location); } [0-9]+ { context.location.columns(context.cursor - start); return asn1_parser::make_number(std::stoll(std::string(start, context.cursor)), context.location); } ['\"']('\\'.|"\"\""|[^'\"'])*['\"'] { context.location.columns(context.cursor - start); return asn1_parser::make_cstring(std::string(start, context.cursor), context.location); } ['\'']('0'|'1')*['\'']"B" { context.location.columns(context.cursor - start); return asn1_parser::make_bstring(std::string(start, context.cursor), context.location); } +['\''][0-9A-Fa-f]*['\'']"H" + { context.location.columns(context.cursor - start); return asn1_parser::make_hstring(std::string(start, context.cursor), context.location); } [A-Z][A-Za-z_0-9\-]* { context.location.columns(context.cursor - start); return asn1_parser::make_GENERIC_IDENTIFIER_UPPERCASE(santize_name(std::string(start, context.cursor)), context.location); } [a-z][A-Za-z_0-9\-]* { context.location.columns(context.cursor - start); return asn1_parser::make_GENERIC_IDENTIFIER_LOWERCASE(santize_name(std::string(start, context.cursor)), context.location); } [&][A-Z][A-Za-z_0-9\-]* { context.location.columns(context.cursor - start); return asn1_parser::make_typefieldreference(santize_name(std::string(start, context.cursor)), context.location); } diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index 7d5c19bc..eca978e6 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -2076,8 +2076,8 @@ namespace yy { enum { yyeof_ = 0, - yylast_ = 3771, ///< Last index in yytable_. - yynnts_ = 224, ///< Number of nonterminal symbols. + yylast_ = 3833, ///< Last index in yytable_. + yynnts_ = 226, ///< Number of nonterminal symbols. yyfinal_ = 6, ///< Termination state number. yyterror_ = 1, yyerrcode_ = 256, @@ -2174,205 +2174,205 @@ namespace yy { switch (other.type_get ()) { case 159: // ObjectClassAssignment - case 195: // ObjectSetAssignment - case 199: // ParameterizedAssignment - case 200: // ParameterizedTypeAssignment - case 201: // ParameterizedValueAssignment - case 202: // ParameterizedValueSetTypeAssignment - case 203: // ParameterizedObjectClassAssignment - case 204: // ParameterizedObjectAssignment - case 249: // Assignment - case 258: // TypeAssignment - case 259: // ValueAssignment - case 260: // ValueSetTypeAssignment + case 197: // ObjectSetAssignment + case 201: // ParameterizedAssignment + case 202: // ParameterizedTypeAssignment + case 203: // ParameterizedValueAssignment + case 204: // ParameterizedValueSetTypeAssignment + case 205: // ParameterizedObjectClassAssignment + case 206: // ParameterizedObjectAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.copy< Assignment > (other.value); break; - case 281: // BitStringType + case 283: // BitStringType value.copy< BitStringType > (other.value); break; - case 270: // BooleanType + case 272: // BooleanType value.copy< BooleanType > (other.value); break; - case 262: // BuiltinType + case 264: // BuiltinType value.copy< BuiltinType > (other.value); break; - case 326: // CharacterStringType + case 328: // CharacterStringType value.copy< CharacterStringType > (other.value); break; - case 293: // ChoiceType + case 295: // ChoiceType value.copy< ChoiceType > (other.value); break; - case 303: // Class + case 305: // Class value.copy< Class > (other.value); break; - case 289: // ComponentType + case 291: // ComponentType value.copy< ComponentType > (other.value); break; - case 287: // ComponentTypeLists - case 288: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.copy< ComponentTypeList > (other.value); break; - case 324: // DateTimeType + case 326: // DateTimeType value.copy< DateTimeType > (other.value); break; - case 322: // DateType + case 324: // DateType value.copy< DateType > (other.value); break; - case 250: // DefinedType - case 252: // ParameterizedType + case 252: // DefinedType + case 254: // ParameterizedType value.copy< DefinedType > (other.value); break; - case 251: // DefinedValue + case 253: // DefinedValue value.copy< DefinedValue > (other.value); break; - case 325: // DurationType + case 327: // DurationType value.copy< DurationType > (other.value); break; - case 318: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.copy< EmbeddedPDVType > (other.value); break; - case 276: // EnumeratedType - case 277: // Enumerations - case 278: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.copy< EnumeratedType > (other.value); break; - case 279: // EnumerationItem + case 281: // EnumerationItem value.copy< EnumerationValue > (other.value); break; - case 319: // ExternalType + case 321: // ExternalType value.copy< ExternalType > (other.value); break; - case 312: // IRIType + case 314: // IRIType value.copy< IRIType > (other.value); break; - case 242: // SymbolsFromModule + case 244: // SymbolsFromModule value.copy< Import > (other.value); break; - case 212: // InstanceOfType + case 214: // InstanceOfType value.copy< InstanceOfType > (other.value); break; - case 272: // IntegerType + case 274: // IntegerType value.copy< IntegerType > (other.value); break; - case 236: // ModuleBody + case 238: // ModuleBody value.copy< Module > (other.value); break; - case 274: // NamedNumber + case 276: // NamedNumber value.copy< NamedNumber > (other.value); break; - case 263: // NamedType + case 265: // NamedType value.copy< NamedType > (other.value); break; - case 285: // NullType + case 287: // NullType value.copy< NullType > (other.value); break; - case 198: // ObjectClassFieldType + case 200: // ObjectClassFieldType value.copy< ObjectClassFieldType > (other.value); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.copy< ObjectIdComponentValue > (other.value); break; - case 304: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.copy< ObjectIdentifierType > (other.value); break; - case 284: // OctetStringType + case 286: // OctetStringType value.copy< OctetStringType > (other.value); break; - case 298: // PrefixedType + case 300: // PrefixedType value.copy< PrefixedType > (other.value); break; - case 280: // RealType + case 282: // RealType value.copy< RealType > (other.value); break; - case 317: // RelativeIRIType + case 319: // RelativeIRIType value.copy< RelativeIRIType > (other.value); break; - case 311: // RelativeOIDType + case 313: // RelativeOIDType value.copy< RelativeOIDType > (other.value); break; - case 290: // SequenceOfType + case 292: // SequenceOfType value.copy< SequenceOfType > (other.value); break; - case 286: // SequenceType + case 288: // SequenceType value.copy< SequenceType > (other.value); break; - case 292: // SetOfType + case 294: // SetOfType value.copy< SetOfType > (other.value); break; - case 291: // SetType + case 293: // SetType value.copy< SetType > (other.value); break; - case 300: // Tag + case 302: // Tag value.copy< Tag > (other.value); break; - case 299: // TaggedType + case 301: // TaggedType value.copy< TaggedType > (other.value); break; - case 234: // TagDefault + case 236: // TagDefault value.copy< TaggingMode > (other.value); break; - case 323: // TimeOfDayType + case 325: // TimeOfDayType value.copy< TimeOfDayType > (other.value); break; - case 320: // TimeType + case 322: // TimeType value.copy< TimeType > (other.value); break; - case 255: // ActualParameter - case 261: // Type - case 329: // ConstrainedType - case 330: // TypeWithConstraint + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.copy< Type > (other.value); break; - case 264: // ValueWithoutTypeIdentifier - case 265: // Value - case 347: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.copy< Value > (other.value); break; @@ -2380,17 +2380,17 @@ namespace yy { value.copy< double > (other.value); break; - case 302: // ClassNumber + case 304: // ClassNumber value.copy< int > (other.value); break; case 4: // number - case 275: // SignedNumber + case 277: // SignedNumber value.copy< long long > (other.value); break; - case 205: // ParameterList - case 206: // ParameterSeries + case 207: // ParameterList + case 208: // ParameterSeries value.copy< std::set > (other.value); break; @@ -2407,59 +2407,59 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 207: // Parameter - case 213: // SimpleDefinedType - case 225: // ModuleIdentifier - case 243: // GlobalModuleReference - case 246: // Symbol - case 247: // Reference - case 370: // typereference - case 371: // identifier - case 372: // valuereference - case 373: // modulereference - case 374: // objectclassreference - case 375: // word + case 209: // Parameter + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.copy< std::string > (other.value); break; - case 248: // AssignmentList + case 250: // AssignmentList value.copy< std::vector > (other.value); break; - case 237: // Exports + case 239: // Exports value.copy< std::vector > (other.value); break; - case 239: // Imports - case 240: // SymbolsImported - case 241: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.copy< std::vector > (other.value); break; - case 273: // NamedNumberList + case 275: // NamedNumberList value.copy< std::vector > (other.value); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.copy< std::vector > (other.value); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.copy< std::vector > (other.value); break; - case 254: // ActualParameterList + case 256: // ActualParameterList value.copy< std::vector > (other.value); break; - case 269: // SequenceOfValues + case 271: // SequenceOfValues value.copy< std::vector > (other.value); break; - case 245: // SymbolList + case 247: // SymbolList value.copy< std::vector > (other.value); break; @@ -2481,205 +2481,205 @@ namespace yy { switch (this->type_get ()) { case 159: // ObjectClassAssignment - case 195: // ObjectSetAssignment - case 199: // ParameterizedAssignment - case 200: // ParameterizedTypeAssignment - case 201: // ParameterizedValueAssignment - case 202: // ParameterizedValueSetTypeAssignment - case 203: // ParameterizedObjectClassAssignment - case 204: // ParameterizedObjectAssignment - case 249: // Assignment - case 258: // TypeAssignment - case 259: // ValueAssignment - case 260: // ValueSetTypeAssignment + case 197: // ObjectSetAssignment + case 201: // ParameterizedAssignment + case 202: // ParameterizedTypeAssignment + case 203: // ParameterizedValueAssignment + case 204: // ParameterizedValueSetTypeAssignment + case 205: // ParameterizedObjectClassAssignment + case 206: // ParameterizedObjectAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.copy< Assignment > (v); break; - case 281: // BitStringType + case 283: // BitStringType value.copy< BitStringType > (v); break; - case 270: // BooleanType + case 272: // BooleanType value.copy< BooleanType > (v); break; - case 262: // BuiltinType + case 264: // BuiltinType value.copy< BuiltinType > (v); break; - case 326: // CharacterStringType + case 328: // CharacterStringType value.copy< CharacterStringType > (v); break; - case 293: // ChoiceType + case 295: // ChoiceType value.copy< ChoiceType > (v); break; - case 303: // Class + case 305: // Class value.copy< Class > (v); break; - case 289: // ComponentType + case 291: // ComponentType value.copy< ComponentType > (v); break; - case 287: // ComponentTypeLists - case 288: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.copy< ComponentTypeList > (v); break; - case 324: // DateTimeType + case 326: // DateTimeType value.copy< DateTimeType > (v); break; - case 322: // DateType + case 324: // DateType value.copy< DateType > (v); break; - case 250: // DefinedType - case 252: // ParameterizedType + case 252: // DefinedType + case 254: // ParameterizedType value.copy< DefinedType > (v); break; - case 251: // DefinedValue + case 253: // DefinedValue value.copy< DefinedValue > (v); break; - case 325: // DurationType + case 327: // DurationType value.copy< DurationType > (v); break; - case 318: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.copy< EmbeddedPDVType > (v); break; - case 276: // EnumeratedType - case 277: // Enumerations - case 278: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.copy< EnumeratedType > (v); break; - case 279: // EnumerationItem + case 281: // EnumerationItem value.copy< EnumerationValue > (v); break; - case 319: // ExternalType + case 321: // ExternalType value.copy< ExternalType > (v); break; - case 312: // IRIType + case 314: // IRIType value.copy< IRIType > (v); break; - case 242: // SymbolsFromModule + case 244: // SymbolsFromModule value.copy< Import > (v); break; - case 212: // InstanceOfType + case 214: // InstanceOfType value.copy< InstanceOfType > (v); break; - case 272: // IntegerType + case 274: // IntegerType value.copy< IntegerType > (v); break; - case 236: // ModuleBody + case 238: // ModuleBody value.copy< Module > (v); break; - case 274: // NamedNumber + case 276: // NamedNumber value.copy< NamedNumber > (v); break; - case 263: // NamedType + case 265: // NamedType value.copy< NamedType > (v); break; - case 285: // NullType + case 287: // NullType value.copy< NullType > (v); break; - case 198: // ObjectClassFieldType + case 200: // ObjectClassFieldType value.copy< ObjectClassFieldType > (v); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.copy< ObjectIdComponentValue > (v); break; - case 304: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.copy< ObjectIdentifierType > (v); break; - case 284: // OctetStringType + case 286: // OctetStringType value.copy< OctetStringType > (v); break; - case 298: // PrefixedType + case 300: // PrefixedType value.copy< PrefixedType > (v); break; - case 280: // RealType + case 282: // RealType value.copy< RealType > (v); break; - case 317: // RelativeIRIType + case 319: // RelativeIRIType value.copy< RelativeIRIType > (v); break; - case 311: // RelativeOIDType + case 313: // RelativeOIDType value.copy< RelativeOIDType > (v); break; - case 290: // SequenceOfType + case 292: // SequenceOfType value.copy< SequenceOfType > (v); break; - case 286: // SequenceType + case 288: // SequenceType value.copy< SequenceType > (v); break; - case 292: // SetOfType + case 294: // SetOfType value.copy< SetOfType > (v); break; - case 291: // SetType + case 293: // SetType value.copy< SetType > (v); break; - case 300: // Tag + case 302: // Tag value.copy< Tag > (v); break; - case 299: // TaggedType + case 301: // TaggedType value.copy< TaggedType > (v); break; - case 234: // TagDefault + case 236: // TagDefault value.copy< TaggingMode > (v); break; - case 323: // TimeOfDayType + case 325: // TimeOfDayType value.copy< TimeOfDayType > (v); break; - case 320: // TimeType + case 322: // TimeType value.copy< TimeType > (v); break; - case 255: // ActualParameter - case 261: // Type - case 329: // ConstrainedType - case 330: // TypeWithConstraint + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.copy< Type > (v); break; - case 264: // ValueWithoutTypeIdentifier - case 265: // Value - case 347: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.copy< Value > (v); break; @@ -2687,17 +2687,17 @@ namespace yy { value.copy< double > (v); break; - case 302: // ClassNumber + case 304: // ClassNumber value.copy< int > (v); break; case 4: // number - case 275: // SignedNumber + case 277: // SignedNumber value.copy< long long > (v); break; - case 205: // ParameterList - case 206: // ParameterSeries + case 207: // ParameterList + case 208: // ParameterSeries value.copy< std::set > (v); break; @@ -2714,59 +2714,59 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 207: // Parameter - case 213: // SimpleDefinedType - case 225: // ModuleIdentifier - case 243: // GlobalModuleReference - case 246: // Symbol - case 247: // Reference - case 370: // typereference - case 371: // identifier - case 372: // valuereference - case 373: // modulereference - case 374: // objectclassreference - case 375: // word + case 209: // Parameter + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.copy< std::string > (v); break; - case 248: // AssignmentList + case 250: // AssignmentList value.copy< std::vector > (v); break; - case 237: // Exports + case 239: // Exports value.copy< std::vector > (v); break; - case 239: // Imports - case 240: // SymbolsImported - case 241: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.copy< std::vector > (v); break; - case 273: // NamedNumberList + case 275: // NamedNumberList value.copy< std::vector > (v); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.copy< std::vector > (v); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.copy< std::vector > (v); break; - case 254: // ActualParameterList + case 256: // ActualParameterList value.copy< std::vector > (v); break; - case 269: // SequenceOfValues + case 271: // SequenceOfValues value.copy< std::vector > (v); break; - case 245: // SymbolList + case 247: // SymbolList value.copy< std::vector > (v); break; @@ -3225,205 +3225,205 @@ namespace yy { switch (yytype) { case 159: // ObjectClassAssignment - case 195: // ObjectSetAssignment - case 199: // ParameterizedAssignment - case 200: // ParameterizedTypeAssignment - case 201: // ParameterizedValueAssignment - case 202: // ParameterizedValueSetTypeAssignment - case 203: // ParameterizedObjectClassAssignment - case 204: // ParameterizedObjectAssignment - case 249: // Assignment - case 258: // TypeAssignment - case 259: // ValueAssignment - case 260: // ValueSetTypeAssignment + case 197: // ObjectSetAssignment + case 201: // ParameterizedAssignment + case 202: // ParameterizedTypeAssignment + case 203: // ParameterizedValueAssignment + case 204: // ParameterizedValueSetTypeAssignment + case 205: // ParameterizedObjectClassAssignment + case 206: // ParameterizedObjectAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.template destroy< Assignment > (); break; - case 281: // BitStringType + case 283: // BitStringType value.template destroy< BitStringType > (); break; - case 270: // BooleanType + case 272: // BooleanType value.template destroy< BooleanType > (); break; - case 262: // BuiltinType + case 264: // BuiltinType value.template destroy< BuiltinType > (); break; - case 326: // CharacterStringType + case 328: // CharacterStringType value.template destroy< CharacterStringType > (); break; - case 293: // ChoiceType + case 295: // ChoiceType value.template destroy< ChoiceType > (); break; - case 303: // Class + case 305: // Class value.template destroy< Class > (); break; - case 289: // ComponentType + case 291: // ComponentType value.template destroy< ComponentType > (); break; - case 287: // ComponentTypeLists - case 288: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.template destroy< ComponentTypeList > (); break; - case 324: // DateTimeType + case 326: // DateTimeType value.template destroy< DateTimeType > (); break; - case 322: // DateType + case 324: // DateType value.template destroy< DateType > (); break; - case 250: // DefinedType - case 252: // ParameterizedType + case 252: // DefinedType + case 254: // ParameterizedType value.template destroy< DefinedType > (); break; - case 251: // DefinedValue + case 253: // DefinedValue value.template destroy< DefinedValue > (); break; - case 325: // DurationType + case 327: // DurationType value.template destroy< DurationType > (); break; - case 318: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.template destroy< EmbeddedPDVType > (); break; - case 276: // EnumeratedType - case 277: // Enumerations - case 278: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.template destroy< EnumeratedType > (); break; - case 279: // EnumerationItem + case 281: // EnumerationItem value.template destroy< EnumerationValue > (); break; - case 319: // ExternalType + case 321: // ExternalType value.template destroy< ExternalType > (); break; - case 312: // IRIType + case 314: // IRIType value.template destroy< IRIType > (); break; - case 242: // SymbolsFromModule + case 244: // SymbolsFromModule value.template destroy< Import > (); break; - case 212: // InstanceOfType + case 214: // InstanceOfType value.template destroy< InstanceOfType > (); break; - case 272: // IntegerType + case 274: // IntegerType value.template destroy< IntegerType > (); break; - case 236: // ModuleBody + case 238: // ModuleBody value.template destroy< Module > (); break; - case 274: // NamedNumber + case 276: // NamedNumber value.template destroy< NamedNumber > (); break; - case 263: // NamedType + case 265: // NamedType value.template destroy< NamedType > (); break; - case 285: // NullType + case 287: // NullType value.template destroy< NullType > (); break; - case 198: // ObjectClassFieldType + case 200: // ObjectClassFieldType value.template destroy< ObjectClassFieldType > (); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.template destroy< ObjectIdComponentValue > (); break; - case 304: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.template destroy< ObjectIdentifierType > (); break; - case 284: // OctetStringType + case 286: // OctetStringType value.template destroy< OctetStringType > (); break; - case 298: // PrefixedType + case 300: // PrefixedType value.template destroy< PrefixedType > (); break; - case 280: // RealType + case 282: // RealType value.template destroy< RealType > (); break; - case 317: // RelativeIRIType + case 319: // RelativeIRIType value.template destroy< RelativeIRIType > (); break; - case 311: // RelativeOIDType + case 313: // RelativeOIDType value.template destroy< RelativeOIDType > (); break; - case 290: // SequenceOfType + case 292: // SequenceOfType value.template destroy< SequenceOfType > (); break; - case 286: // SequenceType + case 288: // SequenceType value.template destroy< SequenceType > (); break; - case 292: // SetOfType + case 294: // SetOfType value.template destroy< SetOfType > (); break; - case 291: // SetType + case 293: // SetType value.template destroy< SetType > (); break; - case 300: // Tag + case 302: // Tag value.template destroy< Tag > (); break; - case 299: // TaggedType + case 301: // TaggedType value.template destroy< TaggedType > (); break; - case 234: // TagDefault + case 236: // TagDefault value.template destroy< TaggingMode > (); break; - case 323: // TimeOfDayType + case 325: // TimeOfDayType value.template destroy< TimeOfDayType > (); break; - case 320: // TimeType + case 322: // TimeType value.template destroy< TimeType > (); break; - case 255: // ActualParameter - case 261: // Type - case 329: // ConstrainedType - case 330: // TypeWithConstraint + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.template destroy< Type > (); break; - case 264: // ValueWithoutTypeIdentifier - case 265: // Value - case 347: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.template destroy< Value > (); break; @@ -3431,17 +3431,17 @@ namespace yy { value.template destroy< double > (); break; - case 302: // ClassNumber + case 304: // ClassNumber value.template destroy< int > (); break; case 4: // number - case 275: // SignedNumber + case 277: // SignedNumber value.template destroy< long long > (); break; - case 205: // ParameterList - case 206: // ParameterSeries + case 207: // ParameterList + case 208: // ParameterSeries value.template destroy< std::set > (); break; @@ -3458,59 +3458,59 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 207: // Parameter - case 213: // SimpleDefinedType - case 225: // ModuleIdentifier - case 243: // GlobalModuleReference - case 246: // Symbol - case 247: // Reference - case 370: // typereference - case 371: // identifier - case 372: // valuereference - case 373: // modulereference - case 374: // objectclassreference - case 375: // word + case 209: // Parameter + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.template destroy< std::string > (); break; - case 248: // AssignmentList + case 250: // AssignmentList value.template destroy< std::vector > (); break; - case 237: // Exports + case 239: // Exports value.template destroy< std::vector > (); break; - case 239: // Imports - case 240: // SymbolsImported - case 241: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.template destroy< std::vector > (); break; - case 273: // NamedNumberList + case 275: // NamedNumberList value.template destroy< std::vector > (); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.template destroy< std::vector > (); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.template destroy< std::vector > (); break; - case 254: // ActualParameterList + case 256: // ActualParameterList value.template destroy< std::vector > (); break; - case 269: // SequenceOfValues + case 271: // SequenceOfValues value.template destroy< std::vector > (); break; - case 245: // SymbolList + case 247: // SymbolList value.template destroy< std::vector > (); break; @@ -3538,205 +3538,205 @@ namespace yy { switch (this->type_get ()) { case 159: // ObjectClassAssignment - case 195: // ObjectSetAssignment - case 199: // ParameterizedAssignment - case 200: // ParameterizedTypeAssignment - case 201: // ParameterizedValueAssignment - case 202: // ParameterizedValueSetTypeAssignment - case 203: // ParameterizedObjectClassAssignment - case 204: // ParameterizedObjectAssignment - case 249: // Assignment - case 258: // TypeAssignment - case 259: // ValueAssignment - case 260: // ValueSetTypeAssignment + case 197: // ObjectSetAssignment + case 201: // ParameterizedAssignment + case 202: // ParameterizedTypeAssignment + case 203: // ParameterizedValueAssignment + case 204: // ParameterizedValueSetTypeAssignment + case 205: // ParameterizedObjectClassAssignment + case 206: // ParameterizedObjectAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.move< Assignment > (s.value); break; - case 281: // BitStringType + case 283: // BitStringType value.move< BitStringType > (s.value); break; - case 270: // BooleanType + case 272: // BooleanType value.move< BooleanType > (s.value); break; - case 262: // BuiltinType + case 264: // BuiltinType value.move< BuiltinType > (s.value); break; - case 326: // CharacterStringType + case 328: // CharacterStringType value.move< CharacterStringType > (s.value); break; - case 293: // ChoiceType + case 295: // ChoiceType value.move< ChoiceType > (s.value); break; - case 303: // Class + case 305: // Class value.move< Class > (s.value); break; - case 289: // ComponentType + case 291: // ComponentType value.move< ComponentType > (s.value); break; - case 287: // ComponentTypeLists - case 288: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.move< ComponentTypeList > (s.value); break; - case 324: // DateTimeType + case 326: // DateTimeType value.move< DateTimeType > (s.value); break; - case 322: // DateType + case 324: // DateType value.move< DateType > (s.value); break; - case 250: // DefinedType - case 252: // ParameterizedType + case 252: // DefinedType + case 254: // ParameterizedType value.move< DefinedType > (s.value); break; - case 251: // DefinedValue + case 253: // DefinedValue value.move< DefinedValue > (s.value); break; - case 325: // DurationType + case 327: // DurationType value.move< DurationType > (s.value); break; - case 318: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.move< EmbeddedPDVType > (s.value); break; - case 276: // EnumeratedType - case 277: // Enumerations - case 278: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.move< EnumeratedType > (s.value); break; - case 279: // EnumerationItem + case 281: // EnumerationItem value.move< EnumerationValue > (s.value); break; - case 319: // ExternalType + case 321: // ExternalType value.move< ExternalType > (s.value); break; - case 312: // IRIType + case 314: // IRIType value.move< IRIType > (s.value); break; - case 242: // SymbolsFromModule + case 244: // SymbolsFromModule value.move< Import > (s.value); break; - case 212: // InstanceOfType + case 214: // InstanceOfType value.move< InstanceOfType > (s.value); break; - case 272: // IntegerType + case 274: // IntegerType value.move< IntegerType > (s.value); break; - case 236: // ModuleBody + case 238: // ModuleBody value.move< Module > (s.value); break; - case 274: // NamedNumber + case 276: // NamedNumber value.move< NamedNumber > (s.value); break; - case 263: // NamedType + case 265: // NamedType value.move< NamedType > (s.value); break; - case 285: // NullType + case 287: // NullType value.move< NullType > (s.value); break; - case 198: // ObjectClassFieldType + case 200: // ObjectClassFieldType value.move< ObjectClassFieldType > (s.value); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.move< ObjectIdComponentValue > (s.value); break; - case 304: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.move< ObjectIdentifierType > (s.value); break; - case 284: // OctetStringType + case 286: // OctetStringType value.move< OctetStringType > (s.value); break; - case 298: // PrefixedType + case 300: // PrefixedType value.move< PrefixedType > (s.value); break; - case 280: // RealType + case 282: // RealType value.move< RealType > (s.value); break; - case 317: // RelativeIRIType + case 319: // RelativeIRIType value.move< RelativeIRIType > (s.value); break; - case 311: // RelativeOIDType + case 313: // RelativeOIDType value.move< RelativeOIDType > (s.value); break; - case 290: // SequenceOfType + case 292: // SequenceOfType value.move< SequenceOfType > (s.value); break; - case 286: // SequenceType + case 288: // SequenceType value.move< SequenceType > (s.value); break; - case 292: // SetOfType + case 294: // SetOfType value.move< SetOfType > (s.value); break; - case 291: // SetType + case 293: // SetType value.move< SetType > (s.value); break; - case 300: // Tag + case 302: // Tag value.move< Tag > (s.value); break; - case 299: // TaggedType + case 301: // TaggedType value.move< TaggedType > (s.value); break; - case 234: // TagDefault + case 236: // TagDefault value.move< TaggingMode > (s.value); break; - case 323: // TimeOfDayType + case 325: // TimeOfDayType value.move< TimeOfDayType > (s.value); break; - case 320: // TimeType + case 322: // TimeType value.move< TimeType > (s.value); break; - case 255: // ActualParameter - case 261: // Type - case 329: // ConstrainedType - case 330: // TypeWithConstraint + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.move< Type > (s.value); break; - case 264: // ValueWithoutTypeIdentifier - case 265: // Value - case 347: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.move< Value > (s.value); break; @@ -3744,17 +3744,17 @@ namespace yy { value.move< double > (s.value); break; - case 302: // ClassNumber + case 304: // ClassNumber value.move< int > (s.value); break; case 4: // number - case 275: // SignedNumber + case 277: // SignedNumber value.move< long long > (s.value); break; - case 205: // ParameterList - case 206: // ParameterSeries + case 207: // ParameterList + case 208: // ParameterSeries value.move< std::set > (s.value); break; @@ -3771,59 +3771,59 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 207: // Parameter - case 213: // SimpleDefinedType - case 225: // ModuleIdentifier - case 243: // GlobalModuleReference - case 246: // Symbol - case 247: // Reference - case 370: // typereference - case 371: // identifier - case 372: // valuereference - case 373: // modulereference - case 374: // objectclassreference - case 375: // word + case 209: // Parameter + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.move< std::string > (s.value); break; - case 248: // AssignmentList + case 250: // AssignmentList value.move< std::vector > (s.value); break; - case 237: // Exports + case 239: // Exports value.move< std::vector > (s.value); break; - case 239: // Imports - case 240: // SymbolsImported - case 241: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.move< std::vector > (s.value); break; - case 273: // NamedNumberList + case 275: // NamedNumberList value.move< std::vector > (s.value); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.move< std::vector > (s.value); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.move< std::vector > (s.value); break; - case 254: // ActualParameterList + case 256: // ActualParameterList value.move< std::vector > (s.value); break; - case 269: // SequenceOfValues + case 271: // SequenceOfValues value.move< std::vector > (s.value); break; - case 245: // SymbolList + case 247: // SymbolList value.move< std::vector > (s.value); break; @@ -5013,205 +5013,205 @@ namespace yy { switch (that.type_get ()) { case 159: // ObjectClassAssignment - case 195: // ObjectSetAssignment - case 199: // ParameterizedAssignment - case 200: // ParameterizedTypeAssignment - case 201: // ParameterizedValueAssignment - case 202: // ParameterizedValueSetTypeAssignment - case 203: // ParameterizedObjectClassAssignment - case 204: // ParameterizedObjectAssignment - case 249: // Assignment - case 258: // TypeAssignment - case 259: // ValueAssignment - case 260: // ValueSetTypeAssignment + case 197: // ObjectSetAssignment + case 201: // ParameterizedAssignment + case 202: // ParameterizedTypeAssignment + case 203: // ParameterizedValueAssignment + case 204: // ParameterizedValueSetTypeAssignment + case 205: // ParameterizedObjectClassAssignment + case 206: // ParameterizedObjectAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.move< Assignment > (that.value); break; - case 281: // BitStringType + case 283: // BitStringType value.move< BitStringType > (that.value); break; - case 270: // BooleanType + case 272: // BooleanType value.move< BooleanType > (that.value); break; - case 262: // BuiltinType + case 264: // BuiltinType value.move< BuiltinType > (that.value); break; - case 326: // CharacterStringType + case 328: // CharacterStringType value.move< CharacterStringType > (that.value); break; - case 293: // ChoiceType + case 295: // ChoiceType value.move< ChoiceType > (that.value); break; - case 303: // Class + case 305: // Class value.move< Class > (that.value); break; - case 289: // ComponentType + case 291: // ComponentType value.move< ComponentType > (that.value); break; - case 287: // ComponentTypeLists - case 288: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.move< ComponentTypeList > (that.value); break; - case 324: // DateTimeType + case 326: // DateTimeType value.move< DateTimeType > (that.value); break; - case 322: // DateType + case 324: // DateType value.move< DateType > (that.value); break; - case 250: // DefinedType - case 252: // ParameterizedType + case 252: // DefinedType + case 254: // ParameterizedType value.move< DefinedType > (that.value); break; - case 251: // DefinedValue + case 253: // DefinedValue value.move< DefinedValue > (that.value); break; - case 325: // DurationType + case 327: // DurationType value.move< DurationType > (that.value); break; - case 318: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.move< EmbeddedPDVType > (that.value); break; - case 276: // EnumeratedType - case 277: // Enumerations - case 278: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.move< EnumeratedType > (that.value); break; - case 279: // EnumerationItem + case 281: // EnumerationItem value.move< EnumerationValue > (that.value); break; - case 319: // ExternalType + case 321: // ExternalType value.move< ExternalType > (that.value); break; - case 312: // IRIType + case 314: // IRIType value.move< IRIType > (that.value); break; - case 242: // SymbolsFromModule + case 244: // SymbolsFromModule value.move< Import > (that.value); break; - case 212: // InstanceOfType + case 214: // InstanceOfType value.move< InstanceOfType > (that.value); break; - case 272: // IntegerType + case 274: // IntegerType value.move< IntegerType > (that.value); break; - case 236: // ModuleBody + case 238: // ModuleBody value.move< Module > (that.value); break; - case 274: // NamedNumber + case 276: // NamedNumber value.move< NamedNumber > (that.value); break; - case 263: // NamedType + case 265: // NamedType value.move< NamedType > (that.value); break; - case 285: // NullType + case 287: // NullType value.move< NullType > (that.value); break; - case 198: // ObjectClassFieldType + case 200: // ObjectClassFieldType value.move< ObjectClassFieldType > (that.value); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.move< ObjectIdComponentValue > (that.value); break; - case 304: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.move< ObjectIdentifierType > (that.value); break; - case 284: // OctetStringType + case 286: // OctetStringType value.move< OctetStringType > (that.value); break; - case 298: // PrefixedType + case 300: // PrefixedType value.move< PrefixedType > (that.value); break; - case 280: // RealType + case 282: // RealType value.move< RealType > (that.value); break; - case 317: // RelativeIRIType + case 319: // RelativeIRIType value.move< RelativeIRIType > (that.value); break; - case 311: // RelativeOIDType + case 313: // RelativeOIDType value.move< RelativeOIDType > (that.value); break; - case 290: // SequenceOfType + case 292: // SequenceOfType value.move< SequenceOfType > (that.value); break; - case 286: // SequenceType + case 288: // SequenceType value.move< SequenceType > (that.value); break; - case 292: // SetOfType + case 294: // SetOfType value.move< SetOfType > (that.value); break; - case 291: // SetType + case 293: // SetType value.move< SetType > (that.value); break; - case 300: // Tag + case 302: // Tag value.move< Tag > (that.value); break; - case 299: // TaggedType + case 301: // TaggedType value.move< TaggedType > (that.value); break; - case 234: // TagDefault + case 236: // TagDefault value.move< TaggingMode > (that.value); break; - case 323: // TimeOfDayType + case 325: // TimeOfDayType value.move< TimeOfDayType > (that.value); break; - case 320: // TimeType + case 322: // TimeType value.move< TimeType > (that.value); break; - case 255: // ActualParameter - case 261: // Type - case 329: // ConstrainedType - case 330: // TypeWithConstraint + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.move< Type > (that.value); break; - case 264: // ValueWithoutTypeIdentifier - case 265: // Value - case 347: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.move< Value > (that.value); break; @@ -5219,17 +5219,17 @@ namespace yy { value.move< double > (that.value); break; - case 302: // ClassNumber + case 304: // ClassNumber value.move< int > (that.value); break; case 4: // number - case 275: // SignedNumber + case 277: // SignedNumber value.move< long long > (that.value); break; - case 205: // ParameterList - case 206: // ParameterSeries + case 207: // ParameterList + case 208: // ParameterSeries value.move< std::set > (that.value); break; @@ -5246,59 +5246,59 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 207: // Parameter - case 213: // SimpleDefinedType - case 225: // ModuleIdentifier - case 243: // GlobalModuleReference - case 246: // Symbol - case 247: // Reference - case 370: // typereference - case 371: // identifier - case 372: // valuereference - case 373: // modulereference - case 374: // objectclassreference - case 375: // word + case 209: // Parameter + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.move< std::string > (that.value); break; - case 248: // AssignmentList + case 250: // AssignmentList value.move< std::vector > (that.value); break; - case 237: // Exports + case 239: // Exports value.move< std::vector > (that.value); break; - case 239: // Imports - case 240: // SymbolsImported - case 241: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.move< std::vector > (that.value); break; - case 273: // NamedNumberList + case 275: // NamedNumberList value.move< std::vector > (that.value); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.move< std::vector > (that.value); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.move< std::vector > (that.value); break; - case 254: // ActualParameterList + case 256: // ActualParameterList value.move< std::vector > (that.value); break; - case 269: // SequenceOfValues + case 271: // SequenceOfValues value.move< std::vector > (that.value); break; - case 245: // SymbolList + case 247: // SymbolList value.move< std::vector > (that.value); break; @@ -5318,205 +5318,205 @@ namespace yy { switch (that.type_get ()) { case 159: // ObjectClassAssignment - case 195: // ObjectSetAssignment - case 199: // ParameterizedAssignment - case 200: // ParameterizedTypeAssignment - case 201: // ParameterizedValueAssignment - case 202: // ParameterizedValueSetTypeAssignment - case 203: // ParameterizedObjectClassAssignment - case 204: // ParameterizedObjectAssignment - case 249: // Assignment - case 258: // TypeAssignment - case 259: // ValueAssignment - case 260: // ValueSetTypeAssignment + case 197: // ObjectSetAssignment + case 201: // ParameterizedAssignment + case 202: // ParameterizedTypeAssignment + case 203: // ParameterizedValueAssignment + case 204: // ParameterizedValueSetTypeAssignment + case 205: // ParameterizedObjectClassAssignment + case 206: // ParameterizedObjectAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.copy< Assignment > (that.value); break; - case 281: // BitStringType + case 283: // BitStringType value.copy< BitStringType > (that.value); break; - case 270: // BooleanType + case 272: // BooleanType value.copy< BooleanType > (that.value); break; - case 262: // BuiltinType + case 264: // BuiltinType value.copy< BuiltinType > (that.value); break; - case 326: // CharacterStringType + case 328: // CharacterStringType value.copy< CharacterStringType > (that.value); break; - case 293: // ChoiceType + case 295: // ChoiceType value.copy< ChoiceType > (that.value); break; - case 303: // Class + case 305: // Class value.copy< Class > (that.value); break; - case 289: // ComponentType + case 291: // ComponentType value.copy< ComponentType > (that.value); break; - case 287: // ComponentTypeLists - case 288: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.copy< ComponentTypeList > (that.value); break; - case 324: // DateTimeType + case 326: // DateTimeType value.copy< DateTimeType > (that.value); break; - case 322: // DateType + case 324: // DateType value.copy< DateType > (that.value); break; - case 250: // DefinedType - case 252: // ParameterizedType + case 252: // DefinedType + case 254: // ParameterizedType value.copy< DefinedType > (that.value); break; - case 251: // DefinedValue + case 253: // DefinedValue value.copy< DefinedValue > (that.value); break; - case 325: // DurationType + case 327: // DurationType value.copy< DurationType > (that.value); break; - case 318: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.copy< EmbeddedPDVType > (that.value); break; - case 276: // EnumeratedType - case 277: // Enumerations - case 278: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.copy< EnumeratedType > (that.value); break; - case 279: // EnumerationItem + case 281: // EnumerationItem value.copy< EnumerationValue > (that.value); break; - case 319: // ExternalType + case 321: // ExternalType value.copy< ExternalType > (that.value); break; - case 312: // IRIType + case 314: // IRIType value.copy< IRIType > (that.value); break; - case 242: // SymbolsFromModule + case 244: // SymbolsFromModule value.copy< Import > (that.value); break; - case 212: // InstanceOfType + case 214: // InstanceOfType value.copy< InstanceOfType > (that.value); break; - case 272: // IntegerType + case 274: // IntegerType value.copy< IntegerType > (that.value); break; - case 236: // ModuleBody + case 238: // ModuleBody value.copy< Module > (that.value); break; - case 274: // NamedNumber + case 276: // NamedNumber value.copy< NamedNumber > (that.value); break; - case 263: // NamedType + case 265: // NamedType value.copy< NamedType > (that.value); break; - case 285: // NullType + case 287: // NullType value.copy< NullType > (that.value); break; - case 198: // ObjectClassFieldType + case 200: // ObjectClassFieldType value.copy< ObjectClassFieldType > (that.value); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.copy< ObjectIdComponentValue > (that.value); break; - case 304: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.copy< ObjectIdentifierType > (that.value); break; - case 284: // OctetStringType + case 286: // OctetStringType value.copy< OctetStringType > (that.value); break; - case 298: // PrefixedType + case 300: // PrefixedType value.copy< PrefixedType > (that.value); break; - case 280: // RealType + case 282: // RealType value.copy< RealType > (that.value); break; - case 317: // RelativeIRIType + case 319: // RelativeIRIType value.copy< RelativeIRIType > (that.value); break; - case 311: // RelativeOIDType + case 313: // RelativeOIDType value.copy< RelativeOIDType > (that.value); break; - case 290: // SequenceOfType + case 292: // SequenceOfType value.copy< SequenceOfType > (that.value); break; - case 286: // SequenceType + case 288: // SequenceType value.copy< SequenceType > (that.value); break; - case 292: // SetOfType + case 294: // SetOfType value.copy< SetOfType > (that.value); break; - case 291: // SetType + case 293: // SetType value.copy< SetType > (that.value); break; - case 300: // Tag + case 302: // Tag value.copy< Tag > (that.value); break; - case 299: // TaggedType + case 301: // TaggedType value.copy< TaggedType > (that.value); break; - case 234: // TagDefault + case 236: // TagDefault value.copy< TaggingMode > (that.value); break; - case 323: // TimeOfDayType + case 325: // TimeOfDayType value.copy< TimeOfDayType > (that.value); break; - case 320: // TimeType + case 322: // TimeType value.copy< TimeType > (that.value); break; - case 255: // ActualParameter - case 261: // Type - case 329: // ConstrainedType - case 330: // TypeWithConstraint + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.copy< Type > (that.value); break; - case 264: // ValueWithoutTypeIdentifier - case 265: // Value - case 347: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.copy< Value > (that.value); break; @@ -5524,17 +5524,17 @@ namespace yy { value.copy< double > (that.value); break; - case 302: // ClassNumber + case 304: // ClassNumber value.copy< int > (that.value); break; case 4: // number - case 275: // SignedNumber + case 277: // SignedNumber value.copy< long long > (that.value); break; - case 205: // ParameterList - case 206: // ParameterSeries + case 207: // ParameterList + case 208: // ParameterSeries value.copy< std::set > (that.value); break; @@ -5551,59 +5551,59 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 207: // Parameter - case 213: // SimpleDefinedType - case 225: // ModuleIdentifier - case 243: // GlobalModuleReference - case 246: // Symbol - case 247: // Reference - case 370: // typereference - case 371: // identifier - case 372: // valuereference - case 373: // modulereference - case 374: // objectclassreference - case 375: // word + case 209: // Parameter + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.copy< std::string > (that.value); break; - case 248: // AssignmentList + case 250: // AssignmentList value.copy< std::vector > (that.value); break; - case 237: // Exports + case 239: // Exports value.copy< std::vector > (that.value); break; - case 239: // Imports - case 240: // SymbolsImported - case 241: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.copy< std::vector > (that.value); break; - case 273: // NamedNumberList + case 275: // NamedNumberList value.copy< std::vector > (that.value); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.copy< std::vector > (that.value); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.copy< std::vector > (that.value); break; - case 254: // ActualParameterList + case 256: // ActualParameterList value.copy< std::vector > (that.value); break; - case 269: // SequenceOfValues + case 271: // SequenceOfValues value.copy< std::vector > (that.value); break; - case 245: // SymbolList + case 247: // SymbolList value.copy< std::vector > (that.value); break; @@ -5836,205 +5836,205 @@ namespace yy { switch (yyr1_[yyn]) { case 159: // ObjectClassAssignment - case 195: // ObjectSetAssignment - case 199: // ParameterizedAssignment - case 200: // ParameterizedTypeAssignment - case 201: // ParameterizedValueAssignment - case 202: // ParameterizedValueSetTypeAssignment - case 203: // ParameterizedObjectClassAssignment - case 204: // ParameterizedObjectAssignment - case 249: // Assignment - case 258: // TypeAssignment - case 259: // ValueAssignment - case 260: // ValueSetTypeAssignment + case 197: // ObjectSetAssignment + case 201: // ParameterizedAssignment + case 202: // ParameterizedTypeAssignment + case 203: // ParameterizedValueAssignment + case 204: // ParameterizedValueSetTypeAssignment + case 205: // ParameterizedObjectClassAssignment + case 206: // ParameterizedObjectAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment yylhs.value.build< Assignment > (); break; - case 281: // BitStringType + case 283: // BitStringType yylhs.value.build< BitStringType > (); break; - case 270: // BooleanType + case 272: // BooleanType yylhs.value.build< BooleanType > (); break; - case 262: // BuiltinType + case 264: // BuiltinType yylhs.value.build< BuiltinType > (); break; - case 326: // CharacterStringType + case 328: // CharacterStringType yylhs.value.build< CharacterStringType > (); break; - case 293: // ChoiceType + case 295: // ChoiceType yylhs.value.build< ChoiceType > (); break; - case 303: // Class + case 305: // Class yylhs.value.build< Class > (); break; - case 289: // ComponentType + case 291: // ComponentType yylhs.value.build< ComponentType > (); break; - case 287: // ComponentTypeLists - case 288: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList yylhs.value.build< ComponentTypeList > (); break; - case 324: // DateTimeType + case 326: // DateTimeType yylhs.value.build< DateTimeType > (); break; - case 322: // DateType + case 324: // DateType yylhs.value.build< DateType > (); break; - case 250: // DefinedType - case 252: // ParameterizedType + case 252: // DefinedType + case 254: // ParameterizedType yylhs.value.build< DefinedType > (); break; - case 251: // DefinedValue + case 253: // DefinedValue yylhs.value.build< DefinedValue > (); break; - case 325: // DurationType + case 327: // DurationType yylhs.value.build< DurationType > (); break; - case 318: // EmbeddedPDVType + case 320: // EmbeddedPDVType yylhs.value.build< EmbeddedPDVType > (); break; - case 276: // EnumeratedType - case 277: // Enumerations - case 278: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration yylhs.value.build< EnumeratedType > (); break; - case 279: // EnumerationItem + case 281: // EnumerationItem yylhs.value.build< EnumerationValue > (); break; - case 319: // ExternalType + case 321: // ExternalType yylhs.value.build< ExternalType > (); break; - case 312: // IRIType + case 314: // IRIType yylhs.value.build< IRIType > (); break; - case 242: // SymbolsFromModule + case 244: // SymbolsFromModule yylhs.value.build< Import > (); break; - case 212: // InstanceOfType + case 214: // InstanceOfType yylhs.value.build< InstanceOfType > (); break; - case 272: // IntegerType + case 274: // IntegerType yylhs.value.build< IntegerType > (); break; - case 236: // ModuleBody + case 238: // ModuleBody yylhs.value.build< Module > (); break; - case 274: // NamedNumber + case 276: // NamedNumber yylhs.value.build< NamedNumber > (); break; - case 263: // NamedType + case 265: // NamedType yylhs.value.build< NamedType > (); break; - case 285: // NullType + case 287: // NullType yylhs.value.build< NullType > (); break; - case 198: // ObjectClassFieldType + case 200: // ObjectClassFieldType yylhs.value.build< ObjectClassFieldType > (); break; - case 307: // ObjIdComponents - case 308: // NameForm - case 309: // NumberForm - case 310: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm yylhs.value.build< ObjectIdComponentValue > (); break; - case 304: // ObjectIdentifierType + case 306: // ObjectIdentifierType yylhs.value.build< ObjectIdentifierType > (); break; - case 284: // OctetStringType + case 286: // OctetStringType yylhs.value.build< OctetStringType > (); break; - case 298: // PrefixedType + case 300: // PrefixedType yylhs.value.build< PrefixedType > (); break; - case 280: // RealType + case 282: // RealType yylhs.value.build< RealType > (); break; - case 317: // RelativeIRIType + case 319: // RelativeIRIType yylhs.value.build< RelativeIRIType > (); break; - case 311: // RelativeOIDType + case 313: // RelativeOIDType yylhs.value.build< RelativeOIDType > (); break; - case 290: // SequenceOfType + case 292: // SequenceOfType yylhs.value.build< SequenceOfType > (); break; - case 286: // SequenceType + case 288: // SequenceType yylhs.value.build< SequenceType > (); break; - case 292: // SetOfType + case 294: // SetOfType yylhs.value.build< SetOfType > (); break; - case 291: // SetType + case 293: // SetType yylhs.value.build< SetType > (); break; - case 300: // Tag + case 302: // Tag yylhs.value.build< Tag > (); break; - case 299: // TaggedType + case 301: // TaggedType yylhs.value.build< TaggedType > (); break; - case 234: // TagDefault + case 236: // TagDefault yylhs.value.build< TaggingMode > (); break; - case 323: // TimeOfDayType + case 325: // TimeOfDayType yylhs.value.build< TimeOfDayType > (); break; - case 320: // TimeType + case 322: // TimeType yylhs.value.build< TimeType > (); break; - case 255: // ActualParameter - case 261: // Type - case 329: // ConstrainedType - case 330: // TypeWithConstraint + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint yylhs.value.build< Type > (); break; - case 264: // ValueWithoutTypeIdentifier - case 265: // Value - case 347: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue yylhs.value.build< Value > (); break; @@ -6042,17 +6042,17 @@ namespace yy { yylhs.value.build< double > (); break; - case 302: // ClassNumber + case 304: // ClassNumber yylhs.value.build< int > (); break; case 4: // number - case 275: // SignedNumber + case 277: // SignedNumber yylhs.value.build< long long > (); break; - case 205: // ParameterList - case 206: // ParameterSeries + case 207: // ParameterList + case 208: // ParameterSeries yylhs.value.build< std::set > (); break; @@ -6069,59 +6069,59 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 207: // Parameter - case 213: // SimpleDefinedType - case 225: // ModuleIdentifier - case 243: // GlobalModuleReference - case 246: // Symbol - case 247: // Reference - case 370: // typereference - case 371: // identifier - case 372: // valuereference - case 373: // modulereference - case 374: // objectclassreference - case 375: // word + case 209: // Parameter + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word yylhs.value.build< std::string > (); break; - case 248: // AssignmentList + case 250: // AssignmentList yylhs.value.build< std::vector > (); break; - case 237: // Exports + case 239: // Exports yylhs.value.build< std::vector > (); break; - case 239: // Imports - case 240: // SymbolsImported - case 241: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList yylhs.value.build< std::vector > (); break; - case 273: // NamedNumberList + case 275: // NamedNumberList yylhs.value.build< std::vector > (); break; - case 294: // AlternativeTypeLists - case 295: // RootAlternativeTypeList - case 296: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList yylhs.value.build< std::vector > (); break; - case 305: // ObjectIdentifierValue - case 306: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList yylhs.value.build< std::vector > (); break; - case 254: // ActualParameterList + case 256: // ActualParameterList yylhs.value.build< std::vector > (); break; - case 269: // SequenceOfValues + case 271: // SequenceOfValues yylhs.value.build< std::vector > (); break; - case 245: // SymbolList + case 247: // SymbolList yylhs.value.build< std::vector > (); break; @@ -6156,1197 +6156,1203 @@ namespace yy { #line 6155 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 81: -#line 495 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 86: +#line 505 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[3].value.as< std::string > (), ObjectSetAssignment{}}; } #line 6161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 90: -#line 522 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 95: +#line 532 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 91: -#line 524 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 96: +#line 534 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 92: -#line 526 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 97: +#line 536 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 93: -#line 528 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 98: +#line 538 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 94: -#line 530 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 99: +#line 540 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6191 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 95: -#line 535 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 100: +#line 545 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {}, yystack_[2].value.as< std::set > () }; } #line 6197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 96: -#line 539 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 101: +#line 549 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } #line 6203 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 97: -#line 543 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 102: +#line 553 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } #line 6209 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 98: -#line 547 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 103: +#line 557 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ObjectClassAssignment{} }; } #line 6215 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 99: -#line 551 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 104: +#line 561 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ObjectClassAssignment{} }; } #line 6221 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 100: -#line 559 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 105: +#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[1].value.as< std::set > (); } #line 6227 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 101: -#line 563 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 106: +#line 573 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } #line 6233 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 102: -#line 565 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 107: +#line 575 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[2].value.as< std::set > (); yystack_[2].value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } #line 6239 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 103: -#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 108: +#line 579 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 6245 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 104: -#line 571 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 109: +#line 581 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 6251 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 113: -#line 624 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 118: +#line 634 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 6257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 125: -#line 648 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 132: +#line 659 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Simple constraint\n"; } #line 6263 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 126: -#line 650 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 133: +#line 661 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Relation constraint\n"; } #line 6269 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 139: -#line 692 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 146: +#line 703 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } #line 6277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 154: -#line 731 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 161: +#line 742 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } #line 6283 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 155: -#line 733 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 162: +#line 744 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::implicit; } #line 6289 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 156: -#line 735 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 163: +#line 746 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::automatic; } #line 6295 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 157: -#line 737 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 164: +#line 748 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } #line 6301 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 160: -#line 745 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 167: +#line 756 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Module > () = Module{ {}, TaggingMode(), yystack_[2].value.as< std::vector > (), yystack_[1].value.as< std::vector > (), yystack_[0].value.as< std::vector > ()}; } #line 6307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 161: -#line 747 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 168: +#line 758 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { } #line 6313 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 167: -#line 760 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 174: +#line 771 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } #line 6319 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 169: -#line 765 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 176: +#line 776 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } #line 6325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 171: -#line 770 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 178: +#line 781 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } #line 6331 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 172: -#line 772 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 179: +#line 783 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } #line 6337 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 173: -#line 776 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 180: +#line 787 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Import > () = Import{ yystack_[0].value.as< std::string > (), yystack_[2].value.as< std::vector > () }; } #line 6343 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 174: -#line 780 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 181: +#line 791 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } #line 6349 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 178: -#line 789 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 185: +#line 800 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } #line 6355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 179: -#line 791 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 186: +#line 802 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } #line 6361 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 180: -#line 795 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 187: +#line 806 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 6367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 181: -#line 799 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 188: +#line 810 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 6373 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 182: -#line 801 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 189: +#line 812 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[2].value.as< std::string > (); } #line 6379 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 183: -#line 803 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 190: +#line 814 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 6385 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 184: -#line 812 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 191: +#line 823 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } #line 6391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 185: -#line 814 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 192: +#line 825 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Assignment > ()); } #line 6397 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 186: -#line 818 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 193: +#line 829 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6403 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 187: -#line 820 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 194: +#line 831 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6409 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 188: -#line 822 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 195: +#line 833 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6415 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 189: -#line 824 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 196: +#line 835 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 190: -#line 827 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 197: +#line 838 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 191: -#line 829 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 198: +#line 840 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } #line 6433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 193: -#line 834 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 200: +#line 845 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{yystack_[0].value.as< std::string > (), {}}; } #line 6439 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 194: -#line 836 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 201: +#line 847 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } #line 6445 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 195: -#line 842 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 202: +#line 853 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedValue > () = DefinedValue{yystack_[0].value.as< std::string > ()}; } #line 6451 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 197: -#line 847 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< DefinedType > () = DefinedType{yystack_[1].value.as< std::string > (), yystack_[0].value.as< std::vector > ()}; } + case 204: +#line 858 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< DefinedType > () = DefinedType{yystack_[3].value.as< std::string > (), yystack_[1].value.as< std::vector > ()}; } #line 6457 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 199: -#line 854 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Type > ()); } + case 206: +#line 865 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Type > ()); } #line 6463 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 200: -#line 858 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } + case 207: +#line 867 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[2].value.as< Type > ()); } #line 6469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 201: -#line 860 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << "Warning: Not yet dealing with value paramaters\n"; } + case 208: +#line 871 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } #line 6475 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 205: -#line 901 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = Assignment{ yystack_[2].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {} }; } + case 209: +#line 873 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << "Warning: Not yet dealing with value paramaters\n"; } #line 6481 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 206: -#line 905 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ValueAssignment{yystack_[2].value.as< Type > (), yystack_[0].value.as< Value > ()}, {} }; } + case 213: +#line 914 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Assignment > () = Assignment{ yystack_[2].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {} }; } #line 6487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 207: -#line 909 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[2].value.as< Type > ()}, {} }; } + case 214: +#line 918 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ValueAssignment{yystack_[2].value.as< Type > (), yystack_[0].value.as< Value > ()}, {} }; } #line 6493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 208: -#line 913 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = yystack_[0].value.as< BuiltinType > (); } + case 215: +#line 922 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[2].value.as< Type > ()}, {} }; } #line 6499 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 209: -#line 915 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } + case 216: +#line 926 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[0].value.as< BuiltinType > (); } #line 6505 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 210: -#line 917 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = yystack_[0].value.as< DefinedType > (); } + case 217: +#line 928 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } #line 6511 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 211: -#line 919 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << "Warning: Not handled - SelectionType\n"; } + case 218: +#line 930 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[0].value.as< DefinedType > (); } #line 6517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 212: -#line 921 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << "Warning: Not handled - TypeFromObject\n"; } + case 219: +#line 932 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << "Warning: Not handled - SelectionType\n"; } #line 6523 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 213: -#line 925 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = AnyType(); } + case 220: +#line 934 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << "Warning: Not handled - TypeFromObject\n"; } #line 6529 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 214: -#line 926 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } + case 221: +#line 938 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = AnyType(); } #line 6535 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 215: -#line 927 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } + case 222: +#line 939 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } #line 6541 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 216: -#line 928 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } + case 223: +#line 940 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } #line 6547 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 217: -#line 929 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } + case 224: +#line 941 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } #line 6553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 218: -#line 930 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } + case 225: +#line 942 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } #line 6559 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 219: -#line 931 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } + case 226: +#line 943 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } #line 6565 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 220: -#line 932 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } + case 227: +#line 944 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } #line 6571 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 221: -#line 933 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } + case 228: +#line 945 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } #line 6577 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 222: -#line 934 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } + case 229: +#line 946 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } #line 6583 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 223: -#line 935 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } + case 230: +#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } #line 6589 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 224: -#line 936 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } + case 231: +#line 948 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } #line 6595 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 225: -#line 937 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } + case 232: +#line 949 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } #line 6601 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 226: -#line 938 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } + case 233: +#line 950 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } #line 6607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 227: -#line 939 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } + case 234: +#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } #line 6613 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 228: -#line 940 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } + case 235: +#line 952 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } #line 6619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 229: -#line 941 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } + case 236: +#line 953 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } #line 6625 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 230: -#line 942 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } + case 237: +#line 954 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } #line 6631 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 231: -#line 943 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } + case 238: +#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } #line 6637 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 232: -#line 944 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } + case 239: +#line 956 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } #line 6643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 233: -#line 945 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } + case 240: +#line 957 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } #line 6649 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 234: -#line 946 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } + case 241: +#line 958 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } #line 6655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 235: -#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } + case 242: +#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } #line 6661 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 236: -#line 948 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } + case 243: +#line 960 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } #line 6667 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 237: -#line 949 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } + case 244: +#line 961 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } #line 6673 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 238: -#line 950 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } + case 245: +#line 962 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } #line 6679 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 239: -#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } + case 246: +#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } #line 6685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 240: -#line 952 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } + case 247: +#line 964 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } #line 6691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 241: -#line 953 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } + case 248: +#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } #line 6697 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 242: -#line 954 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } + case 249: +#line 966 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } #line 6703 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 243: -#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< BuiltinType > () = UTCTimeType(); } + case 250: +#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } #line 6709 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 244: -#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } + case 251: +#line 968 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BuiltinType > () = UTCTimeType(); } #line 6715 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 245: -#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } + case 252: +#line 972 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } #line 6721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 246: -#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } + case 253: +#line 976 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } #line 6727 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 247: -#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } + case 254: +#line 978 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } #line 6733 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 248: -#line 969 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } + case 255: +#line 980 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } #line 6739 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 249: -#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: bstring\n"); } + case 256: +#line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } #line 6745 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 250: -#line 973 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: hstring\n"); } + case 257: +#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: bstring\n"); } #line 6751 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 251: -#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } + case 258: +#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: hstring\n"); } #line 6757 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 252: -#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } + case 259: +#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } #line 6763 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 253: -#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().defined_value = yystack_[0].value.as< DefinedValue > (); } + case 260: +#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } #line 6769 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 254: -#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } + case 261: +#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().defined_value = yystack_[0].value.as< DefinedValue > (); } #line 6775 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 256: -#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } + case 262: +#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } #line 6781 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 257: -#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } + case 264: +#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } #line 6787 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 258: -#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } + case 265: +#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } #line 6793 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 259: -#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 266: +#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } #line 6799 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 260: -#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } + case 267: +#line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } #line 6805 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 261: -#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } + case 268: +#line 1007 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } #line 6811 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 262: -#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } + case 269: +#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } #line 6817 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 263: -#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } + case 270: +#line 1011 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } #line 6823 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 264: -#line 1002 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: BY\n"); } + case 271: +#line 1013 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } #line 6829 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 265: -#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } + case 272: +#line 1015 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: BY\n"); } #line 6835 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 266: -#line 1008 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } + case 273: +#line 1017 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } #line 6841 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 267: -#line 1010 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } + case 274: +#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } #line 6847 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 273: -#line 1025 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } + case 275: +#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } #line 6853 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 274: -#line 1027 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } + case 281: +#line 1038 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } #line 6859 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 278: -#line 1042 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< IntegerType > () = IntegerType{{}}; } + case 282: +#line 1040 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } #line 6865 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 279: -#line 1044 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } + case 286: +#line 1055 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< IntegerType > () = IntegerType{{}}; } #line 6871 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 280: -#line 1048 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } + case 287: +#line 1057 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } #line 6877 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 281: -#line 1050 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } + case 288: +#line 1061 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } #line 6883 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 282: -#line 1054 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } + case 289: +#line 1063 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } #line 6889 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 283: -#line 1056 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } + case 290: +#line 1067 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } #line 6895 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 284: -#line 1060 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } + case 291: +#line 1069 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } #line 6901 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 285: -#line 1062 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } + case 292: +#line 1073 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } #line 6907 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 286: -#line 1066 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } + case 293: +#line 1075 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } #line 6913 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 287: -#line 1070 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 294: +#line 1079 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } +#line 6919 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 295: +#line 1083 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[0].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = false; } -#line 6920 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6926 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 288: -#line 1073 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 296: +#line 1086 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[3].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; } -#line 6927 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6933 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 289: -#line 1076 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 297: +#line 1089 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[5].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; yylhs.value.as< EnumeratedType > ().enum_values.insert(yylhs.value.as< EnumeratedType > ().enum_values.end(), yystack_[0].value.as< EnumeratedType > ().enum_values.begin(), yystack_[0].value.as< EnumeratedType > ().enum_values.end()); } -#line 6935 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6941 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 291: -#line 1083 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 299: +#line 1096 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6941 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6947 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 292: -#line 1085 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 300: +#line 1098 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6947 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6953 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 293: -#line 1089 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 301: +#line 1102 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } -#line 6953 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6959 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 294: -#line 1091 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 302: +#line 1104 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } -#line 6960 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 - break; - - case 304: -#line 1131 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceType > () = SequenceType(); } #line 6966 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 305: -#line 1133 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } + case 312: +#line 1144 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceType > () = SequenceType(); } #line 6972 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 306: -#line 1137 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } + case 313: +#line 1146 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } #line 6978 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 307: -#line 1139 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } + case 314: +#line 1150 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } #line 6984 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 308: -#line 1141 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } + case 315: +#line 1152 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } #line 6990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 309: -#line 1143 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } + case 316: +#line 1154 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } #line 6996 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 310: -#line 1145 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } + case 317: +#line 1156 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } #line 7002 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 311: -#line 1147 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } + case 318: +#line 1158 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } #line 7008 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 312: -#line 1149 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } + case 319: +#line 1160 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } #line 7014 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 313: -#line 1151 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = {}; } + case 320: +#line 1162 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } #line 7020 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 314: -#line 1153 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 321: +#line 1164 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } #line 7026 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 315: -#line 1157 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } + case 322: +#line 1166 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = {}; } #line 7032 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 316: -#line 1159 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } + case 323: +#line 1170 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } #line 7038 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 317: -#line 1163 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt}; } + case 324: +#line 1172 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } #line 7044 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 318: -#line 1165 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt}; } + case 325: +#line 1176 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt}; } #line 7050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 319: -#line 1167 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > ()}; } + case 326: +#line 1178 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt}; } #line 7056 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 321: + case 327: #line 1180 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > ()}; } #line 7062 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 322: -#line 1182 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + case 329: +#line 1193 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 323: -#line 1186 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetType > () = SetType{}; } + case 330: +#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7074 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 324: -#line 1188 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } + case 331: +#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetType > () = SetType{}; } #line 7080 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 325: -#line 1192 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + case 332: +#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } #line 7086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 326: -#line 1194 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + case 333: +#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7092 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 327: -#line 1198 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } + case 334: +#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7098 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 328: -#line 1202 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } + case 335: +#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } #line 7104 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 329: -#line 1206 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 336: +#line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } #line 7110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 330: -#line 1208 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } + case 337: +#line 1219 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } #line 7116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 331: -#line 1210 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { 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()); } + case 338: +#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } #line 7122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 332: -#line 1214 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } + case 339: +#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { 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 7128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 333: -#line 1216 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yystack_[2].value.as< std::vector > ().push_back( yystack_[0].value.as< NamedType > () ); yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } + case 340: +#line 1227 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } #line 7134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 335: -#line 1226 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } + case 341: +#line 1229 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { 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 7140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 336: -#line 1230 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } + case 343: +#line 1239 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } #line 7146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 337: -#line 1232 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } + case 344: +#line 1243 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } #line 7152 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 338: -#line 1234 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } + case 345: +#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } #line 7158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 339: -#line 1238 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } + case 346: +#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } #line 7164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 342: -#line 1246 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } + case 347: +#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } #line 7170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 344: -#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Class > () = Class::universal; } + case 350: +#line 1259 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } #line 7176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 345: -#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Class > () = Class::application; } + case 352: +#line 1264 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Class > () = Class::universal; } #line 7182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 346: -#line 1255 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Class > () = Class::private_; } + case 353: +#line 1266 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Class > () = Class::application; } #line 7188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 347: -#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Class > () = Class::context_specific; } + case 354: +#line 1268 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Class > () = Class::private_; } #line 7194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 349: + case 355: #line 1270 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { 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()); } + { yylhs.value.as< Class > () = Class::context_specific; } #line 7200 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 350: -#line 1272 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 357: +#line 1283 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7206 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 351: -#line 1276 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } + case 358: +#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { 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 7212 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 352: -#line 1278 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } + case 359: +#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } #line 7218 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - - case 353: -#line 1282 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } + + case 360: +#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } #line 7224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 354: -#line 1284 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 361: +#line 1295 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } #line 7230 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 355: -#line 1286 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 362: +#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } #line 7236 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 356: -#line 1290 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } + case 363: +#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } #line 7242 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 357: -#line 1294 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } + case 364: +#line 1303 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } #line 7248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 359: -#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } + case 365: +#line 1307 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } #line 7254 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 393: -#line 1395 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } + case 367: +#line 1312 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } #line 7260 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 394: -#line 1397 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } + case 401: +#line 1408 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } #line 7266 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 395: -#line 1401 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + case 402: +#line 1410 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } #line 7272 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 396: -#line 1403 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 403: +#line 1414 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7278 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 397: -#line 1405 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + case 404: +#line 1416 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7284 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 398: -#line 1407 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 405: +#line 1418 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7290 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 399: -#line 1409 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + case 406: +#line 1420 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } #line 7296 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 400: -#line 1411 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 407: +#line 1422 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 401: -#line 1413 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + case 408: +#line 1424 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7308 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 402: -#line 1415 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 409: +#line 1426 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 485: -#line 1583 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } + case 410: +#line 1428 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } #line 7320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 486: -#line 1587 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 493: +#line 1596 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 7326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 487: -#line 1591 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 494: +#line 1600 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 7332 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 488: -#line 1595 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 495: +#line 1604 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 7338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 489: -#line 1599 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 496: +#line 1608 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } #line 7344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; + case 497: +#line 1612 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } +#line 7350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; -#line 7348 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + +#line 7354 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 default: break; } @@ -7601,741 +7607,762 @@ namespace yy { } - const short int asn1_parser::yypact_ninf_ = -705; + const short int asn1_parser::yypact_ninf_ = -616; - const short int asn1_parser::yytable_ninf_ = -489; + const short int asn1_parser::yytable_ninf_ = -498; const short int asn1_parser::yypact_[] = { - -56, -705, 221, -56, 190, 137, -705, -705, 264, 41, - -705, 200, -705, 266, 239, -705, -705, 194, 41, -705, - -705, -705, 196, 208, -705, -705, 252, 260, 282, 337, - -705, -705, 403, 117, 278, -705, -705, -705, 365, 329, - 325, -705, -705, -705, 117, 321, -705, 423, -705, 278, - -705, 370, -705, 96, -705, 390, 328, -705, -705, 331, - 327, -705, -705, 347, -705, 419, 298, 18, -705, -705, - 298, 353, -705, 340, 298, -705, -6, 364, -705, -705, - -705, -705, -705, -705, -705, -705, -705, -705, 18, -705, - -705, -705, 2345, 2547, 364, -705, -705, -705, -705, -56, - 2947, 9, -705, -705, -705, -705, -705, 387, -705, -705, - 388, 368, -705, -705, -705, 404, 372, -705, -705, -705, - -705, -705, 414, 375, -705, -705, 434, -705, 401, -705, - -705, -705, -705, -705, -2, 219, -705, -705, -705, -705, - -705, -705, -705, -705, -705, -705, 2646, 490, -705, 371, - -705, -705, 389, -705, -705, 2745, 374, -705, -705, 384, - -705, -705, 392, 238, -705, -705, -705, -705, -705, -705, - -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, - 2448, -705, -705, -705, -705, -705, -705, -705, -705, -705, - -705, -705, -705, -705, -705, -705, -705, 189, 383, 376, - 3046, 271, -40, 380, 402, -705, 157, -705, 244, -705, - -705, 371, -34, -705, 385, -705, 386, 395, 241, 393, - -705, 411, 407, -705, 413, 406, -705, 405, -705, -46, - 9, 405, -705, -705, 3046, 395, 3, 1160, 438, 451, - 3046, 27, 455, 463, 428, -705, -705, -705, 395, 415, - 12, 509, 430, 3046, 285, 509, 1656, -705, 436, -705, - 3046, 3046, 395, 228, 3046, 48, 288, 2117, 536, 118, - 55, -705, -705, -705, -705, 2947, 298, 57, 59, 416, - 405, -705, 439, -705, 424, 3046, 431, -705, 443, 432, - -705, 444, -705, 201, -705, 444, 395, -705, 2848, -705, - 484, 431, -705, -3, 448, 437, -705, -705, -705, -705, - -705, -705, -705, 519, -35, 538, 3046, 539, -705, 395, - -705, -705, 2117, 567, -705, 412, 1284, 1408, 576, 256, - -705, 459, -705, -705, -705, -705, 395, -705, -705, -705, - 431, -705, -705, 447, 90, 163, -4, 69, -705, 519, - 527, -705, -31, -705, 3046, -705, 464, 456, -705, -705, - -705, -705, -705, -705, 3046, 3046, 395, -705, -705, 465, - 3046, 3046, 400, -705, -705, -705, -705, 101, -705, -705, - -705, -705, -705, -705, 450, -705, 395, 2117, 450, -705, - -705, -705, -705, 467, -705, 2117, -705, -705, 2117, -705, - 286, 186, -705, 449, 384, -705, -705, 471, -705, 395, - 474, 296, 452, 462, -705, -705, -705, -705, 477, 470, - 1408, -705, 395, 395, 450, -705, 395, -705, -705, 2117, - -705, 213, 483, -705, -705, 296, 472, 473, -705, -705, - 55, 489, 55, -705, -705, -705, 491, -705, -705, -705, - -705, 835, -705, -705, -705, -705, -705, 247, -705, 493, - -705, 135, 395, 1902, -705, -705, 141, 45, -705, 405, - 3046, 479, 110, -705, -705, 19, 1532, -705, 496, 7, - 2117, -705, 296, -705, 395, 497, 485, 501, 494, 505, - -705, 498, 506, 513, -705, -705, 1532, -705, -705, 1532, - -705, 395, 60, -705, 395, -705, 395, -705, -705, 395, - -705, 395, -705, 181, 2246, 9, 250, -705, -705, -705, - -705, -705, -705, -705, -705, 508, 509, 296, 296, 296, - 2020, 635, -705, -705, 2117, 2117, 2117, 2117, 2117, 37, - 516, 296, 509, 495, -705, 518, -705, -705, 133, -705, - 512, -705, -705, 467, -705, -705, 387, -705, -705, -705, - 388, 368, -705, -705, -705, -705, 2117, -705, -705, -705, - -705, -705, 404, -705, -705, -705, 372, -705, -705, -705, - -705, -705, -705, -705, -705, -705, -705, -705, -705, 414, - -705, 375, -705, -705, -705, -705, -705, 434, 401, -705, - -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, - -2, 219, -705, -705, -705, -705, -705, -705, -705, -705, - 515, -705, -705, -705, -705, -705, 213, 1781, -705, 510, - 1035, -705, -705, 395, 296, 517, -705, -705, 405, 138, - 514, -705, -705, -44, -705, -705, 431, -705, 529, 531, - -705, 395, 168, -705, -705, -705, -705, 431, -705, -705, - 3145, 606, 296, -705, -705, 178, -705, 1408, -705, 532, - -705, 253, 268, -705, -705, 522, -4, -705, -705, 618, - -705, -705, -705, 3046, -705, 13, -705, 24, 151, 109, - 541, 400, -705, -705, -705, 296, 535, 296, 296, 296, - 296, 296, -705, -705, -705, 540, -705, 524, -705, -705, - 21, -705, 543, 546, 405, 2117, 528, -705, -705, -705, - 537, 542, 551, 525, 552, 343, 2117, 276, 555, 545, - 395, -705, 547, 548, 549, -705, -705, 498, 1408, -705, - 395, 59, -705, -705, 110, -705, -705, -705, 24, -705, - -705, -705, 579, -705, -705, -705, -705, 560, -705, -705, - 553, 296, 405, 173, 10, 2052, -705, 296, -705, 405, - -705, 405, -705, -705, 25, 1408, 548, 405, 405, -705, - -705, -705, -705, -705, 564, -705, 405, 554, -705, 556, - 835, -705, 296, 569, -705, -705, -705, -705, -705, -705, - -705, 549, -705, 3623, -705, 405, 182, 296, -705, -705, - -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, - -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, - -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, - -705, 3623, -705, 3389, -705, -705, -705, 3272, -705, 559, - 3506, -705, -705, -705, -705, 10, -705, 562, 10 + -77, -616, 88, -77, 230, 36, -616, -616, 301, 34, + -616, 194, -616, 255, 202, -616, -616, 211, 34, -616, + -616, -616, 213, 253, -616, -616, 243, 296, 299, 350, + -616, -616, 409, 373, 277, -616, -616, -616, 347, 300, + 295, -616, -616, -616, 373, 290, -616, 389, -616, 277, + -616, 115, -616, 86, -616, 357, 289, -616, -616, 292, + 302, -616, -616, 308, -616, 380, 248, 19, -616, -616, + 248, 316, -616, 305, 248, -616, 3, 318, -616, -616, + -616, -616, -616, -616, -616, -616, -616, 19, -616, -616, + -616, 2304, 2609, -616, -616, -616, -616, -77, 3108, 131, + -616, -616, -616, -616, -616, 348, -616, -616, 349, 329, + -616, -616, -616, 364, 332, -616, -616, -616, -616, -616, + 374, 336, -616, -616, 393, -616, 365, -616, -616, -616, + -616, -616, 0, 4, -616, -616, -616, -616, -616, -616, + -616, -616, -616, -616, 2708, 453, -616, 334, -616, -616, + 352, -616, -616, 2807, 338, -616, -616, 346, -616, -616, + 353, 1, -616, -616, -616, -616, -616, -616, -616, -616, + -616, -616, -616, -616, -616, -616, -616, -616, 2407, -616, + -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, + -616, -616, -616, -616, -616, 164, 344, 342, 3207, 187, + 95, 354, -616, -34, -616, 152, -616, -616, 334, 119, + -616, 356, -616, 362, 367, 186, 358, -616, 366, 369, + -616, 368, 370, -616, 345, -616, -52, 131, 345, -616, + -616, 3207, 367, 12, 890, 415, 418, 3207, 28, 420, + 422, 386, -616, -616, -616, 367, 372, 30, 361, 387, + 2708, 246, 361, 1662, 398, -616, 3207, 3207, 367, 68, + 3207, 24, 247, 2044, 495, 27, -616, -616, -616, -616, + 3108, 248, 44, 75, 376, 345, -616, 402, -616, 391, + 3207, 397, -616, 405, 394, -616, 407, -616, 129, -616, + 407, 367, -616, 2910, -616, 447, 397, -616, 18, 411, + 400, -616, -616, -616, -616, -616, -616, -616, 480, 217, + 500, 3207, 502, -616, 367, -616, -616, 2044, 536, -616, + 355, 1290, 1414, 545, 199, -616, 427, -616, -616, -616, + -616, 367, -616, -616, -616, 397, -616, -616, 416, -31, + -27, 6, 9, -616, 480, 494, -616, 241, -616, 3207, + -616, 431, 425, -616, -616, -616, -616, -616, -616, 3207, + 3207, 367, -616, -616, 432, 3207, 3207, 351, -616, -616, + -616, -616, 47, -616, -616, -616, -616, -616, -616, 421, + -616, -616, 367, 2044, 421, -616, -616, -616, -616, 430, + -616, 2044, -616, -616, 2044, -616, 209, 173, -616, 419, + 437, -616, -616, 440, 433, -616, 367, -67, 218, 434, + 423, -616, -616, -616, -616, 445, 435, 1414, -616, 367, + 367, 421, -616, 367, -616, -616, 2044, -616, 159, 446, + -616, -616, 218, 436, 439, -616, 27, 456, 27, -616, + -616, -616, 452, -616, -616, -616, -616, 1040, -616, -616, + -616, -616, -616, 161, -616, 457, -616, -21, 367, 1908, + -616, -616, 13, 40, -616, 345, 3207, 449, 2076, -616, + -616, 17, 1538, -616, 458, 15, 2044, -616, 218, -616, + 367, 460, 450, 464, 454, 463, -616, 448, 468, 474, + -616, -616, 1538, -616, -616, 1538, -616, 367, 740, -616, + 367, -616, 367, -616, -616, 367, -616, 367, -616, 2510, + 2205, 131, 181, -616, -616, -616, -616, -616, -616, -616, + -616, -616, 469, 361, 218, 218, 218, 691, 592, 1662, + -616, 1662, 2044, 2044, 2044, 2044, 2044, 82, 475, 218, + 361, 451, -616, 477, -616, -616, 51, -616, 461, -616, + -616, 430, -616, -616, 348, -616, -616, -616, 349, 329, + -616, -616, -616, -616, 2044, -616, -616, -616, -616, -616, + 364, -616, -616, -616, 332, -616, -616, -616, -616, -616, + -616, -616, -616, -616, -616, -616, -616, 374, -616, 336, + -616, -616, -616, -616, -616, 393, 365, -616, -616, -616, + -616, -616, -616, -616, -616, -616, -616, -616, 0, 4, + -616, -616, -616, -616, -616, -616, -616, -616, 465, -616, + -616, -616, -616, -616, 159, 1787, -616, 467, 1165, -616, + -616, 367, 218, 472, -616, -616, 345, 54, 478, -616, + -616, -18, -616, -616, 397, -616, 479, 484, -616, 367, + 141, -616, -616, -616, -616, 397, -616, -616, 3009, 565, + 218, -616, -616, 123, -616, 1414, -616, 490, -616, 176, + 206, -616, -616, 481, 6, -616, -616, 2056, -616, -616, + -616, 3207, -616, 26, -616, 10, 62, 138, 70, 499, + 351, -616, -616, -616, 218, 493, 496, -616, 218, 218, + 218, 218, 218, -616, -616, -616, 497, -616, 482, -616, + -616, 31, -616, 504, 505, 345, 2044, 485, -616, -616, + -616, 486, 489, -616, 508, -616, 488, 509, 282, 498, + 2044, 219, 510, 501, 367, -616, 506, 503, 507, -616, + -616, 448, 1414, -616, 367, 75, -616, -616, 398, -616, + -616, 2076, -616, -616, -616, 62, -616, -616, -616, 535, + -616, -616, -616, -616, -616, 519, -616, -616, 511, 218, + 345, 182, 20, 2026, -616, 60, 218, -616, 345, -616, + 345, -616, -616, 109, 1414, 503, 345, 345, -616, -616, + -616, -616, -616, -616, 523, -616, 345, 513, -616, 514, + 1040, -616, 218, 512, 527, -616, -616, -616, -616, -616, + -616, -616, 507, -616, 3685, -616, 345, 198, 218, -616, + -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, + -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, + -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, + -616, -616, 3685, -616, 3451, -616, -616, -616, 3334, -616, + 521, 3568, -616, -616, -616, -616, 20, -616, 522, 20 }; const unsigned short int asn1_parser::yydefact_[] = { - 0, 488, 0, 2, 0, 142, 1, 3, 153, 0, - 139, 140, 141, 0, 157, 150, 486, 0, 145, 148, - 149, 147, 356, 0, 144, 152, 0, 0, 0, 159, - 143, 146, 0, 0, 365, 156, 154, 155, 0, 0, - 0, 366, 367, 363, 0, 0, 158, 0, 151, 365, - 362, 164, 364, 166, 138, 168, 0, 485, 487, 0, - 165, 178, 180, 181, 183, 0, 170, 0, 163, 162, - 0, 0, 4, 0, 169, 171, 0, 0, 485, 188, - 190, 191, 90, 91, 92, 93, 94, 160, 184, 186, - 187, 189, 0, 0, 0, 179, 182, 167, 172, 0, - 0, 0, 185, 63, 11, 213, 303, 0, 379, 275, - 0, 0, 373, 375, 376, 0, 0, 370, 224, 380, - 381, 382, 0, 278, 383, 384, 0, 230, 0, 361, - 385, 295, 360, 368, 0, 0, 387, 386, 371, 374, - 10, 388, 243, 389, 390, 391, 0, 341, 485, 0, - 109, 62, 0, 78, 229, 0, 0, 212, 225, 0, - 210, 194, 192, 0, 208, 215, 226, 222, 233, 214, - 232, 228, 236, 237, 238, 239, 217, 211, 240, 335, - 0, 231, 235, 227, 234, 221, 223, 241, 218, 242, - 219, 220, 216, 377, 378, 209, 394, 79, 0, 0, - 0, 0, 193, 0, 0, 173, 177, 485, 486, 108, - 6, 8, 0, 101, 0, 105, 104, 107, 181, 0, - 7, 489, 0, 8, 0, 296, 392, 0, 369, 0, - 0, 0, 348, 302, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 13, 12, 14, 205, 0, - 347, 0, 0, 0, 0, 0, 0, 197, 0, 393, - 0, 0, 336, 0, 0, 0, 0, 0, 0, 0, - 0, 174, 175, 176, 100, 0, 0, 0, 0, 0, - 0, 332, 0, 328, 329, 0, 481, 294, 0, 287, - 291, 293, 111, 0, 280, 0, 321, 322, 0, 458, - 0, 481, 304, 317, 0, 306, 315, 284, 446, 440, - 441, 442, 372, 0, 303, 0, 0, 0, 277, 0, - 448, 455, 0, 0, 276, 0, 0, 0, 0, 443, - 444, 125, 405, 116, 117, 118, 459, 437, 445, 439, - 481, 404, 406, 407, 410, 0, 412, 0, 415, 0, - 418, 426, 428, 429, 0, 430, 0, 450, 432, 433, - 431, 434, 435, 436, 0, 0, 325, 326, 323, 0, - 0, 0, 0, 340, 345, 346, 344, 0, 23, 24, - 25, 26, 27, 28, 88, 81, 95, 0, 110, 257, - 249, 250, 251, 247, 264, 0, 262, 265, 0, 255, - 485, 487, 202, 229, 0, 253, 196, 0, 114, 200, - 266, 0, 263, 261, 245, 256, 246, 248, 195, 0, - 0, 207, 338, 337, 89, 203, 334, 64, 80, 0, - 247, 267, 487, 258, 266, 206, 0, 0, 98, 357, - 358, 0, 351, 353, 354, 355, 356, 102, 103, 489, - 9, 0, 65, 99, 66, 67, 68, 0, 298, 0, - 327, 0, 244, 0, 290, 286, 0, 0, 279, 0, - 0, 313, 0, 318, 305, 0, 0, 411, 0, 135, - 0, 460, 478, 479, 0, 464, 85, 0, 83, 0, - 285, 0, 0, 0, 423, 422, 0, 425, 424, 0, - 419, 447, 0, 451, 397, 401, 398, 402, 324, 395, - 399, 396, 400, 33, 0, 0, 0, 16, 18, 19, - 20, 21, 22, 342, 343, 0, 0, 97, 252, 273, - 0, 0, 198, 199, 0, 0, 0, 0, 0, 0, - 0, 96, 0, 0, 358, 0, 349, 352, 0, 491, - 492, 493, 494, 247, 496, 497, 498, 379, 275, 264, - 502, 503, 504, 505, 506, 507, 508, 373, 375, 511, - 512, 376, 514, 515, 516, 517, 518, 519, 520, 521, - 522, 370, 277, 525, 526, 527, 528, 529, 530, 531, - 532, 278, 534, 535, 536, 537, 538, 539, 540, 541, - 361, 262, 544, 545, 546, 547, 548, 295, 360, 368, - 552, 553, 554, 555, 556, 557, 558, 371, 374, 276, - 562, 563, 564, 565, 265, 61, 267, 0, 74, 0, - 0, 72, 75, 76, 77, 0, 60, 297, 0, 0, - 330, 333, 483, 0, 482, 480, 481, 292, 0, 0, - 281, 320, 0, 438, 443, 444, 319, 481, 316, 421, - 124, 0, 136, 463, 461, 0, 462, 0, 82, 0, - 427, 0, 0, 127, 403, 408, 413, 416, 457, 0, - 456, 449, 452, 0, 31, 44, 30, 39, 35, 48, - 50, 0, 339, 29, 260, 274, 0, 268, 259, 270, - 269, 271, 204, 272, 350, 0, 70, 0, 71, 73, - 0, 299, 0, 0, 0, 0, 288, 283, 282, 314, - 311, 307, 108, 0, 0, 107, 0, 0, 0, 468, - 473, 86, 84, 132, 129, 133, 126, 0, 0, 453, - 32, 0, 42, 41, 0, 37, 40, 34, 39, 47, - 46, 45, 0, 15, 17, 254, 359, 0, 300, 301, - 331, 484, 0, 0, 0, 0, 119, 137, 465, 0, - 467, 0, 472, 470, 477, 0, 132, 0, 0, 128, - 409, 43, 38, 36, 0, 69, 0, 289, 312, 308, - 0, 121, 120, 0, 469, 475, 476, 474, 471, 87, - 131, 130, 134, 59, 49, 0, 0, 77, 466, 492, - 495, 498, 499, 500, 501, 502, 503, 508, 509, 510, - 513, 514, 518, 523, 524, 531, 533, 539, 540, 542, - 543, 549, 550, 551, 552, 553, 559, 560, 561, 562, - 566, 59, 490, 59, 51, 54, 53, 0, 57, 309, - 59, 5, 52, 56, 58, 0, 55, 310, 0 + 0, 496, 0, 2, 0, 149, 1, 3, 160, 0, + 146, 147, 148, 0, 164, 157, 494, 0, 152, 155, + 156, 154, 364, 0, 151, 159, 0, 0, 0, 166, + 150, 153, 0, 0, 373, 163, 161, 162, 0, 0, + 0, 374, 375, 371, 0, 0, 165, 0, 158, 373, + 370, 171, 372, 173, 145, 175, 0, 493, 495, 0, + 172, 185, 187, 188, 190, 0, 177, 0, 170, 169, + 0, 0, 4, 0, 176, 178, 0, 0, 195, 197, + 198, 95, 96, 97, 98, 99, 167, 191, 193, 194, + 196, 0, 0, 186, 189, 174, 179, 0, 0, 0, + 192, 68, 11, 221, 311, 0, 387, 283, 0, 0, + 381, 383, 384, 0, 0, 378, 232, 388, 389, 390, + 0, 286, 391, 392, 0, 238, 0, 369, 393, 303, + 368, 376, 0, 0, 395, 394, 379, 382, 10, 396, + 251, 397, 398, 399, 0, 349, 493, 0, 114, 67, + 0, 83, 237, 0, 0, 220, 233, 0, 218, 201, + 199, 0, 216, 223, 234, 230, 241, 222, 240, 236, + 244, 245, 246, 247, 225, 219, 248, 343, 0, 239, + 243, 235, 242, 229, 231, 249, 226, 250, 227, 228, + 224, 385, 386, 217, 402, 84, 0, 0, 0, 0, + 200, 0, 180, 184, 493, 494, 113, 6, 8, 0, + 106, 0, 110, 109, 112, 188, 0, 7, 497, 0, + 8, 0, 304, 400, 0, 377, 0, 0, 0, 356, + 310, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 13, 12, 14, 213, 0, 355, 0, 0, + 0, 0, 0, 0, 0, 401, 0, 0, 344, 0, + 0, 0, 0, 0, 0, 0, 181, 182, 183, 105, + 0, 0, 0, 0, 0, 0, 340, 0, 336, 337, + 0, 489, 302, 0, 295, 299, 301, 116, 0, 288, + 0, 329, 330, 0, 466, 0, 489, 312, 325, 0, + 314, 323, 292, 454, 448, 449, 450, 380, 0, 311, + 0, 0, 0, 285, 0, 456, 463, 0, 0, 284, + 0, 0, 0, 0, 451, 452, 132, 413, 121, 122, + 123, 467, 445, 453, 447, 489, 412, 414, 415, 418, + 0, 420, 0, 423, 0, 426, 434, 436, 437, 0, + 438, 0, 458, 440, 441, 439, 442, 443, 444, 0, + 0, 333, 334, 331, 0, 0, 0, 0, 348, 353, + 354, 352, 0, 24, 25, 26, 27, 28, 29, 93, + 86, 103, 100, 0, 115, 265, 257, 258, 259, 255, + 272, 0, 270, 273, 0, 263, 493, 495, 210, 237, + 0, 261, 203, 0, 206, 119, 208, 209, 0, 271, + 269, 253, 264, 254, 256, 202, 0, 0, 215, 346, + 345, 94, 211, 342, 69, 85, 0, 255, 275, 495, + 266, 274, 214, 0, 0, 365, 366, 0, 359, 361, + 362, 363, 364, 107, 108, 497, 9, 0, 70, 104, + 71, 72, 73, 0, 306, 0, 335, 0, 252, 0, + 298, 294, 0, 0, 287, 0, 0, 321, 0, 326, + 313, 0, 0, 419, 0, 142, 0, 468, 486, 487, + 0, 472, 90, 0, 88, 0, 293, 0, 0, 0, + 431, 430, 0, 433, 432, 0, 427, 455, 0, 459, + 405, 409, 406, 410, 332, 403, 407, 404, 408, 34, + 0, 0, 0, 16, 18, 19, 20, 21, 22, 23, + 350, 351, 0, 0, 102, 260, 281, 0, 0, 0, + 204, 0, 0, 0, 0, 0, 0, 0, 0, 101, + 0, 0, 366, 0, 357, 360, 0, 499, 500, 501, + 502, 255, 504, 505, 506, 387, 283, 272, 510, 511, + 512, 513, 514, 515, 516, 381, 383, 519, 520, 384, + 522, 523, 524, 525, 526, 527, 528, 529, 530, 378, + 285, 533, 534, 535, 536, 537, 538, 539, 540, 286, + 542, 543, 544, 545, 546, 547, 548, 549, 369, 270, + 552, 553, 554, 555, 556, 303, 368, 376, 560, 561, + 562, 563, 564, 565, 566, 379, 382, 284, 570, 571, + 572, 573, 273, 66, 275, 0, 79, 0, 0, 77, + 80, 81, 82, 0, 65, 305, 0, 0, 338, 341, + 491, 0, 490, 488, 489, 300, 0, 0, 289, 328, + 0, 446, 451, 452, 327, 489, 324, 429, 131, 0, + 143, 471, 469, 0, 470, 0, 87, 0, 435, 0, + 0, 134, 411, 416, 421, 424, 465, 0, 464, 457, + 460, 0, 32, 49, 31, 45, 40, 36, 53, 55, + 0, 347, 30, 268, 282, 0, 0, 207, 276, 267, + 278, 277, 279, 212, 280, 358, 0, 75, 0, 76, + 78, 0, 307, 0, 0, 0, 0, 296, 291, 290, + 322, 319, 315, 130, 113, 127, 0, 0, 112, 0, + 0, 0, 0, 476, 481, 91, 89, 139, 136, 140, + 133, 0, 0, 461, 33, 0, 47, 46, 0, 43, + 42, 0, 38, 41, 35, 40, 52, 51, 50, 0, + 15, 17, 262, 205, 367, 0, 308, 309, 339, 492, + 0, 0, 0, 0, 124, 0, 144, 473, 0, 475, + 0, 480, 478, 485, 0, 139, 0, 0, 135, 417, + 48, 44, 39, 37, 0, 74, 0, 297, 320, 316, + 0, 126, 125, 493, 0, 477, 483, 484, 482, 479, + 92, 138, 137, 141, 64, 54, 0, 0, 82, 474, + 500, 503, 506, 507, 508, 509, 510, 511, 516, 517, + 518, 521, 522, 526, 531, 532, 539, 541, 547, 548, + 550, 551, 557, 558, 559, 560, 561, 567, 568, 569, + 570, 574, 64, 498, 64, 56, 59, 58, 0, 62, + 317, 64, 5, 57, 61, 63, 0, 60, 318, 0 }; const short int asn1_parser::yypgoto_[] = { - -705, 685, -705, -705, -94, -705, -95, -705, 422, -705, - -705, 11, -438, 183, -705, -705, -705, -705, -49, -705, - -705, -705, -705, -705, -705, -141, -704, -705, -705, -705, - -449, -268, -705, -588, -705, -705, -705, -705, -705, 73, - 77, -705, -705, -705, 454, -705, 67, -705, -705, -705, - -705, -705, -705, 322, -705, 433, -705, 47, -705, -705, - -705, -705, -705, -705, -705, -705, -705, -705, -28, -66, - -65, -705, -705, -705, -705, -705, -705, 693, -705, 682, - -705, -705, -705, -705, -705, -705, -705, -705, -705, -705, - 641, -705, -705, 663, 647, -39, 630, -705, -705, -175, - -705, -705, 315, -705, -705, -705, -705, -705, -705, -69, - -705, -215, 466, 272, -705, -705, -705, -705, -705, -148, - -705, -705, -201, -163, -705, -705, -42, -445, -705, -705, - -705, 86, -705, -705, -705, 487, -620, -447, -705, -705, - -705, -705, -705, -705, 15, -705, -705, -705, -705, -705, - -705, -705, -705, -705, 1, -705, 301, 177, -705, -705, - -705, 715, -705, 681, 687, -705, -705, -705, -705, -127, - -705, -705, -705, -705, -705, -705, -705, -705, -705, -131, - -705, -705, -292, -299, -705, -705, 236, -705, 234, -705, - 391, -705, -705, 259, -705, -446, -705, -705, -705, -705, - -705, -705, 58, -118, -705, -705, -705, -705, -705, -327, - -705, -705, -705, -705, -705, -705, -258, -705, -52, -9, - -33, 8, -38, -705 + -616, 652, -616, -616, -45, -616, -97, -616, 412, -616, + -616, -29, -440, 143, -616, -616, -616, -616, -96, -616, + -616, -616, -616, -616, -616, -616, -616, -189, -493, -616, + -616, -616, -435, -255, -616, -496, -616, -616, -616, -616, + -616, 37, 39, 21, -616, -616, 428, -616, 262, -616, + -616, -616, -616, -616, -616, 317, -616, 401, -616, 23, + -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, + -73, -115, -108, -616, -616, -616, -616, -616, -616, 664, + -616, 651, -616, -616, -616, -616, -616, -616, -616, -616, + -616, -616, 610, -616, -616, 632, 616, -64, 603, -616, + -616, -226, -616, -616, -411, -616, -616, -616, -616, -616, + -616, -66, -616, -218, -223, 140, -616, -616, -57, -616, + -616, -158, -616, -616, -195, -177, -616, -616, -78, -434, + -616, -616, -616, 57, -616, -616, -616, 462, -615, -444, + -616, -616, -616, -616, -616, -616, -13, -616, -616, -616, + -616, -616, -616, -616, -616, -616, -184, -616, 239, 148, + -616, -616, -616, 692, -616, 656, 663, -616, -616, -616, + -616, -53, -616, -616, -616, -616, -616, -616, -616, -616, + -616, -128, -616, -616, -286, -306, -616, -616, 216, -616, + 220, -616, 375, -616, -616, 240, -616, -419, -616, -616, + -616, -616, -616, -616, 41, -110, -616, -616, -616, -616, + -616, -401, -616, -616, -616, -616, -616, -616, -275, -616, + -50, -9, -24, 11, -264, -616 }; const short int asn1_parser::yydefgoto_[] = { - -1, 2, 3, 804, 209, 210, 149, 79, 246, 247, - 516, 517, 383, 424, 518, 686, 748, 519, 746, 520, - 521, 743, 522, 751, 753, 843, 844, 845, 846, 847, - 848, 150, 151, 453, 454, 455, 629, 456, 630, 631, - 632, 152, 153, 80, 331, 487, 154, 81, 82, 83, - 84, 85, 86, 101, 212, 213, 214, 215, 156, 157, - 158, 159, 404, 332, 333, 724, 334, 672, 673, 777, - 734, 335, 65, 4, 10, 11, 12, 17, 18, 19, - 20, 14, 29, 39, 54, 55, 59, 67, 73, 74, - 75, 205, 271, 76, 61, 62, 87, 88, 160, 405, - 161, 406, 257, 407, 162, 408, 89, 90, 91, 336, - 164, 303, 434, 634, 412, 413, 421, 530, 165, 414, - 166, 293, 287, 415, 167, 288, 289, 290, 168, 169, - 457, 458, 170, 171, 172, 304, 305, 306, 173, 174, - 175, 176, 282, 283, 284, 177, 178, 179, 180, 250, - 525, 377, 181, 272, 441, 442, 443, 444, 445, 182, - 183, 416, 34, 45, 43, 184, 185, 186, 187, 417, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 259, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, - 477, 496, 499, 350, 351, 352, 353, 354, 355, 356, - 681, 357, 682, 358, 359, 360, 361, 664, 666, 728, - 729, 773, 774, 798, 362, 363, 464, 645, 202, 198, - 418, 203, 220, 636 + -1, 2, 3, 815, 398, 207, 147, 78, 243, 244, + 512, 513, 378, 421, 514, 684, 755, 515, 753, 516, + 517, 750, 518, 747, 519, 758, 760, 854, 855, 856, + 857, 858, 859, 148, 149, 449, 450, 451, 627, 452, + 628, 629, 630, 150, 151, 79, 326, 483, 152, 80, + 81, 82, 83, 84, 85, 99, 209, 210, 211, 212, + 154, 155, 156, 157, 400, 327, 328, 727, 329, 670, + 671, 786, 738, 330, 65, 4, 10, 11, 12, 17, + 18, 19, 20, 14, 29, 39, 54, 55, 59, 67, + 73, 74, 75, 202, 266, 76, 61, 62, 86, 87, + 158, 401, 159, 402, 403, 404, 160, 405, 88, 89, + 90, 331, 162, 298, 431, 408, 409, 410, 418, 527, + 163, 411, 164, 288, 282, 412, 165, 283, 284, 285, + 166, 167, 453, 454, 168, 169, 170, 299, 300, 301, + 171, 172, 173, 174, 277, 278, 279, 175, 176, 177, + 178, 247, 522, 372, 179, 267, 437, 438, 439, 440, + 441, 180, 181, 413, 34, 45, 43, 182, 183, 184, + 185, 414, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 255, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 473, 492, 495, 345, 346, 347, 348, 349, + 350, 351, 679, 352, 680, 353, 354, 355, 356, 662, + 664, 732, 733, 782, 783, 809, 357, 358, 460, 643, + 200, 196, 415, 201, 217, 634 }; const short int asn1_parser::yytable_[] = { - 22, 63, 628, 238, 242, 211, 223, 222, 5, 22, - 452, 5, 281, 627, 63, 92, 239, 243, 63, 297, - 64, 647, 63, 163, 201, 367, 656, 488, 658, 94, - 294, 217, 720, 64, 93, 489, 92, 64, 104, 77, - 197, 64, 427, 471, 374, 15, 472, 300, 218, 307, - 94, 211, 245, 795, 300, 93, 680, 99, 427, 439, - 661, 216, 741, 300, 307, 308, 309, 64, 310, 427, - 311, 300, -417, 744, 338, 286, 687, 248, 427, 312, - 103, 237, 492, -113, 234, 473, 254, -438, 693, 337, - 274, -454, 1, 653, -438, 440, 715, 263, -454, 235, - 199, 742, 275, 16, 299, 523, 375, 206, 219, 224, - 339, 262, 745, 796, 307, 308, 309, 797, 310, 140, - 311, 236, 318, 237, 301, 376, 56, 302, 540, 312, - 70, 266, 237, 41, 42, 223, 292, 439, 678, 852, - 657, -417, 712, 653, 789, 497, 852, 104, 301, 505, - 507, 368, 16, 781, 219, 510, 512, 221, 749, 16, - 244, 211, 402, 338, 338, 296, 78, 58, 16, 324, - 58, 366, 318, 273, 223, 245, 16, 791, 337, 337, - 211, 628, 451, 328, 386, 449, 58, 409, 481, 679, - 16, 422, 423, 1, 58, 426, 57, 750, 328, 339, - 339, -414, 524, 1, 208, 449, 217, 1, 654, 655, - 104, 425, 300, 428, 498, 436, 462, 300, 285, 324, - 291, 6, 295, 218, 63, 298, 300, 285, 140, 462, - 683, 298, 285, 680, -414, 857, 216, 448, 224, 450, - 8, 450, 64, 64, 57, 58, 641, 479, 328, 1, - 58, 378, 379, 380, 381, 382, 640, 338, 654, 655, - 9, 446, 646, 747, 419, 544, 221, 544, 650, 684, - 436, 459, 337, 26, 494, 437, 237, 224, 437, 13, - 270, 1, 58, 219, 16, 501, 1, 58, 642, 719, - 16, 140, 648, 339, 788, 504, 506, 27, 782, 727, - 644, 509, 511, 849, 649, 240, 58, 495, 28, 338, - 21, 531, -113, 338, -193, -486, 658, 16, 30, 21, - 235, 32, 16, 403, 337, 468, 263, 16, 337, 221, - 437, 16, 23, 338, 433, 436, 338, 469, -485, 338, - 25, 628, 241, 436, 237, 339, 436, 33, 337, 339, - -485, 337, 627, 663, 337, 298, 298, 35, 258, 658, - 647, 298, 298, 237, 71, 36, -193, -487, 731, 339, - -487, 637, 339, 544, 690, 339, 57, 436, 263, -485, - -487, -485, 633, 638, -487, 437, 691, 37, 716, 433, - 733, 267, 736, -485, 643, 437, 237, 38, 854, 721, - 768, 651, 16, 437, 737, 387, 437, 15, 429, 853, - 237, 658, 769, 237, 155, 200, 204, 44, 223, 685, - 223, 689, -267, 513, 514, -161, -267, 515, 436, 53, - -267, 446, 534, 446, 384, 46, 535, 437, 388, 780, - 536, 545, 793, 547, 794, 688, 57, 58, 437, 47, - 437, 48, 285, 50, 433, 484, 485, 291, 51, 635, - 295, 66, 433, 70, 713, 433, 285, -122, 237, 68, - 71, 635, 69, 452, 72, 437, 799, 96, 436, 238, - 242, 97, 436, 436, 436, 436, 436, 100, 437, 225, - 226, 227, 239, 243, 228, 229, 433, 452, 231, 281, - 230, 450, 232, 233, 338, 249, 702, 256, 251, 252, - 702, 255, 264, 265, 436, -112, 338, 268, 403, 337, - 237, 224, 269, 224, 364, 276, -106, 278, 411, 280, - 277, 337, 378, 379, 380, 381, 382, 365, 437, 435, - 339, 370, 437, 437, 437, 437, 437, 433, -488, 371, - 279, 372, 339, 326, 16, 373, 437, 427, 633, 420, - 461, 633, 463, 460, 449, 211, 722, 465, 466, 467, - 470, 641, 474, 475, 437, 338, 476, 478, 480, 483, - 490, 338, 491, 493, -420, 503, 502, 526, 537, 508, - 337, 725, -303, -258, 482, 533, 337, 433, -201, 772, - -115, 433, 433, 433, 433, 433, 538, 539, 531, 542, - 543, 339, 338, 546, 740, 652, 548, 339, 639, 660, - 665, 667, 307, 308, 309, 668, 310, 337, 311, 459, - 669, 670, 674, 433, 675, 635, 692, 312, 635, 696, - 703, 671, 704, 285, 58, 726, 707, 437, 339, -11, - 714, 653, -10, 732, 710, 717, 730, 718, 738, 527, - 752, 755, 735, 436, 762, 765, 756, 528, 219, 758, - 529, 757, 759, 763, 436, -123, 766, 702, 764, 770, - 318, 771, 784, 775, 785, 776, 778, 803, 7, 786, - 805, 438, 806, 808, 403, 855, 678, 403, 858, 783, - 850, 541, 754, 709, 706, 285, 385, 723, 447, 779, - 800, 31, 801, 436, 40, 98, 60, 95, 102, 532, - 787, 633, 410, 437, 711, 705, 24, 324, 369, 760, - 52, 49, 676, 677, 437, 659, 0, 739, 0, 0, - 500, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 662, 291, 285, 285, 328, 0, 0, 0, - 730, 0, 730, 0, 0, 0, 654, 655, 735, 802, - 0, 0, 0, 635, 0, 0, 0, 285, 0, 0, - 0, 0, 433, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 433, 0, 0, 291, 285, 635, 0, - 0, 0, 695, 0, 0, 0, 697, 698, 699, 700, - 701, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 433, 0, 0, 0, 0, 0, 528, 307, - 389, 390, 0, 391, 0, 392, 285, 0, 0, 285, - 0, 0, 0, 0, 312, 0, 103, 403, 378, 379, - 380, 381, 382, 549, 550, 551, 105, 552, 553, 554, - 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, - 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, - 575, 576, 577, 578, 579, 580, 581, 582, 583, 118, - 119, 120, 121, 584, 585, 586, 587, 588, 589, 590, - 591, 592, 124, 593, 594, 595, 596, 125, 597, 127, - 598, 599, 600, 601, 602, 603, 604, 605, 130, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 136, - 616, 137, 617, 618, 619, 620, 621, 622, 623, 141, - 142, 143, 144, 145, 624, 0, 0, 0, 398, 0, - 0, 0, 147, 0, 0, 0, 0, 23, 0, 0, - 0, 625, 0, 328, 0, 399, 0, 0, 0, 0, - 0, 0, 0, 626, 401, 0, 0, 761, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 767, 0, + 22, 208, 220, 63, 235, 239, 276, 625, 446, 22, + 446, 5, 626, 292, 5, 484, 63, 91, 448, 362, + 63, 467, 236, 240, 63, 161, 199, 656, 645, 64, + 407, 435, 214, 289, 213, 721, 485, 91, 15, 436, + 77, 195, 64, 92, 302, 424, 64, 208, 215, 654, + 64, 520, 424, 206, 219, 435, 295, 333, 713, 748, + 488, 295, 369, 92, 295, 424, 97, 468, 659, 281, + 686, 1, 295, -274, 64, 745, 332, -274, 245, 678, + -422, 424, -425, 692, 490, 493, 231, 251, 6, 265, + 237, 373, 374, 375, 376, 377, 101, 16, 749, 242, + 638, 232, 197, 424, 294, 232, 469, 234, 203, 216, + 221, 751, 258, -422, 746, 58, 56, 491, 696, 756, + 697, 254, 716, 233, 370, 234, 234, 238, 16, 234, + 220, 538, 262, 296, 644, 234, 297, 806, 655, 70, + 234, 501, 503, 371, 333, 333, 521, 506, 508, 296, + 752, -425, 363, 208, 494, 216, 208, 799, 757, 9, + 102, 16, 16, 332, 332, 291, 16, 57, 58, 16, + -168, 361, 57, 208, 53, 1, 205, 16, 323, 268, + 58, 334, 287, 16, 382, 295, 477, 406, 1, 58, + 419, 420, 445, 626, 423, 1, 58, 807, 447, 1, + 58, 808, 1, 58, 214, 242, 213, 444, 803, 422, + 542, 425, 542, 433, 458, 280, 57, 286, -118, 290, + 215, 63, 293, 1, 280, 206, 295, 458, 293, 280, + 445, 58, 259, 640, 57, 58, 26, 646, 221, 639, + 333, 138, 295, 269, 731, 475, 64, 64, 21, 790, + 754, 868, 543, 464, 545, 270, 442, 21, 678, 332, + 27, 216, 720, 234, 416, 465, 455, 433, 334, 334, + 648, 28, 16, 446, 434, -495, 434, 801, -495, 218, + 8, 216, 642, 497, -493, 635, 647, -118, -495, -200, + 16, 333, -495, 500, 502, 333, -493, 636, 528, 505, + 507, 259, -494, 798, -200, 689, 407, 263, 407, 71, + 332, -200, 234, 737, 332, 333, 13, 690, 333, 860, + 542, 333, -493, 259, -493, 16, 23, 656, 434, 25, + 740, 16, 792, 433, 332, 30, -493, 332, 32, -446, + 332, 433, 741, 777, 433, -275, -446, 16, 35, -275, + 293, 293, 661, -275, 532, 778, 293, 293, 533, 735, + 625, 863, 534, -462, 334, 626, 383, 426, 863, 717, + -462, 234, 234, 656, 509, 510, 433, 804, 511, 805, + 722, 631, 645, 434, 373, 374, 375, 376, 377, 41, + 42, 379, 33, 641, 434, 384, 57, 58, 480, 481, + 649, 36, 434, 432, 37, 434, -128, 234, 153, 198, + 38, 714, 208, 15, 220, 334, 44, 46, 864, 334, + 47, 48, 50, 865, 51, 656, 433, 442, 66, 442, + 68, 71, 208, 69, 208, 72, 789, 434, 70, 334, + 94, 98, 334, 685, 687, 334, 95, 434, 280, 434, + 222, 223, 224, 286, 225, 226, 290, 478, 633, 228, + 227, 229, 280, 406, 683, 406, 688, 230, 246, 253, + 633, 248, 249, 260, 434, 252, -117, 433, 810, 261, + 235, 239, 433, 433, 433, 433, 433, 434, 333, 273, + 448, 264, 234, 275, 16, 272, 271, 276, 236, 240, + 333, 359, -111, -496, 360, 274, 365, 332, 366, 367, + 321, 446, 368, 703, 433, 399, 424, 703, 448, 332, + 216, 417, 221, 524, 445, 430, 456, 457, 459, 461, + 462, 525, 463, 466, 526, 470, 471, 472, 434, 474, + 416, 476, 416, 434, 434, 434, 434, 434, 479, 486, + 487, -428, 489, 498, 499, -311, 504, 434, 523, 631, + 529, 208, 631, -266, 530, 333, 539, 536, -120, 531, + 535, 528, 537, 540, 333, 434, 541, 546, 639, 430, + 544, 658, 637, 663, 332, 650, 665, 632, 666, 668, + 667, 669, 728, 332, 672, 673, 695, 691, -11, 704, + 58, 705, -10, 708, 730, 718, 781, 333, 195, 711, + 719, 736, 334, 724, 715, 744, 660, 742, 759, 762, + 763, 770, 771, 764, 334, 772, 332, 455, 773, 765, + 766, 767, -129, 774, 779, 775, 633, 780, 794, 633, + 785, 280, 784, 795, 787, 430, 814, 796, 434, 816, + 817, 819, -497, 430, 734, 7, 430, 866, 869, 793, + 739, 761, 381, 861, 707, 710, 433, 694, 788, 729, + 811, 443, 698, 699, 700, 701, 702, 380, 812, 725, + 433, 726, 31, 40, 96, 60, 93, 703, 430, 334, + 100, 791, 797, 712, 706, 302, 385, 386, 334, 387, + 364, 388, 768, 24, 525, 52, 280, 49, 674, 399, + 307, 0, 657, 0, 0, 675, 0, 0, 743, 496, + 102, 0, 0, 433, 427, 425, 0, 434, 0, 0, + 390, 334, 0, 0, 631, 0, 0, 391, 430, 0, + 0, 434, 0, 0, 302, 303, 304, 0, 305, 0, + 306, 0, 0, 313, 0, 0, 0, 0, 0, 307, + 0, 286, 280, 280, 0, 632, 0, 0, 632, 734, + 0, 734, 0, 651, 0, 0, 0, 739, 813, 392, + 0, 0, 0, 0, 633, 0, 0, 280, 0, 430, + 0, 399, 0, 399, 430, 430, 430, 430, 430, 0, + 319, 138, 313, 0, 0, 0, 0, 286, 280, 0, + 393, 633, 0, 0, 394, 693, 0, 0, 676, 0, + 0, 0, 0, 23, 0, 0, 430, 0, 0, 323, + 0, 395, 0, 0, 0, 0, 0, 0, 0, 428, + 429, 0, 0, 0, 0, 0, 0, 0, 0, 319, + 0, 0, 0, 0, 0, 0, 769, 280, 0, 0, + 280, 0, 0, 0, 0, 0, 0, 0, 0, 677, + 776, 0, 0, 0, 0, 0, 0, 0, 323, 0, + 0, 0, 0, 0, 0, 0, 0, 399, 652, 653, + 399, 0, 0, 0, 302, 303, 304, 0, 305, 0, + 306, 0, 0, 0, 0, 0, 0, 0, 0, 307, + 0, 101, 0, 802, 0, 0, 0, 0, 0, 102, + 308, 103, 0, 309, 0, 0, 105, 106, 107, 0, + 108, 109, 0, 0, 0, 310, 311, 110, 111, 0, + 818, 112, 113, 312, 0, 0, 114, 0, 0, 0, + 0, 115, 313, 314, 116, 117, 118, 119, 0, 0, + 0, 0, 315, 120, 0, 121, 0, 122, 0, 316, + 0, 0, 123, 124, 125, 126, 0, 127, 430, 317, + 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, + 318, 232, 430, 0, 134, 0, 135, 136, 137, 319, + 138, 0, 0, 0, 139, 140, 141, 142, 143, 320, + 0, 0, 0, 321, 0, 322, 0, 145, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 323, 0, + 0, 0, 0, 0, 0, 430, 0, 0, 324, 325, + 0, 0, 0, 0, 302, 385, 386, 0, 387, 0, + 388, 0, 0, 0, 0, 0, 0, 0, 0, 307, + 0, 101, 399, 373, 374, 375, 376, 377, 547, 548, + 549, 103, 550, 551, 552, 553, 554, 555, 556, 557, + 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, + 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, + 578, 579, 580, 581, 116, 117, 118, 119, 582, 583, + 584, 585, 586, 587, 588, 589, 590, 122, 591, 592, + 593, 594, 123, 595, 125, 596, 597, 598, 599, 600, + 601, 602, 603, 128, 604, 605, 606, 607, 608, 609, + 610, 611, 612, 613, 134, 614, 135, 615, 616, 617, + 618, 619, 620, 621, 139, 140, 141, 142, 143, 622, + 0, 0, 0, 394, 0, 0, 0, 145, 0, 302, + 385, 386, 23, 387, 0, 388, 623, 0, 323, 0, + 395, 0, 0, 0, 307, 0, 101, 0, 624, 397, + 0, 0, 0, 547, 548, 549, 103, 550, 551, 552, + 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, + 573, 574, 575, 576, 577, 578, 579, 580, 581, 116, + 117, 118, 119, 582, 583, 584, 585, 586, 587, 588, + 589, 590, 122, 591, 592, 593, 594, 123, 595, 125, + 596, 597, 598, 599, 600, 601, 602, 603, 128, 604, + 605, 606, 607, 608, 609, 610, 611, 612, 613, 134, + 614, 135, 615, 616, 617, 618, 619, 620, 621, 139, + 140, 141, 142, 143, 622, 0, 0, 0, 394, 709, + 0, 0, 145, 0, 302, 303, 304, 23, 305, 0, + 306, 623, 0, 323, 0, 395, 0, 0, 0, 307, + 0, 101, 0, 624, 397, 0, 0, 0, 0, 102, + 308, 103, 0, 309, 0, 0, 105, 106, 107, 0, + 108, 109, 0, 0, 0, 0, 0, 110, 111, 0, + 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, + 0, 115, 313, 314, 116, 117, 118, 119, 0, 0, + 0, 0, 315, 120, 0, 121, 0, 122, 0, 316, + 0, 0, 123, 124, 125, 126, 0, 127, 0, 317, + 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, + 318, 232, 0, 0, 134, 0, 135, 136, 137, 319, + 138, 0, 0, 0, 139, 140, 141, 142, 143, 320, + 0, 482, 0, 0, 0, 322, 0, 145, 302, 303, + 304, 0, 305, 0, 306, 0, 0, 0, 323, 0, + 0, 0, 0, 307, 0, 101, 0, 0, 324, 325, + 0, 0, 0, 102, 308, 103, 0, 309, 0, 0, + 105, 106, 107, 0, 108, 109, 0, 0, 0, 0, + 0, 110, 111, 0, 0, 112, 113, 0, 0, 0, + 114, 0, 0, 0, 0, 115, 313, 314, 116, 117, + 118, 119, 0, 0, 0, 0, 315, 120, 0, 121, + 0, 122, 0, 316, 0, 0, 123, 124, 125, 126, + 0, 127, 0, 317, 0, 0, 0, 128, 0, 129, + 130, 131, 132, 133, 318, 232, 0, 0, 134, 0, + 135, 136, 137, 319, 138, 0, 0, 0, 139, 140, + 141, 142, 143, 320, 0, 0, 0, 0, 0, 322, + 0, 145, 302, 303, 304, 0, 305, 0, 306, 0, + 0, 0, 323, 0, 0, 0, 0, 307, 0, 101, + 0, 0, 324, 325, 0, 0, 0, 102, 0, 103, + 0, 309, 0, 0, 105, 106, 107, 0, 108, 109, + 0, 0, 0, 0, 0, 110, 111, 0, 0, 112, + 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, + 313, 314, 116, 117, 118, 119, 0, 0, 0, 0, + 315, 120, 0, 121, 0, 122, 0, 316, 0, 0, + 123, 124, 125, 126, 0, 127, 0, 317, 0, 0, + 0, 128, 0, 129, 130, 131, 132, 133, 318, 232, + 0, 0, 134, 0, 135, 136, 137, 319, 138, 0, + 0, 0, 139, 140, 141, 142, 143, 320, 0, 0, + 0, 0, 0, 322, 0, 145, 302, 385, 386, 0, + 387, 0, 388, 0, 0, 0, 323, 0, 0, 0, + 0, 307, 0, 101, 0, 0, 324, 325, 0, 0, + 0, 102, 0, 103, 0, 389, 0, 0, 105, 106, + 107, 390, 108, 109, 0, 0, 0, 0, 391, 110, + 111, 0, 0, 112, 113, 0, 0, 0, 114, 0, + 0, 0, 0, 115, 313, 0, 116, 117, 118, 119, + 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, + 0, 0, 0, 0, 123, 124, 125, 126, 0, 127, + 392, 0, 0, 0, 0, 128, 0, 129, 130, 131, + 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, + 137, 319, 138, 0, 0, 0, 139, 140, 141, 142, + 143, 393, 0, 0, 0, 394, 0, 0, 0, 145, + 0, 302, 385, 386, 23, 387, 0, 388, 0, 0, + 323, 0, 395, 0, 0, 0, 307, 0, 101, 0, + 396, 397, 0, 0, 0, 0, 102, 0, 103, 0, + 389, 0, 0, 105, 106, 107, 390, 108, 109, 0, + 0, 0, 0, 391, 110, 111, 0, 0, 112, 113, + 0, 0, 0, 114, 0, 0, 0, 0, 115, 313, + 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, + 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, + 124, 125, 126, 0, 127, 392, 0, 0, 0, 0, + 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, + 0, 134, 0, 135, 136, 137, 319, 138, 0, 0, + 0, 139, 140, 141, 142, 143, 393, 0, 0, 0, + 394, 0, 302, 0, 145, 0, 0, 0, 0, 23, + 0, 0, 0, 0, 0, 323, 0, 395, 0, 101, + 0, 0, 0, 0, 0, 428, 397, 102, 0, 103, + 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, + 0, 0, 0, 0, 0, 110, 111, 0, 0, 112, + 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, + 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, + 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, + 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, + 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, + 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, + 0, 0, 139, 140, 141, 142, 143, 0, 0, 0, + 302, 385, 386, 0, 387, 145, 388, 0, 0, 0, + 0, 0, 0, 0, 0, 307, 323, 101, 302, 385, + 386, 0, 387, 0, 388, 102, 146, 205, 0, 427, + 302, 303, 304, 307, 305, 390, 306, 0, 0, 0, + 0, 0, 391, 102, 0, 307, 0, 427, 0, 0, + 302, 303, 304, 390, 305, 0, 306, 0, 313, 651, + 391, 0, 0, 0, 0, 307, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 313, 0, 0, 651, + 0, 0, 0, 0, 392, 0, 0, 0, 313, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 392, 0, 676, 319, 138, 0, 313, 0, + 0, 0, 0, 0, 0, 393, 0, 0, 0, 800, + 0, 0, 0, 319, 138, 0, 0, 0, 23, 0, + 0, 0, 0, 393, 323, 319, 395, 394, 0, 0, + 0, 0, 0, 0, 428, 429, 23, 0, 0, 0, + 0, 0, 323, 0, 395, 319, 0, 0, 0, 0, + 0, 0, 428, 429, 323, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 652, 653, 0, 0, 0, 0, + 0, 0, 0, 0, 323, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 652, 653, 101, 0, 373, 374, + 375, 376, 377, 0, 102, 0, 103, 0, 104, 0, + 0, 105, 106, 107, 0, 108, 109, 0, 0, 0, + 0, 0, 110, 111, 0, 0, 112, 113, 0, 0, + 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, + 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, + 121, 0, 122, 0, 0, 0, 0, 123, 124, 125, + 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, + 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, + 0, 135, 136, 137, 0, 138, 0, 0, 0, 139, + 140, 141, 142, 143, 0, 101, 0, 0, 0, 0, + 0, 0, 145, 102, 0, 103, 0, 104, 0, 0, + 105, 106, 107, 0, 108, 109, 0, 0, 0, 0, + 0, 110, 111, 146, 16, 112, 113, 0, 0, 0, + 114, 0, 0, 0, 0, 115, 0, 0, 116, 117, + 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, + 0, 122, 0, 0, 0, 0, 123, 124, 125, 126, + 0, 127, 0, 0, 0, 0, 0, 128, 0, 129, + 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, + 135, 136, 137, 0, 138, 0, 0, 0, 139, 140, + 141, 142, 143, 0, 144, 0, 0, 98, 101, 0, + 0, 145, 0, 0, 0, 0, 102, 0, 103, 0, + 104, 0, 0, 105, 106, 107, 0, 108, 109, 0, + 0, 0, 146, 16, 110, 111, 0, 0, 112, 113, + 0, 0, 0, 114, 0, 256, 0, 0, 115, 0, + 0, 116, 117, 118, 119, 0, 257, 0, 0, 0, + 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, + 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, + 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, + 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, + 0, 139, 140, 141, 142, 143, 0, 0, 0, 0, + 0, 101, 0, 0, 145, 0, 0, 0, 0, 102, + 0, 103, 0, 104, 0, 0, 105, 106, 107, 0, + 108, 109, 0, 0, 0, 146, 16, 110, 111, 681, + 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, + 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, + 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, + 0, 0, 123, 124, 125, 126, 0, 127, 682, 0, + 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, + 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, + 138, 0, 0, 0, 139, 140, 141, 142, 143, 0, + 101, 0, 0, 0, 0, 0, 0, 145, 102, 0, + 103, 0, 104, 0, 0, 105, 106, 107, 0, 108, + 109, 0, 0, 0, 0, 0, 110, 111, 204, 16, + 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, + 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, + 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, + 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, + 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, + 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, + 0, 0, 0, 139, 140, 141, 142, 143, 0, 101, + 0, 0, 98, 0, 0, 0, 145, 102, 0, 103, + 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, + 241, 0, 0, 0, 0, 110, 111, 146, 16, 112, + 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, + 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, + 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, + 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, + 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, + 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, + 0, 0, 139, 140, 141, 142, 143, 0, 101, 0, + 0, 0, 0, 0, 0, 145, 102, 0, 103, 0, + 104, 0, 0, 105, 106, 107, 0, 108, 109, 0, + 0, 0, 0, 0, 110, 111, 204, 16, 112, 113, + 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, + 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, + 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, + 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, + 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, + 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, + 0, 139, 140, 141, 142, 143, 0, 250, 0, 0, + 0, 101, 0, 0, 145, 0, 0, 0, 0, 102, + 0, 103, 0, 104, 0, 0, 105, 106, 107, 0, + 108, 109, 0, 0, 0, 146, 16, 110, 111, 0, + 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, + 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, + 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, + 0, 0, 123, 124, 125, 126, 0, 127, 0, 0, + 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, + 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, + 138, 0, 0, 0, 139, 140, 141, 142, 143, 0, + 101, 0, 0, 0, 0, 0, 0, 145, 102, 260, + 103, 0, 104, 0, 0, 105, 106, 107, 0, 108, + 109, 0, 0, 0, 0, 0, 110, 111, 146, 16, + 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, + 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, + 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, + 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, + 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, + 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, + 0, 0, 0, 139, 140, 141, 142, 143, 0, 101, + 723, 0, 0, 0, 0, 0, 145, 102, 0, 103, + 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, + 0, 0, 0, 0, 0, 110, 111, 204, 16, 112, + 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, + 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, + 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, + 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, + 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, + 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, + 0, 0, 139, 140, 141, 142, 143, 0, 101, 0, + 0, 0, 0, 0, 0, 145, 102, 0, 103, 0, + 104, 0, 0, 105, 106, 107, 0, 108, 109, 0, + 0, 0, 0, 0, 110, 111, 204, 205, 112, 113, + 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, + 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, + 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, + 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, + 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, + 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, + 0, 139, 140, 141, 142, 143, 0, 0, 0, 0, + 0, 0, 0, 0, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 146, 16, 373, 374, 375, + 376, 377, 547, 820, 549, 0, 550, 821, 552, 553, + 822, 823, 824, 825, 826, 827, 560, 561, 562, 563, + 828, 829, 830, 567, 568, 831, 832, 571, 572, 573, + 833, 575, 576, 577, 578, 834, 835, 581, 0, 0, + 0, 0, 582, 583, 584, 585, 586, 836, 588, 837, + 590, 0, 591, 592, 593, 594, 0, 838, 0, 839, + 597, 840, 841, 600, 601, 602, 603, 0, 604, 842, + 843, 844, 845, 846, 610, 611, 612, 613, 0, 614, + 0, 847, 848, 849, 850, 619, 620, 621, 0, 0, + 0, 0, 0, 851, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 792, 0, 307, - 389, 390, 0, 391, 0, 392, 0, 0, 0, 0, - 0, 0, 0, 0, 312, 0, 103, 0, 0, 0, - 0, 0, 807, 549, 550, 551, 105, 552, 553, 554, - 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, - 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, - 575, 576, 577, 578, 579, 580, 581, 582, 583, 118, - 119, 120, 121, 584, 585, 586, 587, 588, 589, 590, - 591, 592, 124, 593, 594, 595, 596, 125, 597, 127, - 598, 599, 600, 601, 602, 603, 604, 605, 130, 606, - 607, 608, 609, 610, 611, 612, 613, 614, 615, 136, - 616, 137, 617, 618, 619, 620, 621, 622, 623, 141, - 142, 143, 144, 145, 624, 0, 0, 0, 398, 708, - 0, 0, 147, 0, 307, 308, 309, 23, 310, 0, - 311, 625, 0, 328, 0, 399, 0, 0, 0, 312, - 0, 103, 0, 626, 401, 0, 0, 0, 0, 104, - 313, 105, 0, 314, 0, 0, 107, 108, 109, 0, - 110, 111, 0, 0, 0, 315, 316, 112, 113, 0, - 0, 114, 115, 317, 0, 0, 116, 0, 0, 0, - 0, 117, 318, 319, 118, 119, 120, 121, 0, 0, - 0, 0, 320, 122, 0, 123, 0, 124, 0, 321, - 0, 0, 125, 126, 127, 128, 0, 129, 0, 322, - 0, 0, 0, 130, 0, 131, 132, 133, 134, 135, - 323, 235, 0, 0, 136, 0, 137, 138, 139, 324, - 140, 0, 0, 0, 141, 142, 143, 144, 145, 325, - 0, 0, 0, 326, 0, 327, 0, 147, 307, 308, - 309, 0, 310, 0, 311, 0, 0, 0, 328, 0, - 0, 0, 0, 312, 0, 103, 0, 0, 329, 330, - 0, 0, 0, 104, 313, 105, 0, 314, 0, 0, - 107, 108, 109, 0, 110, 111, 0, 0, 0, 0, - 0, 112, 113, 0, 0, 114, 115, 0, 0, 0, - 116, 0, 0, 0, 0, 117, 318, 319, 118, 119, - 120, 121, 0, 0, 0, 0, 320, 122, 0, 123, - 0, 124, 0, 321, 0, 0, 125, 126, 127, 128, - 0, 129, 0, 322, 0, 0, 0, 130, 0, 131, - 132, 133, 134, 135, 323, 235, 0, 0, 136, 0, - 137, 138, 139, 324, 140, 0, 0, 0, 141, 142, - 143, 144, 145, 325, 0, 486, 0, 0, 0, 327, - 0, 147, 307, 308, 309, 0, 310, 0, 311, 0, - 0, 0, 328, 0, 0, 0, 0, 312, 0, 103, - 0, 0, 329, 330, 0, 0, 0, 104, 313, 105, - 0, 314, 0, 0, 107, 108, 109, 0, 110, 111, - 0, 0, 0, 0, 0, 112, 113, 0, 0, 114, - 115, 0, 0, 0, 116, 0, 0, 0, 0, 117, - 318, 319, 118, 119, 120, 121, 0, 0, 0, 0, - 320, 122, 0, 123, 0, 124, 0, 321, 0, 0, - 125, 126, 127, 128, 0, 129, 0, 322, 0, 0, - 0, 130, 0, 131, 132, 133, 134, 135, 323, 235, - 0, 0, 136, 0, 137, 138, 139, 324, 140, 0, - 0, 0, 141, 142, 143, 144, 145, 325, 0, 0, - 0, 0, 0, 327, 0, 147, 307, 308, 309, 0, - 310, 0, 311, 0, 0, 0, 328, 0, 0, 0, - 0, 312, 0, 103, 0, 0, 329, 330, 0, 0, - 0, 104, 0, 105, 0, 314, 0, 0, 107, 108, - 109, 0, 110, 111, 0, 0, 0, 0, 0, 112, - 113, 0, 0, 114, 115, 0, 0, 0, 116, 0, - 0, 0, 0, 117, 318, 319, 118, 119, 120, 121, - 0, 0, 0, 0, 320, 122, 0, 123, 0, 124, - 0, 321, 0, 0, 125, 126, 127, 128, 0, 129, - 0, 322, 0, 0, 0, 130, 0, 131, 132, 133, - 134, 135, 323, 235, 0, 0, 136, 0, 137, 138, - 139, 324, 140, 0, 0, 0, 141, 142, 143, 144, - 145, 325, 0, 0, 0, 0, 0, 327, 0, 147, - 307, 389, 390, 0, 391, 0, 392, 0, 0, 0, - 328, 0, 0, 0, 0, 312, 0, 103, 0, 0, - 329, 330, 0, 0, 0, 104, 0, 105, 0, 393, - 0, 0, 107, 108, 109, 394, 110, 111, 0, 0, - 0, 0, 395, 112, 113, 0, 0, 114, 115, 0, - 0, 0, 116, 0, 0, 0, 0, 117, 318, 0, - 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, - 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, - 127, 128, 0, 129, 396, 0, 0, 0, 0, 130, - 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, - 136, 0, 137, 138, 139, 324, 140, 0, 0, 0, - 141, 142, 143, 144, 145, 397, 0, 0, 0, 398, - 0, 0, 0, 147, 0, 307, 389, 390, 23, 391, - 0, 392, 0, 0, 328, 0, 399, 0, 0, 0, - 312, 0, 103, 0, 400, 401, 0, 0, 0, 0, - 104, 0, 105, 0, 393, 0, 0, 107, 108, 109, - 394, 110, 111, 0, 0, 0, 0, 395, 112, 113, - 0, 0, 114, 115, 0, 0, 0, 116, 0, 0, - 0, 0, 117, 318, 0, 118, 119, 120, 121, 0, - 0, 0, 0, 0, 122, 0, 123, 0, 124, 0, - 0, 0, 0, 125, 126, 127, 128, 0, 129, 396, - 0, 0, 0, 0, 130, 0, 131, 132, 133, 134, - 135, 0, 0, 0, 0, 136, 0, 137, 138, 139, - 324, 140, 0, 0, 0, 141, 142, 143, 144, 145, - 397, 0, 0, 0, 398, 0, 307, 0, 147, 0, - 0, 0, 0, 23, 0, 0, 0, 0, 0, 328, - 0, 399, 0, 103, 0, 0, 0, 0, 0, 431, - 401, 104, 0, 105, 0, 106, 0, 0, 107, 108, - 109, 0, 110, 111, 0, 0, 0, 0, 0, 112, - 113, 0, 0, 114, 115, 0, 0, 0, 116, 0, - 0, 0, 0, 117, 0, 0, 118, 119, 120, 121, - 0, 0, 0, 0, 0, 122, 0, 123, 0, 124, - 0, 0, 0, 0, 125, 126, 127, 128, 0, 129, - 0, 0, 0, 0, 0, 130, 0, 131, 132, 133, - 134, 135, 0, 0, 0, 0, 136, 0, 137, 138, - 139, 0, 140, 0, 0, 0, 141, 142, 143, 144, - 145, 0, 0, 0, 307, 389, 390, 0, 391, 147, - 392, 0, 0, 0, 0, 0, 0, 0, 0, 312, - 328, 0, 0, 0, 0, 0, 0, 0, 0, 104, - 148, 208, 0, 430, 0, 0, 307, 389, 390, 394, - 391, 0, 392, 0, 0, 0, 395, 0, 0, 0, - 0, 312, 0, 103, 0, 0, 0, 0, 0, 0, - 0, 104, 318, 0, 0, 430, 0, 0, 0, 0, - 0, 394, 0, 0, 0, 0, 0, 0, 395, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 396, 0, - 0, 0, 0, 0, 318, 0, 0, 0, 0, 0, - 0, 307, 389, 390, 0, 391, 0, 392, 0, 324, - 140, 0, 0, 0, 0, 0, 312, 0, 0, 397, - 396, 0, 0, 398, 694, 0, 104, 0, 0, 0, - 430, 0, 23, 0, 0, 0, 394, 0, 328, 0, - 399, 324, 140, 395, 0, 0, 0, 0, 431, 432, - 0, 397, 0, 0, 0, 790, 0, 0, 0, 318, - 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, - 328, 0, 399, 0, 0, 0, 0, 0, 0, 0, - 431, 432, 0, 0, 0, 396, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 324, 140, 0, 0, - 0, 0, 0, 0, 0, 0, 397, 0, 0, 0, - 398, 0, 0, 0, 0, 0, 0, 0, 0, 23, - 0, 0, 0, 0, 0, 328, 0, 399, 0, 0, - 0, 0, 0, 0, 0, 431, 432, 103, 0, 378, - 379, 380, 381, 382, 0, 104, 0, 105, 0, 106, - 0, 0, 107, 108, 109, 0, 110, 111, 0, 0, - 0, 0, 0, 112, 113, 0, 0, 114, 115, 0, - 0, 0, 116, 0, 0, 0, 0, 117, 0, 0, - 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, - 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, - 127, 128, 0, 129, 0, 0, 0, 0, 0, 130, - 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, - 136, 0, 137, 138, 139, 0, 140, 0, 0, 0, - 141, 142, 143, 144, 145, 0, 103, 0, 0, 0, - 0, 0, 0, 147, 104, 0, 105, 0, 106, 0, - 0, 107, 108, 109, 0, 110, 111, 0, 0, 0, - 0, 0, 112, 113, 148, 16, 114, 115, 0, 0, - 0, 116, 0, 0, 0, 0, 117, 0, 0, 118, - 119, 120, 121, 0, 0, 0, 0, 0, 122, 0, - 123, 0, 124, 0, 0, 0, 0, 125, 126, 127, - 128, 0, 129, 0, 0, 0, 0, 0, 130, 0, - 131, 132, 133, 134, 135, 0, 0, 0, 0, 136, - 0, 137, 138, 139, 0, 140, 0, 0, 0, 141, - 142, 143, 144, 145, 0, 146, 0, 0, 100, 103, - 0, 0, 147, 0, 0, 0, 0, 104, 0, 105, - 0, 106, 0, 0, 107, 108, 109, 0, 110, 111, - 0, 0, 0, 148, 16, 112, 113, 0, 0, 114, - 115, 0, 0, 0, 116, 0, 260, 0, 0, 117, - 0, 0, 118, 119, 120, 121, 0, 261, 0, 0, - 0, 122, 0, 123, 0, 124, 0, 0, 0, 0, - 125, 126, 127, 128, 0, 129, 0, 0, 0, 0, - 0, 130, 0, 131, 132, 133, 134, 135, 0, 0, - 0, 0, 136, 0, 137, 138, 139, 0, 140, 0, - 0, 0, 141, 142, 143, 144, 145, 0, 103, 0, - 0, 0, 0, 0, 0, 147, 104, 0, 105, 0, - 106, 0, 0, 107, 108, 109, 0, 110, 111, 0, - 0, 0, 0, 0, 112, 113, 148, 16, 114, 115, - 0, 0, 0, 116, 0, 0, 0, 0, 117, 0, - 0, 118, 119, 120, 121, 0, 0, 0, 0, 0, - 122, 0, 123, 0, 124, 0, 0, 0, 0, 125, - 126, 127, 128, 0, 129, 0, 0, 0, 0, 0, - 130, 0, 131, 132, 133, 134, 135, 0, 0, 0, - 0, 136, 0, 137, 138, 139, 0, 140, 0, 0, - 0, 141, 142, 143, 144, 145, 0, 103, 0, 0, - 100, 0, 0, 0, 147, 104, 0, 105, 0, 106, - 0, 0, 107, 108, 109, 0, 110, 111, 244, 0, - 0, 0, 0, 112, 113, 148, 16, 114, 115, 0, - 0, 0, 116, 0, 0, 0, 0, 117, 0, 0, - 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, - 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, - 127, 128, 0, 129, 0, 0, 0, 0, 0, 130, - 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, - 136, 0, 137, 138, 139, 0, 140, 0, 0, 0, - 141, 142, 143, 144, 145, 0, 103, 0, 0, 0, - 0, 0, 0, 147, 104, 0, 105, 0, 106, 0, - 0, 107, 108, 109, 0, 110, 111, 0, 0, 0, - 0, 0, 112, 113, 207, 16, 114, 115, 0, 0, - 0, 116, 0, 0, 0, 0, 117, 0, 0, 118, - 119, 120, 121, 0, 0, 0, 0, 0, 122, 0, - 123, 0, 124, 0, 0, 0, 0, 125, 126, 127, - 128, 0, 129, 0, 0, 0, 0, 0, 130, 0, - 131, 132, 133, 134, 135, 0, 0, 0, 0, 136, - 0, 137, 138, 139, 0, 140, 0, 0, 0, 141, - 142, 143, 144, 145, 0, 253, 0, 0, 0, 103, - 0, 0, 147, 0, 0, 0, 0, 104, 0, 105, - 0, 106, 0, 0, 107, 108, 109, 0, 110, 111, - 0, 0, 0, 148, 16, 112, 113, 0, 0, 114, - 115, 0, 0, 0, 116, 0, 0, 0, 0, 117, - 0, 0, 118, 119, 120, 121, 0, 0, 0, 0, - 0, 122, 0, 123, 0, 124, 0, 0, 0, 0, - 125, 126, 127, 128, 0, 129, 0, 0, 0, 0, - 0, 130, 0, 131, 132, 133, 134, 135, 0, 0, - 0, 0, 136, 0, 137, 138, 139, 0, 140, 0, - 0, 0, 141, 142, 143, 144, 145, 0, 103, 0, - 0, 0, 0, 0, 0, 147, 104, 264, 105, 0, - 106, 0, 0, 107, 108, 109, 0, 110, 111, 0, - 0, 0, 0, 0, 112, 113, 148, 16, 114, 115, - 0, 0, 0, 116, 0, 0, 0, 0, 117, 0, - 0, 118, 119, 120, 121, 0, 0, 0, 0, 0, - 122, 0, 123, 0, 124, 0, 0, 0, 0, 125, - 126, 127, 128, 0, 129, 0, 0, 0, 0, 0, - 130, 0, 131, 132, 133, 134, 135, 0, 0, 0, - 0, 136, 0, 137, 138, 139, 0, 140, 0, 0, - 0, 141, 142, 143, 144, 145, 0, 103, 0, 0, - 0, 0, 0, 0, 147, 104, 0, 105, 0, 106, - 0, 0, 107, 108, 109, 0, 110, 111, 0, 0, - 0, 0, 0, 112, 113, 207, 208, 114, 115, 0, - 0, 0, 116, 0, 0, 0, 0, 117, 0, 0, - 118, 119, 120, 121, 0, 0, 0, 0, 0, 122, - 0, 123, 0, 124, 0, 0, 0, 0, 125, 126, - 127, 128, 0, 129, 0, 0, 0, 0, 0, 130, - 0, 131, 132, 133, 134, 135, 0, 0, 0, 0, - 136, 0, 137, 138, 139, 0, 140, 0, 0, 0, - 141, 142, 143, 144, 145, 0, 103, 0, 0, 0, - 0, 0, 0, 147, 104, 0, 105, 0, 106, 0, - 0, 107, 108, 109, 0, 110, 111, 0, 0, 0, - 0, 0, 112, 113, 148, 16, 114, 115, 0, 0, - 0, 116, 0, 0, 0, 0, 117, 0, 0, 118, - 119, 120, 121, 0, 0, 0, 0, 0, 122, 0, - 123, 0, 124, 0, 0, 0, 0, 125, 126, 127, - 128, 0, 129, 0, 0, 0, 0, 0, 130, 0, - 131, 132, 133, 134, 135, 0, 0, 0, 0, 136, - 0, 137, 138, 139, 0, 140, 0, 0, 0, 141, - 142, 143, 144, 145, 0, 0, 0, 0, 0, 0, - 0, 0, 147, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 207, 16, 378, 379, 380, 381, 382, - 549, 809, 551, 0, 552, 810, 554, 555, 811, 812, - 813, 814, 815, 816, 562, 563, 564, 565, 817, 818, - 819, 569, 570, 820, 821, 573, 574, 575, 822, 577, - 578, 579, 580, 823, 824, 583, 0, 0, 0, 0, - 584, 585, 586, 587, 588, 825, 590, 826, 592, 0, - 593, 594, 595, 596, 0, 827, 0, 828, 599, 829, - 830, 602, 603, 604, 605, 0, 606, 831, 832, 833, - 834, 835, 612, 613, 614, 615, 0, 616, 0, 836, - 837, 838, 839, 621, 622, 623, 0, 0, 0, 0, - 0, 840, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 625, 0, - 0, 0, 0, 0, 0, 0, 0, 549, 809, 551, - 842, 552, 810, 554, 555, 811, 812, 813, 814, 815, - 816, 562, 563, 564, 565, 817, 818, 819, 569, 570, - 820, 821, 573, 574, 575, 822, 577, 578, 579, 580, - 823, 824, 583, 0, 0, 0, 0, 584, 585, 586, - 587, 588, 825, 590, 826, 592, 0, 593, 594, 595, - 596, 0, 827, 0, 828, 599, 829, 830, 602, 603, - 604, 605, 0, 606, 831, 832, 833, 834, 835, 612, - 613, 614, 615, 0, 616, 0, 836, 837, 838, 839, - 621, 622, 623, 0, 0, 0, 0, 0, 840, 0, - 0, 0, 0, 851, 0, 0, 841, 0, 0, 0, - 0, 0, 0, 0, 0, 625, 0, 0, 0, 0, - 0, 0, 0, 0, 549, 809, 551, 842, 552, 810, - 554, 555, 811, 812, 813, 814, 815, 816, 562, 563, - 564, 565, 817, 818, 819, 569, 570, 820, 821, 573, - 574, 575, 822, 577, 578, 579, 580, 823, 824, 583, - 0, 0, 0, 0, 584, 585, 586, 587, 588, 825, - 590, 826, 592, 0, 593, 594, 595, 596, 0, 827, - 0, 828, 599, 829, 830, 602, 603, 604, 605, 0, - 606, 831, 832, 833, 834, 835, 612, 613, 614, 615, - 0, 616, 0, 836, 837, 838, 839, 621, 622, 623, - 0, 0, 0, 0, 0, 840, 0, 0, 0, 0, - 0, 0, 0, 841, 856, 0, 0, 0, 0, 0, - 0, 0, 625, 0, 0, 0, 0, 0, 0, 0, - 0, 549, 809, 551, 842, 552, 810, 554, 555, 811, - 812, 813, 814, 815, 816, 562, 563, 564, 565, 817, - 818, 819, 569, 570, 820, 821, 573, 574, 575, 822, - 577, 578, 579, 580, 823, 824, 583, 0, 0, 0, - 0, 584, 585, 586, 587, 588, 825, 590, 826, 592, - 0, 593, 594, 595, 596, 0, 827, 0, 828, 599, - 829, 830, 602, 603, 604, 605, 0, 606, 831, 832, - 833, 834, 835, 612, 613, 614, 615, 0, 616, 0, - 836, 837, 838, 839, 621, 622, 623, 0, 0, 0, - 0, 0, 840, 0, 0, 0, 0, 0, 0, 0, - 841, 0, 0, 0, 0, 0, 0, 0, 0, 625, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 842 + 623, 0, 0, 0, 0, 0, 0, 0, 0, 547, + 820, 549, 853, 550, 821, 552, 553, 822, 823, 824, + 825, 826, 827, 560, 561, 562, 563, 828, 829, 830, + 567, 568, 831, 832, 571, 572, 573, 833, 575, 576, + 577, 578, 834, 835, 581, 0, 0, 0, 0, 582, + 583, 584, 585, 586, 836, 588, 837, 590, 0, 591, + 592, 593, 594, 0, 838, 0, 839, 597, 840, 841, + 600, 601, 602, 603, 0, 604, 842, 843, 844, 845, + 846, 610, 611, 612, 613, 0, 614, 0, 847, 848, + 849, 850, 619, 620, 621, 0, 0, 0, 0, 0, + 851, 0, 0, 0, 0, 862, 0, 0, 852, 0, + 0, 0, 0, 0, 0, 0, 0, 623, 0, 0, + 0, 0, 0, 0, 0, 0, 547, 820, 549, 853, + 550, 821, 552, 553, 822, 823, 824, 825, 826, 827, + 560, 561, 562, 563, 828, 829, 830, 567, 568, 831, + 832, 571, 572, 573, 833, 575, 576, 577, 578, 834, + 835, 581, 0, 0, 0, 0, 582, 583, 584, 585, + 586, 836, 588, 837, 590, 0, 591, 592, 593, 594, + 0, 838, 0, 839, 597, 840, 841, 600, 601, 602, + 603, 0, 604, 842, 843, 844, 845, 846, 610, 611, + 612, 613, 0, 614, 0, 847, 848, 849, 850, 619, + 620, 621, 0, 0, 0, 0, 0, 851, 0, 0, + 0, 0, 0, 0, 0, 852, 867, 0, 0, 0, + 0, 0, 0, 0, 623, 0, 0, 0, 0, 0, + 0, 0, 0, 547, 820, 549, 853, 550, 821, 552, + 553, 822, 823, 824, 825, 826, 827, 560, 561, 562, + 563, 828, 829, 830, 567, 568, 831, 832, 571, 572, + 573, 833, 575, 576, 577, 578, 834, 835, 581, 0, + 0, 0, 0, 582, 583, 584, 585, 586, 836, 588, + 837, 590, 0, 591, 592, 593, 594, 0, 838, 0, + 839, 597, 840, 841, 600, 601, 602, 603, 0, 604, + 842, 843, 844, 845, 846, 610, 611, 612, 613, 0, + 614, 0, 847, 848, 849, 850, 619, 620, 621, 0, + 0, 0, 0, 0, 851, 0, 0, 0, 0, 0, + 0, 0, 852, 0, 0, 0, 0, 0, 0, 0, + 0, 623, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 853 }; const short int asn1_parser::yycheck_[] = { - 9, 53, 451, 134, 135, 100, 101, 101, 0, 18, - 278, 3, 227, 451, 66, 67, 134, 135, 70, 234, - 53, 466, 74, 92, 93, 240, 472, 326, 475, 67, - 231, 100, 652, 66, 67, 327, 88, 70, 29, 21, - 92, 74, 21, 301, 32, 4, 49, 44, 100, 4, - 88, 146, 146, 28, 44, 88, 502, 63, 21, 4, - 53, 100, 49, 44, 4, 5, 6, 100, 8, 21, - 10, 44, 76, 49, 237, 121, 514, 146, 21, 19, - 21, 125, 340, 123, 86, 88, 155, 122, 526, 237, - 124, 122, 148, 33, 129, 270, 140, 137, 129, 101, - 92, 88, 136, 149, 235, 4, 94, 99, 100, 101, - 237, 180, 88, 88, 4, 5, 6, 92, 8, 110, - 10, 123, 62, 125, 121, 113, 30, 124, 420, 19, - 136, 200, 125, 16, 17, 230, 230, 4, 78, 843, - 121, 145, 4, 33, 764, 76, 850, 29, 121, 364, - 365, 124, 149, 741, 146, 370, 371, 148, 49, 149, - 42, 256, 256, 326, 327, 234, 148, 149, 149, 109, - 149, 240, 62, 206, 269, 269, 149, 765, 326, 327, - 275, 630, 123, 138, 253, 148, 149, 256, 319, 129, - 149, 260, 261, 148, 149, 264, 148, 88, 138, 326, - 327, 111, 377, 148, 149, 148, 275, 148, 148, 149, - 29, 263, 44, 265, 145, 267, 285, 44, 227, 109, - 229, 0, 231, 275, 276, 234, 44, 236, 110, 298, - 49, 240, 241, 679, 144, 855, 275, 276, 230, 277, - 50, 279, 275, 276, 148, 149, 461, 316, 138, 148, - 149, 23, 24, 25, 26, 27, 121, 420, 148, 149, - 123, 270, 121, 112, 256, 440, 148, 442, 469, 88, - 322, 280, 420, 34, 111, 267, 125, 269, 270, 15, - 123, 148, 149, 275, 149, 354, 148, 149, 463, 121, - 149, 110, 467, 420, 121, 364, 365, 58, 744, 121, - 463, 370, 371, 121, 467, 86, 149, 144, 69, 472, - 9, 125, 123, 476, 125, 129, 763, 149, 124, 18, - 101, 125, 149, 256, 472, 124, 137, 149, 476, 148, - 322, 149, 132, 496, 267, 387, 499, 136, 125, 502, - 74, 790, 123, 395, 125, 472, 398, 139, 496, 476, - 137, 499, 790, 484, 502, 364, 365, 105, 120, 806, - 805, 370, 371, 125, 123, 105, 125, 123, 667, 496, - 126, 124, 499, 548, 124, 502, 148, 429, 137, 123, - 136, 125, 451, 136, 140, 377, 136, 105, 646, 322, - 137, 120, 124, 137, 463, 387, 125, 60, 847, 657, - 124, 470, 149, 395, 136, 120, 398, 4, 120, 847, - 125, 858, 136, 125, 92, 93, 94, 139, 513, 513, - 515, 515, 136, 23, 24, 55, 140, 27, 480, 59, - 144, 440, 136, 442, 251, 70, 140, 429, 255, 738, - 144, 440, 769, 442, 771, 514, 148, 149, 440, 120, - 442, 126, 461, 132, 387, 43, 44, 466, 35, 451, - 469, 71, 395, 136, 639, 398, 475, 124, 125, 141, - 123, 463, 141, 741, 55, 467, 775, 124, 530, 610, - 611, 141, 534, 535, 536, 537, 538, 123, 480, 102, - 102, 123, 610, 611, 90, 123, 429, 765, 123, 714, - 86, 539, 68, 102, 667, 15, 539, 123, 137, 120, - 543, 137, 129, 137, 566, 123, 679, 137, 451, 667, - 125, 513, 120, 515, 86, 140, 140, 120, 256, 123, - 137, 679, 23, 24, 25, 26, 27, 86, 530, 267, - 667, 86, 534, 535, 536, 537, 538, 480, 137, 86, - 137, 123, 679, 123, 149, 140, 548, 21, 627, 123, - 136, 630, 131, 124, 148, 660, 660, 124, 136, 125, - 86, 786, 124, 136, 566, 738, 57, 39, 39, 12, - 4, 744, 123, 136, 57, 129, 122, 137, 136, 124, - 738, 660, 125, 144, 322, 124, 744, 530, 124, 730, - 123, 534, 535, 536, 537, 538, 144, 137, 125, 137, - 137, 738, 775, 124, 683, 136, 125, 744, 125, 123, - 123, 136, 4, 5, 6, 124, 8, 775, 10, 638, - 136, 126, 126, 566, 121, 627, 128, 19, 630, 4, - 124, 143, 124, 652, 149, 39, 136, 639, 775, 137, - 136, 33, 137, 121, 137, 126, 665, 126, 136, 387, - 119, 126, 671, 715, 136, 140, 126, 395, 660, 126, - 398, 147, 126, 136, 726, 124, 124, 710, 136, 124, - 62, 136, 103, 136, 124, 137, 137, 123, 3, 136, - 136, 269, 136, 124, 627, 136, 78, 630, 136, 748, - 841, 429, 691, 630, 627, 714, 252, 660, 275, 737, - 776, 18, 777, 765, 32, 74, 53, 70, 88, 404, - 762, 790, 256, 715, 638, 548, 11, 109, 241, 714, - 49, 44, 496, 499, 726, 476, -1, 679, -1, -1, - 349, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 480, 762, 763, 764, 138, -1, -1, -1, - 769, -1, 771, -1, -1, -1, 148, 149, 777, 778, - -1, -1, -1, 765, -1, -1, -1, 786, -1, -1, - -1, -1, 715, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 726, -1, -1, 805, 806, 790, -1, - -1, -1, 530, -1, -1, -1, 534, 535, 536, 537, - 538, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 765, -1, -1, -1, -1, -1, 566, 4, - 5, 6, -1, 8, -1, 10, 855, -1, -1, 858, - -1, -1, -1, -1, 19, -1, 21, 790, 23, 24, - 25, 26, 27, 28, 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, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, -1, -1, 123, -1, - -1, -1, 127, -1, -1, -1, -1, 132, -1, -1, - -1, 136, -1, 138, -1, 140, -1, -1, -1, -1, - -1, -1, -1, 148, 149, -1, -1, 715, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 726, -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, 765, -1, 4, - 5, 6, -1, 8, -1, 10, -1, -1, -1, -1, - -1, -1, -1, -1, 19, -1, 21, -1, -1, -1, - -1, -1, 790, 28, 29, 30, 31, 32, 33, 34, + 9, 98, 99, 53, 132, 133, 224, 447, 272, 18, + 274, 0, 447, 231, 3, 321, 66, 67, 273, 237, + 70, 296, 132, 133, 74, 91, 92, 471, 462, 53, + 253, 4, 98, 228, 98, 650, 322, 87, 4, 265, + 21, 91, 66, 67, 4, 21, 70, 144, 98, 468, + 74, 4, 21, 98, 99, 4, 44, 234, 4, 49, + 335, 44, 32, 87, 44, 21, 63, 49, 53, 121, + 510, 148, 44, 140, 98, 49, 234, 144, 144, 498, + 111, 21, 76, 523, 111, 76, 86, 153, 0, 123, + 86, 23, 24, 25, 26, 27, 21, 149, 88, 144, + 121, 101, 91, 21, 232, 101, 88, 125, 97, 98, + 99, 49, 178, 144, 88, 149, 30, 144, 529, 49, + 531, 120, 140, 123, 94, 125, 125, 123, 149, 125, + 227, 417, 198, 121, 121, 125, 124, 28, 121, 136, + 125, 359, 360, 113, 321, 322, 372, 365, 366, 121, + 88, 145, 124, 250, 145, 144, 253, 772, 88, 123, + 29, 149, 149, 321, 322, 231, 149, 148, 149, 149, + 55, 237, 148, 270, 59, 148, 149, 149, 138, 203, + 149, 234, 227, 149, 250, 44, 314, 253, 148, 149, + 256, 257, 148, 628, 260, 148, 149, 88, 123, 148, + 149, 92, 148, 149, 270, 250, 270, 271, 148, 259, + 436, 261, 438, 263, 280, 224, 148, 226, 123, 228, + 270, 271, 231, 148, 233, 270, 44, 293, 237, 238, + 148, 149, 137, 459, 148, 149, 34, 463, 227, 457, + 417, 110, 44, 124, 121, 311, 270, 271, 9, 745, + 112, 866, 436, 124, 438, 136, 265, 18, 677, 417, + 58, 250, 121, 125, 253, 136, 275, 317, 321, 322, + 465, 69, 149, 537, 263, 123, 265, 773, 126, 148, + 50, 270, 459, 349, 125, 124, 463, 123, 136, 125, + 149, 468, 140, 359, 360, 472, 137, 136, 125, 365, + 366, 137, 129, 121, 140, 124, 529, 120, 531, 123, + 468, 125, 125, 137, 472, 492, 15, 136, 495, 121, + 546, 498, 123, 137, 125, 149, 132, 771, 317, 74, + 124, 149, 751, 383, 492, 124, 137, 495, 125, 122, + 498, 391, 136, 124, 394, 136, 129, 149, 105, 140, + 359, 360, 480, 144, 136, 136, 365, 366, 140, 665, + 800, 854, 144, 122, 417, 800, 120, 120, 861, 644, + 129, 125, 125, 817, 23, 24, 426, 778, 27, 780, + 655, 447, 816, 372, 23, 24, 25, 26, 27, 16, + 17, 248, 139, 459, 383, 252, 148, 149, 43, 44, + 466, 105, 391, 263, 105, 394, 124, 125, 91, 92, + 60, 637, 509, 4, 511, 468, 139, 70, 858, 472, + 120, 126, 132, 858, 35, 869, 476, 436, 71, 438, + 141, 123, 529, 141, 531, 55, 742, 426, 136, 492, + 124, 123, 495, 509, 510, 498, 141, 436, 457, 438, + 102, 102, 123, 462, 90, 123, 465, 317, 447, 123, + 86, 68, 471, 529, 509, 531, 511, 102, 15, 123, + 459, 137, 120, 129, 463, 137, 123, 527, 784, 137, + 608, 609, 532, 533, 534, 535, 536, 476, 665, 120, + 745, 137, 125, 123, 149, 137, 140, 715, 608, 609, + 677, 86, 140, 137, 86, 137, 86, 665, 86, 123, + 123, 775, 140, 537, 564, 253, 21, 541, 773, 677, + 509, 123, 511, 383, 148, 263, 124, 136, 131, 124, + 136, 391, 125, 86, 394, 124, 136, 57, 527, 39, + 529, 39, 531, 532, 533, 534, 535, 536, 12, 4, + 123, 57, 136, 122, 129, 125, 124, 546, 137, 625, + 123, 658, 628, 144, 124, 742, 426, 144, 123, 136, + 136, 125, 137, 137, 751, 564, 137, 125, 796, 317, + 124, 123, 125, 123, 742, 136, 136, 447, 124, 126, + 136, 143, 658, 751, 126, 121, 4, 128, 137, 124, + 149, 124, 137, 136, 39, 126, 734, 784, 658, 137, + 126, 121, 665, 658, 136, 681, 476, 136, 119, 126, + 124, 136, 136, 126, 677, 136, 784, 636, 140, 147, + 126, 126, 124, 124, 124, 137, 625, 136, 103, 628, + 137, 650, 136, 124, 137, 383, 123, 136, 637, 136, + 136, 124, 140, 391, 663, 3, 394, 136, 136, 755, + 669, 690, 250, 852, 625, 628, 716, 527, 741, 658, + 785, 270, 532, 533, 534, 535, 536, 249, 786, 658, + 730, 658, 18, 32, 74, 53, 70, 711, 426, 742, + 87, 748, 770, 636, 546, 4, 5, 6, 751, 8, + 238, 10, 715, 11, 564, 49, 715, 44, 492, 447, + 19, -1, 472, -1, -1, 495, -1, -1, 677, 344, + 29, -1, -1, 773, 33, 775, -1, 716, -1, -1, + 39, 784, -1, -1, 800, -1, -1, 46, 476, -1, + -1, 730, -1, -1, 4, 5, 6, -1, 8, -1, + 10, -1, -1, 62, -1, -1, -1, -1, -1, 19, + -1, 770, 771, 772, -1, 625, -1, -1, 628, 778, + -1, 780, -1, 33, -1, -1, -1, 786, 787, 88, + -1, -1, -1, -1, 773, -1, -1, 796, -1, 527, + -1, 529, -1, 531, 532, 533, 534, 535, 536, -1, + 109, 110, 62, -1, -1, -1, -1, 816, 817, -1, + 119, 800, -1, -1, 123, 124, -1, -1, 78, -1, + -1, -1, -1, 132, -1, -1, 564, -1, -1, 138, + -1, 140, -1, -1, -1, -1, -1, -1, -1, 148, + 149, -1, -1, -1, -1, -1, -1, -1, -1, 109, + -1, -1, -1, -1, -1, -1, 716, 866, -1, -1, + 869, -1, -1, -1, -1, -1, -1, -1, -1, 129, + 730, -1, -1, -1, -1, -1, -1, -1, 138, -1, + -1, -1, -1, -1, -1, -1, -1, 625, 148, 149, + 628, -1, -1, -1, 4, 5, 6, -1, 8, -1, + 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, + -1, 21, -1, 773, -1, -1, -1, -1, -1, 29, + 30, 31, -1, 33, -1, -1, 36, 37, 38, -1, + 40, 41, -1, -1, -1, 45, 46, 47, 48, -1, + 800, 51, 52, 53, -1, -1, 56, -1, -1, -1, + -1, 61, 62, 63, 64, 65, 66, 67, -1, -1, + -1, -1, 72, 73, -1, 75, -1, 77, -1, 79, + -1, -1, 82, 83, 84, 85, -1, 87, 716, 89, + -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, + 100, 101, 730, -1, 104, -1, 106, 107, 108, 109, + 110, -1, -1, -1, 114, 115, 116, 117, 118, 119, + -1, -1, -1, 123, -1, 125, -1, 127, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 138, -1, + -1, -1, -1, -1, -1, 773, -1, -1, 148, 149, + -1, -1, -1, -1, 4, 5, 6, -1, 8, -1, + 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, + -1, 21, 800, 23, 24, 25, 26, 27, 28, 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, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + -1, -1, -1, 123, -1, -1, -1, 127, -1, 4, + 5, 6, 132, 8, -1, 10, 136, -1, 138, -1, + 140, -1, -1, -1, 19, -1, 21, -1, 148, 149, + -1, -1, -1, 28, 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, 62, 63, 64, @@ -8349,15 +8376,15 @@ namespace yy { 10, 136, -1, 138, -1, 140, -1, -1, -1, 19, -1, 21, -1, 148, 149, -1, -1, -1, -1, 29, 30, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, 45, 46, 47, 48, -1, - -1, 51, 52, 53, -1, -1, 56, -1, -1, -1, + 40, 41, -1, -1, -1, -1, -1, 47, 48, -1, + -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, 62, 63, 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, -1, 75, -1, 77, -1, 79, -1, -1, 82, 83, 84, 85, -1, 87, -1, 89, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, 100, 101, -1, -1, 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, 114, 115, 116, 117, 118, 119, - -1, -1, -1, 123, -1, 125, -1, 127, 4, 5, + -1, 121, -1, -1, -1, 125, -1, 127, 4, 5, 6, -1, 8, -1, 10, -1, -1, -1, 138, -1, -1, -1, -1, 19, -1, 21, -1, -1, 148, 149, -1, -1, -1, 29, 30, 31, -1, 33, -1, -1, @@ -8369,10 +8396,10 @@ namespace yy { -1, 87, -1, 89, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, 100, 101, -1, -1, 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, 114, 115, - 116, 117, 118, 119, -1, 121, -1, -1, -1, 125, + 116, 117, 118, 119, -1, -1, -1, -1, -1, 125, -1, 127, 4, 5, 6, -1, 8, -1, 10, -1, -1, -1, 138, -1, -1, -1, -1, 19, -1, 21, - -1, -1, 148, 149, -1, -1, -1, 29, 30, 31, + -1, -1, 148, 149, -1, -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, @@ -8386,101 +8413,114 @@ namespace yy { 8, -1, 10, -1, -1, -1, 138, -1, -1, -1, -1, 19, -1, 21, -1, -1, 148, 149, -1, -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, - 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, - 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, - -1, -1, -1, 61, 62, 63, 64, 65, 66, 67, - -1, -1, -1, -1, 72, 73, -1, 75, -1, 77, - -1, 79, -1, -1, 82, 83, 84, 85, -1, 87, - -1, 89, -1, -1, -1, 93, -1, 95, 96, 97, - 98, 99, 100, 101, -1, -1, 104, -1, 106, 107, - 108, 109, 110, -1, -1, -1, 114, 115, 116, 117, - 118, 119, -1, -1, -1, -1, -1, 125, -1, 127, - 4, 5, 6, -1, 8, -1, 10, -1, -1, -1, - 138, -1, -1, -1, -1, 19, -1, 21, -1, -1, - 148, 149, -1, -1, -1, 29, -1, 31, -1, 33, - -1, -1, 36, 37, 38, 39, 40, 41, -1, -1, - -1, -1, 46, 47, 48, -1, -1, 51, 52, -1, - -1, -1, 56, -1, -1, -1, -1, 61, 62, -1, - 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, - -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, - 84, 85, -1, 87, 88, -1, -1, -1, -1, 93, - -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, - 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, - 114, 115, 116, 117, 118, 119, -1, -1, -1, 123, - -1, -1, -1, 127, -1, 4, 5, 6, 132, 8, - -1, 10, -1, -1, 138, -1, 140, -1, -1, -1, - 19, -1, 21, -1, 148, 149, -1, -1, -1, -1, - 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, - 39, 40, 41, -1, -1, -1, -1, 46, 47, 48, - -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, - -1, -1, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, - -1, -1, -1, 82, 83, 84, 85, -1, 87, 88, - -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, - 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, - 109, 110, -1, -1, -1, 114, 115, 116, 117, 118, - 119, -1, -1, -1, 123, -1, 4, -1, 127, -1, - -1, -1, -1, 132, -1, -1, -1, -1, -1, 138, - -1, 140, -1, 21, -1, -1, -1, -1, -1, 148, - 149, 29, -1, 31, -1, 33, -1, -1, 36, 37, - 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, + 38, 39, 40, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, - -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, + -1, -1, -1, 61, 62, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, - -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, + 88, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, - 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, - 118, -1, -1, -1, 4, 5, 6, -1, 8, 127, - 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, - 138, -1, -1, -1, -1, -1, -1, -1, -1, 29, - 148, 149, -1, 33, -1, -1, 4, 5, 6, 39, - 8, -1, 10, -1, -1, -1, 46, -1, -1, -1, - -1, 19, -1, 21, -1, -1, -1, -1, -1, -1, - -1, 29, 62, -1, -1, 33, -1, -1, -1, -1, - -1, 39, -1, -1, -1, -1, -1, -1, 46, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 88, -1, - -1, -1, -1, -1, 62, -1, -1, -1, -1, -1, - -1, 4, 5, 6, -1, 8, -1, 10, -1, 109, - 110, -1, -1, -1, -1, -1, 19, -1, -1, 119, - 88, -1, -1, 123, 124, -1, 29, -1, -1, -1, - 33, -1, 132, -1, -1, -1, 39, -1, 138, -1, - 140, 109, 110, 46, -1, -1, -1, -1, 148, 149, - -1, 119, -1, -1, -1, 123, -1, -1, -1, 62, - -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, - 138, -1, 140, -1, -1, -1, -1, -1, -1, -1, - 148, 149, -1, -1, -1, 88, -1, -1, -1, -1, + 108, 109, 110, -1, -1, -1, 114, 115, 116, 117, + 118, 119, -1, -1, -1, 123, -1, -1, -1, 127, + -1, 4, 5, 6, 132, 8, -1, 10, -1, -1, + 138, -1, 140, -1, -1, -1, 19, -1, 21, -1, + 148, 149, -1, -1, -1, -1, 29, -1, 31, -1, + 33, -1, -1, 36, 37, 38, 39, 40, 41, -1, + -1, -1, -1, 46, 47, 48, -1, -1, 51, 52, + -1, -1, -1, 56, -1, -1, -1, -1, 61, 62, + -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, + 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, + 83, 84, 85, -1, 87, 88, -1, -1, -1, -1, + 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, + -1, 104, -1, 106, 107, 108, 109, 110, -1, -1, + -1, 114, 115, 116, 117, 118, 119, -1, -1, -1, + 123, -1, 4, -1, 127, -1, -1, -1, -1, 132, + -1, -1, -1, -1, -1, 138, -1, 140, -1, 21, + -1, -1, -1, -1, -1, 148, 149, 29, -1, 31, + -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, + -1, -1, -1, -1, -1, 47, 48, -1, -1, 51, + 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, + -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, + -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, + 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, + -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, + -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, + -1, -1, 114, 115, 116, 117, 118, -1, -1, -1, + 4, 5, 6, -1, 8, 127, 10, -1, -1, -1, + -1, -1, -1, -1, -1, 19, 138, 21, 4, 5, + 6, -1, 8, -1, 10, 29, 148, 149, -1, 33, + 4, 5, 6, 19, 8, 39, 10, -1, -1, -1, + -1, -1, 46, 29, -1, 19, -1, 33, -1, -1, + 4, 5, 6, 39, 8, -1, 10, -1, 62, 33, + 46, -1, -1, -1, -1, 19, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 62, -1, -1, 33, + -1, -1, -1, -1, 88, -1, -1, -1, 62, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 109, 110, -1, -1, - -1, -1, -1, -1, -1, -1, 119, -1, -1, -1, - 123, -1, -1, -1, -1, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, 138, -1, 140, -1, -1, - -1, -1, -1, -1, -1, 148, 149, 21, -1, 23, - 24, 25, 26, 27, -1, 29, -1, 31, -1, 33, - -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, - -1, -1, -1, 47, 48, -1, -1, 51, 52, -1, - -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, - 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, - -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, - 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, - -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, - 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, - 114, 115, 116, 117, 118, -1, 21, -1, -1, -1, - -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, + -1, -1, 88, -1, 78, 109, 110, -1, 62, -1, + -1, -1, -1, -1, -1, 119, -1, -1, -1, 123, + -1, -1, -1, 109, 110, -1, -1, -1, 132, -1, + -1, -1, -1, 119, 138, 109, 140, 123, -1, -1, + -1, -1, -1, -1, 148, 149, 132, -1, -1, -1, + -1, -1, 138, -1, 140, 109, -1, -1, -1, -1, + -1, -1, 148, 149, 138, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 148, 149, -1, -1, -1, -1, + -1, -1, -1, -1, 138, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 148, 149, 21, -1, 23, 24, + 25, 26, 27, -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, - -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, + -1, -1, 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, - 115, 116, 117, 118, -1, 120, -1, -1, 123, 21, - -1, -1, 127, -1, -1, -1, -1, 29, -1, 31, + 115, 116, 117, 118, -1, 21, -1, -1, -1, -1, + -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, + 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, + -1, 47, 48, 148, 149, 51, 52, -1, -1, -1, + 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, + 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, + -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, + -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, + 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, + 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, + 116, 117, 118, -1, 120, -1, -1, 123, 21, -1, + -1, 127, -1, -1, -1, -1, 29, -1, 31, -1, + 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, + -1, -1, 148, 149, 47, 48, -1, -1, 51, 52, + -1, -1, -1, 56, -1, 58, -1, -1, 61, -1, + -1, 64, 65, 66, 67, -1, 69, -1, -1, -1, + 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, + 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, + 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, + -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, -1, -1, + -1, 21, -1, -1, 127, -1, -1, -1, -1, 29, + -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, + 40, 41, -1, -1, -1, 148, 149, 47, 48, 49, + -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, + -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, + -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, + -1, -1, 82, 83, 84, 85, -1, 87, 88, -1, + -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, + -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, + 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, + 21, -1, -1, -1, -1, -1, -1, 127, 29, -1, + 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, + 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, + 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, + 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, + -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, + -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, + -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, + -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, + -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, + -1, -1, 123, -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - -1, -1, -1, 148, 149, 47, 48, -1, -1, 51, - 52, -1, -1, -1, 56, -1, 58, -1, -1, 61, - -1, -1, 64, 65, 66, 67, -1, 69, -1, -1, + 42, -1, -1, -1, -1, 47, 48, 148, 149, 51, + 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, + -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, @@ -8495,30 +8535,30 @@ namespace yy { 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 21, -1, -1, - 123, -1, -1, -1, 127, 29, -1, 31, -1, 33, - -1, -1, 36, 37, 38, -1, 40, 41, 42, -1, - -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, - -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, - 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, - -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, - 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, - -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, - 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, - 114, 115, 116, 117, 118, -1, 21, -1, -1, -1, - -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, - -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, - -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, - -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, - 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, - 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, - 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, - 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, - -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, - 115, 116, 117, 118, -1, 120, -1, -1, -1, 21, - -1, -1, 127, -1, -1, -1, -1, 29, -1, 31, + -1, 114, 115, 116, 117, 118, -1, 120, -1, -1, + -1, 21, -1, -1, 127, -1, -1, -1, -1, 29, + -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, + 40, 41, -1, -1, -1, 148, 149, 47, 48, -1, + -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, + -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, + -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, + -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, + -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, + -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, + 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, + 21, -1, -1, -1, -1, -1, -1, 127, 29, 129, + 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, + 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, + 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, + 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, + -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, + -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, + -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, + -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, + -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, + 121, -1, -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - -1, -1, -1, 148, 149, 47, 48, -1, -1, 51, + -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, @@ -8526,7 +8566,7 @@ namespace yy { -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, - -1, -1, -1, -1, -1, 127, 29, 129, 31, -1, + -1, -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, @@ -8535,169 +8575,150 @@ namespace yy { 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 21, -1, -1, - -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, - -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, - -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, - -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, - 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, - -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, - 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, - -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, - 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, - 114, 115, 116, 117, 118, -1, 21, -1, -1, -1, - -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, - -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, - -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, - -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, - 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, - 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, - 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, - 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, - -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, - 115, 116, 117, 118, -1, -1, -1, -1, -1, -1, - -1, -1, 127, -1, -1, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, -1, -1, -1, + -1, -1, -1, -1, 127, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 148, 149, 23, 24, 25, 26, 27, - 28, 29, 30, -1, 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, 62, 63, -1, -1, -1, -1, - 68, 69, 70, 71, 72, 73, 74, 75, 76, -1, - 78, 79, 80, 81, -1, 83, -1, 85, 86, 87, - 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, -1, 105, -1, 107, - 108, 109, 110, 111, 112, 113, -1, -1, -1, -1, - -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 136, -1, - -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, - 148, 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, 62, 63, -1, -1, -1, -1, 68, 69, 70, - 71, 72, 73, 74, 75, 76, -1, 78, 79, 80, - 81, -1, 83, -1, 85, 86, 87, 88, 89, 90, - 91, 92, -1, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, -1, 105, -1, 107, 108, 109, 110, - 111, 112, 113, -1, -1, -1, -1, -1, 119, -1, - -1, -1, -1, 124, -1, -1, 127, -1, -1, -1, - -1, -1, -1, -1, -1, 136, -1, -1, -1, -1, - -1, -1, -1, -1, 28, 29, 30, 148, 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, 62, 63, - -1, -1, -1, -1, 68, 69, 70, 71, 72, 73, - 74, 75, 76, -1, 78, 79, 80, 81, -1, 83, - -1, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - -1, 105, -1, 107, 108, 109, 110, 111, 112, 113, - -1, -1, -1, -1, -1, 119, -1, -1, -1, -1, - -1, -1, -1, 127, 128, -1, -1, -1, -1, -1, - -1, -1, 136, -1, -1, -1, -1, -1, -1, -1, - -1, 28, 29, 30, 148, 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, 62, 63, -1, -1, -1, - -1, 68, 69, 70, 71, 72, 73, 74, 75, 76, - -1, 78, 79, 80, 81, -1, 83, -1, 85, 86, - 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, -1, 105, -1, - 107, 108, 109, 110, 111, 112, 113, -1, -1, -1, - -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, - 127, -1, -1, -1, -1, -1, -1, -1, -1, 136, + -1, -1, -1, -1, -1, 148, 149, 23, 24, 25, + 26, 27, 28, 29, 30, -1, 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, 62, 63, -1, -1, + -1, -1, 68, 69, 70, 71, 72, 73, 74, 75, + 76, -1, 78, 79, 80, 81, -1, 83, -1, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, -1, 105, + -1, 107, 108, 109, 110, 111, 112, 113, -1, -1, + -1, -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 148 + 136, -1, -1, -1, -1, -1, -1, -1, -1, 28, + 29, 30, 148, 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, 62, 63, -1, -1, -1, -1, 68, + 69, 70, 71, 72, 73, 74, 75, 76, -1, 78, + 79, 80, 81, -1, 83, -1, 85, 86, 87, 88, + 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, + 99, 100, 101, 102, 103, -1, 105, -1, 107, 108, + 109, 110, 111, 112, 113, -1, -1, -1, -1, -1, + 119, -1, -1, -1, -1, 124, -1, -1, 127, -1, + -1, -1, -1, -1, -1, -1, -1, 136, -1, -1, + -1, -1, -1, -1, -1, -1, 28, 29, 30, 148, + 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, + 62, 63, -1, -1, -1, -1, 68, 69, 70, 71, + 72, 73, 74, 75, 76, -1, 78, 79, 80, 81, + -1, 83, -1, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, -1, 105, -1, 107, 108, 109, 110, 111, + 112, 113, -1, -1, -1, -1, -1, 119, -1, -1, + -1, -1, -1, -1, -1, 127, 128, -1, -1, -1, + -1, -1, -1, -1, 136, -1, -1, -1, -1, -1, + -1, -1, -1, 28, 29, 30, 148, 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, 62, 63, -1, + -1, -1, -1, 68, 69, 70, 71, 72, 73, 74, + 75, 76, -1, 78, 79, 80, 81, -1, 83, -1, + 85, 86, 87, 88, 89, 90, 91, 92, -1, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, + 105, -1, 107, 108, 109, 110, 111, 112, 113, -1, + -1, -1, -1, -1, 119, -1, -1, -1, -1, -1, + -1, -1, 127, -1, -1, -1, -1, -1, -1, -1, + -1, 136, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 148 }; const unsigned short int asn1_parser::yystos_[] = { - 0, 148, 153, 154, 225, 373, 0, 153, 50, 123, - 226, 227, 228, 15, 233, 4, 149, 229, 230, 231, - 232, 308, 371, 132, 313, 74, 34, 58, 69, 234, - 124, 229, 125, 139, 314, 105, 105, 105, 60, 235, - 231, 16, 17, 316, 139, 315, 70, 120, 126, 316, - 132, 35, 315, 59, 236, 237, 30, 148, 149, 238, - 245, 246, 247, 370, 372, 224, 71, 239, 141, 141, - 136, 123, 55, 240, 241, 242, 245, 21, 148, 159, - 195, 199, 200, 201, 202, 203, 204, 248, 249, 258, - 259, 260, 370, 372, 374, 246, 124, 141, 242, 63, - 123, 205, 248, 21, 29, 31, 33, 36, 37, 38, - 40, 41, 47, 48, 51, 52, 56, 61, 64, 65, - 66, 67, 73, 75, 77, 82, 83, 84, 85, 87, - 93, 95, 96, 97, 98, 99, 104, 106, 107, 108, - 110, 114, 115, 116, 117, 118, 120, 127, 148, 158, - 183, 184, 193, 194, 198, 205, 210, 211, 212, 213, - 250, 252, 256, 261, 262, 270, 272, 276, 280, 281, - 284, 285, 286, 290, 291, 292, 293, 297, 298, 299, - 300, 304, 311, 312, 317, 318, 319, 320, 322, 323, - 324, 325, 326, 327, 328, 329, 330, 370, 371, 373, - 205, 261, 370, 373, 205, 243, 373, 148, 149, 156, - 157, 158, 206, 207, 208, 209, 247, 261, 370, 373, - 374, 148, 156, 158, 373, 102, 102, 123, 90, 123, - 86, 123, 68, 102, 86, 101, 123, 125, 331, 355, - 86, 123, 331, 355, 42, 156, 160, 161, 261, 15, - 301, 137, 120, 120, 261, 137, 123, 254, 120, 331, - 58, 69, 261, 137, 129, 137, 261, 120, 137, 120, - 123, 244, 305, 372, 124, 136, 140, 137, 120, 137, - 123, 263, 294, 295, 296, 371, 121, 274, 277, 278, - 279, 371, 156, 273, 274, 371, 261, 263, 371, 331, - 44, 121, 124, 263, 287, 288, 289, 4, 5, 6, - 8, 10, 19, 30, 33, 45, 46, 53, 62, 63, - 72, 79, 89, 100, 109, 119, 123, 125, 138, 148, - 149, 196, 215, 216, 218, 223, 261, 271, 275, 321, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 345, 346, 347, 348, 349, 350, 351, 353, 355, 356, - 357, 358, 366, 367, 86, 86, 261, 263, 124, 287, - 86, 86, 123, 140, 32, 94, 113, 303, 23, 24, - 25, 26, 27, 164, 165, 196, 261, 120, 165, 5, - 6, 8, 10, 33, 39, 46, 88, 119, 123, 140, - 148, 149, 156, 198, 214, 251, 253, 255, 257, 261, - 264, 265, 266, 267, 271, 275, 313, 321, 372, 373, - 123, 268, 261, 261, 165, 370, 261, 21, 370, 120, - 33, 148, 149, 198, 264, 265, 370, 373, 160, 4, - 251, 306, 307, 308, 309, 310, 371, 207, 247, 148, - 374, 123, 183, 185, 186, 187, 189, 282, 283, 371, - 124, 136, 261, 131, 368, 124, 136, 125, 124, 136, - 86, 368, 49, 88, 124, 136, 57, 342, 39, 261, - 39, 331, 265, 12, 43, 44, 121, 197, 335, 334, - 4, 123, 368, 136, 111, 144, 343, 76, 145, 344, - 342, 261, 122, 129, 261, 263, 261, 263, 124, 261, - 263, 261, 263, 23, 24, 27, 162, 163, 166, 169, - 171, 172, 174, 4, 251, 302, 137, 265, 265, 265, - 269, 125, 254, 124, 136, 140, 144, 136, 144, 137, - 334, 265, 137, 137, 251, 306, 124, 306, 125, 28, - 29, 30, 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, 62, 63, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 78, 79, 80, 81, 83, 85, 86, - 87, 88, 89, 90, 91, 92, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 105, 107, 108, 109, - 110, 111, 112, 113, 119, 136, 148, 164, 182, 188, - 190, 191, 192, 261, 265, 373, 375, 124, 136, 125, - 121, 263, 251, 261, 275, 369, 121, 279, 251, 275, - 274, 261, 136, 33, 148, 149, 347, 121, 289, 345, - 123, 53, 265, 331, 359, 123, 360, 136, 124, 136, - 126, 143, 219, 220, 126, 121, 338, 340, 78, 129, - 347, 352, 354, 49, 88, 156, 167, 164, 261, 156, - 124, 136, 128, 164, 124, 265, 4, 265, 265, 265, - 265, 265, 372, 124, 124, 309, 192, 136, 124, 191, - 137, 283, 4, 251, 136, 140, 368, 126, 126, 121, - 288, 368, 156, 209, 217, 261, 39, 121, 361, 362, - 371, 335, 121, 137, 222, 371, 124, 136, 136, 354, - 261, 49, 88, 173, 49, 88, 170, 112, 168, 49, - 88, 175, 119, 176, 163, 126, 126, 147, 126, 126, - 296, 265, 136, 136, 136, 140, 124, 265, 124, 136, - 124, 136, 331, 363, 364, 136, 137, 221, 137, 220, - 335, 185, 347, 170, 103, 124, 136, 278, 121, 288, - 123, 185, 265, 361, 361, 28, 88, 92, 365, 335, - 221, 222, 371, 123, 155, 136, 136, 265, 124, 29, - 33, 36, 37, 38, 39, 40, 41, 46, 47, 48, - 51, 52, 56, 61, 62, 73, 75, 83, 85, 87, - 88, 95, 96, 97, 98, 99, 107, 108, 109, 110, - 119, 127, 148, 177, 178, 179, 180, 181, 182, 121, - 177, 124, 178, 164, 182, 136, 128, 288, 136 + 0, 148, 153, 154, 227, 375, 0, 153, 50, 123, + 228, 229, 230, 15, 235, 4, 149, 231, 232, 233, + 234, 310, 373, 132, 315, 74, 34, 58, 69, 236, + 124, 231, 125, 139, 316, 105, 105, 105, 60, 237, + 233, 16, 17, 318, 139, 317, 70, 120, 126, 318, + 132, 35, 317, 59, 238, 239, 30, 148, 149, 240, + 247, 248, 249, 372, 374, 226, 71, 241, 141, 141, + 136, 123, 55, 242, 243, 244, 247, 21, 159, 197, + 201, 202, 203, 204, 205, 206, 250, 251, 260, 261, + 262, 372, 374, 248, 124, 141, 244, 63, 123, 207, + 250, 21, 29, 31, 33, 36, 37, 38, 40, 41, + 47, 48, 51, 52, 56, 61, 64, 65, 66, 67, + 73, 75, 77, 82, 83, 84, 85, 87, 93, 95, + 96, 97, 98, 99, 104, 106, 107, 108, 110, 114, + 115, 116, 117, 118, 120, 127, 148, 158, 185, 186, + 195, 196, 200, 207, 212, 213, 214, 215, 252, 254, + 258, 263, 264, 272, 274, 278, 282, 283, 286, 287, + 288, 292, 293, 294, 295, 299, 300, 301, 302, 306, + 313, 314, 319, 320, 321, 322, 324, 325, 326, 327, + 328, 329, 330, 331, 332, 372, 373, 375, 207, 263, + 372, 375, 245, 375, 148, 149, 156, 157, 158, 208, + 209, 210, 211, 249, 263, 372, 375, 376, 148, 156, + 158, 375, 102, 102, 123, 90, 123, 86, 123, 68, + 102, 86, 101, 123, 125, 333, 357, 86, 123, 333, + 357, 42, 156, 160, 161, 263, 15, 303, 137, 120, + 120, 263, 137, 123, 120, 333, 58, 69, 263, 137, + 129, 137, 263, 120, 137, 123, 246, 307, 374, 124, + 136, 140, 137, 120, 137, 123, 265, 296, 297, 298, + 373, 121, 276, 279, 280, 281, 373, 156, 275, 276, + 373, 263, 265, 373, 333, 44, 121, 124, 265, 289, + 290, 291, 4, 5, 6, 8, 10, 19, 30, 33, + 45, 46, 53, 62, 63, 72, 79, 89, 100, 109, + 119, 123, 125, 138, 148, 149, 198, 217, 218, 220, + 225, 263, 273, 277, 323, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 347, 348, 349, 350, 351, + 352, 353, 355, 357, 358, 359, 360, 368, 369, 86, + 86, 263, 265, 124, 289, 86, 86, 123, 140, 32, + 94, 113, 305, 23, 24, 25, 26, 27, 164, 165, + 198, 160, 263, 120, 165, 5, 6, 8, 10, 33, + 39, 46, 88, 119, 123, 140, 148, 149, 156, 200, + 216, 253, 255, 256, 257, 259, 263, 266, 267, 268, + 269, 273, 277, 315, 323, 374, 375, 123, 270, 263, + 263, 165, 372, 263, 21, 372, 120, 33, 148, 149, + 200, 266, 267, 372, 375, 4, 253, 308, 309, 310, + 311, 312, 373, 209, 249, 148, 376, 123, 185, 187, + 188, 189, 191, 284, 285, 373, 124, 136, 263, 131, + 370, 124, 136, 125, 124, 136, 86, 370, 49, 88, + 124, 136, 57, 344, 39, 263, 39, 333, 267, 12, + 43, 44, 121, 199, 337, 336, 4, 123, 370, 136, + 111, 144, 345, 76, 145, 346, 344, 263, 122, 129, + 263, 265, 263, 265, 124, 263, 265, 263, 265, 23, + 24, 27, 162, 163, 166, 169, 171, 172, 174, 176, + 4, 253, 304, 137, 267, 267, 267, 271, 125, 123, + 124, 136, 136, 140, 144, 136, 144, 137, 336, 267, + 137, 137, 253, 308, 124, 308, 125, 28, 29, 30, + 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, + 62, 63, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 78, 79, 80, 81, 83, 85, 86, 87, 88, + 89, 90, 91, 92, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 105, 107, 108, 109, 110, 111, + 112, 113, 119, 136, 148, 164, 184, 190, 192, 193, + 194, 263, 267, 375, 377, 124, 136, 125, 121, 265, + 253, 263, 277, 371, 121, 281, 253, 277, 276, 263, + 136, 33, 148, 149, 349, 121, 291, 347, 123, 53, + 267, 333, 361, 123, 362, 136, 124, 136, 126, 143, + 221, 222, 126, 121, 340, 342, 78, 129, 349, 354, + 356, 49, 88, 156, 167, 263, 164, 263, 156, 124, + 136, 128, 164, 124, 267, 4, 256, 256, 267, 267, + 267, 267, 267, 374, 124, 124, 311, 194, 136, 124, + 193, 137, 285, 4, 253, 136, 140, 370, 126, 126, + 121, 290, 370, 121, 156, 195, 211, 219, 263, 375, + 39, 121, 363, 364, 373, 337, 121, 137, 224, 373, + 124, 136, 136, 356, 263, 49, 88, 175, 49, 88, + 173, 49, 88, 170, 112, 168, 49, 88, 177, 119, + 178, 163, 126, 124, 126, 147, 126, 126, 298, 267, + 136, 136, 136, 140, 124, 137, 267, 124, 136, 124, + 136, 333, 365, 366, 136, 137, 223, 137, 222, 337, + 187, 270, 349, 170, 103, 124, 136, 280, 121, 290, + 123, 187, 267, 148, 363, 363, 28, 88, 92, 367, + 337, 223, 224, 373, 123, 155, 136, 136, 267, 124, + 29, 33, 36, 37, 38, 39, 40, 41, 46, 47, + 48, 51, 52, 56, 61, 62, 73, 75, 83, 85, + 87, 88, 95, 96, 97, 98, 99, 107, 108, 109, + 110, 119, 127, 148, 179, 180, 181, 182, 183, 184, + 121, 179, 124, 180, 164, 184, 136, 128, 290, 136 }; const unsigned short int @@ -8705,61 +8726,62 @@ namespace yy { { 0, 152, 153, 153, 154, 155, 156, 156, 156, 157, 158, 158, 159, 160, 160, 161, 162, 162, 163, 163, - 163, 163, 163, 164, 164, 164, 164, 164, 165, 165, - 166, 167, 167, 167, 168, 168, 169, 170, 170, 170, - 171, 172, 173, 173, 173, 174, 175, 175, 175, 176, - 176, 177, 177, 178, 178, 179, 180, 181, 181, 181, - 182, 182, 183, 183, 184, 185, 185, 186, 186, 187, - 188, 189, 190, 190, 191, 191, 192, 192, 193, 193, - 194, 195, 196, 197, 197, 197, 197, 197, 198, 198, - 199, 199, 199, 199, 199, 200, 201, 202, 203, 204, - 205, 206, 206, 207, 207, 208, 208, 209, 209, 210, - 211, 212, 213, 213, 214, 214, 215, 215, 215, 216, - 217, 217, 217, 217, 217, 218, 218, 219, 219, 220, - 220, 221, 221, 222, 222, 223, 223, 223, 224, 225, - 226, 226, 226, 227, 228, 229, 229, 230, 230, 230, - 231, 232, 233, 233, 234, 234, 234, 234, 235, 235, - 236, 236, 237, 237, 237, 238, 238, 239, 239, 240, - 240, 241, 241, 242, 243, 244, 244, 244, 245, 245, - 246, 247, 247, 247, 248, 248, 249, 249, 249, 249, - 249, 249, 250, 250, 250, 251, 251, 252, 253, 254, - 255, 255, 255, 256, 257, 258, 259, 260, 261, 261, - 261, 261, 261, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 262, 262, 263, 264, 264, 264, 264, 264, + 163, 163, 163, 163, 164, 164, 164, 164, 164, 165, + 165, 166, 167, 167, 167, 168, 168, 169, 170, 170, + 170, 171, 172, 173, 173, 173, 174, 175, 175, 175, + 176, 177, 177, 177, 178, 178, 179, 179, 180, 180, + 181, 182, 183, 183, 183, 184, 184, 185, 185, 186, + 187, 187, 188, 188, 189, 190, 191, 192, 192, 193, + 193, 194, 194, 195, 195, 196, 197, 198, 199, 199, + 199, 199, 199, 200, 200, 201, 201, 201, 201, 201, + 202, 203, 204, 205, 206, 207, 208, 208, 209, 209, + 210, 210, 211, 211, 212, 213, 214, 215, 215, 216, + 216, 217, 217, 217, 218, 219, 219, 219, 219, 219, + 219, 219, 220, 220, 221, 221, 222, 222, 223, 223, + 224, 224, 225, 225, 225, 226, 227, 228, 228, 228, + 229, 230, 231, 231, 232, 232, 232, 233, 234, 235, + 235, 236, 236, 236, 236, 237, 237, 238, 238, 239, + 239, 239, 240, 240, 241, 241, 242, 242, 243, 243, + 244, 245, 246, 246, 246, 247, 247, 248, 249, 249, + 249, 250, 250, 251, 251, 251, 251, 251, 251, 252, + 252, 252, 253, 253, 254, 255, 256, 256, 257, 257, + 257, 258, 259, 260, 261, 262, 263, 263, 263, 263, + 263, 264, 264, 264, 264, 264, 264, 264, 264, 264, + 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, 264, 264, 264, 264, 265, 265, 266, 266, - 267, 267, 268, 269, 269, 270, 271, 271, 272, 272, - 273, 273, 274, 274, 275, 275, 276, 277, 277, 277, - 277, 278, 278, 279, 279, 280, 281, 281, 282, 282, - 283, 283, 284, 285, 286, 286, 287, 287, 287, 287, - 287, 287, 287, 287, 287, 288, 288, 289, 289, 289, - 289, 290, 290, 291, 291, 292, 292, 293, 294, 295, - 295, 295, 296, 296, 297, 298, 299, 299, 299, 300, - 301, 301, 302, 302, 303, 303, 303, 303, 304, 305, - 305, 306, 306, 307, 307, 307, 308, 309, 309, 310, - 311, 312, 313, 314, 315, 315, 316, 316, 317, 318, - 319, 320, 321, 322, 323, 324, 325, 326, 326, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 328, 329, 329, 330, 330, 330, 330, 330, - 330, 330, 330, 331, 332, 332, 333, 334, 334, 334, - 335, 335, 336, 336, 337, 338, 338, 339, 340, 340, - 341, 342, 343, 343, 344, 344, 345, 345, 346, 346, - 346, 346, 346, 346, 346, 346, 346, 347, 347, 347, - 347, 347, 347, 347, 347, 347, 347, 348, 349, 350, - 351, 351, 352, 352, 353, 353, 354, 354, 355, 356, - 357, 358, 358, 359, 360, 360, 360, 360, 361, 361, - 362, 363, 364, 364, 365, 365, 365, 365, 366, 367, - 368, 368, 369, 369, 369, 370, 371, 372, 373, 374, - 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375, 375, 375, 375, - 375, 375, 375, 375, 375, 375, 375 + 264, 264, 265, 266, 266, 266, 266, 266, 266, 266, + 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, + 266, 266, 266, 266, 267, 267, 268, 268, 269, 269, + 270, 271, 271, 272, 273, 273, 274, 274, 275, 275, + 276, 276, 277, 277, 278, 279, 279, 279, 279, 280, + 280, 281, 281, 282, 283, 283, 284, 284, 285, 285, + 286, 287, 288, 288, 289, 289, 289, 289, 289, 289, + 289, 289, 289, 290, 290, 291, 291, 291, 291, 292, + 292, 293, 293, 294, 294, 295, 296, 297, 297, 297, + 298, 298, 299, 300, 301, 301, 301, 302, 303, 303, + 304, 304, 305, 305, 305, 305, 306, 307, 307, 308, + 308, 309, 309, 309, 310, 311, 311, 312, 313, 314, + 315, 316, 317, 317, 318, 318, 319, 320, 321, 322, + 323, 324, 325, 326, 327, 328, 328, 329, 329, 329, + 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, + 330, 331, 331, 332, 332, 332, 332, 332, 332, 332, + 332, 333, 334, 334, 335, 336, 336, 336, 337, 337, + 338, 338, 339, 340, 340, 341, 342, 342, 343, 344, + 345, 345, 346, 346, 347, 347, 348, 348, 348, 348, + 348, 348, 348, 348, 348, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 350, 351, 352, 353, 353, + 354, 354, 355, 355, 356, 356, 357, 358, 359, 360, + 360, 361, 362, 362, 362, 362, 363, 363, 364, 365, + 366, 366, 367, 367, 367, 367, 368, 369, 370, 370, + 371, 371, 371, 372, 373, 374, 375, 376, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377 }; const unsigned char @@ -8767,61 +8789,62 @@ namespace yy { { 0, 2, 1, 2, 10, 3, 1, 1, 1, 3, 1, 1, 3, 1, 1, 5, 1, 3, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, - 2, 1, 2, 0, 1, 0, 4, 1, 2, 0, - 3, 3, 1, 2, 0, 3, 1, 1, 0, 3, - 0, 1, 2, 1, 1, 3, 2, 1, 2, 0, - 1, 1, 1, 1, 3, 1, 1, 1, 1, 5, - 2, 3, 1, 2, 1, 1, 1, 1, 1, 1, - 3, 4, 3, 1, 3, 1, 3, 5, 3, 3, - 1, 1, 1, 1, 1, 4, 5, 5, 4, 5, - 3, 1, 3, 3, 1, 1, 1, 1, 1, 1, - 3, 3, 1, 1, 1, 1, 1, 1, 1, 5, - 3, 3, 1, 1, 0, 1, 4, 1, 3, 2, - 4, 2, 0, 1, 3, 2, 3, 5, 0, 2, - 1, 1, 0, 3, 2, 1, 2, 1, 1, 1, - 1, 4, 2, 0, 2, 2, 2, 0, 2, 0, - 3, 0, 3, 3, 0, 1, 0, 3, 0, 1, - 0, 1, 2, 3, 2, 1, 1, 0, 1, 3, - 1, 1, 3, 1, 1, 2, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, - 1, 1, 1, 3, 3, 3, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 3, 2, 1, 2, 0, 1, 0, 4, 1, 2, + 0, 3, 3, 1, 2, 0, 3, 1, 2, 0, + 3, 1, 1, 0, 3, 0, 1, 2, 1, 1, + 3, 2, 1, 2, 0, 1, 1, 1, 1, 3, + 1, 1, 1, 1, 5, 2, 3, 1, 2, 1, + 1, 1, 1, 1, 1, 3, 4, 3, 1, 3, + 1, 3, 5, 3, 3, 1, 1, 1, 1, 1, + 4, 5, 5, 4, 5, 3, 1, 3, 3, 1, + 1, 1, 1, 1, 1, 3, 3, 1, 1, 1, + 1, 1, 1, 1, 5, 3, 3, 1, 1, 1, + 1, 0, 1, 4, 1, 3, 2, 4, 2, 0, + 1, 3, 2, 3, 5, 0, 2, 1, 1, 0, + 3, 2, 1, 2, 1, 1, 1, 1, 4, 2, + 0, 2, 2, 2, 0, 2, 0, 3, 0, 3, + 3, 0, 1, 0, 3, 0, 1, 0, 1, 2, + 3, 2, 1, 1, 0, 1, 3, 1, 1, 3, + 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 4, 4, 1, 3, 1, 1, + 1, 3, 3, 3, 4, 4, 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, 2, 1, 1, 1, 1, 1, - 1, 1, 2, 1, 4, 1, 1, 1, 1, 3, - 3, 1, 1, 1, 1, 1, 1, 1, 3, 3, - 3, 3, 3, 1, 2, 1, 1, 1, 1, 4, - 1, 3, 4, 4, 1, 2, 4, 1, 4, 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, 1, + 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, + 2, 1, 4, 1, 1, 1, 1, 3, 3, 1, + 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, + 3, 1, 2, 1, 1, 1, 1, 4, 1, 3, + 4, 4, 1, 2, 4, 1, 4, 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, 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, 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, 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, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1 }; @@ -8867,7 +8890,8 @@ namespace yy { "FieldSpecList", "FieldSpec", "FieldName", "FieldNameList", "TypeFieldSpec", "TypeOptionalitySpec", "OptionalUnique", "FixedTypeValueFieldSpec", "ValueOptionalitySpec", - "VariableTypeValueFieldSpec", "ObjectFieldSpec", "ObjectOptionalitySpec", + "VariableTypeValueFieldSpec", "FixedTypeValueSetFieldSpec", + "ValueSetOptionalitySpec", "ObjectFieldSpec", "ObjectOptionalitySpec", "ObjectSetFieldSpec", "ObjectSetOptionalitySpec", "WithSyntaxSpec", "TokenOrGroupSpecList", "TokenOrGroupSpec", "OptionalGroup", "RequiredToken", "LiteralList", "Literal", "DefinedObject", @@ -8936,61 +8960,62 @@ namespace yy { { 0, 308, 308, 309, 312, 327, 330, 331, 332, 335, 338, 339, 342, 346, 347, 351, 354, 355, 358, 359, - 360, 361, 362, 365, 366, 367, 368, 369, 372, 373, - 376, 379, 380, 381, 384, 385, 388, 391, 392, 393, - 396, 399, 402, 403, 404, 407, 410, 411, 412, 418, - 419, 422, 423, 426, 427, 430, 433, 436, 437, 438, - 441, 442, 445, 446, 449, 455, 456, 461, 462, 465, - 468, 471, 474, 475, 478, 479, 482, 483, 487, 488, - 491, 494, 498, 501, 502, 503, 504, 505, 514, 515, - 521, 523, 525, 527, 529, 534, 538, 542, 546, 550, - 558, 562, 564, 568, 570, 574, 575, 578, 579, 594, - 606, 615, 622, 623, 627, 628, 631, 632, 633, 636, - 639, 640, 642, 643, 644, 647, 649, 653, 654, 657, - 658, 661, 662, 665, 666, 669, 670, 671, 682, 690, - 697, 698, 699, 702, 705, 709, 710, 714, 715, 716, - 719, 722, 726, 727, 730, 732, 734, 736, 740, 741, - 744, 746, 750, 751, 752, 755, 756, 759, 761, 764, - 766, 769, 771, 775, 779, 783, 784, 785, 788, 790, - 794, 798, 800, 802, 811, 813, 817, 819, 821, 823, - 826, 828, 832, 833, 835, 841, 843, 846, 850, 853, - 857, 859, 862, 872, 875, 900, 904, 908, 912, 914, - 916, 918, 920, 925, 926, 927, 928, 929, 930, 931, - 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, - 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, - 952, 953, 954, 955, 958, 962, 964, 966, 968, 970, - 972, 974, 976, 978, 980, 982, 983, 985, 987, 989, - 993, 995, 997, 999, 1001, 1003, 1007, 1009, 1013, 1014, - 1017, 1018, 1021, 1024, 1026, 1034, 1037, 1038, 1041, 1043, - 1047, 1049, 1053, 1055, 1059, 1061, 1065, 1069, 1072, 1075, - 1079, 1082, 1084, 1088, 1090, 1098, 1101, 1102, 1105, 1106, - 1109, 1110, 1124, 1127, 1130, 1132, 1136, 1138, 1140, 1142, - 1144, 1146, 1148, 1150, 1152, 1156, 1158, 1162, 1164, 1166, - 1168, 1179, 1181, 1185, 1187, 1191, 1193, 1197, 1201, 1205, - 1207, 1209, 1213, 1215, 1222, 1225, 1229, 1231, 1233, 1237, - 1241, 1242, 1245, 1247, 1250, 1252, 1254, 1256, 1266, 1269, - 1271, 1275, 1277, 1281, 1283, 1285, 1289, 1293, 1295, 1298, - 1302, 1314, 1317, 1323, 1326, 1327, 1330, 1331, 1334, 1340, - 1347, 1353, 1356, 1359, 1362, 1365, 1368, 1371, 1372, 1375, - 1376, 1377, 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385, - 1386, 1387, 1391, 1394, 1396, 1400, 1402, 1404, 1406, 1408, - 1410, 1412, 1414, 1418, 1421, 1422, 1425, 1428, 1429, 1430, - 1433, 1434, 1437, 1438, 1441, 1444, 1445, 1448, 1451, 1452, - 1455, 1458, 1461, 1462, 1465, 1466, 1469, 1471, 1474, 1475, - 1476, 1477, 1478, 1479, 1480, 1481, 1482, 1488, 1490, 1491, - 1492, 1493, 1494, 1495, 1496, 1497, 1498, 1501, 1504, 1507, - 1510, 1511, 1514, 1515, 1518, 1519, 1522, 1523, 1526, 1529, - 1532, 1535, 1536, 1539, 1541, 1542, 1543, 1544, 1547, 1548, - 1551, 1554, 1557, 1558, 1561, 1562, 1563, 1564, 1567, 1570, - 1573, 1574, 1577, 1578, 1579, 1582, 1586, 1590, 1594, 1598, - 1602, 1603, 1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, - 1612, 1613, 1614, 1615, 1616, 1617, 1618, 1619, 1620, 1621, - 1622, 1623, 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, - 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, - 1642, 1643, 1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, - 1652, 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, - 1662, 1663, 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, - 1672, 1673, 1674, 1675, 1676, 1677, 1678 + 360, 361, 362, 363, 366, 367, 368, 369, 370, 373, + 374, 377, 380, 381, 382, 385, 386, 389, 392, 393, + 394, 398, 401, 404, 405, 406, 409, 412, 413, 414, + 417, 420, 421, 422, 428, 429, 432, 433, 436, 437, + 440, 443, 446, 447, 448, 451, 452, 455, 456, 459, + 465, 466, 471, 472, 475, 478, 481, 484, 485, 488, + 489, 492, 493, 497, 498, 501, 504, 508, 511, 512, + 513, 514, 515, 524, 525, 531, 533, 535, 537, 539, + 544, 548, 552, 556, 560, 568, 572, 574, 578, 580, + 584, 585, 588, 589, 604, 616, 625, 632, 633, 637, + 638, 641, 642, 643, 646, 649, 650, 651, 652, 653, + 654, 655, 658, 660, 664, 665, 668, 669, 672, 673, + 676, 677, 680, 681, 682, 693, 701, 708, 709, 710, + 713, 716, 720, 721, 725, 726, 727, 730, 733, 737, + 738, 741, 743, 745, 747, 751, 752, 755, 757, 761, + 762, 763, 766, 767, 770, 772, 775, 777, 780, 782, + 786, 790, 794, 795, 796, 799, 801, 805, 809, 811, + 813, 822, 824, 828, 830, 832, 834, 837, 839, 843, + 844, 846, 852, 854, 857, 861, 864, 866, 870, 872, + 875, 885, 888, 913, 917, 921, 925, 927, 929, 931, + 933, 938, 939, 940, 941, 942, 943, 944, 945, 946, + 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, + 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, + 967, 968, 971, 975, 977, 979, 981, 983, 985, 987, + 989, 991, 993, 995, 996, 998, 1000, 1002, 1006, 1008, + 1010, 1012, 1014, 1016, 1020, 1022, 1026, 1027, 1030, 1031, + 1034, 1037, 1039, 1047, 1050, 1051, 1054, 1056, 1060, 1062, + 1066, 1068, 1072, 1074, 1078, 1082, 1085, 1088, 1092, 1095, + 1097, 1101, 1103, 1111, 1114, 1115, 1118, 1119, 1122, 1123, + 1137, 1140, 1143, 1145, 1149, 1151, 1153, 1155, 1157, 1159, + 1161, 1163, 1165, 1169, 1171, 1175, 1177, 1179, 1181, 1192, + 1194, 1198, 1200, 1204, 1206, 1210, 1214, 1218, 1220, 1222, + 1226, 1228, 1235, 1238, 1242, 1244, 1246, 1250, 1254, 1255, + 1258, 1260, 1263, 1265, 1267, 1269, 1279, 1282, 1284, 1288, + 1290, 1294, 1296, 1298, 1302, 1306, 1308, 1311, 1315, 1327, + 1330, 1336, 1339, 1340, 1343, 1344, 1347, 1353, 1360, 1366, + 1369, 1372, 1375, 1378, 1381, 1384, 1385, 1388, 1389, 1390, + 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399, 1400, + 1404, 1407, 1409, 1413, 1415, 1417, 1419, 1421, 1423, 1425, + 1427, 1431, 1434, 1435, 1438, 1441, 1442, 1443, 1446, 1447, + 1450, 1451, 1454, 1457, 1458, 1461, 1464, 1465, 1468, 1471, + 1474, 1475, 1478, 1479, 1482, 1484, 1487, 1488, 1489, 1490, + 1491, 1492, 1493, 1494, 1495, 1501, 1503, 1504, 1505, 1506, + 1507, 1508, 1509, 1510, 1511, 1514, 1517, 1520, 1523, 1524, + 1527, 1528, 1531, 1532, 1535, 1536, 1539, 1542, 1545, 1548, + 1549, 1552, 1554, 1555, 1556, 1557, 1560, 1561, 1564, 1567, + 1570, 1571, 1574, 1575, 1576, 1577, 1580, 1583, 1586, 1587, + 1590, 1591, 1592, 1595, 1599, 1603, 1607, 1611, 1615, 1616, + 1617, 1618, 1619, 1620, 1621, 1622, 1623, 1624, 1625, 1626, + 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, 1636, + 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645, 1646, + 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, 1655, 1656, + 1657, 1658, 1659, 1660, 1661, 1662, 1663, 1664, 1665, 1666, + 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676, + 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686, + 1687, 1688, 1689, 1690, 1691 }; // Print the state stack on the debug stream. @@ -9025,8 +9050,8 @@ namespace yy { } // yy -#line 9027 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 -#line 1680 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 +#line 9052 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 +#line 1693 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 @@ -9039,7 +9064,7 @@ namespace yy { context.location.step(); // Lexer -#line 9043 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -9139,25 +9164,25 @@ namespace yy { } yy2: ++context.cursor; -#line 9158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9185 "/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 9145 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 9185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9212 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } -#line 9151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 9162 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 9156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 9161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 9161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9186 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -9166,9 +9191,9 @@ namespace yy { } yy11: ++context.cursor; -#line 9180 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9207 "/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 9172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { @@ -9241,53 +9266,75 @@ namespace yy { case '\'': goto yy87; case '0': case '1': goto yy16; + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': goto yy88; case '\\': goto yy79; default: goto yy13; } yy18: ++context.cursor; -#line 9170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9197 "/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 9252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 9171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9198 "/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 9257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 9176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9203 "/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 9262 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { - case '-': goto yy88; + case '-': goto yy90; default: goto yy25; } yy25: -#line 9177 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9204 "/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 9272 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9317 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { - case '.': goto yy91; + case '.': goto yy93; default: goto yy27; } yy27: -#line 9178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9205 "/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 9282 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { - case '*': goto yy93; + case '*': goto yy95; default: goto yy5; } yy29: - yych = *++context.cursor; + yyaccept = 0; + yych = *(YYMARKER = ++context.cursor); switch (yych) { + case '.': goto yy97; case '0': case '1': case '2': @@ -9301,95 +9348,95 @@ namespace yy { default: goto yy31; } yy31: -#line 9147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9172 "/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 9307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9354 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy32: - yyaccept = 0; + yyaccept = 1; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case ':': goto yy95; + case ':': goto yy99; default: goto yy33; } yy33: -#line 9174 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9201 "/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 9318 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9365 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 9175 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9202 "/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 9323 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9370 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9208 "/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 9328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9375 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 9184 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9211 "/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 9333 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy40: yych = *++context.cursor; switch (yych) { - case 'B': goto yy97; - case 'L': goto yy98; - case 'N': goto yy99; - case 'P': goto yy100; - case 'U': goto yy101; + case 'B': goto yy100; + case 'L': goto yy101; + case 'N': goto yy102; + case 'P': goto yy103; + case 'U': goto yy104; default: goto yy49; } yy41: -#line 9152 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9179 "/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 9347 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy42: yych = *++context.cursor; switch (yych) { - case 'E': goto yy102; - case 'I': goto yy103; - case 'M': goto yy104; - case 'O': goto yy105; - case 'Y': goto yy106; + case 'E': goto yy105; + case 'I': goto yy106; + case 'M': goto yy107; + case 'O': goto yy108; + case 'Y': goto yy109; default: goto yy49; } yy43: yych = *++context.cursor; switch (yych) { - case 'H': goto yy108; - case 'L': goto yy109; - case 'O': goto yy110; + case 'H': goto yy111; + case 'L': goto yy112; + case 'O': goto yy113; default: goto yy49; } yy44: yych = *++context.cursor; switch (yych) { - case 'A': goto yy111; - case 'E': goto yy112; - case 'U': goto yy113; + case 'A': goto yy114; + case 'E': goto yy115; + case 'U': goto yy116; default: goto yy49; } yy45: yych = *++context.cursor; switch (yych) { - case 'M': goto yy114; - case 'N': goto yy115; - case 'X': goto yy116; + case 'M': goto yy117; + case 'N': goto yy118; + case 'X': goto yy119; default: goto yy49; } yy46: yych = *++context.cursor; switch (yych) { - case 'A': goto yy117; - case 'R': goto yy118; + case 'A': goto yy120; + case 'R': goto yy121; default: goto yy49; } yy47: yych = *++context.cursor; switch (yych) { - case 'e': goto yy119; - case 'r': goto yy120; + case 'e': goto yy122; + case 'r': goto yy123; default: goto yy49; } yy48: @@ -9465,110 +9512,110 @@ namespace yy { yy50: yych = *++context.cursor; switch (yych) { - case 'A': goto yy121; - case 'D': goto yy122; - case 'M': goto yy123; - case 'N': goto yy124; - case 'S': goto yy125; + case 'A': goto yy124; + case 'D': goto yy125; + case 'M': goto yy126; + case 'N': goto yy127; + case 'S': goto yy128; default: goto yy49; } yy51: yych = *++context.cursor; switch (yych) { - case 'A': goto yy126; - case 'I': goto yy127; + case 'A': goto yy129; + case 'I': goto yy130; default: goto yy49; } yy52: yych = *++context.cursor; switch (yych) { - case 'O': goto yy128; - case 'U': goto yy129; - case 'u': goto yy130; + case 'O': goto yy131; + case 'U': goto yy132; + case 'u': goto yy133; default: goto yy49; } yy53: yych = *++context.cursor; switch (yych) { - case 'B': goto yy131; - case 'C': goto yy132; - case 'F': goto yy133; - case 'I': goto yy135; - case 'P': goto yy136; - case 'b': goto yy137; + case 'B': goto yy134; + case 'C': goto yy135; + case 'F': goto yy136; + case 'I': goto yy138; + case 'P': goto yy139; + case 'b': goto yy140; default: goto yy49; } yy54: yych = *++context.cursor; switch (yych) { - case 'A': goto yy138; - case 'D': goto yy139; - case 'L': goto yy140; - case 'R': goto yy141; - case 'r': goto yy142; + case 'A': goto yy141; + case 'D': goto yy142; + case 'L': goto yy143; + case 'R': goto yy144; + case 'r': goto yy145; default: goto yy49; } yy55: yych = *++context.cursor; switch (yych) { - case 'E': goto yy143; + case 'E': goto yy146; default: goto yy49; } yy56: yych = *++context.cursor; switch (yych) { - case 'E': goto yy144; - case 'I': goto yy145; - case 'T': goto yy146; - case 'Y': goto yy147; + case 'E': goto yy147; + case 'I': goto yy148; + case 'T': goto yy149; + case 'Y': goto yy150; default: goto yy49; } yy57: yych = *++context.cursor; switch (yych) { - case '6': goto yy148; - case 'A': goto yy149; - case 'I': goto yy150; - case 'R': goto yy151; - case 'Y': goto yy152; - case 'e': goto yy153; + case '6': goto yy151; + case 'A': goto yy152; + case 'I': goto yy153; + case 'R': goto yy154; + case 'Y': goto yy155; + case 'e': goto yy156; default: goto yy49; } yy58: yych = *++context.cursor; switch (yych) { - case 'N': goto yy154; - case 'T': goto yy155; - case 'n': goto yy156; + case 'N': goto yy157; + case 'T': goto yy158; + case 'n': goto yy159; default: goto yy49; } yy59: yych = *++context.cursor; switch (yych) { - case 'i': goto yy157; + case 'i': goto yy160; default: goto yy49; } yy60: yych = *++context.cursor; switch (yych) { - case 'I': goto yy158; + case 'I': goto yy161; default: goto yy49; } yy61: ++context.cursor; -#line 9172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9199 "/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 9562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9609 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 9173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9200 "/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 9567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9614 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; -#line 9182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9209 "/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 9572 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy67: yych = *++context.cursor; switch (yych) { @@ -9639,24 +9686,24 @@ namespace yy { default: goto yy69; } yy69: -#line 9153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9180 "/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 9645 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9692 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; -#line 9168 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9195 "/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 9650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9697 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; -#line 9179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9206 "/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 9655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9702 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; -#line 9169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9196 "/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 9660 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9707 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -9664,16 +9711,16 @@ namespace yy { default: goto yy77; } yy77: -#line 9149 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9174 "/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 9670 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9717 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; yy79: yych = *++context.cursor; switch (yych) { - case '"': goto yy159; + case '"': goto yy162; case '\\': goto yy79; default: goto yy13; } @@ -9747,9 +9794,9 @@ namespace yy { default: goto yy83; } yy83: -#line 9154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9181 "/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 9753 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9800 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy84: yych = *++context.cursor; switch (yych) { @@ -9820,112 +9867,158 @@ namespace yy { default: goto yy86; } yy86: -#line 9155 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9182 "/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 9826 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { - case 'B': goto yy161; + case 'B': goto yy164; + case 'H': goto yy166; default: goto yy77; } yy88: - yyaccept = 1; - yych = *(YYMARKER = ++context.cursor); + yych = *++context.cursor; switch (yych) { - case '\n': - case '\r': goto yy90; - case '-': goto yy163; - default: goto yy88; + case '"': goto yy76; + case '\'': goto yy168; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': goto yy88; + case '\\': goto yy79; + default: goto yy13; } yy90: -#line 9141 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" - { context.location.columns(context.cursor - start); return yylex(context); } -#line 9845 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy91: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '.': goto yy164; - default: goto yy92; + case '\n': + case '\r': goto yy92; + case '-': goto yy169; + default: goto yy90; } yy92: -#line 9167 "/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 9855 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9166 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" + { context.location.columns(context.cursor - start); return yylex(context); } +#line 9923 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { - case '*': goto yy166; - default: goto yy93; + case '.': goto yy170; + default: goto yy94; } +yy94: +#line 9194 "/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 9933 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy95: yych = *++context.cursor; switch (yych) { - case '=': goto yy167; - default: goto yy96; - } -yy96: - context.cursor = YYMARKER; - if (yyaccept == 0) { - goto yy33; - } else { - goto yy90; + case '*': goto yy172; + default: goto yy95; } yy97: yych = *++context.cursor; switch (yych) { - case 'S': goto yy169; - default: goto yy49; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy173; + default: goto yy98; } yy98: - yych = *++context.cursor; - switch (yych) { - case 'L': goto yy170; - default: goto yy49; + context.cursor = YYMARKER; + switch (yyaccept) { + case 0: goto yy31; + case 1: goto yy33; + default: goto yy92; } yy99: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy172; - default: goto yy49; + case '=': goto yy176; + default: goto yy98; } yy100: yych = *++context.cursor; switch (yych) { - case 'P': goto yy174; + case 'S': goto yy178; default: goto yy49; } yy101: yych = *++context.cursor; switch (yych) { - case 'T': goto yy175; + case 'L': goto yy179; default: goto yy49; } yy102: yych = *++context.cursor; switch (yych) { - case 'G': goto yy176; + case 'Y': goto yy181; default: goto yy49; } yy103: yych = *++context.cursor; switch (yych) { - case 'T': goto yy177; + case 'P': goto yy183; default: goto yy49; } yy104: yych = *++context.cursor; switch (yych) { - case 'P': goto yy179; + case 'T': goto yy184; default: goto yy49; } yy105: yych = *++context.cursor; switch (yych) { - case 'O': goto yy180; + case 'G': goto yy185; default: goto yy49; } yy106: + yych = *++context.cursor; + switch (yych) { + case 'T': goto yy186; + default: goto yy49; + } +yy107: + yych = *++context.cursor; + switch (yych) { + case 'P': goto yy188; + default: goto yy49; + } +yy108: + yych = *++context.cursor; + switch (yych) { + case 'O': goto yy189; + default: goto yy49; + } +yy109: yych = *++context.cursor; switch (yych) { case '-': @@ -9992,171 +10085,171 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy107; - } -yy107: -#line 9055 "/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 10001 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy108: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy181; - case 'O': goto yy182; - default: goto yy49; - } -yy109: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy183; - default: goto yy49; + default: goto yy110; } yy110: - yych = *++context.cursor; - switch (yych) { - case 'M': goto yy184; - case 'N': goto yy185; - default: goto yy49; - } +#line 9080 "/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 10094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy111: yych = *++context.cursor; switch (yych) { - case 'T': goto yy186; + case 'A': goto yy190; + case 'O': goto yy191; default: goto yy49; } yy112: yych = *++context.cursor; switch (yych) { - case 'F': goto yy187; + case 'A': goto yy192; default: goto yy49; } yy113: yych = *++context.cursor; switch (yych) { - case 'R': goto yy188; + case 'M': goto yy193; + case 'N': goto yy194; default: goto yy49; } yy114: yych = *++context.cursor; switch (yych) { - case 'B': goto yy189; + case 'T': goto yy195; default: goto yy49; } yy115: yych = *++context.cursor; switch (yych) { - case 'C': goto yy190; - case 'D': goto yy191; - case 'U': goto yy193; + case 'F': goto yy196; default: goto yy49; } yy116: yych = *++context.cursor; switch (yych) { - case 'C': goto yy194; - case 'P': goto yy195; - case 'T': goto yy196; + case 'R': goto yy197; default: goto yy49; } yy117: yych = *++context.cursor; switch (yych) { - case 'L': goto yy197; + case 'B': goto yy198; default: goto yy49; } yy118: yych = *++context.cursor; switch (yych) { - case 'O': goto yy198; + case 'C': goto yy199; + case 'D': goto yy200; + case 'U': goto yy202; default: goto yy49; } yy119: yych = *++context.cursor; switch (yych) { - case 'n': goto yy199; + case 'C': goto yy203; + case 'P': goto yy204; + case 'T': goto yy205; default: goto yy49; } yy120: yych = *++context.cursor; switch (yych) { - case 'a': goto yy200; + case 'L': goto yy206; default: goto yy49; } yy121: yych = *++context.cursor; switch (yych) { - case '5': goto yy201; + case 'O': goto yy207; default: goto yy49; } yy122: yych = *++context.cursor; switch (yych) { - case 'E': goto yy202; + case 'n': goto yy208; default: goto yy49; } yy123: yych = *++context.cursor; switch (yych) { - case 'P': goto yy203; + case 'a': goto yy209; default: goto yy49; } yy124: yych = *++context.cursor; switch (yych) { - case 'C': goto yy204; - case 'S': goto yy205; - case 'T': goto yy206; + case '5': goto yy210; default: goto yy49; } yy125: yych = *++context.cursor; switch (yych) { - case 'O': goto yy207; + case 'E': goto yy211; default: goto yy49; } yy126: yych = *++context.cursor; switch (yych) { - case 'X': goto yy208; + case 'P': goto yy212; default: goto yy49; } yy127: yych = *++context.cursor; switch (yych) { - case 'N': goto yy210; + case 'C': goto yy213; + case 'S': goto yy214; + case 'T': goto yy215; default: goto yy49; } yy128: yych = *++context.cursor; switch (yych) { - case 'T': goto yy212; + case 'O': goto yy216; default: goto yy49; } yy129: yych = *++context.cursor; switch (yych) { - case 'L': goto yy213; + case 'X': goto yy217; default: goto yy49; } yy130: yych = *++context.cursor; switch (yych) { - case 'm': goto yy214; + case 'N': goto yy219; default: goto yy49; } yy131: yych = *++context.cursor; switch (yych) { - case 'J': goto yy215; + case 'T': goto yy221; default: goto yy49; } yy132: yych = *++context.cursor; switch (yych) { - case 'T': goto yy216; + case 'L': goto yy222; default: goto yy49; } yy133: + yych = *++context.cursor; + switch (yych) { + case 'm': goto yy223; + default: goto yy49; + } +yy134: + yych = *++context.cursor; + switch (yych) { + case 'J': goto yy224; + default: goto yy49; + } +yy135: + yych = *++context.cursor; + switch (yych) { + case 'T': goto yy225; + default: goto yy49; + } +yy136: yych = *++context.cursor; switch (yych) { case '-': @@ -10223,206 +10316,236 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy134; - } -yy134: -#line 9103 "/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 10232 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy135: - yych = *++context.cursor; - switch (yych) { - case 'D': goto yy217; - default: goto yy49; - } -yy136: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy218; - default: goto yy49; + default: goto yy137; } yy137: - yych = *++context.cursor; - switch (yych) { - case 'j': goto yy219; - default: goto yy49; - } +#line 9128 "/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 10325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy138: yych = *++context.cursor; switch (yych) { - case 'T': goto yy220; + case 'D': goto yy226; default: goto yy49; } yy139: yych = *++context.cursor; switch (yych) { - case 'V': goto yy221; + case 'T': goto yy227; default: goto yy49; } yy140: yych = *++context.cursor; switch (yych) { - case 'U': goto yy223; + case 'j': goto yy228; default: goto yy49; } yy141: yych = *++context.cursor; switch (yych) { - case 'E': goto yy224; - case 'I': goto yy225; + case 'T': goto yy229; default: goto yy49; } yy142: yych = *++context.cursor; switch (yych) { - case 'i': goto yy226; + case 'V': goto yy230; default: goto yy49; } yy143: yych = *++context.cursor; switch (yych) { - case 'A': goto yy227; - case 'L': goto yy228; + case 'U': goto yy232; default: goto yy49; } yy144: yych = *++context.cursor; switch (yych) { - case 'Q': goto yy229; - case 'T': goto yy230; + case 'E': goto yy233; + case 'I': goto yy234; default: goto yy49; } yy145: yych = *++context.cursor; switch (yych) { - case 'Z': goto yy232; + case 'i': goto yy235; default: goto yy49; } yy146: yych = *++context.cursor; switch (yych) { - case 'R': goto yy233; + case 'A': goto yy236; + case 'L': goto yy237; default: goto yy49; } yy147: yych = *++context.cursor; switch (yych) { - case 'N': goto yy234; + case 'Q': goto yy238; + case 'T': goto yy239; default: goto yy49; } yy148: yych = *++context.cursor; switch (yych) { - case '1': goto yy235; + case 'Z': goto yy241; default: goto yy49; } yy149: yych = *++context.cursor; switch (yych) { - case 'G': goto yy236; + case 'R': goto yy242; default: goto yy49; } yy150: yych = *++context.cursor; switch (yych) { - case 'M': goto yy237; + case 'N': goto yy243; default: goto yy49; } yy151: yych = *++context.cursor; switch (yych) { - case 'U': goto yy238; + case '1': goto yy244; default: goto yy49; } yy152: yych = *++context.cursor; switch (yych) { - case 'P': goto yy239; + case 'G': goto yy245; default: goto yy49; } yy153: yych = *++context.cursor; switch (yych) { - case 'l': goto yy240; + case 'M': goto yy246; default: goto yy49; } yy154: yych = *++context.cursor; switch (yych) { - case 'I': goto yy241; + case 'U': goto yy247; default: goto yy49; } yy155: yych = *++context.cursor; switch (yych) { - case 'C': goto yy242; - case 'F': goto yy243; + case 'P': goto yy248; default: goto yy49; } yy156: yych = *++context.cursor; switch (yych) { - case 'i': goto yy244; + case 'l': goto yy249; default: goto yy49; } yy157: yych = *++context.cursor; switch (yych) { - case 'd': goto yy245; - case 's': goto yy246; + case 'I': goto yy250; default: goto yy49; } yy158: yych = *++context.cursor; switch (yych) { - case 'T': goto yy247; + case 'C': goto yy251; + case 'F': goto yy252; default: goto yy49; } yy159: yych = *++context.cursor; switch (yych) { - case '"': goto yy159; + case 'i': goto yy253; + default: goto yy49; + } +yy160: + yych = *++context.cursor; + switch (yych) { + case 'd': goto yy254; + case 's': goto yy255; + default: goto yy49; + } +yy161: + yych = *++context.cursor; + switch (yych) { + case 'T': goto yy256; + default: goto yy49; + } +yy162: + yych = *++context.cursor; + switch (yych) { + case '"': goto yy162; case '\'': goto yy78; case '\\': goto yy79; default: goto yy13; } -yy161: +yy164: ++context.cursor; -#line 9151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9176 "/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, context.cursor), context.location); } -#line 10394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy163: +#line 10487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy166: + ++context.cursor; +#line 9178 "/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, context.cursor), context.location); } +#line 10492 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy168: + yych = *++context.cursor; + switch (yych) { + case 'H': goto yy166; + default: goto yy77; + } +yy169: yych = *++context.cursor; switch (yych) { case '\n': - case '\r': goto yy96; - case '-': goto yy248; - default: goto yy88; + case '\r': goto yy98; + case '-': goto yy257; + default: goto yy90; } -yy164: +yy170: ++context.cursor; -#line 9166 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9193 "/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 10407 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy166: +#line 10511 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy172: yych = *++context.cursor; switch (yych) { - case '/': goto yy250; - default: goto yy93; + case '/': goto yy259; + default: goto yy95; } -yy167: +yy173: + yych = *++context.cursor; + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy173; + default: goto yy175; + } +yy175: +#line 9171 "/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 10536 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy176: ++context.cursor; -#line 9165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9192 "/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 10418 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy169: +#line 10541 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy178: yych = *++context.cursor; switch (yych) { - case 'E': goto yy252; - case 'T': goto yy253; + case 'E': goto yy261; + case 'T': goto yy262; default: goto yy49; } -yy170: +yy179: yych = *++context.cursor; switch (yych) { case '-': @@ -10489,13 +10612,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy171; + default: goto yy180; } -yy171: -#line 9047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy180: +#line 9072 "/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 10498 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy172: +#line 10621 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy181: yych = *++context.cursor; switch (yych) { case '-': @@ -10562,31 +10685,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy173; + default: goto yy182; } -yy173: -#line 9048 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy182: +#line 9073 "/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 10571 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy174: +#line 10694 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy183: yych = *++context.cursor; switch (yych) { - case 'L': goto yy254; + case 'L': goto yy263; default: goto yy49; } -yy175: +yy184: yych = *++context.cursor; switch (yych) { - case 'O': goto yy255; + case 'O': goto yy264; default: goto yy49; } -yy176: +yy185: yych = *++context.cursor; switch (yych) { - case 'I': goto yy256; + case 'I': goto yy265; default: goto yy49; } -yy177: +yy186: yych = *++context.cursor; switch (yych) { case '-': @@ -10653,87 +10776,87 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy178; + default: goto yy187; } -yy178: -#line 9052 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy187: +#line 9077 "/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 10662 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy179: +#line 10785 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy188: yych = *++context.cursor; switch (yych) { - case 'S': goto yy257; + case 'S': goto yy266; default: goto yy49; } -yy180: +yy189: yych = *++context.cursor; switch (yych) { - case 'L': goto yy258; + case 'L': goto yy267; default: goto yy49; } -yy181: +yy190: yych = *++context.cursor; switch (yych) { - case 'R': goto yy259; + case 'R': goto yy268; default: goto yy49; } -yy182: +yy191: yych = *++context.cursor; switch (yych) { - case 'I': goto yy260; + case 'I': goto yy269; default: goto yy49; } -yy183: +yy192: yych = *++context.cursor; switch (yych) { - case 'S': goto yy261; + case 'S': goto yy270; default: goto yy49; } -yy184: +yy193: yych = *++context.cursor; switch (yych) { - case 'P': goto yy262; + case 'P': goto yy271; default: goto yy49; } -yy185: +yy194: yych = *++context.cursor; switch (yych) { - case 'S': goto yy263; - case 'T': goto yy264; + case 'S': goto yy272; + case 'T': goto yy273; default: goto yy49; } -yy186: +yy195: yych = *++context.cursor; switch (yych) { - case 'E': goto yy265; + case 'E': goto yy274; default: goto yy49; } -yy187: +yy196: yych = *++context.cursor; switch (yych) { - case 'A': goto yy267; - case 'I': goto yy268; + case 'A': goto yy276; + case 'I': goto yy277; default: goto yy49; } -yy188: +yy197: yych = *++context.cursor; switch (yych) { - case 'A': goto yy269; + case 'A': goto yy278; default: goto yy49; } -yy189: +yy198: yych = *++context.cursor; switch (yych) { - case 'E': goto yy270; + case 'E': goto yy279; default: goto yy49; } -yy190: +yy199: yych = *++context.cursor; switch (yych) { - case 'O': goto yy271; + case 'O': goto yy280; default: goto yy49; } -yy191: +yy200: yych = *++context.cursor; switch (yych) { case '-': @@ -10800,105 +10923,105 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy192; + default: goto yy201; } -yy192: -#line 9071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy201: +#line 9096 "/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 10809 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy193: +#line 10932 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy202: yych = *++context.cursor; switch (yych) { - case 'M': goto yy272; + case 'M': goto yy281; default: goto yy49; } -yy194: +yy203: yych = *++context.cursor; switch (yych) { - case 'E': goto yy273; + case 'E': goto yy282; default: goto yy49; } -yy195: +yy204: yych = *++context.cursor; switch (yych) { - case 'L': goto yy274; - case 'O': goto yy275; + case 'L': goto yy283; + case 'O': goto yy284; default: goto yy49; } -yy196: +yy205: yych = *++context.cursor; switch (yych) { - case 'E': goto yy276; + case 'E': goto yy285; default: goto yy49; } -yy197: +yy206: yych = *++context.cursor; switch (yych) { - case 'S': goto yy277; + case 'S': goto yy286; default: goto yy49; } -yy198: +yy207: yych = *++context.cursor; switch (yych) { - case 'M': goto yy278; + case 'M': goto yy287; default: goto yy49; } -yy199: +yy208: yych = *++context.cursor; switch (yych) { - case 'e': goto yy280; + case 'e': goto yy289; default: goto yy49; } -yy200: +yy209: yych = *++context.cursor; switch (yych) { - case 'p': goto yy281; + case 'p': goto yy290; default: goto yy49; } -yy201: +yy210: yych = *++context.cursor; switch (yych) { - case 'S': goto yy282; + case 'S': goto yy291; default: goto yy49; } -yy202: +yy211: yych = *++context.cursor; switch (yych) { - case 'N': goto yy283; + case 'N': goto yy292; default: goto yy49; } -yy203: +yy212: yych = *++context.cursor; switch (yych) { - case 'L': goto yy284; - case 'O': goto yy285; + case 'L': goto yy293; + case 'O': goto yy294; default: goto yy49; } -yy204: +yy213: yych = *++context.cursor; switch (yych) { - case 'L': goto yy286; + case 'L': goto yy295; default: goto yy49; } -yy205: +yy214: yych = *++context.cursor; switch (yych) { - case 'T': goto yy287; + case 'T': goto yy296; default: goto yy49; } -yy206: +yy215: yych = *++context.cursor; switch (yych) { - case 'E': goto yy288; + case 'E': goto yy297; default: goto yy49; } -yy207: +yy216: yych = *++context.cursor; switch (yych) { - case '6': goto yy289; + case '6': goto yy298; default: goto yy49; } -yy208: +yy217: yych = *++context.cursor; switch (yych) { case '-': @@ -10965,13 +11088,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy209; + default: goto yy218; } -yy209: -#line 9094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy218: +#line 9119 "/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 10974 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy210: +#line 11097 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy219: yych = *++context.cursor; switch (yych) { case '-': @@ -11037,68 +11160,68 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'U': goto yy290; - default: goto yy211; + case 'U': goto yy299; + default: goto yy220; } -yy211: -#line 9095 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy220: +#line 9120 "/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 11047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy212: +#line 11170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy221: yych = *++context.cursor; switch (yych) { - case '-': goto yy291; + case '-': goto yy300; default: goto yy49; } -yy213: +yy222: yych = *++context.cursor; switch (yych) { - case 'L': goto yy292; + case 'L': goto yy301; default: goto yy49; } -yy214: +yy223: yych = *++context.cursor; switch (yych) { - case 'e': goto yy294; + case 'e': goto yy303; default: goto yy49; } -yy215: +yy224: yych = *++context.cursor; switch (yych) { - case 'E': goto yy295; + case 'E': goto yy304; default: goto yy49; } -yy216: +yy225: yych = *++context.cursor; switch (yych) { - case 'E': goto yy296; + case 'E': goto yy305; default: goto yy49; } -yy217: +yy226: yych = *++context.cursor; switch (yych) { - case '_': goto yy297; + case '_': goto yy306; default: goto yy49; } -yy218: +yy227: yych = *++context.cursor; switch (yych) { - case 'I': goto yy298; + case 'I': goto yy307; default: goto yy49; } -yy219: +yy228: yych = *++context.cursor; switch (yych) { - case 'e': goto yy299; + case 'e': goto yy308; default: goto yy49; } -yy220: +yy229: yych = *++context.cursor; switch (yych) { - case 'T': goto yy300; + case 'T': goto yy309; default: goto yy49; } -yy221: +yy230: yych = *++context.cursor; switch (yych) { case '-': @@ -11165,55 +11288,55 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy222; + default: goto yy231; } -yy222: -#line 9107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy231: +#line 9132 "/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 11174 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy223: +#line 11297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy232: yych = *++context.cursor; switch (yych) { - case 'S': goto yy301; + case 'S': goto yy310; default: goto yy49; } -yy224: +yy233: yych = *++context.cursor; switch (yych) { - case 'S': goto yy302; + case 'S': goto yy311; default: goto yy49; } -yy225: +yy234: yych = *++context.cursor; switch (yych) { - case 'V': goto yy303; + case 'V': goto yy312; default: goto yy49; } -yy226: +yy235: yych = *++context.cursor; switch (yych) { - case 'n': goto yy304; + case 'n': goto yy313; default: goto yy49; } -yy227: +yy236: yych = *++context.cursor; switch (yych) { - case 'L': goto yy305; + case 'L': goto yy314; default: goto yy49; } -yy228: +yy237: yych = *++context.cursor; switch (yych) { - case 'A': goto yy307; + case 'A': goto yy316; default: goto yy49; } -yy229: +yy238: yych = *++context.cursor; switch (yych) { - case 'U': goto yy308; + case 'U': goto yy317; default: goto yy49; } -yy230: +yy239: yych = *++context.cursor; switch (yych) { case '-': @@ -11279,203 +11402,203 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'T': goto yy309; - default: goto yy231; + case 'T': goto yy318; + default: goto yy240; } -yy231: -#line 9116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy240: +#line 9141 "/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 11289 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy232: +#line 11412 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy241: yych = *++context.cursor; switch (yych) { - case 'E': goto yy310; + case 'E': goto yy319; default: goto yy49; } -yy233: +yy242: yych = *++context.cursor; switch (yych) { - case 'I': goto yy312; + case 'I': goto yy321; default: goto yy49; } -yy234: +yy243: yych = *++context.cursor; switch (yych) { - case 'T': goto yy313; + case 'T': goto yy322; default: goto yy49; } -yy235: +yy244: yych = *++context.cursor; switch (yych) { - case 'S': goto yy314; + case 'S': goto yy323; default: goto yy49; } -yy236: +yy245: yych = *++context.cursor; switch (yych) { - case 'S': goto yy315; + case 'S': goto yy324; default: goto yy49; } -yy237: +yy246: yych = *++context.cursor; switch (yych) { - case 'E': goto yy317; + case 'E': goto yy326; default: goto yy49; } -yy238: +yy247: yych = *++context.cursor; switch (yych) { - case 'E': goto yy319; + case 'E': goto yy328; default: goto yy49; } -yy239: +yy248: yych = *++context.cursor; switch (yych) { - case 'E': goto yy321; + case 'E': goto yy330; default: goto yy49; } -yy240: +yy249: yych = *++context.cursor; switch (yych) { - case 'e': goto yy322; + case 'e': goto yy331; default: goto yy49; } -yy241: +yy250: yych = *++context.cursor; switch (yych) { - case 'O': goto yy323; - case 'Q': goto yy324; - case 'V': goto yy325; + case 'O': goto yy332; + case 'Q': goto yy333; + case 'V': goto yy334; default: goto yy49; } -yy242: +yy251: yych = *++context.cursor; switch (yych) { - case 'T': goto yy326; + case 'T': goto yy335; default: goto yy49; } -yy243: +yy252: yych = *++context.cursor; switch (yych) { - case '8': goto yy327; + case '8': goto yy336; default: goto yy49; } -yy244: +yy253: yych = *++context.cursor; switch (yych) { - case 'v': goto yy328; + case 'v': goto yy337; default: goto yy49; } -yy245: +yy254: yych = *++context.cursor; switch (yych) { - case 'e': goto yy329; + case 'e': goto yy338; default: goto yy49; } -yy246: +yy255: yych = *++context.cursor; switch (yych) { - case 'i': goto yy330; + case 'i': goto yy339; default: goto yy49; } -yy247: +yy256: yych = *++context.cursor; switch (yych) { - case 'H': goto yy331; + case 'H': goto yy340; default: goto yy49; } -yy248: +yy257: ++context.cursor; -#line 9140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11392 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy250: +#line 11515 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy259: ++context.cursor; -#line 9143 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9168 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11397 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy252: +#line 11520 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy261: yych = *++context.cursor; switch (yych) { - case 'N': goto yy333; + case 'N': goto yy342; default: goto yy49; } -yy253: +yy262: yych = *++context.cursor; switch (yych) { - case 'R': goto yy334; + case 'R': goto yy343; default: goto yy49; } -yy254: +yy263: yych = *++context.cursor; switch (yych) { - case 'I': goto yy335; + case 'I': goto yy344; default: goto yy49; } -yy255: +yy264: yych = *++context.cursor; switch (yych) { - case 'M': goto yy336; + case 'M': goto yy345; default: goto yy49; } -yy256: +yy265: yych = *++context.cursor; switch (yych) { - case 'N': goto yy337; + case 'N': goto yy346; default: goto yy49; } -yy257: +yy266: yych = *++context.cursor; switch (yych) { - case 't': goto yy339; + case 't': goto yy348; default: goto yy49; } -yy258: +yy267: yych = *++context.cursor; switch (yych) { - case 'E': goto yy340; + case 'E': goto yy349; default: goto yy49; } -yy259: +yy268: yych = *++context.cursor; switch (yych) { - case 'A': goto yy341; + case 'A': goto yy350; default: goto yy49; } -yy260: +yy269: yych = *++context.cursor; switch (yych) { - case 'C': goto yy342; + case 'C': goto yy351; default: goto yy49; } -yy261: +yy270: yych = *++context.cursor; switch (yych) { - case 'S': goto yy343; + case 'S': goto yy352; default: goto yy49; } -yy262: +yy271: yych = *++context.cursor; switch (yych) { - case 'O': goto yy345; + case 'O': goto yy354; default: goto yy49; } -yy263: +yy272: yych = *++context.cursor; switch (yych) { - case 'T': goto yy346; + case 'T': goto yy355; default: goto yy49; } -yy264: +yy273: yych = *++context.cursor; switch (yych) { - case 'A': goto yy347; + case 'A': goto yy356; default: goto yy49; } -yy265: +yy274: yych = *++context.cursor; switch (yych) { - case '-': goto yy348; + case '-': goto yy357; case '0': case '1': case '2': @@ -11539,80 +11662,80 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy266; + default: goto yy275; } -yy266: -#line 9063 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy275: +#line 9088 "/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 11548 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy267: +#line 11671 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy276: yych = *++context.cursor; switch (yych) { - case 'U': goto yy349; + case 'U': goto yy358; default: goto yy49; } -yy268: +yy277: yych = *++context.cursor; switch (yych) { - case 'N': goto yy350; + case 'N': goto yy359; default: goto yy49; } -yy269: +yy278: yych = *++context.cursor; switch (yych) { - case 'T': goto yy351; + case 'T': goto yy360; default: goto yy49; } -yy270: +yy279: yych = *++context.cursor; switch (yych) { - case 'D': goto yy352; + case 'D': goto yy361; default: goto yy49; } -yy271: +yy280: yych = *++context.cursor; switch (yych) { - case 'D': goto yy353; + case 'D': goto yy362; default: goto yy49; } -yy272: +yy281: yych = *++context.cursor; switch (yych) { - case 'E': goto yy354; + case 'E': goto yy363; default: goto yy49; } -yy273: +yy282: yych = *++context.cursor; switch (yych) { - case 'P': goto yy355; + case 'P': goto yy364; default: goto yy49; } -yy274: +yy283: yych = *++context.cursor; switch (yych) { - case 'I': goto yy356; + case 'I': goto yy365; default: goto yy49; } -yy275: +yy284: yych = *++context.cursor; switch (yych) { - case 'R': goto yy357; + case 'R': goto yy366; default: goto yy49; } -yy276: +yy285: yych = *++context.cursor; switch (yych) { - case 'N': goto yy358; - case 'R': goto yy359; + case 'N': goto yy367; + case 'R': goto yy368; default: goto yy49; } -yy277: +yy286: yych = *++context.cursor; switch (yych) { - case 'E': goto yy360; + case 'E': goto yy369; default: goto yy49; } -yy278: +yy287: yych = *++context.cursor; switch (yych) { case '-': @@ -11679,87 +11802,87 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy279; + default: goto yy288; } -yy279: -#line 9079 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy288: +#line 9104 "/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 11688 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy280: +#line 11811 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy289: yych = *++context.cursor; switch (yych) { - case 'r': goto yy362; + case 'r': goto yy371; default: goto yy49; } -yy281: +yy290: yych = *++context.cursor; switch (yych) { - case 'h': goto yy363; + case 'h': goto yy372; default: goto yy49; } -yy282: +yy291: yych = *++context.cursor; switch (yych) { - case 't': goto yy364; + case 't': goto yy373; default: goto yy49; } -yy283: +yy292: yych = *++context.cursor; switch (yych) { - case 'T': goto yy365; + case 'T': goto yy374; default: goto yy49; } -yy284: +yy293: yych = *++context.cursor; switch (yych) { - case 'I': goto yy366; + case 'I': goto yy375; default: goto yy49; } -yy285: +yy294: yych = *++context.cursor; switch (yych) { - case 'R': goto yy367; + case 'R': goto yy376; default: goto yy49; } -yy286: +yy295: yych = *++context.cursor; switch (yych) { - case 'U': goto yy368; + case 'U': goto yy377; default: goto yy49; } -yy287: +yy296: yych = *++context.cursor; switch (yych) { - case 'A': goto yy369; - case 'R': goto yy370; + case 'A': goto yy378; + case 'R': goto yy379; default: goto yy49; } -yy288: +yy297: yych = *++context.cursor; switch (yych) { - case 'G': goto yy371; - case 'R': goto yy372; + case 'G': goto yy380; + case 'R': goto yy381; default: goto yy49; } -yy289: +yy298: yych = *++context.cursor; switch (yych) { - case '4': goto yy373; + case '4': goto yy382; default: goto yy49; } -yy290: +yy299: yych = *++context.cursor; switch (yych) { - case 'S': goto yy374; + case 'S': goto yy383; default: goto yy49; } -yy291: +yy300: yych = *++context.cursor; switch (yych) { - case 'A': goto yy375; + case 'A': goto yy384; default: goto yy49; } -yy292: +yy301: yych = *++context.cursor; switch (yych) { case '-': @@ -11826,79 +11949,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy293; + default: goto yy302; } -yy293: -#line 9098 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy302: +#line 9123 "/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 11835 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy294: +#line 11958 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy303: yych = *++context.cursor; switch (yych) { - case 'r': goto yy376; + case 'r': goto yy385; default: goto yy49; } -yy295: +yy304: yych = *++context.cursor; switch (yych) { - case 'C': goto yy377; + case 'C': goto yy386; default: goto yy49; } -yy296: +yy305: yych = *++context.cursor; switch (yych) { - case 'T': goto yy378; + case 'T': goto yy387; default: goto yy49; } -yy297: +yy306: yych = *++context.cursor; switch (yych) { - case 'I': goto yy380; + case 'I': goto yy389; default: goto yy49; } -yy298: +yy307: yych = *++context.cursor; switch (yych) { - case 'O': goto yy381; + case 'O': goto yy390; default: goto yy49; } -yy299: +yy308: yych = *++context.cursor; switch (yych) { - case 'c': goto yy382; + case 'c': goto yy391; default: goto yy49; } -yy300: +yy309: yych = *++context.cursor; switch (yych) { - case 'E': goto yy383; + case 'E': goto yy392; default: goto yy49; } -yy301: +yy310: yych = *++context.cursor; switch (yych) { - case '_': goto yy384; + case '_': goto yy393; default: goto yy49; } -yy302: +yy311: yych = *++context.cursor; switch (yych) { - case 'E': goto yy385; + case 'E': goto yy394; default: goto yy49; } -yy303: +yy312: yych = *++context.cursor; switch (yych) { - case 'A': goto yy386; + case 'A': goto yy395; default: goto yy49; } -yy304: +yy313: yych = *++context.cursor; switch (yych) { - case 't': goto yy387; + case 't': goto yy396; default: goto yy49; } -yy305: +yy314: yych = *++context.cursor; switch (yych) { case '-': @@ -11965,31 +12088,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy306; + default: goto yy315; } -yy306: -#line 9112 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy315: +#line 9137 "/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 11974 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy307: +#line 12097 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy316: yych = *++context.cursor; switch (yych) { - case 'T': goto yy388; + case 'T': goto yy397; default: goto yy49; } -yy308: +yy317: yych = *++context.cursor; switch (yych) { - case 'E': goto yy389; + case 'E': goto yy398; default: goto yy49; } -yy309: +yy318: yych = *++context.cursor; switch (yych) { - case 'I': goto yy390; + case 'I': goto yy399; default: goto yy49; } -yy310: +yy319: yych = *++context.cursor; switch (yych) { case '-': @@ -12056,31 +12179,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy311; + default: goto yy320; } -yy311: -#line 9118 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy320: +#line 9143 "/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 12065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy312: +#line 12188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy321: yych = *++context.cursor; switch (yych) { - case 'N': goto yy391; + case 'N': goto yy400; default: goto yy49; } -yy313: +yy322: yych = *++context.cursor; switch (yych) { - case 'A': goto yy392; + case 'A': goto yy401; default: goto yy49; } -yy314: +yy323: yych = *++context.cursor; switch (yych) { - case 't': goto yy393; + case 't': goto yy402; default: goto yy49; } -yy315: +yy324: yych = *++context.cursor; switch (yych) { case '-': @@ -12147,16 +12270,16 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy316; + default: goto yy325; } -yy316: -#line 9122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy325: +#line 9147 "/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 12156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy317: +#line 12279 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy326: yych = *++context.cursor; switch (yych) { - case '-': goto yy394; + case '-': goto yy403; case '0': case '1': case '2': @@ -12220,13 +12343,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy318; + default: goto yy327; } -yy318: -#line 9124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy327: +#line 9149 "/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 12229 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy319: +#line 12352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy328: yych = *++context.cursor; switch (yych) { case '-': @@ -12293,73 +12416,73 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy320; + default: goto yy329; } -yy320: -#line 9126 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy329: +#line 9151 "/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 12302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy321: +#line 12425 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy330: yych = *++context.cursor; switch (yych) { - case '-': goto yy395; + case '-': goto yy404; default: goto yy49; } -yy322: +yy331: yych = *++context.cursor; switch (yych) { - case 't': goto yy396; + case 't': goto yy405; default: goto yy49; } -yy323: +yy332: yych = *++context.cursor; switch (yych) { - case 'N': goto yy397; + case 'N': goto yy406; default: goto yy49; } -yy324: +yy333: yych = *++context.cursor; switch (yych) { - case 'U': goto yy399; + case 'U': goto yy408; default: goto yy49; } -yy325: +yy334: yych = *++context.cursor; switch (yych) { - case 'E': goto yy400; + case 'E': goto yy409; default: goto yy49; } -yy326: +yy335: yych = *++context.cursor; switch (yych) { - case 'i': goto yy401; + case 'i': goto yy410; default: goto yy49; } -yy327: +yy336: yych = *++context.cursor; switch (yych) { - case 'S': goto yy402; + case 'S': goto yy411; default: goto yy49; } -yy328: +yy337: yych = *++context.cursor; switch (yych) { - case 'e': goto yy403; + case 'e': goto yy412; default: goto yy49; } -yy329: +yy338: yych = *++context.cursor; switch (yych) { - case 'o': goto yy404; + case 'o': goto yy413; default: goto yy49; } -yy330: +yy339: yych = *++context.cursor; switch (yych) { - case 'b': goto yy405; + case 'b': goto yy414; default: goto yy49; } -yy331: +yy340: yych = *++context.cursor; switch (yych) { case '-': @@ -12426,37 +12549,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy332; + default: goto yy341; } -yy332: -#line 9136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy341: +#line 9161 "/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 12435 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy333: +#line 12558 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy342: yych = *++context.cursor; switch (yych) { - case 'T': goto yy406; + case 'T': goto yy415; default: goto yy49; } -yy334: +yy343: yych = *++context.cursor; switch (yych) { - case 'A': goto yy408; + case 'A': goto yy417; default: goto yy49; } -yy335: +yy344: yych = *++context.cursor; switch (yych) { - case 'C': goto yy409; + case 'C': goto yy418; default: goto yy49; } -yy336: +yy345: yych = *++context.cursor; switch (yych) { - case 'A': goto yy410; + case 'A': goto yy419; default: goto yy49; } -yy337: +yy346: yych = *++context.cursor; switch (yych) { case '-': @@ -12523,37 +12646,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy338; + default: goto yy347; } -yy338: -#line 9051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy347: +#line 9076 "/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 12532 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy339: +#line 12655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy348: yych = *++context.cursor; switch (yych) { - case 'r': goto yy411; + case 'r': goto yy420; default: goto yy49; } -yy340: +yy349: yych = *++context.cursor; switch (yych) { - case 'A': goto yy412; + case 'A': goto yy421; default: goto yy49; } -yy341: +yy350: yych = *++context.cursor; switch (yych) { - case 'C': goto yy413; + case 'C': goto yy422; default: goto yy49; } -yy342: +yy351: yych = *++context.cursor; switch (yych) { - case 'E': goto yy414; + case 'E': goto yy423; default: goto yy49; } -yy343: +yy352: yych = *++context.cursor; switch (yych) { case '-': @@ -12620,104 +12743,104 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy344; + default: goto yy353; } -yy344: -#line 9058 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy353: +#line 9083 "/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 12629 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy345: +#line 12752 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy354: yych = *++context.cursor; switch (yych) { - case 'N': goto yy416; + case 'N': goto yy425; default: goto yy49; } -yy346: +yy355: yych = *++context.cursor; switch (yych) { - case 'R': goto yy417; + case 'R': goto yy426; default: goto yy49; } -yy347: +yy356: yych = *++context.cursor; switch (yych) { - case 'I': goto yy418; + case 'I': goto yy427; default: goto yy49; } -yy348: +yy357: yych = *++context.cursor; switch (yych) { - case 'T': goto yy419; + case 'T': goto yy428; default: goto yy49; } -yy349: +yy358: yych = *++context.cursor; switch (yych) { - case 'L': goto yy420; + case 'L': goto yy429; default: goto yy49; } -yy350: +yy359: yych = *++context.cursor; switch (yych) { - case 'I': goto yy421; + case 'I': goto yy430; default: goto yy49; } -yy351: +yy360: yych = *++context.cursor; switch (yych) { - case 'I': goto yy422; + case 'I': goto yy431; default: goto yy49; } -yy352: +yy361: yych = *++context.cursor; switch (yych) { - case 'D': goto yy423; + case 'D': goto yy432; default: goto yy49; } -yy353: +yy362: yych = *++context.cursor; switch (yych) { - case 'E': goto yy424; - case 'I': goto yy425; + case 'E': goto yy433; + case 'I': goto yy434; default: goto yy49; } -yy354: +yy363: yych = *++context.cursor; switch (yych) { - case 'R': goto yy426; + case 'R': goto yy435; default: goto yy49; } -yy355: +yy364: yych = *++context.cursor; switch (yych) { - case 'T': goto yy427; + case 'T': goto yy436; default: goto yy49; } -yy356: +yy365: yych = *++context.cursor; switch (yych) { - case 'C': goto yy429; + case 'C': goto yy438; default: goto yy49; } -yy357: +yy366: yych = *++context.cursor; switch (yych) { - case 'T': goto yy430; + case 'T': goto yy439; default: goto yy49; } -yy358: +yy367: yych = *++context.cursor; switch (yych) { - case 'S': goto yy431; + case 'S': goto yy440; default: goto yy49; } -yy359: +yy368: yych = *++context.cursor; switch (yych) { - case 'N': goto yy432; + case 'N': goto yy441; default: goto yy49; } -yy360: +yy369: yych = *++context.cursor; switch (yych) { case '-': @@ -12784,110 +12907,110 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy361; + default: goto yy370; } -yy361: -#line 9078 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy370: +#line 9103 "/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 12793 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy362: +#line 12916 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy371: yych = *++context.cursor; switch (yych) { - case 'a': goto yy433; + case 'a': goto yy442; default: goto yy49; } -yy363: +yy372: yych = *++context.cursor; switch (yych) { - case 'i': goto yy434; + case 'i': goto yy443; default: goto yy49; } -yy364: +yy373: yych = *++context.cursor; switch (yych) { - case 'r': goto yy435; + case 'r': goto yy444; default: goto yy49; } -yy365: +yy374: yych = *++context.cursor; switch (yych) { - case 'I': goto yy436; + case 'I': goto yy445; default: goto yy49; } -yy366: +yy375: yych = *++context.cursor; switch (yych) { - case 'C': goto yy437; - case 'E': goto yy438; + case 'C': goto yy446; + case 'E': goto yy447; default: goto yy49; } -yy367: +yy376: yych = *++context.cursor; switch (yych) { - case 'T': goto yy439; + case 'T': goto yy448; default: goto yy49; } -yy368: +yy377: yych = *++context.cursor; switch (yych) { - case 'D': goto yy440; + case 'D': goto yy449; default: goto yy49; } -yy369: +yy378: yych = *++context.cursor; switch (yych) { - case 'N': goto yy441; + case 'N': goto yy450; default: goto yy49; } -yy370: +yy379: yych = *++context.cursor; switch (yych) { - case 'U': goto yy442; + case 'U': goto yy451; default: goto yy49; } -yy371: +yy380: yych = *++context.cursor; switch (yych) { - case 'E': goto yy443; + case 'E': goto yy452; default: goto yy49; } -yy372: +yy381: yych = *++context.cursor; switch (yych) { - case 'S': goto yy444; + case 'S': goto yy453; default: goto yy49; } -yy373: +yy382: yych = *++context.cursor; switch (yych) { - case '6': goto yy445; + case '6': goto yy454; default: goto yy49; } -yy374: +yy383: yych = *++context.cursor; switch (yych) { - case '-': goto yy446; + case '-': goto yy455; default: goto yy49; } -yy375: +yy384: yych = *++context.cursor; switch (yych) { - case '-': goto yy447; + case '-': goto yy456; default: goto yy49; } -yy376: +yy385: yych = *++context.cursor; switch (yych) { - case 'i': goto yy448; + case 'i': goto yy457; default: goto yy49; } -yy377: +yy386: yych = *++context.cursor; switch (yych) { - case 'T': goto yy449; + case 'T': goto yy458; default: goto yy49; } -yy378: +yy387: yych = *++context.cursor; switch (yych) { case '-': @@ -12954,115 +13077,115 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy379; + default: goto yy388; } -yy379: -#line 9102 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy388: +#line 9127 "/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 12963 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy380: +#line 13086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy389: yych = *++context.cursor; switch (yych) { - case 'R': goto yy451; + case 'R': goto yy460; default: goto yy49; } -yy381: +yy390: yych = *++context.cursor; switch (yych) { - case 'N': goto yy452; + case 'N': goto yy461; default: goto yy49; } -yy382: +yy391: yych = *++context.cursor; switch (yych) { - case 't': goto yy453; + case 't': goto yy462; default: goto yy49; } -yy383: +yy392: yych = *++context.cursor; switch (yych) { - case 'R': goto yy454; + case 'R': goto yy463; default: goto yy49; } -yy384: +yy393: yych = *++context.cursor; switch (yych) { - case 'I': goto yy455; + case 'I': goto yy464; default: goto yy49; } -yy385: +yy394: yych = *++context.cursor; switch (yych) { - case 'N': goto yy456; + case 'N': goto yy465; default: goto yy49; } -yy386: +yy395: yych = *++context.cursor; switch (yych) { - case 'T': goto yy457; + case 'T': goto yy466; default: goto yy49; } -yy387: +yy396: yych = *++context.cursor; switch (yych) { - case 'a': goto yy458; + case 'a': goto yy467; default: goto yy49; } -yy388: +yy397: yych = *++context.cursor; switch (yych) { - case 'I': goto yy459; + case 'I': goto yy468; default: goto yy49; } -yy389: +yy398: yych = *++context.cursor; switch (yych) { - case 'N': goto yy460; + case 'N': goto yy469; default: goto yy49; } -yy390: +yy399: yych = *++context.cursor; switch (yych) { - case 'N': goto yy461; + case 'N': goto yy470; default: goto yy49; } -yy391: +yy400: yych = *++context.cursor; switch (yych) { - case 'G': goto yy462; + case 'G': goto yy471; default: goto yy49; } -yy392: +yy401: yych = *++context.cursor; switch (yych) { - case 'X': goto yy464; + case 'X': goto yy473; default: goto yy49; } -yy393: +yy402: yych = *++context.cursor; switch (yych) { - case 'r': goto yy466; + case 'r': goto yy475; default: goto yy49; } -yy394: +yy403: yych = *++context.cursor; switch (yych) { - case 'O': goto yy467; + case 'O': goto yy476; default: goto yy49; } -yy395: +yy404: yych = *++context.cursor; switch (yych) { - case 'I': goto yy468; + case 'I': goto yy477; default: goto yy49; } -yy396: +yy405: yych = *++context.cursor; switch (yych) { - case 'e': goto yy469; + case 'e': goto yy478; default: goto yy49; } -yy397: +yy406: yych = *++context.cursor; switch (yych) { case '-': @@ -13129,55 +13252,55 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy398; + default: goto yy407; } -yy398: -#line 9128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy407: +#line 9153 "/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 13138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy399: +#line 13261 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy408: yych = *++context.cursor; switch (yych) { - case 'E': goto yy470; + case 'E': goto yy479; default: goto yy49; } -yy400: +yy409: yych = *++context.cursor; switch (yych) { - case 'R': goto yy472; + case 'R': goto yy481; default: goto yy49; } -yy401: +yy410: yych = *++context.cursor; switch (yych) { - case 'm': goto yy473; + case 'm': goto yy482; default: goto yy49; } -yy402: +yy411: yych = *++context.cursor; switch (yych) { - case 't': goto yy474; + case 't': goto yy483; default: goto yy49; } -yy403: +yy412: yych = *++context.cursor; switch (yych) { - case 'r': goto yy475; + case 'r': goto yy484; default: goto yy49; } -yy404: +yy413: yych = *++context.cursor; switch (yych) { - case 't': goto yy476; + case 't': goto yy485; default: goto yy49; } -yy405: +yy414: yych = *++context.cursor; switch (yych) { - case 'l': goto yy477; + case 'l': goto yy486; default: goto yy49; } -yy406: +yy415: yych = *++context.cursor; switch (yych) { case '-': @@ -13244,49 +13367,49 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy407; + default: goto yy416; } -yy407: -#line 9045 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy416: +#line 9070 "/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 13253 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy408: +#line 13376 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy417: yych = *++context.cursor; switch (yych) { - case 'C': goto yy478; + case 'C': goto yy487; default: goto yy49; } -yy409: +yy418: yych = *++context.cursor; switch (yych) { - case 'A': goto yy479; + case 'A': goto yy488; default: goto yy49; } -yy410: +yy419: yych = *++context.cursor; switch (yych) { - case 'T': goto yy480; + case 'T': goto yy489; default: goto yy49; } -yy411: +yy420: yych = *++context.cursor; switch (yych) { - case 'i': goto yy481; + case 'i': goto yy490; default: goto yy49; } -yy412: +yy421: yych = *++context.cursor; switch (yych) { - case 'N': goto yy482; + case 'N': goto yy491; default: goto yy49; } -yy413: +yy422: yych = *++context.cursor; switch (yych) { - case 'T': goto yy484; + case 'T': goto yy493; default: goto yy49; } -yy414: +yy423: yych = *++context.cursor; switch (yych) { case '-': @@ -13353,79 +13476,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy415; + default: goto yy424; } -yy415: -#line 9057 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy424: +#line 9082 "/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 13362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy416: +#line 13485 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy425: yych = *++context.cursor; switch (yych) { - case 'E': goto yy485; + case 'E': goto yy494; default: goto yy49; } -yy417: +yy426: yych = *++context.cursor; switch (yych) { - case 'A': goto yy486; + case 'A': goto yy495; default: goto yy49; } -yy418: +yy427: yych = *++context.cursor; switch (yych) { - case 'N': goto yy487; + case 'N': goto yy496; default: goto yy49; } -yy419: +yy428: yych = *++context.cursor; switch (yych) { - case 'I': goto yy488; + case 'I': goto yy497; default: goto yy49; } -yy420: +yy429: yych = *++context.cursor; switch (yych) { - case 'T': goto yy489; + case 'T': goto yy498; default: goto yy49; } -yy421: +yy430: yych = *++context.cursor; switch (yych) { - case 'T': goto yy491; + case 'T': goto yy500; default: goto yy49; } -yy422: +yy431: yych = *++context.cursor; switch (yych) { - case 'O': goto yy492; + case 'O': goto yy501; default: goto yy49; } -yy423: +yy432: yych = *++context.cursor; switch (yych) { - case 'E': goto yy493; + case 'E': goto yy502; default: goto yy49; } -yy424: +yy433: yych = *++context.cursor; switch (yych) { - case 'D': goto yy494; + case 'D': goto yy503; default: goto yy49; } -yy425: +yy434: yych = *++context.cursor; switch (yych) { - case 'N': goto yy496; + case 'N': goto yy505; default: goto yy49; } -yy426: +yy435: yych = *++context.cursor; switch (yych) { - case 'A': goto yy497; + case 'A': goto yy506; default: goto yy49; } -yy427: +yy436: yych = *++context.cursor; switch (yych) { case '-': @@ -13492,133 +13615,133 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy428; + default: goto yy437; } -yy428: -#line 9073 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy437: +#line 9098 "/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 13501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy429: +#line 13624 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy438: yych = *++context.cursor; switch (yych) { - case 'I': goto yy498; + case 'I': goto yy507; default: goto yy49; } -yy430: +yy439: yych = *++context.cursor; switch (yych) { - case 'S': goto yy499; + case 'S': goto yy508; default: goto yy49; } -yy431: +yy440: yych = *++context.cursor; switch (yych) { - case 'I': goto yy501; + case 'I': goto yy510; default: goto yy49; } -yy432: +yy441: yych = *++context.cursor; switch (yych) { - case 'A': goto yy502; + case 'A': goto yy511; default: goto yy49; } -yy433: +yy442: yych = *++context.cursor; switch (yych) { - case 'l': goto yy503; + case 'l': goto yy512; default: goto yy49; } -yy434: +yy443: yych = *++context.cursor; switch (yych) { - case 'c': goto yy504; + case 'c': goto yy513; default: goto yy49; } -yy435: +yy444: yych = *++context.cursor; switch (yych) { - case 'i': goto yy505; + case 'i': goto yy514; default: goto yy49; } -yy436: +yy445: yych = *++context.cursor; switch (yych) { - case 'F': goto yy506; + case 'F': goto yy515; default: goto yy49; } -yy437: +yy446: yych = *++context.cursor; switch (yych) { - case 'I': goto yy507; + case 'I': goto yy516; default: goto yy49; } -yy438: +yy447: yych = *++context.cursor; switch (yych) { - case 'D': goto yy508; + case 'D': goto yy517; default: goto yy49; } -yy439: +yy448: yych = *++context.cursor; switch (yych) { - case 'S': goto yy510; + case 'S': goto yy519; default: goto yy49; } -yy440: +yy449: yych = *++context.cursor; switch (yych) { - case 'E': goto yy512; + case 'E': goto yy521; default: goto yy49; } -yy441: +yy450: yych = *++context.cursor; switch (yych) { - case 'C': goto yy513; + case 'C': goto yy522; default: goto yy49; } -yy442: +yy451: yych = *++context.cursor; switch (yych) { - case 'C': goto yy514; + case 'C': goto yy523; default: goto yy49; } -yy443: +yy452: yych = *++context.cursor; switch (yych) { - case 'R': goto yy515; + case 'R': goto yy524; default: goto yy49; } -yy444: +yy453: yych = *++context.cursor; switch (yych) { - case 'E': goto yy517; + case 'E': goto yy526; default: goto yy49; } -yy445: +yy454: yych = *++context.cursor; switch (yych) { - case 'S': goto yy518; + case 'S': goto yy527; default: goto yy49; } -yy446: +yy455: yych = *++context.cursor; switch (yych) { - case 'I': goto yy519; + case 'I': goto yy528; default: goto yy49; } -yy447: +yy456: yych = *++context.cursor; switch (yych) { - case 'N': goto yy520; + case 'N': goto yy529; default: goto yy49; } -yy448: +yy457: yych = *++context.cursor; switch (yych) { - case 'c': goto yy521; + case 'c': goto yy530; default: goto yy49; } -yy449: +yy458: yych = *++context.cursor; switch (yych) { case '-': @@ -13685,79 +13808,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy450; + default: goto yy459; } -yy450: -#line 9100 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy459: +#line 9125 "/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 13694 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy451: +#line 13817 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy460: yych = *++context.cursor; switch (yych) { - case 'I': goto yy522; + case 'I': goto yy531; default: goto yy49; } -yy452: +yy461: yych = *++context.cursor; switch (yych) { - case 'A': goto yy524; + case 'A': goto yy533; default: goto yy49; } -yy453: +yy462: yych = *++context.cursor; switch (yych) { - case 'D': goto yy525; + case 'D': goto yy534; default: goto yy49; } -yy454: +yy463: yych = *++context.cursor; switch (yych) { - case 'N': goto yy526; + case 'N': goto yy535; default: goto yy49; } -yy455: +yy464: yych = *++context.cursor; switch (yych) { - case 'N': goto yy528; + case 'N': goto yy537; default: goto yy49; } -yy456: +yy465: yych = *++context.cursor; switch (yych) { - case 'T': goto yy529; + case 'T': goto yy538; default: goto yy49; } -yy457: +yy466: yych = *++context.cursor; switch (yych) { - case 'E': goto yy531; + case 'E': goto yy540; default: goto yy49; } -yy458: +yy467: yych = *++context.cursor; switch (yych) { - case 'b': goto yy533; + case 'b': goto yy542; default: goto yy49; } -yy459: +yy468: yych = *++context.cursor; switch (yych) { - case 'V': goto yy534; + case 'V': goto yy543; default: goto yy49; } -yy460: +yy469: yych = *++context.cursor; switch (yych) { - case 'C': goto yy535; + case 'C': goto yy544; default: goto yy49; } -yy461: +yy470: yych = *++context.cursor; switch (yych) { - case 'G': goto yy536; + case 'G': goto yy545; default: goto yy49; } -yy462: +yy471: yych = *++context.cursor; switch (yych) { case '-': @@ -13824,13 +13947,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy463; + default: goto yy472; } -yy463: -#line 9119 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy472: +#line 9144 "/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 13833 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy464: +#line 13956 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy473: yych = *++context.cursor; switch (yych) { case '-': @@ -13897,37 +14020,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy465; + default: goto yy474; } -yy465: -#line 9120 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy474: +#line 9145 "/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 13906 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy466: +#line 14029 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy475: yych = *++context.cursor; switch (yych) { - case 'i': goto yy537; + case 'i': goto yy546; default: goto yy49; } -yy467: +yy476: yych = *++context.cursor; switch (yych) { - case 'F': goto yy538; + case 'F': goto yy547; default: goto yy49; } -yy468: +yy477: yych = *++context.cursor; switch (yych) { - case 'D': goto yy539; + case 'D': goto yy548; default: goto yy49; } -yy469: +yy478: yych = *++context.cursor; switch (yych) { - case 'x': goto yy540; + case 'x': goto yy549; default: goto yy49; } -yy470: +yy479: yych = *++context.cursor; switch (yych) { case '-': @@ -13994,73 +14117,73 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy471; + default: goto yy480; } -yy471: -#line 9129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy480: +#line 9154 "/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 14003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy472: +#line 14126 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy481: yych = *++context.cursor; switch (yych) { - case 'S': goto yy541; + case 'S': goto yy550; default: goto yy49; } -yy473: +yy482: yych = *++context.cursor; switch (yych) { - case 'e': goto yy542; + case 'e': goto yy551; default: goto yy49; } -yy474: +yy483: yych = *++context.cursor; switch (yych) { - case 'r': goto yy544; + case 'r': goto yy553; default: goto yy49; } -yy475: +yy484: yych = *++context.cursor; switch (yych) { - case 's': goto yy545; + case 's': goto yy554; default: goto yy49; } -yy476: +yy485: yych = *++context.cursor; switch (yych) { - case 'e': goto yy546; + case 'e': goto yy555; default: goto yy49; } -yy477: +yy486: yych = *++context.cursor; switch (yych) { - case 'e': goto yy547; + case 'e': goto yy556; default: goto yy49; } -yy478: +yy487: yych = *++context.cursor; switch (yych) { - case 'T': goto yy548; + case 'T': goto yy557; default: goto yy49; } -yy479: +yy488: yych = *++context.cursor; switch (yych) { - case 'T': goto yy549; + case 'T': goto yy558; default: goto yy49; } -yy480: +yy489: yych = *++context.cursor; switch (yych) { - case 'I': goto yy550; + case 'I': goto yy559; default: goto yy49; } -yy481: +yy490: yych = *++context.cursor; switch (yych) { - case 'n': goto yy551; + case 'n': goto yy560; default: goto yy49; } -yy482: +yy491: yych = *++context.cursor; switch (yych) { case '-': @@ -14127,43 +14250,43 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy483; + default: goto yy492; } -yy483: -#line 9054 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy492: +#line 9079 "/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 14136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy484: +#line 14259 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy493: yych = *++context.cursor; switch (yych) { - case 'E': goto yy552; + case 'E': goto yy561; default: goto yy49; } -yy485: +yy494: yych = *++context.cursor; switch (yych) { - case 'N': goto yy553; + case 'N': goto yy562; default: goto yy49; } -yy486: +yy495: yych = *++context.cursor; switch (yych) { - case 'I': goto yy554; + case 'I': goto yy563; default: goto yy49; } -yy487: +yy496: yych = *++context.cursor; switch (yych) { - case 'I': goto yy555; + case 'I': goto yy564; default: goto yy49; } -yy488: +yy497: yych = *++context.cursor; switch (yych) { - case 'M': goto yy556; + case 'M': goto yy565; default: goto yy49; } -yy489: +yy498: yych = *++context.cursor; switch (yych) { case '-': @@ -14230,31 +14353,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy490; + default: goto yy499; } -yy490: -#line 9065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy499: +#line 9090 "/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 14239 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy491: +#line 14362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy500: yych = *++context.cursor; switch (yych) { - case 'I': goto yy557; + case 'I': goto yy566; default: goto yy49; } -yy492: +yy501: yych = *++context.cursor; switch (yych) { - case 'N': goto yy558; + case 'N': goto yy567; default: goto yy49; } -yy493: +yy502: yych = *++context.cursor; switch (yych) { - case 'D': goto yy560; + case 'D': goto yy569; default: goto yy49; } -yy494: +yy503: yych = *++context.cursor; switch (yych) { case '-': @@ -14321,31 +14444,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy495; + default: goto yy504; } -yy495: -#line 9069 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy504: +#line 9094 "/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 14330 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy496: +#line 14453 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy505: yych = *++context.cursor; switch (yych) { - case 'G': goto yy562; + case 'G': goto yy571; default: goto yy49; } -yy497: +yy506: yych = *++context.cursor; switch (yych) { - case 'T': goto yy563; + case 'T': goto yy572; default: goto yy49; } -yy498: +yy507: yych = *++context.cursor; switch (yych) { - case 'T': goto yy564; + case 'T': goto yy573; default: goto yy49; } -yy499: +yy508: yych = *++context.cursor; switch (yych) { case '-': @@ -14412,56 +14535,56 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy500; + default: goto yy509; } -yy500: -#line 9075 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy509: +#line 9100 "/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 14421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy501: +#line 14544 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy510: yych = *++context.cursor; switch (yych) { - case 'B': goto yy566; + case 'B': goto yy575; default: goto yy49; } -yy502: +yy511: yych = *++context.cursor; switch (yych) { - case 'L': goto yy567; + case 'L': goto yy576; default: goto yy49; } -yy503: +yy512: yych = *++context.cursor; switch (yych) { - case 'S': goto yy569; - case 'i': goto yy570; + case 'S': goto yy578; + case 'i': goto yy579; default: goto yy49; } -yy504: +yy513: yych = *++context.cursor; switch (yych) { - case 'S': goto yy571; + case 'S': goto yy580; default: goto yy49; } -yy505: +yy514: yych = *++context.cursor; switch (yych) { - case 'n': goto yy572; + case 'n': goto yy581; default: goto yy49; } -yy506: +yy515: yych = *++context.cursor; switch (yych) { - case 'I': goto yy573; + case 'I': goto yy582; default: goto yy49; } -yy507: +yy516: yych = *++context.cursor; switch (yych) { - case 'T': goto yy574; + case 'T': goto yy583; default: goto yy49; } -yy508: +yy517: yych = *++context.cursor; switch (yych) { case '-': @@ -14528,13 +14651,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy509; + default: goto yy518; } -yy509: -#line 9086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy518: +#line 9111 "/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 14537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy510: +#line 14660 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy519: yych = *++context.cursor; switch (yych) { case '-': @@ -14601,31 +14724,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy511; + default: goto yy520; } -yy511: -#line 9087 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy520: +#line 9112 "/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 14610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy512: +#line 14733 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy521: yych = *++context.cursor; switch (yych) { - case 'S': goto yy576; + case 'S': goto yy585; default: goto yy49; } -yy513: +yy522: yych = *++context.cursor; switch (yych) { - case 'E': goto yy578; + case 'E': goto yy587; default: goto yy49; } -yy514: +yy523: yych = *++context.cursor; switch (yych) { - case 'T': goto yy580; + case 'T': goto yy589; default: goto yy49; } -yy515: +yy524: yych = *++context.cursor; switch (yych) { case '-': @@ -14692,43 +14815,43 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy516; + default: goto yy525; } -yy516: -#line 9091 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy525: +#line 9116 "/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 14701 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy517: +#line 14824 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy526: yych = *++context.cursor; switch (yych) { - case 'C': goto yy581; + case 'C': goto yy590; default: goto yy49; } -yy518: +yy527: yych = *++context.cursor; switch (yych) { - case 't': goto yy582; + case 't': goto yy591; default: goto yy49; } -yy519: +yy528: yych = *++context.cursor; switch (yych) { - case 'N': goto yy583; + case 'N': goto yy592; default: goto yy49; } -yy520: +yy529: yych = *++context.cursor; switch (yych) { - case 'U': goto yy584; + case 'U': goto yy593; default: goto yy49; } -yy521: +yy530: yych = *++context.cursor; switch (yych) { - case 'S': goto yy585; + case 'S': goto yy594; default: goto yy49; } -yy522: +yy531: yych = *++context.cursor; switch (yych) { case '-': @@ -14795,25 +14918,25 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy523; + default: goto yy532; } -yy523: -#line 9104 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy532: +#line 9129 "/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 14804 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy524: +#line 14927 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy533: yych = *++context.cursor; switch (yych) { - case 'L': goto yy586; + case 'L': goto yy595; default: goto yy49; } -yy525: +yy534: yych = *++context.cursor; switch (yych) { - case 'e': goto yy588; + case 'e': goto yy597; default: goto yy49; } -yy526: +yy535: yych = *++context.cursor; switch (yych) { case '-': @@ -14880,19 +15003,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy527; + default: goto yy536; } -yy527: -#line 9106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy536: +#line 9131 "/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 14889 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy528: +#line 15012 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy537: yych = *++context.cursor; switch (yych) { - case 'F': goto yy589; + case 'F': goto yy598; default: goto yy49; } -yy529: +yy538: yych = *++context.cursor; switch (yych) { case '-': @@ -14959,13 +15082,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy530; + default: goto yy539; } -yy530: -#line 9109 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy539: +#line 9134 "/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 14968 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy531: +#line 15091 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy540: yych = *++context.cursor; switch (yych) { case '-': @@ -15032,67 +15155,67 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy532; + default: goto yy541; } -yy532: -#line 9111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy541: +#line 9136 "/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 15041 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy533: +#line 15164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy542: yych = *++context.cursor; switch (yych) { - case 'l': goto yy590; + case 'l': goto yy599; default: goto yy49; } -yy534: +yy543: yych = *++context.cursor; switch (yych) { - case 'E': goto yy591; + case 'E': goto yy600; default: goto yy49; } -yy535: +yy544: yych = *++context.cursor; switch (yych) { - case 'E': goto yy592; + case 'E': goto yy601; default: goto yy49; } -yy536: +yy545: yych = *++context.cursor; switch (yych) { - case 'S': goto yy594; + case 'S': goto yy603; default: goto yy49; } -yy537: +yy546: yych = *++context.cursor; switch (yych) { - case 'n': goto yy596; + case 'n': goto yy605; default: goto yy49; } -yy538: +yy547: yych = *++context.cursor; switch (yych) { - case '-': goto yy597; + case '-': goto yy606; default: goto yy49; } -yy539: +yy548: yych = *++context.cursor; switch (yych) { - case 'E': goto yy598; + case 'E': goto yy607; default: goto yy49; } -yy540: +yy549: yych = *++context.cursor; switch (yych) { - case 'S': goto yy599; + case 'S': goto yy608; default: goto yy49; } -yy541: +yy550: yych = *++context.cursor; switch (yych) { - case 'A': goto yy600; + case 'A': goto yy609; default: goto yy49; } -yy542: +yy551: yych = *++context.cursor; switch (yych) { case '-': @@ -15159,97 +15282,97 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy543; + default: goto yy552; } -yy543: -#line 9132 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy552: +#line 9157 "/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 15168 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy544: +#line 15291 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy553: yych = *++context.cursor; switch (yych) { - case 'i': goto yy601; + case 'i': goto yy610; default: goto yy49; } -yy545: +yy554: yych = *++context.cursor; switch (yych) { - case 'a': goto yy602; + case 'a': goto yy611; default: goto yy49; } -yy546: +yy555: yych = *++context.cursor; switch (yych) { - case 'x': goto yy603; + case 'x': goto yy612; default: goto yy49; } -yy547: +yy556: yych = *++context.cursor; switch (yych) { - case 'S': goto yy604; + case 'S': goto yy613; default: goto yy49; } -yy548: +yy557: yych = *++context.cursor; switch (yych) { - case '-': goto yy605; + case '-': goto yy614; default: goto yy49; } -yy549: +yy558: yych = *++context.cursor; switch (yych) { - case 'I': goto yy606; + case 'I': goto yy615; default: goto yy49; } -yy550: +yy559: yych = *++context.cursor; switch (yych) { - case 'C': goto yy607; + case 'C': goto yy616; default: goto yy49; } -yy551: +yy560: yych = *++context.cursor; switch (yych) { - case 'g': goto yy609; + case 'g': goto yy618; default: goto yy49; } -yy552: +yy561: yych = *++context.cursor; switch (yych) { - case 'R': goto yy611; + case 'R': goto yy620; default: goto yy49; } -yy553: +yy562: yych = *++context.cursor; switch (yych) { - case 'T': goto yy613; + case 'T': goto yy622; default: goto yy49; } -yy554: +yy563: yych = *++context.cursor; switch (yych) { - case 'N': goto yy615; + case 'N': goto yy624; default: goto yy49; } -yy555: +yy564: yych = *++context.cursor; switch (yych) { - case 'N': goto yy616; + case 'N': goto yy625; default: goto yy49; } -yy556: +yy565: yych = *++context.cursor; switch (yych) { - case 'E': goto yy617; + case 'E': goto yy626; default: goto yy49; } -yy557: +yy566: yych = *++context.cursor; switch (yych) { - case 'O': goto yy619; + case 'O': goto yy628; default: goto yy49; } -yy558: +yy567: yych = *++context.cursor; switch (yych) { case '-': @@ -15316,13 +15439,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy559; + default: goto yy568; } -yy559: -#line 9067 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy568: +#line 9092 "/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 15325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy560: +#line 15448 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy569: yych = *++context.cursor; switch (yych) { case '-': @@ -15389,25 +15512,25 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy561; + default: goto yy570; } -yy561: -#line 9068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy570: +#line 9093 "/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 15398 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy562: +#line 15521 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy571: yych = *++context.cursor; switch (yych) { - case '_': goto yy620; + case '_': goto yy629; default: goto yy49; } -yy563: +yy572: yych = *++context.cursor; switch (yych) { - case 'E': goto yy621; + case 'E': goto yy630; default: goto yy49; } -yy564: +yy573: yych = *++context.cursor; switch (yych) { case '-': @@ -15474,19 +15597,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy565; + default: goto yy574; } -yy565: -#line 9074 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy574: +#line 9099 "/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 15483 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy566: +#line 15606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy575: yych = *++context.cursor; switch (yych) { - case 'I': goto yy622; + case 'I': goto yy631; default: goto yy49; } -yy567: +yy576: yych = *++context.cursor; switch (yych) { case '-': @@ -15553,43 +15676,43 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy568; + default: goto yy577; } -yy568: -#line 9077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy577: +#line 9102 "/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 15562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy569: +#line 15685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy578: yych = *++context.cursor; switch (yych) { - case 't': goto yy623; + case 't': goto yy632; default: goto yy49; } -yy570: +yy579: yych = *++context.cursor; switch (yych) { - case 'z': goto yy624; + case 'z': goto yy633; default: goto yy49; } -yy571: +yy580: yych = *++context.cursor; switch (yych) { - case 't': goto yy625; + case 't': goto yy634; default: goto yy49; } -yy572: +yy581: yych = *++context.cursor; switch (yych) { - case 'g': goto yy626; + case 'g': goto yy635; default: goto yy49; } -yy573: +yy582: yych = *++context.cursor; switch (yych) { - case 'E': goto yy628; + case 'E': goto yy637; default: goto yy49; } -yy574: +yy583: yych = *++context.cursor; switch (yych) { case '-': @@ -15656,13 +15779,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy575; + default: goto yy584; } -yy575: -#line 9085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy584: +#line 9110 "/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 15665 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy576: +#line 15788 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy585: yych = *++context.cursor; switch (yych) { case '-': @@ -15729,13 +15852,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy577; + default: goto yy586; } -yy577: -#line 9088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy586: +#line 9113 "/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 15738 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy578: +#line 15861 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy587: yych = *++context.cursor; switch (yych) { case '-': @@ -15802,49 +15925,49 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy579; + default: goto yy588; } -yy579: -#line 9089 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy588: +#line 9114 "/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 15811 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy580: +#line 15934 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy589: yych = *++context.cursor; switch (yych) { - case 'I': goto yy629; + case 'I': goto yy638; default: goto yy49; } -yy581: +yy590: yych = *++context.cursor; switch (yych) { - case 'T': goto yy630; + case 'T': goto yy639; default: goto yy49; } -yy582: +yy591: yych = *++context.cursor; switch (yych) { - case 'r': goto yy631; + case 'r': goto yy640; default: goto yy49; } -yy583: +yy592: yych = *++context.cursor; switch (yych) { - case 'F': goto yy632; + case 'F': goto yy641; default: goto yy49; } -yy584: +yy593: yych = *++context.cursor; switch (yych) { - case 'M': goto yy633; + case 'M': goto yy642; default: goto yy49; } -yy585: +yy594: yych = *++context.cursor; switch (yych) { - case 't': goto yy634; + case 't': goto yy643; default: goto yy49; } -yy586: +yy595: yych = *++context.cursor; switch (yych) { case '-': @@ -15911,37 +16034,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy587; + default: goto yy596; } -yy587: -#line 9105 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy596: +#line 9130 "/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 15920 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy588: +#line 16043 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy597: yych = *++context.cursor; switch (yych) { - case 's': goto yy635; + case 's': goto yy644; default: goto yy49; } -yy589: +yy598: yych = *++context.cursor; switch (yych) { - case 'I': goto yy636; + case 'I': goto yy645; default: goto yy49; } -yy590: +yy599: yych = *++context.cursor; switch (yych) { - case 'e': goto yy637; + case 'e': goto yy646; default: goto yy49; } -yy591: +yy600: yych = *++context.cursor; switch (yych) { - case '-': goto yy638; + case '-': goto yy647; default: goto yy49; } -yy592: +yy601: yych = *++context.cursor; switch (yych) { case '-': @@ -16008,13 +16131,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy593; + default: goto yy602; } -yy593: -#line 9115 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy602: +#line 9140 "/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 16017 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy594: +#line 16140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy603: yych = *++context.cursor; switch (yych) { case '-': @@ -16081,79 +16204,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy595; + default: goto yy604; } -yy595: -#line 9117 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy604: +#line 9142 "/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 16090 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy596: +#line 16213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy605: yych = *++context.cursor; switch (yych) { - case 'g': goto yy639; + case 'g': goto yy648; default: goto yy49; } -yy597: +yy606: yych = *++context.cursor; switch (yych) { - case 'D': goto yy641; + case 'D': goto yy650; default: goto yy49; } -yy598: +yy607: yych = *++context.cursor; switch (yych) { - case 'N': goto yy642; + case 'N': goto yy651; default: goto yy49; } -yy599: +yy608: yych = *++context.cursor; switch (yych) { - case 't': goto yy643; + case 't': goto yy652; default: goto yy49; } -yy600: +yy609: yych = *++context.cursor; switch (yych) { - case 'L': goto yy644; + case 'L': goto yy653; default: goto yy49; } -yy601: +yy610: yych = *++context.cursor; switch (yych) { - case 'n': goto yy646; + case 'n': goto yy655; default: goto yy49; } -yy602: +yy611: yych = *++context.cursor; switch (yych) { - case 'l': goto yy647; + case 'l': goto yy656; default: goto yy49; } -yy603: +yy612: yych = *++context.cursor; switch (yych) { - case 'S': goto yy648; + case 'S': goto yy657; default: goto yy49; } -yy604: +yy613: yych = *++context.cursor; switch (yych) { - case 't': goto yy649; + case 't': goto yy658; default: goto yy49; } -yy605: +yy614: yych = *++context.cursor; switch (yych) { - case 'S': goto yy650; + case 'S': goto yy659; default: goto yy49; } -yy606: +yy615: yych = *++context.cursor; switch (yych) { - case 'O': goto yy651; + case 'O': goto yy660; default: goto yy49; } -yy607: +yy616: yych = *++context.cursor; switch (yych) { case '-': @@ -16220,13 +16343,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy608; + default: goto yy617; } -yy608: -#line 9050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy617: +#line 9075 "/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 16229 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy609: +#line 16352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy618: yych = *++context.cursor; switch (yych) { case '-': @@ -16293,13 +16416,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy610; + default: goto yy619; } -yy610: -#line 9053 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy619: +#line 9078 "/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 16302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy611: +#line 16425 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy620: yych = *++context.cursor; switch (yych) { case '-': @@ -16366,13 +16489,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy612; + default: goto yy621; } -yy612: -#line 9056 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy621: +#line 9081 "/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 16375 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy613: +#line 16498 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy622: yych = *++context.cursor; switch (yych) { case '-': @@ -16438,26 +16561,26 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'S': goto yy652; - default: goto yy614; + case 'S': goto yy661; + default: goto yy623; } -yy614: -#line 9059 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy623: +#line 9084 "/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 16448 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy615: +#line 16571 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy624: yych = *++context.cursor; switch (yych) { - case 'E': goto yy654; + case 'E': goto yy663; default: goto yy49; } -yy616: +yy625: yych = *++context.cursor; switch (yych) { - case 'G': goto yy655; + case 'G': goto yy664; default: goto yy49; } -yy617: +yy626: yych = *++context.cursor; switch (yych) { case '-': @@ -16524,55 +16647,55 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy618; + default: goto yy627; } -yy618: -#line 9064 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy627: +#line 9089 "/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 16533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy619: +#line 16656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy628: yych = *++context.cursor; switch (yych) { - case 'N': goto yy657; + case 'N': goto yy666; default: goto yy49; } -yy620: +yy629: yych = *++context.cursor; switch (yych) { - case 'C': goto yy658; + case 'C': goto yy667; default: goto yy49; } -yy621: +yy630: yych = *++context.cursor; switch (yych) { - case 'D': goto yy659; + case 'D': goto yy668; default: goto yy49; } -yy622: +yy631: yych = *++context.cursor; switch (yych) { - case 'L': goto yy661; + case 'L': goto yy670; default: goto yy49; } -yy623: +yy632: yych = *++context.cursor; switch (yych) { - case 'r': goto yy662; + case 'r': goto yy671; default: goto yy49; } -yy624: +yy633: yych = *++context.cursor; switch (yych) { - case 'e': goto yy663; + case 'e': goto yy672; default: goto yy49; } -yy625: +yy634: yych = *++context.cursor; switch (yych) { - case 'r': goto yy664; + case 'r': goto yy673; default: goto yy49; } -yy626: +yy635: yych = *++context.cursor; switch (yych) { case '-': @@ -16639,79 +16762,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy627; + default: goto yy636; } -yy627: -#line 9083 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy636: +#line 9108 "/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 16648 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy628: +#line 16771 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy637: yych = *++context.cursor; switch (yych) { - case 'R': goto yy665; + case 'R': goto yy674; default: goto yy49; } -yy629: +yy638: yych = *++context.cursor; switch (yych) { - case 'O': goto yy667; + case 'O': goto yy676; default: goto yy49; } -yy630: +yy639: yych = *++context.cursor; switch (yych) { - case 'I': goto yy668; + case 'I': goto yy677; default: goto yy49; } -yy631: +yy640: yych = *++context.cursor; switch (yych) { - case 'i': goto yy669; + case 'i': goto yy678; default: goto yy49; } -yy632: +yy641: yych = *++context.cursor; switch (yych) { - case 'I': goto yy670; + case 'I': goto yy679; default: goto yy49; } -yy633: +yy642: yych = *++context.cursor; switch (yych) { - case 'B': goto yy671; + case 'B': goto yy680; default: goto yy49; } -yy634: +yy643: yych = *++context.cursor; switch (yych) { - case 'r': goto yy672; + case 'r': goto yy681; default: goto yy49; } -yy635: +yy644: yych = *++context.cursor; switch (yych) { - case 'c': goto yy673; + case 'c': goto yy682; default: goto yy49; } -yy636: +yy645: yych = *++context.cursor; switch (yych) { - case 'N': goto yy674; + case 'N': goto yy683; default: goto yy49; } -yy637: +yy646: yych = *++context.cursor; switch (yych) { - case 'S': goto yy675; + case 'S': goto yy684; default: goto yy49; } -yy638: +yy647: yych = *++context.cursor; switch (yych) { - case 'O': goto yy676; + case 'O': goto yy685; default: goto yy49; } -yy639: +yy648: yych = *++context.cursor; switch (yych) { case '-': @@ -16778,31 +16901,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy640; + default: goto yy649; } -yy640: -#line 9121 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy649: +#line 9146 "/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 16787 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy641: +#line 16910 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy650: yych = *++context.cursor; switch (yych) { - case 'A': goto yy677; + case 'A': goto yy686; default: goto yy49; } -yy642: +yy651: yych = *++context.cursor; switch (yych) { - case 'T': goto yy678; + case 'T': goto yy687; default: goto yy49; } -yy643: +yy652: yych = *++context.cursor; switch (yych) { - case 'r': goto yy679; + case 'r': goto yy688; default: goto yy49; } -yy644: +yy653: yych = *++context.cursor; switch (yych) { case '-': @@ -16869,49 +16992,49 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy645; + default: goto yy654; } -yy645: -#line 9130 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy654: +#line 9155 "/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 16878 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy646: +#line 17001 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy655: yych = *++context.cursor; switch (yych) { - case 'g': goto yy680; + case 'g': goto yy689; default: goto yy49; } -yy647: +yy656: yych = *++context.cursor; switch (yych) { - case 'S': goto yy682; + case 'S': goto yy691; default: goto yy49; } -yy648: +yy657: yych = *++context.cursor; switch (yych) { - case 't': goto yy683; + case 't': goto yy692; default: goto yy49; } -yy649: +yy658: yych = *++context.cursor; switch (yych) { - case 'r': goto yy684; + case 'r': goto yy693; default: goto yy49; } -yy650: +yy659: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy685; + case 'Y': goto yy694; default: goto yy49; } -yy651: +yy660: yych = *++context.cursor; switch (yych) { - case 'N': goto yy686; + case 'N': goto yy695; default: goto yy49; } -yy652: +yy661: yych = *++context.cursor; switch (yych) { case '-': @@ -16978,19 +17101,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy653; + default: goto yy662; } -yy653: -#line 9060 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy662: +#line 9085 "/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 16987 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy654: +#line 17110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy663: yych = *++context.cursor; switch (yych) { - case 'D': goto yy688; + case 'D': goto yy697; default: goto yy49; } -yy655: +yy664: yych = *++context.cursor; switch (yych) { case '-': @@ -17057,25 +17180,25 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy656; + default: goto yy665; } -yy656: -#line 9062 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy665: +#line 9087 "/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 17066 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy657: +#line 17189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy666: yych = *++context.cursor; switch (yych) { - case 'S': goto yy690; + case 'S': goto yy699; default: goto yy49; } -yy658: +yy667: yych = *++context.cursor; switch (yych) { - case 'O': goto yy692; + case 'O': goto yy701; default: goto yy49; } -yy659: +yy668: yych = *++context.cursor; switch (yych) { case '-': @@ -17142,37 +17265,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy660; + default: goto yy669; } -yy660: -#line 9072 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy669: +#line 9097 "/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 17151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy661: +#line 17274 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy670: yych = *++context.cursor; switch (yych) { - case 'I': goto yy693; + case 'I': goto yy702; default: goto yy49; } -yy662: +yy671: yych = *++context.cursor; switch (yych) { - case 'i': goto yy694; + case 'i': goto yy703; default: goto yy49; } -yy663: +yy672: yych = *++context.cursor; switch (yych) { - case 'd': goto yy695; + case 'd': goto yy704; default: goto yy49; } -yy664: +yy673: yych = *++context.cursor; switch (yych) { - case 'i': goto yy696; + case 'i': goto yy705; default: goto yy49; } -yy665: +yy674: yych = *++context.cursor; switch (yych) { case '-': @@ -17239,91 +17362,91 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy666; + default: goto yy675; } -yy666: -#line 9084 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy675: +#line 9109 "/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 17248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy667: +#line 17371 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy676: yych = *++context.cursor; switch (yych) { - case 'N': goto yy697; + case 'N': goto yy706; default: goto yy49; } -yy668: +yy677: yych = *++context.cursor; switch (yych) { - case 'O': goto yy698; + case 'O': goto yy707; default: goto yy49; } -yy669: +yy678: yych = *++context.cursor; switch (yych) { - case 'n': goto yy699; + case 'n': goto yy708; default: goto yy49; } -yy670: +yy679: yych = *++context.cursor; switch (yych) { - case 'N': goto yy700; + case 'N': goto yy709; default: goto yy49; } -yy671: +yy680: yych = *++context.cursor; switch (yych) { - case 'E': goto yy701; + case 'E': goto yy710; default: goto yy49; } -yy672: +yy681: yych = *++context.cursor; switch (yych) { - case 'i': goto yy702; + case 'i': goto yy711; default: goto yy49; } -yy673: +yy682: yych = *++context.cursor; switch (yych) { - case 'r': goto yy703; + case 'r': goto yy712; default: goto yy49; } -yy674: +yy683: yych = *++context.cursor; switch (yych) { - case 'I': goto yy704; + case 'I': goto yy713; default: goto yy49; } -yy675: +yy684: yych = *++context.cursor; switch (yych) { - case 't': goto yy705; + case 't': goto yy714; default: goto yy49; } -yy676: +yy685: yych = *++context.cursor; switch (yych) { - case 'I': goto yy706; + case 'I': goto yy715; default: goto yy49; } -yy677: +yy686: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy707; + case 'Y': goto yy716; default: goto yy49; } -yy678: +yy687: yych = *++context.cursor; switch (yych) { - case 'I': goto yy709; + case 'I': goto yy718; default: goto yy49; } -yy679: +yy688: yych = *++context.cursor; switch (yych) { - case 'i': goto yy710; + case 'i': goto yy719; default: goto yy49; } -yy680: +yy689: yych = *++context.cursor; switch (yych) { case '-': @@ -17390,37 +17513,37 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy681; + default: goto yy690; } -yy681: -#line 9133 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy690: +#line 9158 "/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 17399 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy682: +#line 17522 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy691: yych = *++context.cursor; switch (yych) { - case 't': goto yy711; + case 't': goto yy720; default: goto yy49; } -yy683: +yy692: yych = *++context.cursor; switch (yych) { - case 'r': goto yy712; + case 'r': goto yy721; default: goto yy49; } -yy684: +yy693: yych = *++context.cursor; switch (yych) { - case 'i': goto yy713; + case 'i': goto yy722; default: goto yy49; } -yy685: +yy694: yych = *++context.cursor; switch (yych) { - case 'N': goto yy714; + case 'N': goto yy723; default: goto yy49; } -yy686: +yy695: yych = *++context.cursor; switch (yych) { case '-': @@ -17487,13 +17610,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy687; + default: goto yy696; } -yy687: -#line 9049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy696: +#line 9074 "/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 17496 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy688: +#line 17619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy697: yych = *++context.cursor; switch (yych) { case '-': @@ -17560,13 +17683,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy689; + default: goto yy698; } -yy689: -#line 9061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy698: +#line 9086 "/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 17569 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy690: +#line 17692 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy699: yych = *++context.cursor; switch (yych) { case '-': @@ -17633,103 +17756,103 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy691; + default: goto yy700; } -yy691: -#line 9066 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy700: +#line 9091 "/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 17642 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy692: +#line 17765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy701: yych = *++context.cursor; switch (yych) { - case 'N': goto yy715; + case 'N': goto yy724; default: goto yy49; } -yy693: +yy702: yych = *++context.cursor; switch (yych) { - case 'T': goto yy716; + case 'T': goto yy725; default: goto yy49; } -yy694: +yy703: yych = *++context.cursor; switch (yych) { - case 'n': goto yy717; + case 'n': goto yy726; default: goto yy49; } -yy695: +yy704: yych = *++context.cursor; switch (yych) { - case 'T': goto yy718; + case 'T': goto yy727; default: goto yy49; } -yy696: +yy705: yych = *++context.cursor; switch (yych) { - case 'n': goto yy719; + case 'n': goto yy728; default: goto yy49; } -yy697: +yy706: yych = *++context.cursor; switch (yych) { - case 'S': goto yy720; + case 'S': goto yy729; default: goto yy49; } -yy698: +yy707: yych = *++context.cursor; switch (yych) { - case 'N': goto yy722; + case 'N': goto yy731; default: goto yy49; } -yy699: +yy708: yych = *++context.cursor; switch (yych) { - case 'g': goto yy724; + case 'g': goto yy733; default: goto yy49; } -yy700: +yy709: yych = *++context.cursor; switch (yych) { - case 'I': goto yy726; + case 'I': goto yy735; default: goto yy49; } -yy701: +yy710: yych = *++context.cursor; switch (yych) { - case 'R': goto yy727; + case 'R': goto yy736; default: goto yy49; } -yy702: +yy711: yych = *++context.cursor; switch (yych) { - case 'n': goto yy729; + case 'n': goto yy738; default: goto yy49; } -yy703: +yy712: yych = *++context.cursor; switch (yych) { - case 'i': goto yy730; + case 'i': goto yy739; default: goto yy49; } -yy704: +yy713: yych = *++context.cursor; switch (yych) { - case 'T': goto yy731; + case 'T': goto yy740; default: goto yy49; } -yy705: +yy714: yych = *++context.cursor; switch (yych) { - case 'r': goto yy732; + case 'r': goto yy741; default: goto yy49; } -yy706: +yy715: yych = *++context.cursor; switch (yych) { - case 'D': goto yy733; + case 'D': goto yy742; default: goto yy49; } -yy707: +yy716: yych = *++context.cursor; switch (yych) { case '-': @@ -17796,79 +17919,79 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy708; + default: goto yy717; } -yy708: -#line 9125 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy717: +#line 9150 "/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 17805 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy709: +#line 17928 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy718: yych = *++context.cursor; switch (yych) { - case 'F': goto yy735; + case 'F': goto yy744; default: goto yy49; } -yy710: +yy719: yych = *++context.cursor; switch (yych) { - case 'n': goto yy736; + case 'n': goto yy745; default: goto yy49; } -yy711: +yy720: yych = *++context.cursor; switch (yych) { - case 'r': goto yy737; + case 'r': goto yy746; default: goto yy49; } -yy712: +yy721: yych = *++context.cursor; switch (yych) { - case 'i': goto yy738; + case 'i': goto yy747; default: goto yy49; } -yy713: +yy722: yych = *++context.cursor; switch (yych) { - case 'n': goto yy739; + case 'n': goto yy748; default: goto yy49; } -yy714: +yy723: yych = *++context.cursor; switch (yych) { - case 'T': goto yy740; + case 'T': goto yy749; default: goto yy49; } -yy715: +yy724: yych = *++context.cursor; switch (yych) { - case 'T': goto yy741; + case 'T': goto yy750; default: goto yy49; } -yy716: +yy725: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy742; + case 'Y': goto yy751; default: goto yy49; } -yy717: +yy726: yych = *++context.cursor; switch (yych) { - case 'g': goto yy744; + case 'g': goto yy753; default: goto yy49; } -yy718: +yy727: yych = *++context.cursor; switch (yych) { - case 'i': goto yy746; + case 'i': goto yy755; default: goto yy49; } -yy719: +yy728: yych = *++context.cursor; switch (yych) { - case 'g': goto yy747; + case 'g': goto yy756; default: goto yy49; } -yy720: +yy729: yych = *++context.cursor; switch (yych) { case '-': @@ -17935,13 +18058,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy721; + default: goto yy730; } -yy721: -#line 9090 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy730: +#line 9115 "/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 17944 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy722: +#line 18067 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy731: yych = *++context.cursor; switch (yych) { case '-': @@ -18008,13 +18131,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy723; + default: goto yy732; } -yy723: -#line 9092 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy732: +#line 9117 "/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 18017 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy724: +#line 18140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy733: yych = *++context.cursor; switch (yych) { case '-': @@ -18081,19 +18204,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy725; + default: goto yy734; } -yy725: -#line 9093 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy734: +#line 9118 "/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 18090 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy726: +#line 18213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy735: yych = *++context.cursor; switch (yych) { - case 'T': goto yy749; + case 'T': goto yy758; default: goto yy49; } -yy727: +yy736: yych = *++context.cursor; switch (yych) { case '-': @@ -18160,40 +18283,40 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy728; + default: goto yy737; } -yy728: -#line 9097 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy737: +#line 9122 "/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 18169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy729: +#line 18292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy738: yych = *++context.cursor; switch (yych) { - case 'g': goto yy750; + case 'g': goto yy759; default: goto yy49; } -yy730: +yy739: yych = *++context.cursor; switch (yych) { - case 'p': goto yy752; + case 'p': goto yy761; default: goto yy49; } -yy731: +yy740: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy753; + case 'Y': goto yy762; default: goto yy49; } -yy732: +yy741: yych = *++context.cursor; switch (yych) { - case 'i': goto yy755; + case 'i': goto yy764; default: goto yy49; } -yy733: +yy742: yych = *++context.cursor; switch (yych) { - case '-': goto yy756; + case '-': goto yy765; case '0': case '1': case '2': @@ -18257,55 +18380,55 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy734; + default: goto yy743; } -yy734: -#line 9113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy743: +#line 9138 "/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 18266 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy735: +#line 18389 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy744: yych = *++context.cursor; switch (yych) { - case 'I': goto yy757; + case 'I': goto yy766; default: goto yy49; } -yy736: +yy745: yych = *++context.cursor; switch (yych) { - case 'g': goto yy758; + case 'g': goto yy767; default: goto yy49; } -yy737: +yy746: yych = *++context.cursor; switch (yych) { - case 'i': goto yy760; + case 'i': goto yy769; default: goto yy49; } -yy738: +yy747: yych = *++context.cursor; switch (yych) { - case 'n': goto yy761; + case 'n': goto yy770; default: goto yy49; } -yy739: +yy748: yych = *++context.cursor; switch (yych) { - case 'g': goto yy762; + case 'g': goto yy771; default: goto yy49; } -yy740: +yy749: yych = *++context.cursor; switch (yych) { - case 'A': goto yy764; + case 'A': goto yy773; default: goto yy49; } -yy741: +yy750: yych = *++context.cursor; switch (yych) { - case 'R': goto yy765; + case 'R': goto yy774; default: goto yy49; } -yy742: +yy751: yych = *++context.cursor; switch (yych) { case '-': @@ -18372,13 +18495,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy743; + default: goto yy752; } -yy743: -#line 9076 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy752: +#line 9101 "/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 18381 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy744: +#line 18504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy753: yych = *++context.cursor; switch (yych) { case '-': @@ -18445,19 +18568,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy745; + default: goto yy754; } -yy745: -#line 9081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy754: +#line 9106 "/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 18454 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy746: +#line 18577 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy755: yych = *++context.cursor; switch (yych) { - case 'm': goto yy766; + case 'm': goto yy775; default: goto yy49; } -yy747: +yy756: yych = *++context.cursor; switch (yych) { case '-': @@ -18524,19 +18647,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy748; + default: goto yy757; } -yy748: -#line 9082 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy757: +#line 9107 "/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 18533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy749: +#line 18656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy758: yych = *++context.cursor; switch (yych) { - case 'Y': goto yy767; + case 'Y': goto yy776; default: goto yy49; } -yy750: +yy759: yych = *++context.cursor; switch (yych) { case '-': @@ -18603,19 +18726,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy751; + default: goto yy760; } -yy751: -#line 9099 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy760: +#line 9124 "/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 18612 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy752: +#line 18735 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy761: yych = *++context.cursor; switch (yych) { - case 't': goto yy769; + case 't': goto yy778; default: goto yy49; } -yy753: +yy762: yych = *++context.cursor; switch (yych) { case '-': @@ -18682,31 +18805,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy754; + default: goto yy763; } -yy754: -#line 9108 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy763: +#line 9133 "/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 18691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy755: +#line 18814 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy764: yych = *++context.cursor; switch (yych) { - case 'n': goto yy770; + case 'n': goto yy779; default: goto yy49; } -yy756: +yy765: yych = *++context.cursor; switch (yych) { - case 'I': goto yy771; + case 'I': goto yy780; default: goto yy49; } -yy757: +yy766: yych = *++context.cursor; switch (yych) { - case 'E': goto yy772; + case 'E': goto yy781; default: goto yy49; } -yy758: +yy767: yych = *++context.cursor; switch (yych) { case '-': @@ -18773,25 +18896,25 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy759; + default: goto yy768; } -yy759: -#line 9123 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy768: +#line 9148 "/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 18782 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy760: +#line 18905 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy769: yych = *++context.cursor; switch (yych) { - case 'n': goto yy773; + case 'n': goto yy782; default: goto yy49; } -yy761: +yy770: yych = *++context.cursor; switch (yych) { - case 'g': goto yy774; + case 'g': goto yy783; default: goto yy49; } -yy762: +yy771: yych = *++context.cursor; switch (yych) { case '-': @@ -18858,31 +18981,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy763; + default: goto yy772; } -yy763: -#line 9135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy772: +#line 9160 "/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 18867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy764: +#line 18990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy773: yych = *++context.cursor; switch (yych) { - case 'X': goto yy776; + case 'X': goto yy785; default: goto yy49; } -yy765: +yy774: yych = *++context.cursor; switch (yych) { - case 'O': goto yy778; + case 'O': goto yy787; default: goto yy49; } -yy766: +yy775: yych = *++context.cursor; switch (yych) { - case 'e': goto yy779; + case 'e': goto yy788; default: goto yy49; } -yy767: +yy776: yych = *++context.cursor; switch (yych) { case '-': @@ -18949,43 +19072,43 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy768; + default: goto yy777; } -yy768: -#line 9096 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy777: +#line 9121 "/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 18958 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy769: +#line 19081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy778: yych = *++context.cursor; switch (yych) { - case 'o': goto yy781; + case 'o': goto yy790; default: goto yy49; } -yy770: +yy779: yych = *++context.cursor; switch (yych) { - case 'g': goto yy782; + case 'g': goto yy791; default: goto yy49; } -yy771: +yy780: yych = *++context.cursor; switch (yych) { - case 'R': goto yy784; + case 'R': goto yy793; default: goto yy49; } -yy772: +yy781: yych = *++context.cursor; switch (yych) { - case 'R': goto yy785; + case 'R': goto yy794; default: goto yy49; } -yy773: +yy782: yych = *++context.cursor; switch (yych) { - case 'g': goto yy787; + case 'g': goto yy796; default: goto yy49; } -yy774: +yy783: yych = *++context.cursor; switch (yych) { case '-': @@ -19052,13 +19175,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy775; + default: goto yy784; } -yy775: -#line 9134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy784: +#line 9159 "/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 19061 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy776: +#line 19184 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy785: yych = *++context.cursor; switch (yych) { case '-': @@ -19125,19 +19248,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy777; + default: goto yy786; } -yy777: -#line 9046 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy786: +#line 9071 "/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 19134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy778: +#line 19257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy787: yych = *++context.cursor; switch (yych) { - case 'L': goto yy789; + case 'L': goto yy798; default: goto yy49; } -yy779: +yy788: yych = *++context.cursor; switch (yych) { case '-': @@ -19204,19 +19327,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy780; + default: goto yy789; } -yy780: -#line 9080 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy789: +#line 9105 "/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 19213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy781: +#line 19336 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy790: yych = *++context.cursor; switch (yych) { - case 'r': goto yy791; + case 'r': goto yy800; default: goto yy49; } -yy782: +yy791: yych = *++context.cursor; switch (yych) { case '-': @@ -19283,19 +19406,19 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy783; + default: goto yy792; } -yy783: -#line 9110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy792: +#line 9135 "/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 19292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy784: +#line 19415 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy793: yych = *++context.cursor; switch (yych) { - case 'I': goto yy793; + case 'I': goto yy802; default: goto yy49; } -yy785: +yy794: yych = *++context.cursor; switch (yych) { case '-': @@ -19362,13 +19485,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy786; + default: goto yy795; } -yy786: -#line 9127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy795: +#line 9152 "/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 19371 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy787: +#line 19494 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy796: yych = *++context.cursor; switch (yych) { case '-': @@ -19435,13 +19558,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy788; + default: goto yy797; } -yy788: -#line 9131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy797: +#line 9156 "/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 19444 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy789: +#line 19567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy798: yych = *++context.cursor; switch (yych) { case '-': @@ -19508,13 +19631,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy790; + default: goto yy799; } -yy790: -#line 9070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy799: +#line 9095 "/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 19517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy791: +#line 19640 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy800: yych = *++context.cursor; switch (yych) { case '-': @@ -19581,13 +19704,13 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy792; + default: goto yy801; } -yy792: -#line 9101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy801: +#line 9126 "/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 19590 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy793: +#line 19713 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy802: yych = *++context.cursor; switch (yych) { case '-': @@ -19654,14 +19777,14 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy794; + default: goto yy803; } -yy794: -#line 9114 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy803: +#line 9139 "/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 19663 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19786 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" } -#line 9186 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" } } diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 4c5c9244..656a42bc 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -150,6 +150,40 @@ add_test(NAME fast_ber_parse_asn_96 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR #add_test(NAME fast_ber_parse_asn_97 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/97-type-identifier-SW.asn1 parse_test_97) #add_test(NAME fast_ber_parse_asn_98 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/98-attribute-class-OK.asn1 parse_test_98) add_test(NAME fast_ber_parse_asn_99 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/99-class-sample-OK.asn1 parse_test_99) +add_test(NAME fast_ber_parse_asn_100 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/100-class-ref-OK.asn1 parse_test_100) +add_test(NAME fast_ber_parse_asn_101 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/101-class-ref-SE.asn1 parse_test_101) +#add_test(NAME fast_ber_parse_asn_102 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/102-class-ref-SE.asn1 parse_test_102) +#add_test(NAME fast_ber_parse_asn_103 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/103-reference-SE.asn1 parse_test_103) +add_test(NAME fast_ber_parse_asn_104 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/104-param-1-OK.asn1 parse_test_104) +add_test(NAME fast_ber_parse_asn_105 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/105-param-2-OK.asn1 parse_test_105) +add_test(NAME fast_ber_parse_asn_106 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/106-param-constr-OK.asn1 parse_test_106) +add_test(NAME fast_ber_parse_asn_107 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/107-param-constr-2-OK.asn1 parse_test_107) +add_test(NAME fast_ber_parse_asn_108 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/108-param-constr-3-OK.asn1 parse_test_108) +#add_test(NAME fast_ber_parse_asn_109 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/109-bit-string-SE.asn1 parse_test_109) +add_test(NAME fast_ber_parse_asn_110 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/110-param-3-OK.asn1 parse_test_110) +add_test(NAME fast_ber_parse_asn_111 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/111-param-4-SE.asn1 parse_test_111) +add_test(NAME fast_ber_parse_asn_112 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/112-param-class-OK.asn1 parse_test_112) +add_test(NAME fast_ber_parse_asn_113 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/113-bit-string-SE.asn1 parse_test_113) +#add_test(NAME fast_ber_parse_asn_114 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/114-bit-string-SE.asn1 parse_test_114) +add_test(NAME fast_ber_parse_asn_115 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/115-bit-string-OK.asn1 parse_test_115) +add_test(NAME fast_ber_parse_asn_116 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/116-bit-string-SE.asn1 parse_test_116) +add_test(NAME fast_ber_parse_asn_117 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/117-real-constraint-OK.asn1 parse_test_117) +add_test(NAME fast_ber_parse_asn_118 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/118-per-constraint-OK.asn1 parse_test_118) +#add_test(NAME fast_ber_parse_asn_119 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/119-per-strings-OK.asn1 parse_test_119) +add_test(NAME fast_ber_parse_asn_121 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/121-empty-imports-OK.asn1 parse_test_121) +add_test(NAME fast_ber_parse_asn_122 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/122-pattern-OK.asn1 parse_test_122) +add_test(NAME fast_ber_parse_asn_123 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/123-valueassignment-OK.asn1 parse_test_123) +add_test(NAME fast_ber_parse_asn_124 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/124-multiconstraint-OK.asn1 parse_test_124) +add_test(NAME fast_ber_parse_asn_125 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/125-bitstring-constraint-OK.asn1 parse_test_125) +add_test(NAME fast_ber_parse_asn_126 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/126-per-extensions-OK.asn1 parse_test_126) +add_test(NAME fast_ber_parse_asn_127 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/127-per-long-OK.asn1 parse_test_127) +add_test(NAME fast_ber_parse_asn_128 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/128-enum-SE.asn1 parse_test_128) +add_test(NAME fast_ber_parse_asn_129 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/129-enum-OK.asn1 parse_test_129) +add_test(NAME fast_ber_parse_asn_130 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/130-enum-OK.asn1 parse_test_130) +add_test(NAME fast_ber_parse_asn_131 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/131-per-empty-OK.asn1 parse_test_131) +add_test(NAME fast_ber_parse_asn_132 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/132-per-choice-OK.asn1 parse_test_132) +add_test(NAME fast_ber_parse_asn_133 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/133-per-constraints-OK.asn1 parse_test_133) +add_test(NAME fast_ber_parse_asn_134 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/134-per-long-OK.asn1 parse_test_134) add_test(NAME fast_ber_compiler_0 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/simple0.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/simple0) add_test(NAME fast_ber_compiler_1 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/simple1.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/simple1) From 2e4e2ace7edb86e30d3e9cf25219e8fd80e5cbac Mon Sep 17 00:00:00 2001 From: Sam Date: Mon, 22 Apr 2019 10:30:52 +0100 Subject: [PATCH 05/31] Split nested enums into seperate definitions. Handle bitstring declarations --- include/fast_ber/compiler/CompilerTypes.hpp | 41 +++++++++++++++---- .../fast_ber/compiler/ReorderAssignments.hpp | 20 ++++++++- src/compiler/CompilerMain.cpp | 16 ++++++++ src/compiler/asn_compiler.yacc | 8 ++-- src/compiler/autogen_copy/asn_compiler.hpp | 8 ++-- 5 files changed, 76 insertions(+), 17 deletions(-) diff --git a/include/fast_ber/compiler/CompilerTypes.hpp b/include/fast_ber/compiler/CompilerTypes.hpp index 4edc1a5d..d1f3e1c8 100644 --- a/include/fast_ber/compiler/CompilerTypes.hpp +++ b/include/fast_ber/compiler/CompilerTypes.hpp @@ -277,11 +277,11 @@ struct UTCTimeType struct DefinedType; using BuiltinType = - absl::variant; + absl::variant; using Type = absl::variant; struct DefinedType @@ -314,10 +314,27 @@ struct DefinedValue std::string reference; }; +struct BitStringValue +{ + std::string value; +}; + +struct HexStringValue +{ + std::string value; +}; + +struct CharStringValue +{ + std::string value; +}; + struct Value { - absl::optional defined_value; - absl::variant, std::string, int64_t, NamedNumber> value_selection; + absl::optional defined_value; + absl::variant, int64_t, std::string, NamedNumber, BitStringValue, HexStringValue, + CharStringValue> + value_selection; }; struct NamedType @@ -643,6 +660,11 @@ std::string to_string(const SequenceType& sequence) for (const ComponentType& component : sequence.components) { std::string component_type = to_string(component.named_type.type); + if (is_enumerated(component.named_type.type)) + { + component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) { res += "struct " + component.named_type.name + "_type " + component_type; @@ -701,6 +723,11 @@ std::string to_string(const SetType& set) for (const ComponentType& component : set.components) { std::string component_type = to_string(component.named_type.type); + if (is_enumerated(component.named_type.type)) + { + component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) { res += " struct " + component.named_type.name + "_type " + component_type; diff --git a/include/fast_ber/compiler/ReorderAssignments.hpp b/include/fast_ber/compiler/ReorderAssignments.hpp index 0012cb72..12a520f0 100644 --- a/include/fast_ber/compiler/ReorderAssignments.hpp +++ b/include/fast_ber/compiler/ReorderAssignments.hpp @@ -129,14 +129,30 @@ void find_nested_structs(const Type& type, std::vector& nested_struct { for (const ComponentType& component : absl::get(absl::get(type)).components) { - find_nested_structs(component.named_type.type, nested_structs); + if (is_enumerated(component.named_type.type)) + { + nested_structs.push_back( + NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), component.named_type.type}); + } + else + { + find_nested_structs(component.named_type.type, nested_structs); + } } } else if (is_sequence(type)) { for (const ComponentType& component : absl::get(absl::get(type)).components) { - find_nested_structs(component.named_type.type, nested_structs); + if (is_enumerated(component.named_type.type)) + { + nested_structs.push_back( + NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), component.named_type.type}); + } + else + { + find_nested_structs(component.named_type.type, nested_structs); + } } } else if (is_set_of(type)) diff --git a/src/compiler/CompilerMain.cpp b/src/compiler/CompilerMain.cpp index a68d2637..01de480f 100644 --- a/src/compiler/CompilerMain.cpp +++ b/src/compiler/CompilerMain.cpp @@ -87,6 +87,22 @@ std::string create_assignment(const Assignment& assignment, TaggingMode tagging_ const std::string& string = absl::get(value_assign.value.value_selection); result += string; } + else if (absl::holds_alternative(value_assign.value.value_selection)) + { + const BitStringValue& bstring = absl::get(value_assign.value.value_selection); + (void)bstring; // TODO: convert bstring to cstring + result += "\"\""; + } + else if (absl::holds_alternative(value_assign.value.value_selection)) + { + const HexStringValue& hstring = absl::get(value_assign.value.value_selection); + result += hstring.value; + } + else if (absl::holds_alternative(value_assign.value.value_selection)) + { + const CharStringValue& cstring = absl::get(value_assign.value.value_selection); + result += cstring.value; + } else if (absl::holds_alternative(value_assign.value.value_selection)) { const int64_t integer = absl::get(value_assign.value.value_selection); diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 90540959..5ed0fd69 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -981,11 +981,11 @@ ValueWithoutTypeIdentifier: | TimeValue { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } | bstring - { std::cerr << std::string("Warning: Unhandled field: bstring\n"); } + { $$.value_selection = BitStringValue{$1}; } | hstring - { std::cerr << std::string("Warning: Unhandled field: hstring\n"); } + { $$.value_selection = HexStringValue{$1}; } | cstring - { $$.value_selection = $1; } + { $$.value_selection = CharStringValue{$1}; } | CONTAINING Value { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } | DefinedValue @@ -1813,7 +1813,7 @@ re2c:define:YYCURSOR = "context.cursor"; ['\"']('\\'.|"\"\""|[^'\"'])*['\"'] { context.location.columns(context.cursor - start); return asn1_parser::make_cstring(std::string(start, context.cursor), context.location); } ['\'']('0'|'1')*['\'']"B" - { context.location.columns(context.cursor - start); return asn1_parser::make_bstring(std::string(start, context.cursor), context.location); } + { context.location.columns(context.cursor - start); return asn1_parser::make_bstring(std::string(start + 1, context.cursor - 2), context.location); } ['\''][0-9A-Fa-f]*['\'']"H" { context.location.columns(context.cursor - start); return asn1_parser::make_hstring(std::string(start, context.cursor), context.location); } [A-Z][A-Za-z_0-9\-]* { context.location.columns(context.cursor - start); return asn1_parser::make_GENERIC_IDENTIFIER_UPPERCASE(santize_name(std::string(start, context.cursor)), context.location); } diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index eca978e6..0f45eb9e 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -6748,19 +6748,19 @@ namespace yy { case 257: #line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: bstring\n"); } + { yylhs.value.as< Value > ().value_selection = BitStringValue{yystack_[0].value.as< std::string > ()}; } #line 6751 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 258: #line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { std::cerr << std::string("Warning: Unhandled field: hstring\n"); } + { yylhs.value.as< Value > ().value_selection = HexStringValue{yystack_[0].value.as< std::string > ()}; } #line 6757 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 259: #line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } + { yylhs.value.as< Value > ().value_selection = CharStringValue{yystack_[0].value.as< std::string > ()}; } #line 6763 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -10482,7 +10482,7 @@ namespace yy { yy164: ++context.cursor; #line 9176 "/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, context.cursor), context.location); } + { context.location.columns(context.cursor - start); return asn1_parser::make_bstring(std::string(start + 1, context.cursor - 2), context.location); } #line 10487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy166: ++context.cursor; From e6067ac5d116e1b3b4cbaecaeb1213c7b00429be Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 22 May 2019 23:54:56 +0100 Subject: [PATCH 06/31] Add c++ compilation to the output of many parsing tests, improve type/identifier generation, add handling of COMPONENTS OF --- include/fast_ber/ber_types/All.hpp | 6 + include/fast_ber/ber_types/Any.hpp | 5 + include/fast_ber/ber_types/Date.hpp | 5 +- include/fast_ber/ber_types/DateTime.hpp | 9 + include/fast_ber/ber_types/Duration.hpp | 8 + include/fast_ber/ber_types/Real.hpp | 45 + include/fast_ber/ber_types/Time.hpp | 7 +- include/fast_ber/ber_types/TimeOfDay.hpp | 7 +- include/fast_ber/ber_types/UTCTime.hpp | 7 +- include/fast_ber/compiler/CompilerTypes.hpp | 299 +--- include/fast_ber/compiler/Dependencies.hpp | 8 +- include/fast_ber/compiler/Identifier.hpp | 173 +- .../fast_ber/compiler/ReorderAssignments.hpp | 72 +- include/fast_ber/compiler/ResolveType.hpp | 45 + include/fast_ber/compiler/TypeAsString.hpp | 295 ++++ src/compiler/CompilerMain.cpp | 87 +- src/compiler/asn_compiler.yacc | 22 +- src/compiler/autogen_copy/asn_compiler.hpp | 1500 +++++++++-------- test/CMakeLists.txt | 125 +- testfiles/choice.asn | 2 +- testfiles/simple5.asn | 8 +- 21 files changed, 1522 insertions(+), 1213 deletions(-) create mode 100644 include/fast_ber/ber_types/Any.hpp create mode 100644 include/fast_ber/compiler/ResolveType.hpp create mode 100644 include/fast_ber/compiler/TypeAsString.hpp diff --git a/include/fast_ber/ber_types/All.hpp b/include/fast_ber/ber_types/All.hpp index 98b8ae39..42b972cc 100644 --- a/include/fast_ber/ber_types/All.hpp +++ b/include/fast_ber/ber_types/All.hpp @@ -32,3 +32,9 @@ #include "TimeOfDay.hpp" #include "UTCTime.hpp" #include "VisibleString.hpp" + +namespace fast_ber +{ +using Any = fast_ber::Choice; +} diff --git a/include/fast_ber/ber_types/Any.hpp b/include/fast_ber/ber_types/Any.hpp new file mode 100644 index 00000000..ca045798 --- /dev/null +++ b/include/fast_ber/ber_types/Any.hpp @@ -0,0 +1,5 @@ +#pragma once + +#include "fast_ber/ber_types/choice.hpp" + +} diff --git a/include/fast_ber/ber_types/Date.hpp b/include/fast_ber/ber_types/Date.hpp index a2df0031..5684e69f 100644 --- a/include/fast_ber/ber_types/Date.hpp +++ b/include/fast_ber/ber_types/Date.hpp @@ -1,10 +1,9 @@ #pragma once +#include "fast_ber/ber_types/GeneralizedTime.hpp" namespace fast_ber { -class Date -{ -}; +using Date = GeneralizedTime; } // namespace fast_ber diff --git a/include/fast_ber/ber_types/DateTime.hpp b/include/fast_ber/ber_types/DateTime.hpp index e69de29b..5a606251 100644 --- a/include/fast_ber/ber_types/DateTime.hpp +++ b/include/fast_ber/ber_types/DateTime.hpp @@ -0,0 +1,9 @@ +#pragma once + +#include "fast_ber/ber_types/GeneralizedTime.hpp" +namespace fast_ber +{ + +using DateTime = GeneralizedTime; + +} // namespace fast_ber diff --git a/include/fast_ber/ber_types/Duration.hpp b/include/fast_ber/ber_types/Duration.hpp index 6f70f09b..1f39ccb7 100644 --- a/include/fast_ber/ber_types/Duration.hpp +++ b/include/fast_ber/ber_types/Duration.hpp @@ -1 +1,9 @@ #pragma once + +#include "fast_ber/ber_types/GeneralizedTime.hpp" +namespace fast_ber +{ + +using Duration = GeneralizedTime; + +} // namespace fast_ber diff --git a/include/fast_ber/ber_types/Real.hpp b/include/fast_ber/ber_types/Real.hpp index e69de29b..1a5ad5aa 100644 --- a/include/fast_ber/ber_types/Real.hpp +++ b/include/fast_ber/ber_types/Real.hpp @@ -0,0 +1,45 @@ +#pragma once + +#include "fast_ber/util/BerView.hpp" +#include "fast_ber/util/EncodeHelpers.hpp" + +namespace fast_ber +{ + +class Real +{ + public: + Real() noexcept : m_data{} {} + Real(double num) noexcept { assign(num); } + Real(BerView& view) noexcept { assign_ber(view); } + + explicit Real(absl::Span ber_data) noexcept { assign_ber(ber_data); } + + // Implicit conversion to int + operator double() const noexcept { return value(); } + double value() const noexcept; + + Real& operator=(double rhs) noexcept; + Real& operator=(const Real& rhs) noexcept; + Real& operator=(const BerView& rhs) noexcept; + void assign(double val) noexcept; + void assign(const Real& rhs) noexcept; + size_t assign_ber(const BerView& rhs) noexcept; + size_t assign_ber(absl::Span buffer) noexcept; + + EncodeResult encode_content_and_length(absl::Span buffer) const noexcept; + + private: + void set_content_length(uint64_t length) noexcept + { + assert(length <= std::numeric_limits::max()); + m_data[0] = static_cast(length); + } + uint8_t content_length() const noexcept { return m_data[0]; } + size_t encoded_length() const noexcept { return 1 + content_length(); } + + std::array m_data; +}; + +constexpr inline ExplicitIdentifier identifier(const Real*) noexcept { return {}; } +} // namespace fast_ber diff --git a/include/fast_ber/ber_types/Time.hpp b/include/fast_ber/ber_types/Time.hpp index 35734f80..cf04aac1 100644 --- a/include/fast_ber/ber_types/Time.hpp +++ b/include/fast_ber/ber_types/Time.hpp @@ -1,8 +1,9 @@ #pragma once +#include "fast_ber/ber_types/GeneralizedTime.hpp" namespace fast_ber { -class Time -{ -}; + +using Time = GeneralizedTime; + } // namespace fast_ber diff --git a/include/fast_ber/ber_types/TimeOfDay.hpp b/include/fast_ber/ber_types/TimeOfDay.hpp index a0930681..cf1e9b1f 100644 --- a/include/fast_ber/ber_types/TimeOfDay.hpp +++ b/include/fast_ber/ber_types/TimeOfDay.hpp @@ -1,8 +1,9 @@ #pragma once + +#include "fast_ber/ber_types/GeneralizedTime.hpp" namespace fast_ber { -class TimeOfDay -{ -}; + +using TimeOfDay = GeneralizedTime; } // namespace fast_ber diff --git a/include/fast_ber/ber_types/UTCTime.hpp b/include/fast_ber/ber_types/UTCTime.hpp index 663ea0d3..18f31a7b 100644 --- a/include/fast_ber/ber_types/UTCTime.hpp +++ b/include/fast_ber/ber_types/UTCTime.hpp @@ -1,8 +1,9 @@ #pragma once + +#include "fast_ber/ber_types/GeneralizedTime.hpp" namespace fast_ber { -class UTCTime -{ -}; + +using UTCTime = GeneralizedTime; } // namespace fast_ber diff --git a/include/fast_ber/compiler/CompilerTypes.hpp b/include/fast_ber/compiler/CompilerTypes.hpp index d1f3e1c8..276e6507 100644 --- a/include/fast_ber/compiler/CompilerTypes.hpp +++ b/include/fast_ber/compiler/CompilerTypes.hpp @@ -286,8 +286,9 @@ using Type = absl::variant; struct DefinedType { - std::string name; - std::vector parameters; + absl::optional module_reference; + std::string type_reference; + std::vector parameters; }; struct SequenceOfType { @@ -331,9 +332,8 @@ struct CharStringValue struct Value { - absl::optional defined_value; absl::variant, int64_t, std::string, NamedNumber, BitStringValue, HexStringValue, - CharStringValue> + CharStringValue, DefinedValue> value_selection; }; @@ -354,6 +354,7 @@ struct ComponentType NamedType named_type; bool is_optional; absl::optional value; + absl::optional components_of; }; struct Tag @@ -461,9 +462,9 @@ struct ObjectIdComponents components.reserve(value_list.size()); for (const Value& component : value_list) { - if (component.defined_value) + if (absl::holds_alternative(component.value_selection)) { - const std::string& name = component.defined_value->reference; + const std::string& name = absl::get(component.value_selection).reference; components.push_back(ObjectIdComponentValue{name, absl::nullopt}); } else if (absl::holds_alternative(component.value_selection)) @@ -490,41 +491,13 @@ struct ObjectIdComponents std::vector components; }; -std::string to_string(const AnyType&); -std::string to_string(const BitStringType&); -std::string to_string(const BooleanType&); -std::string to_string(const CharacterStringType&); -std::string to_string(const ChoiceType&); -std::string to_string(const DateType&); -std::string to_string(const DateTimeType&); -std::string to_string(const DurationType&); -std::string to_string(const EmbeddedPDVType&); -std::string to_string(const EnumeratedType&); -std::string to_string(const ExternalType&); -std::string to_string(const GeneralizedTimeType& type); -std::string to_string(const InstanceOfType&); -std::string to_string(const IntegerType&); -std::string to_string(const IRIType&); -std::string to_string(const NullType&); -std::string to_string(const ObjectClassFieldType&); -std::string to_string(const ObjectDescriptorType&); -std::string to_string(const ObjectIdentifierType&); -std::string to_string(const OctetStringType&); -std::string to_string(const RealType&); -std::string to_string(const RelativeIRIType&); -std::string to_string(const RelativeOIDType&); -std::string to_string(const SequenceType&); -std::string to_string(const SequenceOfType&); -std::string to_string(const SetType&); -std::string to_string(const SetOfType&); -std::string to_string(const PrefixedType&); -std::string to_string(const TimeType&); -std::string to_string(const TimeOfDayType&); -std::string to_string(const UTCTimeType& type); -std::string to_string(const DefinedType&); -std::string to_string(const BuiltinType& type); -std::string to_string(const Type& type); -std::string fully_tagged_type(const Type& type, TaggingMode tagging_mode); +std::string make_type_optional(const std::string& type) { return "Optional<" + type + ">"; } + +bool is_bit_string(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} bool is_set(const Type& type) { @@ -583,248 +556,4 @@ bool is_defined(const Type& type) { return absl::holds_alternative( int unnamed_definition_reference_num = 0; -std::string to_string(const AnyType&) { return "Any"; } -std::string to_string(const BitStringType&) { return "BitString"; } -std::string to_string(const BooleanType&) { return "Boolean"; } -std::string to_string(const CharacterStringType&) { return "CharacterString"; } -std::string to_string(const ChoiceType& choice) -{ - bool is_first = true; - std::string res = "Choice<"; - for (const auto& named_type : choice.choices) - { - if (!is_first) - res += ", "; - - if (is_sequence(named_type.type)) - { - res += "UnnamedSequence" + std::to_string(unnamed_definition_reference_num++); - } - else if (is_set(named_type.type)) - { - res += "UnnamedSet" + std::to_string(unnamed_definition_reference_num++); - } - else if (is_enumerated(named_type.type)) - { - return "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); - } - else - { - res += fully_tagged_type(named_type.type, TaggingMode::implicit); - } - - is_first = false; - } - - res += ">"; - return res; -} -std::string to_string(const DateType&) { return "Date"; } -std::string to_string(const DateTimeType&) { return "DateTime"; } -std::string to_string(const DurationType&) { return "Duration"; } -std::string to_string(const EmbeddedPDVType&) { return "EmbeddedPDV"; } -std::string to_string(const EnumeratedType& enumerated) -{ - std::string res = " {\n"; - for (const EnumerationValue& enum_value : enumerated.enum_values) - { - res += " " + enum_value.name; - if (enum_value.value) - { - res += " = " + std::to_string(*enum_value.value); - } - res += ",\n"; - } - res += "};\n\n"; - - return res; -} -std::string to_string(const ExternalType&) { return "External"; } -std::string to_string(const GeneralizedTimeType&) { return "GeneralizedTime"; } -std::string to_string(const InstanceOfType&) { return "InstanceOf"; } -std::string to_string(const IntegerType&) { return "Integer"; } -std::string to_string(const IRIType&) { return "IRI"; } -std::string to_string(const NullType&) { return "Null"; } -std::string to_string(const ObjectClassFieldType&) { return "ObjectClassField"; } -std::string to_string(const ObjectDescriptorType&) { return "ObjectDescriptor"; } -std::string to_string(const ObjectIdentifierType&) { return "ObjectIdentifier"; } -std::string to_string(const OctetStringType&) { return "OctetString"; } -std::string to_string(const RealType&) { return "Real"; } -std::string to_string(const RelativeIRIType&) { return "RelativeIRI"; } -std::string to_string(const RelativeOIDType&) { return "RelativeOID"; } -std::string make_type_optional(const std::string& type) { return "Optional<" + type + ">"; } -std::string to_string(const SequenceType& sequence) -{ - std::string res = " {\n"; - - for (const ComponentType& component : sequence.components) - { - std::string component_type = to_string(component.named_type.type); - if (is_enumerated(component.named_type.type)) - { - component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); - } - - if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) - { - res += "struct " + component.named_type.name + "_type " + component_type; - res += " " + component.named_type.name + "_type " + component.named_type.name + ";\n"; - } - else - { - if (component.is_optional) - { - component_type = make_type_optional(component_type); - } - res += " " + component_type + " " + component.named_type.name + ";\n"; - } - } - res += "};\n"; - - return res; -} -std::string to_string(const SequenceOfType& sequence) -{ - const Type& type = sequence.has_name ? sequence.named_type->type : *sequence.type; - - if (is_sequence(type)) - { - if (sequence.has_name) - { - return "SequenceOf<" + sequence.named_type->name + ">"; - } - return "SequenceOf"; - } - else if (is_set(type)) - { - if (sequence.has_name) - { - return "SequenceOf<" + sequence.named_type->name + ">"; - } - return "SequenceOf"; - } - else if (is_enumerated(type)) - { - if (sequence.has_name) - { - return "SequenceOf<" + sequence.named_type->name + ">"; - } - return "SequenceOf"; - } - else - { - return "SequenceOf<" + to_string(type) + ">"; - } -} -std::string to_string(const SetType& set) -{ - std::string res = " {\n"; - - for (const ComponentType& component : set.components) - { - std::string component_type = to_string(component.named_type.type); - if (is_enumerated(component.named_type.type)) - { - component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); - } - - if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) - { - res += " struct " + component.named_type.name + "_type " + component_type; - res += component.named_type.name + "_type " + component.named_type.name + ";\n"; - } - else - { - if (component.is_optional) - { - component_type = make_type_optional(component_type); - } - res += " " + component_type + " " + component.named_type.name + ";\n"; - } - } - res += "};\n"; - - return res; -} -std::string to_string(const SetOfType& set) -{ - const Type& type = set.has_name ? set.named_type->type : *set.type; - - if (is_sequence(type)) - { - if (set.has_name) - { - return "SequenceOf<" + set.named_type->name + ">"; - } - return "SequenceOf"; - } - else if (is_set(type)) - { - if (set.has_name) - { - return "SequenceOf<" + set.named_type->name + ">"; - } - return "SequenceOf"; - } - else if (is_enumerated(type)) - { - if (set.has_name) - { - return "SequenceOf<" + set.named_type->name + ">"; - } - return "SequenceOf"; - } - else - { - return "SequenceOf<" + to_string(type) + ">"; - } -} -std::string to_string(const PrefixedType& prefixed_type) -{ - if (is_sequence(prefixed_type.tagged_type->type)) - { - return "UnnamedSequence" + std::to_string(unnamed_definition_reference_num++); - } - else if (is_set(prefixed_type.tagged_type->type)) - { - return "UnnamedSet" + std::to_string(unnamed_definition_reference_num++); - } - else if (is_enumerated(prefixed_type.tagged_type->type)) - { - return "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); - } - return to_string(prefixed_type.tagged_type->type); -} -std::string to_string(const TimeType&) { return "Time"; } -std::string to_string(const TimeOfDayType&) { return "TimeOfDay"; } -std::string to_string(const UTCTimeType&) { return "UTCTime"; } - -std::string to_string(const DefinedType& type) -{ - if (!type.parameters.empty()) - { - std::set parameter_types; - for (const Type& paramter : type.parameters) - { - parameter_types.insert(to_string(paramter)); - } - return type.name + create_template_arguments(parameter_types); - } - return type.name; -} - -struct ToStringHelper -{ - template - std::string operator()(const T& t) - { - return to_string(t); - } -}; - -static ToStringHelper string_helper; - -std::string to_string(const BuiltinType& type) { return absl::visit(string_helper, type); } -std::string to_string(const Type& type) { return absl::visit(string_helper, type); } - struct Context; diff --git a/include/fast_ber/compiler/Dependencies.hpp b/include/fast_ber/compiler/Dependencies.hpp index fa718e60..fe3498c2 100644 --- a/include/fast_ber/compiler/Dependencies.hpp +++ b/include/fast_ber/compiler/Dependencies.hpp @@ -51,7 +51,7 @@ std::vector depends_on(const ChoiceType choice) } return depends; } -std::vector depends_on(const AnyType&) { return{}; } +std::vector depends_on(const AnyType&) { return {}; } std::vector depends_on(const DateType&) { return {}; } std::vector depends_on(const DateTimeType&) { return {}; } std::vector depends_on(const DurationType&) { return {}; } @@ -121,7 +121,7 @@ std::vector depends_on(const TimeOfDayType&) { return {}; } std::vector depends_on(const UTCTimeType&) { return {}; } std::vector depends_on(const DefinedType& defined) { - std::vector depends{defined.name}; + std::vector depends{defined.type_reference}; for (const Type& paramater : defined.parameters) { @@ -145,9 +145,9 @@ std::vector depends_on(const BuiltinType& type) { return absl::visi std::vector depends_on(const Type& type) { return absl::visit(depends_on_helper, type); } std::vector depends_on(const Value& value) { - if (value.defined_value) + if (absl::holds_alternative(value.value_selection)) { - return {value.defined_value->reference}; + return {absl::get(value.value_selection).reference}; }; return {}; } diff --git a/include/fast_ber/compiler/Identifier.hpp b/include/fast_ber/compiler/Identifier.hpp index 1e582596..7d95c563 100644 --- a/include/fast_ber/compiler/Identifier.hpp +++ b/include/fast_ber/compiler/Identifier.hpp @@ -1,155 +1,157 @@ #pragma once #include "fast_ber/compiler/CompilerTypes.hpp" +#include "fast_ber/compiler/ResolveType.hpp" +#include "fast_ber/compiler/TypeAsString.hpp" -TaggingInfo identifier(const AnyType&, TaggingMode); -TaggingInfo identifier(const BitStringType&, TaggingMode); -TaggingInfo identifier(const BooleanType&, TaggingMode); -TaggingInfo identifier(const CharacterStringType&, TaggingMode); -TaggingInfo identifier(const ChoiceType&, TaggingMode); -TaggingInfo identifier(const DateType&, TaggingMode); -TaggingInfo identifier(const DateTimeType&, TaggingMode); -TaggingInfo identifier(const DurationType&, TaggingMode); -TaggingInfo identifier(const EmbeddedPDVType&, TaggingMode); -TaggingInfo identifier(const EnumeratedType&, TaggingMode); -TaggingInfo identifier(const ExternalType&, TaggingMode); -TaggingInfo identifier(const InstanceOfType&, TaggingMode); -TaggingInfo identifier(const IntegerType&, TaggingMode); -TaggingInfo identifier(const IRIType&, TaggingMode); -TaggingInfo identifier(const NullType&, TaggingMode); -TaggingInfo identifier(const ObjectClassFieldType&, TaggingMode); -TaggingInfo identifier(const ObjectDescriptorType&, TaggingMode); -TaggingInfo identifier(const ObjectIdentifierType&, TaggingMode); -TaggingInfo identifier(const OctetStringType&, TaggingMode); -TaggingInfo identifier(const RealType&, TaggingMode); -TaggingInfo identifier(const RelativeIRIType&, TaggingMode); -TaggingInfo identifier(const RelativeOIDType&, TaggingMode); -TaggingInfo identifier(const SequenceType&, TaggingMode); -TaggingInfo identifier(const SequenceOfType&, TaggingMode); -TaggingInfo identifier(const SetType&, TaggingMode); -TaggingInfo identifier(const SetOfType&, TaggingMode); -TaggingInfo identifier(const PrefixedType&, TaggingMode); -TaggingInfo identifier(const TaggedType& tagged_type, TaggingMode); -TaggingInfo identifier(const TimeType&, TaggingMode); -TaggingInfo identifier(const TimeOfDayType&, TaggingMode); -TaggingInfo identifier(const DefinedType&, TaggingMode); -TaggingInfo identifier(const BuiltinType& type, TaggingMode); -TaggingInfo identifier(const Type& type, TaggingMode); +TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BitStringType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BooleanType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const CharacterStringType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ChoiceType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DateType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DateTimeType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DurationType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const EmbeddedPDVType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const EnumeratedType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ExternalType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const InstanceOfType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const IntegerType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const IRIType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const NullType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ObjectClassFieldType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ObjectDescriptorType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ObjectIdentifierType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const OctetStringType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const RealType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const RelativeIRIType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const RelativeOIDType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SequenceType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SequenceOfType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SetType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SetOfType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const PrefixedType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const TaggedType& tagged_type, const Module&, const Asn1Tree&); +TaggingInfo identifier(const TimeType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const TimeOfDayType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DefinedType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BuiltinType& type, const Module&, const Asn1Tree&); +TaggingInfo identifier(const Type& type, const Module&, const Asn1Tree&); -TaggingInfo identifier(const AnyType&, TaggingMode) +TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&) { - return TaggingInfo{"ExplicitIdentifier", true}; + return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const BitStringType&, TaggingMode) +TaggingInfo identifier(const BitStringType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const BooleanType&, TaggingMode) +TaggingInfo identifier(const BooleanType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const CharacterStringType&, TaggingMode) +TaggingInfo identifier(const CharacterStringType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const ChoiceType&, TaggingMode) +TaggingInfo identifier(const ChoiceType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const DateType&, TaggingMode) +TaggingInfo identifier(const DateType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const DateTimeType&, TaggingMode) +TaggingInfo identifier(const DateTimeType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const DurationType&, TaggingMode) +TaggingInfo identifier(const DurationType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const EmbeddedPDVType&, TaggingMode) +TaggingInfo identifier(const EmbeddedPDVType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const EnumeratedType&, TaggingMode) +TaggingInfo identifier(const EnumeratedType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const ExternalType&, TaggingMode) +TaggingInfo identifier(const ExternalType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const GeneralizedTimeType&, TaggingMode) +TaggingInfo identifier(const GeneralizedTimeType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const InstanceOfType&, TaggingMode) +TaggingInfo identifier(const InstanceOfType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const IntegerType&, TaggingMode) +TaggingInfo identifier(const IntegerType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const IRIType&, TaggingMode) +TaggingInfo identifier(const IRIType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const NullType&, TaggingMode) +TaggingInfo identifier(const NullType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const ObjectClassFieldType&, TaggingMode) +TaggingInfo identifier(const ObjectClassFieldType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const ObjectDescriptorType&, TaggingMode) +TaggingInfo identifier(const ObjectDescriptorType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const ObjectIdentifierType&, TaggingMode) +TaggingInfo identifier(const ObjectIdentifierType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const OctetStringType&, TaggingMode) +TaggingInfo identifier(const OctetStringType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const RealType&, TaggingMode) +TaggingInfo identifier(const RealType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const RelativeIRIType&, TaggingMode) +TaggingInfo identifier(const RelativeIRIType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const RelativeOIDType&, TaggingMode) +TaggingInfo identifier(const RelativeOIDType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const SequenceType&, TaggingMode) +TaggingInfo identifier(const SequenceType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const SequenceOfType&, TaggingMode) +TaggingInfo identifier(const SequenceOfType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const SetType&, TaggingMode) +TaggingInfo identifier(const SetType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const SetOfType&, TaggingMode) +TaggingInfo identifier(const SetOfType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const PrefixedType& prefixed, TaggingMode tagging_mode) +TaggingInfo identifier(const PrefixedType& prefixed, const Module& current_module, const Asn1Tree& tree) { assert(prefixed.tagged_type); - return identifier(*prefixed.tagged_type, tagging_mode); + return identifier(*prefixed.tagged_type, current_module, tree); } -TaggingInfo identifier(const TaggedType& tagged_type, TaggingMode tagging_mode) +TaggingInfo identifier(const TaggedType& tagged_type, const Module& current_module, const Asn1Tree& tree) { std::string tag = ""; bool is_explicit = false; @@ -163,13 +165,15 @@ TaggingInfo identifier(const TaggedType& tagged_type, TaggingMode tagging_mode) } else { - is_explicit = (tagging_mode == TaggingMode::explicit_ || tagging_mode == TaggingMode::automatic); + is_explicit = (current_module.tagging_default == TaggingMode::explicit_ || + current_module.tagging_default == TaggingMode::automatic); } if (is_explicit) { tag = "TaggedExplicitIdentifier"; + std::to_string(tagged_type.tag.tag_number) + ", " + + identifier(tagged_type.type, current_module, tree).tag + ">"; } else { @@ -178,15 +182,15 @@ TaggingInfo identifier(const TaggedType& tagged_type, TaggingMode tagging_mode) } return TaggingInfo{tag, false}; } -TaggingInfo identifier(const TimeType&, TaggingMode) +TaggingInfo identifier(const TimeType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } -TaggingInfo identifier(const TimeOfDayType&, TaggingMode) +TaggingInfo identifier(const TimeOfDayType&, const Module&, const Asn1Tree&) { return TaggingInfo{"ExplicitIdentifier", true}; } @@ -196,31 +200,40 @@ struct IdentifierHelper template TaggingInfo operator()(const T& t) const { - return identifier(t, tagging_mode); + return identifier(t, current_module, tree); } - TaggingMode tagging_mode; + const Module& current_module; + const Asn1Tree& tree; }; -std::string fully_tagged_type(const Type& type, TaggingMode tagging_mode) +std::string fully_tagged_type(const Type& type, const Module& current_module, const Asn1Tree& tree) { - const TaggingInfo& tagging_info = identifier(type, tagging_mode); + const TaggingInfo& tagging_info = identifier(type, current_module, tree); if (tagging_info.is_default_tagged) { - return to_string(type); + return type_as_string(type, current_module, tree); } - return "TaggedType<" + to_string(type) + ", " + tagging_info.tag + ">"; + return "TaggedType<" + type_as_string(type, current_module, tree) + ", " + tagging_info.tag + ">"; } -TaggingInfo identifier(const DefinedType&, TaggingMode) { return TaggingInfo{"Unknown tag!", true}; } -TaggingInfo identifier(const BuiltinType& type, TaggingMode tagging_mode) +TaggingInfo identifier(const DefinedType& defined, const Module& current_module, const Asn1Tree&) +{ + const std::string& module_ref = + (defined.module_reference) ? *defined.module_reference : current_module.module_reference; + const std::string& type_string = + "decltype(identifier(static_cast<" + module_ref + "::" + defined.type_reference + "*>(nullptr)))"; + + return {type_string, true}; +} +TaggingInfo identifier(const BuiltinType& type, const Module& current_module, const Asn1Tree& tree) { - IdentifierHelper tag_helper{tagging_mode}; + IdentifierHelper tag_helper{current_module, tree}; return absl::visit(tag_helper, type); } -TaggingInfo identifier(const Type& type, TaggingMode tagging_mode) +TaggingInfo identifier(const Type& type, const Module& current_module, const Asn1Tree& tree) { - IdentifierHelper tag_helper{tagging_mode}; + IdentifierHelper tag_helper{current_module, tree}; return absl::visit(tag_helper, type); } diff --git a/include/fast_ber/compiler/ReorderAssignments.hpp b/include/fast_ber/compiler/ReorderAssignments.hpp index 12a520f0..598fcfd7 100644 --- a/include/fast_ber/compiler/ReorderAssignments.hpp +++ b/include/fast_ber/compiler/ReorderAssignments.hpp @@ -5,8 +5,9 @@ #include #include -#include "CompilerTypes.hpp" -#include "Dependencies.hpp" +#include "fast_ber/compiler/CompilerTypes.hpp" +#include "fast_ber/compiler/Dependencies.hpp" +#include "fast_ber/compiler/ResolveType.hpp" std::string to_string(const std::vector& assignments) { @@ -39,6 +40,71 @@ void check_duplicated_names(const std::vector& assignments, const st } } +void resolve_components_of(Asn1Tree& tree) +{ + for (Module& module : tree.modules) + { + for (Assignment& assignemnt : module.assignments) + { + if (absl::holds_alternative(assignemnt.specific)) + { + TypeAssignment& type_assignment = absl::get(assignemnt.specific); + if (is_sequence(type_assignment.type)) + { + SequenceType& sequence = absl::get(absl::get(type_assignment.type)); + for (auto iter = sequence.components.begin(); iter != sequence.components.end(); iter++) + { + if (iter->components_of) + { + if (is_defined(*iter->components_of)) + { + const DefinedType& defined = absl::get(*iter->components_of); + const Type& inheretied = resolve_type(tree, module.module_reference, defined); + if (is_sequence(inheretied)) + { + const SequenceType& inheretied_sequence = + absl::get(absl::get(inheretied)); + + iter = sequence.components.insert(iter, inheretied_sequence.components.begin(), + inheretied_sequence.components.end()); + std::advance(iter, inheretied_sequence.components.size()); + } + } + else if (is_sequence(*iter->components_of)) + { + const SequenceType& inheretied_sequence = + absl::get(absl::get(*iter->components_of)); + + iter = sequence.components.insert(iter, inheretied_sequence.components.begin(), + inheretied_sequence.components.end()); + std::advance(iter, inheretied_sequence.components.size()); + } + else if (is_set(*iter->components_of)) + { + const SetType& inheretied_set = + absl::get(absl::get(*iter->components_of)); + + iter = sequence.components.insert(iter, inheretied_set.components.begin(), + inheretied_set.components.end()); + std::advance(iter, inheretied_set.components.size()); + } + else + { + throw std::runtime_error("Strange type when resolving SEQUENCE OF in type" + + assignemnt.name); + } + } + } + sequence.components.erase( + std::remove_if(sequence.components.begin(), sequence.components.end(), + [](ComponentType& component) { return component.components_of; }), + sequence.components.end()); + } + } + } + } +} + void resolve_dependencies(const std::unordered_map& assignment_infos, const std::string& name, std::unordered_set& assigned_names, std::unordered_set& visited_names, @@ -256,7 +322,7 @@ std::vector split_definitions(const std::vector& assignm { split_assignments.push_back( Assignment{named_number.name, - ValueAssignment{BuiltinType{IntegerType{}}, Value{{}, named_number.number}}, + ValueAssignment{BuiltinType{IntegerType{}}, Value{named_number.number}}, {}, {}}); } diff --git a/include/fast_ber/compiler/ResolveType.hpp b/include/fast_ber/compiler/ResolveType.hpp new file mode 100644 index 00000000..8db8fb5d --- /dev/null +++ b/include/fast_ber/compiler/ResolveType.hpp @@ -0,0 +1,45 @@ +#pragma once + +#include "fast_ber/compiler/CompilerTypes.hpp" + +Type& resolve_type(std::vector& assignments, const std::string& type_reference) +{ + for (Assignment& assignemnt : assignments) + { + if (assignemnt.name == type_reference) + { + if (!absl::holds_alternative(assignemnt.specific)) + { + throw std::runtime_error("Object is not a type: " + type_reference); + } + return absl::get(assignemnt.specific).type; + } + } + + throw std::runtime_error("Reference to undefined type: " + type_reference); +} + +const Type& resolve_type(const std::vector& assignments, const std::string& type_reference) +{ + return resolve_type(const_cast&>(assignments), type_reference); +} + +Type& resolve_type(Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) +{ + const std::string& module_reference = + (defined.module_reference) ? *defined.module_reference : current_module_reference; + + for (Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return resolve_type(module.assignments, defined.type_reference); + } + } + throw std::runtime_error("Reference to undefined type: " + module_reference + "." + defined.type_reference); +} + +const Type& resolve_type(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) +{ + return resolve_type(const_cast(tree), current_module_reference, defined); +} diff --git a/include/fast_ber/compiler/TypeAsString.hpp b/include/fast_ber/compiler/TypeAsString.hpp new file mode 100644 index 00000000..977e2305 --- /dev/null +++ b/include/fast_ber/compiler/TypeAsString.hpp @@ -0,0 +1,295 @@ +#pragma once + +#include "fast_ber/compiler/CompilerTypes.hpp" + +std::string type_as_string(const AnyType&, const Module&, const Asn1Tree&); +std::string type_as_string(const BitStringType&, const Module&, const Asn1Tree&); +std::string type_as_string(const BooleanType&, const Module&, const Asn1Tree&); +std::string type_as_string(const CharacterStringType&, const Module&, const Asn1Tree&); +std::string type_as_string(const ChoiceType&, const Module&, const Asn1Tree&); +std::string type_as_string(const DateType&, const Module&, const Asn1Tree&); +std::string type_as_string(const DateTimeType&, const Module&, const Asn1Tree&); +std::string type_as_string(const DurationType&, const Module&, const Asn1Tree&); +std::string type_as_string(const EmbeddedPDVType&, const Module&, const Asn1Tree&); +std::string type_as_string(const EnumeratedType&, const Module&, const Asn1Tree&); +std::string type_as_string(const ExternalType&, const Module&, const Asn1Tree&); +std::string type_as_string(const GeneralizedTimeType& type, const Module&, const Asn1Tree&); +std::string type_as_string(const InstanceOfType&, const Module&, const Asn1Tree&); +std::string type_as_string(const IntegerType&, const Module&, const Asn1Tree&); +std::string type_as_string(const IRIType&, const Module&, const Asn1Tree& tree); +std::string type_as_string(const NullType&, const Module&, const Asn1Tree& tree); +std::string type_as_string(const ObjectClassFieldType&, const Module&, const Asn1Tree&); +std::string type_as_string(const ObjectDescriptorType&, const Module&, const Asn1Tree&); +std::string type_as_string(const ObjectIdentifierType&, const Module&, const Asn1Tree&); +std::string type_as_string(const OctetStringType&, const Module&, const Asn1Tree&); +std::string type_as_string(const RealType&, const Module&, const Asn1Tree&); +std::string type_as_string(const RelativeIRIType&, const Module&, const Asn1Tree&); +std::string type_as_string(const RelativeOIDType&, const Module&, const Asn1Tree&); +std::string type_as_string(const SequenceType&, const Module&, const Asn1Tree&); +std::string type_as_string(const SequenceOfType&, const Module&, const Asn1Tree&); +std::string type_as_string(const SetType&, const Module&, const Asn1Tree&); +std::string type_as_string(const SetOfType&, const Module&, const Asn1Tree&); +std::string type_as_string(const PrefixedType&, const Module&, const Asn1Tree&); +std::string type_as_string(const TimeType&, const Module&, const Asn1Tree&); +std::string type_as_string(const TimeOfDayType&, const Module&, const Asn1Tree&); +std::string type_as_string(const UTCTimeType&, const Module&, const Asn1Tree&); +std::string type_as_string(const DefinedType&, const Module&, const Asn1Tree&); +std::string type_as_string(const BuiltinType&, const Module&, const Asn1Tree&); +std::string type_as_string(const Type&, const Module&, const Asn1Tree&); +std::string fully_tagged_type(const Type& type, const Module&, const Asn1Tree&); + +TaggingInfo identifier(const DefinedType&, const Module&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BuiltinType& type, const Module&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const Type& type, const Module&, const Module&, const Asn1Tree&); + +std::string type_as_string(const AnyType&, const Module&, const Asn1Tree&) { return "Any"; } +std::string type_as_string(const BitStringType&, const Module&, const Asn1Tree&) { return "BitString"; } +std::string type_as_string(const BooleanType&, const Module&, const Asn1Tree&) { return "Boolean"; } +std::string type_as_string(const CharacterStringType&, const Module&, const Asn1Tree&) { return "CharacterString"; } +std::string type_as_string(const ChoiceType& choice, const Module& module, const Asn1Tree& tree) +{ + bool is_first = true; + std::string res = "Choice<"; + for (const auto& named_type : choice.choices) + { + if (!is_first) + res += ", "; + + if (is_sequence(named_type.type)) + { + res += "UnnamedSequence" + std::to_string(unnamed_definition_reference_num++); + } + else if (is_set(named_type.type)) + { + res += "UnnamedSet" + std::to_string(unnamed_definition_reference_num++); + } + else if (is_enumerated(named_type.type)) + { + return "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + else + { + res += fully_tagged_type(named_type.type, module, tree); + } + + is_first = false; + } + + res += ">"; + return res; +} +std::string type_as_string(const DateType&, const Module&, const Asn1Tree&) { return "Date"; } +std::string type_as_string(const DateTimeType&, const Module&, const Asn1Tree&) { return "DateTime"; } +std::string type_as_string(const DurationType&, const Module&, const Asn1Tree&) { return "Duration"; } +std::string type_as_string(const EmbeddedPDVType&, const Module&, const Asn1Tree&) { return "EmbeddedPDV"; } +std::string type_as_string(const EnumeratedType& enumerated, const Module&, const Asn1Tree&) +{ + std::string res = " {\n"; + for (const EnumerationValue& enum_value : enumerated.enum_values) + { + res += " " + enum_value.name; + if (enum_value.value) + { + res += " = " + std::to_string(*enum_value.value); + } + res += ",\n"; + } + res += "};\n\n"; + + return res; +} +std::string type_as_string(const ExternalType&, const Module&, const Asn1Tree&) { return "External"; } +std::string type_as_string(const GeneralizedTimeType&, const Module&, const Asn1Tree&) { return "GeneralizedTime"; } +std::string type_as_string(const InstanceOfType&, const Module&, const Asn1Tree&) { return "InstanceOf"; } +std::string type_as_string(const IntegerType&, const Module&, const Asn1Tree&) { return "Integer"; } +std::string type_as_string(const IRIType&, const Module&, const Asn1Tree&) { return "IRI"; } +std::string type_as_string(const NullType&, const Module&, const Asn1Tree&) { return "Null"; } +std::string type_as_string(const ObjectClassFieldType&, const Module&, const Asn1Tree&) { return "ObjectClassField"; } +std::string type_as_string(const ObjectDescriptorType&, const Module&, const Asn1Tree&) { return "ObjectDescriptor"; } +std::string type_as_string(const ObjectIdentifierType&, const Module&, const Asn1Tree&) { return "ObjectIdentifier"; } +std::string type_as_string(const OctetStringType&, const Module&, const Asn1Tree&) { return "OctetString"; } +std::string type_as_string(const RealType&, const Module&, const Asn1Tree&) { return "Real"; } +std::string type_as_string(const RelativeIRIType&, const Module&, const Asn1Tree&) { return "RelativeIRI"; } +std::string type_as_string(const RelativeOIDType&, const Module&, const Asn1Tree&) { return "RelativeOID"; } +std::string type_as_string(const SequenceType& sequence, const Module& module, const Asn1Tree& tree) +{ + std::string res = " {\n"; + + for (const ComponentType& component : sequence.components) + { + std::string component_type = type_as_string(component.named_type.type, module, tree); + if (is_enumerated(component.named_type.type)) + { + component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + + if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) + { + res += "struct " + component.named_type.name + "_type " + component_type; + res += " " + component.named_type.name + "_type " + component.named_type.name + ";\n"; + } + else + { + if (component.is_optional) + { + component_type = make_type_optional(component_type); + } + res += " " + component_type + " " + component.named_type.name + ";\n"; + } + } + res += "};\n"; + + return res; +} +std::string type_as_string(const SequenceOfType& sequence, const Module& module, const Asn1Tree& tree) +{ + const Type& type = sequence.has_name ? sequence.named_type->type : *sequence.type; + + if (is_sequence(type)) + { + if (sequence.has_name) + { + return "SequenceOf<" + sequence.named_type->name + ">"; + } + return "SequenceOf"; + } + else if (is_set(type)) + { + if (sequence.has_name) + { + return "SequenceOf<" + sequence.named_type->name + ">"; + } + return "SequenceOf"; + } + else if (is_enumerated(type)) + { + if (sequence.has_name) + { + return "SequenceOf<" + sequence.named_type->name + ">"; + } + return "SequenceOf"; + } + else + { + return "SequenceOf<" + type_as_string(type, module, tree) + ">"; + } +} +std::string type_as_string(const SetType& set, const Module& module, const Asn1Tree& tree) +{ + std::string res = " {\n"; + + for (const ComponentType& component : set.components) + { + std::string component_type = type_as_string(component.named_type.type, module, tree); + if (is_enumerated(component.named_type.type)) + { + component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + + if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) + { + res += " struct " + component.named_type.name + "_type " + component_type; + res += component.named_type.name + "_type " + component.named_type.name + ";\n"; + } + else + { + if (component.is_optional) + { + component_type = make_type_optional(component_type); + } + res += " " + component_type + " " + component.named_type.name + ";\n"; + } + } + res += "};\n"; + + return res; +} +std::string type_as_string(const SetOfType& set, const Module& module, const Asn1Tree& tree) +{ + const Type& type = set.has_name ? set.named_type->type : *set.type; + + if (is_sequence(type)) + { + if (set.has_name) + { + return "SequenceOf<" + set.named_type->name + ">"; + } + return "SequenceOf"; + } + else if (is_set(type)) + { + if (set.has_name) + { + return "SequenceOf<" + set.named_type->name + ">"; + } + return "SequenceOf"; + } + else if (is_enumerated(type)) + { + if (set.has_name) + { + return "SequenceOf<" + set.named_type->name + ">"; + } + return "SequenceOf"; + } + else + { + return "SequenceOf<" + type_as_string(type, module, tree) + ">"; + } +} +std::string type_as_string(const PrefixedType& prefixed_type, const Module& module, const Asn1Tree& tree) +{ + if (is_sequence(prefixed_type.tagged_type->type)) + { + return "UnnamedSequence" + std::to_string(unnamed_definition_reference_num++); + } + else if (is_set(prefixed_type.tagged_type->type)) + { + return "UnnamedSet" + std::to_string(unnamed_definition_reference_num++); + } + else if (is_enumerated(prefixed_type.tagged_type->type)) + { + return "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + return type_as_string(prefixed_type.tagged_type->type, module, tree); +} +std::string type_as_string(const TimeType&, const Module&, const Asn1Tree&) { return "Time"; } +std::string type_as_string(const TimeOfDayType&, const Module&, const Asn1Tree&) { return "TimeOfDay"; } +std::string type_as_string(const UTCTimeType&, const Module&, const Asn1Tree&) { return "UTCTime"; } + +std::string type_as_string(const DefinedType& type, const Module& module, const Asn1Tree& tree) +{ + if (!type.parameters.empty()) + { + std::set parameter_types; + for (const Type& paramter : type.parameters) + { + parameter_types.insert(type_as_string(paramter, module, tree)); + } + return type.type_reference + create_template_arguments(parameter_types); + } + return type.type_reference; +} + +struct ToStringHelper +{ + template + std::string operator()(const T& t) + { + return type_as_string(t, module, tree); + } + + const Module& module; + const Asn1Tree& tree; +}; + +std::string type_as_string(const BuiltinType& type, const Module& module, const Asn1Tree& tree) +{ + ToStringHelper string_helper{module, tree}; + return absl::visit(string_helper, type); +} +std::string type_as_string(const Type& type, const Module& module, const Asn1Tree& tree) +{ + ToStringHelper string_helper{module, tree}; + return absl::visit(string_helper, type); +} diff --git a/src/compiler/CompilerMain.cpp b/src/compiler/CompilerMain.cpp index 01de480f..0574b18b 100644 --- a/src/compiler/CompilerMain.cpp +++ b/src/compiler/CompilerMain.cpp @@ -4,6 +4,8 @@ #include "fast_ber/compiler/Dependencies.hpp" #include "fast_ber/compiler/Identifier.hpp" #include "fast_ber/compiler/ReorderAssignments.hpp" +#include "fast_ber/compiler/ResolveType.hpp" +#include "fast_ber/compiler/TypeAsString.hpp" #include #include @@ -18,39 +20,43 @@ std::string strip_path(const std::string& path) return path.substr(found + 1); } -std::string create_type_assignment(const std::string& name, const Type& type, const TaggingMode& tagging_mode) +std::string create_type_assignment(const std::string& name, const Type& type, const Module& module, + const Asn1Tree& tree) { if (is_set(type) || is_sequence(type)) { - return "struct " + name + to_string(type); + return "struct " + name + type_as_string(type, module, tree); } else if (is_enumerated(type)) { - return "enum class " + name + to_string(type); + return "enum class " + name + type_as_string(type, module, tree); } else { - return "using " + name + " = " + fully_tagged_type(type, tagging_mode) + ";\n"; + return "using " + name + " = " + fully_tagged_type(type, module, tree) + ";\n"; } } -std::string create_type_assignment(const Assignment& assignment, const TaggingMode& tagging_mode) +std::string create_type_assignment(const Assignment& assignment, const Module& module, const Asn1Tree& tree) { const std::string& template_definition = create_template_definition(assignment.parameters); return template_definition + - create_type_assignment(assignment.name, absl::get(assignment.specific).type, tagging_mode) + + create_type_assignment(assignment.name, absl::get(assignment.specific).type, module, tree) + "\n"; } -std::string create_assignment(const Assignment& assignment, TaggingMode tagging_mode) +std::string create_assignment(const Asn1Tree& tree, const Module& module, const Assignment& assignment) { if (absl::holds_alternative(assignment.specific)) // Value assignment { const ValueAssignment& value_assign = absl::get(assignment.specific); - std::string result = fully_tagged_type(value_assign.type, tagging_mode) + " " + assignment.name + " = "; + std::string result = fully_tagged_type(value_assign.type, module, tree) + " " + assignment.name + " = "; - if (is_oid(value_assign.type) || (is_defined(value_assign.type) && absl::holds_alternative>( - value_assign.value.value_selection))) + const Type& assigned_to_type = + (is_defined(value_assign.type)) + ? resolve_type(tree, module.module_reference, absl::get(value_assign.type)) + : value_assign.type; + if (is_oid(assigned_to_type)) { result += "ObjectIdentifier{"; try @@ -82,17 +88,24 @@ std::string create_assignment(const Assignment& assignment, TaggingMode tagging_ } result += "}"; } + else if (is_bit_string(assigned_to_type)) + { + if (absl::holds_alternative(value_assign.value.value_selection)) + { + const BitStringValue& bstring = absl::get(value_assign.value.value_selection); + (void)bstring; // TODO: convert bstring to cstring + result += "\"\""; + } + else + { + result += "\"\""; + } + } else if (absl::holds_alternative(value_assign.value.value_selection)) { const std::string& string = absl::get(value_assign.value.value_selection); result += string; } - else if (absl::holds_alternative(value_assign.value.value_selection)) - { - const BitStringValue& bstring = absl::get(value_assign.value.value_selection); - (void)bstring; // TODO: convert bstring to cstring - result += "\"\""; - } else if (absl::holds_alternative(value_assign.value.value_selection)) { const HexStringValue& hstring = absl::get(value_assign.value.value_selection); @@ -108,12 +121,18 @@ std::string create_assignment(const Assignment& assignment, TaggingMode tagging_ const int64_t integer = absl::get(value_assign.value.value_selection); result += std::to_string(integer); } + else if (absl::holds_alternative(value_assign.value.value_selection)) + { + const DefinedValue& defined = absl::get(value_assign.value.value_selection); + result += defined.reference; + } + result += ";\n"; return result; } else if (absl::holds_alternative(assignment.specific)) { - return create_type_assignment(assignment, tagging_mode); + return create_type_assignment(assignment, module, tree); } else if (absl::holds_alternative(assignment.specific)) { @@ -165,9 +184,9 @@ std::string collection_name(const SequenceType&) { return "sequence"; } std::string collection_name(const SetType&) { return "set"; } template -std::string create_collection_encode_functions(const std::string assignment_name, - const std::set& parameters, - const CollectionType& collection, const Module& module) +std::string +create_collection_encode_functions(const std::string assignment_name, const std::set& parameters, + const CollectionType& collection, const Module& module, const Asn1Tree tree) { std::string res; std::string tags_class = module.module_reference + "_" + assignment_name + "Tags"; @@ -180,20 +199,15 @@ std::string create_collection_encode_functions(const std::string assi res += "static constexpr auto " + component.named_type.name + " = "; if (is_prefixed(component.named_type.type)) { - res += identifier(component.named_type.type, module.tagging_default).tag + "{}"; + res += identifier(component.named_type.type, module, tree).tag + "{}"; } else if (module.tagging_default == TaggingMode::automatic) { res += "ImplicitIdentifier{}"; } - else if (is_defined(component.named_type.type)) - { - const DefinedType& defined = absl::get(component.named_type.type); - res += "identifier(static_cast<" + module.module_reference + "::" + defined.name + "*>(nullptr))"; - } else { - res += identifier(component.named_type.type, module.tagging_default).tag + "{}"; + res += identifier(component.named_type.type, module, tree).tag + "{}"; } res += ";\n"; } @@ -207,14 +221,14 @@ std::string create_collection_encode_functions(const std::string assi const SequenceType& sequence = absl::get(absl::get(component.named_type.type)); res += create_collection_encode_functions(assignment_name + "::" + component.named_type.name + "_type", - parameters, sequence, module); + parameters, sequence, module, tree); } else if (is_set(component.named_type.type)) { const SetType& set = absl::get(absl::get(component.named_type.type)); res += create_collection_encode_functions(assignment_name + "::" + component.named_type.name + "_type", - parameters, set, module); + parameters, set, module, tree); } } @@ -288,7 +302,7 @@ std::string create_collection_decode_functions(const std::string assi return res; } -std::string create_encode_functions(const Assignment& assignment, const Module& module) +std::string create_encode_functions(const Assignment& assignment, const Module& module, const Asn1Tree& tree) { if (absl::holds_alternative(assignment.specific)) { @@ -297,13 +311,13 @@ std::string create_encode_functions(const Assignment& assignment, const Module& if (is_sequence(type_assignment.type)) { const SequenceType& sequence = absl::get(absl::get(type_assignment.type)); - return create_collection_encode_functions(assignment.name, assignment.parameters, sequence, module); + return create_collection_encode_functions(assignment.name, assignment.parameters, sequence, module, tree); } else if (is_set(type_assignment.type)) { std::string res; const SetType& set = absl::get(absl::get(type_assignment.type)); - return create_collection_encode_functions(assignment.name, assignment.parameters, set, module); + return create_collection_encode_functions(assignment.name, assignment.parameters, set, module, tree); } } @@ -417,7 +431,7 @@ std::string create_helper_functions(const Assignment& assignment) return ""; } -std::string create_body(const Module& module) +std::string create_body(const Asn1Tree& tree, const Module& module) { std::string output; output += "\n"; @@ -436,7 +450,7 @@ std::string create_body(const Module& module) for (const Assignment& assignment : module.assignments) { - output += create_assignment(assignment, module.tagging_default); + output += create_assignment(tree, module, assignment); } return output; @@ -462,7 +476,7 @@ std::string create_detail_body(const Asn1Tree& tree) std::string helpers; for (const Assignment& assignment : module.assignments) { - body += create_encode_functions(assignment, module); + body += create_encode_functions(assignment, module, tree); body += create_decode_functions(assignment, module) + "\n"; helpers += create_helper_functions(assignment); } @@ -483,7 +497,7 @@ std::string create_output_file(const Asn1Tree& tree, const std::string detail_fi std::string definitions; for (const auto& module : tree.modules) { - definitions += add_namespace(module.module_reference, create_body(module)); + definitions += add_namespace(module.module_reference, create_body(tree, module)); } output += add_namespace("fast_ber", definitions) + '\n'; @@ -550,6 +564,7 @@ int main(int argc, char** argv) module.assignments = reorder_assignments(module.assignments, module.imports); module.assignments = split_nested_structures(module.assignments); } + resolve_components_of(context.asn1_tree); output_file << create_output_file(context.asn1_tree, detail_filame); detail_output_file << create_detail_body(context.asn1_tree); diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 5ed0fd69..795f3c82 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -214,6 +214,7 @@ %type DefinedValue %type BuiltinType; %type DefinedType; +%type ExternalTypeReference; %type SimpleDefinedType; %type ParameterizedType; %type Enumerations; @@ -841,8 +842,9 @@ Assignment: DefinedType: ExternalTypeReference + { $$ = $1; } | typereference - { $$ = DefinedType{$1, {}}; } + { $$ = DefinedType{absl::nullopt, $1, {}}; } | ParameterizedType { $$ = $1; } //| ParameterizedValueSetType; @@ -855,7 +857,7 @@ DefinedValue: ParameterizedType: SimpleDefinedType "{" ActualParameterList "}" - { $$ = DefinedType{$1, $3}; } + { $$ = DefinedType{ absl::nullopt, $1, $3}; } ParameterizedValue: SimpleDefinedValue "{" ActualParameterList "}" @@ -882,7 +884,8 @@ NonParameterizedTypeName: | xmlasn1typename; ExternalTypeReference: - typereference "." typereference; // Param one is actually modulereference, but this causes parsing clash + typereference "." typereference // Param one is actually modulereference, but this causes parsing clash + { $$ = DefinedType{$1, $3, {}}; } ExternalValueReference: modulereference @@ -989,7 +992,7 @@ ValueWithoutTypeIdentifier: | CONTAINING Value { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } | DefinedValue - { $$.defined_value = $1; } + { $$.value_selection = $1; } | GENERIC_IDENTIFIER_LOWERCASE "(" number ")" { $$.value_selection = NamedNumber{$1, $3}; } | ":" @@ -1112,7 +1115,9 @@ RealType: BitStringType: BIT STRING -| BIT STRING "{" NamedBitList "}"; + { $$ = BitStringType{}; } +| BIT STRING "{" NamedBitList "}" + { $$ = BitStringType{}; } NamedBitList: NamedBit @@ -1173,12 +1178,13 @@ ComponentTypeList: ComponentType: NamedType - { $$ = ComponentType{$1, false, absl::nullopt}; } + { $$ = ComponentType{$1, false, absl::nullopt, absl::nullopt}; } | NamedType OPTIONAL - { $$ = ComponentType{$1, true, absl::nullopt}; } + { $$ = ComponentType{$1, true, absl::nullopt, absl::nullopt}; } | NamedType DEFAULT SingleValue - { $$ = ComponentType{$1, false, $3}; } + { $$ = ComponentType{$1, false, $3, absl::nullopt}; } | COMPONENTS OF Type + { $$ = ComponentType{{}, false, absl::nullopt, $3}; } SequenceValue: "{" ComponentValueList "}" diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index 0f45eb9e..78e0317d 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -1,5 +1,5 @@ /* Generated by re2c 1.1.1 */ -#line 1 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 1 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // A Bison parser, made by GNU Bison 3.0.4. // Skeleton implementation for Bison LALR(1) parsers in C++ @@ -35,7 +35,7 @@ // First part of user declarations. -#line 37 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:404 +#line 37 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:404 # ifndef YY_NULLPTR # if defined __cplusplus && 201103L <= __cplusplus @@ -50,7 +50,7 @@ #include "fast_ber/compiler/CompilerTypes.hpp" -#line 52 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 52 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:408 # include # include // std::abort @@ -125,7 +125,7 @@ namespace yy { -#line 127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 127 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:408 template > class stack @@ -709,6 +709,7 @@ namespace yy { // DefinedType // ParameterizedType + // ExternalTypeReference char dummy12[sizeof(DefinedType)]; // DefinedValue @@ -2231,6 +2232,7 @@ namespace yy { case 252: // DefinedType case 254: // ParameterizedType + case 258: // ExternalTypeReference value.copy< DefinedType > (other.value); break; @@ -2538,6 +2540,7 @@ namespace yy { case 252: // DefinedType case 254: // ParameterizedType + case 258: // ExternalTypeReference value.copy< DefinedType > (v); break; @@ -3282,6 +3285,7 @@ namespace yy { case 252: // DefinedType case 254: // ParameterizedType + case 258: // ExternalTypeReference value.template destroy< DefinedType > (); break; @@ -3595,6 +3599,7 @@ namespace yy { case 252: // DefinedType case 254: // ParameterizedType + case 258: // ExternalTypeReference value.move< DefinedType > (s.value); break; @@ -4787,7 +4792,7 @@ namespace yy { } // yy -#line 4789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 4794 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:408 @@ -4795,7 +4800,7 @@ namespace yy { // User implementation prologue. -#line 4797 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 +#line 4802 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:412 // Unqualified %code blocks. #line 15 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:413 @@ -4814,7 +4819,7 @@ namespace yy { namespace yy { asn1_parser::symbol_type yylex(Context& c); } -#line 4816 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 +#line 4821 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:413 #ifndef YY_ @@ -4900,7 +4905,7 @@ namespace yy { namespace yy { -#line 4902 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 +#line 4907 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:479 /* Return YYSTR after stripping away unnecessary quotes and backslashes, so that it's suitable for yyerror. The heuristic is @@ -5070,6 +5075,7 @@ namespace yy { case 252: // DefinedType case 254: // ParameterizedType + case 258: // ExternalTypeReference value.move< DefinedType > (that.value); break; @@ -5375,6 +5381,7 @@ namespace yy { case 252: // DefinedType case 254: // ParameterizedType + case 258: // ExternalTypeReference value.copy< DefinedType > (that.value); break; @@ -5893,6 +5900,7 @@ namespace yy { case 252: // DefinedType case 254: // ParameterizedType + case 258: // ExternalTypeReference yylhs.value.build< DefinedType > (); break; @@ -6143,1216 +6151,1246 @@ namespace yy { switch (yyn) { case 4: -#line 322 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 323 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< Module > ().module_reference = yystack_[9].value.as< std::string > (); yystack_[2].value.as< Module > ().tagging_default = yystack_[6].value.as< TaggingMode > (); context.asn1_tree.modules.push_back(yystack_[2].value.as< Module > ()); } -#line 6149 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6157 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 12: -#line 343 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 344 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[2].value.as< std::string > (), ObjectClassAssignment{}}; } -#line 6155 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6163 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 86: -#line 505 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 506 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[3].value.as< std::string > (), ObjectSetAssignment{}}; } -#line 6161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6169 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 95: -#line 532 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 533 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6175 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 96: -#line 534 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 535 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6181 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 97: -#line 536 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 537 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6187 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 98: -#line 538 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 539 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6193 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 99: -#line 540 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 541 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6191 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6199 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 100: -#line 545 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 546 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {}, yystack_[2].value.as< std::set > () }; } -#line 6197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6205 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 101: -#line 549 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 550 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6203 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6211 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 102: -#line 553 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 554 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6209 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6217 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 103: -#line 557 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 558 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6215 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6223 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 104: -#line 561 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 562 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6221 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6229 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 105: -#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 570 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[1].value.as< std::set > (); } -#line 6227 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6235 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 106: -#line 573 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 574 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6233 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6241 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 107: -#line 575 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 576 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[2].value.as< std::set > (); yystack_[2].value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6239 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6247 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 108: -#line 579 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 580 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6245 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6253 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 109: -#line 581 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 582 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6251 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6259 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 118: -#line 634 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 635 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6265 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 132: -#line 659 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 660 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Simple constraint\n"; } -#line 6263 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6271 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 133: -#line 661 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 662 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Relation constraint\n"; } -#line 6269 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6277 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 146: -#line 703 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 704 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6285 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 161: -#line 742 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 743 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6283 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6291 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 162: -#line 744 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 745 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::implicit; } -#line 6289 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6297 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 163: -#line 746 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 747 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::automatic; } -#line 6295 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6303 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 164: -#line 748 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 749 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6301 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6309 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 167: -#line 756 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 757 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Module > () = Module{ {}, TaggingMode(), yystack_[2].value.as< std::vector > (), yystack_[1].value.as< std::vector > (), yystack_[0].value.as< std::vector > ()}; } -#line 6307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6315 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 168: -#line 758 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 759 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { } -#line 6313 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6321 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 174: -#line 771 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 772 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } -#line 6319 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6327 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 176: -#line 776 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 777 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6333 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 178: -#line 781 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 782 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6331 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6339 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 179: -#line 783 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 784 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6337 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6345 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 180: -#line 787 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 788 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Import > () = Import{ yystack_[0].value.as< std::string > (), yystack_[2].value.as< std::vector > () }; } -#line 6343 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6351 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 181: -#line 791 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 792 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6349 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6357 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 185: -#line 800 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 801 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6363 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 186: -#line 802 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 803 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6361 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6369 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 187: -#line 806 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 807 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6375 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 188: -#line 810 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 811 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6373 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6381 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 189: -#line 812 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 813 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[2].value.as< std::string > (); } -#line 6379 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6387 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 190: -#line 814 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 815 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6385 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6393 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 191: -#line 823 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 824 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } -#line 6391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6399 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 192: -#line 825 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 826 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Assignment > ()); } -#line 6397 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6405 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 193: -#line 829 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 830 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6403 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6411 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 194: -#line 831 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 832 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6409 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6417 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 195: -#line 833 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 834 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6415 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6423 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 196: -#line 835 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 836 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6429 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 197: -#line 838 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 839 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6435 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 198: -#line 840 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 841 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6441 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 200: + case 199: #line 845 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< DefinedType > () = DefinedType{yystack_[0].value.as< std::string > (), {}}; } -#line 6439 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } +#line 6447 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 201: + case 200: #line 847 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< DefinedType > () = DefinedType{absl::nullopt, yystack_[0].value.as< std::string > (), {}}; } +#line 6453 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 201: +#line 849 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6445 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6459 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 202: -#line 853 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 855 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedValue > () = DefinedValue{yystack_[0].value.as< std::string > ()}; } -#line 6451 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6465 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 204: -#line 858 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< DefinedType > () = DefinedType{yystack_[3].value.as< std::string > (), yystack_[1].value.as< std::vector > ()}; } -#line 6457 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 860 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< DefinedType > () = DefinedType{ absl::nullopt, yystack_[3].value.as< std::string > (), yystack_[1].value.as< std::vector > ()}; } +#line 6471 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 206: -#line 865 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 867 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Type > ()); } -#line 6463 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6477 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 207: -#line 867 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 869 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[2].value.as< Type > ()); } -#line 6469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6483 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 208: -#line 871 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 873 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6475 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6489 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 209: -#line 873 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 875 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not yet dealing with value paramaters\n"; } -#line 6481 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6495 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 211: +#line 888 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< DefinedType > () = DefinedType{yystack_[2].value.as< std::string > (), yystack_[0].value.as< std::string > (), {}}; } +#line 6501 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 213: -#line 914 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 917 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[2].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {} }; } -#line 6487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6507 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 214: -#line 918 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 921 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ValueAssignment{yystack_[2].value.as< Type > (), yystack_[0].value.as< Value > ()}, {} }; } -#line 6493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6513 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 215: -#line 922 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 925 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[2].value.as< Type > ()}, {} }; } -#line 6499 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6519 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 216: -#line 926 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 929 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< BuiltinType > (); } -#line 6505 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6525 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 217: -#line 928 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 931 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6511 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6531 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 218: -#line 930 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 933 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< DefinedType > (); } -#line 6517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6537 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 219: -#line 932 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 935 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - SelectionType\n"; } -#line 6523 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6543 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 220: -#line 934 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 937 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - TypeFromObject\n"; } -#line 6529 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6549 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 221: -#line 938 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 941 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = AnyType(); } -#line 6535 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6555 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 222: -#line 939 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 942 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } -#line 6541 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6561 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 223: -#line 940 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 943 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } -#line 6547 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6567 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 224: -#line 941 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 944 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } -#line 6553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6573 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 225: -#line 942 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 945 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } -#line 6559 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6579 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 226: -#line 943 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 946 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } -#line 6565 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6585 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 227: -#line 944 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } -#line 6571 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6591 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 228: -#line 945 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 948 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } -#line 6577 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6597 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 229: -#line 946 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 949 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } -#line 6583 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6603 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 230: -#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 950 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } -#line 6589 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6609 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 231: -#line 948 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } -#line 6595 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6615 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 232: -#line 949 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 952 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } -#line 6601 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6621 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 233: -#line 950 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 953 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } -#line 6607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6627 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 234: -#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 954 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } -#line 6613 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6633 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 235: -#line 952 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } -#line 6619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6639 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 236: -#line 953 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 956 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } -#line 6625 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6645 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 237: -#line 954 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 957 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } -#line 6631 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6651 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 238: -#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 958 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } -#line 6637 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6657 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 239: -#line 956 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } -#line 6643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6663 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 240: -#line 957 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 960 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } -#line 6649 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6669 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 241: -#line 958 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 961 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } -#line 6655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6675 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 242: -#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 962 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } -#line 6661 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6681 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 243: -#line 960 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } -#line 6667 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6687 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 244: -#line 961 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 964 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } -#line 6673 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6693 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 245: -#line 962 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } -#line 6679 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6699 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 246: -#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 966 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } -#line 6685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6705 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 247: -#line 964 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } -#line 6691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6711 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 248: -#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 968 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } -#line 6697 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6717 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 249: -#line 966 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 969 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } -#line 6703 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6723 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 250: -#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 970 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } -#line 6709 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6729 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 251: -#line 968 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = UTCTimeType(); } -#line 6715 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6735 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 252: -#line 972 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } -#line 6721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6741 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 253: -#line 976 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } -#line 6727 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6747 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 254: -#line 978 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } -#line 6733 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6753 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 255: -#line 980 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 983 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } -#line 6739 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6759 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 256: -#line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } -#line 6745 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6765 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 257: -#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = BitStringValue{yystack_[0].value.as< std::string > ()}; } -#line 6751 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6771 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 258: -#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = HexStringValue{yystack_[0].value.as< std::string > ()}; } -#line 6757 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6777 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 259: -#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = CharStringValue{yystack_[0].value.as< std::string > ()}; } -#line 6763 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6783 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 260: -#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 993 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } -#line 6769 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6789 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 261: -#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Value > ().defined_value = yystack_[0].value.as< DefinedValue > (); } -#line 6775 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< DefinedValue > (); } +#line 6795 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 262: -#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } -#line 6781 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6801 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 264: -#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } -#line 6787 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6807 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 265: -#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1002 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } -#line 6793 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6813 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 266: -#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 6799 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6819 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 267: -#line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1006 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 6805 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6825 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 268: -#line 1007 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1010 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } -#line 6811 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6831 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 269: -#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1012 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } -#line 6817 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6837 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 270: -#line 1011 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1014 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } -#line 6823 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6843 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 271: -#line 1013 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1016 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 6829 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6849 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 272: -#line 1015 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1018 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BY\n"); } -#line 6835 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6855 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 273: -#line 1017 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1020 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } -#line 6841 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6861 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 274: -#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1024 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } -#line 6847 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6867 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 275: -#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1026 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } -#line 6853 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6873 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 281: -#line 1038 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1041 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 6859 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6879 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 282: -#line 1040 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1043 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 6865 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6885 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 286: -#line 1055 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1058 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{{}}; } -#line 6871 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6891 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 287: -#line 1057 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1060 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } -#line 6877 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6897 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 288: -#line 1061 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1064 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } -#line 6883 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6903 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 289: -#line 1063 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1066 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } -#line 6889 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6909 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 290: -#line 1067 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1070 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } -#line 6895 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6915 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 291: -#line 1069 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1072 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } -#line 6901 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6921 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 292: -#line 1073 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1076 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } -#line 6907 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6927 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 293: -#line 1075 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1078 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } -#line 6913 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6933 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 294: -#line 1079 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1082 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } -#line 6919 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6939 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 295: -#line 1083 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1086 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[0].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = false; } -#line 6926 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6946 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 296: -#line 1086 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1089 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[3].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; } -#line 6933 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6953 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 297: -#line 1089 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1092 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[5].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; yylhs.value.as< EnumeratedType > ().enum_values.insert(yylhs.value.as< EnumeratedType > ().enum_values.end(), yystack_[0].value.as< EnumeratedType > ().enum_values.begin(), yystack_[0].value.as< EnumeratedType > ().enum_values.end()); } -#line 6941 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6961 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 299: -#line 1096 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1099 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6947 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6967 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 300: -#line 1098 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1101 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6953 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6973 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 301: -#line 1102 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1105 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } -#line 6959 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6979 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 302: -#line 1104 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1107 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } -#line 6966 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6986 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 304: +#line 1118 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BitStringType > () = BitStringType{}; } +#line 6992 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 305: +#line 1120 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< BitStringType > () = BitStringType{}; } +#line 6998 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 312: -#line 1144 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1149 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType(); } -#line 6972 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7004 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 313: -#line 1146 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1151 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 6978 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7010 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 314: -#line 1150 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1155 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 6984 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7016 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 315: -#line 1152 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1157 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } -#line 6990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7022 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 316: -#line 1154 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1159 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 6996 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7028 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 317: -#line 1156 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1161 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } -#line 7002 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7034 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 318: -#line 1158 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1163 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7008 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7040 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 319: -#line 1160 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1165 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7014 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7046 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 320: -#line 1162 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1167 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7020 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7052 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 321: -#line 1164 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1169 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7026 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7058 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 322: -#line 1166 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1171 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7032 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7064 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 323: -#line 1170 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1175 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } -#line 7038 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7070 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 324: -#line 1172 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1177 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7044 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7076 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 325: -#line 1176 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt}; } -#line 7050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1181 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt, absl::nullopt}; } +#line 7082 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 326: -#line 1178 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt}; } -#line 7056 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1183 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt, absl::nullopt}; } +#line 7088 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 327: -#line 1180 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > ()}; } -#line 7062 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1185 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > (), absl::nullopt}; } +#line 7094 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 328: +#line 1187 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ComponentType > () = ComponentType{{}, false, absl::nullopt, yystack_[0].value.as< Type > ()}; } +#line 7100 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 329: -#line 1193 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7106 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 330: -#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7074 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7112 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 331: -#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{}; } -#line 7080 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7118 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 332: -#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7124 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 333: -#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7092 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7130 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 334: -#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1213 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7098 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7136 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 335: -#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } -#line 7104 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7142 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 336: -#line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7148 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 337: -#line 1219 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1225 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7154 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 338: -#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1227 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } -#line 7122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7160 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 339: -#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1229 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7166 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 340: -#line 1227 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1233 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } -#line 7134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7172 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 341: -#line 1229 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1235 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 343: -#line 1239 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } -#line 7146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7184 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 344: -#line 1243 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1249 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } -#line 7152 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7190 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 345: -#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } -#line 7158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7196 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 346: -#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } -#line 7164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7202 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 347: -#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } -#line 7170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7208 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 350: -#line 1259 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1265 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } -#line 7176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7214 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 352: -#line 1264 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1270 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::universal; } -#line 7182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7220 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 353: -#line 1266 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1272 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::application; } -#line 7188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7226 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 354: -#line 1268 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1274 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::private_; } -#line 7194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7232 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 355: -#line 1270 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1276 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::context_specific; } -#line 7200 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7238 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 357: -#line 1283 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7206 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7244 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 358: -#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7212 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7250 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 359: -#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1295 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } -#line 7218 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7256 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 360: -#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } -#line 7224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7262 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 361: -#line 1295 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7230 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7268 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 362: -#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1303 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7236 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7274 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 363: -#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1305 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7242 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7280 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 364: -#line 1303 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1309 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7248 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7286 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 365: -#line 1307 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1313 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } -#line 7254 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7292 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 367: -#line 1312 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1318 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } -#line 7260 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7298 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 401: -#line 1408 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1414 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } -#line 7266 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7304 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 402: -#line 1410 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1416 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 7272 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7310 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 403: -#line 1414 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1420 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7278 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7316 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 404: -#line 1416 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1422 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7284 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7322 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 405: -#line 1418 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1424 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7290 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7328 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 406: -#line 1420 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1426 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7296 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7334 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 407: -#line 1422 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1428 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7340 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 408: -#line 1424 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1430 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7308 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7346 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 409: -#line 1426 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1432 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7352 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 410: -#line 1428 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1434 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7358 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 493: -#line 1596 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1602 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7364 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 494: -#line 1600 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1606 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7332 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7370 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 495: -#line 1604 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1610 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7376 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 496: -#line 1608 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1614 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7382 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 497: -#line 1612 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1618 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7388 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; -#line 7354 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7392 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 default: break; } @@ -8958,64 +8996,64 @@ namespace yy { const unsigned short int asn1_parser::yyrline_[] = { - 0, 308, 308, 309, 312, 327, 330, 331, 332, 335, - 338, 339, 342, 346, 347, 351, 354, 355, 358, 359, - 360, 361, 362, 363, 366, 367, 368, 369, 370, 373, - 374, 377, 380, 381, 382, 385, 386, 389, 392, 393, - 394, 398, 401, 404, 405, 406, 409, 412, 413, 414, - 417, 420, 421, 422, 428, 429, 432, 433, 436, 437, - 440, 443, 446, 447, 448, 451, 452, 455, 456, 459, - 465, 466, 471, 472, 475, 478, 481, 484, 485, 488, - 489, 492, 493, 497, 498, 501, 504, 508, 511, 512, - 513, 514, 515, 524, 525, 531, 533, 535, 537, 539, - 544, 548, 552, 556, 560, 568, 572, 574, 578, 580, - 584, 585, 588, 589, 604, 616, 625, 632, 633, 637, - 638, 641, 642, 643, 646, 649, 650, 651, 652, 653, - 654, 655, 658, 660, 664, 665, 668, 669, 672, 673, - 676, 677, 680, 681, 682, 693, 701, 708, 709, 710, - 713, 716, 720, 721, 725, 726, 727, 730, 733, 737, - 738, 741, 743, 745, 747, 751, 752, 755, 757, 761, - 762, 763, 766, 767, 770, 772, 775, 777, 780, 782, - 786, 790, 794, 795, 796, 799, 801, 805, 809, 811, - 813, 822, 824, 828, 830, 832, 834, 837, 839, 843, - 844, 846, 852, 854, 857, 861, 864, 866, 870, 872, - 875, 885, 888, 913, 917, 921, 925, 927, 929, 931, - 933, 938, 939, 940, 941, 942, 943, 944, 945, 946, - 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, - 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, - 967, 968, 971, 975, 977, 979, 981, 983, 985, 987, - 989, 991, 993, 995, 996, 998, 1000, 1002, 1006, 1008, - 1010, 1012, 1014, 1016, 1020, 1022, 1026, 1027, 1030, 1031, - 1034, 1037, 1039, 1047, 1050, 1051, 1054, 1056, 1060, 1062, - 1066, 1068, 1072, 1074, 1078, 1082, 1085, 1088, 1092, 1095, - 1097, 1101, 1103, 1111, 1114, 1115, 1118, 1119, 1122, 1123, - 1137, 1140, 1143, 1145, 1149, 1151, 1153, 1155, 1157, 1159, - 1161, 1163, 1165, 1169, 1171, 1175, 1177, 1179, 1181, 1192, - 1194, 1198, 1200, 1204, 1206, 1210, 1214, 1218, 1220, 1222, - 1226, 1228, 1235, 1238, 1242, 1244, 1246, 1250, 1254, 1255, - 1258, 1260, 1263, 1265, 1267, 1269, 1279, 1282, 1284, 1288, - 1290, 1294, 1296, 1298, 1302, 1306, 1308, 1311, 1315, 1327, - 1330, 1336, 1339, 1340, 1343, 1344, 1347, 1353, 1360, 1366, - 1369, 1372, 1375, 1378, 1381, 1384, 1385, 1388, 1389, 1390, - 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399, 1400, - 1404, 1407, 1409, 1413, 1415, 1417, 1419, 1421, 1423, 1425, - 1427, 1431, 1434, 1435, 1438, 1441, 1442, 1443, 1446, 1447, - 1450, 1451, 1454, 1457, 1458, 1461, 1464, 1465, 1468, 1471, - 1474, 1475, 1478, 1479, 1482, 1484, 1487, 1488, 1489, 1490, - 1491, 1492, 1493, 1494, 1495, 1501, 1503, 1504, 1505, 1506, - 1507, 1508, 1509, 1510, 1511, 1514, 1517, 1520, 1523, 1524, - 1527, 1528, 1531, 1532, 1535, 1536, 1539, 1542, 1545, 1548, - 1549, 1552, 1554, 1555, 1556, 1557, 1560, 1561, 1564, 1567, - 1570, 1571, 1574, 1575, 1576, 1577, 1580, 1583, 1586, 1587, - 1590, 1591, 1592, 1595, 1599, 1603, 1607, 1611, 1615, 1616, - 1617, 1618, 1619, 1620, 1621, 1622, 1623, 1624, 1625, 1626, - 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, 1636, - 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645, 1646, - 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, 1655, 1656, - 1657, 1658, 1659, 1660, 1661, 1662, 1663, 1664, 1665, 1666, - 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676, - 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686, - 1687, 1688, 1689, 1690, 1691 + 0, 309, 309, 310, 313, 328, 331, 332, 333, 336, + 339, 340, 343, 347, 348, 352, 355, 356, 359, 360, + 361, 362, 363, 364, 367, 368, 369, 370, 371, 374, + 375, 378, 381, 382, 383, 386, 387, 390, 393, 394, + 395, 399, 402, 405, 406, 407, 410, 413, 414, 415, + 418, 421, 422, 423, 429, 430, 433, 434, 437, 438, + 441, 444, 447, 448, 449, 452, 453, 456, 457, 460, + 466, 467, 472, 473, 476, 479, 482, 485, 486, 489, + 490, 493, 494, 498, 499, 502, 505, 509, 512, 513, + 514, 515, 516, 525, 526, 532, 534, 536, 538, 540, + 545, 549, 553, 557, 561, 569, 573, 575, 579, 581, + 585, 586, 589, 590, 605, 617, 626, 633, 634, 638, + 639, 642, 643, 644, 647, 650, 651, 652, 653, 654, + 655, 656, 659, 661, 665, 666, 669, 670, 673, 674, + 677, 678, 681, 682, 683, 694, 702, 709, 710, 711, + 714, 717, 721, 722, 726, 727, 728, 731, 734, 738, + 739, 742, 744, 746, 748, 752, 753, 756, 758, 762, + 763, 764, 767, 768, 771, 773, 776, 778, 781, 783, + 787, 791, 795, 796, 797, 800, 802, 806, 810, 812, + 814, 823, 825, 829, 831, 833, 835, 838, 840, 844, + 846, 848, 854, 856, 859, 863, 866, 868, 872, 874, + 877, 887, 891, 916, 920, 924, 928, 930, 932, 934, + 936, 941, 942, 943, 944, 945, 946, 947, 948, 949, + 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, + 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, + 970, 971, 974, 978, 980, 982, 984, 986, 988, 990, + 992, 994, 996, 998, 999, 1001, 1003, 1005, 1009, 1011, + 1013, 1015, 1017, 1019, 1023, 1025, 1029, 1030, 1033, 1034, + 1037, 1040, 1042, 1050, 1053, 1054, 1057, 1059, 1063, 1065, + 1069, 1071, 1075, 1077, 1081, 1085, 1088, 1091, 1095, 1098, + 1100, 1104, 1106, 1114, 1117, 1119, 1123, 1124, 1127, 1128, + 1142, 1145, 1148, 1150, 1154, 1156, 1158, 1160, 1162, 1164, + 1166, 1168, 1170, 1174, 1176, 1180, 1182, 1184, 1186, 1198, + 1200, 1204, 1206, 1210, 1212, 1216, 1220, 1224, 1226, 1228, + 1232, 1234, 1241, 1244, 1248, 1250, 1252, 1256, 1260, 1261, + 1264, 1266, 1269, 1271, 1273, 1275, 1285, 1288, 1290, 1294, + 1296, 1300, 1302, 1304, 1308, 1312, 1314, 1317, 1321, 1333, + 1336, 1342, 1345, 1346, 1349, 1350, 1353, 1359, 1366, 1372, + 1375, 1378, 1381, 1384, 1387, 1390, 1391, 1394, 1395, 1396, + 1397, 1398, 1399, 1400, 1401, 1402, 1403, 1404, 1405, 1406, + 1410, 1413, 1415, 1419, 1421, 1423, 1425, 1427, 1429, 1431, + 1433, 1437, 1440, 1441, 1444, 1447, 1448, 1449, 1452, 1453, + 1456, 1457, 1460, 1463, 1464, 1467, 1470, 1471, 1474, 1477, + 1480, 1481, 1484, 1485, 1488, 1490, 1493, 1494, 1495, 1496, + 1497, 1498, 1499, 1500, 1501, 1507, 1509, 1510, 1511, 1512, + 1513, 1514, 1515, 1516, 1517, 1520, 1523, 1526, 1529, 1530, + 1533, 1534, 1537, 1538, 1541, 1542, 1545, 1548, 1551, 1554, + 1555, 1558, 1560, 1561, 1562, 1563, 1566, 1567, 1570, 1573, + 1576, 1577, 1580, 1581, 1582, 1583, 1586, 1589, 1592, 1593, + 1596, 1597, 1598, 1601, 1605, 1609, 1613, 1617, 1621, 1622, + 1623, 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, + 1633, 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, 1642, + 1643, 1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, + 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, + 1663, 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, + 1673, 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, + 1683, 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692, + 1693, 1694, 1695, 1696, 1697 }; // Print the state stack on the debug stream. @@ -9050,8 +9088,8 @@ namespace yy { } // yy -#line 9052 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 -#line 1693 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 +#line 9090 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:1167 +#line 1699 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 @@ -9064,7 +9102,7 @@ namespace yy { context.location.step(); // Lexer -#line 9068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9106 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -9164,25 +9202,25 @@ namespace yy { } yy2: ++context.cursor; -#line 9185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9223 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_END_OF_FILE(context.location); } -#line 9170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9208 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 9212 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9250 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } -#line 9176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9214 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 9189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9227 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9219 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 9188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9226 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 9186 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9224 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -9191,9 +9229,9 @@ namespace yy { } yy11: ++context.cursor; -#line 9207 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9245 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXCLAMATION_MARK (context.location); } -#line 9197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9235 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { @@ -9291,19 +9329,19 @@ namespace yy { } yy18: ++context.cursor; -#line 9197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9235 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPEN_PARENTHESIS (context.location); } -#line 9297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9335 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 9198 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9236 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLOSE_PARENTHESIS (context.location); } -#line 9302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9340 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 9203 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9241 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COMMA (context.location); } -#line 9307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9345 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { @@ -9311,9 +9349,9 @@ namespace yy { default: goto yy25; } yy25: -#line 9204 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9242 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_HYPHEN_MINUS (context.location); } -#line 9317 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9355 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { @@ -9321,9 +9359,9 @@ namespace yy { default: goto yy27; } yy27: -#line 9205 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9243 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_FULL_STOP (context.location); } -#line 9327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9365 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { @@ -9348,9 +9386,9 @@ namespace yy { default: goto yy31; } yy31: -#line 9172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9210 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9354 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9392 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy32: yyaccept = 1; yych = *(YYMARKER = ++context.cursor); @@ -9359,24 +9397,24 @@ namespace yy { default: goto yy33; } yy33: -#line 9201 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9239 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COLON (context.location); } -#line 9365 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9403 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 9202 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9240 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SEMICOLON (context.location); } -#line 9370 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9408 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 9208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9246 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_LESS_THAN (context.location); } -#line 9375 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9413 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 9211 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9249 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_AT (context.location); } -#line 9380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9418 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy40: yych = *++context.cursor; switch (yych) { @@ -9388,9 +9426,9 @@ namespace yy { default: goto yy49; } yy41: -#line 9179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9217 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9432 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy42: yych = *++context.cursor; switch (yych) { @@ -9603,19 +9641,19 @@ namespace yy { } yy61: ++context.cursor; -#line 9199 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9237 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPEN_SQUARE_BRACKET (context.location); } -#line 9609 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9647 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 9200 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9238 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLOSE_SQUARE_BRACKET (context.location); } -#line 9614 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9652 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; -#line 9209 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9247 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ACCENT (context.location); } -#line 9619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9657 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy67: yych = *++context.cursor; switch (yych) { @@ -9686,24 +9724,24 @@ namespace yy { default: goto yy69; } yy69: -#line 9180 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9218 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9692 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9730 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; -#line 9195 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9233 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPEN_BRACE (context.location); } -#line 9697 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9735 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; -#line 9206 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9244 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_VERTICAL_LINE (context.location); } -#line 9702 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9740 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; -#line 9196 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9234 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLOSE_BRACE (context.location); } -#line 9707 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9745 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -9711,9 +9749,9 @@ namespace yy { default: goto yy77; } yy77: -#line 9174 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9212 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_cstring(std::string(start, context.cursor), context.location); } -#line 9717 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9755 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; @@ -9794,9 +9832,9 @@ namespace yy { default: goto yy83; } yy83: -#line 9181 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9219 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9800 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9838 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy84: yych = *++context.cursor; switch (yych) { @@ -9867,9 +9905,9 @@ namespace yy { default: goto yy86; } yy86: -#line 9182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9220 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9911 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { @@ -9917,9 +9955,9 @@ namespace yy { default: goto yy90; } yy92: -#line 9166 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9204 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 9923 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9961 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { @@ -9927,9 +9965,9 @@ namespace yy { default: goto yy94; } yy94: -#line 9194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9232 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_RANGE (context.location); } -#line 9933 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9971 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy95: yych = *++context.cursor; switch (yych) { @@ -10088,9 +10126,9 @@ namespace yy { default: goto yy110; } yy110: -#line 9080 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9118 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BY (context.location); } -#line 10094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10132 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy111: yych = *++context.cursor; switch (yych) { @@ -10319,9 +10357,9 @@ namespace yy { default: goto yy137; } yy137: -#line 9128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9166 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OF (context.location); } -#line 10325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10363 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy138: yych = *++context.cursor; switch (yych) { @@ -10481,14 +10519,14 @@ namespace yy { } yy164: ++context.cursor; -#line 9176 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9214 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 10487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10525 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy166: ++context.cursor; -#line 9178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9216 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_hstring(std::string(start, context.cursor), context.location); } -#line 10492 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10530 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy168: yych = *++context.cursor; switch (yych) { @@ -10505,9 +10543,9 @@ namespace yy { } yy170: ++context.cursor; -#line 9193 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9231 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ELIPSIS (context.location); } -#line 10511 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10549 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy172: yych = *++context.cursor; switch (yych) { @@ -10530,14 +10568,14 @@ namespace yy { default: goto yy175; } yy175: -#line 9171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9209 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 10536 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10574 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy176: ++context.cursor; -#line 9192 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9230 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DEFINED_AS (context.location); } -#line 10541 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10579 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy178: yych = *++context.cursor; switch (yych) { @@ -10615,9 +10653,9 @@ namespace yy { default: goto yy180; } yy180: -#line 9072 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9110 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ALL (context.location); } -#line 10621 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10659 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy181: yych = *++context.cursor; switch (yych) { @@ -10688,9 +10726,9 @@ namespace yy { default: goto yy182; } yy182: -#line 9073 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9111 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ANY (context.location); } -#line 10694 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10732 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy183: yych = *++context.cursor; switch (yych) { @@ -10779,9 +10817,9 @@ namespace yy { default: goto yy187; } yy187: -#line 9077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9115 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BIT (context.location); } -#line 10785 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10823 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy188: yych = *++context.cursor; switch (yych) { @@ -10926,9 +10964,9 @@ namespace yy { default: goto yy201; } yy201: -#line 9096 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9134 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_END (context.location); } -#line 10932 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10970 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy202: yych = *++context.cursor; switch (yych) { @@ -11091,9 +11129,9 @@ namespace yy { default: goto yy218; } yy218: -#line 9119 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9157 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_MAX (context.location); } -#line 11097 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11135 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy219: yych = *++context.cursor; switch (yych) { @@ -11164,9 +11202,9 @@ namespace yy { default: goto yy220; } yy220: -#line 9120 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9158 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_MIN (context.location); } -#line 11170 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11208 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy221: yych = *++context.cursor; switch (yych) { @@ -11291,9 +11329,9 @@ namespace yy { default: goto yy231; } yy231: -#line 9132 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9170 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PDV (context.location); } -#line 11297 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11335 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy232: yych = *++context.cursor; switch (yych) { @@ -11406,9 +11444,9 @@ namespace yy { default: goto yy240; } yy240: -#line 9141 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9179 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SET (context.location); } -#line 11412 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11450 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy241: yych = *++context.cursor; switch (yych) { @@ -11509,14 +11547,14 @@ namespace yy { } yy257: ++context.cursor; -#line 9165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9203 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11515 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11553 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy259: ++context.cursor; -#line 9168 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9206 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11520 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11558 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy261: yych = *++context.cursor; switch (yych) { @@ -11665,9 +11703,9 @@ namespace yy { default: goto yy275; } yy275: -#line 9088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9126 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DATE (context.location); } -#line 11671 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11709 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy276: yych = *++context.cursor; switch (yych) { @@ -11805,9 +11843,9 @@ namespace yy { default: goto yy288; } yy288: -#line 9104 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9142 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_FROM (context.location); } -#line 11811 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11849 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy289: yych = *++context.cursor; switch (yych) { @@ -11952,9 +11990,9 @@ namespace yy { default: goto yy302; } yy302: -#line 9123 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9161 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ASN_NULL (context.location); } -#line 11958 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11996 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy303: yych = *++context.cursor; switch (yych) { @@ -12091,9 +12129,9 @@ namespace yy { default: goto yy315; } yy315: -#line 9137 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9175 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_REAL (context.location); } -#line 12097 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12135 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy316: yych = *++context.cursor; switch (yych) { @@ -12182,9 +12220,9 @@ namespace yy { default: goto yy320; } yy320: -#line 9143 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9181 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SIZE (context.location); } -#line 12188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12226 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy321: yych = *++context.cursor; switch (yych) { @@ -12273,9 +12311,9 @@ namespace yy { default: goto yy325; } yy325: -#line 9147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9185 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TAGS (context.location); } -#line 12279 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12317 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy326: yych = *++context.cursor; switch (yych) { @@ -12346,9 +12384,9 @@ namespace yy { default: goto yy327; } yy327: -#line 9149 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9187 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TIME (context.location); } -#line 12352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12390 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy328: yych = *++context.cursor; switch (yych) { @@ -12419,9 +12457,9 @@ namespace yy { default: goto yy329; } yy329: -#line 9151 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9189 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TRUE (context.location); } -#line 12425 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12463 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy330: yych = *++context.cursor; switch (yych) { @@ -12552,9 +12590,9 @@ namespace yy { default: goto yy341; } yy341: -#line 9161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9199 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_WITH (context.location); } -#line 12558 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12596 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy342: yych = *++context.cursor; switch (yych) { @@ -12649,9 +12687,9 @@ namespace yy { default: goto yy347; } yy347: -#line 9076 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9114 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BEGIN (context.location); } -#line 12655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12693 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy348: yych = *++context.cursor; switch (yych) { @@ -12746,9 +12784,9 @@ namespace yy { default: goto yy353; } yy353: -#line 9083 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9121 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLASS (context.location); } -#line 12752 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12790 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy354: yych = *++context.cursor; switch (yych) { @@ -12910,9 +12948,9 @@ namespace yy { default: goto yy370; } yy370: -#line 9103 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9141 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_FALSE (context.location); } -#line 12916 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12954 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy371: yych = *++context.cursor; switch (yych) { @@ -13080,9 +13118,9 @@ namespace yy { default: goto yy388; } yy388: -#line 9127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9165 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OCTET (context.location); } -#line 13086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13124 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy389: yych = *++context.cursor; switch (yych) { @@ -13255,9 +13293,9 @@ namespace yy { default: goto yy407; } yy407: -#line 9153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9191 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UNION (context.location); } -#line 13261 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13299 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy408: yych = *++context.cursor; switch (yych) { @@ -13370,9 +13408,9 @@ namespace yy { default: goto yy416; } yy416: -#line 9070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9108 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ABSENT (context.location); } -#line 13376 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13414 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy417: yych = *++context.cursor; switch (yych) { @@ -13479,9 +13517,9 @@ namespace yy { default: goto yy424; } yy424: -#line 9082 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9120 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CHOICE (context.location); } -#line 13485 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy425: yych = *++context.cursor; switch (yych) { @@ -13618,9 +13656,9 @@ namespace yy { default: goto yy437; } yy437: -#line 9098 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9136 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXCEPT (context.location); } -#line 13624 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13662 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy438: yych = *++context.cursor; switch (yych) { @@ -13811,9 +13849,9 @@ namespace yy { default: goto yy459; } yy459: -#line 9125 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9163 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OBJECT (context.location); } -#line 13817 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13855 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy460: yych = *++context.cursor; switch (yych) { @@ -13950,9 +13988,9 @@ namespace yy { default: goto yy472; } yy472: -#line 9144 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9182 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_STRING (context.location); } -#line 13956 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13994 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy473: yych = *++context.cursor; switch (yych) { @@ -14023,9 +14061,9 @@ namespace yy { default: goto yy474; } yy474: -#line 9145 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9183 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SYNTAX (context.location); } -#line 14029 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14067 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy475: yych = *++context.cursor; switch (yych) { @@ -14120,9 +14158,9 @@ namespace yy { default: goto yy480; } yy480: -#line 9154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9192 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UNIQUE (context.location); } -#line 14126 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14164 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy481: yych = *++context.cursor; switch (yych) { @@ -14253,9 +14291,9 @@ namespace yy { default: goto yy492; } yy492: -#line 9079 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9117 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BOOLEAN (context.location); } -#line 14259 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14297 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy493: yych = *++context.cursor; switch (yych) { @@ -14356,9 +14394,9 @@ namespace yy { default: goto yy499; } yy499: -#line 9090 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9128 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DEFAULT (context.location); } -#line 14362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14400 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy500: yych = *++context.cursor; switch (yych) { @@ -14447,9 +14485,9 @@ namespace yy { default: goto yy504; } yy504: -#line 9094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9132 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ENCODED (context.location); } -#line 14453 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14491 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy505: yych = *++context.cursor; switch (yych) { @@ -14538,9 +14576,9 @@ namespace yy { default: goto yy509; } yy509: -#line 9100 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9138 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXPORTS (context.location); } -#line 14544 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14582 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy510: yych = *++context.cursor; switch (yych) { @@ -14654,9 +14692,9 @@ namespace yy { default: goto yy518; } yy518: -#line 9111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9149 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IMPLIED (context.location); } -#line 14660 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14698 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy519: yych = *++context.cursor; switch (yych) { @@ -14727,9 +14765,9 @@ namespace yy { default: goto yy520; } yy520: -#line 9112 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9150 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IMPORTS (context.location); } -#line 14733 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14771 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy521: yych = *++context.cursor; switch (yych) { @@ -14818,9 +14856,9 @@ namespace yy { default: goto yy525; } yy525: -#line 9116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9154 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INTEGER (context.location); } -#line 14824 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14862 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy526: yych = *++context.cursor; switch (yych) { @@ -14921,9 +14959,9 @@ namespace yy { default: goto yy532; } yy532: -#line 9129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9167 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OID_IRI (context.location); } -#line 14927 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14965 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy533: yych = *++context.cursor; switch (yych) { @@ -15006,9 +15044,9 @@ namespace yy { default: goto yy536; } yy536: -#line 9131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9169 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PATTERN (context.location); } -#line 15012 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15050 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy537: yych = *++context.cursor; switch (yych) { @@ -15085,9 +15123,9 @@ namespace yy { default: goto yy539; } yy539: -#line 9134 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9172 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PRESENT (context.location); } -#line 15091 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15129 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy540: yych = *++context.cursor; switch (yych) { @@ -15158,9 +15196,9 @@ namespace yy { default: goto yy541; } yy541: -#line 9136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9174 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PRIVATE (context.location); } -#line 15164 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15202 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy542: yych = *++context.cursor; switch (yych) { @@ -15285,9 +15323,9 @@ namespace yy { default: goto yy552; } yy552: -#line 9157 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9195 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UTCTime (context.location); } -#line 15291 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15329 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy553: yych = *++context.cursor; switch (yych) { @@ -15442,9 +15480,9 @@ namespace yy { default: goto yy568; } yy568: -#line 9092 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9130 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DURATION (context.location); } -#line 15448 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15486 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy569: yych = *++context.cursor; switch (yych) { @@ -15515,9 +15553,9 @@ namespace yy { default: goto yy570; } yy570: -#line 9093 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9131 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EMBEDDED (context.location); } -#line 15521 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15559 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy571: yych = *++context.cursor; switch (yych) { @@ -15600,9 +15638,9 @@ namespace yy { default: goto yy574; } yy574: -#line 9099 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9137 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXPLICIT (context.location); } -#line 15606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15644 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy575: yych = *++context.cursor; switch (yych) { @@ -15679,9 +15717,9 @@ namespace yy { default: goto yy577; } yy577: -#line 9102 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9140 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXTERNAL (context.location); } -#line 15685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15723 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy578: yych = *++context.cursor; switch (yych) { @@ -15782,9 +15820,9 @@ namespace yy { default: goto yy584; } yy584: -#line 9110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9148 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IMPLICIT (context.location); } -#line 15788 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15826 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy585: yych = *++context.cursor; switch (yych) { @@ -15855,9 +15893,9 @@ namespace yy { default: goto yy586; } yy586: -#line 9113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9151 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INCLUDES (context.location); } -#line 15861 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15899 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy587: yych = *++context.cursor; switch (yych) { @@ -15928,9 +15966,9 @@ namespace yy { default: goto yy588; } yy588: -#line 9114 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9152 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INSTANCE (context.location); } -#line 15934 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15972 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy589: yych = *++context.cursor; switch (yych) { @@ -16037,9 +16075,9 @@ namespace yy { default: goto yy596; } yy596: -#line 9130 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9168 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPTIONAL (context.location); } -#line 16043 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16081 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy597: yych = *++context.cursor; switch (yych) { @@ -16134,9 +16172,9 @@ namespace yy { default: goto yy602; } yy602: -#line 9140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SEQUENCE (context.location); } -#line 16140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy603: yych = *++context.cursor; switch (yych) { @@ -16207,9 +16245,9 @@ namespace yy { default: goto yy604; } yy604: -#line 9142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9180 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SETTINGS (context.location); } -#line 16213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16251 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy605: yych = *++context.cursor; switch (yych) { @@ -16346,9 +16384,9 @@ namespace yy { default: goto yy617; } yy617: -#line 9075 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9113 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_AUTOMATIC (context.location); } -#line 16352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16390 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy618: yych = *++context.cursor; switch (yych) { @@ -16419,9 +16457,9 @@ namespace yy { default: goto yy619; } yy619: -#line 9078 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9116 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BMPString (context.location); } -#line 16425 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16463 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy620: yych = *++context.cursor; switch (yych) { @@ -16492,9 +16530,9 @@ namespace yy { default: goto yy621; } yy621: -#line 9081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9119 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CHARACTER (context.location); } -#line 16498 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16536 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy622: yych = *++context.cursor; switch (yych) { @@ -16565,9 +16603,9 @@ namespace yy { default: goto yy623; } yy623: -#line 9084 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9122 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COMPONENT (context.location); } -#line 16571 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16609 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy624: yych = *++context.cursor; switch (yych) { @@ -16650,9 +16688,9 @@ namespace yy { default: goto yy627; } yy627: -#line 9089 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9127 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DATE_TIME (context.location); } -#line 16656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16694 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy628: yych = *++context.cursor; switch (yych) { @@ -16765,9 +16803,9 @@ namespace yy { default: goto yy636; } yy636: -#line 9108 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9146 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IA5String (context.location); } -#line 16771 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16809 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy637: yych = *++context.cursor; switch (yych) { @@ -16904,9 +16942,9 @@ namespace yy { default: goto yy649; } yy649: -#line 9146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9184 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_T61String (context.location); } -#line 16910 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16948 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy650: yych = *++context.cursor; switch (yych) { @@ -16995,9 +17033,9 @@ namespace yy { default: goto yy654; } yy654: -#line 9155 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9193 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UNIVERSAL (context.location); } -#line 17001 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17039 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy655: yych = *++context.cursor; switch (yych) { @@ -17104,9 +17142,9 @@ namespace yy { default: goto yy662; } yy662: -#line 9085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9123 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COMPONENTS (context.location); } -#line 17110 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17148 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy663: yych = *++context.cursor; switch (yych) { @@ -17183,9 +17221,9 @@ namespace yy { default: goto yy665; } yy665: -#line 9087 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9125 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CONTAINING (context.location); } -#line 17189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17227 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy666: yych = *++context.cursor; switch (yych) { @@ -17268,9 +17306,9 @@ namespace yy { default: goto yy669; } yy669: -#line 9097 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9135 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ENUMERATED (context.location); } -#line 17274 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17312 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy670: yych = *++context.cursor; switch (yych) { @@ -17365,9 +17403,9 @@ namespace yy { default: goto yy675; } yy675: -#line 9109 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9147 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IDENTIFIER (context.location); } -#line 17371 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17409 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy676: yych = *++context.cursor; switch (yych) { @@ -17516,9 +17554,9 @@ namespace yy { default: goto yy690; } yy690: -#line 9158 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9196 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UTF8String (context.location); } -#line 17522 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17560 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy691: yych = *++context.cursor; switch (yych) { @@ -17613,9 +17651,9 @@ namespace yy { default: goto yy696; } yy696: -#line 9074 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9112 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_APPLICATION (context.location); } -#line 17619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17657 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy697: yych = *++context.cursor; switch (yych) { @@ -17686,9 +17724,9 @@ namespace yy { default: goto yy698; } yy698: -#line 9086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9124 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CONSTRAINED (context.location); } -#line 17692 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17730 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy699: yych = *++context.cursor; switch (yych) { @@ -17759,9 +17797,9 @@ namespace yy { default: goto yy700; } yy700: -#line 9091 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9129 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DEFINITIONS (context.location); } -#line 17765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17803 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy701: yych = *++context.cursor; switch (yych) { @@ -17922,9 +17960,9 @@ namespace yy { default: goto yy717; } yy717: -#line 9150 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9188 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TIME_OF_DAY (context.location); } -#line 17928 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17966 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy718: yych = *++context.cursor; switch (yych) { @@ -18061,9 +18099,9 @@ namespace yy { default: goto yy730; } yy730: -#line 9115 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9153 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INSTRUCTIONS (context.location); } -#line 18067 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18105 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy731: yych = *++context.cursor; switch (yych) { @@ -18134,9 +18172,9 @@ namespace yy { default: goto yy732; } yy732: -#line 9117 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9155 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INTERSECTION (context.location); } -#line 18140 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy733: yych = *++context.cursor; switch (yych) { @@ -18207,9 +18245,9 @@ namespace yy { default: goto yy734; } yy734: -#line 9118 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9156 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ISO646String (context.location); } -#line 18213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18251 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy735: yych = *++context.cursor; switch (yych) { @@ -18286,9 +18324,9 @@ namespace yy { default: goto yy737; } yy737: -#line 9122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9160 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_NOT_A_NUMBER (context.location); } -#line 18292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18330 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy738: yych = *++context.cursor; switch (yych) { @@ -18383,9 +18421,9 @@ namespace yy { default: goto yy743; } yy743: -#line 9138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9176 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_RELATIVE_OID (context.location); } -#line 18389 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18427 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy744: yych = *++context.cursor; switch (yych) { @@ -18498,9 +18536,9 @@ namespace yy { default: goto yy752; } yy752: -#line 9101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9139 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXTENSIBILITY (context.location); } -#line 18504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18542 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy753: yych = *++context.cursor; switch (yych) { @@ -18571,9 +18609,9 @@ namespace yy { default: goto yy754; } yy754: -#line 9106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9144 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GeneralString (context.location); } -#line 18577 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18615 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy755: yych = *++context.cursor; switch (yych) { @@ -18650,9 +18688,9 @@ namespace yy { default: goto yy757; } yy757: -#line 9107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9145 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GraphicString (context.location); } -#line 18656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18694 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy758: yych = *++context.cursor; switch (yych) { @@ -18729,9 +18767,9 @@ namespace yy { default: goto yy760; } yy760: -#line 9124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9162 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_NumericString (context.location); } -#line 18735 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18773 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy761: yych = *++context.cursor; switch (yych) { @@ -18808,9 +18846,9 @@ namespace yy { default: goto yy763; } yy763: -#line 9133 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9171 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PLUS_INFINITY (context.location); } -#line 18814 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18852 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy764: yych = *++context.cursor; switch (yych) { @@ -18899,9 +18937,9 @@ namespace yy { default: goto yy768; } yy768: -#line 9148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9186 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TeletexString (context.location); } -#line 18905 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18943 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy769: yych = *++context.cursor; switch (yych) { @@ -18984,9 +19022,9 @@ namespace yy { default: goto yy772; } yy772: -#line 9160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9198 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_VisibleString (context.location); } -#line 18990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19028 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy773: yych = *++context.cursor; switch (yych) { @@ -19075,9 +19113,9 @@ namespace yy { default: goto yy777; } yy777: -#line 9121 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9159 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_MINUS_INFINITY (context.location); } -#line 19081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19119 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy778: yych = *++context.cursor; switch (yych) { @@ -19178,9 +19216,9 @@ namespace yy { default: goto yy784; } yy784: -#line 9159 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9197 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_VideotexString (context.location); } -#line 19184 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19222 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy785: yych = *++context.cursor; switch (yych) { @@ -19251,9 +19289,9 @@ namespace yy { default: goto yy786; } yy786: -#line 9071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9109 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ABSTRACT_SYNTAX (context.location); } -#line 19257 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19295 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy787: yych = *++context.cursor; switch (yych) { @@ -19330,9 +19368,9 @@ namespace yy { default: goto yy789; } yy789: -#line 9105 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9143 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GeneralizedTime (context.location); } -#line 19336 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19374 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy790: yych = *++context.cursor; switch (yych) { @@ -19409,9 +19447,9 @@ namespace yy { default: goto yy792; } yy792: -#line 9135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9173 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PrintableString (context.location); } -#line 19415 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19453 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy793: yych = *++context.cursor; switch (yych) { @@ -19488,9 +19526,9 @@ namespace yy { default: goto yy795; } yy795: -#line 9152 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9190 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TYPE_IDENTIFIER (context.location); } -#line 19494 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19532 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy796: yych = *++context.cursor; switch (yych) { @@ -19561,9 +19599,9 @@ namespace yy { default: goto yy797; } yy797: -#line 9156 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9194 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UniversalString (context.location); } -#line 19567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19605 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy798: yych = *++context.cursor; switch (yych) { @@ -19634,9 +19672,9 @@ namespace yy { default: goto yy799; } yy799: -#line 9095 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9133 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ENCODING_CONTROL (context.location); } -#line 19640 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19678 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy800: yych = *++context.cursor; switch (yych) { @@ -19707,9 +19745,9 @@ namespace yy { default: goto yy801; } yy801: -#line 9126 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9164 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ObjectDescriptor (context.location); } -#line 19713 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19751 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy802: yych = *++context.cursor; switch (yych) { @@ -19780,11 +19818,11 @@ namespace yy { default: goto yy803; } yy803: -#line 9139 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9177 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_RELATIVE_OID_IRI (context.location); } -#line 19786 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19824 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" } -#line 9213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9251 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" } } diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 656a42bc..aa5bae92 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -48,18 +48,41 @@ add_executable(fast_ber_tests Test ${TEST_SRC} autogen/choice.hpp autogen/time.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 absl::strings) +target_link_libraries (fast_ber_tests fast_ber_lib) -add_test(NAME fast_ber_parse_asn_0 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/00-empty-OK.asn1 parse_test_0) -add_test(NAME fast_ber_parse_asn_1 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/01-empty-OK.asn1 parse_test_1) -#add_test(NAME fast_ber_parse_asn_2 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/02-garbage-NP.asn1 parse_test_2) -add_test(NAME fast_ber_parse_asn_3 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/03-enum-OK.asn1 parse_test_3) -#add_test(NAME fast_ber_parse_asn_4 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/04-enum-SE.asn1 parse_test_4) -#add_test(NAME fast_ber_parse_asn_5 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/05-enum-SE.asn1 parse_test_5) -#add_test(NAME fast_ber_parse_asn_6 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/06-enum-SE.asn1 parse_test_6) -add_test(NAME fast_ber_parse_asn_7 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/07-int-OK.asn1 parse_test_7) -#add_test(NAME fast_ber_parse_asn_8 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/08-int-SE.asn1 parse_test_8) -add_test(NAME fast_ber_parse_asn_9 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/09-int-SE.asn1 parse_test_9) +# Generate a header file from an asn1 input spec +# Create a library including the header +# Compile when running tests, check that the include file can be succesfully compiled +function(generate_and_compile test_case should_succeed) + fast_ber_generate(${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/${test_case}.asn1 ${test_case}) + add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/autogen/${test_case}.cpp + COMMAND echo \\\#include \\\"${test_case}.hpp\\\" > ${CMAKE_CURRENT_BINARY_DIR}/autogen/${test_case}.cpp) + + add_library(${test_case} ${CMAKE_CURRENT_BINARY_DIR}/autogen/${test_case}.cpp autogen/${test_case}.hpp) + target_link_libraries(${test_case} fast_ber_lib) + set_target_properties(${test_case} PROPERTIES EXCLUDE_FROM_ALL TRUE + EXCLUDE_FROM_DEFAULT_BUILD TRUE) + + add_test(NAME fast_ber_parse_${test_case} + COMMAND ${CMAKE_COMMAND} --build . --target ${test_case} --config $ + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) + + if(NOT ${should_succeed}) + set_tests_properties(fast_ber_parse_${test_case} PROPERTIES WILL_FAIL TRUE) + endif() + +endfunction(generate_and_compile) + +generate_and_compile(00-empty-OK TRUE) +generate_and_compile(01-empty-OK TRUE) +generate_and_compile(02-garbage-NP FALSE) +generate_and_compile(03-enum-OK TRUE) +generate_and_compile(04-enum-SE FALSE) +generate_and_compile(05-enum-SE FALSE) +generate_and_compile(06-enum-SE FALSE) +generate_and_compile(07-int-OK TRUE) +generate_and_compile(08-int-SE FALSE) +#generate_and_compile(09-int-SE FALSE) #add_test(NAME fast_ber_parse_asn_10 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/10-int-OK.asn1 parse_test_10) #add_test(NAME fast_ber_parse_asn_11 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/11-int-SE.asn1 parse_test_11) #add_test(NAME fast_ber_parse_asn_12 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/12-int-SE.asn1 parse_test_12) @@ -70,26 +93,26 @@ add_test(NAME fast_ber_parse_asn_16 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR add_test(NAME fast_ber_parse_asn_17 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/17-tags-OK.asn1 parse_test_17) #add_test(NAME fast_ber_parse_asn_18 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/18-class-OK.asn1 parse_test_18) #add_test(NAME fast_ber_parse_asn_19 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/19-param-OK.asn1 parse_test_19) -add_test(NAME fast_ber_parse_asn_20 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/20-constr-OK.asn1 parse_test_20) -add_test(NAME fast_ber_parse_asn_21 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/21-tags-OK.asn1 parse_test_21) -add_test(NAME fast_ber_parse_asn_22 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/22-tags-OK.asn1 parse_test_22) -add_test(NAME fast_ber_parse_asn_23 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/23-bits-OK.asn1 parse_test_23) -add_test(NAME fast_ber_parse_asn_24 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/24-sequence-OK.asn1 parse_test_24) -add_test(NAME fast_ber_parse_asn_25 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/25-misc-OK.asn1 parse_test_25) -add_test(NAME fast_ber_parse_asn_26 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/26-sequence-SE.asn1 parse_test_26) -add_test(NAME fast_ber_parse_asn_27 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/27-set-SE.asn1 parse_test_27) -add_test(NAME fast_ber_parse_asn_28 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/28-tags-SE.asn1 parse_test_28) -add_test(NAME fast_ber_parse_asn_29 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/29-tags-OK.asn1 parse_test_29) -add_test(NAME fast_ber_parse_asn_30 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/30-set-OK.asn1 parse_test_30) -add_test(NAME fast_ber_parse_asn_31 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/31-set-of-OK.asn1 parse_test_31) -add_test(NAME fast_ber_parse_asn_32 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/32-sequence-of-OK.asn1 parse_test_32) -add_test(NAME fast_ber_parse_asn_33 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/33-misc-OK.asn1 parse_test_33) -add_test(NAME fast_ber_parse_asn_34 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/34-class-OK.asn1 parse_test_34) -add_test(NAME fast_ber_parse_asn_35 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/35-set-choice-OK.asn1 parse_test_35) -add_test(NAME fast_ber_parse_asn_36 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/36-indirect-choice-SE.asn1 parse_test_36) -add_test(NAME fast_ber_parse_asn_37 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/37-indirect-choice-OK.asn1 parse_test_37) -#add_test(NAME fast_ber_parse_asn_38 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/38-comments-OK.asn1 parse_test_38) -add_test(NAME fast_ber_parse_asn_39 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/39-sequence-of-OK.asn1 parse_test_39) +generate_and_compile(20-constr-OK TRUE) +generate_and_compile(21-tags-OK TRUE) +generate_and_compile(22-tags-OK TRUE) +generate_and_compile(23-bits-OK TRUE) +generate_and_compile(24-sequence-OK TRUE) +generate_and_compile(25-misc-OK TRUE) +generate_and_compile(26-sequence-SE TRUE) +generate_and_compile(27-set-SE TRUE) +generate_and_compile(28-tags-SE TRUE) +generate_and_compile(29-tags-OK TRUE) +generate_and_compile(30-set-OK TRUE) +generate_and_compile(31-set-of-OK TRUE) +generate_and_compile(32-sequence-of-OK TRUE) +generate_and_compile(33-misc-OK TRUE) +#generate_and_compile(34-class-OK TRUE) +#generate_and_compile(35-set-choice-OK TRUE) +#generate_and_compile(36-indirect-choice-SE TRUE) +generate_and_compile(37-indirect-choice-OK TRUE) +#generate_and_compile(38-comments-OK TRUE) +generate_and_compile(39-sequence-of-OK TRUE) add_test(NAME fast_ber_parse_asn_40 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/40-int-optional-SE.asn1 parse_test_40) add_test(NAME fast_ber_parse_asn_41 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/41-int-optional-OK.asn1 parse_test_41) add_test(NAME fast_ber_parse_asn_42 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/42-real-life-OK.asn1 parse_test_42) @@ -100,26 +123,26 @@ add_test(NAME fast_ber_parse_asn_46 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR add_test(NAME fast_ber_parse_asn_47 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/47-set-ext-OK.asn1 parse_test_47) add_test(NAME fast_ber_parse_asn_48 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/48-real-life-OK.asn1 parse_test_48) #add_test(NAME fast_ber_parse_asn_49 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/49-real-life-OK.asn1 parse_test_49) -add_test(NAME fast_ber_parse_asn_50 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/50-constraint-OK.asn1 parse_test_50) -add_test(NAME fast_ber_parse_asn_51 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/51-constraint-SE.asn1 parse_test_51) -add_test(NAME fast_ber_parse_asn_52 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/52-constraint-SE.asn1 parse_test_52) -add_test(NAME fast_ber_parse_asn_53 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/53-constraint-SE.asn1 parse_test_53) -add_test(NAME fast_ber_parse_asn_54 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/54-constraint-SE.asn1 parse_test_54) -add_test(NAME fast_ber_parse_asn_55 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/55-components-of-OK.asn1 parse_test_55) -add_test(NAME fast_ber_parse_asn_56 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/56-components-of-SE.asn1 parse_test_56) -add_test(NAME fast_ber_parse_asn_57 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/57-components-of-OK.asn1 parse_test_57) -add_test(NAME fast_ber_parse_asn_58 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/58-param-OK.asn1 parse_test_58) +generate_and_compile(50-constraint-OK TRUE) +generate_and_compile(51-constraint-SE TRUE) +generate_and_compile(52-constraint-SE TRUE) +generate_and_compile(53-constraint-SE TRUE) +generate_and_compile(54-constraint-SE TRUE) +generate_and_compile(55-components-of-OK TRUE) +generate_and_compile(56-components-of-SE FALSE) +#generate_and_compile(57-components-of-OK TRUE) +generate_and_compile(58-param-OK TRUE) #add_test(NAME fast_ber_parse_asn_59 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/59-choice-extended-OK.asn1 parse_test_59) -add_test(NAME fast_ber_parse_asn_60 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/60-any-OK.asn1 parse_test_60) -add_test(NAME fast_ber_parse_asn_61 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/61-any-1-SE.asn1 parse_test_61) -add_test(NAME fast_ber_parse_asn_62 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/62-any-OK.asn1 parse_test_62) -add_test(NAME fast_ber_parse_asn_63 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/63-any-2-SE.asn1 parse_test_63) -add_test(NAME fast_ber_parse_asn_64 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/64-oid-constr-OK.asn1 parse_test_64) -add_test(NAME fast_ber_parse_asn_65 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/65-multi-tag-OK.asn1 parse_test_65) -add_test(NAME fast_ber_parse_asn_66 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/66-ref-simple-OK.asn1 parse_test_66) -add_test(NAME fast_ber_parse_asn_67 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/67-embedded-choice-OK.asn1 parse_test_67) -add_test(NAME fast_ber_parse_asn_68 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/68-enum-default-OK.asn1 parse_test_68) -add_test(NAME fast_ber_parse_asn_69 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/69-reserved-words-OK.asn1 parse_test_69) +generate_and_compile(60-any-OK TRUE) +generate_and_compile(61-any-1-SE TRUE) +generate_and_compile(62-any-OK TRUE) +generate_and_compile(63-any-2-SE TRUE) +generate_and_compile(64-oid-constr-OK TRUE) +generate_and_compile(65-multi-tag-OK TRUE) +generate_and_compile(66-ref-simple-OK TRUE) +generate_and_compile(67-embedded-choice-OK TRUE) +generate_and_compile(68-enum-default-OK TRUE) +generate_and_compile(69-reserved-words-OK TRUE) #add_test(NAME fast_ber_parse_asn_70 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/70-xer-test-OK.asn1 parse_test_70) add_test(NAME fast_ber_parse_asn_71 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/71-duplicate-types-SE.asn1 parse_test_71) #add_test(NAME fast_ber_parse_asn_72 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/72-same-names-OK.asn1 parse_test_72) @@ -149,7 +172,7 @@ add_test(NAME fast_ber_parse_asn_95 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR add_test(NAME fast_ber_parse_asn_96 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/96-type-identifier-OK.asn1 parse_test_96) #add_test(NAME fast_ber_parse_asn_97 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/97-type-identifier-SW.asn1 parse_test_97) #add_test(NAME fast_ber_parse_asn_98 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/98-attribute-class-OK.asn1 parse_test_98) -add_test(NAME fast_ber_parse_asn_99 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/99-class-sample-OK.asn1 parse_test_99) +#add_test(NAME fast_ber_parse_asn_99 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/99-class-sample-OK.asn1 parse_test_99) add_test(NAME fast_ber_parse_asn_100 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/100-class-ref-OK.asn1 parse_test_100) add_test(NAME fast_ber_parse_asn_101 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/101-class-ref-SE.asn1 parse_test_101) #add_test(NAME fast_ber_parse_asn_102 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/102-class-ref-SE.asn1 parse_test_102) diff --git a/testfiles/choice.asn b/testfiles/choice.asn index 5084d375..59c17c41 100644 --- a/testfiles/choice.asn +++ b/testfiles/choice.asn @@ -1,4 +1,4 @@ -MakeAChoice DEFINITIONS AUTOMATIC TAGS ::= BEGIN +MakeAChoice DEFINITIONS IMPLICIT TAGS ::= BEGIN Collection ::= SEQUENCE { the-choice CHOICE { diff --git a/testfiles/simple5.asn b/testfiles/simple5.asn index a98503dc..caf83d98 100644 --- a/testfiles/simple5.asn +++ b/testfiles/simple5.asn @@ -1,8 +1,12 @@ Simple DEFINITIONS IMPLICIT TAGS ::= BEGIN -Collection ::= SEQUENCE { +Greetings ::= SEQUENCE { hello [0] OCTET STRING, - goodbye [1] OCTET STRING, + goodbye [1] OCTET STRING +} + +Collection ::= SEQUENCE { + COMPONENTS OF Greetings, integer [2] INTEGER, boolean [3] BOOLEAN, child [4] Child, From adf1fdca9435e0930fbbba7132fc398be0707ffd Mon Sep 17 00:00:00 2001 From: Sam Date: Thu, 23 May 2019 00:16:35 +0100 Subject: [PATCH 07/31] Stop using return value of vector insert as not supported on older compiler --- .../fast_ber/compiler/ReorderAssignments.hpp | 37 ++++++++++++++++--- 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/include/fast_ber/compiler/ReorderAssignments.hpp b/include/fast_ber/compiler/ReorderAssignments.hpp index 598fcfd7..10b90d48 100644 --- a/include/fast_ber/compiler/ReorderAssignments.hpp +++ b/include/fast_ber/compiler/ReorderAssignments.hpp @@ -65,18 +65,39 @@ void resolve_components_of(Asn1Tree& tree) const SequenceType& inheretied_sequence = absl::get(absl::get(inheretied)); - iter = sequence.components.insert(iter, inheretied_sequence.components.begin(), - inheretied_sequence.components.end()); + const size_t offset = std::distance(sequence.components.begin(), iter); + sequence.components.insert(iter, inheretied_sequence.components.begin(), + inheretied_sequence.components.end()); + + iter = sequence.components.begin(); + std::advance(iter, offset); std::advance(iter, inheretied_sequence.components.size()); } + else if (is_set(inheretied)) + { + const SetType& inheretied_set = + absl::get(absl::get(inheretied)); + + const size_t offset = std::distance(sequence.components.begin(), iter); + sequence.components.insert(iter, inheretied_set.components.begin(), + inheretied_set.components.end()); + + iter = sequence.components.begin(); + std::advance(iter, offset); + std::advance(iter, inheretied_set.components.size()); + } } else if (is_sequence(*iter->components_of)) { const SequenceType& inheretied_sequence = absl::get(absl::get(*iter->components_of)); - iter = sequence.components.insert(iter, inheretied_sequence.components.begin(), - inheretied_sequence.components.end()); + const size_t offset = std::distance(sequence.components.begin(), iter); + sequence.components.insert(iter, inheretied_sequence.components.begin(), + inheretied_sequence.components.end()); + + iter = sequence.components.begin(); + std::advance(iter, offset); std::advance(iter, inheretied_sequence.components.size()); } else if (is_set(*iter->components_of)) @@ -84,8 +105,12 @@ void resolve_components_of(Asn1Tree& tree) const SetType& inheretied_set = absl::get(absl::get(*iter->components_of)); - iter = sequence.components.insert(iter, inheretied_set.components.begin(), - inheretied_set.components.end()); + const size_t offset = std::distance(sequence.components.begin(), iter); + sequence.components.insert(iter, inheretied_set.components.begin(), + inheretied_set.components.end()); + + iter = sequence.components.begin(); + std::advance(iter, offset); std::advance(iter, inheretied_set.components.size()); } else From e5fe1c9cb4c7e09873243c7b47e69aaf62ef01d6 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 26 May 2019 15:36:24 +0100 Subject: [PATCH 08/31] Parse and populate AST for ObjectClass definitions --- include/fast_ber/compiler/CompilerTypes.hpp | 26 +- .../fast_ber/compiler/ReorderAssignments.hpp | 3 +- include/fast_ber/compiler/ResolveType.hpp | 124 +- include/fast_ber/compiler/ResolveTypeFwd.hpp | 28 + include/fast_ber/compiler/TypeAsString.hpp | 30 +- src/compile_commands.json | 75 + src/compiler/CompilerMain.cpp | 35 +- src/compiler/asn_compiler.yacc | 54 +- src/compiler/autogen_copy/asn_compiler.hpp | 5308 +++++++++-------- test/CMakeLists.txt | 10 +- 10 files changed, 3138 insertions(+), 2555 deletions(-) create mode 100644 include/fast_ber/compiler/ResolveTypeFwd.hpp create mode 100644 src/compile_commands.json diff --git a/include/fast_ber/compiler/CompilerTypes.hpp b/include/fast_ber/compiler/CompilerTypes.hpp index 276e6507..c338adfa 100644 --- a/include/fast_ber/compiler/CompilerTypes.hpp +++ b/include/fast_ber/compiler/CompilerTypes.hpp @@ -211,9 +211,7 @@ struct IRIType struct NullType { }; -struct ObjectClassFieldType -{ -}; +struct ObjectClassFieldType; struct ObjectDescriptorType { }; @@ -315,6 +313,12 @@ struct DefinedValue std::string reference; }; +struct ObjectClassFieldType +{ + DefinedType referenced_object_class; + std::vector fieldnames; +}; + struct BitStringValue { std::string value; @@ -381,8 +385,24 @@ struct ValueAssignment Value value; }; +struct TypeField +{ +}; + +struct FixedTypeValueField +{ + Type type; +}; + +struct ClassField +{ + std::string name; + absl::variant field; +}; + struct ObjectClassAssignment { + std::vector fields; }; struct ObjectSetAssignment diff --git a/include/fast_ber/compiler/ReorderAssignments.hpp b/include/fast_ber/compiler/ReorderAssignments.hpp index 10b90d48..c9ea14ad 100644 --- a/include/fast_ber/compiler/ReorderAssignments.hpp +++ b/include/fast_ber/compiler/ReorderAssignments.hpp @@ -59,7 +59,7 @@ void resolve_components_of(Asn1Tree& tree) if (is_defined(*iter->components_of)) { const DefinedType& defined = absl::get(*iter->components_of); - const Type& inheretied = resolve_type(tree, module.module_reference, defined); + const Type& inheretied = type(resolve(tree, module.module_reference, defined)); if (is_sequence(inheretied)) { const SequenceType& inheretied_sequence = @@ -332,6 +332,7 @@ void find_nested_structs(const Type& type, std::vector& nested_struct // std::vector split_definitions(const std::vector& assignments) { + return assignments; std::vector split_assignments; split_assignments.reserve(assignments.size()); diff --git a/include/fast_ber/compiler/ResolveType.hpp b/include/fast_ber/compiler/ResolveType.hpp index 8db8fb5d..747975ce 100644 --- a/include/fast_ber/compiler/ResolveType.hpp +++ b/include/fast_ber/compiler/ResolveType.hpp @@ -2,29 +2,32 @@ #include "fast_ber/compiler/CompilerTypes.hpp" -Type& resolve_type(std::vector& assignments, const std::string& type_reference) +Assignment& resolve(Module& module, const std::string& reference) { - for (Assignment& assignemnt : assignments) + for (Assignment& assignemnt : module.assignments) { - if (assignemnt.name == type_reference) + if (assignemnt.name == reference) { - if (!absl::holds_alternative(assignemnt.specific)) - { - throw std::runtime_error("Object is not a type: " + type_reference); - } - return absl::get(assignemnt.specific).type; + return assignemnt; } } - throw std::runtime_error("Reference to undefined type: " + type_reference); + throw std::runtime_error("Reference to undefined object: " + reference); } -const Type& resolve_type(const std::vector& assignments, const std::string& type_reference) +Assignment& resolve(Asn1Tree& tree, const std::string& module_reference, const std::string& reference) { - return resolve_type(const_cast&>(assignments), type_reference); + for (Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return resolve(module, reference); + } + } + throw std::runtime_error("Reference to undefined object: " + module_reference + "." + reference); } -Type& resolve_type(Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) +Assignment& resolve(Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) { const std::string& module_reference = (defined.module_reference) ? *defined.module_reference : current_module_reference; @@ -33,13 +36,102 @@ Type& resolve_type(Asn1Tree& tree, const std::string& current_module_reference, { if (module.module_reference == module_reference) { - return resolve_type(module.assignments, defined.type_reference); + return resolve(module, defined.type_reference); + } + } + throw std::runtime_error("Reference to undefined object: " + module_reference + "." + defined.type_reference); +} + +const Assignment& resolve(const Module& module, const std::string& reference) +{ + for (const Assignment& assignemnt : module.assignments) + { + if (assignemnt.name == reference) + { + return assignemnt; } } - throw std::runtime_error("Reference to undefined type: " + module_reference + "." + defined.type_reference); + + throw std::runtime_error("Reference to undefined object: " + reference); } -const Type& resolve_type(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) +const Assignment& resolve(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference) +{ + for (const Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return resolve(module, reference); + } + } + throw std::runtime_error("Reference to undefined object: " + module_reference + "." + reference); +} + +const Assignment& resolve(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) +{ + const std::string& module_reference = + (defined.module_reference) ? *defined.module_reference : current_module_reference; + + for (const Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return resolve(module, defined.type_reference); + } + } + throw std::runtime_error("Reference to undefined object: " + module_reference + "." + defined.type_reference); +} + +bool exists(const Module& module, const std::string& reference) +{ + for (const Assignment& assignemnt : module.assignments) + { + if (assignemnt.name == reference) + { + return true; + } + } + return false; +} + +bool exists(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference) +{ + for (const Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return exists(module, reference); + } + } + return false; +} + +bool exists(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) +{ + const std::string& module_reference = + (defined.module_reference) ? *defined.module_reference : current_module_reference; + + return exists(tree, module_reference, defined.type_reference); +} + +bool is_type(const Assignment& assignment) { return absl::holds_alternative(assignment.specific); } +bool is_value(const Assignment& assignment) { return absl::holds_alternative(assignment.specific); } +bool is_object_class(const Assignment& assignment) +{ + return absl::holds_alternative(assignment.specific); +} + +Type& type(Assignment& assignemnt) { return absl::get(assignemnt.specific).type; } +const Type& type(const Assignment& assignemnt) { return absl::get(assignemnt.specific).type; } + +ValueAssignment& value(Assignment& assignemnt) { return absl::get(assignemnt.specific); } +const ValueAssignment& value(const Assignment& assignemnt) { return absl::get(assignemnt.specific); } + +ObjectClassAssignment& object_class(Assignment& assignemnt) +{ + return absl::get(assignemnt.specific); +} +const ObjectClassAssignment& object_class(const Assignment& assignemnt) { - return resolve_type(const_cast(tree), current_module_reference, defined); + return absl::get(assignemnt.specific); } diff --git a/include/fast_ber/compiler/ResolveTypeFwd.hpp b/include/fast_ber/compiler/ResolveTypeFwd.hpp new file mode 100644 index 00000000..86a68ef3 --- /dev/null +++ b/include/fast_ber/compiler/ResolveTypeFwd.hpp @@ -0,0 +1,28 @@ +#pragma once + +#include "fast_ber/compiler/CompilerTypes.hpp" + +#include + +Assignment& resolve(Module& module, const std::string& reference); +Assignment& resolve(Asn1Tree& tree, const std::string& module_reference, const std::string& reference); +Assignment& resolve(Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined); +const Assignment& resolve(const Module& module, const std::string& reference); +const Assignment& resolve(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference); +const Assignment& resolve(const Asn1Tree& tree, const std::string& current_module_reference, + const DefinedType& defined); + +bool exists(const Module& module, const std::string& reference); +bool exists(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference); +bool exists(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined); + +bool is_type(const Assignment& assignment); +bool is_value(const Assignment& assignment); +bool is_object_class(const Assignment& assignment); + +Type& type(Assignment& assignemnt); +const Type& type(const Assignment& assignemnt); +ValueAssignment& value(Assignment& assignemnt); +const ValueAssignment& value(const Assignment& assignemnt); +ObjectClassAssignment& object_class(Assignment& assignemnt); +const ObjectClassAssignment& object_class(const Assignment& assignemnt); diff --git a/include/fast_ber/compiler/TypeAsString.hpp b/include/fast_ber/compiler/TypeAsString.hpp index 977e2305..06b5578a 100644 --- a/include/fast_ber/compiler/TypeAsString.hpp +++ b/include/fast_ber/compiler/TypeAsString.hpp @@ -1,6 +1,7 @@ #pragma once #include "fast_ber/compiler/CompilerTypes.hpp" +#include "fast_ber/compiler/ResolveTypeFwd.hpp" std::string type_as_string(const AnyType&, const Module&, const Asn1Tree&); std::string type_as_string(const BitStringType&, const Module&, const Asn1Tree&); @@ -104,7 +105,34 @@ std::string type_as_string(const InstanceOfType&, const Module&, const Asn1Tree& std::string type_as_string(const IntegerType&, const Module&, const Asn1Tree&) { return "Integer"; } std::string type_as_string(const IRIType&, const Module&, const Asn1Tree&) { return "IRI"; } std::string type_as_string(const NullType&, const Module&, const Asn1Tree&) { return "Null"; } -std::string type_as_string(const ObjectClassFieldType&, const Module&, const Asn1Tree&) { return "ObjectClassField"; } +std::string type_as_string(const ObjectClassFieldType& object_class_field, const Module& module, const Asn1Tree& tree) +{ + const Assignment& assigment = resolve(tree, module.module_reference, object_class_field.referenced_object_class); + if (!is_object_class(assigment)) + { + throw std::runtime_error("Referenced object is not an ObjectClass " + + object_class_field.referenced_object_class.type_reference); + } + + if (object_class_field.fieldnames.size() == 1) + { + for (const ClassField& field : object_class(assigment).fields) + { + if (field.name == object_class_field.fieldnames[0]) + { + if (absl::holds_alternative(field.field)) + { + return type_as_string(absl::get(field.field).type, module, tree); + } + throw std::runtime_error("Referenced class filed does not have a type " + + object_class_field.referenced_object_class.type_reference); + } + } + } + + throw std::runtime_error("Failed to parse object field reference " + + object_class_field.referenced_object_class.type_reference); +} std::string type_as_string(const ObjectDescriptorType&, const Module&, const Asn1Tree&) { return "ObjectDescriptor"; } std::string type_as_string(const ObjectIdentifierType&, const Module&, const Asn1Tree&) { return "ObjectIdentifier"; } std::string type_as_string(const OctetStringType&, const Module&, const Asn1Tree&) { return "OctetString"; } diff --git a/src/compile_commands.json b/src/compile_commands.json new file mode 100644 index 00000000..b5cb6a73 --- /dev/null +++ b/src/compile_commands.json @@ -0,0 +1,75 @@ +[ +{ + "arguments": [ + "clang", + "-c", + "-m64", + "-target", + "x86_64-linux-gnu", + "-std=gnu++14", + "-fcxx-exceptions", + "-fexceptions", + "-DBOOST_TYPE_INDEX_CTTI_USER_DEFINED_PARSING=(39, 1, true, \"T = \")", + "-fPIC", + "-I", + "/home/styler/git/fast_ber/src/SYSTEM", + "-I", + "/home/styler/git/fast_ber/src/../3rd_party/abseil-cpp", + "-I", + "/home/styler/git/fast_ber/src/../include", + "-I", + "/home/styler/git/fast_ber/build-src-Desktop_Qt_5_11_2_GCC_64bit-Default", + "-x", + "c++-header", + "/home/styler/git/fast_ber/build-src-Desktop_Qt_5_11_2_GCC_64bit-Default/autogen/asn_compiler.hpp" + ], + "directory": "/home/styler/git/fast_ber/build-src-Desktop_Qt_5_11_2_GCC_64bit-Default", + "file": "/home/styler/git/fast_ber/build-src-Desktop_Qt_5_11_2_GCC_64bit-Default/autogen/asn_compiler.hpp" +}, +{ + "arguments": [ + "clang++", + "-c", + "-m64", + "-target", + "x86_64-linux-gnu", + "-std=gnu++14", + "-fcxx-exceptions", + "-fexceptions", + "-DBOOST_TYPE_INDEX_CTTI_USER_DEFINED_PARSING=(39, 1, true, \"T = \")", + "-fPIC", + "-I", + "/home/styler/git/fast_ber/src/SYSTEM", + "-I", + "/home/styler/git/fast_ber/src/../3rd_party/abseil-cpp", + "-I", + "/home/styler/git/fast_ber/src/../include", + "-I", + "/home/styler/git/fast_ber/build-src-Desktop_Qt_5_11_2_GCC_64bit-Default", + "-x", + "c++", + "/home/styler/git/fast_ber/src/compiler/CompilerMain.cpp" + ], + "directory": "/home/styler/git/fast_ber/build-src-Desktop_Qt_5_11_2_GCC_64bit-Default", + "file": "/home/styler/git/fast_ber/src/compiler/CompilerMain.cpp" +}, +{ + "arguments": [ + "clang++", + "-c", + "-m64", + "-target", + "x86_64-linux-gnu", + "-std=gnu++14", + "-fcxx-exceptions", + "-fexceptions", + "-DBOOST_TYPE_INDEX_CTTI_USER_DEFINED_PARSING=(39, 1, true, \"T = \")", + "-fPIC", + "-x", + "c++", + "/home/styler/git/fast_ber/src/empty.cpp" + ], + "directory": "/home/styler/git/fast_ber/build-src-Desktop_Qt_5_11_2_GCC_64bit-Default", + "file": "/home/styler/git/fast_ber/src/empty.cpp" +} +] \ No newline at end of file diff --git a/src/compiler/CompilerMain.cpp b/src/compiler/CompilerMain.cpp index 0574b18b..afa79dce 100644 --- a/src/compiler/CompilerMain.cpp +++ b/src/compiler/CompilerMain.cpp @@ -52,9 +52,18 @@ std::string create_assignment(const Asn1Tree& tree, const Module& module, const const ValueAssignment& value_assign = absl::get(assignment.specific); std::string result = fully_tagged_type(value_assign.type, module, tree) + " " + assignment.name + " = "; + if (is_defined(value_assign.type)) + { + if (!exists(tree, module.module_reference, absl::get(value_assign.type)) || + !is_type(resolve(tree, module.module_reference, absl::get(value_assign.type)))) + { + return ""; + } + } + const Type& assigned_to_type = (is_defined(value_assign.type)) - ? resolve_type(tree, module.module_reference, absl::get(value_assign.type)) + ? type(resolve(tree, module.module_reference, absl::get(value_assign.type))) : value_assign.type; if (is_oid(assigned_to_type)) { @@ -126,6 +135,10 @@ std::string create_assignment(const Asn1Tree& tree, const Module& module, const const DefinedValue& defined = absl::get(value_assign.value.value_selection); result += defined.reference; } + else + { + return ""; + } result += ";\n"; return result; @@ -137,6 +150,12 @@ std::string create_assignment(const Asn1Tree& tree, const Module& module, const else if (absl::holds_alternative(assignment.specific)) { std::cerr << "Warning: Parsed but ignoring class assignment: " << assignment.name << std::endl; + + const ObjectClassAssignment& class_assignment = absl::get(assignment.specific); + for (const ClassField& field : class_assignment.fields) + { + std::cerr << "Class includes field: " << field.name << std::endl; + } return ""; } else @@ -440,7 +459,19 @@ std::string create_body(const Asn1Tree& tree, const Module& module) { for (const auto& import_name : import.imports) { - output += "using " + import_name + " = " + import.module_reference + "::" + import_name + ";\n"; + if (exists(tree, import.module_reference, import_name)) + { + if (is_type(resolve(tree, import.module_reference, import_name)) || + is_value(resolve(tree, import.module_reference, import_name))) + { + output += "using " + import_name + " = " + import.module_reference + "::" + import_name + ";\n"; + } + } + else + { + std::cout << "Warning: Could not find object for import: " << import.module_reference + << "::" << import_name << std::endl; + } } if (import.imports.size() > 0) { diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 795f3c82..696bb892 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -221,6 +221,15 @@ %type Enumeration; %type EnumerationItem; %type> Exports; +%type> FieldSpecList; +%type> FieldSpec; +%type> TypeFieldSpec; +%type> FixedTypeValueFieldSpec; +%type FieldName; +%type> FieldNameList; +%type ObjectClass; +%type ObjectClassDefn; +%type> OneOrManyTypeFieldReference; %type ModuleBody; %type> AlternativeTypeList; %type> AlternativeTypeLists @@ -341,23 +350,30 @@ UsefulObjectClassReference: ObjectClassAssignment: typereference DEFINED_AS ObjectClass - { $$ = Assignment{$1, ObjectClassAssignment{}}; } + { $$ = Assignment{$1, $3}; } ObjectClass: DefinedObjectClass + { std::cerr << "Warning - Unhandled DefinedObjectClass\n"; } | ObjectClassDefn + { $$ = $1; } //| ParameterizedObjectClass; ObjectClassDefn: CLASS "{" FieldSpecList "}" WithSyntaxSpec + { $$ = {$3}; } FieldSpecList: FieldSpec + { $$ = $1; } | FieldSpecList "," FieldSpec + { $$ = $1; $$.insert($$.end(), $3.begin(), $3.end()); } FieldSpec: TypeFieldSpec + { $$ = $1; } | FixedTypeValueFieldSpec + { $$ = $1; } | VariableTypeValueFieldSpec | FixedTypeValueSetFieldSpec | ObjectFieldSpec @@ -365,17 +381,29 @@ FieldSpec: FieldName: typefieldreference + { $$ = $1; } | valuefieldreference + { $$ = $1; } +/* Same underlying as typefieldreference and valuefieldreference | valuesetfieldreference | objectfieldreference -| objectsetfieldreference; +| objectsetfieldreference */ FieldNameList: FieldName + { $$.push_back($1); } | FieldNameList "." FieldName + { $$ = $1; $$.push_back($3); } TypeFieldSpec: - typefieldreference TypeOptionalitySpec + OneOrManyTypeFieldReference TypeOptionalitySpec + { for (const std::string& name : $1) $$.push_back(ClassField{name, TypeField{}}); } + +OneOrManyTypeFieldReference: + typefieldreference + { $$.push_back($1); } +| OneOrManyTypeFieldReference typefieldreference + { $$ = $1; $$.push_back($2); } TypeOptionalitySpec: OPTIONAL @@ -383,25 +411,26 @@ TypeOptionalitySpec: | %empty OptionalUnique: - UNIQUE + OPTIONAL +| UNIQUE | %empty FixedTypeValueFieldSpec: - valuefieldreference Type OptionalUnique ValueOptionalitySpec; + valuefieldreference Type OptionalUnique ValueOptionalitySpec + { $$.push_back(ClassField{$1, FixedTypeValueField{$2}}); } ValueOptionalitySpec: OPTIONAL | DEFAULT SingleValue | %empty - VariableTypeValueFieldSpec: - valuefieldreference FieldName ValueOptionalitySpec; + valuefieldreference FieldName OptionalUnique ValueOptionalitySpec; FixedTypeValueSetFieldSpec: - typefieldreference Type ValueSetOptionalitySpec + typefieldreference Type OptionalUnique ValueSetDefaultSpec -ValueSetOptionalitySpec: +ValueSetDefaultSpec: OPTIONAL | DEFAULT ValueSet | %empty @@ -524,6 +553,7 @@ ObjectSetElements: ObjectClassFieldType: UsefulObjectClassReference "." FieldNameList | typereference "." FieldNameList + { $$ = {DefinedType{{}, $1}, $3}; } ObjectClassFieldValue: Type COLON Value; @@ -1006,6 +1036,10 @@ ValueWithoutTypeIdentifier: { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } //| ObjectClassFieldValue // { std::cerr << std::string("Warning: Unhandled field: ObjectClassFieldValue\n"); } +| valuereference "." typefieldreference +| valuereference "." valuefieldreference +| typefieldreference +| valuefieldreference | "{" SequenceOfValues "}" { $$.value_selection = $2; } | ValueChoice @@ -1018,6 +1052,8 @@ ValueWithoutTypeIdentifier: { std::cerr << std::string("Warning: Unhandled field: BY\n"); } | WITH { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } +| INTEGER + Value: ValueWithoutTypeIdentifier diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index 78e0317d..ebcfb964 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -756,84 +756,88 @@ namespace yy { // NullType char dummy26[sizeof(NullType)]; + // ObjectClass + // ObjectClassDefn + char dummy27[sizeof(ObjectClassAssignment)]; + // ObjectClassFieldType - char dummy27[sizeof(ObjectClassFieldType)]; + char dummy28[sizeof(ObjectClassFieldType)]; // ObjIdComponents // NameForm // NumberForm // NameAndNumberForm - char dummy28[sizeof(ObjectIdComponentValue)]; + char dummy29[sizeof(ObjectIdComponentValue)]; // ObjectIdentifierType - char dummy29[sizeof(ObjectIdentifierType)]; + char dummy30[sizeof(ObjectIdentifierType)]; // OctetStringType - char dummy30[sizeof(OctetStringType)]; + char dummy31[sizeof(OctetStringType)]; // PrefixedType - char dummy31[sizeof(PrefixedType)]; + char dummy32[sizeof(PrefixedType)]; // RealType - char dummy32[sizeof(RealType)]; + char dummy33[sizeof(RealType)]; // RelativeIRIType - char dummy33[sizeof(RelativeIRIType)]; + char dummy34[sizeof(RelativeIRIType)]; // RelativeOIDType - char dummy34[sizeof(RelativeOIDType)]; + char dummy35[sizeof(RelativeOIDType)]; // SequenceOfType - char dummy35[sizeof(SequenceOfType)]; + char dummy36[sizeof(SequenceOfType)]; // SequenceType - char dummy36[sizeof(SequenceType)]; + char dummy37[sizeof(SequenceType)]; // SetOfType - char dummy37[sizeof(SetOfType)]; + char dummy38[sizeof(SetOfType)]; // SetType - char dummy38[sizeof(SetType)]; + char dummy39[sizeof(SetType)]; // Tag - char dummy39[sizeof(Tag)]; + char dummy40[sizeof(Tag)]; // TaggedType - char dummy40[sizeof(TaggedType)]; + char dummy41[sizeof(TaggedType)]; // TagDefault - char dummy41[sizeof(TaggingMode)]; + char dummy42[sizeof(TaggingMode)]; // TimeOfDayType - char dummy42[sizeof(TimeOfDayType)]; + char dummy43[sizeof(TimeOfDayType)]; // TimeType - char dummy43[sizeof(TimeType)]; + char dummy44[sizeof(TimeType)]; // ActualParameter // Type // ConstrainedType // TypeWithConstraint - char dummy44[sizeof(Type)]; + char dummy45[sizeof(Type)]; // ValueWithoutTypeIdentifier // Value // SingleValue - char dummy45[sizeof(Value)]; + char dummy46[sizeof(Value)]; // realnumber - char dummy46[sizeof(double)]; + char dummy47[sizeof(double)]; // ClassNumber - char dummy47[sizeof(int)]; + char dummy48[sizeof(int)]; // number // SignedNumber - char dummy48[sizeof(long long)]; + char dummy49[sizeof(long long)]; // ParameterList // ParameterSeries - char dummy49[sizeof(std::set)]; + char dummy50[sizeof(std::set)]; // bstring // xmlbstring @@ -848,6 +852,7 @@ namespace yy { // valuefieldreference // GENERIC_IDENTIFIER_UPPERCASE // GENERIC_IDENTIFIER_LOWERCASE + // FieldName // Parameter // SimpleDefinedType // ModuleIdentifier @@ -860,39 +865,47 @@ namespace yy { // modulereference // objectclassreference // word - char dummy50[sizeof(std::string)]; + char dummy51[sizeof(std::string)]; // AssignmentList - char dummy51[sizeof(std::vector)]; + char dummy52[sizeof(std::vector)]; + + // FieldSpecList + // FieldSpec + // TypeFieldSpec + // FixedTypeValueFieldSpec + char dummy53[sizeof(std::vector)]; // Exports - char dummy52[sizeof(std::vector)]; + char dummy54[sizeof(std::vector)]; // Imports // SymbolsImported // SymbolsFromModuleList - char dummy53[sizeof(std::vector)]; + char dummy55[sizeof(std::vector)]; // NamedNumberList - char dummy54[sizeof(std::vector)]; + char dummy56[sizeof(std::vector)]; // AlternativeTypeLists // RootAlternativeTypeList // AlternativeTypeList - char dummy55[sizeof(std::vector)]; + char dummy57[sizeof(std::vector)]; // ObjectIdentifierValue // ObjIdComponentsList - char dummy56[sizeof(std::vector)]; + char dummy58[sizeof(std::vector)]; // ActualParameterList - char dummy57[sizeof(std::vector)]; + char dummy59[sizeof(std::vector)]; // SequenceOfValues - char dummy58[sizeof(std::vector)]; + char dummy60[sizeof(std::vector)]; + // FieldNameList + // OneOrManyTypeFieldReference // SymbolList - char dummy59[sizeof(std::vector)]; + char dummy61[sizeof(std::vector)]; }; /// Symbol semantic values. @@ -1151,6 +1164,8 @@ namespace yy { basic_symbol (typename Base::kind_type t, const NullType v, const location_type& l); + basic_symbol (typename Base::kind_type t, const ObjectClassAssignment v, const location_type& l); + basic_symbol (typename Base::kind_type t, const ObjectClassFieldType v, const location_type& l); basic_symbol (typename Base::kind_type t, const ObjectIdComponentValue v, const location_type& l); @@ -1201,6 +1216,8 @@ namespace yy { basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l); + basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l); + basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l); basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l); @@ -2077,8 +2094,8 @@ namespace yy { enum { yyeof_ = 0, - yylast_ = 3833, ///< Last index in yytable_. - yynnts_ = 226, ///< Number of nonterminal symbols. + yylast_ = 4006, ///< Last index in yytable_. + yynnts_ = 227, ///< Number of nonterminal symbols. yyfinal_ = 6, ///< Termination state number. yyterror_ = 1, yyerrcode_ = 256, @@ -2175,206 +2192,211 @@ namespace yy { switch (other.type_get ()) { case 159: // ObjectClassAssignment - case 197: // ObjectSetAssignment - case 201: // ParameterizedAssignment - case 202: // ParameterizedTypeAssignment - case 203: // ParameterizedValueAssignment - case 204: // ParameterizedValueSetTypeAssignment - case 205: // ParameterizedObjectClassAssignment - case 206: // ParameterizedObjectAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 198: // ObjectSetAssignment + case 202: // ParameterizedAssignment + case 203: // ParameterizedTypeAssignment + case 204: // ParameterizedValueAssignment + case 205: // ParameterizedValueSetTypeAssignment + case 206: // ParameterizedObjectClassAssignment + case 207: // ParameterizedObjectAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.copy< Assignment > (other.value); break; - case 283: // BitStringType + case 284: // BitStringType value.copy< BitStringType > (other.value); break; - case 272: // BooleanType + case 273: // BooleanType value.copy< BooleanType > (other.value); break; - case 264: // BuiltinType + case 265: // BuiltinType value.copy< BuiltinType > (other.value); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.copy< CharacterStringType > (other.value); break; - case 295: // ChoiceType + case 296: // ChoiceType value.copy< ChoiceType > (other.value); break; - case 305: // Class + case 306: // Class value.copy< Class > (other.value); break; - case 291: // ComponentType + case 292: // ComponentType value.copy< ComponentType > (other.value); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.copy< ComponentTypeList > (other.value); break; - case 326: // DateTimeType + case 327: // DateTimeType value.copy< DateTimeType > (other.value); break; - case 324: // DateType + case 325: // DateType value.copy< DateType > (other.value); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.copy< DefinedType > (other.value); break; - case 253: // DefinedValue + case 254: // DefinedValue value.copy< DefinedValue > (other.value); break; - case 327: // DurationType + case 328: // DurationType value.copy< DurationType > (other.value); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.copy< EmbeddedPDVType > (other.value); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.copy< EnumeratedType > (other.value); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.copy< EnumerationValue > (other.value); break; - case 321: // ExternalType + case 322: // ExternalType value.copy< ExternalType > (other.value); break; - case 314: // IRIType + case 315: // IRIType value.copy< IRIType > (other.value); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.copy< Import > (other.value); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.copy< InstanceOfType > (other.value); break; - case 274: // IntegerType + case 275: // IntegerType value.copy< IntegerType > (other.value); break; - case 238: // ModuleBody + case 239: // ModuleBody value.copy< Module > (other.value); break; - case 276: // NamedNumber + case 277: // NamedNumber value.copy< NamedNumber > (other.value); break; - case 265: // NamedType + case 266: // NamedType value.copy< NamedType > (other.value); break; - case 287: // NullType + case 288: // NullType value.copy< NullType > (other.value); break; - case 200: // ObjectClassFieldType + case 160: // ObjectClass + case 161: // ObjectClassDefn + value.copy< ObjectClassAssignment > (other.value); + break; + + case 201: // ObjectClassFieldType value.copy< ObjectClassFieldType > (other.value); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.copy< ObjectIdComponentValue > (other.value); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.copy< ObjectIdentifierType > (other.value); break; - case 286: // OctetStringType + case 287: // OctetStringType value.copy< OctetStringType > (other.value); break; - case 300: // PrefixedType + case 301: // PrefixedType value.copy< PrefixedType > (other.value); break; - case 282: // RealType + case 283: // RealType value.copy< RealType > (other.value); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.copy< RelativeIRIType > (other.value); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.copy< RelativeOIDType > (other.value); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.copy< SequenceOfType > (other.value); break; - case 288: // SequenceType + case 289: // SequenceType value.copy< SequenceType > (other.value); break; - case 294: // SetOfType + case 295: // SetOfType value.copy< SetOfType > (other.value); break; - case 293: // SetType + case 294: // SetType value.copy< SetType > (other.value); break; - case 302: // Tag + case 303: // Tag value.copy< Tag > (other.value); break; - case 301: // TaggedType + case 302: // TaggedType value.copy< TaggedType > (other.value); break; - case 236: // TagDefault + case 237: // TagDefault value.copy< TaggingMode > (other.value); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.copy< TimeOfDayType > (other.value); break; - case 322: // TimeType + case 323: // TimeType value.copy< TimeType > (other.value); break; - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.copy< Type > (other.value); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.copy< Value > (other.value); break; @@ -2382,17 +2404,17 @@ namespace yy { value.copy< double > (other.value); break; - case 304: // ClassNumber + case 305: // ClassNumber value.copy< int > (other.value); break; case 4: // number - case 277: // SignedNumber + case 278: // SignedNumber value.copy< long long > (other.value); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.copy< std::set > (other.value); break; @@ -2409,59 +2431,69 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 209: // Parameter - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 164: // FieldName + case 210: // Parameter + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.copy< std::string > (other.value); break; - case 250: // AssignmentList + case 251: // AssignmentList value.copy< std::vector > (other.value); break; - case 239: // Exports + case 162: // FieldSpecList + case 163: // FieldSpec + case 166: // TypeFieldSpec + case 170: // FixedTypeValueFieldSpec + value.copy< std::vector > (other.value); + break; + + case 240: // Exports value.copy< std::vector > (other.value); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.copy< std::vector > (other.value); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.copy< std::vector > (other.value); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.copy< std::vector > (other.value); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.copy< std::vector > (other.value); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.copy< std::vector > (other.value); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.copy< std::vector > (other.value); break; - case 247: // SymbolList + case 165: // FieldNameList + case 167: // OneOrManyTypeFieldReference + case 248: // SymbolList value.copy< std::vector > (other.value); break; @@ -2483,206 +2515,211 @@ namespace yy { switch (this->type_get ()) { case 159: // ObjectClassAssignment - case 197: // ObjectSetAssignment - case 201: // ParameterizedAssignment - case 202: // ParameterizedTypeAssignment - case 203: // ParameterizedValueAssignment - case 204: // ParameterizedValueSetTypeAssignment - case 205: // ParameterizedObjectClassAssignment - case 206: // ParameterizedObjectAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 198: // ObjectSetAssignment + case 202: // ParameterizedAssignment + case 203: // ParameterizedTypeAssignment + case 204: // ParameterizedValueAssignment + case 205: // ParameterizedValueSetTypeAssignment + case 206: // ParameterizedObjectClassAssignment + case 207: // ParameterizedObjectAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.copy< Assignment > (v); break; - case 283: // BitStringType + case 284: // BitStringType value.copy< BitStringType > (v); break; - case 272: // BooleanType + case 273: // BooleanType value.copy< BooleanType > (v); break; - case 264: // BuiltinType + case 265: // BuiltinType value.copy< BuiltinType > (v); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.copy< CharacterStringType > (v); break; - case 295: // ChoiceType + case 296: // ChoiceType value.copy< ChoiceType > (v); break; - case 305: // Class + case 306: // Class value.copy< Class > (v); break; - case 291: // ComponentType + case 292: // ComponentType value.copy< ComponentType > (v); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.copy< ComponentTypeList > (v); break; - case 326: // DateTimeType + case 327: // DateTimeType value.copy< DateTimeType > (v); break; - case 324: // DateType + case 325: // DateType value.copy< DateType > (v); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.copy< DefinedType > (v); break; - case 253: // DefinedValue + case 254: // DefinedValue value.copy< DefinedValue > (v); break; - case 327: // DurationType + case 328: // DurationType value.copy< DurationType > (v); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.copy< EmbeddedPDVType > (v); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.copy< EnumeratedType > (v); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.copy< EnumerationValue > (v); break; - case 321: // ExternalType + case 322: // ExternalType value.copy< ExternalType > (v); break; - case 314: // IRIType + case 315: // IRIType value.copy< IRIType > (v); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.copy< Import > (v); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.copy< InstanceOfType > (v); break; - case 274: // IntegerType + case 275: // IntegerType value.copy< IntegerType > (v); break; - case 238: // ModuleBody + case 239: // ModuleBody value.copy< Module > (v); break; - case 276: // NamedNumber + case 277: // NamedNumber value.copy< NamedNumber > (v); break; - case 265: // NamedType + case 266: // NamedType value.copy< NamedType > (v); break; - case 287: // NullType + case 288: // NullType value.copy< NullType > (v); break; - case 200: // ObjectClassFieldType + case 160: // ObjectClass + case 161: // ObjectClassDefn + value.copy< ObjectClassAssignment > (v); + break; + + case 201: // ObjectClassFieldType value.copy< ObjectClassFieldType > (v); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.copy< ObjectIdComponentValue > (v); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.copy< ObjectIdentifierType > (v); break; - case 286: // OctetStringType + case 287: // OctetStringType value.copy< OctetStringType > (v); break; - case 300: // PrefixedType + case 301: // PrefixedType value.copy< PrefixedType > (v); break; - case 282: // RealType + case 283: // RealType value.copy< RealType > (v); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.copy< RelativeIRIType > (v); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.copy< RelativeOIDType > (v); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.copy< SequenceOfType > (v); break; - case 288: // SequenceType + case 289: // SequenceType value.copy< SequenceType > (v); break; - case 294: // SetOfType + case 295: // SetOfType value.copy< SetOfType > (v); break; - case 293: // SetType + case 294: // SetType value.copy< SetType > (v); break; - case 302: // Tag + case 303: // Tag value.copy< Tag > (v); break; - case 301: // TaggedType + case 302: // TaggedType value.copy< TaggedType > (v); break; - case 236: // TagDefault + case 237: // TagDefault value.copy< TaggingMode > (v); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.copy< TimeOfDayType > (v); break; - case 322: // TimeType + case 323: // TimeType value.copy< TimeType > (v); break; - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.copy< Type > (v); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.copy< Value > (v); break; @@ -2690,17 +2727,17 @@ namespace yy { value.copy< double > (v); break; - case 304: // ClassNumber + case 305: // ClassNumber value.copy< int > (v); break; case 4: // number - case 277: // SignedNumber + case 278: // SignedNumber value.copy< long long > (v); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.copy< std::set > (v); break; @@ -2717,59 +2754,69 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 209: // Parameter - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 164: // FieldName + case 210: // Parameter + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.copy< std::string > (v); break; - case 250: // AssignmentList + case 251: // AssignmentList value.copy< std::vector > (v); break; - case 239: // Exports + case 162: // FieldSpecList + case 163: // FieldSpec + case 166: // TypeFieldSpec + case 170: // FixedTypeValueFieldSpec + value.copy< std::vector > (v); + break; + + case 240: // Exports value.copy< std::vector > (v); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.copy< std::vector > (v); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.copy< std::vector > (v); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.copy< std::vector > (v); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.copy< std::vector > (v); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.copy< std::vector > (v); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.copy< std::vector > (v); break; - case 247: // SymbolList + case 165: // FieldNameList + case 167: // OneOrManyTypeFieldReference + case 248: // SymbolList value.copy< std::vector > (v); break; @@ -2970,6 +3017,13 @@ namespace yy { , location (l) {} + template + asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const ObjectClassAssignment v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} + template asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const ObjectClassFieldType v, const location_type& l) : Base (t) @@ -3145,6 +3199,13 @@ namespace yy { , location (l) {} + template + asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} + template asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l) : Base (t) @@ -3228,206 +3289,211 @@ namespace yy { switch (yytype) { case 159: // ObjectClassAssignment - case 197: // ObjectSetAssignment - case 201: // ParameterizedAssignment - case 202: // ParameterizedTypeAssignment - case 203: // ParameterizedValueAssignment - case 204: // ParameterizedValueSetTypeAssignment - case 205: // ParameterizedObjectClassAssignment - case 206: // ParameterizedObjectAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 198: // ObjectSetAssignment + case 202: // ParameterizedAssignment + case 203: // ParameterizedTypeAssignment + case 204: // ParameterizedValueAssignment + case 205: // ParameterizedValueSetTypeAssignment + case 206: // ParameterizedObjectClassAssignment + case 207: // ParameterizedObjectAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.template destroy< Assignment > (); break; - case 283: // BitStringType + case 284: // BitStringType value.template destroy< BitStringType > (); break; - case 272: // BooleanType + case 273: // BooleanType value.template destroy< BooleanType > (); break; - case 264: // BuiltinType + case 265: // BuiltinType value.template destroy< BuiltinType > (); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.template destroy< CharacterStringType > (); break; - case 295: // ChoiceType + case 296: // ChoiceType value.template destroy< ChoiceType > (); break; - case 305: // Class + case 306: // Class value.template destroy< Class > (); break; - case 291: // ComponentType + case 292: // ComponentType value.template destroy< ComponentType > (); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.template destroy< ComponentTypeList > (); break; - case 326: // DateTimeType + case 327: // DateTimeType value.template destroy< DateTimeType > (); break; - case 324: // DateType + case 325: // DateType value.template destroy< DateType > (); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.template destroy< DefinedType > (); break; - case 253: // DefinedValue + case 254: // DefinedValue value.template destroy< DefinedValue > (); break; - case 327: // DurationType + case 328: // DurationType value.template destroy< DurationType > (); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.template destroy< EmbeddedPDVType > (); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.template destroy< EnumeratedType > (); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.template destroy< EnumerationValue > (); break; - case 321: // ExternalType + case 322: // ExternalType value.template destroy< ExternalType > (); break; - case 314: // IRIType + case 315: // IRIType value.template destroy< IRIType > (); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.template destroy< Import > (); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.template destroy< InstanceOfType > (); break; - case 274: // IntegerType + case 275: // IntegerType value.template destroy< IntegerType > (); break; - case 238: // ModuleBody + case 239: // ModuleBody value.template destroy< Module > (); break; - case 276: // NamedNumber + case 277: // NamedNumber value.template destroy< NamedNumber > (); break; - case 265: // NamedType + case 266: // NamedType value.template destroy< NamedType > (); break; - case 287: // NullType + case 288: // NullType value.template destroy< NullType > (); break; - case 200: // ObjectClassFieldType + case 160: // ObjectClass + case 161: // ObjectClassDefn + value.template destroy< ObjectClassAssignment > (); + break; + + case 201: // ObjectClassFieldType value.template destroy< ObjectClassFieldType > (); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.template destroy< ObjectIdComponentValue > (); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.template destroy< ObjectIdentifierType > (); break; - case 286: // OctetStringType + case 287: // OctetStringType value.template destroy< OctetStringType > (); break; - case 300: // PrefixedType + case 301: // PrefixedType value.template destroy< PrefixedType > (); break; - case 282: // RealType + case 283: // RealType value.template destroy< RealType > (); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.template destroy< RelativeIRIType > (); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.template destroy< RelativeOIDType > (); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.template destroy< SequenceOfType > (); break; - case 288: // SequenceType + case 289: // SequenceType value.template destroy< SequenceType > (); break; - case 294: // SetOfType + case 295: // SetOfType value.template destroy< SetOfType > (); break; - case 293: // SetType + case 294: // SetType value.template destroy< SetType > (); break; - case 302: // Tag + case 303: // Tag value.template destroy< Tag > (); break; - case 301: // TaggedType + case 302: // TaggedType value.template destroy< TaggedType > (); break; - case 236: // TagDefault + case 237: // TagDefault value.template destroy< TaggingMode > (); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.template destroy< TimeOfDayType > (); break; - case 322: // TimeType + case 323: // TimeType value.template destroy< TimeType > (); break; - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.template destroy< Type > (); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.template destroy< Value > (); break; @@ -3435,17 +3501,17 @@ namespace yy { value.template destroy< double > (); break; - case 304: // ClassNumber + case 305: // ClassNumber value.template destroy< int > (); break; case 4: // number - case 277: // SignedNumber + case 278: // SignedNumber value.template destroy< long long > (); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.template destroy< std::set > (); break; @@ -3462,59 +3528,69 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 209: // Parameter - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 164: // FieldName + case 210: // Parameter + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.template destroy< std::string > (); break; - case 250: // AssignmentList + case 251: // AssignmentList value.template destroy< std::vector > (); break; - case 239: // Exports + case 162: // FieldSpecList + case 163: // FieldSpec + case 166: // TypeFieldSpec + case 170: // FixedTypeValueFieldSpec + value.template destroy< std::vector > (); + break; + + case 240: // Exports value.template destroy< std::vector > (); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.template destroy< std::vector > (); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.template destroy< std::vector > (); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.template destroy< std::vector > (); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.template destroy< std::vector > (); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.template destroy< std::vector > (); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.template destroy< std::vector > (); break; - case 247: // SymbolList + case 165: // FieldNameList + case 167: // OneOrManyTypeFieldReference + case 248: // SymbolList value.template destroy< std::vector > (); break; @@ -3542,206 +3618,211 @@ namespace yy { switch (this->type_get ()) { case 159: // ObjectClassAssignment - case 197: // ObjectSetAssignment - case 201: // ParameterizedAssignment - case 202: // ParameterizedTypeAssignment - case 203: // ParameterizedValueAssignment - case 204: // ParameterizedValueSetTypeAssignment - case 205: // ParameterizedObjectClassAssignment - case 206: // ParameterizedObjectAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 198: // ObjectSetAssignment + case 202: // ParameterizedAssignment + case 203: // ParameterizedTypeAssignment + case 204: // ParameterizedValueAssignment + case 205: // ParameterizedValueSetTypeAssignment + case 206: // ParameterizedObjectClassAssignment + case 207: // ParameterizedObjectAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.move< Assignment > (s.value); break; - case 283: // BitStringType + case 284: // BitStringType value.move< BitStringType > (s.value); break; - case 272: // BooleanType + case 273: // BooleanType value.move< BooleanType > (s.value); break; - case 264: // BuiltinType + case 265: // BuiltinType value.move< BuiltinType > (s.value); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.move< CharacterStringType > (s.value); break; - case 295: // ChoiceType + case 296: // ChoiceType value.move< ChoiceType > (s.value); break; - case 305: // Class + case 306: // Class value.move< Class > (s.value); break; - case 291: // ComponentType + case 292: // ComponentType value.move< ComponentType > (s.value); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.move< ComponentTypeList > (s.value); break; - case 326: // DateTimeType + case 327: // DateTimeType value.move< DateTimeType > (s.value); break; - case 324: // DateType + case 325: // DateType value.move< DateType > (s.value); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.move< DefinedType > (s.value); break; - case 253: // DefinedValue + case 254: // DefinedValue value.move< DefinedValue > (s.value); break; - case 327: // DurationType + case 328: // DurationType value.move< DurationType > (s.value); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.move< EmbeddedPDVType > (s.value); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.move< EnumeratedType > (s.value); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.move< EnumerationValue > (s.value); break; - case 321: // ExternalType + case 322: // ExternalType value.move< ExternalType > (s.value); break; - case 314: // IRIType + case 315: // IRIType value.move< IRIType > (s.value); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.move< Import > (s.value); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.move< InstanceOfType > (s.value); break; - case 274: // IntegerType + case 275: // IntegerType value.move< IntegerType > (s.value); break; - case 238: // ModuleBody + case 239: // ModuleBody value.move< Module > (s.value); break; - case 276: // NamedNumber + case 277: // NamedNumber value.move< NamedNumber > (s.value); break; - case 265: // NamedType + case 266: // NamedType value.move< NamedType > (s.value); break; - case 287: // NullType + case 288: // NullType value.move< NullType > (s.value); break; - case 200: // ObjectClassFieldType + case 160: // ObjectClass + case 161: // ObjectClassDefn + value.move< ObjectClassAssignment > (s.value); + break; + + case 201: // ObjectClassFieldType value.move< ObjectClassFieldType > (s.value); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.move< ObjectIdComponentValue > (s.value); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.move< ObjectIdentifierType > (s.value); break; - case 286: // OctetStringType + case 287: // OctetStringType value.move< OctetStringType > (s.value); break; - case 300: // PrefixedType + case 301: // PrefixedType value.move< PrefixedType > (s.value); break; - case 282: // RealType + case 283: // RealType value.move< RealType > (s.value); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.move< RelativeIRIType > (s.value); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.move< RelativeOIDType > (s.value); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.move< SequenceOfType > (s.value); break; - case 288: // SequenceType + case 289: // SequenceType value.move< SequenceType > (s.value); break; - case 294: // SetOfType + case 295: // SetOfType value.move< SetOfType > (s.value); break; - case 293: // SetType + case 294: // SetType value.move< SetType > (s.value); break; - case 302: // Tag + case 303: // Tag value.move< Tag > (s.value); break; - case 301: // TaggedType + case 302: // TaggedType value.move< TaggedType > (s.value); break; - case 236: // TagDefault + case 237: // TagDefault value.move< TaggingMode > (s.value); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.move< TimeOfDayType > (s.value); break; - case 322: // TimeType + case 323: // TimeType value.move< TimeType > (s.value); break; - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.move< Type > (s.value); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.move< Value > (s.value); break; @@ -3749,17 +3830,17 @@ namespace yy { value.move< double > (s.value); break; - case 304: // ClassNumber + case 305: // ClassNumber value.move< int > (s.value); break; case 4: // number - case 277: // SignedNumber + case 278: // SignedNumber value.move< long long > (s.value); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.move< std::set > (s.value); break; @@ -3776,59 +3857,69 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 209: // Parameter - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 164: // FieldName + case 210: // Parameter + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.move< std::string > (s.value); break; - case 250: // AssignmentList + case 251: // AssignmentList value.move< std::vector > (s.value); break; - case 239: // Exports + case 162: // FieldSpecList + case 163: // FieldSpec + case 166: // TypeFieldSpec + case 170: // FixedTypeValueFieldSpec + value.move< std::vector > (s.value); + break; + + case 240: // Exports value.move< std::vector > (s.value); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.move< std::vector > (s.value); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.move< std::vector > (s.value); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.move< std::vector > (s.value); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.move< std::vector > (s.value); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.move< std::vector > (s.value); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.move< std::vector > (s.value); break; - case 247: // SymbolList + case 165: // FieldNameList + case 167: // OneOrManyTypeFieldReference + case 248: // SymbolList value.move< std::vector > (s.value); break; @@ -4792,7 +4883,7 @@ namespace yy { } // yy -#line 4794 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 4885 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:408 @@ -4800,7 +4891,7 @@ namespace yy { // User implementation prologue. -#line 4802 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:412 +#line 4893 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:412 // Unqualified %code blocks. #line 15 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:413 @@ -4819,7 +4910,7 @@ namespace yy { namespace yy { asn1_parser::symbol_type yylex(Context& c); } -#line 4821 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:413 +#line 4912 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:413 #ifndef YY_ @@ -4905,7 +4996,7 @@ namespace yy { namespace yy { -#line 4907 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:479 +#line 4998 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:479 /* Return YYSTR after stripping away unnecessary quotes and backslashes, so that it's suitable for yyerror. The heuristic is @@ -5018,206 +5109,211 @@ namespace yy { switch (that.type_get ()) { case 159: // ObjectClassAssignment - case 197: // ObjectSetAssignment - case 201: // ParameterizedAssignment - case 202: // ParameterizedTypeAssignment - case 203: // ParameterizedValueAssignment - case 204: // ParameterizedValueSetTypeAssignment - case 205: // ParameterizedObjectClassAssignment - case 206: // ParameterizedObjectAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 198: // ObjectSetAssignment + case 202: // ParameterizedAssignment + case 203: // ParameterizedTypeAssignment + case 204: // ParameterizedValueAssignment + case 205: // ParameterizedValueSetTypeAssignment + case 206: // ParameterizedObjectClassAssignment + case 207: // ParameterizedObjectAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.move< Assignment > (that.value); break; - case 283: // BitStringType + case 284: // BitStringType value.move< BitStringType > (that.value); break; - case 272: // BooleanType + case 273: // BooleanType value.move< BooleanType > (that.value); break; - case 264: // BuiltinType + case 265: // BuiltinType value.move< BuiltinType > (that.value); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.move< CharacterStringType > (that.value); break; - case 295: // ChoiceType + case 296: // ChoiceType value.move< ChoiceType > (that.value); break; - case 305: // Class + case 306: // Class value.move< Class > (that.value); break; - case 291: // ComponentType + case 292: // ComponentType value.move< ComponentType > (that.value); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.move< ComponentTypeList > (that.value); break; - case 326: // DateTimeType + case 327: // DateTimeType value.move< DateTimeType > (that.value); break; - case 324: // DateType + case 325: // DateType value.move< DateType > (that.value); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.move< DefinedType > (that.value); break; - case 253: // DefinedValue + case 254: // DefinedValue value.move< DefinedValue > (that.value); break; - case 327: // DurationType + case 328: // DurationType value.move< DurationType > (that.value); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.move< EmbeddedPDVType > (that.value); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.move< EnumeratedType > (that.value); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.move< EnumerationValue > (that.value); break; - case 321: // ExternalType + case 322: // ExternalType value.move< ExternalType > (that.value); break; - case 314: // IRIType + case 315: // IRIType value.move< IRIType > (that.value); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.move< Import > (that.value); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.move< InstanceOfType > (that.value); break; - case 274: // IntegerType + case 275: // IntegerType value.move< IntegerType > (that.value); break; - case 238: // ModuleBody + case 239: // ModuleBody value.move< Module > (that.value); break; - case 276: // NamedNumber + case 277: // NamedNumber value.move< NamedNumber > (that.value); break; - case 265: // NamedType + case 266: // NamedType value.move< NamedType > (that.value); break; - case 287: // NullType + case 288: // NullType value.move< NullType > (that.value); break; - case 200: // ObjectClassFieldType + case 160: // ObjectClass + case 161: // ObjectClassDefn + value.move< ObjectClassAssignment > (that.value); + break; + + case 201: // ObjectClassFieldType value.move< ObjectClassFieldType > (that.value); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.move< ObjectIdComponentValue > (that.value); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.move< ObjectIdentifierType > (that.value); break; - case 286: // OctetStringType + case 287: // OctetStringType value.move< OctetStringType > (that.value); break; - case 300: // PrefixedType + case 301: // PrefixedType value.move< PrefixedType > (that.value); break; - case 282: // RealType + case 283: // RealType value.move< RealType > (that.value); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.move< RelativeIRIType > (that.value); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.move< RelativeOIDType > (that.value); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.move< SequenceOfType > (that.value); break; - case 288: // SequenceType + case 289: // SequenceType value.move< SequenceType > (that.value); break; - case 294: // SetOfType + case 295: // SetOfType value.move< SetOfType > (that.value); break; - case 293: // SetType + case 294: // SetType value.move< SetType > (that.value); break; - case 302: // Tag + case 303: // Tag value.move< Tag > (that.value); break; - case 301: // TaggedType + case 302: // TaggedType value.move< TaggedType > (that.value); break; - case 236: // TagDefault + case 237: // TagDefault value.move< TaggingMode > (that.value); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.move< TimeOfDayType > (that.value); break; - case 322: // TimeType + case 323: // TimeType value.move< TimeType > (that.value); break; - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.move< Type > (that.value); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.move< Value > (that.value); break; @@ -5225,17 +5321,17 @@ namespace yy { value.move< double > (that.value); break; - case 304: // ClassNumber + case 305: // ClassNumber value.move< int > (that.value); break; case 4: // number - case 277: // SignedNumber + case 278: // SignedNumber value.move< long long > (that.value); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.move< std::set > (that.value); break; @@ -5252,59 +5348,69 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 209: // Parameter - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 164: // FieldName + case 210: // Parameter + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.move< std::string > (that.value); break; - case 250: // AssignmentList + case 251: // AssignmentList value.move< std::vector > (that.value); break; - case 239: // Exports + case 162: // FieldSpecList + case 163: // FieldSpec + case 166: // TypeFieldSpec + case 170: // FixedTypeValueFieldSpec + value.move< std::vector > (that.value); + break; + + case 240: // Exports value.move< std::vector > (that.value); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.move< std::vector > (that.value); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.move< std::vector > (that.value); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.move< std::vector > (that.value); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.move< std::vector > (that.value); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.move< std::vector > (that.value); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.move< std::vector > (that.value); break; - case 247: // SymbolList + case 165: // FieldNameList + case 167: // OneOrManyTypeFieldReference + case 248: // SymbolList value.move< std::vector > (that.value); break; @@ -5324,206 +5430,211 @@ namespace yy { switch (that.type_get ()) { case 159: // ObjectClassAssignment - case 197: // ObjectSetAssignment - case 201: // ParameterizedAssignment - case 202: // ParameterizedTypeAssignment - case 203: // ParameterizedValueAssignment - case 204: // ParameterizedValueSetTypeAssignment - case 205: // ParameterizedObjectClassAssignment - case 206: // ParameterizedObjectAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 198: // ObjectSetAssignment + case 202: // ParameterizedAssignment + case 203: // ParameterizedTypeAssignment + case 204: // ParameterizedValueAssignment + case 205: // ParameterizedValueSetTypeAssignment + case 206: // ParameterizedObjectClassAssignment + case 207: // ParameterizedObjectAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.copy< Assignment > (that.value); break; - case 283: // BitStringType + case 284: // BitStringType value.copy< BitStringType > (that.value); break; - case 272: // BooleanType + case 273: // BooleanType value.copy< BooleanType > (that.value); break; - case 264: // BuiltinType + case 265: // BuiltinType value.copy< BuiltinType > (that.value); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.copy< CharacterStringType > (that.value); break; - case 295: // ChoiceType + case 296: // ChoiceType value.copy< ChoiceType > (that.value); break; - case 305: // Class + case 306: // Class value.copy< Class > (that.value); break; - case 291: // ComponentType + case 292: // ComponentType value.copy< ComponentType > (that.value); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.copy< ComponentTypeList > (that.value); break; - case 326: // DateTimeType + case 327: // DateTimeType value.copy< DateTimeType > (that.value); break; - case 324: // DateType + case 325: // DateType value.copy< DateType > (that.value); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.copy< DefinedType > (that.value); break; - case 253: // DefinedValue + case 254: // DefinedValue value.copy< DefinedValue > (that.value); break; - case 327: // DurationType + case 328: // DurationType value.copy< DurationType > (that.value); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.copy< EmbeddedPDVType > (that.value); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.copy< EnumeratedType > (that.value); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.copy< EnumerationValue > (that.value); break; - case 321: // ExternalType + case 322: // ExternalType value.copy< ExternalType > (that.value); break; - case 314: // IRIType + case 315: // IRIType value.copy< IRIType > (that.value); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.copy< Import > (that.value); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.copy< InstanceOfType > (that.value); break; - case 274: // IntegerType + case 275: // IntegerType value.copy< IntegerType > (that.value); break; - case 238: // ModuleBody + case 239: // ModuleBody value.copy< Module > (that.value); break; - case 276: // NamedNumber + case 277: // NamedNumber value.copy< NamedNumber > (that.value); break; - case 265: // NamedType + case 266: // NamedType value.copy< NamedType > (that.value); break; - case 287: // NullType + case 288: // NullType value.copy< NullType > (that.value); break; - case 200: // ObjectClassFieldType + case 160: // ObjectClass + case 161: // ObjectClassDefn + value.copy< ObjectClassAssignment > (that.value); + break; + + case 201: // ObjectClassFieldType value.copy< ObjectClassFieldType > (that.value); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.copy< ObjectIdComponentValue > (that.value); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.copy< ObjectIdentifierType > (that.value); break; - case 286: // OctetStringType + case 287: // OctetStringType value.copy< OctetStringType > (that.value); break; - case 300: // PrefixedType + case 301: // PrefixedType value.copy< PrefixedType > (that.value); break; - case 282: // RealType + case 283: // RealType value.copy< RealType > (that.value); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.copy< RelativeIRIType > (that.value); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.copy< RelativeOIDType > (that.value); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.copy< SequenceOfType > (that.value); break; - case 288: // SequenceType + case 289: // SequenceType value.copy< SequenceType > (that.value); break; - case 294: // SetOfType + case 295: // SetOfType value.copy< SetOfType > (that.value); break; - case 293: // SetType + case 294: // SetType value.copy< SetType > (that.value); break; - case 302: // Tag + case 303: // Tag value.copy< Tag > (that.value); break; - case 301: // TaggedType + case 302: // TaggedType value.copy< TaggedType > (that.value); break; - case 236: // TagDefault + case 237: // TagDefault value.copy< TaggingMode > (that.value); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.copy< TimeOfDayType > (that.value); break; - case 322: // TimeType + case 323: // TimeType value.copy< TimeType > (that.value); break; - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.copy< Type > (that.value); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.copy< Value > (that.value); break; @@ -5531,17 +5642,17 @@ namespace yy { value.copy< double > (that.value); break; - case 304: // ClassNumber + case 305: // ClassNumber value.copy< int > (that.value); break; case 4: // number - case 277: // SignedNumber + case 278: // SignedNumber value.copy< long long > (that.value); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.copy< std::set > (that.value); break; @@ -5558,59 +5669,69 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 209: // Parameter - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 164: // FieldName + case 210: // Parameter + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.copy< std::string > (that.value); break; - case 250: // AssignmentList + case 251: // AssignmentList value.copy< std::vector > (that.value); break; - case 239: // Exports + case 162: // FieldSpecList + case 163: // FieldSpec + case 166: // TypeFieldSpec + case 170: // FixedTypeValueFieldSpec + value.copy< std::vector > (that.value); + break; + + case 240: // Exports value.copy< std::vector > (that.value); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.copy< std::vector > (that.value); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.copy< std::vector > (that.value); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.copy< std::vector > (that.value); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.copy< std::vector > (that.value); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.copy< std::vector > (that.value); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.copy< std::vector > (that.value); break; - case 247: // SymbolList + case 165: // FieldNameList + case 167: // OneOrManyTypeFieldReference + case 248: // SymbolList value.copy< std::vector > (that.value); break; @@ -5843,206 +5964,211 @@ namespace yy { switch (yyr1_[yyn]) { case 159: // ObjectClassAssignment - case 197: // ObjectSetAssignment - case 201: // ParameterizedAssignment - case 202: // ParameterizedTypeAssignment - case 203: // ParameterizedValueAssignment - case 204: // ParameterizedValueSetTypeAssignment - case 205: // ParameterizedObjectClassAssignment - case 206: // ParameterizedObjectAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 198: // ObjectSetAssignment + case 202: // ParameterizedAssignment + case 203: // ParameterizedTypeAssignment + case 204: // ParameterizedValueAssignment + case 205: // ParameterizedValueSetTypeAssignment + case 206: // ParameterizedObjectClassAssignment + case 207: // ParameterizedObjectAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment yylhs.value.build< Assignment > (); break; - case 283: // BitStringType + case 284: // BitStringType yylhs.value.build< BitStringType > (); break; - case 272: // BooleanType + case 273: // BooleanType yylhs.value.build< BooleanType > (); break; - case 264: // BuiltinType + case 265: // BuiltinType yylhs.value.build< BuiltinType > (); break; - case 328: // CharacterStringType + case 329: // CharacterStringType yylhs.value.build< CharacterStringType > (); break; - case 295: // ChoiceType + case 296: // ChoiceType yylhs.value.build< ChoiceType > (); break; - case 305: // Class + case 306: // Class yylhs.value.build< Class > (); break; - case 291: // ComponentType + case 292: // ComponentType yylhs.value.build< ComponentType > (); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList yylhs.value.build< ComponentTypeList > (); break; - case 326: // DateTimeType + case 327: // DateTimeType yylhs.value.build< DateTimeType > (); break; - case 324: // DateType + case 325: // DateType yylhs.value.build< DateType > (); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference yylhs.value.build< DefinedType > (); break; - case 253: // DefinedValue + case 254: // DefinedValue yylhs.value.build< DefinedValue > (); break; - case 327: // DurationType + case 328: // DurationType yylhs.value.build< DurationType > (); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType yylhs.value.build< EmbeddedPDVType > (); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration yylhs.value.build< EnumeratedType > (); break; - case 281: // EnumerationItem + case 282: // EnumerationItem yylhs.value.build< EnumerationValue > (); break; - case 321: // ExternalType + case 322: // ExternalType yylhs.value.build< ExternalType > (); break; - case 314: // IRIType + case 315: // IRIType yylhs.value.build< IRIType > (); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule yylhs.value.build< Import > (); break; - case 214: // InstanceOfType + case 215: // InstanceOfType yylhs.value.build< InstanceOfType > (); break; - case 274: // IntegerType + case 275: // IntegerType yylhs.value.build< IntegerType > (); break; - case 238: // ModuleBody + case 239: // ModuleBody yylhs.value.build< Module > (); break; - case 276: // NamedNumber + case 277: // NamedNumber yylhs.value.build< NamedNumber > (); break; - case 265: // NamedType + case 266: // NamedType yylhs.value.build< NamedType > (); break; - case 287: // NullType + case 288: // NullType yylhs.value.build< NullType > (); break; - case 200: // ObjectClassFieldType + case 160: // ObjectClass + case 161: // ObjectClassDefn + yylhs.value.build< ObjectClassAssignment > (); + break; + + case 201: // ObjectClassFieldType yylhs.value.build< ObjectClassFieldType > (); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm yylhs.value.build< ObjectIdComponentValue > (); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType yylhs.value.build< ObjectIdentifierType > (); break; - case 286: // OctetStringType + case 287: // OctetStringType yylhs.value.build< OctetStringType > (); break; - case 300: // PrefixedType + case 301: // PrefixedType yylhs.value.build< PrefixedType > (); break; - case 282: // RealType + case 283: // RealType yylhs.value.build< RealType > (); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType yylhs.value.build< RelativeIRIType > (); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType yylhs.value.build< RelativeOIDType > (); break; - case 292: // SequenceOfType + case 293: // SequenceOfType yylhs.value.build< SequenceOfType > (); break; - case 288: // SequenceType + case 289: // SequenceType yylhs.value.build< SequenceType > (); break; - case 294: // SetOfType + case 295: // SetOfType yylhs.value.build< SetOfType > (); break; - case 293: // SetType + case 294: // SetType yylhs.value.build< SetType > (); break; - case 302: // Tag + case 303: // Tag yylhs.value.build< Tag > (); break; - case 301: // TaggedType + case 302: // TaggedType yylhs.value.build< TaggedType > (); break; - case 236: // TagDefault + case 237: // TagDefault yylhs.value.build< TaggingMode > (); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType yylhs.value.build< TimeOfDayType > (); break; - case 322: // TimeType + case 323: // TimeType yylhs.value.build< TimeType > (); break; - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint yylhs.value.build< Type > (); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue yylhs.value.build< Value > (); break; @@ -6050,17 +6176,17 @@ namespace yy { yylhs.value.build< double > (); break; - case 304: // ClassNumber + case 305: // ClassNumber yylhs.value.build< int > (); break; case 4: // number - case 277: // SignedNumber + case 278: // SignedNumber yylhs.value.build< long long > (); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries yylhs.value.build< std::set > (); break; @@ -6077,59 +6203,69 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 209: // Parameter - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 164: // FieldName + case 210: // Parameter + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word yylhs.value.build< std::string > (); break; - case 250: // AssignmentList + case 251: // AssignmentList yylhs.value.build< std::vector > (); break; - case 239: // Exports + case 162: // FieldSpecList + case 163: // FieldSpec + case 166: // TypeFieldSpec + case 170: // FixedTypeValueFieldSpec + yylhs.value.build< std::vector > (); + break; + + case 240: // Exports yylhs.value.build< std::vector > (); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList yylhs.value.build< std::vector > (); break; - case 275: // NamedNumberList + case 276: // NamedNumberList yylhs.value.build< std::vector > (); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList yylhs.value.build< std::vector > (); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList yylhs.value.build< std::vector > (); break; - case 256: // ActualParameterList + case 257: // ActualParameterList yylhs.value.build< std::vector > (); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues yylhs.value.build< std::vector > (); break; - case 247: // SymbolList + case 165: // FieldNameList + case 167: // OneOrManyTypeFieldReference + case 248: // SymbolList yylhs.value.build< std::vector > (); break; @@ -6151,1246 +6287,1342 @@ namespace yy { switch (yyn) { case 4: -#line 323 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 332 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< Module > ().module_reference = yystack_[9].value.as< std::string > (); yystack_[2].value.as< Module > ().tagging_default = yystack_[6].value.as< TaggingMode > (); context.asn1_tree.modules.push_back(yystack_[2].value.as< Module > ()); } -#line 6157 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6293 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 12: -#line 344 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = Assignment{yystack_[2].value.as< std::string > (), ObjectClassAssignment{}}; } -#line 6163 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 353 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Assignment > () = Assignment{yystack_[2].value.as< std::string > (), yystack_[0].value.as< ObjectClassAssignment > ()}; } +#line 6299 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 13: +#line 357 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { std::cerr << "Warning - Unhandled DefinedObjectClass\n"; } +#line 6305 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 14: +#line 359 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectClassAssignment > () = yystack_[0].value.as< ObjectClassAssignment > (); } +#line 6311 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 15: +#line 364 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectClassAssignment > () = {yystack_[2].value.as< std::vector > ()}; } +#line 6317 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 16: +#line 368 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } +#line 6323 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 17: +#line 370 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().insert(yylhs.value.as< std::vector > ().end(), yystack_[0].value.as< std::vector > ().begin(), yystack_[0].value.as< std::vector > ().end()); } +#line 6329 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 18: +#line 374 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } +#line 6335 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 19: +#line 376 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } +#line 6341 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 24: +#line 384 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } +#line 6347 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 25: +#line 386 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } +#line 6353 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 26: +#line 394 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } +#line 6359 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 27: +#line 396 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } +#line 6365 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 28: +#line 400 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { for (const std::string& name : yystack_[1].value.as< std::vector > ()) yylhs.value.as< std::vector > ().push_back(ClassField{name, TypeField{}}); } +#line 6371 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 29: +#line 404 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } +#line 6377 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 30: +#line 406 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } +#line 6383 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 37: +#line 420 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > ().push_back(ClassField{yystack_[3].value.as< std::string > (), FixedTypeValueField{yystack_[2].value.as< Type > ()}}); } +#line 6389 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 86: -#line 506 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 535 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[3].value.as< std::string > (), ObjectSetAssignment{}}; } -#line 6169 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6395 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 94: +#line 556 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectClassFieldType > () = {DefinedType{{}, yystack_[2].value.as< std::string > ()}, yystack_[0].value.as< std::vector > ()}; } +#line 6401 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 95: -#line 533 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 563 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6175 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6407 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 96: -#line 535 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 565 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6181 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6413 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 97: -#line 537 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 567 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6187 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6419 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 98: -#line 539 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6193 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6425 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 99: -#line 541 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 571 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6199 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6431 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 100: -#line 546 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 576 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {}, yystack_[2].value.as< std::set > () }; } -#line 6205 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6437 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 101: -#line 550 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 580 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6211 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6443 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 102: -#line 554 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 584 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6217 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6449 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 103: -#line 558 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 588 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6223 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6455 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 104: -#line 562 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 592 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6229 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6461 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 105: -#line 570 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 600 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[1].value.as< std::set > (); } -#line 6235 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6467 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 106: -#line 574 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 604 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6241 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6473 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 107: -#line 576 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 606 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[2].value.as< std::set > (); yystack_[2].value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6247 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6479 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 108: -#line 580 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 610 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6253 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6485 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 109: -#line 582 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 612 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6259 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6491 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 118: -#line 635 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 665 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6265 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6497 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 132: -#line 660 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 690 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Simple constraint\n"; } -#line 6271 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6503 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 133: -#line 662 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 692 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Relation constraint\n"; } -#line 6277 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6509 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 146: -#line 704 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 734 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6285 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6517 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 161: -#line 743 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 773 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6291 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 162: -#line 745 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 775 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::implicit; } -#line 6297 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6529 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 163: -#line 747 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 777 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::automatic; } -#line 6303 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6535 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 164: -#line 749 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 779 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6309 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6541 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 167: -#line 757 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 787 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Module > () = Module{ {}, TaggingMode(), yystack_[2].value.as< std::vector > (), yystack_[1].value.as< std::vector > (), yystack_[0].value.as< std::vector > ()}; } -#line 6315 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6547 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 168: -#line 759 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 789 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { } -#line 6321 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6553 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 174: -#line 772 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 802 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } -#line 6327 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6559 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 176: -#line 777 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 807 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6333 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6565 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 178: -#line 782 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 812 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6339 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6571 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 179: -#line 784 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 814 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6345 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6577 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 180: -#line 788 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 818 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Import > () = Import{ yystack_[0].value.as< std::string > (), yystack_[2].value.as< std::vector > () }; } -#line 6351 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6583 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 181: -#line 792 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 822 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6357 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6589 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 185: -#line 801 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 831 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6363 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6595 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 186: -#line 803 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 833 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6369 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6601 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 187: -#line 807 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 837 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6375 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6607 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 188: -#line 811 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 841 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6381 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6613 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 189: -#line 813 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 843 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[2].value.as< std::string > (); } -#line 6387 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6619 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 190: -#line 815 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 845 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6393 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6625 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 191: -#line 824 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 854 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } -#line 6399 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6631 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 192: -#line 826 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 856 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Assignment > ()); } -#line 6405 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6637 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 193: -#line 830 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 860 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6411 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6643 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 194: -#line 832 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 862 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6417 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6649 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 195: -#line 834 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 864 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6423 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6655 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 196: -#line 836 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 866 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6429 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6661 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 197: -#line 839 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 869 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6435 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6667 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 198: -#line 841 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 871 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6441 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6673 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 199: -#line 845 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 875 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6447 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6679 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 200: -#line 847 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 877 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{absl::nullopt, yystack_[0].value.as< std::string > (), {}}; } -#line 6453 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6685 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 201: -#line 849 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 879 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6459 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6691 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 202: -#line 855 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 885 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedValue > () = DefinedValue{yystack_[0].value.as< std::string > ()}; } -#line 6465 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6697 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 204: -#line 860 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 890 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{ absl::nullopt, yystack_[3].value.as< std::string > (), yystack_[1].value.as< std::vector > ()}; } -#line 6471 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6703 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 206: -#line 867 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 897 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Type > ()); } -#line 6477 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6709 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 207: -#line 869 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 899 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[2].value.as< Type > ()); } -#line 6483 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6715 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 208: -#line 873 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 903 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6489 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6721 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 209: -#line 875 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 905 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not yet dealing with value paramaters\n"; } -#line 6495 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6727 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 211: -#line 888 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 918 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{yystack_[2].value.as< std::string > (), yystack_[0].value.as< std::string > (), {}}; } -#line 6501 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6733 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 213: -#line 917 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[2].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {} }; } -#line 6507 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6739 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 214: -#line 921 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ValueAssignment{yystack_[2].value.as< Type > (), yystack_[0].value.as< Value > ()}, {} }; } -#line 6513 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6745 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 215: -#line 925 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[2].value.as< Type > ()}, {} }; } -#line 6519 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6751 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 216: -#line 929 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< BuiltinType > (); } -#line 6525 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6757 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 217: -#line 931 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 961 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6531 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6763 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 218: -#line 933 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< DefinedType > (); } -#line 6537 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6769 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 219: -#line 935 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - SelectionType\n"; } -#line 6543 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6775 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 220: -#line 937 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - TypeFromObject\n"; } -#line 6549 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6781 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 221: -#line 941 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = AnyType(); } -#line 6555 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6787 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 222: -#line 942 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 972 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } -#line 6561 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6793 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 223: -#line 943 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 973 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } -#line 6567 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6799 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 224: -#line 944 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 974 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } -#line 6573 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6805 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 225: -#line 945 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } -#line 6579 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6811 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 226: -#line 946 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 976 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } -#line 6585 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6817 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 227: -#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } -#line 6591 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6823 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 228: -#line 948 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 978 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } -#line 6597 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6829 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 229: -#line 949 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } -#line 6603 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6835 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 230: -#line 950 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 980 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } -#line 6609 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6841 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 231: -#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } -#line 6615 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6847 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 232: -#line 952 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } -#line 6621 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6853 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 233: -#line 953 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 983 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } -#line 6627 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6859 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 234: -#line 954 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } -#line 6633 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6865 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 235: -#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } -#line 6639 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6871 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 236: -#line 956 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } -#line 6645 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6877 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 237: -#line 957 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } -#line 6651 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6883 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 238: -#line 958 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } -#line 6657 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6889 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 239: -#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } -#line 6663 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6895 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 240: -#line 960 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } -#line 6669 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6901 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 241: -#line 961 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } -#line 6675 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6907 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 242: -#line 962 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } -#line 6681 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6913 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 243: -#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 993 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } -#line 6687 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6919 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 244: -#line 964 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } -#line 6693 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6925 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 245: -#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } -#line 6699 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6931 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 246: -#line 966 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } -#line 6705 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6937 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 247: -#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } -#line 6711 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6943 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 248: -#line 968 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } -#line 6717 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6949 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 249: -#line 969 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } -#line 6723 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6955 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 250: -#line 970 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } -#line 6729 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6961 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 251: -#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = UTCTimeType(); } -#line 6735 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6967 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 252: -#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1005 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } -#line 6741 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6973 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 253: -#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } -#line 6747 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6979 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 254: -#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1011 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } -#line 6753 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6985 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 255: -#line 983 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1013 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } -#line 6759 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6991 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 256: -#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1015 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } -#line 6765 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6997 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 257: -#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1017 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = BitStringValue{yystack_[0].value.as< std::string > ()}; } -#line 6771 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7003 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 258: -#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1019 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = HexStringValue{yystack_[0].value.as< std::string > ()}; } -#line 6777 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7009 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 259: -#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = CharStringValue{yystack_[0].value.as< std::string > ()}; } -#line 6783 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7015 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 260: -#line 993 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } -#line 6789 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7021 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 261: -#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1025 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< DefinedValue > (); } -#line 6795 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7027 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 262: -#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1027 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } -#line 6801 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7033 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 264: -#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1030 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } -#line 6807 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7039 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 265: -#line 1002 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1032 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } -#line 6813 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7045 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 266: -#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1034 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 6819 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7051 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 267: -#line 1006 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1036 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 6825 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7057 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 268: -#line 1010 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 272: +#line 1044 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } -#line 6831 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7063 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 269: -#line 1012 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 273: +#line 1046 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } -#line 6837 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7069 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 270: -#line 1014 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 274: +#line 1048 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } -#line 6843 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7075 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 271: -#line 1016 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 275: +#line 1050 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 6849 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7081 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 272: -#line 1018 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 276: +#line 1052 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BY\n"); } -#line 6855 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7087 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 273: -#line 1020 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 277: +#line 1054 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } -#line 6861 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7093 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 274: -#line 1024 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 279: +#line 1060 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } -#line 6867 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7099 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 275: -#line 1026 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 280: +#line 1062 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } -#line 6873 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7105 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 281: -#line 1041 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 286: +#line 1077 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 6879 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7111 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 282: -#line 1043 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 287: +#line 1079 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 6885 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7117 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 286: -#line 1058 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 291: +#line 1094 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{{}}; } -#line 6891 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7123 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 287: -#line 1060 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 292: +#line 1096 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } -#line 6897 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7129 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 288: -#line 1064 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 293: +#line 1100 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } -#line 6903 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7135 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 289: -#line 1066 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 294: +#line 1102 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } -#line 6909 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7141 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 290: -#line 1070 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 295: +#line 1106 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } -#line 6915 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7147 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 291: -#line 1072 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 296: +#line 1108 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } -#line 6921 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7153 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 292: -#line 1076 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 297: +#line 1112 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } -#line 6927 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7159 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 293: -#line 1078 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 298: +#line 1114 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } -#line 6933 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7165 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 294: -#line 1082 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 299: +#line 1118 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } -#line 6939 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7171 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 295: -#line 1086 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 300: +#line 1122 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[0].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = false; } -#line 6946 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 296: -#line 1089 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 301: +#line 1125 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[3].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; } -#line 6953 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7185 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 297: -#line 1092 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 302: +#line 1128 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[5].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; yylhs.value.as< EnumeratedType > ().enum_values.insert(yylhs.value.as< EnumeratedType > ().enum_values.end(), yystack_[0].value.as< EnumeratedType > ().enum_values.begin(), yystack_[0].value.as< EnumeratedType > ().enum_values.end()); } -#line 6961 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7193 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 299: -#line 1099 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 304: +#line 1135 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6967 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7199 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 300: -#line 1101 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 305: +#line 1137 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 6973 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7205 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 301: -#line 1105 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 306: +#line 1141 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } -#line 6979 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7211 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 302: -#line 1107 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 307: +#line 1143 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } -#line 6986 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7218 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 304: -#line 1118 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 309: +#line 1154 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BitStringType > () = BitStringType{}; } -#line 6992 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7224 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 305: -#line 1120 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 310: +#line 1156 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BitStringType > () = BitStringType{}; } -#line 6998 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7230 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 312: -#line 1149 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 317: +#line 1185 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType(); } -#line 7004 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7236 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 313: -#line 1151 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 318: +#line 1187 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7010 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7242 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 314: -#line 1155 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 319: +#line 1191 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7016 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7248 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 315: -#line 1157 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 320: +#line 1193 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } -#line 7022 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7254 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 316: -#line 1159 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 321: +#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7028 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7260 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 317: -#line 1161 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 322: +#line 1197 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } -#line 7034 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7266 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 318: -#line 1163 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 323: +#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7040 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7272 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 319: -#line 1165 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 324: +#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7046 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7278 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 320: -#line 1167 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 325: +#line 1203 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7052 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7284 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 321: -#line 1169 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 326: +#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7058 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7290 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 322: -#line 1171 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 327: +#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7064 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7296 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 323: -#line 1175 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 328: +#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } -#line 7070 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7302 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 324: -#line 1177 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 329: +#line 1213 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7076 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7308 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 325: -#line 1181 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 330: +#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt, absl::nullopt}; } -#line 7082 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7314 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 326: -#line 1183 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 331: +#line 1219 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt, absl::nullopt}; } -#line 7088 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7320 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 327: -#line 1185 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 332: +#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > (), absl::nullopt}; } -#line 7094 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7326 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 328: -#line 1187 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 333: +#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{{}, false, absl::nullopt, yystack_[0].value.as< Type > ()}; } -#line 7100 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7332 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 329: -#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 334: +#line 1235 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7106 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7338 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 330: -#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 335: +#line 1237 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7112 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7344 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 331: -#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 336: +#line 1241 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{}; } -#line 7118 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7350 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 332: -#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 337: +#line 1243 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7124 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7356 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 333: -#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 338: +#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7130 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7362 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 334: -#line 1213 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 339: +#line 1249 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7136 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7368 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 335: -#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 340: +#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } -#line 7142 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7374 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 336: -#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 341: +#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7148 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7380 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 337: -#line 1225 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 342: +#line 1261 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7154 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7386 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 338: -#line 1227 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 343: +#line 1263 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } -#line 7160 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7392 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 339: -#line 1229 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 344: +#line 1265 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7166 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7398 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 340: -#line 1233 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 345: +#line 1269 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } -#line 7172 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7404 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 341: -#line 1235 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 346: +#line 1271 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7410 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 343: -#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 348: +#line 1281 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } -#line 7184 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7416 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 344: -#line 1249 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 349: +#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } -#line 7190 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7422 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 345: -#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 350: +#line 1287 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } -#line 7196 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7428 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 346: -#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 351: +#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } -#line 7202 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7434 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 347: -#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 352: +#line 1293 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } -#line 7208 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7440 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 350: -#line 1265 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 355: +#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } -#line 7214 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7446 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 352: -#line 1270 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 357: +#line 1306 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::universal; } -#line 7220 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7452 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 353: -#line 1272 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 358: +#line 1308 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::application; } -#line 7226 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7458 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 354: -#line 1274 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 359: +#line 1310 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::private_; } -#line 7232 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7464 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 355: -#line 1276 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 360: +#line 1312 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::context_specific; } -#line 7238 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7470 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 357: -#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 362: +#line 1325 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7244 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7476 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 358: -#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 363: +#line 1327 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7250 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7482 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 359: -#line 1295 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 364: +#line 1331 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } -#line 7256 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7488 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 360: -#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 365: +#line 1333 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } -#line 7262 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7494 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 361: -#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 366: +#line 1337 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7268 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7500 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 362: -#line 1303 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 367: +#line 1339 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7274 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7506 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 363: -#line 1305 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 368: +#line 1341 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7280 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7512 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 364: -#line 1309 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 369: +#line 1345 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7286 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7518 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 365: -#line 1313 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 370: +#line 1349 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } -#line 7292 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7524 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 367: -#line 1318 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 372: +#line 1354 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } -#line 7298 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7530 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 401: -#line 1414 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 406: +#line 1450 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } -#line 7304 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7536 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 402: -#line 1416 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 407: +#line 1452 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 7310 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7542 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 403: -#line 1420 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 408: +#line 1456 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7316 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7548 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 404: -#line 1422 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 409: +#line 1458 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7322 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7554 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 405: -#line 1424 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 410: +#line 1460 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7328 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7560 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 406: -#line 1426 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 411: +#line 1462 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7334 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7566 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 407: -#line 1428 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 412: +#line 1464 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7340 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7572 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 408: -#line 1430 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 413: +#line 1466 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7346 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7578 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 409: -#line 1432 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 414: +#line 1468 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7352 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7584 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 410: -#line 1434 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 415: +#line 1470 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7358 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7590 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 493: -#line 1602 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 498: +#line 1638 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7364 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7596 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 494: -#line 1606 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 499: +#line 1642 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7370 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7602 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 495: -#line 1610 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 500: +#line 1646 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7376 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7608 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 496: -#line 1614 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 501: +#line 1650 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7382 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7614 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 497: -#line 1618 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 502: +#line 1654 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7388 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7620 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 break; -#line 7392 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7624 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 default: break; } @@ -7645,385 +7877,394 @@ namespace yy { } - const short int asn1_parser::yypact_ninf_ = -616; + const short int asn1_parser::yypact_ninf_ = -653; - const short int asn1_parser::yytable_ninf_ = -498; + const short int asn1_parser::yytable_ninf_ = -503; const short int asn1_parser::yypact_[] = { - -77, -616, 88, -77, 230, 36, -616, -616, 301, 34, - -616, 194, -616, 255, 202, -616, -616, 211, 34, -616, - -616, -616, 213, 253, -616, -616, 243, 296, 299, 350, - -616, -616, 409, 373, 277, -616, -616, -616, 347, 300, - 295, -616, -616, -616, 373, 290, -616, 389, -616, 277, - -616, 115, -616, 86, -616, 357, 289, -616, -616, 292, - 302, -616, -616, 308, -616, 380, 248, 19, -616, -616, - 248, 316, -616, 305, 248, -616, 3, 318, -616, -616, - -616, -616, -616, -616, -616, -616, -616, 19, -616, -616, - -616, 2304, 2609, -616, -616, -616, -616, -77, 3108, 131, - -616, -616, -616, -616, -616, 348, -616, -616, 349, 329, - -616, -616, -616, 364, 332, -616, -616, -616, -616, -616, - 374, 336, -616, -616, 393, -616, 365, -616, -616, -616, - -616, -616, 0, 4, -616, -616, -616, -616, -616, -616, - -616, -616, -616, -616, 2708, 453, -616, 334, -616, -616, - 352, -616, -616, 2807, 338, -616, -616, 346, -616, -616, - 353, 1, -616, -616, -616, -616, -616, -616, -616, -616, - -616, -616, -616, -616, -616, -616, -616, -616, 2407, -616, - -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, - -616, -616, -616, -616, -616, 164, 344, 342, 3207, 187, - 95, 354, -616, -34, -616, 152, -616, -616, 334, 119, - -616, 356, -616, 362, 367, 186, 358, -616, 366, 369, - -616, 368, 370, -616, 345, -616, -52, 131, 345, -616, - -616, 3207, 367, 12, 890, 415, 418, 3207, 28, 420, - 422, 386, -616, -616, -616, 367, 372, 30, 361, 387, - 2708, 246, 361, 1662, 398, -616, 3207, 3207, 367, 68, - 3207, 24, 247, 2044, 495, 27, -616, -616, -616, -616, - 3108, 248, 44, 75, 376, 345, -616, 402, -616, 391, - 3207, 397, -616, 405, 394, -616, 407, -616, 129, -616, - 407, 367, -616, 2910, -616, 447, 397, -616, 18, 411, - 400, -616, -616, -616, -616, -616, -616, -616, 480, 217, - 500, 3207, 502, -616, 367, -616, -616, 2044, 536, -616, - 355, 1290, 1414, 545, 199, -616, 427, -616, -616, -616, - -616, 367, -616, -616, -616, 397, -616, -616, 416, -31, - -27, 6, 9, -616, 480, 494, -616, 241, -616, 3207, - -616, 431, 425, -616, -616, -616, -616, -616, -616, 3207, - 3207, 367, -616, -616, 432, 3207, 3207, 351, -616, -616, - -616, -616, 47, -616, -616, -616, -616, -616, -616, 421, - -616, -616, 367, 2044, 421, -616, -616, -616, -616, 430, - -616, 2044, -616, -616, 2044, -616, 209, 173, -616, 419, - 437, -616, -616, 440, 433, -616, 367, -67, 218, 434, - 423, -616, -616, -616, -616, 445, 435, 1414, -616, 367, - 367, 421, -616, 367, -616, -616, 2044, -616, 159, 446, - -616, -616, 218, 436, 439, -616, 27, 456, 27, -616, - -616, -616, 452, -616, -616, -616, -616, 1040, -616, -616, - -616, -616, -616, 161, -616, 457, -616, -21, 367, 1908, - -616, -616, 13, 40, -616, 345, 3207, 449, 2076, -616, - -616, 17, 1538, -616, 458, 15, 2044, -616, 218, -616, - 367, 460, 450, 464, 454, 463, -616, 448, 468, 474, - -616, -616, 1538, -616, -616, 1538, -616, 367, 740, -616, - 367, -616, 367, -616, -616, 367, -616, 367, -616, 2510, - 2205, 131, 181, -616, -616, -616, -616, -616, -616, -616, - -616, -616, 469, 361, 218, 218, 218, 691, 592, 1662, - -616, 1662, 2044, 2044, 2044, 2044, 2044, 82, 475, 218, - 361, 451, -616, 477, -616, -616, 51, -616, 461, -616, - -616, 430, -616, -616, 348, -616, -616, -616, 349, 329, - -616, -616, -616, -616, 2044, -616, -616, -616, -616, -616, - 364, -616, -616, -616, 332, -616, -616, -616, -616, -616, - -616, -616, -616, -616, -616, -616, -616, 374, -616, 336, - -616, -616, -616, -616, -616, 393, 365, -616, -616, -616, - -616, -616, -616, -616, -616, -616, -616, -616, 0, 4, - -616, -616, -616, -616, -616, -616, -616, -616, 465, -616, - -616, -616, -616, -616, 159, 1787, -616, 467, 1165, -616, - -616, 367, 218, 472, -616, -616, 345, 54, 478, -616, - -616, -18, -616, -616, 397, -616, 479, 484, -616, 367, - 141, -616, -616, -616, -616, 397, -616, -616, 3009, 565, - 218, -616, -616, 123, -616, 1414, -616, 490, -616, 176, - 206, -616, -616, 481, 6, -616, -616, 2056, -616, -616, - -616, 3207, -616, 26, -616, 10, 62, 138, 70, 499, - 351, -616, -616, -616, 218, 493, 496, -616, 218, 218, - 218, 218, 218, -616, -616, -616, 497, -616, 482, -616, - -616, 31, -616, 504, 505, 345, 2044, 485, -616, -616, - -616, 486, 489, -616, 508, -616, 488, 509, 282, 498, - 2044, 219, 510, 501, 367, -616, 506, 503, 507, -616, - -616, 448, 1414, -616, 367, 75, -616, -616, 398, -616, - -616, 2076, -616, -616, -616, 62, -616, -616, -616, 535, - -616, -616, -616, -616, -616, 519, -616, -616, 511, 218, - 345, 182, 20, 2026, -616, 60, 218, -616, 345, -616, - 345, -616, -616, 109, 1414, 503, 345, 345, -616, -616, - -616, -616, -616, -616, 523, -616, 345, 513, -616, 514, - 1040, -616, 218, 512, 527, -616, -616, -616, -616, -616, - -616, -616, 507, -616, 3685, -616, 345, 198, 218, -616, - -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, - -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, - -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, - -616, -616, 3685, -616, 3451, -616, -616, -616, 3334, -616, - 521, 3568, -616, -616, -616, -616, 20, -616, 522, 20 + -76, -653, 78, -76, 67, 119, -653, -653, 117, 21, + -653, 30, -653, 175, 192, -653, -653, 168, 21, -653, + -653, -653, 143, 177, -653, -653, 200, 240, 265, 273, + -653, -653, 351, 359, 244, -653, -653, -653, 321, 282, + 267, -653, -653, -653, 359, 284, -653, 385, -653, 244, + -653, 330, -653, -2, -653, 354, 281, -653, -653, 296, + 303, -653, -653, 320, -653, 393, 260, 49, -653, -653, + 260, 329, -653, 313, 260, -653, -20, 334, -653, -653, + -653, -653, -653, -653, -653, -653, -653, 49, -653, -653, + -653, 2207, 2508, -653, -653, -653, -653, -76, 3007, 13, + -653, -653, -653, -653, -653, 357, -653, -653, 358, 338, + -653, -653, -653, 372, 340, -653, -653, -653, -653, -653, + 379, 343, -653, -653, 399, -653, 369, -653, -653, -653, + -653, -653, -5, 1, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, 2607, 454, -653, 336, -653, -653, + 356, -653, -653, 2706, 337, -653, -653, 355, -653, -653, + 364, 228, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -653, 2310, -653, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, -653, 150, 348, 344, 3106, 234, + 144, 345, -653, -41, -653, 153, -653, -653, 336, 123, + -653, 349, -653, 361, 365, 173, 362, -653, 363, 371, + -653, 368, 374, -653, 331, -653, -37, 13, 331, -653, + -653, 3106, 365, 4, 1216, 409, 412, 3106, 86, 416, + 424, 394, -653, -653, -653, 365, 381, 6, 375, 396, + 2607, 242, 375, 1471, 401, -653, 3106, 3106, 365, 37, + 3106, 10, 246, 2101, 493, 17, -653, -653, -653, -653, + 3007, 260, 20, 44, 378, 331, -653, 408, -653, 400, + 3106, 418, -653, 423, 404, -653, 425, -653, 128, -653, + 425, 365, -653, 2809, -653, 467, 418, -653, 5, 430, + 419, -653, -653, -653, -653, -653, -653, -653, 499, 94, + 521, 3106, 524, -653, 365, -653, -653, 2101, 552, -653, + 367, 1340, 1596, 562, 176, -653, 444, -653, -653, -653, + -653, 365, -653, -653, -653, 418, -653, -653, 432, -55, + -43, 15, 19, -653, 499, 512, -653, 190, -653, 3106, + -653, 449, 445, -653, -653, -653, -653, -653, -653, 3106, + 3106, 365, -653, -653, 451, 3106, 3106, 350, -653, -653, + -653, -653, 35, -653, -653, -653, 436, -653, -653, 365, + 2101, 436, -653, -653, -653, -653, -653, -653, 453, -653, + 2101, -26, -653, -653, 2101, -653, 199, 263, -653, 438, + 457, -653, -653, 452, 447, -653, 365, 250, 224, 450, + 441, -653, -653, -653, -653, 157, 455, 1596, -653, 365, + 365, 436, -653, 365, -653, -653, 2101, -653, -653, 146, + 462, -653, -653, 224, 456, 459, -653, 17, 464, 17, + -653, -653, -653, 465, 466, -653, -653, -653, -653, 1091, + -653, -653, -653, -653, -653, 178, -653, 469, -653, -27, + 365, 1951, -653, -653, -14, 33, -653, 331, 3106, 463, + 2077, -653, -653, 29, 1852, -653, 468, -4, 2101, -653, + 224, -653, 365, 475, 470, 477, 472, 476, -653, 461, + 479, 489, -653, -653, 1852, -653, -653, 1852, -653, 365, + 694, -653, 365, -653, 365, -653, -653, 365, -653, 365, + -653, 3205, 2409, 13, 187, -653, -653, 91, -653, -653, + -653, -653, -653, -653, -653, 484, 375, 224, 224, 224, + 716, 609, 1471, -653, 1471, 2101, 2101, 2101, 2101, 2101, + 391, 56, 490, 224, 375, 474, -653, 491, -653, -653, + 40, 3774, 3862, -653, 480, -653, -653, 453, -653, -653, + 357, -653, -653, -653, 358, 338, -653, -653, -653, -653, + 2101, -653, -653, -653, -653, -653, 372, -653, -653, -653, + 340, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, 379, -653, -26, -653, -653, -653, -653, + -653, 399, 369, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, -5, 1, -653, -653, -653, -653, + -653, -653, -653, -653, 481, -653, -653, -653, -653, -653, + 146, 1727, -653, 483, 954, -653, -653, 365, 224, 487, + -653, -653, 331, 53, 492, -653, -653, 87, -653, -653, + 418, -653, 500, 501, -653, 365, 31, -653, -653, -653, + -653, 418, -653, -653, 2908, 577, 224, -653, -653, -12, + -653, 1596, -653, 504, -653, 183, 201, -653, -653, 494, + 15, -653, -653, 808, -653, -653, -653, 25, 121, 120, + 121, 27, 510, 350, -653, 3106, -653, -653, -653, -653, + -653, 224, 505, 508, -653, 224, 224, 224, 224, 224, + -653, -653, -653, -653, -653, 509, -653, 496, -653, -653, + 8, -653, 511, 513, 331, 2101, 498, -653, -653, -653, + 515, 517, -653, 516, -653, 506, 520, 311, 518, 2101, + 205, 530, 522, 365, -653, 523, 525, 526, -653, -653, + 461, 1596, -653, 44, -653, -653, -653, -653, 39, 43, + 43, -653, -653, -653, 542, -653, -653, 365, -653, -653, + -653, 533, -653, -653, 528, 224, 331, 90, 23, 2069, + -653, 42, 224, -653, 331, -653, 331, -653, -653, 166, + 1596, 525, 331, 331, -653, -653, -653, 401, -653, -653, + 2077, -653, -653, -653, 538, -653, 331, 529, -653, 531, + 1091, -653, 224, 532, 544, -653, -653, -653, -653, -653, + -653, -653, 526, -653, -653, -653, 3678, -653, 331, 92, + 224, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, -653, 3678, -653, 3444, -653, -653, -653, + 3327, -653, 534, 3561, -653, -653, -653, -653, 23, -653, + 537, 23 }; const unsigned short int asn1_parser::yydefact_[] = { - 0, 496, 0, 2, 0, 149, 1, 3, 160, 0, - 146, 147, 148, 0, 164, 157, 494, 0, 152, 155, - 156, 154, 364, 0, 151, 159, 0, 0, 0, 166, - 150, 153, 0, 0, 373, 163, 161, 162, 0, 0, - 0, 374, 375, 371, 0, 0, 165, 0, 158, 373, - 370, 171, 372, 173, 145, 175, 0, 493, 495, 0, + 0, 501, 0, 2, 0, 149, 1, 3, 160, 0, + 146, 147, 148, 0, 164, 157, 499, 0, 152, 155, + 156, 154, 369, 0, 151, 159, 0, 0, 0, 166, + 150, 153, 0, 0, 378, 163, 161, 162, 0, 0, + 0, 379, 380, 376, 0, 0, 165, 0, 158, 378, + 375, 171, 377, 173, 145, 175, 0, 498, 500, 0, 172, 185, 187, 188, 190, 0, 177, 0, 170, 169, 0, 0, 4, 0, 176, 178, 0, 0, 195, 197, 198, 95, 96, 97, 98, 99, 167, 191, 193, 194, 196, 0, 0, 186, 189, 174, 179, 0, 0, 0, - 192, 68, 11, 221, 311, 0, 387, 283, 0, 0, - 381, 383, 384, 0, 0, 378, 232, 388, 389, 390, - 0, 286, 391, 392, 0, 238, 0, 369, 393, 303, - 368, 376, 0, 0, 395, 394, 379, 382, 10, 396, - 251, 397, 398, 399, 0, 349, 493, 0, 114, 67, + 192, 68, 11, 221, 316, 0, 392, 288, 0, 0, + 386, 388, 389, 0, 0, 383, 232, 393, 394, 395, + 0, 291, 396, 397, 0, 238, 0, 374, 398, 308, + 373, 381, 0, 0, 400, 399, 384, 387, 10, 401, + 251, 402, 403, 404, 0, 354, 498, 0, 114, 67, 0, 83, 237, 0, 0, 220, 233, 0, 218, 201, 199, 0, 216, 223, 234, 230, 241, 222, 240, 236, - 244, 245, 246, 247, 225, 219, 248, 343, 0, 239, + 244, 245, 246, 247, 225, 219, 248, 348, 0, 239, 243, 235, 242, 229, 231, 249, 226, 250, 227, 228, - 224, 385, 386, 217, 402, 84, 0, 0, 0, 0, - 200, 0, 180, 184, 493, 494, 113, 6, 8, 0, - 106, 0, 110, 109, 112, 188, 0, 7, 497, 0, - 8, 0, 304, 400, 0, 377, 0, 0, 0, 356, - 310, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 13, 12, 14, 213, 0, 355, 0, 0, - 0, 0, 0, 0, 0, 401, 0, 0, 344, 0, + 224, 390, 391, 217, 407, 84, 0, 0, 0, 0, + 200, 0, 180, 184, 498, 499, 113, 6, 8, 0, + 106, 0, 110, 109, 112, 188, 0, 7, 502, 0, + 8, 0, 309, 405, 0, 382, 0, 0, 0, 361, + 315, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 13, 12, 14, 213, 0, 360, 0, 0, + 0, 0, 0, 0, 0, 406, 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, 181, 182, 183, 105, - 0, 0, 0, 0, 0, 0, 340, 0, 336, 337, - 0, 489, 302, 0, 295, 299, 301, 116, 0, 288, - 0, 329, 330, 0, 466, 0, 489, 312, 325, 0, - 314, 323, 292, 454, 448, 449, 450, 380, 0, 311, - 0, 0, 0, 285, 0, 456, 463, 0, 0, 284, - 0, 0, 0, 0, 451, 452, 132, 413, 121, 122, - 123, 467, 445, 453, 447, 489, 412, 414, 415, 418, - 0, 420, 0, 423, 0, 426, 434, 436, 437, 0, - 438, 0, 458, 440, 441, 439, 442, 443, 444, 0, - 0, 333, 334, 331, 0, 0, 0, 0, 348, 353, - 354, 352, 0, 24, 25, 26, 27, 28, 29, 93, - 86, 103, 100, 0, 115, 265, 257, 258, 259, 255, - 272, 0, 270, 273, 0, 263, 493, 495, 210, 237, - 0, 261, 203, 0, 206, 119, 208, 209, 0, 271, - 269, 253, 264, 254, 256, 202, 0, 0, 215, 346, - 345, 94, 211, 342, 69, 85, 0, 255, 275, 495, - 266, 274, 214, 0, 0, 365, 366, 0, 359, 361, - 362, 363, 364, 107, 108, 497, 9, 0, 70, 104, - 71, 72, 73, 0, 306, 0, 335, 0, 252, 0, - 298, 294, 0, 0, 287, 0, 0, 321, 0, 326, - 313, 0, 0, 419, 0, 142, 0, 468, 486, 487, - 0, 472, 90, 0, 88, 0, 293, 0, 0, 0, - 431, 430, 0, 433, 432, 0, 427, 455, 0, 459, - 405, 409, 406, 410, 332, 403, 407, 404, 408, 34, - 0, 0, 0, 16, 18, 19, 20, 21, 22, 23, - 350, 351, 0, 0, 102, 260, 281, 0, 0, 0, - 204, 0, 0, 0, 0, 0, 0, 0, 0, 101, - 0, 0, 366, 0, 357, 360, 0, 499, 500, 501, - 502, 255, 504, 505, 506, 387, 283, 272, 510, 511, - 512, 513, 514, 515, 516, 381, 383, 519, 520, 384, - 522, 523, 524, 525, 526, 527, 528, 529, 530, 378, - 285, 533, 534, 535, 536, 537, 538, 539, 540, 286, - 542, 543, 544, 545, 546, 547, 548, 549, 369, 270, - 552, 553, 554, 555, 556, 303, 368, 376, 560, 561, - 562, 563, 564, 565, 566, 379, 382, 284, 570, 571, - 572, 573, 273, 66, 275, 0, 79, 0, 0, 77, - 80, 81, 82, 0, 65, 305, 0, 0, 338, 341, - 491, 0, 490, 488, 489, 300, 0, 0, 289, 328, - 0, 446, 451, 452, 327, 489, 324, 429, 131, 0, - 143, 471, 469, 0, 470, 0, 87, 0, 435, 0, - 0, 134, 411, 416, 421, 424, 465, 0, 464, 457, - 460, 0, 32, 49, 31, 45, 40, 36, 53, 55, - 0, 347, 30, 268, 282, 0, 0, 207, 276, 267, - 278, 277, 279, 212, 280, 358, 0, 75, 0, 76, - 78, 0, 307, 0, 0, 0, 0, 296, 291, 290, - 322, 319, 315, 130, 113, 127, 0, 0, 112, 0, - 0, 0, 0, 476, 481, 91, 89, 139, 136, 140, - 133, 0, 0, 461, 33, 0, 47, 46, 0, 43, - 42, 0, 38, 41, 35, 40, 52, 51, 50, 0, - 15, 17, 262, 205, 367, 0, 308, 309, 339, 492, - 0, 0, 0, 0, 124, 0, 144, 473, 0, 475, - 0, 480, 478, 485, 0, 139, 0, 0, 135, 417, - 48, 44, 39, 37, 0, 74, 0, 297, 320, 316, - 0, 126, 125, 493, 0, 477, 483, 484, 482, 479, - 92, 138, 137, 141, 64, 54, 0, 0, 82, 474, - 500, 503, 506, 507, 508, 509, 510, 511, 516, 517, - 518, 521, 522, 526, 531, 532, 539, 541, 547, 548, - 550, 551, 557, 558, 559, 560, 561, 567, 568, 569, - 570, 574, 64, 498, 64, 56, 59, 58, 0, 62, - 317, 64, 5, 57, 61, 63, 0, 60, 318, 0 + 0, 0, 0, 0, 0, 0, 345, 0, 341, 342, + 0, 494, 307, 0, 300, 304, 306, 116, 0, 293, + 0, 334, 335, 0, 471, 0, 494, 317, 330, 0, + 319, 328, 297, 459, 453, 454, 455, 385, 0, 316, + 0, 0, 0, 290, 0, 461, 468, 0, 0, 289, + 0, 0, 0, 0, 456, 457, 132, 418, 121, 122, + 123, 472, 450, 458, 452, 494, 417, 419, 420, 423, + 0, 425, 0, 428, 0, 431, 439, 441, 442, 0, + 443, 0, 463, 445, 446, 444, 447, 448, 449, 0, + 0, 338, 339, 336, 0, 0, 0, 0, 353, 358, + 359, 357, 0, 24, 25, 26, 93, 86, 103, 100, + 0, 115, 265, 257, 258, 259, 270, 271, 255, 276, + 0, 278, 274, 277, 0, 263, 498, 500, 210, 237, + 0, 261, 203, 0, 206, 119, 208, 209, 0, 275, + 273, 253, 264, 254, 256, 202, 0, 0, 215, 351, + 350, 94, 211, 347, 69, 85, 0, 255, 278, 280, + 500, 266, 279, 214, 0, 0, 370, 371, 0, 364, + 366, 367, 368, 369, 202, 107, 108, 502, 9, 0, + 70, 104, 71, 72, 73, 0, 311, 0, 340, 0, + 252, 0, 303, 299, 0, 0, 292, 0, 0, 326, + 0, 331, 318, 0, 0, 424, 0, 142, 0, 473, + 491, 492, 0, 477, 90, 0, 88, 0, 298, 0, + 0, 0, 436, 435, 0, 438, 437, 0, 432, 460, + 0, 464, 410, 414, 411, 415, 337, 408, 412, 409, + 413, 29, 0, 0, 0, 16, 18, 33, 19, 20, + 21, 22, 23, 355, 356, 0, 0, 102, 260, 286, + 0, 0, 0, 204, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 101, 0, 0, 371, 0, 362, 365, + 0, 24, 25, 504, 505, 506, 507, 255, 509, 510, + 511, 392, 288, 276, 515, 516, 517, 518, 519, 520, + 521, 386, 388, 524, 525, 389, 527, 528, 529, 530, + 531, 532, 533, 534, 535, 383, 290, 538, 539, 540, + 541, 542, 543, 544, 545, 278, 547, 548, 549, 550, + 551, 552, 553, 554, 374, 274, 557, 558, 559, 560, + 561, 308, 373, 381, 565, 566, 567, 568, 569, 570, + 571, 384, 387, 289, 575, 576, 577, 578, 277, 66, + 280, 0, 79, 0, 0, 77, 80, 81, 82, 0, + 65, 310, 0, 0, 343, 346, 496, 0, 495, 493, + 494, 305, 0, 0, 294, 333, 0, 451, 456, 457, + 332, 494, 329, 434, 131, 0, 143, 476, 474, 0, + 475, 0, 87, 0, 440, 0, 0, 134, 416, 421, + 426, 429, 470, 0, 469, 462, 465, 49, 36, 36, + 36, 53, 55, 0, 30, 0, 31, 28, 352, 27, + 272, 287, 0, 0, 207, 281, 267, 283, 282, 284, + 268, 269, 212, 285, 363, 0, 75, 0, 76, 78, + 0, 312, 0, 0, 0, 0, 301, 296, 295, 327, + 324, 320, 130, 113, 127, 0, 0, 112, 0, 0, + 0, 0, 481, 486, 91, 89, 139, 136, 140, 133, + 0, 0, 466, 0, 47, 46, 34, 35, 45, 40, + 40, 52, 51, 50, 0, 15, 17, 32, 262, 205, + 372, 0, 313, 314, 344, 497, 0, 0, 0, 0, + 124, 0, 144, 478, 0, 480, 0, 485, 483, 490, + 0, 139, 0, 0, 135, 422, 48, 0, 43, 42, + 0, 38, 41, 37, 0, 74, 0, 302, 325, 321, + 0, 126, 125, 498, 0, 482, 488, 489, 487, 484, + 92, 138, 137, 141, 44, 39, 64, 54, 0, 0, + 82, 479, 505, 508, 511, 512, 513, 514, 515, 516, + 521, 522, 523, 526, 527, 531, 536, 537, 544, 546, + 552, 553, 555, 556, 562, 563, 564, 565, 566, 572, + 573, 574, 575, 579, 64, 503, 64, 56, 59, 58, + 0, 62, 322, 64, 5, 57, 61, 63, 0, 60, + 323, 0 }; const short int asn1_parser::yypgoto_[] = { - -616, 652, -616, -616, -45, -616, -97, -616, 412, -616, - -616, -29, -440, 143, -616, -616, -616, -616, -96, -616, - -616, -616, -616, -616, -616, -616, -616, -189, -493, -616, - -616, -616, -435, -255, -616, -496, -616, -616, -616, -616, - -616, 37, 39, 21, -616, -616, 428, -616, 262, -616, - -616, -616, -616, -616, -616, 317, -616, 401, -616, 23, - -616, -616, -616, -616, -616, -616, -616, -616, -616, -616, - -73, -115, -108, -616, -616, -616, -616, -616, -616, 664, - -616, 651, -616, -616, -616, -616, -616, -616, -616, -616, - -616, -616, 610, -616, -616, 632, 616, -64, 603, -616, - -616, -226, -616, -616, -411, -616, -616, -616, -616, -616, - -616, -66, -616, -218, -223, 140, -616, -616, -57, -616, - -616, -158, -616, -616, -195, -177, -616, -616, -78, -434, - -616, -616, -616, 57, -616, -616, -616, 462, -615, -444, - -616, -616, -616, -616, -616, -616, -13, -616, -616, -616, - -616, -616, -616, -616, -616, -616, -184, -616, 239, 148, - -616, -616, -616, 692, -616, 656, 663, -616, -616, -616, - -616, -53, -616, -616, -616, -616, -616, -616, -616, -616, - -616, -128, -616, -616, -286, -306, -616, -616, 216, -616, - 220, -616, 375, -616, -616, 240, -616, -419, -616, -616, - -616, -616, -616, -616, 41, -110, -616, -616, -616, -616, - -616, -401, -616, -616, -616, -616, -616, -616, -275, -616, - -50, -9, -24, 11, -264, -616 + -653, 645, -653, -653, -64, -653, -94, -653, 426, -653, + -653, -24, -441, 152, -653, -653, -653, -248, -653, -86, + -653, -653, -653, -653, -653, -653, -653, -653, -189, -652, + -653, -653, -653, -447, -267, -653, -650, -653, -653, -653, + -653, -653, 45, 46, 18, -653, -653, 434, -653, 171, + -653, -653, -653, -653, -653, -653, 360, -653, 414, -653, + 26, -653, -653, -653, -653, -653, -653, -653, -653, -653, + -653, -65, -104, -101, -653, -653, -653, -653, -653, -653, + 671, -653, 680, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -653, 640, -653, -653, 663, 648, -75, 632, + -653, -653, -262, -653, -653, -314, -653, -653, -653, -653, + -653, -653, 47, -653, -211, -226, 158, -653, -653, -74, + -653, -653, -148, -653, -653, -227, -179, -653, -653, -51, + -450, -653, -653, -653, 88, -653, -653, -653, 495, -634, + -449, -653, -653, -653, -653, -653, -653, 12, -653, -653, + -653, -653, -653, -653, -653, -653, -653, -103, -653, 256, + 179, -653, -653, -653, 723, -653, 688, 699, -653, -653, + -653, -653, 9, -653, -653, -653, -653, -653, -653, -653, + -653, -653, -121, -653, -653, -276, -306, -653, -653, 253, + -653, 241, -653, 406, -653, -653, 270, -653, -453, -653, + -653, -653, -653, -653, -653, 65, -81, -653, -653, -653, + -653, -653, -442, -653, -653, -653, -653, -653, -653, -266, + -653, -8, -9, -34, 7, -256, -653 }; const short int asn1_parser::yydefgoto_[] = { - -1, 2, 3, 815, 398, 207, 147, 78, 243, 244, - 512, 513, 378, 421, 514, 684, 755, 515, 753, 516, - 517, 750, 518, 747, 519, 758, 760, 854, 855, 856, - 857, 858, 859, 148, 149, 449, 450, 451, 627, 452, - 628, 629, 630, 150, 151, 79, 326, 483, 152, 80, - 81, 82, 83, 84, 85, 99, 209, 210, 211, 212, - 154, 155, 156, 157, 400, 327, 328, 727, 329, 670, - 671, 786, 738, 330, 65, 4, 10, 11, 12, 17, - 18, 19, 20, 14, 29, 39, 54, 55, 59, 67, - 73, 74, 75, 202, 266, 76, 61, 62, 86, 87, - 158, 401, 159, 402, 403, 404, 160, 405, 88, 89, - 90, 331, 162, 298, 431, 408, 409, 410, 418, 527, - 163, 411, 164, 288, 282, 412, 165, 283, 284, 285, - 166, 167, 453, 454, 168, 169, 170, 299, 300, 301, - 171, 172, 173, 174, 277, 278, 279, 175, 176, 177, - 178, 247, 522, 372, 179, 267, 437, 438, 439, 440, - 441, 180, 181, 413, 34, 45, 43, 182, 183, 184, - 185, 414, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 255, 335, 336, 337, 338, 339, 340, 341, 342, - 343, 344, 473, 492, 495, 345, 346, 347, 348, 349, - 350, 351, 679, 352, 680, 353, 354, 355, 356, 662, - 664, 732, 733, 782, 783, 809, 357, 358, 460, 643, - 200, 196, 415, 201, 217, 634 + -1, 2, 3, 827, 398, 207, 147, 78, 243, 244, + 514, 515, 375, 421, 516, 517, 697, 758, 518, 802, + 519, 520, 799, 521, 755, 522, 763, 765, 866, 867, + 868, 869, 870, 871, 148, 149, 451, 452, 453, 633, + 454, 634, 635, 636, 150, 151, 79, 326, 485, 152, + 80, 81, 82, 83, 84, 85, 99, 209, 210, 211, + 212, 154, 155, 156, 157, 400, 327, 328, 736, 329, + 676, 677, 792, 747, 330, 65, 4, 10, 11, 12, + 17, 18, 19, 20, 14, 29, 39, 54, 55, 59, + 67, 73, 74, 75, 202, 266, 76, 61, 62, 86, + 87, 158, 401, 159, 402, 403, 404, 160, 405, 88, + 89, 90, 331, 162, 298, 432, 408, 409, 410, 418, + 530, 163, 411, 164, 288, 282, 412, 165, 283, 284, + 285, 166, 167, 455, 456, 168, 169, 170, 299, 300, + 301, 171, 172, 173, 174, 277, 278, 279, 175, 176, + 177, 178, 247, 525, 372, 179, 267, 438, 439, 440, + 441, 442, 180, 181, 413, 34, 45, 43, 182, 183, + 184, 185, 414, 186, 187, 188, 189, 190, 191, 192, + 193, 194, 255, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 475, 494, 497, 345, 346, 347, 348, + 349, 350, 351, 685, 352, 686, 353, 354, 355, 356, + 668, 670, 741, 742, 788, 789, 819, 357, 358, 462, + 649, 200, 196, 415, 201, 217, 640 }; const short int asn1_parser::yytable_[] = { - 22, 208, 220, 63, 235, 239, 276, 625, 446, 22, - 446, 5, 626, 292, 5, 484, 63, 91, 448, 362, - 63, 467, 236, 240, 63, 161, 199, 656, 645, 64, - 407, 435, 214, 289, 213, 721, 485, 91, 15, 436, - 77, 195, 64, 92, 302, 424, 64, 208, 215, 654, - 64, 520, 424, 206, 219, 435, 295, 333, 713, 748, - 488, 295, 369, 92, 295, 424, 97, 468, 659, 281, - 686, 1, 295, -274, 64, 745, 332, -274, 245, 678, - -422, 424, -425, 692, 490, 493, 231, 251, 6, 265, - 237, 373, 374, 375, 376, 377, 101, 16, 749, 242, - 638, 232, 197, 424, 294, 232, 469, 234, 203, 216, - 221, 751, 258, -422, 746, 58, 56, 491, 696, 756, - 697, 254, 716, 233, 370, 234, 234, 238, 16, 234, - 220, 538, 262, 296, 644, 234, 297, 806, 655, 70, - 234, 501, 503, 371, 333, 333, 521, 506, 508, 296, - 752, -425, 363, 208, 494, 216, 208, 799, 757, 9, - 102, 16, 16, 332, 332, 291, 16, 57, 58, 16, - -168, 361, 57, 208, 53, 1, 205, 16, 323, 268, - 58, 334, 287, 16, 382, 295, 477, 406, 1, 58, - 419, 420, 445, 626, 423, 1, 58, 807, 447, 1, - 58, 808, 1, 58, 214, 242, 213, 444, 803, 422, - 542, 425, 542, 433, 458, 280, 57, 286, -118, 290, - 215, 63, 293, 1, 280, 206, 295, 458, 293, 280, - 445, 58, 259, 640, 57, 58, 26, 646, 221, 639, - 333, 138, 295, 269, 731, 475, 64, 64, 21, 790, - 754, 868, 543, 464, 545, 270, 442, 21, 678, 332, - 27, 216, 720, 234, 416, 465, 455, 433, 334, 334, - 648, 28, 16, 446, 434, -495, 434, 801, -495, 218, - 8, 216, 642, 497, -493, 635, 647, -118, -495, -200, - 16, 333, -495, 500, 502, 333, -493, 636, 528, 505, - 507, 259, -494, 798, -200, 689, 407, 263, 407, 71, - 332, -200, 234, 737, 332, 333, 13, 690, 333, 860, - 542, 333, -493, 259, -493, 16, 23, 656, 434, 25, - 740, 16, 792, 433, 332, 30, -493, 332, 32, -446, - 332, 433, 741, 777, 433, -275, -446, 16, 35, -275, - 293, 293, 661, -275, 532, 778, 293, 293, 533, 735, - 625, 863, 534, -462, 334, 626, 383, 426, 863, 717, - -462, 234, 234, 656, 509, 510, 433, 804, 511, 805, - 722, 631, 645, 434, 373, 374, 375, 376, 377, 41, - 42, 379, 33, 641, 434, 384, 57, 58, 480, 481, - 649, 36, 434, 432, 37, 434, -128, 234, 153, 198, - 38, 714, 208, 15, 220, 334, 44, 46, 864, 334, - 47, 48, 50, 865, 51, 656, 433, 442, 66, 442, - 68, 71, 208, 69, 208, 72, 789, 434, 70, 334, - 94, 98, 334, 685, 687, 334, 95, 434, 280, 434, - 222, 223, 224, 286, 225, 226, 290, 478, 633, 228, - 227, 229, 280, 406, 683, 406, 688, 230, 246, 253, - 633, 248, 249, 260, 434, 252, -117, 433, 810, 261, - 235, 239, 433, 433, 433, 433, 433, 434, 333, 273, - 448, 264, 234, 275, 16, 272, 271, 276, 236, 240, - 333, 359, -111, -496, 360, 274, 365, 332, 366, 367, - 321, 446, 368, 703, 433, 399, 424, 703, 448, 332, - 216, 417, 221, 524, 445, 430, 456, 457, 459, 461, - 462, 525, 463, 466, 526, 470, 471, 472, 434, 474, - 416, 476, 416, 434, 434, 434, 434, 434, 479, 486, - 487, -428, 489, 498, 499, -311, 504, 434, 523, 631, - 529, 208, 631, -266, 530, 333, 539, 536, -120, 531, - 535, 528, 537, 540, 333, 434, 541, 546, 639, 430, - 544, 658, 637, 663, 332, 650, 665, 632, 666, 668, - 667, 669, 728, 332, 672, 673, 695, 691, -11, 704, - 58, 705, -10, 708, 730, 718, 781, 333, 195, 711, - 719, 736, 334, 724, 715, 744, 660, 742, 759, 762, - 763, 770, 771, 764, 334, 772, 332, 455, 773, 765, - 766, 767, -129, 774, 779, 775, 633, 780, 794, 633, - 785, 280, 784, 795, 787, 430, 814, 796, 434, 816, - 817, 819, -497, 430, 734, 7, 430, 866, 869, 793, - 739, 761, 381, 861, 707, 710, 433, 694, 788, 729, - 811, 443, 698, 699, 700, 701, 702, 380, 812, 725, - 433, 726, 31, 40, 96, 60, 93, 703, 430, 334, - 100, 791, 797, 712, 706, 302, 385, 386, 334, 387, - 364, 388, 768, 24, 525, 52, 280, 49, 674, 399, - 307, 0, 657, 0, 0, 675, 0, 0, 743, 496, - 102, 0, 0, 433, 427, 425, 0, 434, 0, 0, - 390, 334, 0, 0, 631, 0, 0, 391, 430, 0, - 0, 434, 0, 0, 302, 303, 304, 0, 305, 0, - 306, 0, 0, 313, 0, 0, 0, 0, 0, 307, - 0, 286, 280, 280, 0, 632, 0, 0, 632, 734, - 0, 734, 0, 651, 0, 0, 0, 739, 813, 392, - 0, 0, 0, 0, 633, 0, 0, 280, 0, 430, - 0, 399, 0, 399, 430, 430, 430, 430, 430, 0, - 319, 138, 313, 0, 0, 0, 0, 286, 280, 0, - 393, 633, 0, 0, 394, 693, 0, 0, 676, 0, - 0, 0, 0, 23, 0, 0, 430, 0, 0, 323, - 0, 395, 0, 0, 0, 0, 0, 0, 0, 428, - 429, 0, 0, 0, 0, 0, 0, 0, 0, 319, - 0, 0, 0, 0, 0, 0, 769, 280, 0, 0, - 280, 0, 0, 0, 0, 0, 0, 0, 0, 677, - 776, 0, 0, 0, 0, 0, 0, 0, 323, 0, - 0, 0, 0, 0, 0, 0, 0, 399, 652, 653, - 399, 0, 0, 0, 302, 303, 304, 0, 305, 0, - 306, 0, 0, 0, 0, 0, 0, 0, 0, 307, - 0, 101, 0, 802, 0, 0, 0, 0, 0, 102, - 308, 103, 0, 309, 0, 0, 105, 106, 107, 0, - 108, 109, 0, 0, 0, 310, 311, 110, 111, 0, - 818, 112, 113, 312, 0, 0, 114, 0, 0, 0, - 0, 115, 313, 314, 116, 117, 118, 119, 0, 0, - 0, 0, 315, 120, 0, 121, 0, 122, 0, 316, - 0, 0, 123, 124, 125, 126, 0, 127, 430, 317, - 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, - 318, 232, 430, 0, 134, 0, 135, 136, 137, 319, - 138, 0, 0, 0, 139, 140, 141, 142, 143, 320, - 0, 0, 0, 321, 0, 322, 0, 145, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 323, 0, - 0, 0, 0, 0, 0, 430, 0, 0, 324, 325, - 0, 0, 0, 0, 302, 385, 386, 0, 387, 0, - 388, 0, 0, 0, 0, 0, 0, 0, 0, 307, - 0, 101, 399, 373, 374, 375, 376, 377, 547, 548, - 549, 103, 550, 551, 552, 553, 554, 555, 556, 557, - 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, - 578, 579, 580, 581, 116, 117, 118, 119, 582, 583, - 584, 585, 586, 587, 588, 589, 590, 122, 591, 592, - 593, 594, 123, 595, 125, 596, 597, 598, 599, 600, - 601, 602, 603, 128, 604, 605, 606, 607, 608, 609, - 610, 611, 612, 613, 134, 614, 135, 615, 616, 617, - 618, 619, 620, 621, 139, 140, 141, 142, 143, 622, - 0, 0, 0, 394, 0, 0, 0, 145, 0, 302, - 385, 386, 23, 387, 0, 388, 623, 0, 323, 0, - 395, 0, 0, 0, 307, 0, 101, 0, 624, 397, - 0, 0, 0, 547, 548, 549, 103, 550, 551, 552, - 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, + 22, 289, 632, 437, 208, 220, 450, 5, 631, 22, + 5, 235, 239, 276, 651, 486, 448, 660, 448, 64, + 292, 436, 730, 213, 662, 15, 362, 407, 56, 424, + 469, 424, 64, 92, 206, 219, 64, 302, 369, 523, + 64, 424, 102, 97, 436, 63, 487, 684, 295, 665, + 208, 236, 240, 92, 470, 333, -427, 722, 63, 91, + 373, 374, 63, 424, 64, 101, 63, 295, 492, 490, + 77, 689, 1, 295, 753, 295, 761, 424, 6, 91, + 242, 231, 265, 195, 281, 699, 332, 237, 797, -427, + 215, -430, 800, 471, 644, 495, 232, 228, 197, -291, + 370, 493, 232, 796, 203, 216, 221, 650, 58, 740, + 524, 294, 16, 754, 694, 762, 70, 8, 233, 371, + 234, 234, 16, 138, 238, 296, 234, 798, 297, 811, + 295, 801, 13, 220, 295, 16, 295, 16, 161, 199, + 695, 542, 333, 333, 809, 214, 57, 58, 503, 505, + 661, 216, 729, 16, 508, 510, 208, 58, 57, 208, + -430, 218, 23, 287, 496, 1, 205, 449, 447, 268, + 16, 323, 16, 332, 332, 546, 208, 546, 16, 696, + 16, 1, 58, 1, 58, 57, 242, 632, 1, 58, + 813, 245, 1, 479, 816, 213, 446, 57, 58, 646, + 251, 1, 58, 652, 447, 58, 206, 296, 756, 756, + 363, 808, 234, 872, 875, 280, -451, 286, 703, 290, + 704, 875, 293, -451, 280, 258, 26, 725, 293, 280, + 684, 444, 757, 757, 221, 16, 64, 64, 333, 16, + 654, 16, 9, 334, 880, 262, 234, 269, 645, 25, + 27, 422, 466, 425, 817, 434, 443, 216, 818, 270, + 416, 28, 215, 63, 467, 21, 457, -118, 32, 332, + 435, -498, 435, -118, 21, -200, -500, 216, 291, -500, + -120, 259, 648, -498, 361, 448, 653, 259, 546, -500, + -200, 333, 30, -500, 540, 333, 71, 379, -200, -498, + 406, -498, 641, 419, 420, 35, 407, 423, 407, 434, + 259, 692, -467, -498, 642, 333, 33, 214, 333, -467, + 746, 333, 332, 693, 435, 749, 332, 460, 662, 783, + 334, 334, 16, 38, 547, -280, 549, 750, 444, -280, + 460, 784, 814, -280, 815, 36, 332, 825, 254, 332, + 293, 293, 332, 234, 263, 15, 293, 293, 477, 234, + 535, 667, 380, 632, 536, 744, 426, 234, 537, 631, + 37, 234, 434, 511, 512, 41, 42, 513, 651, 435, + 662, 723, 434, 44, 726, -168, 434, 435, 531, 53, + -279, 46, -499, 48, -279, 731, 499, 435, 373, 374, + 376, 435, 47, 444, 381, 444, 502, 504, 57, 58, + 482, 483, 507, 509, 710, 711, 50, 208, 434, 220, + 51, 433, 68, 877, 399, 66, 334, 444, 443, 876, + 443, 444, 662, 435, 431, -128, 234, 69, 208, 70, + 208, 759, 760, 71, 435, 795, 435, 687, 72, 691, + 280, 153, 198, 94, 95, 286, 639, 98, 290, 222, + 223, 224, 225, 226, 280, 227, 228, 229, 639, 246, + 434, 230, 435, 248, 252, 480, 249, 260, 253, 334, + 16, 261, 264, 334, 820, 435, 450, -117, 431, 271, + 234, 273, 333, 235, 239, 359, 637, 275, 360, 272, + -501, -111, 365, 334, 333, 274, 334, 712, 647, 334, + 366, 712, 450, 276, 424, 655, 444, 367, 216, 321, + 221, 368, 434, 332, 417, 448, 447, 434, 434, 434, + 434, 434, 458, 236, 240, 332, 459, 435, 527, 416, + 464, 416, 435, 435, 435, 435, 435, 463, 528, 461, + 465, 431, 529, 468, 472, 473, 474, 435, 688, 690, + 476, 431, 434, 478, 481, 431, 488, 489, 491, -433, + 208, 500, 333, 526, 501, 506, 533, 435, -316, 406, + 532, 406, -266, 534, 543, 539, 538, 531, 548, -120, + 550, 664, 541, 544, 643, 645, 545, 431, 669, 656, + 733, 672, 674, 332, 675, 678, 671, 638, 673, 444, + 679, 333, 698, 702, 713, 714, 739, -11, -10, 717, + 399, 333, 787, 58, 720, 745, 727, 728, 724, 764, + 751, 768, 769, 457, 776, 770, 666, 772, 639, 773, + -129, 639, 332, 771, 780, 804, 779, 280, 7, 431, + 435, 777, 332, 778, 785, 781, 195, 805, 786, 790, + 743, 826, 791, 793, 806, 828, 748, 829, 831, 766, + 878, 738, -502, 881, 803, 873, 378, 716, 637, 719, + 334, 637, 734, 377, 445, 794, 712, 821, 701, 31, + 735, 822, 334, 705, 706, 707, 708, 709, 302, 303, + 304, 431, 305, 399, 306, 399, 431, 431, 431, 431, + 431, 737, 40, 307, 96, 280, 60, 434, 93, 100, + 302, 382, 383, 824, 384, 807, 385, 657, 528, 715, + 721, 434, 435, 364, 24, 307, 774, 52, 681, 386, + 387, 431, 767, 49, 663, 102, 435, 680, 752, 427, + 498, 0, 0, 0, 0, 389, 313, 0, 0, 0, + 334, 0, 390, 0, 0, 0, 0, 286, 280, 280, + 0, 434, 682, 425, 0, 743, 0, 743, 313, 0, + 0, 0, 0, 748, 823, 0, 639, 0, 0, 638, + 0, 428, 638, 0, 0, 0, 0, 280, 0, 334, + 0, 0, 399, 319, 392, 399, 0, 0, 0, 334, + 0, 0, 302, 303, 304, 0, 305, 639, 306, 286, + 280, 0, 0, 683, 0, 319, 138, 307, 0, 0, + 0, 0, 323, 0, 0, 393, 0, 0, 0, 394, + 700, 657, 658, 659, 0, 0, 0, 0, 23, 0, + 0, 0, 0, 0, 323, 0, 395, 637, 0, 0, + 0, 0, 0, 0, 429, 430, 0, 0, 0, 280, + 313, 0, 280, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 775, 0, 0, 682, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 431, 782, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 431, 0, 0, 0, 0, 0, 0, 319, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 812, 0, 0, + 0, 0, 0, 0, 0, 0, 323, 0, 0, 0, + 431, 0, 0, 0, 0, 0, 658, 659, 302, 382, + 383, 0, 384, 0, 385, 0, 0, 0, 830, 0, + 0, 0, 0, 307, 0, 101, 0, 386, 387, 0, + 0, 399, 553, 554, 555, 103, 556, 557, 558, 559, + 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, + 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, + 580, 581, 582, 583, 584, 585, 586, 587, 116, 117, + 118, 119, 588, 589, 590, 591, 592, 593, 594, 595, + 596, 122, 597, 598, 599, 600, 123, 601, 125, 602, + 603, 604, 605, 606, 607, 608, 609, 128, 610, 611, + 612, 613, 614, 615, 616, 617, 618, 619, 134, 620, + 135, 621, 622, 623, 624, 625, 626, 627, 139, 140, + 141, 142, 143, 628, 0, 0, 0, 394, 718, 0, + 0, 145, 0, 0, 0, 0, 23, 0, 0, 0, + 629, 0, 323, 0, 395, 302, 382, 383, 0, 384, + 0, 385, 630, 397, 0, 0, 0, 0, 0, 0, + 307, 0, 101, 0, 551, 552, 0, 0, 0, 553, + 554, 555, 103, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 116, - 117, 118, 119, 582, 583, 584, 585, 586, 587, 588, - 589, 590, 122, 591, 592, 593, 594, 123, 595, 125, - 596, 597, 598, 599, 600, 601, 602, 603, 128, 604, - 605, 606, 607, 608, 609, 610, 611, 612, 613, 134, - 614, 135, 615, 616, 617, 618, 619, 620, 621, 139, - 140, 141, 142, 143, 622, 0, 0, 0, 394, 709, - 0, 0, 145, 0, 302, 303, 304, 23, 305, 0, - 306, 623, 0, 323, 0, 395, 0, 0, 0, 307, - 0, 101, 0, 624, 397, 0, 0, 0, 0, 102, + 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, + 583, 584, 585, 586, 587, 116, 117, 118, 119, 588, + 589, 590, 591, 592, 593, 594, 595, 596, 122, 597, + 598, 599, 600, 123, 601, 125, 602, 603, 604, 605, + 606, 607, 608, 609, 128, 610, 611, 612, 613, 614, + 615, 616, 617, 618, 619, 134, 620, 135, 621, 622, + 623, 624, 625, 626, 627, 139, 140, 141, 142, 143, + 628, 0, 0, 0, 394, 0, 0, 0, 145, 0, + 302, 303, 304, 23, 305, 0, 306, 629, 0, 323, + 0, 395, 0, 0, 0, 307, 0, 101, 0, 630, + 397, 0, 0, 0, 0, 102, 308, 103, 0, 309, + 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, + 0, 310, 311, 110, 111, 0, 0, 112, 113, 312, + 0, 0, 114, 0, 0, 0, 0, 115, 313, 314, + 116, 117, 118, 119, 0, 0, 0, 0, 315, 120, + 0, 121, 0, 122, 0, 316, 0, 0, 123, 124, + 125, 126, 0, 127, 0, 317, 0, 0, 0, 128, + 0, 129, 130, 131, 132, 133, 318, 232, 0, 0, + 134, 0, 135, 136, 137, 319, 138, 0, 0, 0, + 139, 140, 141, 142, 143, 320, 0, 0, 0, 321, + 0, 322, 0, 145, 302, 303, 304, 0, 305, 0, + 306, 0, 0, 0, 323, 0, 0, 0, 0, 307, + 0, 101, 0, 0, 324, 325, 0, 0, 0, 102, 308, 103, 0, 309, 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, 0, 0, 0, 110, 111, 0, 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, @@ -8033,131 +8274,106 @@ namespace yy { 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, 318, 232, 0, 0, 134, 0, 135, 136, 137, 319, 138, 0, 0, 0, 139, 140, 141, 142, 143, 320, - 0, 482, 0, 0, 0, 322, 0, 145, 302, 303, - 304, 0, 305, 0, 306, 0, 0, 0, 323, 0, - 0, 0, 0, 307, 0, 101, 0, 0, 324, 325, - 0, 0, 0, 102, 308, 103, 0, 309, 0, 0, - 105, 106, 107, 0, 108, 109, 0, 0, 0, 0, - 0, 110, 111, 0, 0, 112, 113, 0, 0, 0, - 114, 0, 0, 0, 0, 115, 313, 314, 116, 117, - 118, 119, 0, 0, 0, 0, 315, 120, 0, 121, - 0, 122, 0, 316, 0, 0, 123, 124, 125, 126, - 0, 127, 0, 317, 0, 0, 0, 128, 0, 129, - 130, 131, 132, 133, 318, 232, 0, 0, 134, 0, - 135, 136, 137, 319, 138, 0, 0, 0, 139, 140, - 141, 142, 143, 320, 0, 0, 0, 0, 0, 322, - 0, 145, 302, 303, 304, 0, 305, 0, 306, 0, - 0, 0, 323, 0, 0, 0, 0, 307, 0, 101, - 0, 0, 324, 325, 0, 0, 0, 102, 0, 103, - 0, 309, 0, 0, 105, 106, 107, 0, 108, 109, - 0, 0, 0, 0, 0, 110, 111, 0, 0, 112, - 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, - 313, 314, 116, 117, 118, 119, 0, 0, 0, 0, - 315, 120, 0, 121, 0, 122, 0, 316, 0, 0, - 123, 124, 125, 126, 0, 127, 0, 317, 0, 0, - 0, 128, 0, 129, 130, 131, 132, 133, 318, 232, - 0, 0, 134, 0, 135, 136, 137, 319, 138, 0, - 0, 0, 139, 140, 141, 142, 143, 320, 0, 0, - 0, 0, 0, 322, 0, 145, 302, 385, 386, 0, - 387, 0, 388, 0, 0, 0, 323, 0, 0, 0, - 0, 307, 0, 101, 0, 0, 324, 325, 0, 0, - 0, 102, 0, 103, 0, 389, 0, 0, 105, 106, - 107, 390, 108, 109, 0, 0, 0, 0, 391, 110, - 111, 0, 0, 112, 113, 0, 0, 0, 114, 0, - 0, 0, 0, 115, 313, 0, 116, 117, 118, 119, - 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, - 0, 0, 0, 0, 123, 124, 125, 126, 0, 127, - 392, 0, 0, 0, 0, 128, 0, 129, 130, 131, - 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, - 137, 319, 138, 0, 0, 0, 139, 140, 141, 142, - 143, 393, 0, 0, 0, 394, 0, 0, 0, 145, - 0, 302, 385, 386, 23, 387, 0, 388, 0, 0, - 323, 0, 395, 0, 0, 0, 307, 0, 101, 0, - 396, 397, 0, 0, 0, 0, 102, 0, 103, 0, - 389, 0, 0, 105, 106, 107, 390, 108, 109, 0, - 0, 0, 0, 391, 110, 111, 0, 0, 112, 113, + 0, 484, 0, 0, 0, 322, 0, 145, 0, 0, + 0, 0, 0, 0, 0, 302, 382, 383, 323, 384, + 0, 385, 0, 0, 0, 0, 0, 0, 324, 325, + 307, 0, 101, 0, 386, 387, 0, 0, 0, 0, + 102, 0, 103, 0, 388, 0, 0, 105, 106, 107, + 389, 108, 109, 0, 0, 0, 0, 390, 110, 111, + 0, 0, 112, 113, 0, 0, 0, 114, 0, 0, + 0, 0, 115, 313, 0, 116, 117, 118, 119, 0, + 0, 0, 0, 0, 120, 0, 391, 0, 122, 0, + 0, 0, 0, 123, 124, 125, 126, 0, 127, 392, + 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, + 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, + 319, 138, 0, 0, 0, 139, 140, 141, 142, 143, + 393, 0, 0, 0, 394, 0, 0, 0, 145, 0, + 302, 303, 304, 23, 305, 0, 306, 0, 0, 323, + 0, 395, 0, 0, 0, 307, 0, 101, 0, 396, + 397, 0, 0, 0, 0, 102, 308, 103, 0, 309, + 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, + 0, 0, 0, 110, 111, 0, 0, 112, 113, 0, + 0, 0, 114, 0, 0, 0, 0, 115, 313, 314, + 116, 117, 118, 119, 0, 0, 0, 0, 315, 120, + 0, 121, 0, 122, 0, 316, 0, 0, 123, 124, + 125, 126, 0, 127, 0, 317, 0, 0, 0, 128, + 0, 129, 130, 131, 132, 133, 318, 232, 0, 0, + 134, 0, 135, 136, 137, 319, 138, 0, 0, 0, + 139, 140, 141, 142, 143, 320, 0, 0, 0, 0, + 0, 322, 0, 145, 0, 0, 0, 0, 0, 0, + 0, 302, 382, 383, 323, 384, 0, 385, 0, 0, + 0, 0, 0, 0, 324, 325, 307, 0, 101, 0, + 386, 387, 0, 0, 0, 0, 102, 0, 103, 0, + 388, 0, 0, 105, 106, 107, 389, 108, 109, 0, + 0, 0, 0, 390, 110, 111, 0, 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, 313, 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, - 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, + 120, 0, 391, 0, 122, 0, 0, 0, 0, 123, 124, 125, 126, 0, 127, 392, 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, 319, 138, 0, 0, 0, 139, 140, 141, 142, 143, 393, 0, 0, 0, - 394, 0, 302, 0, 145, 0, 0, 0, 0, 23, - 0, 0, 0, 0, 0, 323, 0, 395, 0, 101, - 0, 0, 0, 0, 0, 428, 397, 102, 0, 103, - 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, - 0, 0, 0, 0, 0, 110, 111, 0, 0, 112, - 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, - 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, - 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, - 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, - 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, - 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, - 0, 0, 139, 140, 141, 142, 143, 0, 0, 0, - 302, 385, 386, 0, 387, 145, 388, 0, 0, 0, - 0, 0, 0, 0, 0, 307, 323, 101, 302, 385, - 386, 0, 387, 0, 388, 102, 146, 205, 0, 427, - 302, 303, 304, 307, 305, 390, 306, 0, 0, 0, - 0, 0, 391, 102, 0, 307, 0, 427, 0, 0, - 302, 303, 304, 390, 305, 0, 306, 0, 313, 651, - 391, 0, 0, 0, 0, 307, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 313, 0, 0, 651, - 0, 0, 0, 0, 392, 0, 0, 0, 313, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 392, 0, 676, 319, 138, 0, 313, 0, - 0, 0, 0, 0, 0, 393, 0, 0, 0, 800, - 0, 0, 0, 319, 138, 0, 0, 0, 23, 0, - 0, 0, 0, 393, 323, 319, 395, 394, 0, 0, - 0, 0, 0, 0, 428, 429, 23, 0, 0, 0, - 0, 0, 323, 0, 395, 319, 0, 0, 0, 0, - 0, 0, 428, 429, 323, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 652, 653, 0, 0, 0, 0, - 0, 0, 0, 0, 323, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 652, 653, 101, 0, 373, 374, - 375, 376, 377, 0, 102, 0, 103, 0, 104, 0, - 0, 105, 106, 107, 0, 108, 109, 0, 0, 0, - 0, 0, 110, 111, 0, 0, 112, 113, 0, 0, - 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, - 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, - 121, 0, 122, 0, 0, 0, 0, 123, 124, 125, - 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, - 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, - 0, 135, 136, 137, 0, 138, 0, 0, 0, 139, - 140, 141, 142, 143, 0, 101, 0, 0, 0, 0, - 0, 0, 145, 102, 0, 103, 0, 104, 0, 0, - 105, 106, 107, 0, 108, 109, 0, 0, 0, 0, - 0, 110, 111, 146, 16, 112, 113, 0, 0, 0, - 114, 0, 0, 0, 0, 115, 0, 0, 116, 117, - 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, - 0, 122, 0, 0, 0, 0, 123, 124, 125, 126, - 0, 127, 0, 0, 0, 0, 0, 128, 0, 129, - 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, - 135, 136, 137, 0, 138, 0, 0, 0, 139, 140, - 141, 142, 143, 0, 144, 0, 0, 98, 101, 0, - 0, 145, 0, 0, 0, 0, 102, 0, 103, 0, - 104, 0, 0, 105, 106, 107, 0, 108, 109, 0, - 0, 0, 146, 16, 110, 111, 0, 0, 112, 113, - 0, 0, 0, 114, 0, 256, 0, 0, 115, 0, - 0, 116, 117, 118, 119, 0, 257, 0, 0, 0, + 394, 0, 0, 0, 145, 0, 302, 303, 304, 23, + 305, 0, 306, 0, 0, 323, 0, 395, 0, 0, + 0, 307, 0, 101, 0, 429, 397, 0, 0, 0, + 0, 102, 0, 103, 0, 309, 0, 0, 105, 106, + 107, 0, 108, 109, 0, 0, 0, 0, 0, 110, + 111, 0, 0, 112, 113, 0, 0, 0, 114, 0, + 0, 0, 0, 115, 313, 314, 116, 117, 118, 119, + 0, 0, 0, 0, 315, 120, 0, 121, 0, 122, + 0, 316, 0, 0, 123, 124, 125, 126, 0, 127, + 0, 317, 0, 0, 0, 128, 0, 129, 130, 131, + 132, 133, 318, 232, 0, 302, 134, 0, 135, 136, + 137, 319, 138, 0, 0, 0, 139, 140, 141, 142, + 143, 320, 101, 0, 0, 0, 0, 322, 0, 145, + 102, 0, 103, 0, 104, 0, 0, 105, 106, 107, + 323, 108, 109, 0, 0, 0, 0, 0, 110, 111, + 324, 325, 112, 113, 0, 0, 0, 114, 0, 0, + 0, 0, 115, 0, 0, 116, 117, 118, 119, 0, + 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, + 0, 0, 0, 123, 124, 125, 126, 0, 127, 0, + 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, + 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, + 0, 138, 0, 0, 0, 139, 140, 141, 142, 143, + 0, 0, 0, 302, 382, 383, 0, 384, 145, 385, + 0, 302, 303, 304, 0, 305, 0, 306, 307, 323, + 101, 0, 386, 387, 0, 0, 307, 0, 102, 146, + 205, 0, 427, 0, 0, 302, 382, 383, 389, 384, + 657, 385, 0, 0, 0, 390, 0, 0, 0, 0, + 307, 0, 0, 0, 386, 387, 0, 0, 0, 0, + 102, 313, 0, 0, 427, 0, 0, 0, 0, 313, + 389, 0, 0, 0, 428, 0, 0, 390, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 392, 0, 0, + 0, 0, 0, 313, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 428, 0, 319, 138, + 0, 0, 0, 0, 0, 0, 319, 0, 393, 392, + 0, 0, 810, 0, 0, 0, 0, 0, 0, 0, + 0, 23, 0, 0, 0, 0, 0, 323, 0, 395, + 319, 138, 0, 0, 0, 323, 0, 429, 430, 0, + 393, 0, 0, 0, 394, 658, 659, 0, 101, 0, + 0, 0, 0, 23, 0, 0, 102, 0, 103, 323, + 104, 395, 0, 105, 106, 107, 0, 108, 109, 429, + 430, 0, 0, 0, 110, 111, 0, 0, 112, 113, + 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, + 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, - 0, 139, 140, 141, 142, 143, 0, 0, 0, 0, - 0, 101, 0, 0, 145, 0, 0, 0, 0, 102, + 0, 139, 140, 141, 142, 143, 0, 144, 0, 0, + 98, 101, 0, 0, 145, 0, 0, 0, 0, 102, 0, 103, 0, 104, 0, 0, 105, 106, 107, 0, - 108, 109, 0, 0, 0, 146, 16, 110, 111, 681, - 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, - 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, + 108, 109, 0, 0, 0, 146, 16, 110, 111, 0, + 0, 112, 113, 0, 0, 0, 114, 0, 256, 0, + 0, 115, 0, 0, 116, 117, 118, 119, 0, 257, 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, - 0, 0, 123, 124, 125, 126, 0, 127, 682, 0, + 0, 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, 0, 139, 140, 141, 142, 143, 0, - 101, 0, 0, 0, 0, 0, 0, 145, 102, 0, + 101, 0, 373, 374, 0, 0, 0, 145, 102, 0, 103, 0, 104, 0, 0, 105, 106, 107, 0, 108, - 109, 0, 0, 0, 0, 0, 110, 111, 204, 16, + 109, 0, 0, 0, 0, 0, 110, 111, 146, 16, 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, @@ -8165,9 +8381,9 @@ namespace yy { 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, 0, 139, 140, 141, 142, 143, 0, 101, - 0, 0, 98, 0, 0, 0, 145, 102, 0, 103, + 0, 0, 0, 0, 0, 0, 145, 102, 0, 103, 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, - 241, 0, 0, 0, 0, 110, 111, 146, 16, 112, + 0, 0, 0, 0, 0, 110, 111, 146, 16, 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, @@ -8175,29 +8391,29 @@ namespace yy { 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, 0, 139, 140, 141, 142, 143, 0, 101, 0, - 0, 0, 0, 0, 0, 145, 102, 0, 103, 0, - 104, 0, 0, 105, 106, 107, 0, 108, 109, 0, - 0, 0, 0, 0, 110, 111, 204, 16, 112, 113, + 0, 98, 0, 0, 0, 145, 102, 0, 103, 0, + 104, 0, 0, 105, 106, 107, 0, 108, 109, 241, + 0, 0, 0, 0, 110, 111, 146, 16, 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, - 0, 139, 140, 141, 142, 143, 0, 250, 0, 0, - 0, 101, 0, 0, 145, 0, 0, 0, 0, 102, - 0, 103, 0, 104, 0, 0, 105, 106, 107, 0, - 108, 109, 0, 0, 0, 146, 16, 110, 111, 0, - 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, - 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, - 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, - 0, 0, 123, 124, 125, 126, 0, 127, 0, 0, - 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, - 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, - 138, 0, 0, 0, 139, 140, 141, 142, 143, 0, - 101, 0, 0, 0, 0, 0, 0, 145, 102, 260, + 0, 139, 140, 141, 142, 143, 0, 101, 0, 0, + 0, 0, 0, 0, 145, 102, 0, 103, 0, 104, + 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, + 0, 0, 0, 110, 111, 204, 16, 112, 113, 0, + 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, + 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, + 0, 121, 0, 122, 0, 0, 0, 0, 123, 124, + 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, + 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, + 134, 0, 135, 136, 137, 0, 138, 0, 0, 0, + 139, 140, 141, 142, 143, 0, 250, 0, 0, 0, + 101, 0, 0, 145, 0, 0, 0, 0, 102, 0, 103, 0, 104, 0, 0, 105, 106, 107, 0, 108, - 109, 0, 0, 0, 0, 0, 110, 111, 146, 16, + 109, 0, 0, 0, 146, 16, 110, 111, 0, 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, @@ -8205,214 +8421,256 @@ namespace yy { 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, 0, 139, 140, 141, 142, 143, 0, 101, - 723, 0, 0, 0, 0, 0, 145, 102, 0, 103, + 0, 0, 0, 0, 0, 0, 145, 102, 260, 103, 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, - 0, 0, 0, 0, 0, 110, 111, 204, 16, 112, + 0, 0, 0, 0, 0, 110, 111, 146, 16, 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, - 0, 0, 139, 140, 141, 142, 143, 0, 101, 0, + 0, 0, 139, 140, 141, 142, 143, 0, 101, 732, 0, 0, 0, 0, 0, 145, 102, 0, 103, 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, 0, - 0, 0, 0, 0, 110, 111, 204, 205, 112, 113, + 0, 0, 0, 0, 110, 111, 204, 16, 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, - 0, 139, 140, 141, 142, 143, 0, 0, 0, 0, - 0, 0, 0, 0, 145, 0, 0, 0, 0, 0, + 0, 139, 140, 141, 142, 143, 0, 101, 0, 0, + 0, 0, 0, 0, 145, 102, 0, 103, 0, 104, + 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, + 0, 0, 0, 110, 111, 204, 205, 112, 113, 0, + 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, + 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, + 0, 121, 0, 122, 0, 0, 0, 0, 123, 124, + 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, + 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, + 134, 0, 135, 136, 137, 0, 138, 0, 0, 0, + 139, 140, 141, 142, 143, 0, 101, 0, 0, 0, + 0, 0, 0, 145, 102, 0, 103, 0, 104, 0, + 0, 105, 106, 107, 0, 108, 109, 0, 0, 0, + 0, 0, 110, 111, 146, 16, 112, 113, 0, 0, + 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, + 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, + 121, 0, 122, 0, 0, 0, 0, 123, 124, 125, + 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, + 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, + 0, 135, 136, 137, 0, 138, 0, 0, 0, 139, + 140, 141, 142, 143, 0, 0, 0, 0, 0, 0, + 0, 0, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 146, 16, 373, 374, 375, - 376, 377, 547, 820, 549, 0, 550, 821, 552, 553, - 822, 823, 824, 825, 826, 827, 560, 561, 562, 563, - 828, 829, 830, 567, 568, 831, 832, 571, 572, 573, - 833, 575, 576, 577, 578, 834, 835, 581, 0, 0, - 0, 0, 582, 583, 584, 585, 586, 836, 588, 837, - 590, 0, 591, 592, 593, 594, 0, 838, 0, 839, - 597, 840, 841, 600, 601, 602, 603, 0, 604, 842, - 843, 844, 845, 846, 610, 611, 612, 613, 0, 614, - 0, 847, 848, 849, 850, 619, 620, 621, 0, 0, - 0, 0, 0, 851, 0, 0, 0, 0, 0, 0, + 373, 374, 0, 204, 16, 553, 832, 555, 0, 556, + 833, 558, 559, 834, 835, 836, 837, 838, 839, 566, + 567, 568, 569, 840, 841, 842, 573, 574, 843, 844, + 577, 578, 579, 845, 581, 582, 583, 584, 846, 847, + 587, 0, 0, 0, 0, 588, 589, 590, 591, 592, + 848, 594, 849, 596, 0, 597, 598, 599, 600, 0, + 850, 0, 851, 603, 852, 853, 606, 607, 608, 609, + 0, 610, 854, 855, 856, 857, 858, 616, 617, 618, + 619, 0, 620, 0, 859, 860, 861, 862, 625, 626, + 627, 0, 0, 0, 0, 0, 863, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 623, 0, 0, 0, 0, 0, 0, 0, 0, 547, - 820, 549, 853, 550, 821, 552, 553, 822, 823, 824, - 825, 826, 827, 560, 561, 562, 563, 828, 829, 830, - 567, 568, 831, 832, 571, 572, 573, 833, 575, 576, - 577, 578, 834, 835, 581, 0, 0, 0, 0, 582, - 583, 584, 585, 586, 836, 588, 837, 590, 0, 591, - 592, 593, 594, 0, 838, 0, 839, 597, 840, 841, - 600, 601, 602, 603, 0, 604, 842, 843, 844, 845, - 846, 610, 611, 612, 613, 0, 614, 0, 847, 848, - 849, 850, 619, 620, 621, 0, 0, 0, 0, 0, - 851, 0, 0, 0, 0, 862, 0, 0, 852, 0, - 0, 0, 0, 0, 0, 0, 0, 623, 0, 0, - 0, 0, 0, 0, 0, 0, 547, 820, 549, 853, - 550, 821, 552, 553, 822, 823, 824, 825, 826, 827, - 560, 561, 562, 563, 828, 829, 830, 567, 568, 831, - 832, 571, 572, 573, 833, 575, 576, 577, 578, 834, - 835, 581, 0, 0, 0, 0, 582, 583, 584, 585, - 586, 836, 588, 837, 590, 0, 591, 592, 593, 594, - 0, 838, 0, 839, 597, 840, 841, 600, 601, 602, - 603, 0, 604, 842, 843, 844, 845, 846, 610, 611, - 612, 613, 0, 614, 0, 847, 848, 849, 850, 619, - 620, 621, 0, 0, 0, 0, 0, 851, 0, 0, - 0, 0, 0, 0, 0, 852, 867, 0, 0, 0, - 0, 0, 0, 0, 623, 0, 0, 0, 0, 0, - 0, 0, 0, 547, 820, 549, 853, 550, 821, 552, - 553, 822, 823, 824, 825, 826, 827, 560, 561, 562, - 563, 828, 829, 830, 567, 568, 831, 832, 571, 572, - 573, 833, 575, 576, 577, 578, 834, 835, 581, 0, - 0, 0, 0, 582, 583, 584, 585, 586, 836, 588, - 837, 590, 0, 591, 592, 593, 594, 0, 838, 0, - 839, 597, 840, 841, 600, 601, 602, 603, 0, 604, - 842, 843, 844, 845, 846, 610, 611, 612, 613, 0, - 614, 0, 847, 848, 849, 850, 619, 620, 621, 0, - 0, 0, 0, 0, 851, 0, 0, 0, 0, 0, - 0, 0, 852, 0, 0, 0, 0, 0, 0, 0, - 0, 623, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 853 + 0, 0, 0, 629, 0, 0, 0, 0, 0, 0, + 0, 0, 553, 832, 555, 865, 556, 833, 558, 559, + 834, 835, 836, 837, 838, 839, 566, 567, 568, 569, + 840, 841, 842, 573, 574, 843, 844, 577, 578, 579, + 845, 581, 582, 583, 584, 846, 847, 587, 0, 0, + 0, 0, 588, 589, 590, 591, 592, 848, 594, 849, + 596, 0, 597, 598, 599, 600, 0, 850, 0, 851, + 603, 852, 853, 606, 607, 608, 609, 0, 610, 854, + 855, 856, 857, 858, 616, 617, 618, 619, 0, 620, + 0, 859, 860, 861, 862, 625, 626, 627, 0, 0, + 0, 0, 0, 863, 0, 0, 0, 0, 874, 0, + 0, 864, 0, 0, 0, 0, 0, 0, 0, 0, + 629, 0, 0, 0, 0, 0, 0, 0, 0, 553, + 832, 555, 865, 556, 833, 558, 559, 834, 835, 836, + 837, 838, 839, 566, 567, 568, 569, 840, 841, 842, + 573, 574, 843, 844, 577, 578, 579, 845, 581, 582, + 583, 584, 846, 847, 587, 0, 0, 0, 0, 588, + 589, 590, 591, 592, 848, 594, 849, 596, 0, 597, + 598, 599, 600, 0, 850, 0, 851, 603, 852, 853, + 606, 607, 608, 609, 0, 610, 854, 855, 856, 857, + 858, 616, 617, 618, 619, 0, 620, 0, 859, 860, + 861, 862, 625, 626, 627, 0, 0, 0, 0, 0, + 863, 0, 0, 0, 0, 0, 0, 0, 864, 879, + 0, 0, 0, 0, 0, 0, 0, 629, 0, 0, + 0, 0, 0, 0, 0, 0, 553, 832, 555, 865, + 556, 833, 558, 559, 834, 835, 836, 837, 838, 839, + 566, 567, 568, 569, 840, 841, 842, 573, 574, 843, + 844, 577, 578, 579, 845, 581, 582, 583, 584, 846, + 847, 587, 0, 0, 0, 0, 588, 589, 590, 591, + 592, 848, 594, 849, 596, 0, 597, 598, 599, 600, + 0, 850, 0, 851, 603, 852, 853, 606, 607, 608, + 609, 0, 610, 854, 855, 856, 857, 858, 616, 617, + 618, 619, 0, 620, 0, 859, 860, 861, 862, 625, + 626, 627, 0, 0, 0, 0, 0, 863, 0, 0, + 0, 0, -270, 0, -270, 864, -270, 0, -270, -270, + 0, 0, 0, 0, 629, 0, -270, -270, -270, -270, + 0, 0, 0, -270, -270, 0, 865, -270, -270, -270, + 0, -270, -270, -270, -270, 0, 0, -270, 0, 0, + 0, 0, -270, -270, -270, -270, -270, 0, -270, 0, + -270, 0, -270, -270, -270, -270, 0, 0, 0, 0, + -270, 0, 0, -270, -270, -270, -270, 0, -270, 0, + 0, 0, 0, 0, -270, -270, -270, -270, 0, -270, + 0, 0, 0, 0, 0, -270, -270, -270, 0, 0, + -271, 0, -271, 0, -271, 0, -271, -271, -270, 0, + 0, 0, 0, 0, -271, -271, -271, -271, 0, 0, + -270, -271, -271, 0, 0, -271, -271, -271, -270, -271, + -271, -271, -271, 0, 0, -271, 0, 0, 0, 0, + -271, -271, -271, -271, -271, 0, -271, 0, -271, 0, + -271, -271, -271, -271, 0, 0, 0, 0, -271, 0, + 0, -271, -271, -271, -271, 0, -271, 0, 0, 0, + 0, 0, -271, -271, -271, -271, 0, -271, 0, 0, + 0, 0, 0, -271, -271, -271, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, -271, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, -271, 0, + 0, 0, 0, 0, 0, 0, -271 }; const short int asn1_parser::yycheck_[] = { - 9, 98, 99, 53, 132, 133, 224, 447, 272, 18, - 274, 0, 447, 231, 3, 321, 66, 67, 273, 237, - 70, 296, 132, 133, 74, 91, 92, 471, 462, 53, - 253, 4, 98, 228, 98, 650, 322, 87, 4, 265, - 21, 91, 66, 67, 4, 21, 70, 144, 98, 468, - 74, 4, 21, 98, 99, 4, 44, 234, 4, 49, - 335, 44, 32, 87, 44, 21, 63, 49, 53, 121, - 510, 148, 44, 140, 98, 49, 234, 144, 144, 498, - 111, 21, 76, 523, 111, 76, 86, 153, 0, 123, - 86, 23, 24, 25, 26, 27, 21, 149, 88, 144, - 121, 101, 91, 21, 232, 101, 88, 125, 97, 98, - 99, 49, 178, 144, 88, 149, 30, 144, 529, 49, - 531, 120, 140, 123, 94, 125, 125, 123, 149, 125, - 227, 417, 198, 121, 121, 125, 124, 28, 121, 136, - 125, 359, 360, 113, 321, 322, 372, 365, 366, 121, - 88, 145, 124, 250, 145, 144, 253, 772, 88, 123, - 29, 149, 149, 321, 322, 231, 149, 148, 149, 149, - 55, 237, 148, 270, 59, 148, 149, 149, 138, 203, - 149, 234, 227, 149, 250, 44, 314, 253, 148, 149, - 256, 257, 148, 628, 260, 148, 149, 88, 123, 148, - 149, 92, 148, 149, 270, 250, 270, 271, 148, 259, - 436, 261, 438, 263, 280, 224, 148, 226, 123, 228, - 270, 271, 231, 148, 233, 270, 44, 293, 237, 238, - 148, 149, 137, 459, 148, 149, 34, 463, 227, 457, - 417, 110, 44, 124, 121, 311, 270, 271, 9, 745, - 112, 866, 436, 124, 438, 136, 265, 18, 677, 417, - 58, 250, 121, 125, 253, 136, 275, 317, 321, 322, - 465, 69, 149, 537, 263, 123, 265, 773, 126, 148, - 50, 270, 459, 349, 125, 124, 463, 123, 136, 125, - 149, 468, 140, 359, 360, 472, 137, 136, 125, 365, - 366, 137, 129, 121, 140, 124, 529, 120, 531, 123, - 468, 125, 125, 137, 472, 492, 15, 136, 495, 121, - 546, 498, 123, 137, 125, 149, 132, 771, 317, 74, - 124, 149, 751, 383, 492, 124, 137, 495, 125, 122, - 498, 391, 136, 124, 394, 136, 129, 149, 105, 140, - 359, 360, 480, 144, 136, 136, 365, 366, 140, 665, - 800, 854, 144, 122, 417, 800, 120, 120, 861, 644, - 129, 125, 125, 817, 23, 24, 426, 778, 27, 780, - 655, 447, 816, 372, 23, 24, 25, 26, 27, 16, - 17, 248, 139, 459, 383, 252, 148, 149, 43, 44, - 466, 105, 391, 263, 105, 394, 124, 125, 91, 92, - 60, 637, 509, 4, 511, 468, 139, 70, 858, 472, - 120, 126, 132, 858, 35, 869, 476, 436, 71, 438, - 141, 123, 529, 141, 531, 55, 742, 426, 136, 492, - 124, 123, 495, 509, 510, 498, 141, 436, 457, 438, - 102, 102, 123, 462, 90, 123, 465, 317, 447, 123, - 86, 68, 471, 529, 509, 531, 511, 102, 15, 123, - 459, 137, 120, 129, 463, 137, 123, 527, 784, 137, - 608, 609, 532, 533, 534, 535, 536, 476, 665, 120, - 745, 137, 125, 123, 149, 137, 140, 715, 608, 609, - 677, 86, 140, 137, 86, 137, 86, 665, 86, 123, - 123, 775, 140, 537, 564, 253, 21, 541, 773, 677, - 509, 123, 511, 383, 148, 263, 124, 136, 131, 124, - 136, 391, 125, 86, 394, 124, 136, 57, 527, 39, - 529, 39, 531, 532, 533, 534, 535, 536, 12, 4, - 123, 57, 136, 122, 129, 125, 124, 546, 137, 625, - 123, 658, 628, 144, 124, 742, 426, 144, 123, 136, - 136, 125, 137, 137, 751, 564, 137, 125, 796, 317, - 124, 123, 125, 123, 742, 136, 136, 447, 124, 126, - 136, 143, 658, 751, 126, 121, 4, 128, 137, 124, - 149, 124, 137, 136, 39, 126, 734, 784, 658, 137, - 126, 121, 665, 658, 136, 681, 476, 136, 119, 126, - 124, 136, 136, 126, 677, 136, 784, 636, 140, 147, - 126, 126, 124, 124, 124, 137, 625, 136, 103, 628, - 137, 650, 136, 124, 137, 383, 123, 136, 637, 136, - 136, 124, 140, 391, 663, 3, 394, 136, 136, 755, - 669, 690, 250, 852, 625, 628, 716, 527, 741, 658, - 785, 270, 532, 533, 534, 535, 536, 249, 786, 658, - 730, 658, 18, 32, 74, 53, 70, 711, 426, 742, - 87, 748, 770, 636, 546, 4, 5, 6, 751, 8, - 238, 10, 715, 11, 564, 49, 715, 44, 492, 447, - 19, -1, 472, -1, -1, 495, -1, -1, 677, 344, - 29, -1, -1, 773, 33, 775, -1, 716, -1, -1, - 39, 784, -1, -1, 800, -1, -1, 46, 476, -1, - -1, 730, -1, -1, 4, 5, 6, -1, 8, -1, - 10, -1, -1, 62, -1, -1, -1, -1, -1, 19, - -1, 770, 771, 772, -1, 625, -1, -1, 628, 778, - -1, 780, -1, 33, -1, -1, -1, 786, 787, 88, - -1, -1, -1, -1, 773, -1, -1, 796, -1, 527, - -1, 529, -1, 531, 532, 533, 534, 535, 536, -1, - 109, 110, 62, -1, -1, -1, -1, 816, 817, -1, - 119, 800, -1, -1, 123, 124, -1, -1, 78, -1, - -1, -1, -1, 132, -1, -1, 564, -1, -1, 138, - -1, 140, -1, -1, -1, -1, -1, -1, -1, 148, - 149, -1, -1, -1, -1, -1, -1, -1, -1, 109, - -1, -1, -1, -1, -1, -1, 716, 866, -1, -1, - 869, -1, -1, -1, -1, -1, -1, -1, -1, 129, - 730, -1, -1, -1, -1, -1, -1, -1, 138, -1, - -1, -1, -1, -1, -1, -1, -1, 625, 148, 149, - 628, -1, -1, -1, 4, 5, 6, -1, 8, -1, - 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, - -1, 21, -1, 773, -1, -1, -1, -1, -1, 29, - 30, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, 45, 46, 47, 48, -1, - 800, 51, 52, 53, -1, -1, 56, -1, -1, -1, - -1, 61, 62, 63, 64, 65, 66, 67, -1, -1, - -1, -1, 72, 73, -1, 75, -1, 77, -1, 79, - -1, -1, 82, 83, 84, 85, -1, 87, 716, 89, - -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, - 100, 101, 730, -1, 104, -1, 106, 107, 108, 109, - 110, -1, -1, -1, 114, 115, 116, 117, 118, 119, - -1, -1, -1, 123, -1, 125, -1, 127, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 138, -1, - -1, -1, -1, -1, -1, 773, -1, -1, 148, 149, - -1, -1, -1, -1, 4, 5, 6, -1, 8, -1, - 10, -1, -1, -1, -1, -1, -1, -1, -1, 19, - -1, 21, 800, 23, 24, 25, 26, 27, 28, 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, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - -1, -1, -1, 123, -1, -1, -1, 127, -1, 4, - 5, 6, 132, 8, -1, 10, 136, -1, 138, -1, - 140, -1, -1, -1, 19, -1, 21, -1, 148, 149, - -1, -1, -1, 28, 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, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, -1, -1, -1, 123, 124, - -1, -1, 127, -1, 4, 5, 6, 132, 8, -1, - 10, 136, -1, 138, -1, 140, -1, -1, -1, 19, - -1, 21, -1, 148, 149, -1, -1, -1, -1, 29, + 9, 228, 449, 265, 98, 99, 273, 0, 449, 18, + 3, 132, 133, 224, 464, 321, 272, 470, 274, 53, + 231, 4, 656, 98, 473, 4, 237, 253, 30, 21, + 296, 21, 66, 67, 98, 99, 70, 4, 32, 4, + 74, 21, 29, 63, 4, 53, 322, 500, 44, 53, + 144, 132, 133, 87, 49, 234, 111, 4, 66, 67, + 23, 24, 70, 21, 98, 21, 74, 44, 111, 335, + 21, 512, 148, 44, 49, 44, 49, 21, 0, 87, + 144, 86, 123, 91, 121, 526, 234, 86, 49, 144, + 98, 76, 49, 88, 121, 76, 101, 123, 91, 125, + 94, 144, 101, 753, 97, 98, 99, 121, 149, 121, + 372, 232, 149, 88, 23, 88, 136, 50, 123, 113, + 125, 125, 149, 110, 123, 121, 125, 88, 124, 779, + 44, 88, 15, 227, 44, 149, 44, 149, 91, 92, + 49, 417, 321, 322, 778, 98, 148, 149, 359, 360, + 121, 144, 121, 149, 365, 366, 250, 149, 148, 253, + 145, 148, 132, 227, 145, 148, 149, 123, 148, 203, + 149, 138, 149, 321, 322, 437, 270, 439, 149, 88, + 149, 148, 149, 148, 149, 148, 250, 634, 148, 149, + 148, 144, 148, 314, 28, 270, 271, 148, 149, 461, + 153, 148, 149, 465, 148, 149, 270, 121, 88, 88, + 124, 121, 125, 121, 866, 224, 122, 226, 532, 228, + 534, 873, 231, 129, 233, 178, 34, 140, 237, 238, + 683, 265, 112, 112, 227, 149, 270, 271, 417, 149, + 467, 149, 123, 234, 878, 198, 125, 124, 459, 74, + 58, 259, 124, 261, 88, 263, 265, 250, 92, 136, + 253, 69, 270, 271, 136, 9, 275, 123, 125, 417, + 263, 125, 265, 123, 18, 125, 123, 270, 231, 126, + 123, 137, 461, 137, 237, 541, 465, 137, 550, 136, + 140, 470, 124, 140, 137, 474, 123, 250, 125, 123, + 253, 125, 124, 256, 257, 105, 532, 260, 534, 317, + 137, 124, 122, 137, 136, 494, 139, 270, 497, 129, + 137, 500, 470, 136, 317, 124, 474, 280, 777, 124, + 321, 322, 149, 60, 437, 136, 439, 136, 372, 140, + 293, 136, 784, 144, 786, 105, 494, 800, 120, 497, + 359, 360, 500, 125, 120, 4, 365, 366, 311, 125, + 136, 482, 120, 810, 140, 671, 120, 125, 144, 810, + 105, 125, 380, 23, 24, 16, 17, 27, 828, 372, + 829, 643, 390, 139, 650, 55, 394, 380, 125, 59, + 140, 70, 129, 126, 144, 661, 349, 390, 23, 24, + 248, 394, 120, 437, 252, 439, 359, 360, 148, 149, + 43, 44, 365, 366, 23, 24, 132, 511, 426, 513, + 35, 263, 141, 870, 253, 71, 417, 461, 437, 870, + 439, 465, 881, 426, 263, 124, 125, 141, 532, 136, + 534, 689, 690, 123, 437, 751, 439, 511, 55, 513, + 459, 91, 92, 124, 141, 464, 449, 123, 467, 102, + 102, 123, 90, 123, 473, 86, 123, 68, 461, 15, + 478, 102, 465, 137, 137, 317, 120, 129, 123, 470, + 149, 137, 137, 474, 790, 478, 753, 123, 317, 140, + 125, 120, 671, 614, 615, 86, 449, 123, 86, 137, + 137, 140, 86, 494, 683, 137, 497, 541, 461, 500, + 86, 545, 779, 724, 21, 468, 550, 123, 511, 123, + 513, 140, 530, 671, 123, 781, 148, 535, 536, 537, + 538, 539, 124, 614, 615, 683, 136, 530, 380, 532, + 136, 534, 535, 536, 537, 538, 539, 124, 390, 131, + 125, 380, 394, 86, 124, 136, 57, 550, 511, 512, + 39, 390, 570, 39, 12, 394, 4, 123, 136, 57, + 664, 122, 751, 137, 129, 124, 124, 570, 125, 532, + 123, 534, 144, 136, 426, 144, 136, 125, 124, 123, + 125, 123, 137, 137, 125, 806, 137, 426, 123, 136, + 664, 124, 126, 751, 143, 126, 136, 449, 136, 643, + 121, 790, 128, 4, 124, 124, 39, 137, 137, 136, + 449, 800, 743, 149, 137, 121, 126, 126, 136, 119, + 136, 126, 124, 642, 136, 126, 478, 126, 631, 126, + 124, 634, 790, 147, 124, 103, 140, 656, 3, 478, + 643, 136, 800, 136, 124, 137, 664, 124, 136, 136, + 669, 123, 137, 137, 136, 136, 675, 136, 124, 693, + 136, 664, 140, 136, 760, 864, 250, 631, 631, 634, + 671, 634, 664, 249, 270, 750, 720, 791, 530, 18, + 664, 792, 683, 535, 536, 537, 538, 539, 4, 5, + 6, 530, 8, 532, 10, 534, 535, 536, 537, 538, + 539, 664, 32, 19, 74, 724, 53, 725, 70, 87, + 4, 5, 6, 797, 8, 776, 10, 33, 570, 550, + 642, 739, 725, 238, 11, 19, 724, 49, 497, 23, + 24, 570, 695, 44, 474, 29, 739, 494, 683, 33, + 344, -1, -1, -1, -1, 39, 62, -1, -1, -1, + 751, -1, 46, -1, -1, -1, -1, 776, 777, 778, + -1, 779, 78, 781, -1, 784, -1, 786, 62, -1, + -1, -1, -1, 792, 793, -1, 779, -1, -1, 631, + -1, 75, 634, -1, -1, -1, -1, 806, -1, 790, + -1, -1, 631, 109, 88, 634, -1, -1, -1, 800, + -1, -1, 4, 5, 6, -1, 8, 810, 10, 828, + 829, -1, -1, 129, -1, 109, 110, 19, -1, -1, + -1, -1, 138, -1, -1, 119, -1, -1, -1, 123, + 124, 33, 148, 149, -1, -1, -1, -1, 132, -1, + -1, -1, -1, -1, 138, -1, 140, 810, -1, -1, + -1, -1, -1, -1, 148, 149, -1, -1, -1, 878, + 62, -1, 881, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 725, -1, -1, 78, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 725, 739, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 739, -1, -1, -1, -1, -1, -1, 109, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 779, -1, -1, + -1, -1, -1, -1, -1, -1, 138, -1, -1, -1, + 779, -1, -1, -1, -1, -1, 148, 149, 4, 5, + 6, -1, 8, -1, 10, -1, -1, -1, 810, -1, + -1, -1, -1, 19, -1, 21, -1, 23, 24, -1, + -1, 810, 28, 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, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, -1, -1, -1, 123, 124, -1, + -1, 127, -1, -1, -1, -1, 132, -1, -1, -1, + 136, -1, 138, -1, 140, 4, 5, 6, -1, 8, + -1, 10, 148, 149, -1, -1, -1, -1, -1, -1, + 19, -1, 21, -1, 23, 24, -1, -1, -1, 28, + 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, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, + 119, -1, -1, -1, 123, -1, -1, -1, 127, -1, + 4, 5, 6, 132, 8, -1, 10, 136, -1, 138, + -1, 140, -1, -1, -1, 19, -1, 21, -1, 148, + 149, -1, -1, -1, -1, 29, 30, 31, -1, 33, + -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, + -1, 45, 46, 47, 48, -1, -1, 51, 52, 53, + -1, -1, 56, -1, -1, -1, -1, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, + -1, 75, -1, 77, -1, 79, -1, -1, 82, 83, + 84, 85, -1, 87, -1, 89, -1, -1, -1, 93, + -1, 95, 96, 97, 98, 99, 100, 101, -1, -1, + 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, + 114, 115, 116, 117, 118, 119, -1, -1, -1, 123, + -1, 125, -1, 127, 4, 5, 6, -1, 8, -1, + 10, -1, -1, -1, 138, -1, -1, -1, -1, 19, + -1, 21, -1, -1, 148, 149, -1, -1, -1, 29, 30, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, @@ -8422,47 +8680,36 @@ namespace yy { -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, 100, 101, -1, -1, 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, 114, 115, 116, 117, 118, 119, - -1, 121, -1, -1, -1, 125, -1, 127, 4, 5, - 6, -1, 8, -1, 10, -1, -1, -1, 138, -1, - -1, -1, -1, 19, -1, 21, -1, -1, 148, 149, - -1, -1, -1, 29, 30, 31, -1, 33, -1, -1, - 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, - -1, 47, 48, -1, -1, 51, 52, -1, -1, -1, - 56, -1, -1, -1, -1, 61, 62, 63, 64, 65, - 66, 67, -1, -1, -1, -1, 72, 73, -1, 75, - -1, 77, -1, 79, -1, -1, 82, 83, 84, 85, - -1, 87, -1, 89, -1, -1, -1, 93, -1, 95, - 96, 97, 98, 99, 100, 101, -1, -1, 104, -1, - 106, 107, 108, 109, 110, -1, -1, -1, 114, 115, - 116, 117, 118, 119, -1, -1, -1, -1, -1, 125, - -1, 127, 4, 5, 6, -1, 8, -1, 10, -1, - -1, -1, 138, -1, -1, -1, -1, 19, -1, 21, - -1, -1, 148, 149, -1, -1, -1, 29, -1, 31, - -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - -1, -1, -1, -1, -1, 47, 48, -1, -1, 51, - 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, - 62, 63, 64, 65, 66, 67, -1, -1, -1, -1, - 72, 73, -1, 75, -1, 77, -1, 79, -1, -1, - 82, 83, 84, 85, -1, 87, -1, 89, -1, -1, - -1, 93, -1, 95, 96, 97, 98, 99, 100, 101, - -1, -1, 104, -1, 106, 107, 108, 109, 110, -1, - -1, -1, 114, 115, 116, 117, 118, 119, -1, -1, - -1, -1, -1, 125, -1, 127, 4, 5, 6, -1, - 8, -1, 10, -1, -1, -1, 138, -1, -1, -1, - -1, 19, -1, 21, -1, -1, 148, 149, -1, -1, - -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, - 38, 39, 40, 41, -1, -1, -1, -1, 46, 47, - 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, - -1, -1, -1, 61, 62, -1, 64, 65, 66, 67, - -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, - -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, - 88, -1, -1, -1, -1, 93, -1, 95, 96, 97, - 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, - 108, 109, 110, -1, -1, -1, 114, 115, 116, 117, - 118, 119, -1, -1, -1, 123, -1, -1, -1, 127, - -1, 4, 5, 6, 132, 8, -1, 10, -1, -1, - 138, -1, 140, -1, -1, -1, 19, -1, 21, -1, - 148, 149, -1, -1, -1, -1, 29, -1, 31, -1, + -1, 121, -1, -1, -1, 125, -1, 127, -1, -1, + -1, -1, -1, -1, -1, 4, 5, 6, 138, 8, + -1, 10, -1, -1, -1, -1, -1, -1, 148, 149, + 19, -1, 21, -1, 23, 24, -1, -1, -1, -1, + 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, + 39, 40, 41, -1, -1, -1, -1, 46, 47, 48, + -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, + -1, -1, 61, 62, -1, 64, 65, 66, 67, -1, + -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, + -1, -1, -1, 82, 83, 84, 85, -1, 87, 88, + -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, + 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, + 109, 110, -1, -1, -1, 114, 115, 116, 117, 118, + 119, -1, -1, -1, 123, -1, -1, -1, 127, -1, + 4, 5, 6, 132, 8, -1, 10, -1, -1, 138, + -1, 140, -1, -1, -1, 19, -1, 21, -1, 148, + 149, -1, -1, -1, -1, 29, 30, 31, -1, 33, + -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, + -1, -1, -1, 47, 48, -1, -1, 51, 52, -1, + -1, -1, 56, -1, -1, -1, -1, 61, 62, 63, + 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, + -1, 75, -1, 77, -1, 79, -1, -1, 82, 83, + 84, 85, -1, 87, -1, 89, -1, -1, -1, 93, + -1, 95, 96, 97, 98, 99, 100, 101, -1, -1, + 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, + 114, 115, 116, 117, 118, 119, -1, -1, -1, -1, + -1, 125, -1, 127, -1, -1, -1, -1, -1, -1, + -1, 4, 5, 6, 138, 8, -1, 10, -1, -1, + -1, -1, -1, -1, 148, 149, 19, -1, 21, -1, + 23, 24, -1, -1, -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, 39, 40, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, 62, @@ -8472,79 +8719,65 @@ namespace yy { 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, 114, 115, 116, 117, 118, 119, -1, -1, -1, - 123, -1, 4, -1, 127, -1, -1, -1, -1, 132, - -1, -1, -1, -1, -1, 138, -1, 140, -1, 21, - -1, -1, -1, -1, -1, 148, 149, 29, -1, 31, - -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - -1, -1, -1, -1, -1, 47, 48, -1, -1, 51, - 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, - -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, - -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, - 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, - -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, - -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, - -1, -1, 114, 115, 116, 117, 118, -1, -1, -1, - 4, 5, 6, -1, 8, 127, 10, -1, -1, -1, - -1, -1, -1, -1, -1, 19, 138, 21, 4, 5, - 6, -1, 8, -1, 10, 29, 148, 149, -1, 33, - 4, 5, 6, 19, 8, 39, 10, -1, -1, -1, - -1, -1, 46, 29, -1, 19, -1, 33, -1, -1, - 4, 5, 6, 39, 8, -1, 10, -1, 62, 33, - 46, -1, -1, -1, -1, 19, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 62, -1, -1, 33, - -1, -1, -1, -1, 88, -1, -1, -1, 62, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 88, -1, 78, 109, 110, -1, 62, -1, - -1, -1, -1, -1, -1, 119, -1, -1, -1, 123, - -1, -1, -1, 109, 110, -1, -1, -1, 132, -1, - -1, -1, -1, 119, 138, 109, 140, 123, -1, -1, - -1, -1, -1, -1, 148, 149, 132, -1, -1, -1, - -1, -1, 138, -1, 140, 109, -1, -1, -1, -1, - -1, -1, 148, 149, 138, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 148, 149, -1, -1, -1, -1, - -1, -1, -1, -1, 138, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 148, 149, 21, -1, 23, 24, - 25, 26, 27, -1, 29, -1, 31, -1, 33, -1, - -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, - -1, -1, 47, 48, -1, -1, 51, 52, -1, -1, - -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, - 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, - 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, - 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, - 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, - -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, - 115, 116, 117, 118, -1, 21, -1, -1, -1, -1, - -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, - 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, - -1, 47, 48, 148, 149, 51, 52, -1, -1, -1, - 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, - 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, - -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, - -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, - 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, - 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, - 116, 117, 118, -1, 120, -1, -1, 123, 21, -1, - -1, 127, -1, -1, -1, -1, 29, -1, 31, -1, - 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, - -1, -1, 148, 149, 47, 48, -1, -1, 51, 52, - -1, -1, -1, 56, -1, 58, -1, -1, 61, -1, - -1, 64, 65, 66, 67, -1, 69, -1, -1, -1, + 123, -1, -1, -1, 127, -1, 4, 5, 6, 132, + 8, -1, 10, -1, -1, 138, -1, 140, -1, -1, + -1, 19, -1, 21, -1, 148, 149, -1, -1, -1, + -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, + 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, + 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, + -1, -1, -1, 61, 62, 63, 64, 65, 66, 67, + -1, -1, -1, -1, 72, 73, -1, 75, -1, 77, + -1, 79, -1, -1, 82, 83, 84, 85, -1, 87, + -1, 89, -1, -1, -1, 93, -1, 95, 96, 97, + 98, 99, 100, 101, -1, 4, 104, -1, 106, 107, + 108, 109, 110, -1, -1, -1, 114, 115, 116, 117, + 118, 119, 21, -1, -1, -1, -1, 125, -1, 127, + 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, + 138, 40, 41, -1, -1, -1, -1, -1, 47, 48, + 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, + -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, + -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, + -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, + -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, + 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, + -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, + -1, -1, -1, 4, 5, 6, -1, 8, 127, 10, + -1, 4, 5, 6, -1, 8, -1, 10, 19, 138, + 21, -1, 23, 24, -1, -1, 19, -1, 29, 148, + 149, -1, 33, -1, -1, 4, 5, 6, 39, 8, + 33, 10, -1, -1, -1, 46, -1, -1, -1, -1, + 19, -1, -1, -1, 23, 24, -1, -1, -1, -1, + 29, 62, -1, -1, 33, -1, -1, -1, -1, 62, + 39, -1, -1, -1, 75, -1, -1, 46, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 88, -1, -1, + -1, -1, -1, 62, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 75, -1, 109, 110, + -1, -1, -1, -1, -1, -1, 109, -1, 119, 88, + -1, -1, 123, -1, -1, -1, -1, -1, -1, -1, + -1, 132, -1, -1, -1, -1, -1, 138, -1, 140, + 109, 110, -1, -1, -1, 138, -1, 148, 149, -1, + 119, -1, -1, -1, 123, 148, 149, -1, 21, -1, + -1, -1, -1, 132, -1, -1, 29, -1, 31, 138, + 33, 140, -1, 36, 37, 38, -1, 40, 41, 148, + 149, -1, -1, -1, 47, 48, -1, -1, 51, 52, + -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, + -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, -1, -1, - -1, 21, -1, -1, 127, -1, -1, -1, -1, 29, + -1, 114, 115, 116, 117, 118, -1, 120, -1, -1, + 123, 21, -1, -1, 127, -1, -1, -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, 148, 149, 47, 48, 49, - -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, - -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, + 40, 41, -1, -1, -1, 148, 149, 47, 48, -1, + -1, 51, 52, -1, -1, -1, 56, -1, 58, -1, + -1, 61, -1, -1, 64, 65, 66, 67, -1, 69, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, - -1, -1, 82, 83, 84, 85, -1, 87, 88, -1, + -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, - 21, -1, -1, -1, -1, -1, -1, 127, 29, -1, + 21, -1, 23, 24, -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, @@ -8554,9 +8787,9 @@ namespace yy { -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, - -1, -1, 123, -1, -1, -1, 127, 29, -1, 31, + -1, -1, -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - 42, -1, -1, -1, -1, 47, 48, 148, 149, 51, + -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, @@ -8564,8 +8797,8 @@ namespace yy { -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, - -1, -1, -1, -1, -1, 127, 29, -1, 31, -1, - 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, + -1, 123, -1, -1, -1, 127, 29, -1, 31, -1, + 33, -1, -1, 36, 37, 38, -1, 40, 41, 42, -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, @@ -8573,20 +8806,20 @@ namespace yy { 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 120, -1, -1, - -1, 21, -1, -1, 127, -1, -1, -1, -1, 29, - -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, 148, 149, 47, 48, -1, - -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, - -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, - -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, - -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, - -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, - -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, - 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, - 21, -1, -1, -1, -1, -1, -1, 127, 29, 129, + -1, 114, 115, 116, 117, 118, -1, 21, -1, -1, + -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, + -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, + -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, + -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, + 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, + -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, + 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, + -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, + 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, + 114, 115, 116, 117, 118, -1, 120, -1, -1, -1, + 21, -1, -1, 127, -1, -1, -1, -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, - 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, + 41, -1, -1, -1, 148, 149, 47, 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, @@ -8594,7 +8827,7 @@ namespace yy { -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, - 121, -1, -1, -1, -1, -1, 127, 29, -1, 31, + -1, -1, -1, -1, -1, -1, 127, 29, 129, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, @@ -8603,7 +8836,7 @@ namespace yy { 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, - -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, + -1, -1, 114, 115, 116, 117, 118, -1, 21, 121, -1, -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, @@ -8613,11 +8846,42 @@ namespace yy { 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, - -1, 114, 115, 116, 117, 118, -1, -1, -1, -1, - -1, -1, -1, -1, 127, -1, -1, -1, -1, -1, + -1, 114, 115, 116, 117, 118, -1, 21, -1, -1, + -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, + -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, + -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, + -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, + 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, + -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, + 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, + -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, + 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, + 114, 115, 116, 117, 118, -1, 21, -1, -1, -1, + -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, + -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, + -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, + -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, + 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, + 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, + 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, + 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, + -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, + 115, 116, 117, 118, -1, -1, -1, -1, -1, -1, + -1, -1, 127, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 23, 24, -1, 148, 149, 28, 29, 30, -1, 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, 62, + 63, -1, -1, -1, -1, 68, 69, 70, 71, 72, + 73, 74, 75, 76, -1, 78, 79, 80, 81, -1, + 83, -1, 85, 86, 87, 88, 89, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, 100, 101, 102, + 103, -1, 105, -1, 107, 108, 109, 110, 111, 112, + 113, -1, -1, -1, -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 148, 149, 23, 24, 25, - 26, 27, 28, 29, 30, -1, 32, 33, 34, 35, + -1, -1, -1, 136, -1, -1, -1, -1, -1, -1, + -1, -1, 28, 29, 30, 148, 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, 62, 63, -1, -1, @@ -8626,8 +8890,8 @@ namespace yy { 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, 105, -1, 107, 108, 109, 110, 111, 112, 113, -1, -1, - -1, -1, -1, 119, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 119, -1, -1, -1, -1, 124, -1, + -1, 127, -1, -1, -1, -1, -1, -1, -1, -1, 136, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 148, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, @@ -8638,7 +8902,7 @@ namespace yy { 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, 105, -1, 107, 108, 109, 110, 111, 112, 113, -1, -1, -1, -1, -1, - 119, -1, -1, -1, -1, 124, -1, -1, 127, -1, + 119, -1, -1, -1, -1, -1, -1, -1, 127, 128, -1, -1, -1, -1, -1, -1, -1, 136, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 148, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, @@ -8650,113 +8914,121 @@ namespace yy { 92, -1, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, 105, -1, 107, 108, 109, 110, 111, 112, 113, -1, -1, -1, -1, -1, 119, -1, -1, - -1, -1, -1, -1, -1, 127, 128, -1, -1, -1, - -1, -1, -1, -1, 136, -1, -1, -1, -1, -1, - -1, -1, -1, 28, 29, 30, 148, 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, 62, 63, -1, - -1, -1, -1, 68, 69, 70, 71, 72, 73, 74, - 75, 76, -1, 78, 79, 80, 81, -1, 83, -1, - 85, 86, 87, 88, 89, 90, 91, 92, -1, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, - 105, -1, 107, 108, 109, 110, 111, 112, 113, -1, - -1, -1, -1, -1, 119, -1, -1, -1, -1, -1, - -1, -1, 127, -1, -1, -1, -1, -1, -1, -1, - -1, 136, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 148 + -1, -1, 28, -1, 30, 127, 32, -1, 34, 35, + -1, -1, -1, -1, 136, -1, 42, 43, 44, 45, + -1, -1, -1, 49, 50, -1, 148, 53, 54, 55, + -1, 57, 58, 59, 60, -1, -1, 63, -1, -1, + -1, -1, 68, 69, 70, 71, 72, -1, 74, -1, + 76, -1, 78, 79, 80, 81, -1, -1, -1, -1, + 86, -1, -1, 89, 90, 91, 92, -1, 94, -1, + -1, -1, -1, -1, 100, 101, 102, 103, -1, 105, + -1, -1, -1, -1, -1, 111, 112, 113, -1, -1, + 28, -1, 30, -1, 32, -1, 34, 35, 124, -1, + -1, -1, -1, -1, 42, 43, 44, 45, -1, -1, + 136, 49, 50, -1, -1, 53, 54, 55, 144, 57, + 58, 59, 60, -1, -1, 63, -1, -1, -1, -1, + 68, 69, 70, 71, 72, -1, 74, -1, 76, -1, + 78, 79, 80, 81, -1, -1, -1, -1, 86, -1, + -1, 89, 90, 91, 92, -1, 94, -1, -1, -1, + -1, -1, 100, 101, 102, 103, -1, 105, -1, -1, + -1, -1, -1, 111, 112, 113, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 124, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 136, -1, + -1, -1, -1, -1, -1, -1, 144 }; const unsigned short int asn1_parser::yystos_[] = { - 0, 148, 153, 154, 227, 375, 0, 153, 50, 123, - 228, 229, 230, 15, 235, 4, 149, 231, 232, 233, - 234, 310, 373, 132, 315, 74, 34, 58, 69, 236, - 124, 231, 125, 139, 316, 105, 105, 105, 60, 237, - 233, 16, 17, 318, 139, 317, 70, 120, 126, 318, - 132, 35, 317, 59, 238, 239, 30, 148, 149, 240, - 247, 248, 249, 372, 374, 226, 71, 241, 141, 141, - 136, 123, 55, 242, 243, 244, 247, 21, 159, 197, - 201, 202, 203, 204, 205, 206, 250, 251, 260, 261, - 262, 372, 374, 248, 124, 141, 244, 63, 123, 207, - 250, 21, 29, 31, 33, 36, 37, 38, 40, 41, + 0, 148, 153, 154, 228, 376, 0, 153, 50, 123, + 229, 230, 231, 15, 236, 4, 149, 232, 233, 234, + 235, 311, 374, 132, 316, 74, 34, 58, 69, 237, + 124, 232, 125, 139, 317, 105, 105, 105, 60, 238, + 234, 16, 17, 319, 139, 318, 70, 120, 126, 319, + 132, 35, 318, 59, 239, 240, 30, 148, 149, 241, + 248, 249, 250, 373, 375, 227, 71, 242, 141, 141, + 136, 123, 55, 243, 244, 245, 248, 21, 159, 198, + 202, 203, 204, 205, 206, 207, 251, 252, 261, 262, + 263, 373, 375, 249, 124, 141, 245, 63, 123, 208, + 251, 21, 29, 31, 33, 36, 37, 38, 40, 41, 47, 48, 51, 52, 56, 61, 64, 65, 66, 67, 73, 75, 77, 82, 83, 84, 85, 87, 93, 95, 96, 97, 98, 99, 104, 106, 107, 108, 110, 114, - 115, 116, 117, 118, 120, 127, 148, 158, 185, 186, - 195, 196, 200, 207, 212, 213, 214, 215, 252, 254, - 258, 263, 264, 272, 274, 278, 282, 283, 286, 287, - 288, 292, 293, 294, 295, 299, 300, 301, 302, 306, - 313, 314, 319, 320, 321, 322, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 372, 373, 375, 207, 263, - 372, 375, 245, 375, 148, 149, 156, 157, 158, 208, - 209, 210, 211, 249, 263, 372, 375, 376, 148, 156, - 158, 375, 102, 102, 123, 90, 123, 86, 123, 68, - 102, 86, 101, 123, 125, 333, 357, 86, 123, 333, - 357, 42, 156, 160, 161, 263, 15, 303, 137, 120, - 120, 263, 137, 123, 120, 333, 58, 69, 263, 137, - 129, 137, 263, 120, 137, 123, 246, 307, 374, 124, - 136, 140, 137, 120, 137, 123, 265, 296, 297, 298, - 373, 121, 276, 279, 280, 281, 373, 156, 275, 276, - 373, 263, 265, 373, 333, 44, 121, 124, 265, 289, - 290, 291, 4, 5, 6, 8, 10, 19, 30, 33, + 115, 116, 117, 118, 120, 127, 148, 158, 186, 187, + 196, 197, 201, 208, 213, 214, 215, 216, 253, 255, + 259, 264, 265, 273, 275, 279, 283, 284, 287, 288, + 289, 293, 294, 295, 296, 300, 301, 302, 303, 307, + 314, 315, 320, 321, 322, 323, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 373, 374, 376, 208, 264, + 373, 376, 246, 376, 148, 149, 156, 157, 158, 209, + 210, 211, 212, 250, 264, 373, 376, 377, 148, 156, + 158, 376, 102, 102, 123, 90, 123, 86, 123, 68, + 102, 86, 101, 123, 125, 334, 358, 86, 123, 334, + 358, 42, 156, 160, 161, 264, 15, 304, 137, 120, + 120, 264, 137, 123, 120, 334, 58, 69, 264, 137, + 129, 137, 264, 120, 137, 123, 247, 308, 375, 124, + 136, 140, 137, 120, 137, 123, 266, 297, 298, 299, + 374, 121, 277, 280, 281, 282, 374, 156, 276, 277, + 374, 264, 266, 374, 334, 44, 121, 124, 266, 290, + 291, 292, 4, 5, 6, 8, 10, 19, 30, 33, 45, 46, 53, 62, 63, 72, 79, 89, 100, 109, - 119, 123, 125, 138, 148, 149, 198, 217, 218, 220, - 225, 263, 273, 277, 323, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 343, 347, 348, 349, 350, 351, - 352, 353, 355, 357, 358, 359, 360, 368, 369, 86, - 86, 263, 265, 124, 289, 86, 86, 123, 140, 32, - 94, 113, 305, 23, 24, 25, 26, 27, 164, 165, - 198, 160, 263, 120, 165, 5, 6, 8, 10, 33, - 39, 46, 88, 119, 123, 140, 148, 149, 156, 200, - 216, 253, 255, 256, 257, 259, 263, 266, 267, 268, - 269, 273, 277, 315, 323, 374, 375, 123, 270, 263, - 263, 165, 372, 263, 21, 372, 120, 33, 148, 149, - 200, 266, 267, 372, 375, 4, 253, 308, 309, 310, - 311, 312, 373, 209, 249, 148, 376, 123, 185, 187, - 188, 189, 191, 284, 285, 373, 124, 136, 263, 131, - 370, 124, 136, 125, 124, 136, 86, 370, 49, 88, - 124, 136, 57, 344, 39, 263, 39, 333, 267, 12, - 43, 44, 121, 199, 337, 336, 4, 123, 370, 136, - 111, 144, 345, 76, 145, 346, 344, 263, 122, 129, - 263, 265, 263, 265, 124, 263, 265, 263, 265, 23, - 24, 27, 162, 163, 166, 169, 171, 172, 174, 176, - 4, 253, 304, 137, 267, 267, 267, 271, 125, 123, - 124, 136, 136, 140, 144, 136, 144, 137, 336, 267, - 137, 137, 253, 308, 124, 308, 125, 28, 29, 30, - 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, - 62, 63, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 78, 79, 80, 81, 83, 85, 86, 87, 88, - 89, 90, 91, 92, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 105, 107, 108, 109, 110, 111, - 112, 113, 119, 136, 148, 164, 184, 190, 192, 193, - 194, 263, 267, 375, 377, 124, 136, 125, 121, 265, - 253, 263, 277, 371, 121, 281, 253, 277, 276, 263, - 136, 33, 148, 149, 349, 121, 291, 347, 123, 53, - 267, 333, 361, 123, 362, 136, 124, 136, 126, 143, - 221, 222, 126, 121, 340, 342, 78, 129, 349, 354, - 356, 49, 88, 156, 167, 263, 164, 263, 156, 124, - 136, 128, 164, 124, 267, 4, 256, 256, 267, 267, - 267, 267, 267, 374, 124, 124, 311, 194, 136, 124, - 193, 137, 285, 4, 253, 136, 140, 370, 126, 126, - 121, 290, 370, 121, 156, 195, 211, 219, 263, 375, - 39, 121, 363, 364, 373, 337, 121, 137, 224, 373, - 124, 136, 136, 356, 263, 49, 88, 175, 49, 88, - 173, 49, 88, 170, 112, 168, 49, 88, 177, 119, - 178, 163, 126, 124, 126, 147, 126, 126, 298, 267, - 136, 136, 136, 140, 124, 137, 267, 124, 136, 124, - 136, 333, 365, 366, 136, 137, 223, 137, 222, 337, - 187, 270, 349, 170, 103, 124, 136, 280, 121, 290, - 123, 187, 267, 148, 363, 363, 28, 88, 92, 367, - 337, 223, 224, 373, 123, 155, 136, 136, 267, 124, - 29, 33, 36, 37, 38, 39, 40, 41, 46, 47, - 48, 51, 52, 56, 61, 62, 73, 75, 83, 85, - 87, 88, 95, 96, 97, 98, 99, 107, 108, 109, - 110, 119, 127, 148, 179, 180, 181, 182, 183, 184, - 121, 179, 124, 180, 164, 184, 136, 128, 290, 136 + 119, 123, 125, 138, 148, 149, 199, 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, 86, + 86, 264, 266, 124, 290, 86, 86, 123, 140, 32, + 94, 113, 306, 23, 24, 164, 165, 199, 160, 264, + 120, 165, 5, 6, 8, 10, 23, 24, 33, 39, + 46, 75, 88, 119, 123, 140, 148, 149, 156, 201, + 217, 254, 256, 257, 258, 260, 264, 267, 268, 269, + 270, 274, 278, 316, 324, 375, 376, 123, 271, 264, + 264, 165, 373, 264, 21, 373, 120, 33, 75, 148, + 149, 201, 267, 268, 373, 376, 4, 254, 309, 310, + 311, 312, 313, 374, 375, 210, 250, 148, 377, 123, + 186, 188, 189, 190, 192, 285, 286, 374, 124, 136, + 264, 131, 371, 124, 136, 125, 124, 136, 86, 371, + 49, 88, 124, 136, 57, 345, 39, 264, 39, 334, + 268, 12, 43, 44, 121, 200, 338, 337, 4, 123, + 371, 136, 111, 144, 346, 76, 145, 347, 345, 264, + 122, 129, 264, 266, 264, 266, 124, 264, 266, 264, + 266, 23, 24, 27, 162, 163, 166, 167, 170, 172, + 173, 175, 177, 4, 254, 305, 137, 268, 268, 268, + 272, 125, 123, 124, 136, 136, 140, 144, 136, 144, + 137, 137, 337, 268, 137, 137, 254, 309, 124, 309, + 125, 23, 24, 28, 29, 30, 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, 62, 63, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 78, 79, 80, + 81, 83, 85, 86, 87, 88, 89, 90, 91, 92, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + 105, 107, 108, 109, 110, 111, 112, 113, 119, 136, + 148, 164, 185, 191, 193, 194, 195, 264, 268, 376, + 378, 124, 136, 125, 121, 266, 254, 264, 278, 372, + 121, 282, 254, 278, 277, 264, 136, 33, 148, 149, + 350, 121, 292, 348, 123, 53, 268, 334, 362, 123, + 363, 136, 124, 136, 126, 143, 222, 223, 126, 121, + 341, 343, 78, 129, 350, 355, 357, 156, 264, 164, + 264, 156, 124, 136, 23, 49, 88, 168, 128, 164, + 124, 268, 4, 257, 257, 268, 268, 268, 268, 268, + 23, 24, 375, 124, 124, 312, 195, 136, 124, 194, + 137, 286, 4, 254, 136, 140, 371, 126, 126, 121, + 291, 371, 121, 156, 196, 212, 220, 264, 376, 39, + 121, 364, 365, 374, 338, 121, 137, 225, 374, 124, + 136, 136, 357, 49, 88, 176, 88, 112, 169, 169, + 169, 49, 88, 178, 119, 179, 163, 264, 126, 124, + 126, 147, 126, 126, 299, 268, 136, 136, 136, 140, + 124, 137, 268, 124, 136, 124, 136, 334, 366, 367, + 136, 137, 224, 137, 223, 338, 188, 49, 88, 174, + 49, 88, 171, 171, 103, 124, 136, 281, 121, 291, + 123, 188, 268, 148, 364, 364, 28, 88, 92, 368, + 338, 224, 225, 374, 271, 350, 123, 155, 136, 136, + 268, 124, 29, 33, 36, 37, 38, 39, 40, 41, + 46, 47, 48, 51, 52, 56, 61, 62, 73, 75, + 83, 85, 87, 88, 95, 96, 97, 98, 99, 107, + 108, 109, 110, 119, 127, 148, 180, 181, 182, 183, + 184, 185, 121, 180, 124, 181, 164, 185, 136, 128, + 291, 136 }; const unsigned short int @@ -8764,62 +9036,62 @@ namespace yy { { 0, 152, 153, 153, 154, 155, 156, 156, 156, 157, 158, 158, 159, 160, 160, 161, 162, 162, 163, 163, - 163, 163, 163, 163, 164, 164, 164, 164, 164, 165, - 165, 166, 167, 167, 167, 168, 168, 169, 170, 170, - 170, 171, 172, 173, 173, 173, 174, 175, 175, 175, - 176, 177, 177, 177, 178, 178, 179, 179, 180, 180, - 181, 182, 183, 183, 183, 184, 184, 185, 185, 186, - 187, 187, 188, 188, 189, 190, 191, 192, 192, 193, - 193, 194, 194, 195, 195, 196, 197, 198, 199, 199, - 199, 199, 199, 200, 200, 201, 201, 201, 201, 201, - 202, 203, 204, 205, 206, 207, 208, 208, 209, 209, - 210, 210, 211, 211, 212, 213, 214, 215, 215, 216, - 216, 217, 217, 217, 218, 219, 219, 219, 219, 219, - 219, 219, 220, 220, 221, 221, 222, 222, 223, 223, - 224, 224, 225, 225, 225, 226, 227, 228, 228, 228, - 229, 230, 231, 231, 232, 232, 232, 233, 234, 235, - 235, 236, 236, 236, 236, 237, 237, 238, 238, 239, - 239, 239, 240, 240, 241, 241, 242, 242, 243, 243, - 244, 245, 246, 246, 246, 247, 247, 248, 249, 249, - 249, 250, 250, 251, 251, 251, 251, 251, 251, 252, - 252, 252, 253, 253, 254, 255, 256, 256, 257, 257, - 257, 258, 259, 260, 261, 262, 263, 263, 263, 263, - 263, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, 265, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 267, 267, 268, 268, 269, 269, - 270, 271, 271, 272, 273, 273, 274, 274, 275, 275, - 276, 276, 277, 277, 278, 279, 279, 279, 279, 280, - 280, 281, 281, 282, 283, 283, 284, 284, 285, 285, - 286, 287, 288, 288, 289, 289, 289, 289, 289, 289, - 289, 289, 289, 290, 290, 291, 291, 291, 291, 292, - 292, 293, 293, 294, 294, 295, 296, 297, 297, 297, - 298, 298, 299, 300, 301, 301, 301, 302, 303, 303, - 304, 304, 305, 305, 305, 305, 306, 307, 307, 308, - 308, 309, 309, 309, 310, 311, 311, 312, 313, 314, - 315, 316, 317, 317, 318, 318, 319, 320, 321, 322, - 323, 324, 325, 326, 327, 328, 328, 329, 329, 329, - 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, - 330, 331, 331, 332, 332, 332, 332, 332, 332, 332, - 332, 333, 334, 334, 335, 336, 336, 336, 337, 337, - 338, 338, 339, 340, 340, 341, 342, 342, 343, 344, - 345, 345, 346, 346, 347, 347, 348, 348, 348, 348, - 348, 348, 348, 348, 348, 349, 349, 349, 349, 349, - 349, 349, 349, 349, 349, 350, 351, 352, 353, 353, - 354, 354, 355, 355, 356, 356, 357, 358, 359, 360, - 360, 361, 362, 362, 362, 362, 363, 363, 364, 365, - 366, 366, 367, 367, 367, 367, 368, 369, 370, 370, - 371, 371, 371, 372, 373, 374, 375, 376, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377 + 163, 163, 163, 163, 164, 164, 165, 165, 166, 167, + 167, 168, 168, 168, 169, 169, 169, 170, 171, 171, + 171, 172, 173, 174, 174, 174, 175, 176, 176, 176, + 177, 178, 178, 178, 179, 179, 180, 180, 181, 181, + 182, 183, 184, 184, 184, 185, 185, 186, 186, 187, + 188, 188, 189, 189, 190, 191, 192, 193, 193, 194, + 194, 195, 195, 196, 196, 197, 198, 199, 200, 200, + 200, 200, 200, 201, 201, 202, 202, 202, 202, 202, + 203, 204, 205, 206, 207, 208, 209, 209, 210, 210, + 211, 211, 212, 212, 213, 214, 215, 216, 216, 217, + 217, 218, 218, 218, 219, 220, 220, 220, 220, 220, + 220, 220, 221, 221, 222, 222, 223, 223, 224, 224, + 225, 225, 226, 226, 226, 227, 228, 229, 229, 229, + 230, 231, 232, 232, 233, 233, 233, 234, 235, 236, + 236, 237, 237, 237, 237, 238, 238, 239, 239, 240, + 240, 240, 241, 241, 242, 242, 243, 243, 244, 244, + 245, 246, 247, 247, 247, 248, 248, 249, 250, 250, + 250, 251, 251, 252, 252, 252, 252, 252, 252, 253, + 253, 253, 254, 254, 255, 256, 257, 257, 258, 258, + 258, 259, 260, 261, 262, 263, 264, 264, 264, 264, + 264, 265, 265, 265, 265, 265, 265, 265, 265, 265, + 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, + 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, + 265, 265, 266, 267, 267, 267, 267, 267, 267, 267, + 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, + 267, 267, 267, 267, 267, 267, 267, 267, 267, 268, + 268, 269, 269, 270, 270, 271, 272, 272, 273, 274, + 274, 275, 275, 276, 276, 277, 277, 278, 278, 279, + 280, 280, 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, 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 @@ -8827,9 +9099,9 @@ namespace yy { { 0, 2, 1, 2, 10, 3, 1, 1, 1, 3, 1, 1, 3, 1, 1, 5, 1, 3, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 3, 2, 1, 2, 0, 1, 0, 4, 1, 2, - 0, 3, 3, 1, 2, 0, 3, 1, 2, 0, + 1, 1, 1, 1, 1, 1, 1, 3, 2, 1, + 2, 1, 2, 0, 1, 1, 0, 4, 1, 2, + 0, 4, 4, 1, 2, 0, 3, 1, 2, 0, 3, 1, 1, 0, 3, 0, 1, 2, 1, 1, 3, 2, 1, 2, 0, 1, 1, 1, 1, 3, 1, 1, 1, 1, 5, 2, 3, 1, 2, 1, @@ -8851,30 +9123,30 @@ namespace yy { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, - 2, 1, 4, 1, 1, 1, 1, 3, 3, 1, - 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, - 3, 1, 2, 1, 1, 1, 1, 4, 1, 3, - 4, 4, 1, 2, 4, 1, 4, 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, 1, 1, 1, + 2, 1, 4, 1, 1, 1, 1, 3, 3, 3, + 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, + 1, 3, 3, 3, 3, 3, 1, 2, 1, 1, + 1, 1, 4, 1, 3, 4, 4, 1, 2, 4, + 1, 4, 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, 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, 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, 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, + 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, 1, @@ -8882,7 +9154,7 @@ 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 }; @@ -8926,10 +9198,10 @@ namespace yy { "ExternalObjectClassReference", "UsefulObjectClassReference", "ObjectClassAssignment", "ObjectClass", "ObjectClassDefn", "FieldSpecList", "FieldSpec", "FieldName", "FieldNameList", - "TypeFieldSpec", "TypeOptionalitySpec", "OptionalUnique", - "FixedTypeValueFieldSpec", "ValueOptionalitySpec", + "TypeFieldSpec", "OneOrManyTypeFieldReference", "TypeOptionalitySpec", + "OptionalUnique", "FixedTypeValueFieldSpec", "ValueOptionalitySpec", "VariableTypeValueFieldSpec", "FixedTypeValueSetFieldSpec", - "ValueSetOptionalitySpec", "ObjectFieldSpec", "ObjectOptionalitySpec", + "ValueSetDefaultSpec", "ObjectFieldSpec", "ObjectOptionalitySpec", "ObjectSetFieldSpec", "ObjectSetOptionalitySpec", "WithSyntaxSpec", "TokenOrGroupSpecList", "TokenOrGroupSpec", "OptionalGroup", "RequiredToken", "LiteralList", "Literal", "DefinedObject", @@ -8996,64 +9268,64 @@ namespace yy { const unsigned short int asn1_parser::yyrline_[] = { - 0, 309, 309, 310, 313, 328, 331, 332, 333, 336, - 339, 340, 343, 347, 348, 352, 355, 356, 359, 360, - 361, 362, 363, 364, 367, 368, 369, 370, 371, 374, - 375, 378, 381, 382, 383, 386, 387, 390, 393, 394, - 395, 399, 402, 405, 406, 407, 410, 413, 414, 415, - 418, 421, 422, 423, 429, 430, 433, 434, 437, 438, - 441, 444, 447, 448, 449, 452, 453, 456, 457, 460, - 466, 467, 472, 473, 476, 479, 482, 485, 486, 489, - 490, 493, 494, 498, 499, 502, 505, 509, 512, 513, - 514, 515, 516, 525, 526, 532, 534, 536, 538, 540, - 545, 549, 553, 557, 561, 569, 573, 575, 579, 581, - 585, 586, 589, 590, 605, 617, 626, 633, 634, 638, - 639, 642, 643, 644, 647, 650, 651, 652, 653, 654, - 655, 656, 659, 661, 665, 666, 669, 670, 673, 674, - 677, 678, 681, 682, 683, 694, 702, 709, 710, 711, - 714, 717, 721, 722, 726, 727, 728, 731, 734, 738, - 739, 742, 744, 746, 748, 752, 753, 756, 758, 762, - 763, 764, 767, 768, 771, 773, 776, 778, 781, 783, - 787, 791, 795, 796, 797, 800, 802, 806, 810, 812, - 814, 823, 825, 829, 831, 833, 835, 838, 840, 844, - 846, 848, 854, 856, 859, 863, 866, 868, 872, 874, - 877, 887, 891, 916, 920, 924, 928, 930, 932, 934, - 936, 941, 942, 943, 944, 945, 946, 947, 948, 949, - 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, - 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, - 970, 971, 974, 978, 980, 982, 984, 986, 988, 990, - 992, 994, 996, 998, 999, 1001, 1003, 1005, 1009, 1011, - 1013, 1015, 1017, 1019, 1023, 1025, 1029, 1030, 1033, 1034, - 1037, 1040, 1042, 1050, 1053, 1054, 1057, 1059, 1063, 1065, - 1069, 1071, 1075, 1077, 1081, 1085, 1088, 1091, 1095, 1098, - 1100, 1104, 1106, 1114, 1117, 1119, 1123, 1124, 1127, 1128, - 1142, 1145, 1148, 1150, 1154, 1156, 1158, 1160, 1162, 1164, - 1166, 1168, 1170, 1174, 1176, 1180, 1182, 1184, 1186, 1198, - 1200, 1204, 1206, 1210, 1212, 1216, 1220, 1224, 1226, 1228, - 1232, 1234, 1241, 1244, 1248, 1250, 1252, 1256, 1260, 1261, - 1264, 1266, 1269, 1271, 1273, 1275, 1285, 1288, 1290, 1294, - 1296, 1300, 1302, 1304, 1308, 1312, 1314, 1317, 1321, 1333, - 1336, 1342, 1345, 1346, 1349, 1350, 1353, 1359, 1366, 1372, - 1375, 1378, 1381, 1384, 1387, 1390, 1391, 1394, 1395, 1396, - 1397, 1398, 1399, 1400, 1401, 1402, 1403, 1404, 1405, 1406, - 1410, 1413, 1415, 1419, 1421, 1423, 1425, 1427, 1429, 1431, - 1433, 1437, 1440, 1441, 1444, 1447, 1448, 1449, 1452, 1453, - 1456, 1457, 1460, 1463, 1464, 1467, 1470, 1471, 1474, 1477, - 1480, 1481, 1484, 1485, 1488, 1490, 1493, 1494, 1495, 1496, - 1497, 1498, 1499, 1500, 1501, 1507, 1509, 1510, 1511, 1512, - 1513, 1514, 1515, 1516, 1517, 1520, 1523, 1526, 1529, 1530, - 1533, 1534, 1537, 1538, 1541, 1542, 1545, 1548, 1551, 1554, - 1555, 1558, 1560, 1561, 1562, 1563, 1566, 1567, 1570, 1573, - 1576, 1577, 1580, 1581, 1582, 1583, 1586, 1589, 1592, 1593, - 1596, 1597, 1598, 1601, 1605, 1609, 1613, 1617, 1621, 1622, - 1623, 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, - 1633, 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, 1642, - 1643, 1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, - 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, - 1663, 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, - 1673, 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, - 1683, 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692, - 1693, 1694, 1695, 1696, 1697 + 0, 318, 318, 319, 322, 337, 340, 341, 342, 345, + 348, 349, 352, 356, 358, 363, 367, 369, 373, 375, + 377, 378, 379, 380, 383, 385, 393, 395, 399, 403, + 405, 409, 410, 411, 414, 415, 416, 419, 423, 424, + 425, 428, 431, 434, 435, 436, 439, 442, 443, 444, + 447, 450, 451, 452, 458, 459, 462, 463, 466, 467, + 470, 473, 476, 477, 478, 481, 482, 485, 486, 489, + 495, 496, 501, 502, 505, 508, 511, 514, 515, 518, + 519, 522, 523, 527, 528, 531, 534, 538, 541, 542, + 543, 544, 545, 554, 555, 562, 564, 566, 568, 570, + 575, 579, 583, 587, 591, 599, 603, 605, 609, 611, + 615, 616, 619, 620, 635, 647, 656, 663, 664, 668, + 669, 672, 673, 674, 677, 680, 681, 682, 683, 684, + 685, 686, 689, 691, 695, 696, 699, 700, 703, 704, + 707, 708, 711, 712, 713, 724, 732, 739, 740, 741, + 744, 747, 751, 752, 756, 757, 758, 761, 764, 768, + 769, 772, 774, 776, 778, 782, 783, 786, 788, 792, + 793, 794, 797, 798, 801, 803, 806, 808, 811, 813, + 817, 821, 825, 826, 827, 830, 832, 836, 840, 842, + 844, 853, 855, 859, 861, 863, 865, 868, 870, 874, + 876, 878, 884, 886, 889, 893, 896, 898, 902, 904, + 907, 917, 921, 946, 950, 954, 958, 960, 962, 964, + 966, 971, 972, 973, 974, 975, 976, 977, 978, 979, + 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, + 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, + 1000, 1001, 1004, 1008, 1010, 1012, 1014, 1016, 1018, 1020, + 1022, 1024, 1026, 1028, 1029, 1031, 1033, 1035, 1039, 1040, + 1041, 1042, 1043, 1045, 1047, 1049, 1051, 1053, 1055, 1059, + 1061, 1065, 1066, 1069, 1070, 1073, 1076, 1078, 1086, 1089, + 1090, 1093, 1095, 1099, 1101, 1105, 1107, 1111, 1113, 1117, + 1121, 1124, 1127, 1131, 1134, 1136, 1140, 1142, 1150, 1153, + 1155, 1159, 1160, 1163, 1164, 1178, 1181, 1184, 1186, 1190, + 1192, 1194, 1196, 1198, 1200, 1202, 1204, 1206, 1210, 1212, + 1216, 1218, 1220, 1222, 1234, 1236, 1240, 1242, 1246, 1248, + 1252, 1256, 1260, 1262, 1264, 1268, 1270, 1277, 1280, 1284, + 1286, 1288, 1292, 1296, 1297, 1300, 1302, 1305, 1307, 1309, + 1311, 1321, 1324, 1326, 1330, 1332, 1336, 1338, 1340, 1344, + 1348, 1350, 1353, 1357, 1369, 1372, 1378, 1381, 1382, 1385, + 1386, 1389, 1395, 1402, 1408, 1411, 1414, 1417, 1420, 1423, + 1426, 1427, 1430, 1431, 1432, 1433, 1434, 1435, 1436, 1437, + 1438, 1439, 1440, 1441, 1442, 1446, 1449, 1451, 1455, 1457, + 1459, 1461, 1463, 1465, 1467, 1469, 1473, 1476, 1477, 1480, + 1483, 1484, 1485, 1488, 1489, 1492, 1493, 1496, 1499, 1500, + 1503, 1506, 1507, 1510, 1513, 1516, 1517, 1520, 1521, 1524, + 1526, 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1536, 1537, + 1543, 1545, 1546, 1547, 1548, 1549, 1550, 1551, 1552, 1553, + 1556, 1559, 1562, 1565, 1566, 1569, 1570, 1573, 1574, 1577, + 1578, 1581, 1584, 1587, 1590, 1591, 1594, 1596, 1597, 1598, + 1599, 1602, 1603, 1606, 1609, 1612, 1613, 1616, 1617, 1618, + 1619, 1622, 1625, 1628, 1629, 1632, 1633, 1634, 1637, 1641, + 1645, 1649, 1653, 1657, 1658, 1659, 1660, 1661, 1662, 1663, + 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, + 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, + 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692, 1693, + 1694, 1695, 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, + 1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1713, + 1714, 1715, 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1723, + 1724, 1725, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733 }; // Print the state stack on the debug stream. @@ -9088,8 +9360,8 @@ namespace yy { } // yy -#line 9090 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:1167 -#line 1699 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 +#line 9362 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:1167 +#line 1735 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 @@ -9102,7 +9374,7 @@ namespace yy { context.location.step(); // Lexer -#line 9106 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9378 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -9202,25 +9474,25 @@ namespace yy { } yy2: ++context.cursor; -#line 9223 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9495 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_END_OF_FILE(context.location); } -#line 9208 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9480 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 9250 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9522 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } -#line 9214 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9486 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 9227 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9499 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 9219 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9491 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 9226 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9498 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 9224 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9496 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -9229,9 +9501,9 @@ namespace yy { } yy11: ++context.cursor; -#line 9245 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9517 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXCLAMATION_MARK (context.location); } -#line 9235 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9507 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { @@ -9329,19 +9601,19 @@ namespace yy { } yy18: ++context.cursor; -#line 9235 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9507 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPEN_PARENTHESIS (context.location); } -#line 9335 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9607 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 9236 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9508 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLOSE_PARENTHESIS (context.location); } -#line 9340 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9612 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 9241 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9513 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COMMA (context.location); } -#line 9345 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9617 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { @@ -9349,9 +9621,9 @@ namespace yy { default: goto yy25; } yy25: -#line 9242 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9514 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_HYPHEN_MINUS (context.location); } -#line 9355 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9627 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { @@ -9359,9 +9631,9 @@ namespace yy { default: goto yy27; } yy27: -#line 9243 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9515 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_FULL_STOP (context.location); } -#line 9365 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9637 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { @@ -9386,9 +9658,9 @@ namespace yy { default: goto yy31; } yy31: -#line 9210 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9482 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9392 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9664 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy32: yyaccept = 1; yych = *(YYMARKER = ++context.cursor); @@ -9397,24 +9669,24 @@ namespace yy { default: goto yy33; } yy33: -#line 9239 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9511 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COLON (context.location); } -#line 9403 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9675 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 9240 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9512 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SEMICOLON (context.location); } -#line 9408 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9680 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 9246 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9518 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_LESS_THAN (context.location); } -#line 9413 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9685 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 9249 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9521 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_AT (context.location); } -#line 9418 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9690 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy40: yych = *++context.cursor; switch (yych) { @@ -9426,9 +9698,9 @@ namespace yy { default: goto yy49; } yy41: -#line 9217 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9489 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9432 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9704 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy42: yych = *++context.cursor; switch (yych) { @@ -9641,19 +9913,19 @@ namespace yy { } yy61: ++context.cursor; -#line 9237 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9509 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPEN_SQUARE_BRACKET (context.location); } -#line 9647 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9919 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 9238 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9510 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLOSE_SQUARE_BRACKET (context.location); } -#line 9652 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9924 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; -#line 9247 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9519 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ACCENT (context.location); } -#line 9657 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9929 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy67: yych = *++context.cursor; switch (yych) { @@ -9724,24 +9996,24 @@ namespace yy { default: goto yy69; } yy69: -#line 9218 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9490 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9730 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10002 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; -#line 9233 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9505 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPEN_BRACE (context.location); } -#line 9735 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10007 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; -#line 9244 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9516 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_VERTICAL_LINE (context.location); } -#line 9740 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10012 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; -#line 9234 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9506 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLOSE_BRACE (context.location); } -#line 9745 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10017 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -9749,9 +10021,9 @@ namespace yy { default: goto yy77; } yy77: -#line 9212 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9484 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_cstring(std::string(start, context.cursor), context.location); } -#line 9755 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10027 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; @@ -9832,9 +10104,9 @@ namespace yy { default: goto yy83; } yy83: -#line 9219 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9491 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9838 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10110 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy84: yych = *++context.cursor; switch (yych) { @@ -9905,9 +10177,9 @@ namespace yy { default: goto yy86; } yy86: -#line 9220 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9492 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 9911 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10183 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { @@ -9955,9 +10227,9 @@ namespace yy { default: goto yy90; } yy92: -#line 9204 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9476 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 9961 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10233 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { @@ -9965,9 +10237,9 @@ namespace yy { default: goto yy94; } yy94: -#line 9232 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9504 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_RANGE (context.location); } -#line 9971 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10243 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy95: yych = *++context.cursor; switch (yych) { @@ -10126,9 +10398,9 @@ namespace yy { default: goto yy110; } yy110: -#line 9118 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9390 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BY (context.location); } -#line 10132 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10404 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy111: yych = *++context.cursor; switch (yych) { @@ -10357,9 +10629,9 @@ namespace yy { default: goto yy137; } yy137: -#line 9166 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9438 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OF (context.location); } -#line 10363 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10635 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy138: yych = *++context.cursor; switch (yych) { @@ -10519,14 +10791,14 @@ namespace yy { } yy164: ++context.cursor; -#line 9214 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9486 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 10525 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10797 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy166: ++context.cursor; -#line 9216 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9488 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_hstring(std::string(start, context.cursor), context.location); } -#line 10530 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10802 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy168: yych = *++context.cursor; switch (yych) { @@ -10543,9 +10815,9 @@ namespace yy { } yy170: ++context.cursor; -#line 9231 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9503 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ELIPSIS (context.location); } -#line 10549 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10821 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy172: yych = *++context.cursor; switch (yych) { @@ -10568,14 +10840,14 @@ namespace yy { default: goto yy175; } yy175: -#line 9209 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9481 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/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 10574 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10846 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy176: ++context.cursor; -#line 9230 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9502 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DEFINED_AS (context.location); } -#line 10579 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10851 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy178: yych = *++context.cursor; switch (yych) { @@ -10653,9 +10925,9 @@ namespace yy { default: goto yy180; } yy180: -#line 9110 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9382 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ALL (context.location); } -#line 10659 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10931 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy181: yych = *++context.cursor; switch (yych) { @@ -10726,9 +10998,9 @@ namespace yy { default: goto yy182; } yy182: -#line 9111 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9383 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ANY (context.location); } -#line 10732 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11004 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy183: yych = *++context.cursor; switch (yych) { @@ -10817,9 +11089,9 @@ namespace yy { default: goto yy187; } yy187: -#line 9115 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9387 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BIT (context.location); } -#line 10823 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11095 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy188: yych = *++context.cursor; switch (yych) { @@ -10964,9 +11236,9 @@ namespace yy { default: goto yy201; } yy201: -#line 9134 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9406 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_END (context.location); } -#line 10970 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11242 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy202: yych = *++context.cursor; switch (yych) { @@ -11129,9 +11401,9 @@ namespace yy { default: goto yy218; } yy218: -#line 9157 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9429 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_MAX (context.location); } -#line 11135 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11407 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy219: yych = *++context.cursor; switch (yych) { @@ -11202,9 +11474,9 @@ namespace yy { default: goto yy220; } yy220: -#line 9158 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9430 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_MIN (context.location); } -#line 11208 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11480 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy221: yych = *++context.cursor; switch (yych) { @@ -11329,9 +11601,9 @@ namespace yy { default: goto yy231; } yy231: -#line 9170 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9442 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PDV (context.location); } -#line 11335 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11607 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy232: yych = *++context.cursor; switch (yych) { @@ -11444,9 +11716,9 @@ namespace yy { default: goto yy240; } yy240: -#line 9179 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9451 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SET (context.location); } -#line 11450 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11722 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy241: yych = *++context.cursor; switch (yych) { @@ -11547,14 +11819,14 @@ namespace yy { } yy257: ++context.cursor; -#line 9203 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9475 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11553 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11825 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy259: ++context.cursor; -#line 9206 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9478 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11558 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11830 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy261: yych = *++context.cursor; switch (yych) { @@ -11703,9 +11975,9 @@ namespace yy { default: goto yy275; } yy275: -#line 9126 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9398 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DATE (context.location); } -#line 11709 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11981 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy276: yych = *++context.cursor; switch (yych) { @@ -11843,9 +12115,9 @@ namespace yy { default: goto yy288; } yy288: -#line 9142 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9414 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_FROM (context.location); } -#line 11849 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12121 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy289: yych = *++context.cursor; switch (yych) { @@ -11990,9 +12262,9 @@ namespace yy { default: goto yy302; } yy302: -#line 9161 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9433 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ASN_NULL (context.location); } -#line 11996 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12268 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy303: yych = *++context.cursor; switch (yych) { @@ -12129,9 +12401,9 @@ namespace yy { default: goto yy315; } yy315: -#line 9175 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9447 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_REAL (context.location); } -#line 12135 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12407 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy316: yych = *++context.cursor; switch (yych) { @@ -12220,9 +12492,9 @@ namespace yy { default: goto yy320; } yy320: -#line 9181 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9453 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SIZE (context.location); } -#line 12226 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12498 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy321: yych = *++context.cursor; switch (yych) { @@ -12311,9 +12583,9 @@ namespace yy { default: goto yy325; } yy325: -#line 9185 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9457 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TAGS (context.location); } -#line 12317 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12589 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy326: yych = *++context.cursor; switch (yych) { @@ -12384,9 +12656,9 @@ namespace yy { default: goto yy327; } yy327: -#line 9187 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9459 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TIME (context.location); } -#line 12390 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12662 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy328: yych = *++context.cursor; switch (yych) { @@ -12457,9 +12729,9 @@ namespace yy { default: goto yy329; } yy329: -#line 9189 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9461 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TRUE (context.location); } -#line 12463 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12735 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy330: yych = *++context.cursor; switch (yych) { @@ -12590,9 +12862,9 @@ namespace yy { default: goto yy341; } yy341: -#line 9199 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9471 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_WITH (context.location); } -#line 12596 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12868 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy342: yych = *++context.cursor; switch (yych) { @@ -12687,9 +12959,9 @@ namespace yy { default: goto yy347; } yy347: -#line 9114 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9386 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BEGIN (context.location); } -#line 12693 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12965 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy348: yych = *++context.cursor; switch (yych) { @@ -12784,9 +13056,9 @@ namespace yy { default: goto yy353; } yy353: -#line 9121 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9393 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CLASS (context.location); } -#line 12790 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13062 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy354: yych = *++context.cursor; switch (yych) { @@ -12948,9 +13220,9 @@ namespace yy { default: goto yy370; } yy370: -#line 9141 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9413 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_FALSE (context.location); } -#line 12954 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13226 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy371: yych = *++context.cursor; switch (yych) { @@ -13118,9 +13390,9 @@ namespace yy { default: goto yy388; } yy388: -#line 9165 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9437 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OCTET (context.location); } -#line 13124 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13396 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy389: yych = *++context.cursor; switch (yych) { @@ -13293,9 +13565,9 @@ namespace yy { default: goto yy407; } yy407: -#line 9191 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9463 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UNION (context.location); } -#line 13299 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13571 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy408: yych = *++context.cursor; switch (yych) { @@ -13408,9 +13680,9 @@ namespace yy { default: goto yy416; } yy416: -#line 9108 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9380 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ABSENT (context.location); } -#line 13414 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13686 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy417: yych = *++context.cursor; switch (yych) { @@ -13517,9 +13789,9 @@ namespace yy { default: goto yy424; } yy424: -#line 9120 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9392 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CHOICE (context.location); } -#line 13523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13795 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy425: yych = *++context.cursor; switch (yych) { @@ -13656,9 +13928,9 @@ namespace yy { default: goto yy437; } yy437: -#line 9136 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9408 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXCEPT (context.location); } -#line 13662 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13934 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy438: yych = *++context.cursor; switch (yych) { @@ -13849,9 +14121,9 @@ namespace yy { default: goto yy459; } yy459: -#line 9163 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9435 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OBJECT (context.location); } -#line 13855 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14127 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy460: yych = *++context.cursor; switch (yych) { @@ -13988,9 +14260,9 @@ namespace yy { default: goto yy472; } yy472: -#line 9182 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9454 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_STRING (context.location); } -#line 13994 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14266 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy473: yych = *++context.cursor; switch (yych) { @@ -14061,9 +14333,9 @@ namespace yy { default: goto yy474; } yy474: -#line 9183 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9455 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SYNTAX (context.location); } -#line 14067 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14339 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy475: yych = *++context.cursor; switch (yych) { @@ -14158,9 +14430,9 @@ namespace yy { default: goto yy480; } yy480: -#line 9192 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9464 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UNIQUE (context.location); } -#line 14164 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14436 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy481: yych = *++context.cursor; switch (yych) { @@ -14291,9 +14563,9 @@ namespace yy { default: goto yy492; } yy492: -#line 9117 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9389 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BOOLEAN (context.location); } -#line 14297 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14569 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy493: yych = *++context.cursor; switch (yych) { @@ -14394,9 +14666,9 @@ namespace yy { default: goto yy499; } yy499: -#line 9128 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9400 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DEFAULT (context.location); } -#line 14400 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14672 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy500: yych = *++context.cursor; switch (yych) { @@ -14485,9 +14757,9 @@ namespace yy { default: goto yy504; } yy504: -#line 9132 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9404 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ENCODED (context.location); } -#line 14491 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14763 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy505: yych = *++context.cursor; switch (yych) { @@ -14576,9 +14848,9 @@ namespace yy { default: goto yy509; } yy509: -#line 9138 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9410 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXPORTS (context.location); } -#line 14582 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14854 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy510: yych = *++context.cursor; switch (yych) { @@ -14692,9 +14964,9 @@ namespace yy { default: goto yy518; } yy518: -#line 9149 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9421 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IMPLIED (context.location); } -#line 14698 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14970 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy519: yych = *++context.cursor; switch (yych) { @@ -14765,9 +15037,9 @@ namespace yy { default: goto yy520; } yy520: -#line 9150 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9422 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IMPORTS (context.location); } -#line 14771 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15043 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy521: yych = *++context.cursor; switch (yych) { @@ -14856,9 +15128,9 @@ namespace yy { default: goto yy525; } yy525: -#line 9154 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9426 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INTEGER (context.location); } -#line 14862 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15134 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy526: yych = *++context.cursor; switch (yych) { @@ -14959,9 +15231,9 @@ namespace yy { default: goto yy532; } yy532: -#line 9167 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9439 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OID_IRI (context.location); } -#line 14965 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15237 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy533: yych = *++context.cursor; switch (yych) { @@ -15044,9 +15316,9 @@ namespace yy { default: goto yy536; } yy536: -#line 9169 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9441 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PATTERN (context.location); } -#line 15050 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15322 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy537: yych = *++context.cursor; switch (yych) { @@ -15123,9 +15395,9 @@ namespace yy { default: goto yy539; } yy539: -#line 9172 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9444 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PRESENT (context.location); } -#line 15129 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15401 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy540: yych = *++context.cursor; switch (yych) { @@ -15196,9 +15468,9 @@ namespace yy { default: goto yy541; } yy541: -#line 9174 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9446 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PRIVATE (context.location); } -#line 15202 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15474 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy542: yych = *++context.cursor; switch (yych) { @@ -15323,9 +15595,9 @@ namespace yy { default: goto yy552; } yy552: -#line 9195 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9467 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UTCTime (context.location); } -#line 15329 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15601 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy553: yych = *++context.cursor; switch (yych) { @@ -15480,9 +15752,9 @@ namespace yy { default: goto yy568; } yy568: -#line 9130 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9402 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DURATION (context.location); } -#line 15486 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15758 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy569: yych = *++context.cursor; switch (yych) { @@ -15553,9 +15825,9 @@ namespace yy { default: goto yy570; } yy570: -#line 9131 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9403 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EMBEDDED (context.location); } -#line 15559 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15831 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy571: yych = *++context.cursor; switch (yych) { @@ -15638,9 +15910,9 @@ namespace yy { default: goto yy574; } yy574: -#line 9137 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9409 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXPLICIT (context.location); } -#line 15644 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15916 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy575: yych = *++context.cursor; switch (yych) { @@ -15717,9 +15989,9 @@ namespace yy { default: goto yy577; } yy577: -#line 9140 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9412 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXTERNAL (context.location); } -#line 15723 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15995 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy578: yych = *++context.cursor; switch (yych) { @@ -15820,9 +16092,9 @@ namespace yy { default: goto yy584; } yy584: -#line 9148 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9420 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IMPLICIT (context.location); } -#line 15826 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16098 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy585: yych = *++context.cursor; switch (yych) { @@ -15893,9 +16165,9 @@ namespace yy { default: goto yy586; } yy586: -#line 9151 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9423 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INCLUDES (context.location); } -#line 15899 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16171 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy587: yych = *++context.cursor; switch (yych) { @@ -15966,9 +16238,9 @@ namespace yy { default: goto yy588; } yy588: -#line 9152 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9424 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INSTANCE (context.location); } -#line 15972 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16244 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy589: yych = *++context.cursor; switch (yych) { @@ -16075,9 +16347,9 @@ namespace yy { default: goto yy596; } yy596: -#line 9168 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9440 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_OPTIONAL (context.location); } -#line 16081 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16353 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy597: yych = *++context.cursor; switch (yych) { @@ -16172,9 +16444,9 @@ namespace yy { default: goto yy602; } yy602: -#line 9178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9450 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SEQUENCE (context.location); } -#line 16178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16450 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy603: yych = *++context.cursor; switch (yych) { @@ -16245,9 +16517,9 @@ namespace yy { default: goto yy604; } yy604: -#line 9180 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9452 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_SETTINGS (context.location); } -#line 16251 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy605: yych = *++context.cursor; switch (yych) { @@ -16384,9 +16656,9 @@ namespace yy { default: goto yy617; } yy617: -#line 9113 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9385 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_AUTOMATIC (context.location); } -#line 16390 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16662 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy618: yych = *++context.cursor; switch (yych) { @@ -16457,9 +16729,9 @@ namespace yy { default: goto yy619; } yy619: -#line 9116 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9388 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_BMPString (context.location); } -#line 16463 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16735 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy620: yych = *++context.cursor; switch (yych) { @@ -16530,9 +16802,9 @@ namespace yy { default: goto yy621; } yy621: -#line 9119 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9391 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CHARACTER (context.location); } -#line 16536 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16808 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy622: yych = *++context.cursor; switch (yych) { @@ -16603,9 +16875,9 @@ namespace yy { default: goto yy623; } yy623: -#line 9122 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9394 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COMPONENT (context.location); } -#line 16609 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16881 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy624: yych = *++context.cursor; switch (yych) { @@ -16688,9 +16960,9 @@ namespace yy { default: goto yy627; } yy627: -#line 9127 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9399 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DATE_TIME (context.location); } -#line 16694 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16966 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy628: yych = *++context.cursor; switch (yych) { @@ -16803,9 +17075,9 @@ namespace yy { default: goto yy636; } yy636: -#line 9146 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9418 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IA5String (context.location); } -#line 16809 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17081 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy637: yych = *++context.cursor; switch (yych) { @@ -16942,9 +17214,9 @@ namespace yy { default: goto yy649; } yy649: -#line 9184 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9456 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_T61String (context.location); } -#line 16948 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17220 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy650: yych = *++context.cursor; switch (yych) { @@ -17033,9 +17305,9 @@ namespace yy { default: goto yy654; } yy654: -#line 9193 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9465 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UNIVERSAL (context.location); } -#line 17039 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17311 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy655: yych = *++context.cursor; switch (yych) { @@ -17142,9 +17414,9 @@ namespace yy { default: goto yy662; } yy662: -#line 9123 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9395 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_COMPONENTS (context.location); } -#line 17148 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17420 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy663: yych = *++context.cursor; switch (yych) { @@ -17221,9 +17493,9 @@ namespace yy { default: goto yy665; } yy665: -#line 9125 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9397 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CONTAINING (context.location); } -#line 17227 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17499 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy666: yych = *++context.cursor; switch (yych) { @@ -17306,9 +17578,9 @@ namespace yy { default: goto yy669; } yy669: -#line 9135 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9407 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ENUMERATED (context.location); } -#line 17312 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17584 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy670: yych = *++context.cursor; switch (yych) { @@ -17403,9 +17675,9 @@ namespace yy { default: goto yy675; } yy675: -#line 9147 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9419 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_IDENTIFIER (context.location); } -#line 17409 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17681 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy676: yych = *++context.cursor; switch (yych) { @@ -17554,9 +17826,9 @@ namespace yy { default: goto yy690; } yy690: -#line 9196 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9468 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UTF8String (context.location); } -#line 17560 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17832 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy691: yych = *++context.cursor; switch (yych) { @@ -17651,9 +17923,9 @@ namespace yy { default: goto yy696; } yy696: -#line 9112 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9384 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_APPLICATION (context.location); } -#line 17657 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17929 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy697: yych = *++context.cursor; switch (yych) { @@ -17724,9 +17996,9 @@ namespace yy { default: goto yy698; } yy698: -#line 9124 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9396 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_CONSTRAINED (context.location); } -#line 17730 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18002 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy699: yych = *++context.cursor; switch (yych) { @@ -17797,9 +18069,9 @@ namespace yy { default: goto yy700; } yy700: -#line 9129 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9401 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_DEFINITIONS (context.location); } -#line 17803 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18075 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy701: yych = *++context.cursor; switch (yych) { @@ -17960,9 +18232,9 @@ namespace yy { default: goto yy717; } yy717: -#line 9188 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9460 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TIME_OF_DAY (context.location); } -#line 17966 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18238 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy718: yych = *++context.cursor; switch (yych) { @@ -18099,9 +18371,9 @@ namespace yy { default: goto yy730; } yy730: -#line 9153 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9425 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INSTRUCTIONS (context.location); } -#line 18105 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18377 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy731: yych = *++context.cursor; switch (yych) { @@ -18172,9 +18444,9 @@ namespace yy { default: goto yy732; } yy732: -#line 9155 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9427 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_INTERSECTION (context.location); } -#line 18178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18450 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy733: yych = *++context.cursor; switch (yych) { @@ -18245,9 +18517,9 @@ namespace yy { default: goto yy734; } yy734: -#line 9156 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9428 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ISO646String (context.location); } -#line 18251 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy735: yych = *++context.cursor; switch (yych) { @@ -18324,9 +18596,9 @@ namespace yy { default: goto yy737; } yy737: -#line 9160 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9432 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_NOT_A_NUMBER (context.location); } -#line 18330 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18602 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy738: yych = *++context.cursor; switch (yych) { @@ -18421,9 +18693,9 @@ namespace yy { default: goto yy743; } yy743: -#line 9176 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9448 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_RELATIVE_OID (context.location); } -#line 18427 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18699 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy744: yych = *++context.cursor; switch (yych) { @@ -18536,9 +18808,9 @@ namespace yy { default: goto yy752; } yy752: -#line 9139 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9411 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_EXTENSIBILITY (context.location); } -#line 18542 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18814 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy753: yych = *++context.cursor; switch (yych) { @@ -18609,9 +18881,9 @@ namespace yy { default: goto yy754; } yy754: -#line 9144 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9416 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GeneralString (context.location); } -#line 18615 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18887 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy755: yych = *++context.cursor; switch (yych) { @@ -18688,9 +18960,9 @@ namespace yy { default: goto yy757; } yy757: -#line 9145 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9417 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GraphicString (context.location); } -#line 18694 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18966 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy758: yych = *++context.cursor; switch (yych) { @@ -18767,9 +19039,9 @@ namespace yy { default: goto yy760; } yy760: -#line 9162 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9434 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_NumericString (context.location); } -#line 18773 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19045 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy761: yych = *++context.cursor; switch (yych) { @@ -18846,9 +19118,9 @@ namespace yy { default: goto yy763; } yy763: -#line 9171 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9443 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PLUS_INFINITY (context.location); } -#line 18852 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19124 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy764: yych = *++context.cursor; switch (yych) { @@ -18937,9 +19209,9 @@ namespace yy { default: goto yy768; } yy768: -#line 9186 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9458 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TeletexString (context.location); } -#line 18943 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19215 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy769: yych = *++context.cursor; switch (yych) { @@ -19022,9 +19294,9 @@ namespace yy { default: goto yy772; } yy772: -#line 9198 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9470 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_VisibleString (context.location); } -#line 19028 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19300 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy773: yych = *++context.cursor; switch (yych) { @@ -19113,9 +19385,9 @@ namespace yy { default: goto yy777; } yy777: -#line 9159 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9431 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_MINUS_INFINITY (context.location); } -#line 19119 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19391 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy778: yych = *++context.cursor; switch (yych) { @@ -19216,9 +19488,9 @@ namespace yy { default: goto yy784; } yy784: -#line 9197 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9469 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_VideotexString (context.location); } -#line 19222 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19494 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy785: yych = *++context.cursor; switch (yych) { @@ -19289,9 +19561,9 @@ namespace yy { default: goto yy786; } yy786: -#line 9109 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9381 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ABSTRACT_SYNTAX (context.location); } -#line 19295 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19567 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy787: yych = *++context.cursor; switch (yych) { @@ -19368,9 +19640,9 @@ namespace yy { default: goto yy789; } yy789: -#line 9143 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9415 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_GeneralizedTime (context.location); } -#line 19374 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19646 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy790: yych = *++context.cursor; switch (yych) { @@ -19447,9 +19719,9 @@ namespace yy { default: goto yy792; } yy792: -#line 9173 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9445 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_PrintableString (context.location); } -#line 19453 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19725 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy793: yych = *++context.cursor; switch (yych) { @@ -19526,9 +19798,9 @@ namespace yy { default: goto yy795; } yy795: -#line 9190 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9462 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_TYPE_IDENTIFIER (context.location); } -#line 19532 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19804 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy796: yych = *++context.cursor; switch (yych) { @@ -19599,9 +19871,9 @@ namespace yy { default: goto yy797; } yy797: -#line 9194 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9466 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_UniversalString (context.location); } -#line 19605 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19877 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy798: yych = *++context.cursor; switch (yych) { @@ -19672,9 +19944,9 @@ namespace yy { default: goto yy799; } yy799: -#line 9133 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9405 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ENCODING_CONTROL (context.location); } -#line 19678 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19950 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy800: yych = *++context.cursor; switch (yych) { @@ -19745,9 +20017,9 @@ namespace yy { default: goto yy801; } yy801: -#line 9164 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9436 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_ObjectDescriptor (context.location); } -#line 19751 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 20023 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" yy802: yych = *++context.cursor; switch (yych) { @@ -19818,11 +20090,11 @@ namespace yy { default: goto yy803; } yy803: -#line 9177 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9449 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return asn1_parser::make_RELATIVE_OID_IRI (context.location); } -#line 19824 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 20096 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" } -#line 9251 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" } } diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index aa5bae92..e0aa733b 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -81,7 +81,7 @@ generate_and_compile(04-enum-SE FALSE) generate_and_compile(05-enum-SE FALSE) generate_and_compile(06-enum-SE FALSE) generate_and_compile(07-int-OK TRUE) -generate_and_compile(08-int-SE FALSE) +#generate_and_compile(08-int-SE FALSE) #generate_and_compile(09-int-SE FALSE) #add_test(NAME fast_ber_parse_asn_10 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/10-int-OK.asn1 parse_test_10) #add_test(NAME fast_ber_parse_asn_11 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/11-int-SE.asn1 parse_test_11) @@ -91,7 +91,7 @@ generate_and_compile(08-int-SE FALSE) #add_test(NAME fast_ber_parse_asn_15 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/15-resolver-SE.asn1 parse_test_15) add_test(NAME fast_ber_parse_asn_16 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/16-constraint-OK.asn1 parse_test_16) add_test(NAME fast_ber_parse_asn_17 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/17-tags-OK.asn1 parse_test_17) -#add_test(NAME fast_ber_parse_asn_18 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/18-class-OK.asn1 parse_test_18) +add_test(NAME fast_ber_parse_asn_18 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/18-class-OK.asn1 parse_test_18) #add_test(NAME fast_ber_parse_asn_19 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/19-param-OK.asn1 parse_test_19) generate_and_compile(20-constr-OK TRUE) generate_and_compile(21-tags-OK TRUE) @@ -169,12 +169,12 @@ add_test(NAME fast_ber_parse_asn_91 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR add_test(NAME fast_ber_parse_asn_93 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/93-asn1c-controls-OK.asn1 parse_test_93) add_test(NAME fast_ber_parse_asn_94 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/94-set-optionals-OK.asn1 parse_test_94) add_test(NAME fast_ber_parse_asn_95 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/95-choice-per-order-OK.asn1 parse_test_95) -add_test(NAME fast_ber_parse_asn_96 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/96-type-identifier-OK.asn1 parse_test_96) +#add_test(NAME fast_ber_parse_asn_96 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/96-type-identifier-OK.asn1 parse_test_96) #add_test(NAME fast_ber_parse_asn_97 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/97-type-identifier-SW.asn1 parse_test_97) #add_test(NAME fast_ber_parse_asn_98 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/98-attribute-class-OK.asn1 parse_test_98) #add_test(NAME fast_ber_parse_asn_99 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/99-class-sample-OK.asn1 parse_test_99) -add_test(NAME fast_ber_parse_asn_100 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/100-class-ref-OK.asn1 parse_test_100) -add_test(NAME fast_ber_parse_asn_101 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/101-class-ref-SE.asn1 parse_test_101) +#add_test(NAME fast_ber_parse_asn_100 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/100-class-ref-OK.asn1 parse_test_100) +#add_test(NAME fast_ber_parse_asn_101 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/101-class-ref-SE.asn1 parse_test_101) #add_test(NAME fast_ber_parse_asn_102 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/102-class-ref-SE.asn1 parse_test_102) #add_test(NAME fast_ber_parse_asn_103 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/103-reference-SE.asn1 parse_test_103) add_test(NAME fast_ber_parse_asn_104 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/104-param-1-OK.asn1 parse_test_104) From 6af892d96d19f99635d5cd8992b9202f96c7953a Mon Sep 17 00:00:00 2001 From: Sam Date: Mon, 27 May 2019 01:23:50 +0100 Subject: [PATCH 09/31] Resolve object class before generating C++ definitions --- include/fast_ber/compiler/Identifier.hpp | 38 +- include/fast_ber/compiler/IdentifierFwd.hpp | 39 + include/fast_ber/compiler/ObjectClass.hpp | 210 +++ include/fast_ber/compiler/ResolveType.hpp | 50 +- include/fast_ber/compiler/ResolveTypeFwd.hpp | 6 +- include/fast_ber/compiler/TypeAsString.hpp | 28 +- src/compiler/CompilerMain.cpp | 8 +- src/compiler/asn_compiler.yacc | 6 +- src/compiler/autogen_copy/asn_compiler.hpp | 1560 +++++++++--------- 9 files changed, 1097 insertions(+), 848 deletions(-) create mode 100644 include/fast_ber/compiler/IdentifierFwd.hpp create mode 100644 include/fast_ber/compiler/ObjectClass.hpp diff --git a/include/fast_ber/compiler/Identifier.hpp b/include/fast_ber/compiler/Identifier.hpp index 7d95c563..cf9a0183 100644 --- a/include/fast_ber/compiler/Identifier.hpp +++ b/include/fast_ber/compiler/Identifier.hpp @@ -1,42 +1,6 @@ #pragma once -#include "fast_ber/compiler/CompilerTypes.hpp" -#include "fast_ber/compiler/ResolveType.hpp" -#include "fast_ber/compiler/TypeAsString.hpp" - -TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const BitStringType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const BooleanType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const CharacterStringType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ChoiceType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const DateType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const DateTimeType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const DurationType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const EmbeddedPDVType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const EnumeratedType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ExternalType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const InstanceOfType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const IntegerType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const IRIType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const NullType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ObjectClassFieldType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ObjectDescriptorType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ObjectIdentifierType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const OctetStringType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const RealType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const RelativeIRIType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const RelativeOIDType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const SequenceType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const SequenceOfType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const SetType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const SetOfType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const PrefixedType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const TaggedType& tagged_type, const Module&, const Asn1Tree&); -TaggingInfo identifier(const TimeType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const TimeOfDayType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const DefinedType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const BuiltinType& type, const Module&, const Asn1Tree&); -TaggingInfo identifier(const Type& type, const Module&, const Asn1Tree&); +#include "fast_ber/compiler/IdentifierFwd.hpp" TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&) { diff --git a/include/fast_ber/compiler/IdentifierFwd.hpp b/include/fast_ber/compiler/IdentifierFwd.hpp new file mode 100644 index 00000000..ac35de00 --- /dev/null +++ b/include/fast_ber/compiler/IdentifierFwd.hpp @@ -0,0 +1,39 @@ +#pragma once + +#include "fast_ber/compiler/CompilerTypes.hpp" +#include "fast_ber/compiler/ResolveType.hpp" +#include "fast_ber/compiler/TypeAsString.hpp" + +TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BitStringType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BooleanType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const CharacterStringType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ChoiceType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DateType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DateTimeType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DurationType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const EmbeddedPDVType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const EnumeratedType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ExternalType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const InstanceOfType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const IntegerType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const IRIType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const NullType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ObjectClassFieldType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ObjectDescriptorType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ObjectIdentifierType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const OctetStringType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const RealType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const RelativeIRIType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const RelativeOIDType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SequenceType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SequenceOfType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SetType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SetOfType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const PrefixedType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const TaggedType& tagged_type, const Module&, const Asn1Tree&); +TaggingInfo identifier(const TimeType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const TimeOfDayType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DefinedType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BuiltinType& type, const Module&, const Asn1Tree&); +TaggingInfo identifier(const Type& type, const Module&, const Asn1Tree&); diff --git a/include/fast_ber/compiler/ObjectClass.hpp b/include/fast_ber/compiler/ObjectClass.hpp new file mode 100644 index 00000000..3d6e5cd3 --- /dev/null +++ b/include/fast_ber/compiler/ObjectClass.hpp @@ -0,0 +1,210 @@ +#pragma once + +#include "fast_ber/compiler/CompilerTypes.hpp" +#include "fast_ber/compiler/ResolveTypeFwd.hpp" + +void object_class_to_concrete(Asn1Tree& tree, Module& module, Type& type); + +void object_class_to_concrete(Asn1Tree& tree, Module& module, ChoiceType& choice) +{ + for (NamedType& named_type : choice.choices) + { + object_class_to_concrete(tree, module, named_type.type); + } +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, SequenceType& sequence) +{ + for (ComponentType& component : sequence.components) + { + object_class_to_concrete(tree, module, component.named_type.type); + } +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, SequenceOfType& sequence) +{ + Type& type = sequence.has_name ? sequence.named_type->type : *sequence.type; + object_class_to_concrete(tree, module, type); +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, SetType& set) +{ + for (ComponentType& component : set.components) + { + object_class_to_concrete(tree, module, component.named_type.type); + } +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, SetOfType& set) +{ + Type& type = set.has_name ? set.named_type->type : *set.type; + object_class_to_concrete(tree, module, type); +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, PrefixedType& prefixed_type) +{ + object_class_to_concrete(tree, module, prefixed_type.tagged_type->type); +} + +void object_class_to_concrete(Asn1Tree& tree, Module& module, BuiltinType& type) +{ + if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } +} + +Type create_concrete_type(Asn1Tree& tree, Module& module, ObjectClassFieldType& object_class_field) +{ + const Assignment& assigment = resolve(tree, module.module_reference, object_class_field.referenced_object_class); + if (!is_object_class(assigment)) + { + throw std::runtime_error("Referenced object is not an ObjectClass " + + object_class_field.referenced_object_class.type_reference); + } + + if (object_class_field.fieldnames.size() == 1) + { + for (const ClassField& field : object_class(assigment).fields) + { + if (field.name == object_class_field.fieldnames[0]) + { + if (absl::holds_alternative(field.field)) + { + return absl::get(field.field).type; + } + throw std::runtime_error("Referenced class field does not have a type: " + + object_class_field.referenced_object_class.type_reference + "." + + object_class_field.fieldnames[0]); + } + } + } + + throw std::runtime_error("Failed to parse object field reference " + + object_class_field.referenced_object_class.type_reference); +} + +void object_class_to_concrete(Asn1Tree& tree, Module& module, Type& type) +{ + if (absl::holds_alternative(type)) + { + if (absl::holds_alternative(absl::get(type))) + { + type = create_concrete_type(tree, module, absl::get(absl::get(type))); + } + else + { + object_class_to_concrete(tree, module, absl::get(type)); + } + } + else if (absl::holds_alternative(type)) + { + // Do nothing + } + else + { + throw std::runtime_error("Unhandled type!"); + } +} + +void remove_object_classes(Asn1Tree& tree, const std::set& object_class_names) +{ + for (Module& module : tree.modules) + { + module.assignments.erase( + std::remove_if( + module.assignments.begin(), module.assignments.end(), + [&](const Assignment& assignment) { + if (absl::holds_alternative(assignment.specific)) + { + return true; + } + + for (const std::string& parameter : assignment.parameters) + { + if (object_class_names.count(module.module_reference + "." + parameter) > 0) + { + return true; + } + } + + if (absl::holds_alternative(assignment.specific) && + absl::holds_alternative(absl::get(assignment.specific).type)) + { + if (is_object_class( + resolve(tree, module.module_reference, + absl::get(absl::get(assignment.specific).type)))) + return true; + } + return false; + }), + module.assignments.end()); + } + + for (Module& module : tree.modules) + { + module.imports.erase( + std::remove_if(module.imports.begin(), module.imports.end(), + [&](const Import& import) { + for (const std::string& imported_name : import.imports) + { + if (object_class_names.count(module.module_reference + "." + imported_name) > 0) + { + return true; + } + } + return false; + }), + module.imports.end()); + } +} + +// Convert usage of object classes to standard ASN.1 types +void resolve_object_classes(Asn1Tree& tree) +{ + std::set object_class_names; + + for (Module& module : tree.modules) + { + for (Assignment& assignment : module.assignments) + { + if (absl::holds_alternative(assignment.specific)) + { + object_class_to_concrete(tree, module, absl::get(assignment.specific).type); + + if (absl::holds_alternative(assignment.specific) && + absl::holds_alternative(absl::get(assignment.specific).type)) + { + Assignment& inner_assignment = + resolve(tree, module.module_reference, + absl::get(absl::get(assignment.specific).type)); + if (is_object_class(inner_assignment)) + { + object_class_names.insert(module.module_reference + "." + inner_assignment.name); + } + } + } + else if (absl::holds_alternative(assignment.specific)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + } + } + + remove_object_classes(tree, object_class_names); +} diff --git a/include/fast_ber/compiler/ResolveType.hpp b/include/fast_ber/compiler/ResolveType.hpp index 747975ce..2c32d4b8 100644 --- a/include/fast_ber/compiler/ResolveType.hpp +++ b/include/fast_ber/compiler/ResolveType.hpp @@ -1,8 +1,9 @@ #pragma once #include "fast_ber/compiler/CompilerTypes.hpp" +#include "fast_ber/compiler/ResolveTypeFwd.hpp" -Assignment& resolve(Module& module, const std::string& reference) +Assignment& resolve(Asn1Tree& tree, Module& module, const std::string& reference) { for (Assignment& assignemnt : module.assignments) { @@ -12,6 +13,17 @@ Assignment& resolve(Module& module, const std::string& reference) } } + for (const Import& import : module.imports) + { + for (const std::string& imported_reference : import.imports) + { + if (imported_reference == reference) + { + return resolve(tree, import.module_reference, reference); + } + } + } + throw std::runtime_error("Reference to undefined object: " + reference); } @@ -21,7 +33,7 @@ Assignment& resolve(Asn1Tree& tree, const std::string& module_reference, const s { if (module.module_reference == module_reference) { - return resolve(module, reference); + return resolve(tree, module, reference); } } throw std::runtime_error("Reference to undefined object: " + module_reference + "." + reference); @@ -36,13 +48,13 @@ Assignment& resolve(Asn1Tree& tree, const std::string& current_module_reference, { if (module.module_reference == module_reference) { - return resolve(module, defined.type_reference); + return resolve(tree, module, defined.type_reference); } } throw std::runtime_error("Reference to undefined object: " + module_reference + "." + defined.type_reference); } -const Assignment& resolve(const Module& module, const std::string& reference) +const Assignment& resolve(const Asn1Tree& tree, const Module& module, const std::string& reference) { for (const Assignment& assignemnt : module.assignments) { @@ -52,6 +64,17 @@ const Assignment& resolve(const Module& module, const std::string& reference) } } + for (const Import& import : module.imports) + { + for (const std::string& imported_reference : import.imports) + { + if (imported_reference == reference) + { + return resolve(tree, import.module_reference, reference); + } + } + } + throw std::runtime_error("Reference to undefined object: " + reference); } @@ -61,7 +84,7 @@ const Assignment& resolve(const Asn1Tree& tree, const std::string& module_refere { if (module.module_reference == module_reference) { - return resolve(module, reference); + return resolve(tree, module, reference); } } throw std::runtime_error("Reference to undefined object: " + module_reference + "." + reference); @@ -76,13 +99,13 @@ const Assignment& resolve(const Asn1Tree& tree, const std::string& current_modul { if (module.module_reference == module_reference) { - return resolve(module, defined.type_reference); + return resolve(tree, module, defined.type_reference); } } throw std::runtime_error("Reference to undefined object: " + module_reference + "." + defined.type_reference); } -bool exists(const Module& module, const std::string& reference) +bool exists(const Asn1Tree& tree, const Module& module, const std::string& reference) { for (const Assignment& assignemnt : module.assignments) { @@ -91,6 +114,17 @@ bool exists(const Module& module, const std::string& reference) return true; } } + + for (const Import& import : module.imports) + { + for (const std::string& imported_reference : import.imports) + { + if (imported_reference == reference) + { + return exists(tree, import.module_reference, reference); + } + } + } return false; } @@ -100,7 +134,7 @@ bool exists(const Asn1Tree& tree, const std::string& module_reference, const std { if (module.module_reference == module_reference) { - return exists(module, reference); + return exists(tree, module, reference); } } return false; diff --git a/include/fast_ber/compiler/ResolveTypeFwd.hpp b/include/fast_ber/compiler/ResolveTypeFwd.hpp index 86a68ef3..e8dec77b 100644 --- a/include/fast_ber/compiler/ResolveTypeFwd.hpp +++ b/include/fast_ber/compiler/ResolveTypeFwd.hpp @@ -4,15 +4,15 @@ #include -Assignment& resolve(Module& module, const std::string& reference); +Assignment& resolve(Asn1Tree& tree, Module& module, const std::string& reference); Assignment& resolve(Asn1Tree& tree, const std::string& module_reference, const std::string& reference); Assignment& resolve(Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined); -const Assignment& resolve(const Module& module, const std::string& reference); +const Assignment& resolve(const Asn1Tree& tree, const Module& module, const std::string& reference); const Assignment& resolve(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference); const Assignment& resolve(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined); -bool exists(const Module& module, const std::string& reference); +bool exists(const Asn1Tree& tree, const Module& module, const std::string& reference); bool exists(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference); bool exists(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined); diff --git a/include/fast_ber/compiler/TypeAsString.hpp b/include/fast_ber/compiler/TypeAsString.hpp index 06b5578a..c2da20eb 100644 --- a/include/fast_ber/compiler/TypeAsString.hpp +++ b/include/fast_ber/compiler/TypeAsString.hpp @@ -105,33 +105,9 @@ std::string type_as_string(const InstanceOfType&, const Module&, const Asn1Tree& std::string type_as_string(const IntegerType&, const Module&, const Asn1Tree&) { return "Integer"; } std::string type_as_string(const IRIType&, const Module&, const Asn1Tree&) { return "IRI"; } std::string type_as_string(const NullType&, const Module&, const Asn1Tree&) { return "Null"; } -std::string type_as_string(const ObjectClassFieldType& object_class_field, const Module& module, const Asn1Tree& tree) +std::string type_as_string(const ObjectClassFieldType&, const Module&, const Asn1Tree&) { - const Assignment& assigment = resolve(tree, module.module_reference, object_class_field.referenced_object_class); - if (!is_object_class(assigment)) - { - throw std::runtime_error("Referenced object is not an ObjectClass " + - object_class_field.referenced_object_class.type_reference); - } - - if (object_class_field.fieldnames.size() == 1) - { - for (const ClassField& field : object_class(assigment).fields) - { - if (field.name == object_class_field.fieldnames[0]) - { - if (absl::holds_alternative(field.field)) - { - return type_as_string(absl::get(field.field).type, module, tree); - } - throw std::runtime_error("Referenced class filed does not have a type " + - object_class_field.referenced_object_class.type_reference); - } - } - } - - throw std::runtime_error("Failed to parse object field reference " + - object_class_field.referenced_object_class.type_reference); + throw std::runtime_error("ObjectClassFieldType is not serializable!"); } std::string type_as_string(const ObjectDescriptorType&, const Module&, const Asn1Tree&) { return "ObjectDescriptor"; } std::string type_as_string(const ObjectIdentifierType&, const Module&, const Asn1Tree&) { return "ObjectIdentifier"; } diff --git a/src/compiler/CompilerMain.cpp b/src/compiler/CompilerMain.cpp index afa79dce..621ea41a 100644 --- a/src/compiler/CompilerMain.cpp +++ b/src/compiler/CompilerMain.cpp @@ -3,6 +3,7 @@ #include "fast_ber/compiler/CppGeneration.hpp" #include "fast_ber/compiler/Dependencies.hpp" #include "fast_ber/compiler/Identifier.hpp" +#include "fast_ber/compiler/ObjectClass.hpp" #include "fast_ber/compiler/ReorderAssignments.hpp" #include "fast_ber/compiler/ResolveType.hpp" #include "fast_ber/compiler/TypeAsString.hpp" @@ -150,12 +151,6 @@ std::string create_assignment(const Asn1Tree& tree, const Module& module, const else if (absl::holds_alternative(assignment.specific)) { std::cerr << "Warning: Parsed but ignoring class assignment: " << assignment.name << std::endl; - - const ObjectClassAssignment& class_assignment = absl::get(assignment.specific); - for (const ClassField& field : class_assignment.fields) - { - std::cerr << "Class includes field: " << field.name << std::endl; - } return ""; } else @@ -596,6 +591,7 @@ int main(int argc, char** argv) module.assignments = split_nested_structures(module.assignments); } resolve_components_of(context.asn1_tree); + resolve_object_classes(context.asn1_tree); output_file << create_output_file(context.asn1_tree, detail_filame); detail_output_file << create_detail_body(context.asn1_tree); diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 696bb892..6bab4f7f 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -200,6 +200,7 @@ %type word %type ModuleIdentifier %type GlobalModuleReference +%type UsefulObjectClassReference %type bstring %type xmlbstring %type hstring @@ -346,7 +347,9 @@ ExternalObjectClassReference: UsefulObjectClassReference: TYPE_IDENTIFIER -| ABSTRACT_SYNTAX; + { $$ = "TYPE-IDENTIFIER"; } +| ABSTRACT_SYNTAX + { $$ = "TYPE-IDENTIFIER"; } ObjectClassAssignment: typereference DEFINED_AS ObjectClass @@ -552,6 +555,7 @@ ObjectSetElements: ObjectClassFieldType: UsefulObjectClassReference "." FieldNameList + { $$ = {DefinedType{{}, }, $3}; } | typereference "." FieldNameList { $$ = {DefinedType{{}, $1}, $3}; } diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index ebcfb964..38bceb2d 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -1,5 +1,5 @@ /* Generated by re2c 1.1.1 */ -#line 1 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 1 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // A Bison parser, made by GNU Bison 3.0.4. // Skeleton implementation for Bison LALR(1) parsers in C++ @@ -35,7 +35,7 @@ // First part of user declarations. -#line 37 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:404 +#line 37 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:404 # ifndef YY_NULLPTR # if defined __cplusplus && 201103L <= __cplusplus @@ -50,7 +50,7 @@ #include "fast_ber/compiler/CompilerTypes.hpp" -#line 52 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 52 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 # include # include // std::abort @@ -125,7 +125,7 @@ namespace yy { -#line 127 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 template > class stack @@ -852,6 +852,7 @@ namespace yy { // valuefieldreference // GENERIC_IDENTIFIER_UPPERCASE // GENERIC_IDENTIFIER_LOWERCASE + // UsefulObjectClassReference // FieldName // Parameter // SimpleDefinedType @@ -2431,6 +2432,7 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 158: // UsefulObjectClassReference case 164: // FieldName case 210: // Parameter case 216: // SimpleDefinedType @@ -2754,6 +2756,7 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 158: // UsefulObjectClassReference case 164: // FieldName case 210: // Parameter case 216: // SimpleDefinedType @@ -3528,6 +3531,7 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 158: // UsefulObjectClassReference case 164: // FieldName case 210: // Parameter case 216: // SimpleDefinedType @@ -3857,6 +3861,7 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 158: // UsefulObjectClassReference case 164: // FieldName case 210: // Parameter case 216: // SimpleDefinedType @@ -4883,7 +4888,7 @@ namespace yy { } // yy -#line 4885 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 4890 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 @@ -4891,7 +4896,7 @@ namespace yy { // User implementation prologue. -#line 4893 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:412 +#line 4898 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 // Unqualified %code blocks. #line 15 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:413 @@ -4910,7 +4915,7 @@ namespace yy { namespace yy { asn1_parser::symbol_type yylex(Context& c); } -#line 4912 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:413 +#line 4917 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 #ifndef YY_ @@ -4996,7 +5001,7 @@ namespace yy { namespace yy { -#line 4998 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:479 +#line 5003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 /* Return YYSTR after stripping away unnecessary quotes and backslashes, so that it's suitable for yyerror. The heuristic is @@ -5348,6 +5353,7 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 158: // UsefulObjectClassReference case 164: // FieldName case 210: // Parameter case 216: // SimpleDefinedType @@ -5669,6 +5675,7 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 158: // UsefulObjectClassReference case 164: // FieldName case 210: // Parameter case 216: // SimpleDefinedType @@ -6203,6 +6210,7 @@ namespace yy { case 24: // valuefieldreference case 148: // GENERIC_IDENTIFIER_UPPERCASE case 149: // GENERIC_IDENTIFIER_LOWERCASE + case 158: // UsefulObjectClassReference case 164: // FieldName case 210: // Parameter case 216: // SimpleDefinedType @@ -6287,1342 +6295,1360 @@ namespace yy { switch (yyn) { case 4: -#line 332 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 333 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< Module > ().module_reference = yystack_[9].value.as< std::string > (); yystack_[2].value.as< Module > ().tagging_default = yystack_[6].value.as< TaggingMode > (); context.asn1_tree.modules.push_back(yystack_[2].value.as< Module > ()); } -#line 6293 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6301 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 10: +#line 350 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::string > () = "TYPE-IDENTIFIER"; } +#line 6307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 11: +#line 352 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::string > () = "TYPE-IDENTIFIER"; } +#line 6313 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 12: -#line 353 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 356 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[2].value.as< std::string > (), yystack_[0].value.as< ObjectClassAssignment > ()}; } -#line 6299 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6319 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 13: -#line 357 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 360 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning - Unhandled DefinedObjectClass\n"; } -#line 6305 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 14: -#line 359 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 362 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassAssignment > () = yystack_[0].value.as< ObjectClassAssignment > (); } -#line 6311 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6331 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 15: -#line 364 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 367 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassAssignment > () = {yystack_[2].value.as< std::vector > ()}; } -#line 6317 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6337 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 16: -#line 368 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 371 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6323 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6343 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 17: -#line 370 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 373 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().insert(yylhs.value.as< std::vector > ().end(), yystack_[0].value.as< std::vector > ().begin(), yystack_[0].value.as< std::vector > ().end()); } -#line 6329 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6349 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 18: -#line 374 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 377 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6335 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 19: -#line 376 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 379 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6341 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6361 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 24: -#line 384 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 387 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6347 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 25: -#line 386 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 389 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6353 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6373 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 26: -#line 394 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 397 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6359 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6379 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 27: -#line 396 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 399 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6365 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6385 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 28: -#line 400 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 403 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { for (const std::string& name : yystack_[1].value.as< std::vector > ()) yylhs.value.as< std::vector > ().push_back(ClassField{name, TypeField{}}); } -#line 6371 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 29: -#line 404 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 407 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6377 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6397 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 30: -#line 406 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 409 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6383 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6403 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 37: -#line 420 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 423 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(ClassField{yystack_[3].value.as< std::string > (), FixedTypeValueField{yystack_[2].value.as< Type > ()}}); } -#line 6389 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6409 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 86: -#line 535 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 538 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[3].value.as< std::string > (), ObjectSetAssignment{}}; } -#line 6395 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6415 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 93: +#line 558 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< ObjectClassFieldType > () = {DefinedType{{}, }, yystack_[0].value.as< std::vector > ()}; } +#line 6421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 94: -#line 556 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 560 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassFieldType > () = {DefinedType{{}, yystack_[2].value.as< std::string > ()}, yystack_[0].value.as< std::vector > ()}; } -#line 6401 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 95: -#line 563 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 567 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6407 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 96: -#line 565 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6413 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6439 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 97: -#line 567 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 571 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6419 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6445 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 98: -#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 573 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6425 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6451 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 99: -#line 571 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 575 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6431 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6457 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 100: -#line 576 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 580 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {}, yystack_[2].value.as< std::set > () }; } -#line 6437 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6463 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 101: -#line 580 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 584 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6443 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 102: -#line 584 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 588 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6449 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6475 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 103: -#line 588 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 592 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6455 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6481 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 104: -#line 592 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 596 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6461 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 105: -#line 600 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 604 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[1].value.as< std::set > (); } -#line 6467 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 106: -#line 604 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 608 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6473 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6499 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 107: -#line 606 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 610 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::set > () = yystack_[2].value.as< std::set > (); yystack_[2].value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6479 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6505 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 108: -#line 610 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 614 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6485 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6511 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 109: -#line 612 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 616 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6491 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 118: -#line 665 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 669 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6497 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6523 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 132: -#line 690 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 694 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Simple constraint\n"; } -#line 6503 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6529 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 133: -#line 692 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 696 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Relation constraint\n"; } -#line 6509 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6535 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 146: -#line 734 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 738 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6517 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 161: -#line 773 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 777 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 162: -#line 775 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 779 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::implicit; } -#line 6529 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6555 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 163: -#line 777 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 781 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::automatic; } -#line 6535 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6561 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 164: -#line 779 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 783 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6541 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 167: -#line 787 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 791 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Module > () = Module{ {}, TaggingMode(), yystack_[2].value.as< std::vector > (), yystack_[1].value.as< std::vector > (), yystack_[0].value.as< std::vector > ()}; } -#line 6547 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6573 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 168: -#line 789 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 793 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { } -#line 6553 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6579 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 174: -#line 802 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 806 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } -#line 6559 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6585 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 176: -#line 807 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 811 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6565 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 178: -#line 812 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 816 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6571 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6597 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 179: -#line 814 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 818 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6577 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6603 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 180: -#line 818 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 822 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Import > () = Import{ yystack_[0].value.as< std::string > (), yystack_[2].value.as< std::vector > () }; } -#line 6583 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6609 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 181: -#line 822 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 826 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6589 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 185: -#line 831 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 835 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6595 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6621 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 186: -#line 833 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 837 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6601 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6627 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 187: -#line 837 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 841 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6607 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6633 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 188: -#line 841 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 845 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6613 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6639 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 189: -#line 843 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 847 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[2].value.as< std::string > (); } -#line 6619 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6645 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 190: -#line 845 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 849 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6625 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6651 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 191: -#line 854 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 858 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } -#line 6631 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6657 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 192: -#line 856 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 860 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Assignment > ()); } -#line 6637 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6663 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 193: -#line 860 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 864 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6643 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6669 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 194: -#line 862 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 866 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6649 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6675 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 195: -#line 864 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 868 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6655 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6681 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 196: -#line 866 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 870 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6661 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6687 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 197: -#line 869 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 873 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6667 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6693 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 198: -#line 871 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 875 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6673 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6699 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 199: -#line 875 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 879 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6679 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6705 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 200: -#line 877 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 881 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{absl::nullopt, yystack_[0].value.as< std::string > (), {}}; } -#line 6685 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 201: -#line 879 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 883 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6691 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6717 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 202: -#line 885 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 889 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedValue > () = DefinedValue{yystack_[0].value.as< std::string > ()}; } -#line 6697 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6723 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 204: -#line 890 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 894 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{ absl::nullopt, yystack_[3].value.as< std::string > (), yystack_[1].value.as< std::vector > ()}; } -#line 6703 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6729 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 206: -#line 897 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 901 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Type > ()); } -#line 6709 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6735 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 207: -#line 899 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 903 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[2].value.as< Type > ()); } -#line 6715 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6741 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 208: -#line 903 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 907 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6721 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6747 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 209: -#line 905 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 909 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not yet dealing with value paramaters\n"; } -#line 6727 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6753 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 211: -#line 918 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 922 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{yystack_[2].value.as< std::string > (), yystack_[0].value.as< std::string > (), {}}; } -#line 6733 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6759 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 213: -#line 947 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[2].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {} }; } -#line 6739 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 214: -#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ValueAssignment{yystack_[2].value.as< Type > (), yystack_[0].value.as< Value > ()}, {} }; } -#line 6745 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6771 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 215: -#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[2].value.as< Type > ()}, {} }; } -#line 6751 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6777 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 216: -#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< BuiltinType > (); } -#line 6757 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6783 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 217: -#line 961 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6763 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 218: -#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< DefinedType > (); } -#line 6769 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6795 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 219: -#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 969 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - SelectionType\n"; } -#line 6775 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6801 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 220: -#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - TypeFromObject\n"; } -#line 6781 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6807 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 221: -#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = AnyType(); } -#line 6787 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6813 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 222: -#line 972 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 976 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } -#line 6793 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6819 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 223: -#line 973 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } -#line 6799 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6825 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 224: -#line 974 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 978 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } -#line 6805 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 225: -#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } -#line 6811 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6837 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 226: -#line 976 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 980 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } -#line 6817 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6843 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 227: -#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } -#line 6823 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6849 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 228: -#line 978 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } -#line 6829 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6855 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 229: -#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 983 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } -#line 6835 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6861 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 230: -#line 980 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } -#line 6841 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 231: -#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } -#line 6847 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 232: -#line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } -#line 6853 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6879 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 233: -#line 983 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } -#line 6859 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6885 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 234: -#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } -#line 6865 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6891 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 235: -#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } -#line 6871 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6897 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 236: -#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } -#line 6877 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6903 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 237: -#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } -#line 6883 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 238: -#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } -#line 6889 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6915 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 239: -#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 993 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } -#line 6895 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6921 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 240: -#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } -#line 6901 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6927 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 241: -#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } -#line 6907 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6933 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 242: -#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } -#line 6913 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6939 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 243: -#line 993 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } -#line 6919 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6945 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 244: -#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } -#line 6925 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6951 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 245: -#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } -#line 6931 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6957 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 246: -#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } -#line 6937 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6963 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 247: -#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } -#line 6943 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6969 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 248: -#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1002 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } -#line 6949 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6975 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 249: -#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } -#line 6955 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6981 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 250: -#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } -#line 6961 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6987 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 251: -#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1005 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = UTCTimeType(); } -#line 6967 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6993 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 252: -#line 1005 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } -#line 6973 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6999 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 253: -#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1013 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } -#line 6979 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7005 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 254: -#line 1011 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1015 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } -#line 6985 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7011 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 255: -#line 1013 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1017 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } -#line 6991 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7017 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 256: -#line 1015 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1019 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } -#line 6997 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7023 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 257: -#line 1017 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = BitStringValue{yystack_[0].value.as< std::string > ()}; } -#line 7003 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7029 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 258: -#line 1019 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = HexStringValue{yystack_[0].value.as< std::string > ()}; } -#line 7009 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7035 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 259: -#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1025 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = CharStringValue{yystack_[0].value.as< std::string > ()}; } -#line 7015 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7041 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 260: -#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1027 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } -#line 7021 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 261: -#line 1025 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1029 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< DefinedValue > (); } -#line 7027 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7053 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 262: -#line 1027 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1031 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } -#line 7033 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7059 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 264: -#line 1030 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1034 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } -#line 7039 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 265: -#line 1032 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1036 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } -#line 7045 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 266: -#line 1034 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1038 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 7051 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 267: -#line 1036 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1040 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 7057 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7083 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 272: -#line 1044 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1048 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } -#line 7063 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7089 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 273: -#line 1046 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1050 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } -#line 7069 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7095 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 274: -#line 1048 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1052 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } -#line 7075 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 275: -#line 1050 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1054 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 7081 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 276: -#line 1052 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1056 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BY\n"); } -#line 7087 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 277: -#line 1054 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1058 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } -#line 7093 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7119 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 279: -#line 1060 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1064 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } -#line 7099 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7125 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 280: -#line 1062 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1066 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } -#line 7105 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 286: -#line 1077 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1081 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 7111 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7137 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 287: -#line 1079 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1083 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 7117 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7143 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 291: -#line 1094 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1098 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{{}}; } -#line 7123 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7149 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 292: -#line 1096 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1100 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } -#line 7129 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7155 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 293: -#line 1100 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1104 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } -#line 7135 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 294: -#line 1102 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1106 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } -#line 7141 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 295: -#line 1106 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1110 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } -#line 7147 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 296: -#line 1108 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1112 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } -#line 7153 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 297: -#line 1112 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1116 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } -#line 7159 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 298: -#line 1114 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1118 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } -#line 7165 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7191 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 299: -#line 1118 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1122 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } -#line 7171 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 300: -#line 1122 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1126 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[0].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = false; } -#line 7178 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7204 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 301: -#line 1125 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1129 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[3].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; } -#line 7185 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7211 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 302: -#line 1128 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1132 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[5].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; yylhs.value.as< EnumeratedType > ().enum_values.insert(yylhs.value.as< EnumeratedType > ().enum_values.end(), yystack_[0].value.as< EnumeratedType > ().enum_values.begin(), yystack_[0].value.as< EnumeratedType > ().enum_values.end()); } -#line 7193 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 304: -#line 1135 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1139 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 7199 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7225 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 305: -#line 1137 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1141 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 7205 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7231 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 306: -#line 1141 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1145 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7211 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7237 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 307: -#line 1143 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1147 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } -#line 7218 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7244 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 309: -#line 1154 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1158 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BitStringType > () = BitStringType{}; } -#line 7224 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7250 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 310: -#line 1156 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1160 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BitStringType > () = BitStringType{}; } -#line 7230 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7256 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 317: -#line 1185 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1189 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType(); } -#line 7236 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7262 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 318: -#line 1187 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1191 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7242 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 319: -#line 1191 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7248 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7274 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 320: -#line 1193 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1197 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } -#line 7254 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7280 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 321: -#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7260 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7286 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 322: -#line 1197 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } -#line 7266 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 323: -#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1203 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7272 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7298 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 324: -#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7278 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7304 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 325: -#line 1203 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7284 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7310 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 326: -#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1209 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7290 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7316 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 327: -#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7296 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 328: -#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } -#line 7302 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 329: -#line 1213 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7308 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7334 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 330: -#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt, absl::nullopt}; } -#line 7314 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7340 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 331: -#line 1219 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt, absl::nullopt}; } -#line 7320 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7346 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 332: -#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1225 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > (), absl::nullopt}; } -#line 7326 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 333: -#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1227 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{{}, false, absl::nullopt, yystack_[0].value.as< Type > ()}; } -#line 7332 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7358 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 334: -#line 1235 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1239 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7338 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7364 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 335: -#line 1237 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1241 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7344 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7370 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 336: -#line 1241 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{}; } -#line 7350 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7376 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 337: -#line 1243 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7356 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7382 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 338: -#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7362 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7388 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 339: -#line 1249 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7368 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 340: -#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } -#line 7374 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7400 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 341: -#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1261 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7380 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7406 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 342: -#line 1261 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1265 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7386 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7412 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 343: -#line 1263 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1267 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } -#line 7392 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7418 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 344: -#line 1265 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1269 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7398 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7424 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 345: -#line 1269 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1273 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } -#line 7404 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 346: -#line 1271 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1275 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7410 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7436 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 348: -#line 1281 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } -#line 7416 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7442 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 349: -#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } -#line 7422 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7448 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 350: -#line 1287 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } -#line 7428 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7454 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 351: -#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1293 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } -#line 7434 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7460 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 352: -#line 1293 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } -#line 7440 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7466 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 355: -#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1305 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } -#line 7446 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7472 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 357: -#line 1306 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1310 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::universal; } -#line 7452 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7478 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 358: -#line 1308 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1312 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::application; } -#line 7458 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7484 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 359: -#line 1310 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1314 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::private_; } -#line 7464 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7490 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 360: -#line 1312 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1316 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::context_specific; } -#line 7470 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7496 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 362: -#line 1325 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1329 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7476 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7502 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 363: -#line 1327 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1331 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7482 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7508 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 364: -#line 1331 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1335 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } -#line 7488 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7514 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 365: -#line 1333 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1337 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } -#line 7494 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7520 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 366: -#line 1337 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1341 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7500 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7526 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 367: -#line 1339 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1343 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7506 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7532 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 368: -#line 1341 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1345 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7512 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7538 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 369: -#line 1345 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1349 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7518 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7544 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 370: -#line 1349 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1353 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } -#line 7524 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7550 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 372: -#line 1354 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1358 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } -#line 7530 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7556 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 406: -#line 1450 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1454 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } -#line 7536 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 407: -#line 1452 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1456 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 7542 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7568 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 408: -#line 1456 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1460 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7548 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7574 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 409: -#line 1458 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1462 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7554 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7580 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 410: -#line 1460 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1464 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7560 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7586 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 411: -#line 1462 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1466 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7566 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7592 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 412: -#line 1464 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1468 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7572 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7598 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 413: -#line 1466 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1470 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7578 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7604 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 414: -#line 1468 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1472 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7584 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 415: -#line 1470 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1474 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7590 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7616 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 498: -#line 1638 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1642 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7596 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7622 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 499: -#line 1642 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1646 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7602 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7628 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 500: -#line 1646 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1650 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7608 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7634 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 501: -#line 1650 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1654 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7614 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7640 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 502: -#line 1654 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1658 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7620 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7646 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; -#line 7624 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 default: break; } @@ -9268,64 +9294,64 @@ namespace yy { const unsigned short int asn1_parser::yyrline_[] = { - 0, 318, 318, 319, 322, 337, 340, 341, 342, 345, - 348, 349, 352, 356, 358, 363, 367, 369, 373, 375, - 377, 378, 379, 380, 383, 385, 393, 395, 399, 403, - 405, 409, 410, 411, 414, 415, 416, 419, 423, 424, - 425, 428, 431, 434, 435, 436, 439, 442, 443, 444, - 447, 450, 451, 452, 458, 459, 462, 463, 466, 467, - 470, 473, 476, 477, 478, 481, 482, 485, 486, 489, - 495, 496, 501, 502, 505, 508, 511, 514, 515, 518, - 519, 522, 523, 527, 528, 531, 534, 538, 541, 542, - 543, 544, 545, 554, 555, 562, 564, 566, 568, 570, - 575, 579, 583, 587, 591, 599, 603, 605, 609, 611, - 615, 616, 619, 620, 635, 647, 656, 663, 664, 668, - 669, 672, 673, 674, 677, 680, 681, 682, 683, 684, - 685, 686, 689, 691, 695, 696, 699, 700, 703, 704, - 707, 708, 711, 712, 713, 724, 732, 739, 740, 741, - 744, 747, 751, 752, 756, 757, 758, 761, 764, 768, - 769, 772, 774, 776, 778, 782, 783, 786, 788, 792, - 793, 794, 797, 798, 801, 803, 806, 808, 811, 813, - 817, 821, 825, 826, 827, 830, 832, 836, 840, 842, - 844, 853, 855, 859, 861, 863, 865, 868, 870, 874, - 876, 878, 884, 886, 889, 893, 896, 898, 902, 904, - 907, 917, 921, 946, 950, 954, 958, 960, 962, 964, - 966, 971, 972, 973, 974, 975, 976, 977, 978, 979, - 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, - 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, - 1000, 1001, 1004, 1008, 1010, 1012, 1014, 1016, 1018, 1020, - 1022, 1024, 1026, 1028, 1029, 1031, 1033, 1035, 1039, 1040, - 1041, 1042, 1043, 1045, 1047, 1049, 1051, 1053, 1055, 1059, - 1061, 1065, 1066, 1069, 1070, 1073, 1076, 1078, 1086, 1089, - 1090, 1093, 1095, 1099, 1101, 1105, 1107, 1111, 1113, 1117, - 1121, 1124, 1127, 1131, 1134, 1136, 1140, 1142, 1150, 1153, - 1155, 1159, 1160, 1163, 1164, 1178, 1181, 1184, 1186, 1190, - 1192, 1194, 1196, 1198, 1200, 1202, 1204, 1206, 1210, 1212, - 1216, 1218, 1220, 1222, 1234, 1236, 1240, 1242, 1246, 1248, - 1252, 1256, 1260, 1262, 1264, 1268, 1270, 1277, 1280, 1284, - 1286, 1288, 1292, 1296, 1297, 1300, 1302, 1305, 1307, 1309, - 1311, 1321, 1324, 1326, 1330, 1332, 1336, 1338, 1340, 1344, - 1348, 1350, 1353, 1357, 1369, 1372, 1378, 1381, 1382, 1385, - 1386, 1389, 1395, 1402, 1408, 1411, 1414, 1417, 1420, 1423, - 1426, 1427, 1430, 1431, 1432, 1433, 1434, 1435, 1436, 1437, - 1438, 1439, 1440, 1441, 1442, 1446, 1449, 1451, 1455, 1457, - 1459, 1461, 1463, 1465, 1467, 1469, 1473, 1476, 1477, 1480, - 1483, 1484, 1485, 1488, 1489, 1492, 1493, 1496, 1499, 1500, - 1503, 1506, 1507, 1510, 1513, 1516, 1517, 1520, 1521, 1524, - 1526, 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1536, 1537, - 1543, 1545, 1546, 1547, 1548, 1549, 1550, 1551, 1552, 1553, - 1556, 1559, 1562, 1565, 1566, 1569, 1570, 1573, 1574, 1577, - 1578, 1581, 1584, 1587, 1590, 1591, 1594, 1596, 1597, 1598, - 1599, 1602, 1603, 1606, 1609, 1612, 1613, 1616, 1617, 1618, - 1619, 1622, 1625, 1628, 1629, 1632, 1633, 1634, 1637, 1641, - 1645, 1649, 1653, 1657, 1658, 1659, 1660, 1661, 1662, 1663, - 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, - 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, - 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692, 1693, - 1694, 1695, 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, - 1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1713, - 1714, 1715, 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1723, - 1724, 1725, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733 + 0, 319, 319, 320, 323, 338, 341, 342, 343, 346, + 349, 351, 355, 359, 361, 366, 370, 372, 376, 378, + 380, 381, 382, 383, 386, 388, 396, 398, 402, 406, + 408, 412, 413, 414, 417, 418, 419, 422, 426, 427, + 428, 431, 434, 437, 438, 439, 442, 445, 446, 447, + 450, 453, 454, 455, 461, 462, 465, 466, 469, 470, + 473, 476, 479, 480, 481, 484, 485, 488, 489, 492, + 498, 499, 504, 505, 508, 511, 514, 517, 518, 521, + 522, 525, 526, 530, 531, 534, 537, 541, 544, 545, + 546, 547, 548, 557, 559, 566, 568, 570, 572, 574, + 579, 583, 587, 591, 595, 603, 607, 609, 613, 615, + 619, 620, 623, 624, 639, 651, 660, 667, 668, 672, + 673, 676, 677, 678, 681, 684, 685, 686, 687, 688, + 689, 690, 693, 695, 699, 700, 703, 704, 707, 708, + 711, 712, 715, 716, 717, 728, 736, 743, 744, 745, + 748, 751, 755, 756, 760, 761, 762, 765, 768, 772, + 773, 776, 778, 780, 782, 786, 787, 790, 792, 796, + 797, 798, 801, 802, 805, 807, 810, 812, 815, 817, + 821, 825, 829, 830, 831, 834, 836, 840, 844, 846, + 848, 857, 859, 863, 865, 867, 869, 872, 874, 878, + 880, 882, 888, 890, 893, 897, 900, 902, 906, 908, + 911, 921, 925, 950, 954, 958, 962, 964, 966, 968, + 970, 975, 976, 977, 978, 979, 980, 981, 982, 983, + 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, + 994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, + 1004, 1005, 1008, 1012, 1014, 1016, 1018, 1020, 1022, 1024, + 1026, 1028, 1030, 1032, 1033, 1035, 1037, 1039, 1043, 1044, + 1045, 1046, 1047, 1049, 1051, 1053, 1055, 1057, 1059, 1063, + 1065, 1069, 1070, 1073, 1074, 1077, 1080, 1082, 1090, 1093, + 1094, 1097, 1099, 1103, 1105, 1109, 1111, 1115, 1117, 1121, + 1125, 1128, 1131, 1135, 1138, 1140, 1144, 1146, 1154, 1157, + 1159, 1163, 1164, 1167, 1168, 1182, 1185, 1188, 1190, 1194, + 1196, 1198, 1200, 1202, 1204, 1206, 1208, 1210, 1214, 1216, + 1220, 1222, 1224, 1226, 1238, 1240, 1244, 1246, 1250, 1252, + 1256, 1260, 1264, 1266, 1268, 1272, 1274, 1281, 1284, 1288, + 1290, 1292, 1296, 1300, 1301, 1304, 1306, 1309, 1311, 1313, + 1315, 1325, 1328, 1330, 1334, 1336, 1340, 1342, 1344, 1348, + 1352, 1354, 1357, 1361, 1373, 1376, 1382, 1385, 1386, 1389, + 1390, 1393, 1399, 1406, 1412, 1415, 1418, 1421, 1424, 1427, + 1430, 1431, 1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, + 1442, 1443, 1444, 1445, 1446, 1450, 1453, 1455, 1459, 1461, + 1463, 1465, 1467, 1469, 1471, 1473, 1477, 1480, 1481, 1484, + 1487, 1488, 1489, 1492, 1493, 1496, 1497, 1500, 1503, 1504, + 1507, 1510, 1511, 1514, 1517, 1520, 1521, 1524, 1525, 1528, + 1530, 1533, 1534, 1535, 1536, 1537, 1538, 1539, 1540, 1541, + 1547, 1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1557, + 1560, 1563, 1566, 1569, 1570, 1573, 1574, 1577, 1578, 1581, + 1582, 1585, 1588, 1591, 1594, 1595, 1598, 1600, 1601, 1602, + 1603, 1606, 1607, 1610, 1613, 1616, 1617, 1620, 1621, 1622, + 1623, 1626, 1629, 1632, 1633, 1636, 1637, 1638, 1641, 1645, + 1649, 1653, 1657, 1661, 1662, 1663, 1664, 1665, 1666, 1667, + 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676, 1677, + 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686, 1687, + 1688, 1689, 1690, 1691, 1692, 1693, 1694, 1695, 1696, 1697, + 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1707, + 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, + 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, 1727, + 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737 }; // Print the state stack on the debug stream. @@ -9360,8 +9386,8 @@ namespace yy { } // yy -#line 9362 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" // lalr1.cc:1167 -#line 1735 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 +#line 9388 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 +#line 1739 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 @@ -9374,7 +9400,7 @@ namespace yy { context.location.step(); // Lexer -#line 9378 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9404 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -9474,25 +9500,25 @@ namespace yy { } yy2: ++context.cursor; -#line 9495 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9521 "/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 9480 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9506 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 9522 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9548 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } -#line 9486 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 9499 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9525 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 9491 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 9498 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9524 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 9496 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9522 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -9501,9 +9527,9 @@ namespace yy { } yy11: ++context.cursor; -#line 9517 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9543 "/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 9507 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { @@ -9601,19 +9627,19 @@ namespace yy { } yy18: ++context.cursor; -#line 9507 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9533 "/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 9607 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9633 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 9508 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9534 "/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 9612 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9638 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 9513 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9539 "/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 9617 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { @@ -9621,9 +9647,9 @@ namespace yy { default: goto yy25; } yy25: -#line 9514 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9540 "/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 9627 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9653 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { @@ -9631,9 +9657,9 @@ namespace yy { default: goto yy27; } yy27: -#line 9515 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9541 "/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 9637 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9663 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { @@ -9658,9 +9684,9 @@ namespace yy { default: goto yy31; } yy31: -#line 9482 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9508 "/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 9664 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9690 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy32: yyaccept = 1; yych = *(YYMARKER = ++context.cursor); @@ -9669,24 +9695,24 @@ namespace yy { default: goto yy33; } yy33: -#line 9511 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9537 "/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 9675 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9701 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 9512 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9538 "/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 9680 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9706 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 9518 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9544 "/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 9685 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 9521 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9547 "/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 9690 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9716 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy40: yych = *++context.cursor; switch (yych) { @@ -9698,9 +9724,9 @@ namespace yy { default: goto yy49; } yy41: -#line 9489 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9515 "/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 9704 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9730 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy42: yych = *++context.cursor; switch (yych) { @@ -9913,19 +9939,19 @@ namespace yy { } yy61: ++context.cursor; -#line 9509 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9535 "/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 9919 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9945 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 9510 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9536 "/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 9924 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9950 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; -#line 9519 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9545 "/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 9929 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 9955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy67: yych = *++context.cursor; switch (yych) { @@ -9996,24 +10022,24 @@ namespace yy { default: goto yy69; } yy69: -#line 9490 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9516 "/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 10002 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; -#line 9505 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9531 "/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 10007 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10033 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; -#line 9516 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9542 "/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 10012 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10038 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; -#line 9506 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9532 "/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 10017 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10043 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -10021,9 +10047,9 @@ namespace yy { default: goto yy77; } yy77: -#line 9484 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9510 "/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 10027 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10053 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; @@ -10104,9 +10130,9 @@ namespace yy { default: goto yy83; } yy83: -#line 9491 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9517 "/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 10110 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy84: yych = *++context.cursor; switch (yych) { @@ -10177,9 +10203,9 @@ namespace yy { default: goto yy86; } yy86: -#line 9492 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9518 "/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 10183 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10209 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { @@ -10227,9 +10253,9 @@ namespace yy { default: goto yy90; } yy92: -#line 9476 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9502 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 10233 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10259 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { @@ -10237,9 +10263,9 @@ namespace yy { default: goto yy94; } yy94: -#line 9504 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9530 "/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 10243 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10269 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy95: yych = *++context.cursor; switch (yych) { @@ -10398,9 +10424,9 @@ namespace yy { default: goto yy110; } yy110: -#line 9390 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9416 "/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 10404 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy111: yych = *++context.cursor; switch (yych) { @@ -10629,9 +10655,9 @@ namespace yy { default: goto yy137; } yy137: -#line 9438 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9464 "/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 10635 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10661 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy138: yych = *++context.cursor; switch (yych) { @@ -10791,14 +10817,14 @@ namespace yy { } yy164: ++context.cursor; -#line 9486 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9512 "/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 10797 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10823 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy166: ++context.cursor; -#line 9488 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9514 "/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, context.cursor), context.location); } -#line 10802 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10828 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy168: yych = *++context.cursor; switch (yych) { @@ -10815,9 +10841,9 @@ namespace yy { } yy170: ++context.cursor; -#line 9503 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9529 "/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 10821 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10847 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy172: yych = *++context.cursor; switch (yych) { @@ -10840,14 +10866,14 @@ namespace yy { default: goto yy175; } yy175: -#line 9481 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9507 "/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 10846 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10872 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy176: ++context.cursor; -#line 9502 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9528 "/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 10851 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10877 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy178: yych = *++context.cursor; switch (yych) { @@ -10925,9 +10951,9 @@ namespace yy { default: goto yy180; } yy180: -#line 9382 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9408 "/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 10931 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 10957 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy181: yych = *++context.cursor; switch (yych) { @@ -10998,9 +11024,9 @@ namespace yy { default: goto yy182; } yy182: -#line 9383 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9409 "/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 11004 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11030 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy183: yych = *++context.cursor; switch (yych) { @@ -11089,9 +11115,9 @@ namespace yy { default: goto yy187; } yy187: -#line 9387 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9413 "/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 11095 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11121 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy188: yych = *++context.cursor; switch (yych) { @@ -11236,9 +11262,9 @@ namespace yy { default: goto yy201; } yy201: -#line 9406 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9432 "/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 11242 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy202: yych = *++context.cursor; switch (yych) { @@ -11401,9 +11427,9 @@ namespace yy { default: goto yy218; } yy218: -#line 9429 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9455 "/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 11407 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy219: yych = *++context.cursor; switch (yych) { @@ -11474,9 +11500,9 @@ namespace yy { default: goto yy220; } yy220: -#line 9430 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9456 "/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 11480 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11506 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy221: yych = *++context.cursor; switch (yych) { @@ -11601,9 +11627,9 @@ namespace yy { default: goto yy231; } yy231: -#line 9442 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9468 "/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 11607 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11633 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy232: yych = *++context.cursor; switch (yych) { @@ -11716,9 +11742,9 @@ namespace yy { default: goto yy240; } yy240: -#line 9451 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9477 "/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 11722 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11748 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy241: yych = *++context.cursor; switch (yych) { @@ -11819,14 +11845,14 @@ namespace yy { } yy257: ++context.cursor; -#line 9475 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11825 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11851 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy259: ++context.cursor; -#line 9478 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11830 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 11856 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy261: yych = *++context.cursor; switch (yych) { @@ -11975,9 +12001,9 @@ namespace yy { default: goto yy275; } yy275: -#line 9398 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9424 "/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 11981 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12007 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy276: yych = *++context.cursor; switch (yych) { @@ -12115,9 +12141,9 @@ namespace yy { default: goto yy288; } yy288: -#line 9414 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9440 "/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 12121 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy289: yych = *++context.cursor; switch (yych) { @@ -12262,9 +12288,9 @@ namespace yy { default: goto yy302; } yy302: -#line 9433 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9459 "/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 12268 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12294 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy303: yych = *++context.cursor; switch (yych) { @@ -12401,9 +12427,9 @@ namespace yy { default: goto yy315; } yy315: -#line 9447 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9473 "/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 12407 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy316: yych = *++context.cursor; switch (yych) { @@ -12492,9 +12518,9 @@ namespace yy { default: goto yy320; } yy320: -#line 9453 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9479 "/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 12498 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12524 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy321: yych = *++context.cursor; switch (yych) { @@ -12583,9 +12609,9 @@ namespace yy { default: goto yy325; } yy325: -#line 9457 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9483 "/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 12589 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy326: yych = *++context.cursor; switch (yych) { @@ -12656,9 +12682,9 @@ namespace yy { default: goto yy327; } yy327: -#line 9459 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9485 "/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 12662 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12688 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy328: yych = *++context.cursor; switch (yych) { @@ -12729,9 +12755,9 @@ namespace yy { default: goto yy329; } yy329: -#line 9461 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9487 "/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 12735 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12761 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy330: yych = *++context.cursor; switch (yych) { @@ -12862,9 +12888,9 @@ namespace yy { default: goto yy341; } yy341: -#line 9471 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9497 "/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 12868 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12894 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy342: yych = *++context.cursor; switch (yych) { @@ -12959,9 +12985,9 @@ namespace yy { default: goto yy347; } yy347: -#line 9386 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9412 "/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 12965 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 12991 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy348: yych = *++context.cursor; switch (yych) { @@ -13056,9 +13082,9 @@ namespace yy { default: goto yy353; } yy353: -#line 9393 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9419 "/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 13062 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy354: yych = *++context.cursor; switch (yych) { @@ -13220,9 +13246,9 @@ namespace yy { default: goto yy370; } yy370: -#line 9413 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9439 "/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 13226 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy371: yych = *++context.cursor; switch (yych) { @@ -13390,9 +13416,9 @@ namespace yy { default: goto yy388; } yy388: -#line 9437 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9463 "/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 13396 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13422 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy389: yych = *++context.cursor; switch (yych) { @@ -13565,9 +13591,9 @@ namespace yy { default: goto yy407; } yy407: -#line 9463 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9489 "/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 13571 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13597 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy408: yych = *++context.cursor; switch (yych) { @@ -13680,9 +13706,9 @@ namespace yy { default: goto yy416; } yy416: -#line 9380 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9406 "/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 13686 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13712 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy417: yych = *++context.cursor; switch (yych) { @@ -13789,9 +13815,9 @@ namespace yy { default: goto yy424; } yy424: -#line 9392 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9418 "/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 13795 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13821 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy425: yych = *++context.cursor; switch (yych) { @@ -13928,9 +13954,9 @@ namespace yy { default: goto yy437; } yy437: -#line 9408 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9434 "/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 13934 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 13960 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy438: yych = *++context.cursor; switch (yych) { @@ -14121,9 +14147,9 @@ namespace yy { default: goto yy459; } yy459: -#line 9435 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9461 "/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 14127 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy460: yych = *++context.cursor; switch (yych) { @@ -14260,9 +14286,9 @@ namespace yy { default: goto yy472; } yy472: -#line 9454 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9480 "/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 14266 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy473: yych = *++context.cursor; switch (yych) { @@ -14333,9 +14359,9 @@ namespace yy { default: goto yy474; } yy474: -#line 9455 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9481 "/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 14339 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14365 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy475: yych = *++context.cursor; switch (yych) { @@ -14430,9 +14456,9 @@ namespace yy { default: goto yy480; } yy480: -#line 9464 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9490 "/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 14436 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy481: yych = *++context.cursor; switch (yych) { @@ -14563,9 +14589,9 @@ namespace yy { default: goto yy492; } yy492: -#line 9389 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9415 "/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 14569 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14595 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy493: yych = *++context.cursor; switch (yych) { @@ -14666,9 +14692,9 @@ namespace yy { default: goto yy499; } yy499: -#line 9400 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9426 "/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 14672 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14698 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy500: yych = *++context.cursor; switch (yych) { @@ -14757,9 +14783,9 @@ namespace yy { default: goto yy504; } yy504: -#line 9404 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9430 "/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 14763 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy505: yych = *++context.cursor; switch (yych) { @@ -14848,9 +14874,9 @@ namespace yy { default: goto yy509; } yy509: -#line 9410 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9436 "/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 14854 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14880 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy510: yych = *++context.cursor; switch (yych) { @@ -14964,9 +14990,9 @@ namespace yy { default: goto yy518; } yy518: -#line 9421 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9447 "/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 14970 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 14996 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy519: yych = *++context.cursor; switch (yych) { @@ -15037,9 +15063,9 @@ namespace yy { default: goto yy520; } yy520: -#line 9422 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9448 "/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 15043 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15069 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy521: yych = *++context.cursor; switch (yych) { @@ -15128,9 +15154,9 @@ namespace yy { default: goto yy525; } yy525: -#line 9426 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9452 "/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 15134 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy526: yych = *++context.cursor; switch (yych) { @@ -15231,9 +15257,9 @@ namespace yy { default: goto yy532; } yy532: -#line 9439 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9465 "/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 15237 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15263 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy533: yych = *++context.cursor; switch (yych) { @@ -15316,9 +15342,9 @@ namespace yy { default: goto yy536; } yy536: -#line 9441 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9467 "/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 15322 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15348 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy537: yych = *++context.cursor; switch (yych) { @@ -15395,9 +15421,9 @@ namespace yy { default: goto yy539; } yy539: -#line 9444 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9470 "/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 15401 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy540: yych = *++context.cursor; switch (yych) { @@ -15468,9 +15494,9 @@ namespace yy { default: goto yy541; } yy541: -#line 9446 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9472 "/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 15474 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15500 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy542: yych = *++context.cursor; switch (yych) { @@ -15595,9 +15621,9 @@ namespace yy { default: goto yy552; } yy552: -#line 9467 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9493 "/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 15601 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15627 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy553: yych = *++context.cursor; switch (yych) { @@ -15752,9 +15778,9 @@ namespace yy { default: goto yy568; } yy568: -#line 9402 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9428 "/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 15758 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15784 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy569: yych = *++context.cursor; switch (yych) { @@ -15825,9 +15851,9 @@ namespace yy { default: goto yy570; } yy570: -#line 9403 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9429 "/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 15831 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15857 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy571: yych = *++context.cursor; switch (yych) { @@ -15910,9 +15936,9 @@ namespace yy { default: goto yy574; } yy574: -#line 9409 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9435 "/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 15916 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 15942 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy575: yych = *++context.cursor; switch (yych) { @@ -15989,9 +16015,9 @@ namespace yy { default: goto yy577; } yy577: -#line 9412 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9438 "/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 15995 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16021 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy578: yych = *++context.cursor; switch (yych) { @@ -16092,9 +16118,9 @@ namespace yy { default: goto yy584; } yy584: -#line 9420 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9446 "/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 16098 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy585: yych = *++context.cursor; switch (yych) { @@ -16165,9 +16191,9 @@ namespace yy { default: goto yy586; } yy586: -#line 9423 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9449 "/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 16171 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy587: yych = *++context.cursor; switch (yych) { @@ -16238,9 +16264,9 @@ namespace yy { default: goto yy588; } yy588: -#line 9424 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9450 "/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 16244 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16270 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy589: yych = *++context.cursor; switch (yych) { @@ -16347,9 +16373,9 @@ namespace yy { default: goto yy596; } yy596: -#line 9440 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9466 "/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 16353 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16379 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy597: yych = *++context.cursor; switch (yych) { @@ -16444,9 +16470,9 @@ namespace yy { default: goto yy602; } yy602: -#line 9450 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9476 "/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 16450 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy603: yych = *++context.cursor; switch (yych) { @@ -16517,9 +16543,9 @@ namespace yy { default: goto yy604; } yy604: -#line 9452 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9478 "/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 16523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy605: yych = *++context.cursor; switch (yych) { @@ -16656,9 +16682,9 @@ namespace yy { default: goto yy617; } yy617: -#line 9385 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9411 "/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 16662 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16688 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy618: yych = *++context.cursor; switch (yych) { @@ -16729,9 +16755,9 @@ namespace yy { default: goto yy619; } yy619: -#line 9388 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9414 "/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 16735 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16761 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy620: yych = *++context.cursor; switch (yych) { @@ -16802,9 +16828,9 @@ namespace yy { default: goto yy621; } yy621: -#line 9391 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9417 "/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 16808 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16834 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy622: yych = *++context.cursor; switch (yych) { @@ -16875,9 +16901,9 @@ namespace yy { default: goto yy623; } yy623: -#line 9394 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9420 "/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 16881 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16907 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy624: yych = *++context.cursor; switch (yych) { @@ -16960,9 +16986,9 @@ namespace yy { default: goto yy627; } yy627: -#line 9399 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9425 "/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 16966 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 16992 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy628: yych = *++context.cursor; switch (yych) { @@ -17075,9 +17101,9 @@ namespace yy { default: goto yy636; } yy636: -#line 9418 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9444 "/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 17081 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy637: yych = *++context.cursor; switch (yych) { @@ -17214,9 +17240,9 @@ namespace yy { default: goto yy649; } yy649: -#line 9456 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9482 "/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 17220 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17246 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy650: yych = *++context.cursor; switch (yych) { @@ -17305,9 +17331,9 @@ namespace yy { default: goto yy654; } yy654: -#line 9465 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9491 "/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 17311 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17337 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy655: yych = *++context.cursor; switch (yych) { @@ -17414,9 +17440,9 @@ namespace yy { default: goto yy662; } yy662: -#line 9395 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9421 "/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 17420 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17446 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy663: yych = *++context.cursor; switch (yych) { @@ -17493,9 +17519,9 @@ namespace yy { default: goto yy665; } yy665: -#line 9397 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9423 "/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 17499 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17525 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy666: yych = *++context.cursor; switch (yych) { @@ -17578,9 +17604,9 @@ namespace yy { default: goto yy669; } yy669: -#line 9407 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9433 "/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 17584 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy670: yych = *++context.cursor; switch (yych) { @@ -17675,9 +17701,9 @@ namespace yy { default: goto yy675; } yy675: -#line 9419 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9445 "/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 17681 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17707 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy676: yych = *++context.cursor; switch (yych) { @@ -17826,9 +17852,9 @@ namespace yy { default: goto yy690; } yy690: -#line 9468 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9494 "/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 17832 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17858 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy691: yych = *++context.cursor; switch (yych) { @@ -17923,9 +17949,9 @@ namespace yy { default: goto yy696; } yy696: -#line 9384 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9410 "/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 17929 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 17955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy697: yych = *++context.cursor; switch (yych) { @@ -17996,9 +18022,9 @@ namespace yy { default: goto yy698; } yy698: -#line 9396 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9422 "/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 18002 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy699: yych = *++context.cursor; switch (yych) { @@ -18069,9 +18095,9 @@ namespace yy { default: goto yy700; } yy700: -#line 9401 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9427 "/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 18075 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy701: yych = *++context.cursor; switch (yych) { @@ -18232,9 +18258,9 @@ namespace yy { default: goto yy717; } yy717: -#line 9460 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9486 "/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 18238 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18264 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy718: yych = *++context.cursor; switch (yych) { @@ -18371,9 +18397,9 @@ namespace yy { default: goto yy730; } yy730: -#line 9425 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9451 "/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 18377 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18403 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy731: yych = *++context.cursor; switch (yych) { @@ -18444,9 +18470,9 @@ namespace yy { default: goto yy732; } yy732: -#line 9427 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9453 "/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 18450 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy733: yych = *++context.cursor; switch (yych) { @@ -18517,9 +18543,9 @@ namespace yy { default: goto yy734; } yy734: -#line 9428 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9454 "/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 18523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy735: yych = *++context.cursor; switch (yych) { @@ -18596,9 +18622,9 @@ namespace yy { default: goto yy737; } yy737: -#line 9432 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9458 "/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 18602 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18628 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy738: yych = *++context.cursor; switch (yych) { @@ -18693,9 +18719,9 @@ namespace yy { default: goto yy743; } yy743: -#line 9448 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9474 "/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 18699 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18725 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy744: yych = *++context.cursor; switch (yych) { @@ -18808,9 +18834,9 @@ namespace yy { default: goto yy752; } yy752: -#line 9411 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9437 "/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 18814 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18840 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy753: yych = *++context.cursor; switch (yych) { @@ -18881,9 +18907,9 @@ namespace yy { default: goto yy754; } yy754: -#line 9416 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9442 "/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 18887 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18913 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy755: yych = *++context.cursor; switch (yych) { @@ -18960,9 +18986,9 @@ namespace yy { default: goto yy757; } yy757: -#line 9417 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9443 "/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 18966 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 18992 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy758: yych = *++context.cursor; switch (yych) { @@ -19039,9 +19065,9 @@ namespace yy { default: goto yy760; } yy760: -#line 9434 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9460 "/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 19045 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy761: yych = *++context.cursor; switch (yych) { @@ -19118,9 +19144,9 @@ namespace yy { default: goto yy763; } yy763: -#line 9443 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9469 "/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 19124 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19150 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy764: yych = *++context.cursor; switch (yych) { @@ -19209,9 +19235,9 @@ namespace yy { default: goto yy768; } yy768: -#line 9458 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9484 "/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 19215 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19241 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy769: yych = *++context.cursor; switch (yych) { @@ -19294,9 +19320,9 @@ namespace yy { default: goto yy772; } yy772: -#line 9470 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9496 "/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 19300 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy773: yych = *++context.cursor; switch (yych) { @@ -19385,9 +19411,9 @@ namespace yy { default: goto yy777; } yy777: -#line 9431 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9457 "/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 19391 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19417 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy778: yych = *++context.cursor; switch (yych) { @@ -19488,9 +19514,9 @@ namespace yy { default: goto yy784; } yy784: -#line 9469 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9495 "/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 19494 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19520 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy785: yych = *++context.cursor; switch (yych) { @@ -19561,9 +19587,9 @@ namespace yy { default: goto yy786; } yy786: -#line 9381 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9407 "/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 19567 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19593 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy787: yych = *++context.cursor; switch (yych) { @@ -19640,9 +19666,9 @@ namespace yy { default: goto yy789; } yy789: -#line 9415 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9441 "/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 19646 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19672 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy790: yych = *++context.cursor; switch (yych) { @@ -19719,9 +19745,9 @@ namespace yy { default: goto yy792; } yy792: -#line 9445 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9471 "/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 19725 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19751 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy793: yych = *++context.cursor; switch (yych) { @@ -19798,9 +19824,9 @@ namespace yy { default: goto yy795; } yy795: -#line 9462 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9488 "/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 19804 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19830 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy796: yych = *++context.cursor; switch (yych) { @@ -19871,9 +19897,9 @@ namespace yy { default: goto yy797; } yy797: -#line 9466 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9492 "/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 19877 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19903 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy798: yych = *++context.cursor; switch (yych) { @@ -19944,9 +19970,9 @@ namespace yy { default: goto yy799; } yy799: -#line 9405 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9431 "/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 19950 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 19976 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy800: yych = *++context.cursor; switch (yych) { @@ -20017,9 +20043,9 @@ namespace yy { default: goto yy801; } yy801: -#line 9436 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9462 "/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 20023 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 20049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy802: yych = *++context.cursor; switch (yych) { @@ -20090,11 +20116,11 @@ namespace yy { default: goto yy803; } yy803: -#line 9449 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9475 "/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 20096 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.hpp" +#line 20122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" } -#line 9523 "/home/styler/git/build-fast_ber-Desktop_Qt_5_11_2_GCC_64bit-Debug/src/autogen/asn_compiler.re" +#line 9549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" } } From 8b14076052906c72eceea5ad508c85b5fdd33590 Mon Sep 17 00:00:00 2001 From: Sam Date: Tue, 28 May 2019 22:45:06 +0100 Subject: [PATCH 10/31] Seperate resolution of object classes --- include/fast_ber/compiler/CompilerTypes.hpp | 30 +- include/fast_ber/compiler/CppGeneration.hpp | 3 + include/fast_ber/compiler/ObjectClass.hpp | 160 +- .../fast_ber/compiler/ReorderAssignments.hpp | 2 +- include/fast_ber/compiler/ResolveType.hpp | 10 +- include/fast_ber/compiler/ResolveTypeFwd.hpp | 1 + src/compiler/CompilerMain.cpp | 196 +- src/compiler/asn_compiler.yacc | 30 +- src/compiler/autogen_copy/asn_compiler.hpp | 5234 +++++++++-------- 9 files changed, 2927 insertions(+), 2739 deletions(-) diff --git a/include/fast_ber/compiler/CompilerTypes.hpp b/include/fast_ber/compiler/CompilerTypes.hpp index c338adfa..3047641c 100644 --- a/include/fast_ber/compiler/CompilerTypes.hpp +++ b/include/fast_ber/compiler/CompilerTypes.hpp @@ -409,12 +409,18 @@ struct ObjectSetAssignment { }; +struct Parameter +{ + absl::optional governor; + std::string reference; +}; + struct Assignment { std::string name; absl::variant specific; std::vector depends_on; - std::set parameters; + std::vector parameters; }; struct Import @@ -574,6 +580,28 @@ bool is_oid(const Type& type) bool is_defined(const Type& type) { return absl::holds_alternative(type); } +std::string create_template_definition(const std::vector& parameters) +{ + std::set param_set; + for (const Parameter& parameter : parameters) + { + param_set.insert(parameter.reference); + } + + return create_template_definition(param_set); +} + +std::string create_template_arguments(const std::vector& parameters) +{ + std::set param_set; + for (const Parameter& parameter : parameters) + { + param_set.insert(parameter.reference); + } + + return create_template_arguments(param_set); +} + int unnamed_definition_reference_num = 0; struct Context; diff --git a/include/fast_ber/compiler/CppGeneration.hpp b/include/fast_ber/compiler/CppGeneration.hpp index 3476e24c..1ec6379f 100644 --- a/include/fast_ber/compiler/CppGeneration.hpp +++ b/include/fast_ber/compiler/CppGeneration.hpp @@ -1,7 +1,10 @@ #pragma once +#include "fast_ber/compiler/CompilerTypes.hpp" + #include #include +#include std::string create_include(const std::string& path) { return "#include \"" + path + "\"\n"; } diff --git a/include/fast_ber/compiler/ObjectClass.hpp b/include/fast_ber/compiler/ObjectClass.hpp index 3d6e5cd3..94952320 100644 --- a/include/fast_ber/compiler/ObjectClass.hpp +++ b/include/fast_ber/compiler/ObjectClass.hpp @@ -1,4 +1,4 @@ -#pragma once +#pragma once #include "fast_ber/compiler/CompilerTypes.hpp" #include "fast_ber/compiler/ResolveTypeFwd.hpp" @@ -122,6 +122,27 @@ void object_class_to_concrete(Asn1Tree& tree, Module& module, Type& type) } } +bool is_defined_object_class(const std::string& module_reference, const std::string& type_reference, + const std::set& object_class_names) +{ + return object_class_names.count(module_reference + "." + type_reference) > 0; +} + +bool is_defined_object_class(const Asn1Tree&, Module& module, const Type& type, + const std::set& object_class_names) +{ + if (is_defined(type)) + { + const DefinedType& defined = absl::get(type); + if (defined.module_reference) + { + return is_defined_object_class(*defined.module_reference, defined.type_reference, object_class_names); + } + return is_defined_object_class(module.module_reference, defined.type_reference, object_class_names); + } + return false; +} + void remove_object_classes(Asn1Tree& tree, const std::set& object_class_names) { for (Module& module : tree.modules) @@ -130,27 +151,32 @@ void remove_object_classes(Asn1Tree& tree, const std::set& object_c std::remove_if( module.assignments.begin(), module.assignments.end(), [&](const Assignment& assignment) { - if (absl::holds_alternative(assignment.specific)) + if (is_object_class(assignment)) { return true; } + else if (is_type(assignment) && is_defined(type(assignment))) + { + return is_defined_object_class(tree, module, type(assignment), object_class_names); + } + else if (absl::holds_alternative(assignment.specific) && + absl::holds_alternative(absl::get(assignment.specific).type)) + { + const ValueAssignment& value_assign = absl::get(assignment.specific); + return is_defined_object_class(tree, module, value_assign.type, object_class_names); + } - for (const std::string& parameter : assignment.parameters) + for (const Parameter& parameter : assignment.parameters) { - if (object_class_names.count(module.module_reference + "." + parameter) > 0) + if (parameter.governor) { - return true; + if (is_defined_object_class(tree, module, *parameter.governor, object_class_names)) + { + return true; + } } } - if (absl::holds_alternative(assignment.specific) && - absl::holds_alternative(absl::get(assignment.specific).type)) - { - if (is_object_class( - resolve(tree, module.module_reference, - absl::get(absl::get(assignment.specific).type)))) - return true; - } return false; }), module.assignments.end()); @@ -158,53 +184,109 @@ void remove_object_classes(Asn1Tree& tree, const std::set& object_c for (Module& module : tree.modules) { - module.imports.erase( - std::remove_if(module.imports.begin(), module.imports.end(), - [&](const Import& import) { - for (const std::string& imported_name : import.imports) - { - if (object_class_names.count(module.module_reference + "." + imported_name) > 0) - { - return true; - } - } - return false; - }), - module.imports.end()); + for (Import& import : module.imports) + { + import.imports.erase(std::remove_if(import.imports.begin(), import.imports.end(), + [&](const std::string& imported_name) { + return is_defined_object_class(import.module_reference, + imported_name, object_class_names); + }), + import.imports.end()); + } } } -// Convert usage of object classes to standard ASN.1 types -void resolve_object_classes(Asn1Tree& tree) +std::set get_object_class_names(const Asn1Tree& tree) { std::set object_class_names; - for (Module& module : tree.modules) + for (const Module& module : tree.modules) { - for (Assignment& assignment : module.assignments) + for (const Assignment& assignment : module.assignments) { - if (absl::holds_alternative(assignment.specific)) + if (is_type(assignment)) { - object_class_to_concrete(tree, module, absl::get(assignment.specific).type); - - if (absl::holds_alternative(assignment.specific) && - absl::holds_alternative(absl::get(assignment.specific).type)) + for (const Parameter& parameter : assignment.parameters) + { + if (parameter.governor) + { + if (is_defined(*parameter.governor)) + { + const DefinedType& defined = absl::get(*parameter.governor); + const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); + if (is_object_class(inner_assignment)) + { + object_class_names.insert(module.module_reference + "." + inner_assignment.name); + } + } + } + } + } + if (is_type(assignment) && is_defined(type(assignment))) + { + const DefinedType& defined = absl::get(type(assignment)); + if (!is_a_parameter(defined.type_reference, assignment.parameters)) { - Assignment& inner_assignment = - resolve(tree, module.module_reference, - absl::get(absl::get(assignment.specific).type)); + const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); if (is_object_class(inner_assignment)) { object_class_names.insert(module.module_reference + "." + inner_assignment.name); } } } - else if (absl::holds_alternative(assignment.specific)) + if (is_object_class(assignment)) { object_class_names.insert(module.module_reference + "." + assignment.name); } } } + for (const Module& module : tree.modules) + { + for (const Import& import : module.imports) + { + for (const std::string& imported_name : import.imports) + { + if (is_defined_object_class(import.module_reference, imported_name, object_class_names)) + { + object_class_names.insert(module.module_reference + "." + imported_name); + } + } + } + } + + for (auto s : object_class_names) + { + std::cout << "Object class names " << s << std::endl; + } + return object_class_names; +} + +// Convert usage of object classes to standard ASN.1 types +void resolve_object_classes(Asn1Tree& tree) +{ + std::set object_class_names = get_object_class_names(tree); + for (Module& module : tree.modules) + { + for (Assignment& assignment : module.assignments) + { + if (absl::holds_alternative(assignment.specific)) + { + bool skip = false; + for (const Parameter& parameter : assignment.parameters) + { + if (parameter.governor) + { + skip = true; + } + } + if (!skip) + { + object_class_to_concrete(tree, module, absl::get(assignment.specific).type); + } + } + } + } + remove_object_classes(tree, object_class_names); } diff --git a/include/fast_ber/compiler/ReorderAssignments.hpp b/include/fast_ber/compiler/ReorderAssignments.hpp index c9ea14ad..d4c71b06 100644 --- a/include/fast_ber/compiler/ReorderAssignments.hpp +++ b/include/fast_ber/compiler/ReorderAssignments.hpp @@ -177,7 +177,7 @@ std::vector reorder_assignments(std::vector& assignments // Therefore remove any names which are defined as parameters from dependancy list assignment.depends_on.erase(std::remove_if(assignment.depends_on.begin(), assignment.depends_on.end(), [&assignment](const std::string& dependancy) { - return assignment.parameters.count(dependancy) > 0; + return is_a_parameter(dependancy, assignment.parameters); }), assignment.depends_on.end()); diff --git a/include/fast_ber/compiler/ResolveType.hpp b/include/fast_ber/compiler/ResolveType.hpp index 2c32d4b8..e35a7f93 100644 --- a/include/fast_ber/compiler/ResolveType.hpp +++ b/include/fast_ber/compiler/ResolveType.hpp @@ -152,7 +152,8 @@ bool is_type(const Assignment& assignment) { return absl::holds_alternative(assignment.specific); } bool is_object_class(const Assignment& assignment) { - return absl::holds_alternative(assignment.specific); + return absl::holds_alternative(assignment.specific) || + absl::holds_alternative(assignment.specific); } Type& type(Assignment& assignemnt) { return absl::get(assignemnt.specific).type; } @@ -169,3 +170,10 @@ const ObjectClassAssignment& object_class(const Assignment& assignemnt) { return absl::get(assignemnt.specific); } + +bool is_a_parameter(const std::string& reference, const std::vector& parameters) +{ + auto parameter_match = [&](const Parameter& param) { return param.reference == reference; }; + + return std::find_if(parameters.begin(), parameters.end(), parameter_match) != parameters.end(); +} diff --git a/include/fast_ber/compiler/ResolveTypeFwd.hpp b/include/fast_ber/compiler/ResolveTypeFwd.hpp index e8dec77b..3d84afbd 100644 --- a/include/fast_ber/compiler/ResolveTypeFwd.hpp +++ b/include/fast_ber/compiler/ResolveTypeFwd.hpp @@ -19,6 +19,7 @@ bool exists(const Asn1Tree& tree, const std::string& current_module_reference, c bool is_type(const Assignment& assignment); bool is_value(const Assignment& assignment); bool is_object_class(const Assignment& assignment); +bool is_a_parameter(const std::string& reference, const std::vector& parameters); Type& type(Assignment& assignemnt); const Type& type(const Assignment& assignemnt); diff --git a/src/compiler/CompilerMain.cpp b/src/compiler/CompilerMain.cpp index 621ea41a..8770a369 100644 --- a/src/compiler/CompilerMain.cpp +++ b/src/compiler/CompilerMain.cpp @@ -48,114 +48,122 @@ std::string create_type_assignment(const Assignment& assignment, const Module& m std::string create_assignment(const Asn1Tree& tree, const Module& module, const Assignment& assignment) { - if (absl::holds_alternative(assignment.specific)) // Value assignment + try { - const ValueAssignment& value_assign = absl::get(assignment.specific); - std::string result = fully_tagged_type(value_assign.type, module, tree) + " " + assignment.name + " = "; - - if (is_defined(value_assign.type)) + if (absl::holds_alternative(assignment.specific)) // Value assignment { - if (!exists(tree, module.module_reference, absl::get(value_assign.type)) || - !is_type(resolve(tree, module.module_reference, absl::get(value_assign.type)))) + const ValueAssignment& value_assign = absl::get(assignment.specific); + std::string result = fully_tagged_type(value_assign.type, module, tree) + " " + assignment.name + " = "; + + if (is_defined(value_assign.type)) { - return ""; + if (!exists(tree, module.module_reference, absl::get(value_assign.type)) || + !is_type(resolve(tree, module.module_reference, absl::get(value_assign.type)))) + { + std::cerr << "not resolving = " << assignment.name << std::endl; + return ""; + } } - } - const Type& assigned_to_type = - (is_defined(value_assign.type)) - ? type(resolve(tree, module.module_reference, absl::get(value_assign.type))) - : value_assign.type; - if (is_oid(assigned_to_type)) - { - result += "ObjectIdentifier{"; - try + const Type& assigned_to_type = + (is_defined(value_assign.type)) + ? type(resolve(tree, module.module_reference, absl::get(value_assign.type))) + : value_assign.type; + if (is_oid(assigned_to_type)) { - const ObjectIdComponents& object_id = ObjectIdComponents(value_assign.value); - - for (size_t i = 0; i < object_id.components.size(); i++) + result += "ObjectIdentifier{"; + try { - if (object_id.components[i].value) - { - result += std::to_string(*object_id.components[i].value); - } - else - { - result += std::to_string(0); - } + const ObjectIdComponents& object_id = ObjectIdComponents(value_assign.value); - if (i < object_id.components.size() - 1) + for (size_t i = 0; i < object_id.components.size(); i++) { - result += ", "; + if (object_id.components[i].value) + { + result += std::to_string(*object_id.components[i].value); + } + else + { + result += std::to_string(0); + } + + if (i < object_id.components.size() - 1) + { + result += ", "; + } } } + catch (const std::runtime_error& e) + { + std::cerr << "Warning: Not an object identifier : " + assignment.name + std::string(" : ") + + e.what() + << std::endl; + return ""; + } + result += "}"; } - catch (const std::runtime_error& e) + else if (is_bit_string(assigned_to_type)) { - std::cerr << "Warning: Not an object identifier : " + assignment.name + std::string(" : ") + e.what() - << std::endl; - return ""; + if (absl::holds_alternative(value_assign.value.value_selection)) + { + const BitStringValue& bstring = absl::get(value_assign.value.value_selection); + (void)bstring; // TODO: convert bstring to cstring + result += "\"\""; + } + else + { + result += "\"\""; + } } - result += "}"; - } - else if (is_bit_string(assigned_to_type)) - { - if (absl::holds_alternative(value_assign.value.value_selection)) + else if (absl::holds_alternative(value_assign.value.value_selection)) + { + const std::string& string = absl::get(value_assign.value.value_selection); + result += string; + } + else if (absl::holds_alternative(value_assign.value.value_selection)) + { + const HexStringValue& hstring = absl::get(value_assign.value.value_selection); + result += hstring.value; + } + else if (absl::holds_alternative(value_assign.value.value_selection)) + { + const CharStringValue& cstring = absl::get(value_assign.value.value_selection); + result += cstring.value; + } + else if (absl::holds_alternative(value_assign.value.value_selection)) { - const BitStringValue& bstring = absl::get(value_assign.value.value_selection); - (void)bstring; // TODO: convert bstring to cstring - result += "\"\""; + const int64_t integer = absl::get(value_assign.value.value_selection); + result += std::to_string(integer); + } + else if (absl::holds_alternative(value_assign.value.value_selection)) + { + const DefinedValue& defined = absl::get(value_assign.value.value_selection); + result += defined.reference; } else { - result += "\"\""; + return ""; } + + result += ";\n"; + return result; } - else if (absl::holds_alternative(value_assign.value.value_selection)) - { - const std::string& string = absl::get(value_assign.value.value_selection); - result += string; - } - else if (absl::holds_alternative(value_assign.value.value_selection)) - { - const HexStringValue& hstring = absl::get(value_assign.value.value_selection); - result += hstring.value; - } - else if (absl::holds_alternative(value_assign.value.value_selection)) - { - const CharStringValue& cstring = absl::get(value_assign.value.value_selection); - result += cstring.value; - } - else if (absl::holds_alternative(value_assign.value.value_selection)) + else if (absl::holds_alternative(assignment.specific)) { - const int64_t integer = absl::get(value_assign.value.value_selection); - result += std::to_string(integer); + return create_type_assignment(assignment, module, tree); } - else if (absl::holds_alternative(value_assign.value.value_selection)) + else if (absl::holds_alternative(assignment.specific)) { - const DefinedValue& defined = absl::get(value_assign.value.value_selection); - result += defined.reference; + throw("Compiler Error: ObjectClassAssignment should be resolved: " + assignment.name); } else { return ""; } - - result += ";\n"; - return result; - } - else if (absl::holds_alternative(assignment.specific)) - { - return create_type_assignment(assignment, module, tree); } - else if (absl::holds_alternative(assignment.specific)) - { - std::cerr << "Warning: Parsed but ignoring class assignment: " << assignment.name << std::endl; - return ""; - } - else + catch (const std::runtime_error& e) { - return ""; + throw(std::runtime_error("failed: " + assignment.name + e.what())); } } @@ -199,7 +207,7 @@ std::string collection_name(const SetType&) { return "set"; } template std::string -create_collection_encode_functions(const std::string assignment_name, const std::set& parameters, +create_collection_encode_functions(const std::string assignment_name, const std::vector& parameters, const CollectionType& collection, const Module& module, const Asn1Tree tree) { std::string res; @@ -246,8 +254,9 @@ create_collection_encode_functions(const std::string assignment_name, const std: } } - std::set template_args = parameters; - template_args.insert("ID = ExplicitIdentifier"); + std::vector template_args = parameters; + template_args.push_back( + Parameter{{}, "ID = ExplicitIdentifier"}); res += create_template_definition(template_args); res += "inline EncodeResult encode(absl::Span output, const " + module.module_reference + @@ -264,16 +273,16 @@ create_collection_encode_functions(const std::string assignment_name, const std: } template -std::string create_collection_decode_functions(const std::string assignment_name, - const std::set& parameters, +std::string create_collection_decode_functions(const std::string assignment_name, + const std::vector& parameters, const CollectionType& collection, const Module& module) { std::string res; std::string tags_class = module.module_reference + "_" + assignment_name + "Tags"; std::replace(tags_class.begin(), tags_class.end(), ':', '_'); - std::set template_args = parameters; - template_args.insert("ID = ExplicitIdentifier"); + std::vector template_args = parameters; + template_args.push_back({{}, "ID = ExplicitIdentifier"}); res += create_template_definition(template_args); res += "inline DecodeResult decode(const BerView& input, " + module.module_reference + "::" + assignment_name + @@ -360,7 +369,7 @@ std::string create_decode_functions(const Assignment& assignment, const Module& template std::string create_collection_equality_operators(const CollectionType& collection, const std::string& name, - const std::set& parameters) + const std::vector& parameters) { const std::string tags_class = name + "Tags"; @@ -454,18 +463,10 @@ std::string create_body(const Asn1Tree& tree, const Module& module) { for (const auto& import_name : import.imports) { - if (exists(tree, import.module_reference, import_name)) + if (is_type(resolve(tree, import.module_reference, import_name)) || + is_value(resolve(tree, import.module_reference, import_name))) { - if (is_type(resolve(tree, import.module_reference, import_name)) || - is_value(resolve(tree, import.module_reference, import_name))) - { - output += "using " + import_name + " = " + import.module_reference + "::" + import_name + ";\n"; - } - } - else - { - std::cout << "Warning: Could not find object for import: " << import.module_reference - << "::" << import_name << std::endl; + output += "using " + import_name + " = " + import.module_reference + "::" + import_name + ";\n"; } } if (import.imports.size() > 0) @@ -590,6 +591,7 @@ int main(int argc, char** argv) module.assignments = reorder_assignments(module.assignments, module.imports); module.assignments = split_nested_structures(module.assignments); } + resolve_components_of(context.asn1_tree); resolve_object_classes(context.asn1_tree); diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 6bab4f7f..76328466 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -309,9 +309,11 @@ %type NameAndNumberForm; %type> ObjIdComponentsList; %type> ObjectIdentifierValue; -%type> ParameterList; -%type> ParameterSeries; -%type Parameter; +%type> ParameterList; +%type> ParameterSeries; +%type Parameter; +%type ParamGovernor; +%type Governor; %% @@ -571,8 +573,8 @@ ParameterizedAssignment: { $$ = $1; } | ParameterizedObjectClassAssignment { $$ = $1; } -| ParameterizedObjectAssignment - { $$ = $1; } +//| ParameterizedObjectAssignment +// { $$ = $1; } //| ParameterizedObjectSetAssignment; ParameterizedTypeAssignment: @@ -605,23 +607,27 @@ ParameterList: ParameterSeries: Parameter - { $$.insert($1); } + { $$.push_back($1); } | ParameterSeries "," Parameter - { $$ = $1; $1.insert($3); } + { $$ = $1; $1.push_back($3); } Parameter: ParamGovernor ":" Reference - { $$ = $3; } + { $$ = Parameter{$1, $3}; } | Reference - { $$ = $1; } + { $$ = Parameter{{}, $1}; } ParamGovernor: Governor -| Reference; + { $$ = $1; } +| Reference + { $$ = DefinedType{{}, $1}; } Governor: Type -| DefinedObjectClass; + { $$ = $1; } +| DefinedObjectClass + { } ParameterizedReference: Reference @@ -1056,7 +1062,6 @@ ValueWithoutTypeIdentifier: { std::cerr << std::string("Warning: Unhandled field: BY\n"); } | WITH { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } -| INTEGER Value: @@ -1064,6 +1069,7 @@ Value: { $$ = $1; } | GENERIC_IDENTIFIER_UPPERCASE { $$.value_selection = $1; } +| INTEGER ValueCommaListChoice: Value "," Value diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index 38bceb2d..834844f1 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -669,7 +669,6 @@ namespace yy { // ParameterizedValueAssignment // ParameterizedValueSetTypeAssignment // ParameterizedObjectClassAssignment - // ParameterizedObjectAssignment // Assignment // TypeAssignment // ValueAssignment @@ -775,69 +774,70 @@ namespace yy { // OctetStringType char dummy31[sizeof(OctetStringType)]; + // Parameter + char dummy32[sizeof(Parameter)]; + // PrefixedType - char dummy32[sizeof(PrefixedType)]; + char dummy33[sizeof(PrefixedType)]; // RealType - char dummy33[sizeof(RealType)]; + char dummy34[sizeof(RealType)]; // RelativeIRIType - char dummy34[sizeof(RelativeIRIType)]; + char dummy35[sizeof(RelativeIRIType)]; // RelativeOIDType - char dummy35[sizeof(RelativeOIDType)]; + char dummy36[sizeof(RelativeOIDType)]; // SequenceOfType - char dummy36[sizeof(SequenceOfType)]; + char dummy37[sizeof(SequenceOfType)]; // SequenceType - char dummy37[sizeof(SequenceType)]; + char dummy38[sizeof(SequenceType)]; // SetOfType - char dummy38[sizeof(SetOfType)]; + char dummy39[sizeof(SetOfType)]; // SetType - char dummy39[sizeof(SetType)]; + char dummy40[sizeof(SetType)]; // Tag - char dummy40[sizeof(Tag)]; + char dummy41[sizeof(Tag)]; // TaggedType - char dummy41[sizeof(TaggedType)]; + char dummy42[sizeof(TaggedType)]; // TagDefault - char dummy42[sizeof(TaggingMode)]; + char dummy43[sizeof(TaggingMode)]; // TimeOfDayType - char dummy43[sizeof(TimeOfDayType)]; + char dummy44[sizeof(TimeOfDayType)]; // TimeType - char dummy44[sizeof(TimeType)]; + char dummy45[sizeof(TimeType)]; + // ParamGovernor + // Governor // ActualParameter // Type // ConstrainedType // TypeWithConstraint - char dummy45[sizeof(Type)]; + char dummy46[sizeof(Type)]; // ValueWithoutTypeIdentifier // Value // SingleValue - char dummy46[sizeof(Value)]; + char dummy47[sizeof(Value)]; // realnumber - char dummy47[sizeof(double)]; + char dummy48[sizeof(double)]; // ClassNumber - char dummy48[sizeof(int)]; + char dummy49[sizeof(int)]; // number // SignedNumber - char dummy49[sizeof(long long)]; - - // ParameterList - // ParameterSeries - char dummy50[sizeof(std::set)]; + char dummy50[sizeof(long long)]; // bstring // xmlbstring @@ -854,7 +854,6 @@ namespace yy { // GENERIC_IDENTIFIER_LOWERCASE // UsefulObjectClassReference // FieldName - // Parameter // SimpleDefinedType // ModuleIdentifier // GlobalModuleReference @@ -897,16 +896,20 @@ namespace yy { // ObjIdComponentsList char dummy58[sizeof(std::vector)]; + // ParameterList + // ParameterSeries + char dummy59[sizeof(std::vector)]; + // ActualParameterList - char dummy59[sizeof(std::vector)]; + char dummy60[sizeof(std::vector)]; // SequenceOfValues - char dummy60[sizeof(std::vector)]; + char dummy61[sizeof(std::vector)]; // FieldNameList // OneOrManyTypeFieldReference // SymbolList - char dummy61[sizeof(std::vector)]; + char dummy62[sizeof(std::vector)]; }; /// Symbol semantic values. @@ -1175,6 +1178,8 @@ namespace yy { basic_symbol (typename Base::kind_type t, const OctetStringType v, const location_type& l); + basic_symbol (typename Base::kind_type t, const Parameter v, const location_type& l); + basic_symbol (typename Base::kind_type t, const PrefixedType v, const location_type& l); basic_symbol (typename Base::kind_type t, const RealType v, const location_type& l); @@ -1211,8 +1216,6 @@ namespace yy { basic_symbol (typename Base::kind_type t, const long long v, const location_type& l); - basic_symbol (typename Base::kind_type t, const std::set v, const location_type& l); - basic_symbol (typename Base::kind_type t, const std::string v, const location_type& l); basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l); @@ -1229,6 +1232,8 @@ namespace yy { basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l); + basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l); + basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l); basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l); @@ -2095,8 +2100,8 @@ namespace yy { enum { yyeof_ = 0, - yylast_ = 4006, ///< Last index in yytable_. - yynnts_ = 227, ///< Number of nonterminal symbols. + yylast_ = 4056, ///< Last index in yytable_. + yynnts_ = 226, ///< Number of nonterminal symbols. yyfinal_ = 6, ///< Termination state number. yyterror_ = 1, yyerrcode_ = 256, @@ -2199,116 +2204,115 @@ namespace yy { case 204: // ParameterizedValueAssignment case 205: // ParameterizedValueSetTypeAssignment case 206: // ParameterizedObjectClassAssignment - case 207: // ParameterizedObjectAssignment - case 252: // Assignment - case 261: // TypeAssignment - case 262: // ValueAssignment - case 263: // ValueSetTypeAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.copy< Assignment > (other.value); break; - case 284: // BitStringType + case 283: // BitStringType value.copy< BitStringType > (other.value); break; - case 273: // BooleanType + case 272: // BooleanType value.copy< BooleanType > (other.value); break; - case 265: // BuiltinType + case 264: // BuiltinType value.copy< BuiltinType > (other.value); break; - case 329: // CharacterStringType + case 328: // CharacterStringType value.copy< CharacterStringType > (other.value); break; - case 296: // ChoiceType + case 295: // ChoiceType value.copy< ChoiceType > (other.value); break; - case 306: // Class + case 305: // Class value.copy< Class > (other.value); break; - case 292: // ComponentType + case 291: // ComponentType value.copy< ComponentType > (other.value); break; - case 290: // ComponentTypeLists - case 291: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.copy< ComponentTypeList > (other.value); break; - case 327: // DateTimeType + case 326: // DateTimeType value.copy< DateTimeType > (other.value); break; - case 325: // DateType + case 324: // DateType value.copy< DateType > (other.value); break; - case 253: // DefinedType - case 255: // ParameterizedType - case 259: // ExternalTypeReference + case 252: // DefinedType + case 254: // ParameterizedType + case 258: // ExternalTypeReference value.copy< DefinedType > (other.value); break; - case 254: // DefinedValue + case 253: // DefinedValue value.copy< DefinedValue > (other.value); break; - case 328: // DurationType + case 327: // DurationType value.copy< DurationType > (other.value); break; - case 321: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.copy< EmbeddedPDVType > (other.value); break; - case 279: // EnumeratedType - case 280: // Enumerations - case 281: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.copy< EnumeratedType > (other.value); break; - case 282: // EnumerationItem + case 281: // EnumerationItem value.copy< EnumerationValue > (other.value); break; - case 322: // ExternalType + case 321: // ExternalType value.copy< ExternalType > (other.value); break; - case 315: // IRIType + case 314: // IRIType value.copy< IRIType > (other.value); break; - case 245: // SymbolsFromModule + case 244: // SymbolsFromModule value.copy< Import > (other.value); break; - case 215: // InstanceOfType + case 214: // InstanceOfType value.copy< InstanceOfType > (other.value); break; - case 275: // IntegerType + case 274: // IntegerType value.copy< IntegerType > (other.value); break; - case 239: // ModuleBody + case 238: // ModuleBody value.copy< Module > (other.value); break; - case 277: // NamedNumber + case 276: // NamedNumber value.copy< NamedNumber > (other.value); break; - case 266: // NamedType + case 265: // NamedType value.copy< NamedType > (other.value); break; - case 288: // NullType + case 287: // NullType value.copy< NullType > (other.value); break; @@ -2321,83 +2325,89 @@ namespace yy { value.copy< ObjectClassFieldType > (other.value); break; - case 310: // ObjIdComponents - case 311: // NameForm - case 312: // NumberForm - case 313: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.copy< ObjectIdComponentValue > (other.value); break; - case 307: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.copy< ObjectIdentifierType > (other.value); break; - case 287: // OctetStringType + case 286: // OctetStringType value.copy< OctetStringType > (other.value); break; - case 301: // PrefixedType + case 209: // Parameter + value.copy< Parameter > (other.value); + break; + + case 300: // PrefixedType value.copy< PrefixedType > (other.value); break; - case 283: // RealType + case 282: // RealType value.copy< RealType > (other.value); break; - case 320: // RelativeIRIType + case 319: // RelativeIRIType value.copy< RelativeIRIType > (other.value); break; - case 314: // RelativeOIDType + case 313: // RelativeOIDType value.copy< RelativeOIDType > (other.value); break; - case 293: // SequenceOfType + case 292: // SequenceOfType value.copy< SequenceOfType > (other.value); break; - case 289: // SequenceType + case 288: // SequenceType value.copy< SequenceType > (other.value); break; - case 295: // SetOfType + case 294: // SetOfType value.copy< SetOfType > (other.value); break; - case 294: // SetType + case 293: // SetType value.copy< SetType > (other.value); break; - case 303: // Tag + case 302: // Tag value.copy< Tag > (other.value); break; - case 302: // TaggedType + case 301: // TaggedType value.copy< TaggedType > (other.value); break; - case 237: // TagDefault + case 236: // TagDefault value.copy< TaggingMode > (other.value); break; - case 326: // TimeOfDayType + case 325: // TimeOfDayType value.copy< TimeOfDayType > (other.value); break; - case 323: // TimeType + case 322: // TimeType value.copy< TimeType > (other.value); break; - case 258: // ActualParameter - case 264: // Type - case 332: // ConstrainedType - case 333: // TypeWithConstraint + case 210: // ParamGovernor + case 211: // Governor + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.copy< Type > (other.value); break; - case 267: // ValueWithoutTypeIdentifier - case 268: // Value - case 350: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.copy< Value > (other.value); break; @@ -2405,20 +2415,15 @@ namespace yy { value.copy< double > (other.value); break; - case 305: // ClassNumber + case 304: // ClassNumber value.copy< int > (other.value); break; case 4: // number - case 278: // SignedNumber + case 277: // SignedNumber value.copy< long long > (other.value); break; - case 208: // ParameterList - case 209: // ParameterSeries - value.copy< std::set > (other.value); - break; - case 6: // bstring case 7: // xmlbstring case 8: // hstring @@ -2434,22 +2439,21 @@ namespace yy { case 149: // GENERIC_IDENTIFIER_LOWERCASE case 158: // UsefulObjectClassReference case 164: // FieldName - case 210: // Parameter - case 216: // SimpleDefinedType - case 228: // ModuleIdentifier - case 246: // GlobalModuleReference - case 249: // Symbol - case 250: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.copy< std::string > (other.value); break; - case 251: // AssignmentList + case 250: // AssignmentList value.copy< std::vector > (other.value); break; @@ -2460,42 +2464,47 @@ namespace yy { value.copy< std::vector > (other.value); break; - case 240: // Exports + case 239: // Exports value.copy< std::vector > (other.value); break; - case 242: // Imports - case 243: // SymbolsImported - case 244: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.copy< std::vector > (other.value); break; - case 276: // NamedNumberList + case 275: // NamedNumberList value.copy< std::vector > (other.value); break; - case 297: // AlternativeTypeLists - case 298: // RootAlternativeTypeList - case 299: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.copy< std::vector > (other.value); break; - case 308: // ObjectIdentifierValue - case 309: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.copy< std::vector > (other.value); break; - case 257: // ActualParameterList + case 207: // ParameterList + case 208: // ParameterSeries + value.copy< std::vector > (other.value); + break; + + case 256: // ActualParameterList value.copy< std::vector > (other.value); break; - case 272: // SequenceOfValues + case 271: // SequenceOfValues value.copy< std::vector > (other.value); break; case 165: // FieldNameList case 167: // OneOrManyTypeFieldReference - case 248: // SymbolList + case 247: // SymbolList value.copy< std::vector > (other.value); break; @@ -2523,116 +2532,115 @@ namespace yy { case 204: // ParameterizedValueAssignment case 205: // ParameterizedValueSetTypeAssignment case 206: // ParameterizedObjectClassAssignment - case 207: // ParameterizedObjectAssignment - case 252: // Assignment - case 261: // TypeAssignment - case 262: // ValueAssignment - case 263: // ValueSetTypeAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.copy< Assignment > (v); break; - case 284: // BitStringType + case 283: // BitStringType value.copy< BitStringType > (v); break; - case 273: // BooleanType + case 272: // BooleanType value.copy< BooleanType > (v); break; - case 265: // BuiltinType + case 264: // BuiltinType value.copy< BuiltinType > (v); break; - case 329: // CharacterStringType + case 328: // CharacterStringType value.copy< CharacterStringType > (v); break; - case 296: // ChoiceType + case 295: // ChoiceType value.copy< ChoiceType > (v); break; - case 306: // Class + case 305: // Class value.copy< Class > (v); break; - case 292: // ComponentType + case 291: // ComponentType value.copy< ComponentType > (v); break; - case 290: // ComponentTypeLists - case 291: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.copy< ComponentTypeList > (v); break; - case 327: // DateTimeType + case 326: // DateTimeType value.copy< DateTimeType > (v); break; - case 325: // DateType + case 324: // DateType value.copy< DateType > (v); break; - case 253: // DefinedType - case 255: // ParameterizedType - case 259: // ExternalTypeReference + case 252: // DefinedType + case 254: // ParameterizedType + case 258: // ExternalTypeReference value.copy< DefinedType > (v); break; - case 254: // DefinedValue + case 253: // DefinedValue value.copy< DefinedValue > (v); break; - case 328: // DurationType + case 327: // DurationType value.copy< DurationType > (v); break; - case 321: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.copy< EmbeddedPDVType > (v); break; - case 279: // EnumeratedType - case 280: // Enumerations - case 281: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.copy< EnumeratedType > (v); break; - case 282: // EnumerationItem + case 281: // EnumerationItem value.copy< EnumerationValue > (v); break; - case 322: // ExternalType + case 321: // ExternalType value.copy< ExternalType > (v); break; - case 315: // IRIType + case 314: // IRIType value.copy< IRIType > (v); break; - case 245: // SymbolsFromModule + case 244: // SymbolsFromModule value.copy< Import > (v); break; - case 215: // InstanceOfType + case 214: // InstanceOfType value.copy< InstanceOfType > (v); break; - case 275: // IntegerType + case 274: // IntegerType value.copy< IntegerType > (v); break; - case 239: // ModuleBody + case 238: // ModuleBody value.copy< Module > (v); break; - case 277: // NamedNumber + case 276: // NamedNumber value.copy< NamedNumber > (v); break; - case 266: // NamedType + case 265: // NamedType value.copy< NamedType > (v); break; - case 288: // NullType + case 287: // NullType value.copy< NullType > (v); break; @@ -2645,83 +2653,89 @@ namespace yy { value.copy< ObjectClassFieldType > (v); break; - case 310: // ObjIdComponents - case 311: // NameForm - case 312: // NumberForm - case 313: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.copy< ObjectIdComponentValue > (v); break; - case 307: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.copy< ObjectIdentifierType > (v); break; - case 287: // OctetStringType + case 286: // OctetStringType value.copy< OctetStringType > (v); break; - case 301: // PrefixedType + case 209: // Parameter + value.copy< Parameter > (v); + break; + + case 300: // PrefixedType value.copy< PrefixedType > (v); break; - case 283: // RealType + case 282: // RealType value.copy< RealType > (v); break; - case 320: // RelativeIRIType + case 319: // RelativeIRIType value.copy< RelativeIRIType > (v); break; - case 314: // RelativeOIDType + case 313: // RelativeOIDType value.copy< RelativeOIDType > (v); break; - case 293: // SequenceOfType + case 292: // SequenceOfType value.copy< SequenceOfType > (v); break; - case 289: // SequenceType + case 288: // SequenceType value.copy< SequenceType > (v); break; - case 295: // SetOfType + case 294: // SetOfType value.copy< SetOfType > (v); break; - case 294: // SetType + case 293: // SetType value.copy< SetType > (v); break; - case 303: // Tag + case 302: // Tag value.copy< Tag > (v); break; - case 302: // TaggedType + case 301: // TaggedType value.copy< TaggedType > (v); break; - case 237: // TagDefault + case 236: // TagDefault value.copy< TaggingMode > (v); break; - case 326: // TimeOfDayType + case 325: // TimeOfDayType value.copy< TimeOfDayType > (v); break; - case 323: // TimeType + case 322: // TimeType value.copy< TimeType > (v); break; - case 258: // ActualParameter - case 264: // Type - case 332: // ConstrainedType - case 333: // TypeWithConstraint + case 210: // ParamGovernor + case 211: // Governor + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.copy< Type > (v); break; - case 267: // ValueWithoutTypeIdentifier - case 268: // Value - case 350: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.copy< Value > (v); break; @@ -2729,20 +2743,15 @@ namespace yy { value.copy< double > (v); break; - case 305: // ClassNumber + case 304: // ClassNumber value.copy< int > (v); break; case 4: // number - case 278: // SignedNumber + case 277: // SignedNumber value.copy< long long > (v); break; - case 208: // ParameterList - case 209: // ParameterSeries - value.copy< std::set > (v); - break; - case 6: // bstring case 7: // xmlbstring case 8: // hstring @@ -2758,22 +2767,21 @@ namespace yy { case 149: // GENERIC_IDENTIFIER_LOWERCASE case 158: // UsefulObjectClassReference case 164: // FieldName - case 210: // Parameter - case 216: // SimpleDefinedType - case 228: // ModuleIdentifier - case 246: // GlobalModuleReference - case 249: // Symbol - case 250: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.copy< std::string > (v); break; - case 251: // AssignmentList + case 250: // AssignmentList value.copy< std::vector > (v); break; @@ -2784,42 +2792,47 @@ namespace yy { value.copy< std::vector > (v); break; - case 240: // Exports + case 239: // Exports value.copy< std::vector > (v); break; - case 242: // Imports - case 243: // SymbolsImported - case 244: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.copy< std::vector > (v); break; - case 276: // NamedNumberList + case 275: // NamedNumberList value.copy< std::vector > (v); break; - case 297: // AlternativeTypeLists - case 298: // RootAlternativeTypeList - case 299: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.copy< std::vector > (v); break; - case 308: // ObjectIdentifierValue - case 309: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.copy< std::vector > (v); break; - case 257: // ActualParameterList + case 207: // ParameterList + case 208: // ParameterSeries + value.copy< std::vector > (v); + break; + + case 256: // ActualParameterList value.copy< std::vector > (v); break; - case 272: // SequenceOfValues + case 271: // SequenceOfValues value.copy< std::vector > (v); break; case 165: // FieldNameList case 167: // OneOrManyTypeFieldReference - case 248: // SymbolList + case 247: // SymbolList value.copy< std::vector > (v); break; @@ -3055,6 +3068,13 @@ namespace yy { , location (l) {} + template + asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const Parameter v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} + template asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const PrefixedType v, const location_type& l) : Base (t) @@ -3181,13 +3201,6 @@ namespace yy { , location (l) {} - template - asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const std::set v, const location_type& l) - : Base (t) - , value (v) - , location (l) - {} - template asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const std::string v, const location_type& l) : Base (t) @@ -3244,6 +3257,13 @@ namespace yy { , location (l) {} + template + asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l) + : Base (t) + , value (v) + , location (l) + {} + template asn1_parser::basic_symbol::basic_symbol (typename Base::kind_type t, const std::vector v, const location_type& l) : Base (t) @@ -3298,116 +3318,115 @@ namespace yy { case 204: // ParameterizedValueAssignment case 205: // ParameterizedValueSetTypeAssignment case 206: // ParameterizedObjectClassAssignment - case 207: // ParameterizedObjectAssignment - case 252: // Assignment - case 261: // TypeAssignment - case 262: // ValueAssignment - case 263: // ValueSetTypeAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.template destroy< Assignment > (); break; - case 284: // BitStringType + case 283: // BitStringType value.template destroy< BitStringType > (); break; - case 273: // BooleanType + case 272: // BooleanType value.template destroy< BooleanType > (); break; - case 265: // BuiltinType + case 264: // BuiltinType value.template destroy< BuiltinType > (); break; - case 329: // CharacterStringType + case 328: // CharacterStringType value.template destroy< CharacterStringType > (); break; - case 296: // ChoiceType + case 295: // ChoiceType value.template destroy< ChoiceType > (); break; - case 306: // Class + case 305: // Class value.template destroy< Class > (); break; - case 292: // ComponentType + case 291: // ComponentType value.template destroy< ComponentType > (); break; - case 290: // ComponentTypeLists - case 291: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.template destroy< ComponentTypeList > (); break; - case 327: // DateTimeType + case 326: // DateTimeType value.template destroy< DateTimeType > (); break; - case 325: // DateType + case 324: // DateType value.template destroy< DateType > (); break; - case 253: // DefinedType - case 255: // ParameterizedType - case 259: // ExternalTypeReference + case 252: // DefinedType + case 254: // ParameterizedType + case 258: // ExternalTypeReference value.template destroy< DefinedType > (); break; - case 254: // DefinedValue + case 253: // DefinedValue value.template destroy< DefinedValue > (); break; - case 328: // DurationType + case 327: // DurationType value.template destroy< DurationType > (); break; - case 321: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.template destroy< EmbeddedPDVType > (); break; - case 279: // EnumeratedType - case 280: // Enumerations - case 281: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.template destroy< EnumeratedType > (); break; - case 282: // EnumerationItem + case 281: // EnumerationItem value.template destroy< EnumerationValue > (); break; - case 322: // ExternalType + case 321: // ExternalType value.template destroy< ExternalType > (); break; - case 315: // IRIType + case 314: // IRIType value.template destroy< IRIType > (); break; - case 245: // SymbolsFromModule + case 244: // SymbolsFromModule value.template destroy< Import > (); break; - case 215: // InstanceOfType + case 214: // InstanceOfType value.template destroy< InstanceOfType > (); break; - case 275: // IntegerType + case 274: // IntegerType value.template destroy< IntegerType > (); break; - case 239: // ModuleBody + case 238: // ModuleBody value.template destroy< Module > (); break; - case 277: // NamedNumber + case 276: // NamedNumber value.template destroy< NamedNumber > (); break; - case 266: // NamedType + case 265: // NamedType value.template destroy< NamedType > (); break; - case 288: // NullType + case 287: // NullType value.template destroy< NullType > (); break; @@ -3420,83 +3439,89 @@ namespace yy { value.template destroy< ObjectClassFieldType > (); break; - case 310: // ObjIdComponents - case 311: // NameForm - case 312: // NumberForm - case 313: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.template destroy< ObjectIdComponentValue > (); break; - case 307: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.template destroy< ObjectIdentifierType > (); break; - case 287: // OctetStringType + case 286: // OctetStringType value.template destroy< OctetStringType > (); break; - case 301: // PrefixedType + case 209: // Parameter + value.template destroy< Parameter > (); + break; + + case 300: // PrefixedType value.template destroy< PrefixedType > (); break; - case 283: // RealType + case 282: // RealType value.template destroy< RealType > (); break; - case 320: // RelativeIRIType + case 319: // RelativeIRIType value.template destroy< RelativeIRIType > (); break; - case 314: // RelativeOIDType + case 313: // RelativeOIDType value.template destroy< RelativeOIDType > (); break; - case 293: // SequenceOfType + case 292: // SequenceOfType value.template destroy< SequenceOfType > (); break; - case 289: // SequenceType + case 288: // SequenceType value.template destroy< SequenceType > (); break; - case 295: // SetOfType + case 294: // SetOfType value.template destroy< SetOfType > (); break; - case 294: // SetType + case 293: // SetType value.template destroy< SetType > (); break; - case 303: // Tag + case 302: // Tag value.template destroy< Tag > (); break; - case 302: // TaggedType + case 301: // TaggedType value.template destroy< TaggedType > (); break; - case 237: // TagDefault + case 236: // TagDefault value.template destroy< TaggingMode > (); break; - case 326: // TimeOfDayType + case 325: // TimeOfDayType value.template destroy< TimeOfDayType > (); break; - case 323: // TimeType + case 322: // TimeType value.template destroy< TimeType > (); break; - case 258: // ActualParameter - case 264: // Type - case 332: // ConstrainedType - case 333: // TypeWithConstraint + case 210: // ParamGovernor + case 211: // Governor + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.template destroy< Type > (); break; - case 267: // ValueWithoutTypeIdentifier - case 268: // Value - case 350: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.template destroy< Value > (); break; @@ -3504,20 +3529,15 @@ namespace yy { value.template destroy< double > (); break; - case 305: // ClassNumber + case 304: // ClassNumber value.template destroy< int > (); break; case 4: // number - case 278: // SignedNumber + case 277: // SignedNumber value.template destroy< long long > (); break; - case 208: // ParameterList - case 209: // ParameterSeries - value.template destroy< std::set > (); - break; - case 6: // bstring case 7: // xmlbstring case 8: // hstring @@ -3533,22 +3553,21 @@ namespace yy { case 149: // GENERIC_IDENTIFIER_LOWERCASE case 158: // UsefulObjectClassReference case 164: // FieldName - case 210: // Parameter - case 216: // SimpleDefinedType - case 228: // ModuleIdentifier - case 246: // GlobalModuleReference - case 249: // Symbol - case 250: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.template destroy< std::string > (); break; - case 251: // AssignmentList + case 250: // AssignmentList value.template destroy< std::vector > (); break; @@ -3559,42 +3578,47 @@ namespace yy { value.template destroy< std::vector > (); break; - case 240: // Exports + case 239: // Exports value.template destroy< std::vector > (); break; - case 242: // Imports - case 243: // SymbolsImported - case 244: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.template destroy< std::vector > (); break; - case 276: // NamedNumberList + case 275: // NamedNumberList value.template destroy< std::vector > (); break; - case 297: // AlternativeTypeLists - case 298: // RootAlternativeTypeList - case 299: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.template destroy< std::vector > (); break; - case 308: // ObjectIdentifierValue - case 309: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.template destroy< std::vector > (); break; - case 257: // ActualParameterList + case 207: // ParameterList + case 208: // ParameterSeries + value.template destroy< std::vector > (); + break; + + case 256: // ActualParameterList value.template destroy< std::vector > (); break; - case 272: // SequenceOfValues + case 271: // SequenceOfValues value.template destroy< std::vector > (); break; case 165: // FieldNameList case 167: // OneOrManyTypeFieldReference - case 248: // SymbolList + case 247: // SymbolList value.template destroy< std::vector > (); break; @@ -3628,116 +3652,115 @@ namespace yy { case 204: // ParameterizedValueAssignment case 205: // ParameterizedValueSetTypeAssignment case 206: // ParameterizedObjectClassAssignment - case 207: // ParameterizedObjectAssignment - case 252: // Assignment - case 261: // TypeAssignment - case 262: // ValueAssignment - case 263: // ValueSetTypeAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.move< Assignment > (s.value); break; - case 284: // BitStringType + case 283: // BitStringType value.move< BitStringType > (s.value); break; - case 273: // BooleanType + case 272: // BooleanType value.move< BooleanType > (s.value); break; - case 265: // BuiltinType + case 264: // BuiltinType value.move< BuiltinType > (s.value); break; - case 329: // CharacterStringType + case 328: // CharacterStringType value.move< CharacterStringType > (s.value); break; - case 296: // ChoiceType + case 295: // ChoiceType value.move< ChoiceType > (s.value); break; - case 306: // Class + case 305: // Class value.move< Class > (s.value); break; - case 292: // ComponentType + case 291: // ComponentType value.move< ComponentType > (s.value); break; - case 290: // ComponentTypeLists - case 291: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.move< ComponentTypeList > (s.value); break; - case 327: // DateTimeType + case 326: // DateTimeType value.move< DateTimeType > (s.value); break; - case 325: // DateType + case 324: // DateType value.move< DateType > (s.value); break; - case 253: // DefinedType - case 255: // ParameterizedType - case 259: // ExternalTypeReference + case 252: // DefinedType + case 254: // ParameterizedType + case 258: // ExternalTypeReference value.move< DefinedType > (s.value); break; - case 254: // DefinedValue + case 253: // DefinedValue value.move< DefinedValue > (s.value); break; - case 328: // DurationType + case 327: // DurationType value.move< DurationType > (s.value); break; - case 321: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.move< EmbeddedPDVType > (s.value); break; - case 279: // EnumeratedType - case 280: // Enumerations - case 281: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.move< EnumeratedType > (s.value); break; - case 282: // EnumerationItem + case 281: // EnumerationItem value.move< EnumerationValue > (s.value); break; - case 322: // ExternalType + case 321: // ExternalType value.move< ExternalType > (s.value); break; - case 315: // IRIType + case 314: // IRIType value.move< IRIType > (s.value); break; - case 245: // SymbolsFromModule + case 244: // SymbolsFromModule value.move< Import > (s.value); break; - case 215: // InstanceOfType + case 214: // InstanceOfType value.move< InstanceOfType > (s.value); break; - case 275: // IntegerType + case 274: // IntegerType value.move< IntegerType > (s.value); break; - case 239: // ModuleBody + case 238: // ModuleBody value.move< Module > (s.value); break; - case 277: // NamedNumber + case 276: // NamedNumber value.move< NamedNumber > (s.value); break; - case 266: // NamedType + case 265: // NamedType value.move< NamedType > (s.value); break; - case 288: // NullType + case 287: // NullType value.move< NullType > (s.value); break; @@ -3750,83 +3773,89 @@ namespace yy { value.move< ObjectClassFieldType > (s.value); break; - case 310: // ObjIdComponents - case 311: // NameForm - case 312: // NumberForm - case 313: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.move< ObjectIdComponentValue > (s.value); break; - case 307: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.move< ObjectIdentifierType > (s.value); break; - case 287: // OctetStringType + case 286: // OctetStringType value.move< OctetStringType > (s.value); break; - case 301: // PrefixedType + case 209: // Parameter + value.move< Parameter > (s.value); + break; + + case 300: // PrefixedType value.move< PrefixedType > (s.value); break; - case 283: // RealType + case 282: // RealType value.move< RealType > (s.value); break; - case 320: // RelativeIRIType + case 319: // RelativeIRIType value.move< RelativeIRIType > (s.value); break; - case 314: // RelativeOIDType + case 313: // RelativeOIDType value.move< RelativeOIDType > (s.value); break; - case 293: // SequenceOfType + case 292: // SequenceOfType value.move< SequenceOfType > (s.value); break; - case 289: // SequenceType + case 288: // SequenceType value.move< SequenceType > (s.value); break; - case 295: // SetOfType + case 294: // SetOfType value.move< SetOfType > (s.value); break; - case 294: // SetType + case 293: // SetType value.move< SetType > (s.value); break; - case 303: // Tag + case 302: // Tag value.move< Tag > (s.value); break; - case 302: // TaggedType + case 301: // TaggedType value.move< TaggedType > (s.value); break; - case 237: // TagDefault + case 236: // TagDefault value.move< TaggingMode > (s.value); break; - case 326: // TimeOfDayType + case 325: // TimeOfDayType value.move< TimeOfDayType > (s.value); break; - case 323: // TimeType + case 322: // TimeType value.move< TimeType > (s.value); break; - case 258: // ActualParameter - case 264: // Type - case 332: // ConstrainedType - case 333: // TypeWithConstraint + case 210: // ParamGovernor + case 211: // Governor + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.move< Type > (s.value); break; - case 267: // ValueWithoutTypeIdentifier - case 268: // Value - case 350: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.move< Value > (s.value); break; @@ -3834,20 +3863,15 @@ namespace yy { value.move< double > (s.value); break; - case 305: // ClassNumber + case 304: // ClassNumber value.move< int > (s.value); break; case 4: // number - case 278: // SignedNumber + case 277: // SignedNumber value.move< long long > (s.value); break; - case 208: // ParameterList - case 209: // ParameterSeries - value.move< std::set > (s.value); - break; - case 6: // bstring case 7: // xmlbstring case 8: // hstring @@ -3863,22 +3887,21 @@ namespace yy { case 149: // GENERIC_IDENTIFIER_LOWERCASE case 158: // UsefulObjectClassReference case 164: // FieldName - case 210: // Parameter - case 216: // SimpleDefinedType - case 228: // ModuleIdentifier - case 246: // GlobalModuleReference - case 249: // Symbol - case 250: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.move< std::string > (s.value); break; - case 251: // AssignmentList + case 250: // AssignmentList value.move< std::vector > (s.value); break; @@ -3889,42 +3912,47 @@ namespace yy { value.move< std::vector > (s.value); break; - case 240: // Exports + case 239: // Exports value.move< std::vector > (s.value); break; - case 242: // Imports - case 243: // SymbolsImported - case 244: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.move< std::vector > (s.value); break; - case 276: // NamedNumberList + case 275: // NamedNumberList value.move< std::vector > (s.value); break; - case 297: // AlternativeTypeLists - case 298: // RootAlternativeTypeList - case 299: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.move< std::vector > (s.value); break; - case 308: // ObjectIdentifierValue - case 309: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.move< std::vector > (s.value); break; - case 257: // ActualParameterList + case 207: // ParameterList + case 208: // ParameterSeries + value.move< std::vector > (s.value); + break; + + case 256: // ActualParameterList value.move< std::vector > (s.value); break; - case 272: // SequenceOfValues + case 271: // SequenceOfValues value.move< std::vector > (s.value); break; case 165: // FieldNameList case 167: // OneOrManyTypeFieldReference - case 248: // SymbolList + case 247: // SymbolList value.move< std::vector > (s.value); break; @@ -4888,7 +4916,7 @@ namespace yy { } // yy -#line 4890 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 4918 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 @@ -4896,7 +4924,7 @@ namespace yy { // User implementation prologue. -#line 4898 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 +#line 4926 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 // Unqualified %code blocks. #line 15 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:413 @@ -4915,7 +4943,7 @@ namespace yy { namespace yy { asn1_parser::symbol_type yylex(Context& c); } -#line 4917 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 +#line 4945 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 #ifndef YY_ @@ -5001,7 +5029,7 @@ namespace yy { namespace yy { -#line 5003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 +#line 5031 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 /* Return YYSTR after stripping away unnecessary quotes and backslashes, so that it's suitable for yyerror. The heuristic is @@ -5120,116 +5148,115 @@ namespace yy { case 204: // ParameterizedValueAssignment case 205: // ParameterizedValueSetTypeAssignment case 206: // ParameterizedObjectClassAssignment - case 207: // ParameterizedObjectAssignment - case 252: // Assignment - case 261: // TypeAssignment - case 262: // ValueAssignment - case 263: // ValueSetTypeAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.move< Assignment > (that.value); break; - case 284: // BitStringType + case 283: // BitStringType value.move< BitStringType > (that.value); break; - case 273: // BooleanType + case 272: // BooleanType value.move< BooleanType > (that.value); break; - case 265: // BuiltinType + case 264: // BuiltinType value.move< BuiltinType > (that.value); break; - case 329: // CharacterStringType + case 328: // CharacterStringType value.move< CharacterStringType > (that.value); break; - case 296: // ChoiceType + case 295: // ChoiceType value.move< ChoiceType > (that.value); break; - case 306: // Class + case 305: // Class value.move< Class > (that.value); break; - case 292: // ComponentType + case 291: // ComponentType value.move< ComponentType > (that.value); break; - case 290: // ComponentTypeLists - case 291: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.move< ComponentTypeList > (that.value); break; - case 327: // DateTimeType + case 326: // DateTimeType value.move< DateTimeType > (that.value); break; - case 325: // DateType + case 324: // DateType value.move< DateType > (that.value); break; - case 253: // DefinedType - case 255: // ParameterizedType - case 259: // ExternalTypeReference + case 252: // DefinedType + case 254: // ParameterizedType + case 258: // ExternalTypeReference value.move< DefinedType > (that.value); break; - case 254: // DefinedValue + case 253: // DefinedValue value.move< DefinedValue > (that.value); break; - case 328: // DurationType + case 327: // DurationType value.move< DurationType > (that.value); break; - case 321: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.move< EmbeddedPDVType > (that.value); break; - case 279: // EnumeratedType - case 280: // Enumerations - case 281: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.move< EnumeratedType > (that.value); break; - case 282: // EnumerationItem + case 281: // EnumerationItem value.move< EnumerationValue > (that.value); break; - case 322: // ExternalType + case 321: // ExternalType value.move< ExternalType > (that.value); break; - case 315: // IRIType + case 314: // IRIType value.move< IRIType > (that.value); break; - case 245: // SymbolsFromModule + case 244: // SymbolsFromModule value.move< Import > (that.value); break; - case 215: // InstanceOfType + case 214: // InstanceOfType value.move< InstanceOfType > (that.value); break; - case 275: // IntegerType + case 274: // IntegerType value.move< IntegerType > (that.value); break; - case 239: // ModuleBody + case 238: // ModuleBody value.move< Module > (that.value); break; - case 277: // NamedNumber + case 276: // NamedNumber value.move< NamedNumber > (that.value); break; - case 266: // NamedType + case 265: // NamedType value.move< NamedType > (that.value); break; - case 288: // NullType + case 287: // NullType value.move< NullType > (that.value); break; @@ -5242,83 +5269,89 @@ namespace yy { value.move< ObjectClassFieldType > (that.value); break; - case 310: // ObjIdComponents - case 311: // NameForm - case 312: // NumberForm - case 313: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.move< ObjectIdComponentValue > (that.value); break; - case 307: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.move< ObjectIdentifierType > (that.value); break; - case 287: // OctetStringType + case 286: // OctetStringType value.move< OctetStringType > (that.value); break; - case 301: // PrefixedType + case 209: // Parameter + value.move< Parameter > (that.value); + break; + + case 300: // PrefixedType value.move< PrefixedType > (that.value); break; - case 283: // RealType + case 282: // RealType value.move< RealType > (that.value); break; - case 320: // RelativeIRIType + case 319: // RelativeIRIType value.move< RelativeIRIType > (that.value); break; - case 314: // RelativeOIDType + case 313: // RelativeOIDType value.move< RelativeOIDType > (that.value); break; - case 293: // SequenceOfType + case 292: // SequenceOfType value.move< SequenceOfType > (that.value); break; - case 289: // SequenceType + case 288: // SequenceType value.move< SequenceType > (that.value); break; - case 295: // SetOfType + case 294: // SetOfType value.move< SetOfType > (that.value); break; - case 294: // SetType + case 293: // SetType value.move< SetType > (that.value); break; - case 303: // Tag + case 302: // Tag value.move< Tag > (that.value); break; - case 302: // TaggedType + case 301: // TaggedType value.move< TaggedType > (that.value); break; - case 237: // TagDefault + case 236: // TagDefault value.move< TaggingMode > (that.value); break; - case 326: // TimeOfDayType + case 325: // TimeOfDayType value.move< TimeOfDayType > (that.value); break; - case 323: // TimeType + case 322: // TimeType value.move< TimeType > (that.value); break; - case 258: // ActualParameter - case 264: // Type - case 332: // ConstrainedType - case 333: // TypeWithConstraint + case 210: // ParamGovernor + case 211: // Governor + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.move< Type > (that.value); break; - case 267: // ValueWithoutTypeIdentifier - case 268: // Value - case 350: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.move< Value > (that.value); break; @@ -5326,20 +5359,15 @@ namespace yy { value.move< double > (that.value); break; - case 305: // ClassNumber + case 304: // ClassNumber value.move< int > (that.value); break; case 4: // number - case 278: // SignedNumber + case 277: // SignedNumber value.move< long long > (that.value); break; - case 208: // ParameterList - case 209: // ParameterSeries - value.move< std::set > (that.value); - break; - case 6: // bstring case 7: // xmlbstring case 8: // hstring @@ -5355,22 +5383,21 @@ namespace yy { case 149: // GENERIC_IDENTIFIER_LOWERCASE case 158: // UsefulObjectClassReference case 164: // FieldName - case 210: // Parameter - case 216: // SimpleDefinedType - case 228: // ModuleIdentifier - case 246: // GlobalModuleReference - case 249: // Symbol - case 250: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.move< std::string > (that.value); break; - case 251: // AssignmentList + case 250: // AssignmentList value.move< std::vector > (that.value); break; @@ -5381,42 +5408,47 @@ namespace yy { value.move< std::vector > (that.value); break; - case 240: // Exports + case 239: // Exports value.move< std::vector > (that.value); break; - case 242: // Imports - case 243: // SymbolsImported - case 244: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.move< std::vector > (that.value); break; - case 276: // NamedNumberList + case 275: // NamedNumberList value.move< std::vector > (that.value); break; - case 297: // AlternativeTypeLists - case 298: // RootAlternativeTypeList - case 299: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.move< std::vector > (that.value); break; - case 308: // ObjectIdentifierValue - case 309: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.move< std::vector > (that.value); break; - case 257: // ActualParameterList + case 207: // ParameterList + case 208: // ParameterSeries + value.move< std::vector > (that.value); + break; + + case 256: // ActualParameterList value.move< std::vector > (that.value); break; - case 272: // SequenceOfValues + case 271: // SequenceOfValues value.move< std::vector > (that.value); break; case 165: // FieldNameList case 167: // OneOrManyTypeFieldReference - case 248: // SymbolList + case 247: // SymbolList value.move< std::vector > (that.value); break; @@ -5442,116 +5474,115 @@ namespace yy { case 204: // ParameterizedValueAssignment case 205: // ParameterizedValueSetTypeAssignment case 206: // ParameterizedObjectClassAssignment - case 207: // ParameterizedObjectAssignment - case 252: // Assignment - case 261: // TypeAssignment - case 262: // ValueAssignment - case 263: // ValueSetTypeAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment value.copy< Assignment > (that.value); break; - case 284: // BitStringType + case 283: // BitStringType value.copy< BitStringType > (that.value); break; - case 273: // BooleanType + case 272: // BooleanType value.copy< BooleanType > (that.value); break; - case 265: // BuiltinType + case 264: // BuiltinType value.copy< BuiltinType > (that.value); break; - case 329: // CharacterStringType + case 328: // CharacterStringType value.copy< CharacterStringType > (that.value); break; - case 296: // ChoiceType + case 295: // ChoiceType value.copy< ChoiceType > (that.value); break; - case 306: // Class + case 305: // Class value.copy< Class > (that.value); break; - case 292: // ComponentType + case 291: // ComponentType value.copy< ComponentType > (that.value); break; - case 290: // ComponentTypeLists - case 291: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList value.copy< ComponentTypeList > (that.value); break; - case 327: // DateTimeType + case 326: // DateTimeType value.copy< DateTimeType > (that.value); break; - case 325: // DateType + case 324: // DateType value.copy< DateType > (that.value); break; - case 253: // DefinedType - case 255: // ParameterizedType - case 259: // ExternalTypeReference + case 252: // DefinedType + case 254: // ParameterizedType + case 258: // ExternalTypeReference value.copy< DefinedType > (that.value); break; - case 254: // DefinedValue + case 253: // DefinedValue value.copy< DefinedValue > (that.value); break; - case 328: // DurationType + case 327: // DurationType value.copy< DurationType > (that.value); break; - case 321: // EmbeddedPDVType + case 320: // EmbeddedPDVType value.copy< EmbeddedPDVType > (that.value); break; - case 279: // EnumeratedType - case 280: // Enumerations - case 281: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration value.copy< EnumeratedType > (that.value); break; - case 282: // EnumerationItem + case 281: // EnumerationItem value.copy< EnumerationValue > (that.value); break; - case 322: // ExternalType + case 321: // ExternalType value.copy< ExternalType > (that.value); break; - case 315: // IRIType + case 314: // IRIType value.copy< IRIType > (that.value); break; - case 245: // SymbolsFromModule + case 244: // SymbolsFromModule value.copy< Import > (that.value); break; - case 215: // InstanceOfType + case 214: // InstanceOfType value.copy< InstanceOfType > (that.value); break; - case 275: // IntegerType + case 274: // IntegerType value.copy< IntegerType > (that.value); break; - case 239: // ModuleBody + case 238: // ModuleBody value.copy< Module > (that.value); break; - case 277: // NamedNumber + case 276: // NamedNumber value.copy< NamedNumber > (that.value); break; - case 266: // NamedType + case 265: // NamedType value.copy< NamedType > (that.value); break; - case 288: // NullType + case 287: // NullType value.copy< NullType > (that.value); break; @@ -5564,83 +5595,89 @@ namespace yy { value.copy< ObjectClassFieldType > (that.value); break; - case 310: // ObjIdComponents - case 311: // NameForm - case 312: // NumberForm - case 313: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm value.copy< ObjectIdComponentValue > (that.value); break; - case 307: // ObjectIdentifierType + case 306: // ObjectIdentifierType value.copy< ObjectIdentifierType > (that.value); break; - case 287: // OctetStringType + case 286: // OctetStringType value.copy< OctetStringType > (that.value); break; - case 301: // PrefixedType + case 209: // Parameter + value.copy< Parameter > (that.value); + break; + + case 300: // PrefixedType value.copy< PrefixedType > (that.value); break; - case 283: // RealType + case 282: // RealType value.copy< RealType > (that.value); break; - case 320: // RelativeIRIType + case 319: // RelativeIRIType value.copy< RelativeIRIType > (that.value); break; - case 314: // RelativeOIDType + case 313: // RelativeOIDType value.copy< RelativeOIDType > (that.value); break; - case 293: // SequenceOfType + case 292: // SequenceOfType value.copy< SequenceOfType > (that.value); break; - case 289: // SequenceType + case 288: // SequenceType value.copy< SequenceType > (that.value); break; - case 295: // SetOfType + case 294: // SetOfType value.copy< SetOfType > (that.value); break; - case 294: // SetType + case 293: // SetType value.copy< SetType > (that.value); break; - case 303: // Tag + case 302: // Tag value.copy< Tag > (that.value); break; - case 302: // TaggedType + case 301: // TaggedType value.copy< TaggedType > (that.value); break; - case 237: // TagDefault + case 236: // TagDefault value.copy< TaggingMode > (that.value); break; - case 326: // TimeOfDayType + case 325: // TimeOfDayType value.copy< TimeOfDayType > (that.value); break; - case 323: // TimeType + case 322: // TimeType value.copy< TimeType > (that.value); break; - case 258: // ActualParameter - case 264: // Type - case 332: // ConstrainedType - case 333: // TypeWithConstraint + case 210: // ParamGovernor + case 211: // Governor + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint value.copy< Type > (that.value); break; - case 267: // ValueWithoutTypeIdentifier - case 268: // Value - case 350: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue value.copy< Value > (that.value); break; @@ -5648,20 +5685,15 @@ namespace yy { value.copy< double > (that.value); break; - case 305: // ClassNumber + case 304: // ClassNumber value.copy< int > (that.value); break; case 4: // number - case 278: // SignedNumber + case 277: // SignedNumber value.copy< long long > (that.value); break; - case 208: // ParameterList - case 209: // ParameterSeries - value.copy< std::set > (that.value); - break; - case 6: // bstring case 7: // xmlbstring case 8: // hstring @@ -5677,22 +5709,21 @@ namespace yy { case 149: // GENERIC_IDENTIFIER_LOWERCASE case 158: // UsefulObjectClassReference case 164: // FieldName - case 210: // Parameter - case 216: // SimpleDefinedType - case 228: // ModuleIdentifier - case 246: // GlobalModuleReference - case 249: // Symbol - case 250: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word value.copy< std::string > (that.value); break; - case 251: // AssignmentList + case 250: // AssignmentList value.copy< std::vector > (that.value); break; @@ -5703,42 +5734,47 @@ namespace yy { value.copy< std::vector > (that.value); break; - case 240: // Exports + case 239: // Exports value.copy< std::vector > (that.value); break; - case 242: // Imports - case 243: // SymbolsImported - case 244: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList value.copy< std::vector > (that.value); break; - case 276: // NamedNumberList + case 275: // NamedNumberList value.copy< std::vector > (that.value); break; - case 297: // AlternativeTypeLists - case 298: // RootAlternativeTypeList - case 299: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList value.copy< std::vector > (that.value); break; - case 308: // ObjectIdentifierValue - case 309: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList value.copy< std::vector > (that.value); break; - case 257: // ActualParameterList + case 207: // ParameterList + case 208: // ParameterSeries + value.copy< std::vector > (that.value); + break; + + case 256: // ActualParameterList value.copy< std::vector > (that.value); break; - case 272: // SequenceOfValues + case 271: // SequenceOfValues value.copy< std::vector > (that.value); break; case 165: // FieldNameList case 167: // OneOrManyTypeFieldReference - case 248: // SymbolList + case 247: // SymbolList value.copy< std::vector > (that.value); break; @@ -5977,116 +6013,115 @@ namespace yy { case 204: // ParameterizedValueAssignment case 205: // ParameterizedValueSetTypeAssignment case 206: // ParameterizedObjectClassAssignment - case 207: // ParameterizedObjectAssignment - case 252: // Assignment - case 261: // TypeAssignment - case 262: // ValueAssignment - case 263: // ValueSetTypeAssignment + case 251: // Assignment + case 260: // TypeAssignment + case 261: // ValueAssignment + case 262: // ValueSetTypeAssignment yylhs.value.build< Assignment > (); break; - case 284: // BitStringType + case 283: // BitStringType yylhs.value.build< BitStringType > (); break; - case 273: // BooleanType + case 272: // BooleanType yylhs.value.build< BooleanType > (); break; - case 265: // BuiltinType + case 264: // BuiltinType yylhs.value.build< BuiltinType > (); break; - case 329: // CharacterStringType + case 328: // CharacterStringType yylhs.value.build< CharacterStringType > (); break; - case 296: // ChoiceType + case 295: // ChoiceType yylhs.value.build< ChoiceType > (); break; - case 306: // Class + case 305: // Class yylhs.value.build< Class > (); break; - case 292: // ComponentType + case 291: // ComponentType yylhs.value.build< ComponentType > (); break; - case 290: // ComponentTypeLists - case 291: // ComponentTypeList + case 289: // ComponentTypeLists + case 290: // ComponentTypeList yylhs.value.build< ComponentTypeList > (); break; - case 327: // DateTimeType + case 326: // DateTimeType yylhs.value.build< DateTimeType > (); break; - case 325: // DateType + case 324: // DateType yylhs.value.build< DateType > (); break; - case 253: // DefinedType - case 255: // ParameterizedType - case 259: // ExternalTypeReference + case 252: // DefinedType + case 254: // ParameterizedType + case 258: // ExternalTypeReference yylhs.value.build< DefinedType > (); break; - case 254: // DefinedValue + case 253: // DefinedValue yylhs.value.build< DefinedValue > (); break; - case 328: // DurationType + case 327: // DurationType yylhs.value.build< DurationType > (); break; - case 321: // EmbeddedPDVType + case 320: // EmbeddedPDVType yylhs.value.build< EmbeddedPDVType > (); break; - case 279: // EnumeratedType - case 280: // Enumerations - case 281: // Enumeration + case 278: // EnumeratedType + case 279: // Enumerations + case 280: // Enumeration yylhs.value.build< EnumeratedType > (); break; - case 282: // EnumerationItem + case 281: // EnumerationItem yylhs.value.build< EnumerationValue > (); break; - case 322: // ExternalType + case 321: // ExternalType yylhs.value.build< ExternalType > (); break; - case 315: // IRIType + case 314: // IRIType yylhs.value.build< IRIType > (); break; - case 245: // SymbolsFromModule + case 244: // SymbolsFromModule yylhs.value.build< Import > (); break; - case 215: // InstanceOfType + case 214: // InstanceOfType yylhs.value.build< InstanceOfType > (); break; - case 275: // IntegerType + case 274: // IntegerType yylhs.value.build< IntegerType > (); break; - case 239: // ModuleBody + case 238: // ModuleBody yylhs.value.build< Module > (); break; - case 277: // NamedNumber + case 276: // NamedNumber yylhs.value.build< NamedNumber > (); break; - case 266: // NamedType + case 265: // NamedType yylhs.value.build< NamedType > (); break; - case 288: // NullType + case 287: // NullType yylhs.value.build< NullType > (); break; @@ -6099,83 +6134,89 @@ namespace yy { yylhs.value.build< ObjectClassFieldType > (); break; - case 310: // ObjIdComponents - case 311: // NameForm - case 312: // NumberForm - case 313: // NameAndNumberForm + case 309: // ObjIdComponents + case 310: // NameForm + case 311: // NumberForm + case 312: // NameAndNumberForm yylhs.value.build< ObjectIdComponentValue > (); break; - case 307: // ObjectIdentifierType + case 306: // ObjectIdentifierType yylhs.value.build< ObjectIdentifierType > (); break; - case 287: // OctetStringType + case 286: // OctetStringType yylhs.value.build< OctetStringType > (); break; - case 301: // PrefixedType + case 209: // Parameter + yylhs.value.build< Parameter > (); + break; + + case 300: // PrefixedType yylhs.value.build< PrefixedType > (); break; - case 283: // RealType + case 282: // RealType yylhs.value.build< RealType > (); break; - case 320: // RelativeIRIType + case 319: // RelativeIRIType yylhs.value.build< RelativeIRIType > (); break; - case 314: // RelativeOIDType + case 313: // RelativeOIDType yylhs.value.build< RelativeOIDType > (); break; - case 293: // SequenceOfType + case 292: // SequenceOfType yylhs.value.build< SequenceOfType > (); break; - case 289: // SequenceType + case 288: // SequenceType yylhs.value.build< SequenceType > (); break; - case 295: // SetOfType + case 294: // SetOfType yylhs.value.build< SetOfType > (); break; - case 294: // SetType + case 293: // SetType yylhs.value.build< SetType > (); break; - case 303: // Tag + case 302: // Tag yylhs.value.build< Tag > (); break; - case 302: // TaggedType + case 301: // TaggedType yylhs.value.build< TaggedType > (); break; - case 237: // TagDefault + case 236: // TagDefault yylhs.value.build< TaggingMode > (); break; - case 326: // TimeOfDayType + case 325: // TimeOfDayType yylhs.value.build< TimeOfDayType > (); break; - case 323: // TimeType + case 322: // TimeType yylhs.value.build< TimeType > (); break; - case 258: // ActualParameter - case 264: // Type - case 332: // ConstrainedType - case 333: // TypeWithConstraint + case 210: // ParamGovernor + case 211: // Governor + case 257: // ActualParameter + case 263: // Type + case 331: // ConstrainedType + case 332: // TypeWithConstraint yylhs.value.build< Type > (); break; - case 267: // ValueWithoutTypeIdentifier - case 268: // Value - case 350: // SingleValue + case 266: // ValueWithoutTypeIdentifier + case 267: // Value + case 349: // SingleValue yylhs.value.build< Value > (); break; @@ -6183,20 +6224,15 @@ namespace yy { yylhs.value.build< double > (); break; - case 305: // ClassNumber + case 304: // ClassNumber yylhs.value.build< int > (); break; case 4: // number - case 278: // SignedNumber + case 277: // SignedNumber yylhs.value.build< long long > (); break; - case 208: // ParameterList - case 209: // ParameterSeries - yylhs.value.build< std::set > (); - break; - case 6: // bstring case 7: // xmlbstring case 8: // hstring @@ -6212,22 +6248,21 @@ namespace yy { case 149: // GENERIC_IDENTIFIER_LOWERCASE case 158: // UsefulObjectClassReference case 164: // FieldName - case 210: // Parameter - case 216: // SimpleDefinedType - case 228: // ModuleIdentifier - case 246: // GlobalModuleReference - case 249: // Symbol - case 250: // Reference - case 373: // typereference - case 374: // identifier - case 375: // valuereference - case 376: // modulereference - case 377: // objectclassreference - case 378: // word + case 215: // SimpleDefinedType + case 227: // ModuleIdentifier + case 245: // GlobalModuleReference + case 248: // Symbol + case 249: // Reference + case 372: // typereference + case 373: // identifier + case 374: // valuereference + case 375: // modulereference + case 376: // objectclassreference + case 377: // word yylhs.value.build< std::string > (); break; - case 251: // AssignmentList + case 250: // AssignmentList yylhs.value.build< std::vector > (); break; @@ -6238,42 +6273,47 @@ namespace yy { yylhs.value.build< std::vector > (); break; - case 240: // Exports + case 239: // Exports yylhs.value.build< std::vector > (); break; - case 242: // Imports - case 243: // SymbolsImported - case 244: // SymbolsFromModuleList + case 241: // Imports + case 242: // SymbolsImported + case 243: // SymbolsFromModuleList yylhs.value.build< std::vector > (); break; - case 276: // NamedNumberList + case 275: // NamedNumberList yylhs.value.build< std::vector > (); break; - case 297: // AlternativeTypeLists - case 298: // RootAlternativeTypeList - case 299: // AlternativeTypeList + case 296: // AlternativeTypeLists + case 297: // RootAlternativeTypeList + case 298: // AlternativeTypeList yylhs.value.build< std::vector > (); break; - case 308: // ObjectIdentifierValue - case 309: // ObjIdComponentsList + case 307: // ObjectIdentifierValue + case 308: // ObjIdComponentsList yylhs.value.build< std::vector > (); break; - case 257: // ActualParameterList + case 207: // ParameterList + case 208: // ParameterSeries + yylhs.value.build< std::vector > (); + break; + + case 256: // ActualParameterList yylhs.value.build< std::vector > (); break; - case 272: // SequenceOfValues + case 271: // SequenceOfValues yylhs.value.build< std::vector > (); break; case 165: // FieldNameList case 167: // OneOrManyTypeFieldReference - case 248: // SymbolList + case 247: // SymbolList yylhs.value.build< std::vector > (); break; @@ -6295,1360 +6335,1372 @@ namespace yy { switch (yyn) { case 4: -#line 333 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 335 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< Module > ().module_reference = yystack_[9].value.as< std::string > (); yystack_[2].value.as< Module > ().tagging_default = yystack_[6].value.as< TaggingMode > (); context.asn1_tree.modules.push_back(yystack_[2].value.as< Module > ()); } -#line 6301 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6341 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 10: -#line 350 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 352 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = "TYPE-IDENTIFIER"; } -#line 6307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6347 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 11: -#line 352 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 354 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = "TYPE-IDENTIFIER"; } -#line 6313 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6353 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 12: -#line 356 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 358 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[2].value.as< std::string > (), yystack_[0].value.as< ObjectClassAssignment > ()}; } -#line 6319 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6359 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 13: -#line 360 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 362 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning - Unhandled DefinedObjectClass\n"; } -#line 6325 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6365 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 14: -#line 362 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 364 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassAssignment > () = yystack_[0].value.as< ObjectClassAssignment > (); } -#line 6331 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6371 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 15: -#line 367 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 369 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassAssignment > () = {yystack_[2].value.as< std::vector > ()}; } -#line 6337 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6377 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 16: -#line 371 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 373 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6343 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6383 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 17: -#line 373 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 375 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().insert(yylhs.value.as< std::vector > ().end(), yystack_[0].value.as< std::vector > ().begin(), yystack_[0].value.as< std::vector > ().end()); } -#line 6349 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6389 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 18: -#line 377 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 379 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6395 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 19: -#line 379 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 381 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6361 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6401 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 24: -#line 387 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 389 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6407 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 25: -#line 389 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 391 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6373 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6413 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 26: -#line 397 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 399 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6379 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6419 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 27: -#line 399 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 401 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6385 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6425 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 28: -#line 403 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 405 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { for (const std::string& name : yystack_[1].value.as< std::vector > ()) yylhs.value.as< std::vector > ().push_back(ClassField{name, TypeField{}}); } -#line 6391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6431 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 29: -#line 407 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 409 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6397 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6437 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 30: -#line 409 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 411 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6403 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6443 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 37: -#line 423 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 425 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(ClassField{yystack_[3].value.as< std::string > (), FixedTypeValueField{yystack_[2].value.as< Type > ()}}); } -#line 6409 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6449 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 86: -#line 538 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 540 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[3].value.as< std::string > (), ObjectSetAssignment{}}; } -#line 6415 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6455 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 93: -#line 558 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 560 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassFieldType > () = {DefinedType{{}, }, yystack_[0].value.as< std::vector > ()}; } -#line 6421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6461 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 94: -#line 560 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 562 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassFieldType > () = {DefinedType{{}, yystack_[2].value.as< std::string > ()}, yystack_[0].value.as< std::vector > ()}; } -#line 6427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6467 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 95: -#line 567 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6473 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 96: -#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 571 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6439 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6479 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 97: -#line 571 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 573 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6445 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6485 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 98: -#line 573 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 575 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6451 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 99: -#line 575 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6457 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 582 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {}, yystack_[2].value.as< std::vector > () }; } +#line 6497 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 100: -#line 580 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {}, yystack_[2].value.as< std::set > () }; } -#line 6463 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 586 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } +#line 6503 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 101: -#line 584 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 590 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6509 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 102: -#line 588 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6475 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 594 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ObjectClassAssignment{} }; } +#line 6515 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 103: -#line 592 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6481 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 606 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } +#line 6521 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 104: -#line 596 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 610 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Parameter > ()); } +#line 6527 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 105: -#line 604 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::set > () = yystack_[1].value.as< std::set > (); } -#line 6493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 612 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yystack_[2].value.as< std::vector > ().push_back(yystack_[0].value.as< Parameter > ()); } +#line 6533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 106: -#line 608 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6499 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 616 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Parameter > () = Parameter{yystack_[2].value.as< Type > (), yystack_[0].value.as< std::string > ()}; } +#line 6539 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 107: -#line 610 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::set > () = yystack_[2].value.as< std::set > (); yystack_[2].value.as< std::set > ().insert(yystack_[0].value.as< std::string > ()); } -#line 6505 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 618 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Parameter > () = Parameter{{}, yystack_[0].value.as< std::string > ()}; } +#line 6545 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 108: -#line 614 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6511 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 622 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } +#line 6551 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 109: -#line 616 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 624 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = DefinedType{{}, yystack_[0].value.as< std::string > ()}; } +#line 6557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 110: +#line 628 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } +#line 6563 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 111: +#line 630 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { } +#line 6569 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 118: -#line 669 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 116: +#line 675 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6523 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6575 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 132: -#line 694 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 130: +#line 700 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Simple constraint\n"; } -#line 6529 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6581 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 133: -#line 696 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 131: +#line 702 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Relation constraint\n"; } -#line 6535 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6587 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 146: -#line 738 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 144: +#line 744 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6595 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 161: -#line 777 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 159: +#line 783 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6601 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 162: -#line 779 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 160: +#line 785 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::implicit; } -#line 6555 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 163: -#line 781 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 161: +#line 787 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::automatic; } -#line 6561 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6613 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 164: -#line 783 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 162: +#line 789 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 167: -#line 791 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 165: +#line 797 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Module > () = Module{ {}, TaggingMode(), yystack_[2].value.as< std::vector > (), yystack_[1].value.as< std::vector > (), yystack_[0].value.as< std::vector > ()}; } -#line 6573 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6625 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 168: -#line 793 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 166: +#line 799 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { } -#line 6579 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6631 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 174: -#line 806 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 172: +#line 812 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } -#line 6585 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6637 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 176: -#line 811 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 174: +#line 817 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 178: -#line 816 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 176: +#line 822 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6597 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6649 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 179: -#line 818 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 177: +#line 824 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6603 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 180: -#line 822 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 178: +#line 828 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Import > () = Import{ yystack_[0].value.as< std::string > (), yystack_[2].value.as< std::vector > () }; } -#line 6609 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6661 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 181: -#line 826 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 179: +#line 832 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6667 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 185: -#line 835 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 183: +#line 841 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6621 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6673 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 186: -#line 837 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 184: +#line 843 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6627 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6679 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 187: -#line 841 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 185: +#line 847 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } +#line 6685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 186: +#line 851 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6633 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 + break; + + case 187: +#line 853 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::string > () = yystack_[2].value.as< std::string > (); } +#line 6697 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 188: -#line 845 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 855 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6639 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6703 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 189: -#line 847 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::string > () = yystack_[2].value.as< std::string > (); } -#line 6645 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 864 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } +#line 6709 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 190: -#line 849 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6651 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 866 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Assignment > ()); } +#line 6715 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 191: -#line 858 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } -#line 6657 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 870 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } +#line 6721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 192: -#line 860 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Assignment > ()); } -#line 6663 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 872 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } +#line 6727 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 193: -#line 864 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 874 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6669 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6733 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 194: -#line 866 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 876 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6675 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6739 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 195: -#line 868 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 879 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6681 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6745 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 196: -#line 870 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 881 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6687 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6751 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 197: -#line 873 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6693 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 885 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } +#line 6757 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 198: -#line 875 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6699 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 887 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< DefinedType > () = DefinedType{absl::nullopt, yystack_[0].value.as< std::string > (), {}}; } +#line 6763 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 199: -#line 879 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 889 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6705 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6769 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 200: -#line 881 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< DefinedType > () = DefinedType{absl::nullopt, yystack_[0].value.as< std::string > (), {}}; } -#line 6711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 - break; - - case 201: -#line 883 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6717 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 - break; - - case 202: -#line 889 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 895 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedValue > () = DefinedValue{yystack_[0].value.as< std::string > ()}; } -#line 6723 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6775 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 204: -#line 894 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 202: +#line 900 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{ absl::nullopt, yystack_[3].value.as< std::string > (), yystack_[1].value.as< std::vector > ()}; } -#line 6729 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6781 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 206: -#line 901 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 204: +#line 907 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Type > ()); } -#line 6735 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6787 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 207: -#line 903 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 205: +#line 909 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[2].value.as< Type > ()); } -#line 6741 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6793 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 208: -#line 907 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 206: +#line 913 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6747 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6799 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 209: -#line 909 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 207: +#line 915 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not yet dealing with value paramaters\n"; } -#line 6753 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6805 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 211: -#line 922 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 209: +#line 928 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{yystack_[2].value.as< std::string > (), yystack_[0].value.as< std::string > (), {}}; } -#line 6759 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6811 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 213: -#line 951 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 211: +#line 957 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[2].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {} }; } -#line 6765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6817 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 214: -#line 955 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 212: +#line 961 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ValueAssignment{yystack_[2].value.as< Type > (), yystack_[0].value.as< Value > ()}, {} }; } -#line 6771 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6823 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 215: -#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 213: +#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[2].value.as< Type > ()}, {} }; } -#line 6777 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6829 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 216: -#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 214: +#line 969 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< BuiltinType > (); } -#line 6783 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6835 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 217: -#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 215: +#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6841 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 218: -#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 216: +#line 973 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< DefinedType > (); } -#line 6795 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6847 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 219: -#line 969 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 217: +#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - SelectionType\n"; } -#line 6801 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6853 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 220: -#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 218: +#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - TypeFromObject\n"; } -#line 6807 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6859 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 221: -#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 219: +#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = AnyType(); } -#line 6813 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6865 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 222: -#line 976 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 220: +#line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } -#line 6819 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6871 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 223: -#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 221: +#line 983 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } -#line 6825 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6877 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 224: -#line 978 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 222: +#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } -#line 6831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6883 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 225: -#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 223: +#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } -#line 6837 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6889 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 226: -#line 980 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 224: +#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } -#line 6843 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6895 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 227: -#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 225: +#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } -#line 6849 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6901 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 228: -#line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 226: +#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } -#line 6855 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6907 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 229: -#line 983 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 227: +#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } -#line 6861 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6913 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 230: -#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 228: +#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } -#line 6867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6919 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 231: -#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 229: +#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } -#line 6873 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6925 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 232: -#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 230: +#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } -#line 6879 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6931 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 233: -#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 231: +#line 993 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } -#line 6885 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6937 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 234: -#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 232: +#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } -#line 6891 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6943 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 235: -#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 233: +#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } -#line 6897 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6949 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 236: -#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 234: +#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } -#line 6903 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 237: -#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 235: +#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } -#line 6909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6961 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 238: -#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 236: +#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } -#line 6915 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6967 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 239: -#line 993 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 237: +#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } -#line 6921 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6973 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 240: -#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 238: +#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } -#line 6927 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6979 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 241: -#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 239: +#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } -#line 6933 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6985 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 242: -#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 240: +#line 1002 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } -#line 6939 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6991 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 243: -#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 241: +#line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } -#line 6945 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6997 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 244: -#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 242: +#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } -#line 6951 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 245: -#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 243: +#line 1005 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } -#line 6957 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7009 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 246: -#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 244: +#line 1006 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } -#line 6963 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7015 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 247: -#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 245: +#line 1007 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } -#line 6969 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7021 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 248: -#line 1002 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 246: +#line 1008 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } -#line 6975 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7027 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 249: -#line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 247: +#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } -#line 6981 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7033 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 250: -#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 248: +#line 1010 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } -#line 6987 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7039 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 251: -#line 1005 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 249: +#line 1011 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = UTCTimeType(); } -#line 6993 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7045 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 252: -#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 250: +#line 1015 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } -#line 6999 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 253: -#line 1013 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 251: +#line 1019 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } -#line 7005 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7057 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 254: -#line 1015 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 252: +#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } -#line 7011 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7063 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 255: -#line 1017 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 253: +#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } -#line 7017 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7069 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 256: -#line 1019 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 254: +#line 1025 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } -#line 7023 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7075 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 257: -#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 255: +#line 1027 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = BitStringValue{yystack_[0].value.as< std::string > ()}; } -#line 7029 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 258: -#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 256: +#line 1029 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = HexStringValue{yystack_[0].value.as< std::string > ()}; } -#line 7035 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7087 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 259: -#line 1025 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 257: +#line 1031 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = CharStringValue{yystack_[0].value.as< std::string > ()}; } -#line 7041 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7093 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 260: -#line 1027 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 258: +#line 1033 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } -#line 7047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7099 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 261: -#line 1029 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 259: +#line 1035 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< DefinedValue > (); } -#line 7053 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7105 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 262: -#line 1031 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 260: +#line 1037 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } -#line 7059 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 264: -#line 1034 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 262: +#line 1040 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } -#line 7065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7117 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 265: -#line 1036 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 263: +#line 1042 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } -#line 7071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7123 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 266: -#line 1038 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 264: +#line 1044 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 7077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 267: -#line 1040 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 265: +#line 1046 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 7083 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 272: -#line 1048 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 270: +#line 1054 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } -#line 7089 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7141 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 273: -#line 1050 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 271: +#line 1056 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } -#line 7095 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 274: -#line 1052 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 272: +#line 1058 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } -#line 7101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 275: -#line 1054 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 273: +#line 1060 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 7107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7159 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 276: -#line 1056 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 274: +#line 1062 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BY\n"); } -#line 7113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 277: -#line 1058 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 275: +#line 1064 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } -#line 7119 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 279: -#line 1064 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 276: +#line 1069 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } -#line 7125 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7177 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 280: -#line 1066 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 277: +#line 1071 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } -#line 7131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7183 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 286: -#line 1081 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 284: +#line 1087 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 7137 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 287: -#line 1083 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 285: +#line 1089 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 7143 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7195 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 291: -#line 1098 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 289: +#line 1104 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{{}}; } -#line 7149 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7201 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 292: -#line 1100 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 290: +#line 1106 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } -#line 7155 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7207 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 293: -#line 1104 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 291: +#line 1110 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } -#line 7161 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 294: -#line 1106 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 292: +#line 1112 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } -#line 7167 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 295: -#line 1110 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 293: +#line 1116 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } -#line 7173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7225 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 296: -#line 1112 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 294: +#line 1118 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } -#line 7179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7231 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 297: -#line 1116 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 295: +#line 1122 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } -#line 7185 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7237 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 298: -#line 1118 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 296: +#line 1124 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } -#line 7191 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7243 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 299: -#line 1122 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 297: +#line 1128 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } -#line 7197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7249 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 300: -#line 1126 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 298: +#line 1132 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[0].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = false; } -#line 7204 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7256 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 301: -#line 1129 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 299: +#line 1135 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[3].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; } -#line 7211 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7263 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 302: -#line 1132 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 300: +#line 1138 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[5].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; yylhs.value.as< EnumeratedType > ().enum_values.insert(yylhs.value.as< EnumeratedType > ().enum_values.end(), yystack_[0].value.as< EnumeratedType > ().enum_values.begin(), yystack_[0].value.as< EnumeratedType > ().enum_values.end()); } -#line 7219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7271 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 304: -#line 1139 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 302: +#line 1145 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 7225 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 305: -#line 1141 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 303: +#line 1147 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 7231 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7283 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 306: -#line 1145 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 304: +#line 1151 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7237 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7289 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 307: -#line 1147 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 305: +#line 1153 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } -#line 7244 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7296 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 309: -#line 1158 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 307: +#line 1164 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BitStringType > () = BitStringType{}; } -#line 7250 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 310: -#line 1160 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 308: +#line 1166 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BitStringType > () = BitStringType{}; } -#line 7256 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7308 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 317: -#line 1189 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 315: +#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType(); } -#line 7262 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 318: -#line 1191 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 316: +#line 1197 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 319: -#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 317: +#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7274 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 320: -#line 1197 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 318: +#line 1203 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } -#line 7280 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7332 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 321: -#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 319: +#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7286 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 322: -#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 320: +#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } -#line 7292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 323: -#line 1203 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 321: +#line 1209 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7298 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 324: -#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 322: +#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7304 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7356 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 325: -#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 323: +#line 1213 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7310 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 326: -#line 1209 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 324: +#line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7316 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7368 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 327: -#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 325: +#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7374 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 328: -#line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 326: +#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } -#line 7328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 329: -#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 327: +#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7334 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7386 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 330: -#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 328: +#line 1227 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt, absl::nullopt}; } -#line 7340 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7392 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 331: -#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 329: +#line 1229 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt, absl::nullopt}; } -#line 7346 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7398 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 332: -#line 1225 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 330: +#line 1231 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > (), absl::nullopt}; } -#line 7352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7404 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 333: -#line 1227 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 331: +#line 1233 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{{}, false, absl::nullopt, yystack_[0].value.as< Type > ()}; } -#line 7358 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7410 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 334: -#line 1239 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 332: +#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7364 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 335: -#line 1241 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 333: +#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7370 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7422 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 336: -#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 334: +#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{}; } -#line 7376 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7428 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 337: -#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 335: +#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7382 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7434 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 338: -#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 336: +#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7388 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7440 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 339: -#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 337: +#line 1259 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7446 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 340: -#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 338: +#line 1263 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } -#line 7400 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7452 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 341: -#line 1261 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 339: +#line 1267 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7406 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7458 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 342: -#line 1265 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 340: +#line 1271 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7412 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7464 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 343: -#line 1267 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 341: +#line 1273 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } -#line 7418 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7470 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 344: -#line 1269 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 342: +#line 1275 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7424 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 345: -#line 1273 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 343: +#line 1279 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } -#line 7430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7482 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 346: -#line 1275 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 344: +#line 1281 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7436 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7488 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 348: -#line 1285 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 346: +#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } -#line 7442 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7494 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 349: -#line 1289 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 347: +#line 1295 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } -#line 7448 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7500 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 350: -#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 348: +#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } -#line 7454 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7506 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 351: -#line 1293 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 349: +#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } -#line 7460 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 352: -#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 350: +#line 1303 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } -#line 7466 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7518 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 355: -#line 1305 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 353: +#line 1311 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } -#line 7472 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7524 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 357: -#line 1310 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 355: +#line 1316 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::universal; } -#line 7478 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7530 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 358: -#line 1312 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 356: +#line 1318 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::application; } -#line 7484 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7536 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 359: -#line 1314 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 357: +#line 1320 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::private_; } -#line 7490 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7542 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 360: -#line 1316 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 358: +#line 1322 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::context_specific; } -#line 7496 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7548 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 362: -#line 1329 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 360: +#line 1335 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7502 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7554 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 363: -#line 1331 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 361: +#line 1337 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7508 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7560 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 364: -#line 1335 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 362: +#line 1341 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } -#line 7514 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7566 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 365: -#line 1337 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 363: +#line 1343 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } -#line 7520 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7572 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 366: -#line 1341 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 364: +#line 1347 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7526 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7578 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 367: -#line 1343 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 365: +#line 1349 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7532 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7584 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 368: -#line 1345 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 366: +#line 1351 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7538 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7590 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 369: -#line 1349 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 367: +#line 1355 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7544 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7596 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 370: -#line 1353 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 368: +#line 1359 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } -#line 7550 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7602 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 372: -#line 1358 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 370: +#line 1364 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } -#line 7556 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7608 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 406: -#line 1454 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 404: +#line 1460 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } -#line 7562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7614 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 407: -#line 1456 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 405: +#line 1462 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 7568 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7620 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 408: -#line 1460 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 406: +#line 1466 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7574 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7626 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 409: -#line 1462 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 407: +#line 1468 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7580 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7632 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 410: -#line 1464 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 408: +#line 1470 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7586 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7638 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 411: -#line 1466 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 409: +#line 1472 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } -#line 7592 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7644 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 412: -#line 1468 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 410: +#line 1474 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7598 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 413: -#line 1470 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 411: +#line 1476 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7604 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 414: -#line 1472 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 412: +#line 1478 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7662 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 415: -#line 1474 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 413: +#line 1480 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } -#line 7616 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7668 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 498: -#line 1642 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 496: +#line 1648 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7622 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7674 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 499: -#line 1646 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 497: +#line 1652 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7628 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7680 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 500: -#line 1650 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 498: +#line 1656 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7634 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7686 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 501: -#line 1654 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 499: +#line 1660 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7640 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7692 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; - case 502: -#line 1658 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + case 500: +#line 1664 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7646 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7698 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; -#line 7650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7702 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 default: break; } @@ -7903,762 +7955,770 @@ namespace yy { } - const short int asn1_parser::yypact_ninf_ = -653; + const short int asn1_parser::yypact_ninf_ = -778; - const short int asn1_parser::yytable_ninf_ = -503; + const short int asn1_parser::yytable_ninf_ = -501; const short int asn1_parser::yypact_[] = { - -76, -653, 78, -76, 67, 119, -653, -653, 117, 21, - -653, 30, -653, 175, 192, -653, -653, 168, 21, -653, - -653, -653, 143, 177, -653, -653, 200, 240, 265, 273, - -653, -653, 351, 359, 244, -653, -653, -653, 321, 282, - 267, -653, -653, -653, 359, 284, -653, 385, -653, 244, - -653, 330, -653, -2, -653, 354, 281, -653, -653, 296, - 303, -653, -653, 320, -653, 393, 260, 49, -653, -653, - 260, 329, -653, 313, 260, -653, -20, 334, -653, -653, - -653, -653, -653, -653, -653, -653, -653, 49, -653, -653, - -653, 2207, 2508, -653, -653, -653, -653, -76, 3007, 13, - -653, -653, -653, -653, -653, 357, -653, -653, 358, 338, - -653, -653, -653, 372, 340, -653, -653, -653, -653, -653, - 379, 343, -653, -653, 399, -653, 369, -653, -653, -653, - -653, -653, -5, 1, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, 2607, 454, -653, 336, -653, -653, - 356, -653, -653, 2706, 337, -653, -653, 355, -653, -653, - 364, 228, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -653, 2310, -653, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, -653, 150, 348, 344, 3106, 234, - 144, 345, -653, -41, -653, 153, -653, -653, 336, 123, - -653, 349, -653, 361, 365, 173, 362, -653, 363, 371, - -653, 368, 374, -653, 331, -653, -37, 13, 331, -653, - -653, 3106, 365, 4, 1216, 409, 412, 3106, 86, 416, - 424, 394, -653, -653, -653, 365, 381, 6, 375, 396, - 2607, 242, 375, 1471, 401, -653, 3106, 3106, 365, 37, - 3106, 10, 246, 2101, 493, 17, -653, -653, -653, -653, - 3007, 260, 20, 44, 378, 331, -653, 408, -653, 400, - 3106, 418, -653, 423, 404, -653, 425, -653, 128, -653, - 425, 365, -653, 2809, -653, 467, 418, -653, 5, 430, - 419, -653, -653, -653, -653, -653, -653, -653, 499, 94, - 521, 3106, 524, -653, 365, -653, -653, 2101, 552, -653, - 367, 1340, 1596, 562, 176, -653, 444, -653, -653, -653, - -653, 365, -653, -653, -653, 418, -653, -653, 432, -55, - -43, 15, 19, -653, 499, 512, -653, 190, -653, 3106, - -653, 449, 445, -653, -653, -653, -653, -653, -653, 3106, - 3106, 365, -653, -653, 451, 3106, 3106, 350, -653, -653, - -653, -653, 35, -653, -653, -653, 436, -653, -653, 365, - 2101, 436, -653, -653, -653, -653, -653, -653, 453, -653, - 2101, -26, -653, -653, 2101, -653, 199, 263, -653, 438, - 457, -653, -653, 452, 447, -653, 365, 250, 224, 450, - 441, -653, -653, -653, -653, 157, 455, 1596, -653, 365, - 365, 436, -653, 365, -653, -653, 2101, -653, -653, 146, - 462, -653, -653, 224, 456, 459, -653, 17, 464, 17, - -653, -653, -653, 465, 466, -653, -653, -653, -653, 1091, - -653, -653, -653, -653, -653, 178, -653, 469, -653, -27, - 365, 1951, -653, -653, -14, 33, -653, 331, 3106, 463, - 2077, -653, -653, 29, 1852, -653, 468, -4, 2101, -653, - 224, -653, 365, 475, 470, 477, 472, 476, -653, 461, - 479, 489, -653, -653, 1852, -653, -653, 1852, -653, 365, - 694, -653, 365, -653, 365, -653, -653, 365, -653, 365, - -653, 3205, 2409, 13, 187, -653, -653, 91, -653, -653, - -653, -653, -653, -653, -653, 484, 375, 224, 224, 224, - 716, 609, 1471, -653, 1471, 2101, 2101, 2101, 2101, 2101, - 391, 56, 490, 224, 375, 474, -653, 491, -653, -653, - 40, 3774, 3862, -653, 480, -653, -653, 453, -653, -653, - 357, -653, -653, -653, 358, 338, -653, -653, -653, -653, - 2101, -653, -653, -653, -653, -653, 372, -653, -653, -653, - 340, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, 379, -653, -26, -653, -653, -653, -653, - -653, 399, 369, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, -5, 1, -653, -653, -653, -653, - -653, -653, -653, -653, 481, -653, -653, -653, -653, -653, - 146, 1727, -653, 483, 954, -653, -653, 365, 224, 487, - -653, -653, 331, 53, 492, -653, -653, 87, -653, -653, - 418, -653, 500, 501, -653, 365, 31, -653, -653, -653, - -653, 418, -653, -653, 2908, 577, 224, -653, -653, -12, - -653, 1596, -653, 504, -653, 183, 201, -653, -653, 494, - 15, -653, -653, 808, -653, -653, -653, 25, 121, 120, - 121, 27, 510, 350, -653, 3106, -653, -653, -653, -653, - -653, 224, 505, 508, -653, 224, 224, 224, 224, 224, - -653, -653, -653, -653, -653, 509, -653, 496, -653, -653, - 8, -653, 511, 513, 331, 2101, 498, -653, -653, -653, - 515, 517, -653, 516, -653, 506, 520, 311, 518, 2101, - 205, 530, 522, 365, -653, 523, 525, 526, -653, -653, - 461, 1596, -653, 44, -653, -653, -653, -653, 39, 43, - 43, -653, -653, -653, 542, -653, -653, 365, -653, -653, - -653, 533, -653, -653, 528, 224, 331, 90, 23, 2069, - -653, 42, 224, -653, 331, -653, 331, -653, -653, 166, - 1596, 525, 331, 331, -653, -653, -653, 401, -653, -653, - 2077, -653, -653, -653, 538, -653, 331, 529, -653, 531, - 1091, -653, 224, 532, 544, -653, -653, -653, -653, -653, - -653, -653, 526, -653, -653, -653, 3678, -653, 331, 92, - 224, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, -653, 3678, -653, 3444, -653, -653, -653, - 3327, -653, 534, 3561, -653, -653, -653, -653, 23, -653, - 537, 23 + -73, -778, 92, -73, 67, 25, -778, -778, 111, 24, + -778, 70, -778, 159, 177, -778, -778, 40, 24, -778, + -778, -778, 183, 124, -778, -778, 212, 230, 246, 305, + -778, -778, 398, 371, 268, -778, -778, -778, 346, 299, + 292, -778, -778, -778, 371, 289, -778, 391, -778, 268, + -778, 82, -778, 71, -778, 357, 290, -778, -778, 291, + 302, -778, -778, 318, -778, 389, 245, 245, -778, -778, + 245, 321, -778, 306, 245, -778, -23, -778, -778, -778, + -778, -778, -778, -778, -778, 245, -778, -778, -778, 2257, + 2558, -778, -778, -778, -778, -73, -778, -778, -778, -778, + -778, 348, -778, -778, 349, 329, -778, -778, -778, 363, + 332, -778, -778, -778, -778, -778, 375, 334, -778, -778, + 394, -778, 361, -778, -778, -778, -778, -778, -30, -14, + -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, + 2657, 3057, 450, -778, 343, -778, -778, 351, -778, -778, + 2756, 344, -778, -778, 359, -778, -778, 362, 135, -778, + -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, + -778, -778, -778, -778, -778, 2360, -778, -778, -778, -778, + -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, + -778, -778, 122, 337, 347, 3156, 218, 128, 353, -778, + 95, 365, -778, 342, -778, 108, 29, 342, -778, -778, + 3156, 367, -3, 1266, 400, 408, 3156, 3, 413, 416, + 380, -778, -778, -778, 343, -778, -778, 367, 368, -778, + 154, -778, 102, -778, 364, -778, 374, 367, 172, 376, + 38, 372, 385, 2657, 219, 372, 1521, 392, -778, 3156, + 3156, 367, 22, 3156, 30, 225, 2151, 496, 23, -778, + -778, -778, 342, -778, 395, -778, 382, 3156, 390, -778, + 396, 386, -778, 399, 388, -778, -778, 407, 145, -778, + 399, 367, -778, 2859, -778, 437, 390, -778, 6, 402, + 393, -778, -778, -778, -778, -778, -778, -778, 474, 162, + 494, 3156, 498, -778, 367, -778, -778, 2151, 523, -778, + 354, 1390, 1646, 541, 173, -778, 423, -778, -778, -778, + -778, 367, -778, -778, -778, 390, -778, -778, 412, -48, + -32, -12, -10, -778, 474, 492, -778, 184, -778, 3156, + -778, 428, 422, -778, -778, -778, -778, -778, -778, 3156, + 3156, 367, -778, -778, 429, 3156, 3156, 325, 36, -778, + 3057, 245, -778, -778, -778, -778, 26, -778, -778, -778, + 415, -778, -778, 367, 2151, 415, -778, -778, -778, -778, + -778, -778, 430, -778, 2151, 247, -778, -778, 2151, -778, + 190, 228, -778, 417, 433, -778, -778, 435, 426, -778, + 367, 214, 192, 427, 420, -778, -778, -778, -778, 131, + 434, 1646, -778, 367, 367, 415, -778, 367, -778, -778, + 2151, -778, -778, -49, 440, -778, -778, 192, 441, 444, + -778, 23, 443, 23, -778, -778, -778, 445, 449, 168, + -778, 457, -778, 118, 367, 2001, -778, -778, 121, 20, + 439, -778, 342, 3156, 447, 795, -778, -778, 8, 1902, + -778, 462, -11, 2151, -778, 192, -778, 367, 465, 453, + 466, 455, 469, -778, 456, 472, 479, -778, -778, 1902, + -778, -778, 1902, -778, 367, 358, -778, 367, -778, 367, + -778, -778, 367, -778, 367, -778, 3255, 2459, 29, 175, + -778, -778, 54, -778, -778, -778, -778, -778, -778, -778, + -778, -778, -778, -778, 473, 372, 192, 192, 192, 831, + 599, 1521, -778, 1521, 2151, 2151, 2151, 2151, 2151, 377, + 18, 480, 192, 372, 459, -778, 481, -778, -778, 32, + -778, 342, 39, 476, -778, -778, -58, -778, -778, 477, + 390, -778, 489, 490, -778, 367, 42, -778, -778, -778, + -778, 390, -778, -778, 2958, 578, 192, -778, -778, 129, + -778, 1646, -778, 497, -778, 163, 178, -778, -778, 483, + -12, -778, -778, 778, -778, -778, -778, 19, -27, -34, + -27, 105, 501, 325, -778, 3156, -778, -778, -778, -778, + -778, 192, 495, 503, -778, 192, 192, 192, 192, 192, + -778, -778, -778, -778, -778, 499, -778, 502, 504, 342, + 2151, 11, 486, -778, -778, -778, 500, 505, -778, 507, + -778, 493, 510, 281, 508, 2151, 191, 513, 511, 367, + -778, 512, 509, 514, -778, -778, 456, 1646, -778, 13, + -778, -778, -778, -778, 155, 160, 160, -778, -778, -778, + 535, -778, -778, 367, -778, -778, -778, -778, -778, 516, + 192, 342, 76, 4, 2119, -778, 41, 192, -778, 342, + -778, 342, -778, -778, 52, 1646, 509, 342, 342, -778, + -778, 1141, -778, -778, -778, -778, -778, 392, -778, -778, + 795, -778, -778, -778, 521, 342, 518, -778, 519, 1141, + -778, 192, 525, 515, -778, -778, -778, -778, -778, -778, + -778, 514, -778, 3824, 3912, -778, 524, -778, -778, 430, + -778, -778, 348, -778, -778, -778, 349, 329, -778, -778, + -778, -778, 2151, -778, -778, -778, -778, -778, 363, -778, + -778, -778, 332, -778, -778, -778, -778, -778, -778, -778, + -778, -778, -778, -778, -778, 375, -778, 90, -778, -778, + -778, -778, -778, 394, 361, -778, -778, -778, -778, -778, + -778, -778, -778, -778, -778, -778, -30, -14, -778, -778, + -778, -778, -778, -778, -778, -778, 529, -778, -778, -778, + -778, -778, -49, 1777, -778, 520, 1004, -778, -778, 367, + 192, -778, -778, -778, 3728, -778, 342, 78, 192, -778, + -778, 526, -778, -778, -778, -778, -778, -778, -778, -778, + -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, + -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, + -778, -778, -778, -778, -778, -778, 3728, -778, 3494, -778, + -778, -778, 3377, -778, 531, 544, 3611, -778, -778, -778, + -778, 4, -778, -778, 540, 4 }; const unsigned short int asn1_parser::yydefact_[] = { - 0, 501, 0, 2, 0, 149, 1, 3, 160, 0, - 146, 147, 148, 0, 164, 157, 499, 0, 152, 155, - 156, 154, 369, 0, 151, 159, 0, 0, 0, 166, - 150, 153, 0, 0, 378, 163, 161, 162, 0, 0, - 0, 379, 380, 376, 0, 0, 165, 0, 158, 378, - 375, 171, 377, 173, 145, 175, 0, 498, 500, 0, - 172, 185, 187, 188, 190, 0, 177, 0, 170, 169, - 0, 0, 4, 0, 176, 178, 0, 0, 195, 197, - 198, 95, 96, 97, 98, 99, 167, 191, 193, 194, - 196, 0, 0, 186, 189, 174, 179, 0, 0, 0, - 192, 68, 11, 221, 316, 0, 392, 288, 0, 0, - 386, 388, 389, 0, 0, 383, 232, 393, 394, 395, - 0, 291, 396, 397, 0, 238, 0, 374, 398, 308, - 373, 381, 0, 0, 400, 399, 384, 387, 10, 401, - 251, 402, 403, 404, 0, 354, 498, 0, 114, 67, - 0, 83, 237, 0, 0, 220, 233, 0, 218, 201, - 199, 0, 216, 223, 234, 230, 241, 222, 240, 236, - 244, 245, 246, 247, 225, 219, 248, 348, 0, 239, - 243, 235, 242, 229, 231, 249, 226, 250, 227, 228, - 224, 390, 391, 217, 407, 84, 0, 0, 0, 0, - 200, 0, 180, 184, 498, 499, 113, 6, 8, 0, - 106, 0, 110, 109, 112, 188, 0, 7, 502, 0, - 8, 0, 309, 405, 0, 382, 0, 0, 0, 361, - 315, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 13, 12, 14, 213, 0, 360, 0, 0, - 0, 0, 0, 0, 0, 406, 0, 0, 349, 0, - 0, 0, 0, 0, 0, 0, 181, 182, 183, 105, - 0, 0, 0, 0, 0, 0, 345, 0, 341, 342, - 0, 494, 307, 0, 300, 304, 306, 116, 0, 293, - 0, 334, 335, 0, 471, 0, 494, 317, 330, 0, - 319, 328, 297, 459, 453, 454, 455, 385, 0, 316, - 0, 0, 0, 290, 0, 461, 468, 0, 0, 289, - 0, 0, 0, 0, 456, 457, 132, 418, 121, 122, - 123, 472, 450, 458, 452, 494, 417, 419, 420, 423, - 0, 425, 0, 428, 0, 431, 439, 441, 442, 0, - 443, 0, 463, 445, 446, 444, 447, 448, 449, 0, - 0, 338, 339, 336, 0, 0, 0, 0, 353, 358, - 359, 357, 0, 24, 25, 26, 93, 86, 103, 100, - 0, 115, 265, 257, 258, 259, 270, 271, 255, 276, - 0, 278, 274, 277, 0, 263, 498, 500, 210, 237, - 0, 261, 203, 0, 206, 119, 208, 209, 0, 275, - 273, 253, 264, 254, 256, 202, 0, 0, 215, 351, - 350, 94, 211, 347, 69, 85, 0, 255, 278, 280, - 500, 266, 279, 214, 0, 0, 370, 371, 0, 364, - 366, 367, 368, 369, 202, 107, 108, 502, 9, 0, - 70, 104, 71, 72, 73, 0, 311, 0, 340, 0, - 252, 0, 303, 299, 0, 0, 292, 0, 0, 326, - 0, 331, 318, 0, 0, 424, 0, 142, 0, 473, - 491, 492, 0, 477, 90, 0, 88, 0, 298, 0, - 0, 0, 436, 435, 0, 438, 437, 0, 432, 460, - 0, 464, 410, 414, 411, 415, 337, 408, 412, 409, - 413, 29, 0, 0, 0, 16, 18, 33, 19, 20, - 21, 22, 23, 355, 356, 0, 0, 102, 260, 286, - 0, 0, 0, 204, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 101, 0, 0, 371, 0, 362, 365, - 0, 24, 25, 504, 505, 506, 507, 255, 509, 510, - 511, 392, 288, 276, 515, 516, 517, 518, 519, 520, - 521, 386, 388, 524, 525, 389, 527, 528, 529, 530, - 531, 532, 533, 534, 535, 383, 290, 538, 539, 540, - 541, 542, 543, 544, 545, 278, 547, 548, 549, 550, - 551, 552, 553, 554, 374, 274, 557, 558, 559, 560, - 561, 308, 373, 381, 565, 566, 567, 568, 569, 570, - 571, 384, 387, 289, 575, 576, 577, 578, 277, 66, - 280, 0, 79, 0, 0, 77, 80, 81, 82, 0, - 65, 310, 0, 0, 343, 346, 496, 0, 495, 493, - 494, 305, 0, 0, 294, 333, 0, 451, 456, 457, - 332, 494, 329, 434, 131, 0, 143, 476, 474, 0, - 475, 0, 87, 0, 440, 0, 0, 134, 416, 421, - 426, 429, 470, 0, 469, 462, 465, 49, 36, 36, - 36, 53, 55, 0, 30, 0, 31, 28, 352, 27, - 272, 287, 0, 0, 207, 281, 267, 283, 282, 284, - 268, 269, 212, 285, 363, 0, 75, 0, 76, 78, - 0, 312, 0, 0, 0, 0, 301, 296, 295, 327, - 324, 320, 130, 113, 127, 0, 0, 112, 0, 0, - 0, 0, 481, 486, 91, 89, 139, 136, 140, 133, - 0, 0, 466, 0, 47, 46, 34, 35, 45, 40, - 40, 52, 51, 50, 0, 15, 17, 32, 262, 205, - 372, 0, 313, 314, 344, 497, 0, 0, 0, 0, - 124, 0, 144, 478, 0, 480, 0, 485, 483, 490, - 0, 139, 0, 0, 135, 422, 48, 0, 43, 42, - 0, 38, 41, 37, 0, 74, 0, 302, 325, 321, - 0, 126, 125, 498, 0, 482, 488, 489, 487, 484, - 92, 138, 137, 141, 44, 39, 64, 54, 0, 0, - 82, 479, 505, 508, 511, 512, 513, 514, 515, 516, - 521, 522, 523, 526, 527, 531, 536, 537, 544, 546, - 552, 553, 555, 556, 562, 563, 564, 565, 566, 572, - 573, 574, 575, 579, 64, 503, 64, 56, 59, 58, - 0, 62, 322, 64, 5, 57, 61, 63, 0, 60, - 323, 0 + 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, + 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, + 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, + 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, 457, 451, 452, 453, 383, 0, 314, + 0, 0, 0, 288, 0, 459, 466, 0, 0, 287, + 0, 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, 296, 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 }; const short int asn1_parser::yypgoto_[] = { - -653, 645, -653, -653, -64, -653, -94, -653, 426, -653, - -653, -24, -441, 152, -653, -653, -653, -248, -653, -86, - -653, -653, -653, -653, -653, -653, -653, -653, -189, -652, - -653, -653, -653, -447, -267, -653, -650, -653, -653, -653, - -653, -653, 45, 46, 18, -653, -653, 434, -653, 171, - -653, -653, -653, -653, -653, -653, 360, -653, 414, -653, - 26, -653, -653, -653, -653, -653, -653, -653, -653, -653, - -653, -65, -104, -101, -653, -653, -653, -653, -653, -653, - 671, -653, 680, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -653, 640, -653, -653, 663, 648, -75, 632, - -653, -653, -262, -653, -653, -314, -653, -653, -653, -653, - -653, -653, 47, -653, -211, -226, 158, -653, -653, -74, - -653, -653, -148, -653, -653, -227, -179, -653, -653, -51, - -450, -653, -653, -653, 88, -653, -653, -653, 495, -634, - -449, -653, -653, -653, -653, -653, -653, 12, -653, -653, - -653, -653, -653, -653, -653, -653, -653, -103, -653, 256, - 179, -653, -653, -653, 723, -653, 688, 699, -653, -653, - -653, -653, 9, -653, -653, -653, -653, -653, -653, -653, - -653, -653, -121, -653, -653, -276, -306, -653, -653, 253, - -653, 241, -653, 406, -653, -653, 270, -653, -453, -653, - -653, -653, -653, -653, -653, 65, -81, -653, -653, -653, - -653, -653, -442, -653, -653, -653, -653, -653, -653, -266, - -653, -8, -9, -34, 7, -256, -653 + -778, 646, -778, -778, -137, -778, -81, -778, 438, -778, + -778, 89, -477, 138, -778, -778, -778, -176, -778, 31, + -778, -778, -778, -778, -778, -778, -778, -778, -185, -777, + -778, -778, -778, -656, -584, -778, 14, -778, -778, -778, + -778, -778, -121, -113, 130, -778, -778, 458, -778, -51, + -778, -778, -778, -778, -778, 602, -778, 335, -778, 133, + -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, + 53, 12, 16, -778, -778, -778, -778, -778, -778, 683, + -778, 670, -778, -778, -778, -778, -778, -778, -778, -778, + -778, -778, 630, -778, -778, 652, 637, -120, 623, -778, + -778, -221, -778, -778, -247, -778, -778, -778, -778, -778, + -778, -67, -778, -119, -236, 223, -778, -778, 17, -778, + -778, 198, -778, -778, -200, 147, -778, -778, 44, -443, + -778, -778, -778, 169, -778, -778, -778, 517, -542, -450, + -778, -778, -778, -778, -778, -778, 93, -778, -778, -778, + -778, -778, -778, -778, -778, -778, -57, -778, 298, 170, + -778, -778, -778, 700, -778, 664, 672, -778, -778, -778, + -778, 282, -778, -778, -778, -778, -778, -778, -778, -778, + -778, -112, -778, -778, -281, -305, -778, -778, 238, -778, + 237, -778, 387, -778, -778, 261, -778, -436, -778, -778, + -778, -778, -778, -778, 139, -127, -778, -778, -778, -778, + -778, -297, -778, -778, -778, -778, -778, -778, -275, -778, + 49, -9, -41, 15, -345, -778 }; const short int asn1_parser::yydefgoto_[] = { - -1, 2, 3, 827, 398, 207, 147, 78, 243, 244, - 514, 515, 375, 421, 516, 517, 697, 758, 518, 802, - 519, 520, 799, 521, 755, 522, 763, 765, 866, 867, - 868, 869, 870, 871, 148, 149, 451, 452, 453, 633, - 454, 634, 635, 636, 150, 151, 79, 326, 485, 152, - 80, 81, 82, 83, 84, 85, 99, 209, 210, 211, - 212, 154, 155, 156, 157, 400, 327, 328, 736, 329, - 676, 677, 792, 747, 330, 65, 4, 10, 11, 12, - 17, 18, 19, 20, 14, 29, 39, 54, 55, 59, - 67, 73, 74, 75, 202, 266, 76, 61, 62, 86, - 87, 158, 401, 159, 402, 403, 404, 160, 405, 88, - 89, 90, 331, 162, 298, 432, 408, 409, 410, 418, - 530, 163, 411, 164, 288, 282, 412, 165, 283, 284, - 285, 166, 167, 455, 456, 168, 169, 170, 299, 300, - 301, 171, 172, 173, 174, 277, 278, 279, 175, 176, - 177, 178, 247, 525, 372, 179, 267, 438, 439, 440, - 441, 442, 180, 181, 413, 34, 45, 43, 182, 183, - 184, 185, 414, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 255, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 475, 494, 497, 345, 346, 347, 348, - 349, 350, 351, 685, 352, 686, 353, 354, 355, 356, - 668, 670, 741, 742, 788, 789, 819, 357, 358, 462, - 649, 200, 196, 415, 201, 217, 640 + -1, 2, 3, 815, 392, 223, 144, 77, 225, 226, + 499, 500, 369, 415, 501, 502, 597, 654, 503, 702, + 504, 505, 699, 506, 651, 507, 659, 661, 858, 859, + 860, 861, 862, 863, 145, 146, 693, 694, 695, 805, + 696, 806, 807, 808, 147, 148, 78, 316, 470, 149, + 79, 80, 81, 82, 83, 150, 232, 233, 234, 235, + 151, 152, 153, 154, 394, 317, 318, 632, 319, 576, + 577, 687, 643, 320, 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, 519, + 160, 405, 161, 278, 269, 406, 162, 270, 271, 272, + 163, 164, 439, 440, 165, 166, 167, 289, 290, 291, + 168, 169, 170, 171, 264, 265, 266, 172, 173, 174, + 175, 240, 514, 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, 479, 482, 335, 336, 337, 338, 339, + 340, 341, 585, 342, 586, 343, 344, 345, 346, 568, + 570, 637, 638, 683, 684, 718, 347, 348, 446, 548, + 197, 193, 409, 198, 229, 811 }; const short int asn1_parser::yytable_[] = { - 22, 289, 632, 437, 208, 220, 450, 5, 631, 22, - 5, 235, 239, 276, 651, 486, 448, 660, 448, 64, - 292, 436, 730, 213, 662, 15, 362, 407, 56, 424, - 469, 424, 64, 92, 206, 219, 64, 302, 369, 523, - 64, 424, 102, 97, 436, 63, 487, 684, 295, 665, - 208, 236, 240, 92, 470, 333, -427, 722, 63, 91, - 373, 374, 63, 424, 64, 101, 63, 295, 492, 490, - 77, 689, 1, 295, 753, 295, 761, 424, 6, 91, - 242, 231, 265, 195, 281, 699, 332, 237, 797, -427, - 215, -430, 800, 471, 644, 495, 232, 228, 197, -291, - 370, 493, 232, 796, 203, 216, 221, 650, 58, 740, - 524, 294, 16, 754, 694, 762, 70, 8, 233, 371, - 234, 234, 16, 138, 238, 296, 234, 798, 297, 811, - 295, 801, 13, 220, 295, 16, 295, 16, 161, 199, - 695, 542, 333, 333, 809, 214, 57, 58, 503, 505, - 661, 216, 729, 16, 508, 510, 208, 58, 57, 208, - -430, 218, 23, 287, 496, 1, 205, 449, 447, 268, - 16, 323, 16, 332, 332, 546, 208, 546, 16, 696, - 16, 1, 58, 1, 58, 57, 242, 632, 1, 58, - 813, 245, 1, 479, 816, 213, 446, 57, 58, 646, - 251, 1, 58, 652, 447, 58, 206, 296, 756, 756, - 363, 808, 234, 872, 875, 280, -451, 286, 703, 290, - 704, 875, 293, -451, 280, 258, 26, 725, 293, 280, - 684, 444, 757, 757, 221, 16, 64, 64, 333, 16, - 654, 16, 9, 334, 880, 262, 234, 269, 645, 25, - 27, 422, 466, 425, 817, 434, 443, 216, 818, 270, - 416, 28, 215, 63, 467, 21, 457, -118, 32, 332, - 435, -498, 435, -118, 21, -200, -500, 216, 291, -500, - -120, 259, 648, -498, 361, 448, 653, 259, 546, -500, - -200, 333, 30, -500, 540, 333, 71, 379, -200, -498, - 406, -498, 641, 419, 420, 35, 407, 423, 407, 434, - 259, 692, -467, -498, 642, 333, 33, 214, 333, -467, - 746, 333, 332, 693, 435, 749, 332, 460, 662, 783, - 334, 334, 16, 38, 547, -280, 549, 750, 444, -280, - 460, 784, 814, -280, 815, 36, 332, 825, 254, 332, - 293, 293, 332, 234, 263, 15, 293, 293, 477, 234, - 535, 667, 380, 632, 536, 744, 426, 234, 537, 631, - 37, 234, 434, 511, 512, 41, 42, 513, 651, 435, - 662, 723, 434, 44, 726, -168, 434, 435, 531, 53, - -279, 46, -499, 48, -279, 731, 499, 435, 373, 374, - 376, 435, 47, 444, 381, 444, 502, 504, 57, 58, - 482, 483, 507, 509, 710, 711, 50, 208, 434, 220, - 51, 433, 68, 877, 399, 66, 334, 444, 443, 876, - 443, 444, 662, 435, 431, -128, 234, 69, 208, 70, - 208, 759, 760, 71, 435, 795, 435, 687, 72, 691, - 280, 153, 198, 94, 95, 286, 639, 98, 290, 222, - 223, 224, 225, 226, 280, 227, 228, 229, 639, 246, - 434, 230, 435, 248, 252, 480, 249, 260, 253, 334, - 16, 261, 264, 334, 820, 435, 450, -117, 431, 271, - 234, 273, 333, 235, 239, 359, 637, 275, 360, 272, - -501, -111, 365, 334, 333, 274, 334, 712, 647, 334, - 366, 712, 450, 276, 424, 655, 444, 367, 216, 321, - 221, 368, 434, 332, 417, 448, 447, 434, 434, 434, - 434, 434, 458, 236, 240, 332, 459, 435, 527, 416, - 464, 416, 435, 435, 435, 435, 435, 463, 528, 461, - 465, 431, 529, 468, 472, 473, 474, 435, 688, 690, - 476, 431, 434, 478, 481, 431, 488, 489, 491, -433, - 208, 500, 333, 526, 501, 506, 533, 435, -316, 406, - 532, 406, -266, 534, 543, 539, 538, 531, 548, -120, - 550, 664, 541, 544, 643, 645, 545, 431, 669, 656, - 733, 672, 674, 332, 675, 678, 671, 638, 673, 444, - 679, 333, 698, 702, 713, 714, 739, -11, -10, 717, - 399, 333, 787, 58, 720, 745, 727, 728, 724, 764, - 751, 768, 769, 457, 776, 770, 666, 772, 639, 773, - -129, 639, 332, 771, 780, 804, 779, 280, 7, 431, - 435, 777, 332, 778, 785, 781, 195, 805, 786, 790, - 743, 826, 791, 793, 806, 828, 748, 829, 831, 766, - 878, 738, -502, 881, 803, 873, 378, 716, 637, 719, - 334, 637, 734, 377, 445, 794, 712, 821, 701, 31, - 735, 822, 334, 705, 706, 707, 708, 709, 302, 303, - 304, 431, 305, 399, 306, 399, 431, 431, 431, 431, - 431, 737, 40, 307, 96, 280, 60, 434, 93, 100, - 302, 382, 383, 824, 384, 807, 385, 657, 528, 715, - 721, 434, 435, 364, 24, 307, 774, 52, 681, 386, - 387, 431, 767, 49, 663, 102, 435, 680, 752, 427, - 498, 0, 0, 0, 0, 389, 313, 0, 0, 0, - 334, 0, 390, 0, 0, 0, 0, 286, 280, 280, - 0, 434, 682, 425, 0, 743, 0, 743, 313, 0, - 0, 0, 0, 748, 823, 0, 639, 0, 0, 638, - 0, 428, 638, 0, 0, 0, 0, 280, 0, 334, - 0, 0, 399, 319, 392, 399, 0, 0, 0, 334, - 0, 0, 302, 303, 304, 0, 305, 639, 306, 286, - 280, 0, 0, 683, 0, 319, 138, 307, 0, 0, - 0, 0, 323, 0, 0, 393, 0, 0, 0, 394, - 700, 657, 658, 659, 0, 0, 0, 0, 23, 0, - 0, 0, 0, 0, 323, 0, 395, 637, 0, 0, - 0, 0, 0, 0, 429, 430, 0, 0, 0, 280, - 313, 0, 280, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 775, 0, 0, 682, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 431, 782, 0, 0, + 22, 215, 219, 222, 231, 551, 471, 279, 562, 22, + 401, 454, 64, 509, 626, 5, 214, 218, 5, 560, + 589, 236, 158, 196, 292, 64, 90, 430, 15, 64, + 512, 472, 418, 64, 97, 804, 430, 431, 599, 418, + 95, 285, 565, 617, 90, 367, 368, 285, 285, 584, + 475, 418, 285, 804, 652, 455, 210, 418, 98, 224, + 224, 652, 418, -425, -428, 692, 480, 213, 649, 275, + 363, 211, 216, 227, 237, 1, -496, 594, 653, 477, + 715, 868, 620, 244, 263, 653, 285, 211, -496, 868, + 692, 282, 6, 212, 456, 213, -425, 352, 213, 284, + 64, 56, 63, 595, 194, 509, 222, 650, 251, 217, + 200, 213, 478, 70, 213, 63, 89, 8, 286, 63, + 285, 287, 285, 63, 286, 276, 13, 353, 255, 561, + 531, 708, 364, -428, 89, 481, 691, -166, 192, 134, + 716, 53, 596, 281, 717, 513, 16, 584, 9, 351, + 804, 365, 16, 16, 657, 228, 228, 16, 313, 261, + 58, 1, 224, 625, 30, 224, 508, 58, 1, 58, + 57, 1, 230, 16, 1, 58, 373, 274, 57, 400, + 1, 58, 413, 414, 508, 509, 417, 1, 58, 712, + 238, 16, 464, 658, 267, 393, 273, 707, 280, 864, + 444, 283, 23, 267, 697, 425, 870, 283, 267, 700, + 535, 26, 535, 207, 803, -289, 444, 438, 258, 57, + 58, 277, 562, 231, 545, 16, 359, 16, 552, 268, + 488, 490, 803, 25, 462, 27, 493, 495, 360, 543, + 236, 511, 550, 698, 58, -116, 28, -198, 701, 437, + 636, -116, 554, 441, -118, 247, 425, 16, 228, 252, + 213, 410, -198, 33, 813, 252, 640, 16, 529, 451, + 16, 429, 484, 429, 603, 622, 604, -498, 16, 224, + -498, 452, 487, 489, -449, 401, 627, 401, 492, 494, + -498, -449, 540, 237, -498, 71, -496, -198, -496, 592, + 642, 416, 645, 419, 541, 428, -465, 21, 32, 252, + -496, 593, 16, -465, 646, 678, 21, 35, 535, 64, + 64, 618, 429, 425, 544, 438, -277, 679, 524, 874, + -277, 509, 525, 425, -277, 36, 526, 425, 256, 374, + 283, 283, 690, 213, 213, 420, 283, 283, 496, 497, + 213, 37, 498, 520, -276, 567, 428, -497, -276, 587, + 323, 591, 292, 293, 294, 38, 295, 562, 296, 425, + 207, -289, -289, 551, 536, 228, 538, 297, 546, 370, + 719, 429, 713, 375, 714, 869, 555, 41, 42, 429, + 438, 557, 438, 57, 58, 367, 368, 467, 468, 429, + 610, 611, 15, 429, 438, -126, 213, 44, 438, 238, + 63, 322, 425, 655, 656, 224, 46, 276, 48, 47, + 303, 50, 437, 428, 437, 562, 51, 629, 66, 588, + 590, 68, 69, 428, 267, 429, 582, 428, 70, 273, + 224, 71, 224, 280, 72, 92, 429, 93, 429, 267, + 201, 202, 203, 204, 400, 205, 400, 207, 323, 323, + 549, 206, 208, 209, 429, 239, 253, 309, 425, 428, + 393, 242, 393, 425, 425, 425, 425, 425, 429, 427, + 241, 245, 246, 224, 254, -115, 349, 583, 262, 612, + 257, 16, 213, 612, 350, 324, 313, 633, 438, 355, + 263, 438, 356, 357, 361, 358, 558, 559, 311, 322, + 322, 228, 428, 277, -109, 411, 362, 418, 443, 442, + 447, 445, 448, 453, 449, -499, 457, 682, 663, 458, + 465, 459, 441, 461, 429, 466, 410, 463, 410, 429, + 429, 429, 429, 429, 450, 473, 474, 267, 476, -431, + 485, 486, 515, 491, 429, -314, 521, 429, 323, 522, + 639, -264, 523, 527, 528, 520, 644, 537, 428, 425, + 539, 530, -118, 428, 428, 428, 428, 428, 533, 634, + 612, 534, 542, 556, 425, 564, 544, 508, 569, 571, + 572, 573, 547, 324, 324, 574, 553, 516, 578, 575, + 579, 598, 323, 602, 613, 614, 323, 517, 58, 322, + 267, 518, 619, 192, 621, 623, 624, 635, 641, 647, + 660, 664, 671, 425, 809, 666, 323, 665, 667, 323, + 668, -127, 323, 674, 675, 429, 672, 680, 704, 819, + 393, 673, 809, 532, 814, 676, 686, 681, 685, 7, + 429, 688, 705, 322, 816, 817, 821, 322, 393, 215, + 219, -11, 273, 267, 267, -500, -10, 871, 872, 428, + 639, 866, 639, 865, 214, 218, 875, 322, 644, 722, + 322, 372, 662, 322, 428, 823, 566, 703, 710, 549, + 820, 425, 195, 324, 630, 510, 267, 631, 720, 689, + 371, 31, 40, 721, 94, 60, 549, 91, 96, 615, + 616, 24, 669, 52, 812, 706, 49, 580, 323, 581, + 563, 483, 648, 428, 549, 419, 0, 0, 0, 0, + 323, 0, 0, 0, 354, 0, 809, 324, 0, 809, + 0, 324, 601, 0, 0, 0, 0, 605, 606, 607, + 608, 609, 393, 0, 0, 393, 0, 429, 0, 0, + 0, 324, 0, 0, 324, 0, 0, 324, 0, 322, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 431, 0, 0, 0, 0, 0, 0, 319, 0, 0, + 0, 322, 292, 293, 294, 0, 295, 0, 296, 0, + 0, 428, 0, 0, 323, 0, 0, 297, 0, 292, + 293, 294, 0, 295, 0, 296, 0, 273, 267, 0, + 0, 557, 0, 0, 297, 0, 0, 0, 549, 0, + 0, 549, 0, 0, 0, 0, 0, 0, 557, 0, + 0, 0, 323, 0, 0, 292, 376, 377, 0, 378, + 303, 379, 0, 670, 0, 322, 0, 323, 0, 0, + 297, 0, 0, 324, 380, 381, 582, 303, 677, 0, + 98, 0, 267, 0, 421, 324, 267, 0, 0, 0, + 383, 0, 0, 0, 0, 0, 0, 384, 0, 0, + 0, 0, 0, 322, 0, 0, 0, 309, 0, 0, + 0, 0, 0, 303, 0, 0, 0, 711, 322, 0, + 0, 0, 0, 0, 309, 0, 422, 0, 0, 0, + 0, 0, 0, 0, 810, 0, 313, 0, 0, 386, + 0, 0, 0, 0, 0, 0, 558, 559, 0, 324, + 0, 0, 818, 313, 0, 0, 0, 0, 0, 0, + 309, 134, 0, 558, 559, 0, 0, 0, 0, 0, + 387, 0, 0, 0, 388, 600, 0, 0, 0, 0, + 0, 0, 0, 23, 0, 517, 0, 324, 0, 313, + 0, 389, 0, 0, 0, 0, 0, 0, 0, 423, + 424, 0, 324, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 812, 0, 0, - 0, 0, 0, 0, 0, 0, 323, 0, 0, 0, - 431, 0, 0, 0, 0, 0, 658, 659, 302, 382, - 383, 0, 384, 0, 385, 0, 0, 0, 830, 0, - 0, 0, 0, 307, 0, 101, 0, 386, 387, 0, - 0, 399, 553, 554, 555, 103, 556, 557, 558, 559, - 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, - 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, - 580, 581, 582, 583, 584, 585, 586, 587, 116, 117, - 118, 119, 588, 589, 590, 591, 592, 593, 594, 595, - 596, 122, 597, 598, 599, 600, 123, 601, 125, 602, - 603, 604, 605, 606, 607, 608, 609, 128, 610, 611, - 612, 613, 614, 615, 616, 617, 618, 619, 134, 620, - 135, 621, 622, 623, 624, 625, 626, 627, 139, 140, - 141, 142, 143, 628, 0, 0, 0, 394, 718, 0, - 0, 145, 0, 0, 0, 0, 23, 0, 0, 0, - 629, 0, 323, 0, 395, 302, 382, 383, 0, 384, - 0, 385, 630, 397, 0, 0, 0, 0, 0, 0, - 307, 0, 101, 0, 551, 552, 0, 0, 0, 553, - 554, 555, 103, 556, 557, 558, 559, 560, 561, 562, - 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, - 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, - 583, 584, 585, 586, 587, 116, 117, 118, 119, 588, - 589, 590, 591, 592, 593, 594, 595, 596, 122, 597, - 598, 599, 600, 123, 601, 125, 602, 603, 604, 605, - 606, 607, 608, 609, 128, 610, 611, 612, 613, 614, - 615, 616, 617, 618, 619, 134, 620, 135, 621, 622, - 623, 624, 625, 626, 627, 139, 140, 141, 142, 143, - 628, 0, 0, 0, 394, 0, 0, 0, 145, 0, - 302, 303, 304, 23, 305, 0, 306, 629, 0, 323, - 0, 395, 0, 0, 0, 307, 0, 101, 0, 630, - 397, 0, 0, 0, 0, 102, 308, 103, 0, 309, - 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, - 0, 310, 311, 110, 111, 0, 0, 112, 113, 312, - 0, 0, 114, 0, 0, 0, 0, 115, 313, 314, - 116, 117, 118, 119, 0, 0, 0, 0, 315, 120, - 0, 121, 0, 122, 0, 316, 0, 0, 123, 124, - 125, 126, 0, 127, 0, 317, 0, 0, 0, 128, - 0, 129, 130, 131, 132, 133, 318, 232, 0, 0, - 134, 0, 135, 136, 137, 319, 138, 0, 0, 0, - 139, 140, 141, 142, 143, 320, 0, 0, 0, 321, - 0, 322, 0, 145, 302, 303, 304, 0, 305, 0, - 306, 0, 0, 0, 323, 0, 0, 0, 0, 307, - 0, 101, 0, 0, 324, 325, 0, 0, 0, 102, - 308, 103, 0, 309, 0, 0, 105, 106, 107, 0, - 108, 109, 0, 0, 0, 0, 0, 110, 111, 0, - 0, 112, 113, 0, 0, 0, 114, 0, 0, 0, - 0, 115, 313, 314, 116, 117, 118, 119, 0, 0, - 0, 0, 315, 120, 0, 121, 0, 122, 0, 316, - 0, 0, 123, 124, 125, 126, 0, 127, 0, 317, - 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, - 318, 232, 0, 0, 134, 0, 135, 136, 137, 319, - 138, 0, 0, 0, 139, 140, 141, 142, 143, 320, - 0, 484, 0, 0, 0, 322, 0, 145, 0, 0, - 0, 0, 0, 0, 0, 302, 382, 383, 323, 384, - 0, 385, 0, 0, 0, 0, 0, 0, 324, 325, - 307, 0, 101, 0, 386, 387, 0, 0, 0, 0, - 102, 0, 103, 0, 388, 0, 0, 105, 106, 107, - 389, 108, 109, 0, 0, 0, 0, 390, 110, 111, - 0, 0, 112, 113, 0, 0, 0, 114, 0, 0, - 0, 0, 115, 313, 0, 116, 117, 118, 119, 0, - 0, 0, 0, 0, 120, 0, 391, 0, 122, 0, - 0, 0, 0, 123, 124, 125, 126, 0, 127, 392, - 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, - 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, - 319, 138, 0, 0, 0, 139, 140, 141, 142, 143, - 393, 0, 0, 0, 394, 0, 0, 0, 145, 0, - 302, 303, 304, 23, 305, 0, 306, 0, 0, 323, - 0, 395, 0, 0, 0, 307, 0, 101, 0, 396, - 397, 0, 0, 0, 0, 102, 308, 103, 0, 309, - 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, - 0, 0, 0, 110, 111, 0, 0, 112, 113, 0, - 0, 0, 114, 0, 0, 0, 0, 115, 313, 314, - 116, 117, 118, 119, 0, 0, 0, 0, 315, 120, - 0, 121, 0, 122, 0, 316, 0, 0, 123, 124, - 125, 126, 0, 127, 0, 317, 0, 0, 0, 128, - 0, 129, 130, 131, 132, 133, 318, 232, 0, 0, - 134, 0, 135, 136, 137, 319, 138, 0, 0, 0, - 139, 140, 141, 142, 143, 320, 0, 0, 0, 0, - 0, 322, 0, 145, 0, 0, 0, 0, 0, 0, - 0, 302, 382, 383, 323, 384, 0, 385, 0, 0, - 0, 0, 0, 0, 324, 325, 307, 0, 101, 0, - 386, 387, 0, 0, 0, 0, 102, 0, 103, 0, - 388, 0, 0, 105, 106, 107, 389, 108, 109, 0, - 0, 0, 0, 390, 110, 111, 0, 0, 112, 113, - 0, 0, 0, 114, 0, 0, 0, 0, 115, 313, - 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, - 120, 0, 391, 0, 122, 0, 0, 0, 0, 123, - 124, 125, 126, 0, 127, 392, 0, 0, 0, 0, - 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, - 0, 134, 0, 135, 136, 137, 319, 138, 0, 0, - 0, 139, 140, 141, 142, 143, 393, 0, 0, 0, - 394, 0, 0, 0, 145, 0, 302, 303, 304, 23, - 305, 0, 306, 0, 0, 323, 0, 395, 0, 0, - 0, 307, 0, 101, 0, 429, 397, 0, 0, 0, - 0, 102, 0, 103, 0, 309, 0, 0, 105, 106, - 107, 0, 108, 109, 0, 0, 0, 0, 0, 110, - 111, 0, 0, 112, 113, 0, 0, 0, 114, 0, - 0, 0, 0, 115, 313, 314, 116, 117, 118, 119, - 0, 0, 0, 0, 315, 120, 0, 121, 0, 122, - 0, 316, 0, 0, 123, 124, 125, 126, 0, 127, - 0, 317, 0, 0, 0, 128, 0, 129, 130, 131, - 132, 133, 318, 232, 0, 302, 134, 0, 135, 136, - 137, 319, 138, 0, 0, 0, 139, 140, 141, 142, - 143, 320, 101, 0, 0, 0, 0, 322, 0, 145, - 102, 0, 103, 0, 104, 0, 0, 105, 106, 107, - 323, 108, 109, 0, 0, 0, 0, 0, 110, 111, - 324, 325, 112, 113, 0, 0, 0, 114, 0, 0, - 0, 0, 115, 0, 0, 116, 117, 118, 119, 0, - 0, 0, 0, 0, 120, 0, 121, 0, 122, 0, - 0, 0, 0, 123, 124, 125, 126, 0, 127, 0, - 0, 0, 0, 0, 128, 0, 129, 130, 131, 132, - 133, 0, 0, 0, 0, 134, 0, 135, 136, 137, - 0, 138, 0, 0, 0, 139, 140, 141, 142, 143, - 0, 0, 0, 302, 382, 383, 0, 384, 145, 385, - 0, 302, 303, 304, 0, 305, 0, 306, 307, 323, - 101, 0, 386, 387, 0, 0, 307, 0, 102, 146, - 205, 0, 427, 0, 0, 302, 382, 383, 389, 384, - 657, 385, 0, 0, 0, 390, 0, 0, 0, 0, - 307, 0, 0, 0, 386, 387, 0, 0, 0, 0, - 102, 313, 0, 0, 427, 0, 0, 0, 0, 313, - 389, 0, 0, 0, 428, 0, 0, 390, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 392, 0, 0, - 0, 0, 0, 313, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 428, 0, 319, 138, - 0, 0, 0, 0, 0, 0, 319, 0, 393, 392, - 0, 0, 810, 0, 0, 0, 0, 0, 0, 0, - 0, 23, 0, 0, 0, 0, 0, 323, 0, 395, - 319, 138, 0, 0, 0, 323, 0, 429, 430, 0, - 393, 0, 0, 0, 394, 658, 659, 0, 101, 0, - 0, 0, 0, 23, 0, 0, 102, 0, 103, 323, - 104, 395, 0, 105, 106, 107, 0, 108, 109, 429, - 430, 0, 0, 0, 110, 111, 0, 0, 112, 113, - 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, - 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, - 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, - 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, - 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, - 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, - 0, 139, 140, 141, 142, 143, 0, 144, 0, 0, - 98, 101, 0, 0, 145, 0, 0, 0, 0, 102, - 0, 103, 0, 104, 0, 0, 105, 106, 107, 0, - 108, 109, 0, 0, 0, 146, 16, 110, 111, 0, - 0, 112, 113, 0, 0, 0, 114, 0, 256, 0, - 0, 115, 0, 0, 116, 117, 118, 119, 0, 257, - 0, 0, 0, 120, 0, 121, 0, 122, 0, 0, - 0, 0, 123, 124, 125, 126, 0, 127, 0, 0, - 0, 0, 0, 128, 0, 129, 130, 131, 132, 133, - 0, 0, 0, 0, 134, 0, 135, 136, 137, 0, - 138, 0, 0, 0, 139, 140, 141, 142, 143, 0, - 101, 0, 373, 374, 0, 0, 0, 145, 102, 0, - 103, 0, 104, 0, 0, 105, 106, 107, 0, 108, - 109, 0, 0, 0, 0, 0, 110, 111, 146, 16, - 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, - 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, - 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, - 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, - 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, - 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, - 0, 0, 0, 139, 140, 141, 142, 143, 0, 101, - 0, 0, 0, 0, 0, 0, 145, 102, 0, 103, - 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, - 0, 0, 0, 0, 0, 110, 111, 146, 16, 112, - 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, - 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, - 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, - 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, - 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, - 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, - 0, 0, 139, 140, 141, 142, 143, 0, 101, 0, - 0, 98, 0, 0, 0, 145, 102, 0, 103, 0, - 104, 0, 0, 105, 106, 107, 0, 108, 109, 241, - 0, 0, 0, 0, 110, 111, 146, 16, 112, 113, - 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, - 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, - 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, - 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, - 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, - 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, - 0, 139, 140, 141, 142, 143, 0, 101, 0, 0, - 0, 0, 0, 0, 145, 102, 0, 103, 0, 104, - 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, - 0, 0, 0, 110, 111, 204, 16, 112, 113, 0, - 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, - 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, - 0, 121, 0, 122, 0, 0, 0, 0, 123, 124, - 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, - 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, - 134, 0, 135, 136, 137, 0, 138, 0, 0, 0, - 139, 140, 141, 142, 143, 0, 250, 0, 0, 0, - 101, 0, 0, 145, 0, 0, 0, 0, 102, 0, - 103, 0, 104, 0, 0, 105, 106, 107, 0, 108, - 109, 0, 0, 0, 146, 16, 110, 111, 0, 0, - 112, 113, 0, 0, 0, 114, 0, 0, 0, 0, - 115, 0, 0, 116, 117, 118, 119, 0, 0, 0, - 0, 0, 120, 0, 121, 0, 122, 0, 0, 0, - 0, 123, 124, 125, 126, 0, 127, 0, 0, 0, - 0, 0, 128, 0, 129, 130, 131, 132, 133, 0, - 0, 0, 0, 134, 0, 135, 136, 137, 0, 138, - 0, 0, 0, 139, 140, 141, 142, 143, 0, 101, - 0, 0, 0, 0, 0, 0, 145, 102, 260, 103, - 0, 104, 0, 0, 105, 106, 107, 0, 108, 109, - 0, 0, 0, 0, 0, 110, 111, 146, 16, 112, - 113, 0, 0, 0, 114, 0, 0, 0, 0, 115, - 0, 0, 116, 117, 118, 119, 0, 0, 0, 0, - 0, 120, 0, 121, 0, 122, 0, 0, 0, 0, - 123, 124, 125, 126, 0, 127, 0, 0, 0, 0, - 0, 128, 0, 129, 130, 131, 132, 133, 0, 0, - 0, 0, 134, 0, 135, 136, 137, 0, 138, 0, - 0, 0, 139, 140, 141, 142, 143, 0, 101, 732, - 0, 0, 0, 0, 0, 145, 102, 0, 103, 0, - 104, 0, 0, 105, 106, 107, 0, 108, 109, 0, - 0, 0, 0, 0, 110, 111, 204, 16, 112, 113, - 0, 0, 0, 114, 0, 0, 0, 0, 115, 0, - 0, 116, 117, 118, 119, 0, 0, 0, 0, 0, - 120, 0, 121, 0, 122, 0, 0, 0, 0, 123, - 124, 125, 126, 0, 127, 0, 0, 0, 0, 0, - 128, 0, 129, 130, 131, 132, 133, 0, 0, 0, - 0, 134, 0, 135, 136, 137, 0, 138, 0, 0, - 0, 139, 140, 141, 142, 143, 0, 101, 0, 0, - 0, 0, 0, 0, 145, 102, 0, 103, 0, 104, - 0, 0, 105, 106, 107, 0, 108, 109, 0, 0, - 0, 0, 0, 110, 111, 204, 205, 112, 113, 0, - 0, 0, 114, 0, 0, 0, 0, 115, 0, 0, - 116, 117, 118, 119, 0, 0, 0, 0, 0, 120, - 0, 121, 0, 122, 0, 0, 0, 0, 123, 124, - 125, 126, 0, 127, 0, 0, 0, 0, 0, 128, - 0, 129, 130, 131, 132, 133, 0, 0, 0, 0, - 134, 0, 135, 136, 137, 0, 138, 0, 0, 0, - 139, 140, 141, 142, 143, 0, 101, 0, 0, 0, - 0, 0, 0, 145, 102, 0, 103, 0, 104, 0, - 0, 105, 106, 107, 0, 108, 109, 0, 0, 0, - 0, 0, 110, 111, 146, 16, 112, 113, 0, 0, - 0, 114, 0, 0, 0, 0, 115, 0, 0, 116, - 117, 118, 119, 0, 0, 0, 0, 0, 120, 0, - 121, 0, 122, 0, 0, 0, 0, 123, 124, 125, - 126, 0, 127, 0, 0, 0, 0, 0, 128, 0, - 129, 130, 131, 132, 133, 0, 0, 0, 0, 134, - 0, 135, 136, 137, 0, 138, 0, 0, 0, 139, - 140, 141, 142, 143, 0, 0, 0, 0, 0, 0, - 0, 0, 145, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 292, 376, + 377, 0, 378, 0, 379, 0, 0, 0, 0, 0, + 0, 0, 0, 297, 0, 97, 810, 380, 381, 810, + 0, 0, 725, 726, 727, 99, 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, 759, 112, 113, + 114, 115, 760, 761, 762, 763, 764, 765, 766, 767, + 768, 118, 769, 770, 771, 772, 119, 773, 121, 774, + 775, 776, 777, 778, 779, 780, 781, 124, 782, 783, + 784, 785, 786, 787, 788, 789, 790, 791, 130, 792, + 131, 793, 794, 795, 796, 797, 798, 799, 135, 136, + 137, 138, 139, 800, 0, 0, 0, 388, 822, 0, + 0, 142, 0, 0, 0, 0, 23, 0, 0, 0, + 801, 0, 313, 0, 389, 292, 376, 377, 0, 378, + 0, 379, 802, 391, 0, 0, 0, 0, 0, 0, + 297, 0, 97, 0, 723, 724, 0, 0, 0, 725, + 726, 727, 99, 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, 759, 112, 113, 114, 115, 760, + 761, 762, 763, 764, 765, 766, 767, 768, 118, 769, + 770, 771, 772, 119, 773, 121, 774, 775, 776, 777, + 778, 779, 780, 781, 124, 782, 783, 784, 785, 786, + 787, 788, 789, 790, 791, 130, 792, 131, 793, 794, + 795, 796, 797, 798, 799, 135, 136, 137, 138, 139, + 800, 0, 0, 0, 388, 0, 0, 0, 142, 0, + 292, 293, 294, 23, 295, 0, 296, 801, 0, 313, + 0, 389, 0, 0, 0, 297, 0, 97, 0, 802, + 391, 0, 0, 0, 0, 98, 298, 99, 0, 299, + 0, 0, 101, 102, 103, 0, 104, 105, 0, 0, + 0, 300, 301, 106, 107, 0, 0, 108, 109, 302, + 0, 0, 110, 0, 0, 0, 0, 111, 303, 304, + 112, 113, 114, 115, 0, 0, 0, 0, 305, 116, + 0, 117, 0, 118, 0, 306, 0, 0, 119, 120, + 121, 122, 0, 123, 0, 307, 0, 0, 0, 124, + 0, 125, 126, 127, 128, 129, 308, 211, 0, 0, + 130, 0, 131, 132, 133, 309, 134, 0, 0, 0, + 135, 136, 137, 138, 139, 310, 0, 0, 0, 311, + 0, 312, 0, 142, 292, 293, 294, 0, 295, 0, + 296, 0, 0, 0, 313, 0, 0, 0, 0, 297, + 0, 97, 0, 0, 314, 315, 0, 0, 0, 98, + 298, 99, 0, 299, 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, 303, 304, 112, 113, 114, 115, 0, 0, + 0, 0, 305, 116, 0, 117, 0, 118, 0, 306, + 0, 0, 119, 120, 121, 122, 0, 123, 0, 307, + 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, + 308, 211, 0, 0, 130, 0, 131, 132, 133, 309, + 134, 0, 0, 0, 135, 136, 137, 138, 139, 310, + 0, 469, 0, 0, 0, 312, 0, 142, 0, 0, + 0, 0, 0, 0, 0, 292, 376, 377, 313, 378, + 0, 379, 0, 0, 0, 0, 0, 0, 314, 315, + 297, 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, 303, 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, 124, 0, 125, 126, 127, 128, + 129, 0, 0, 0, 0, 130, 0, 131, 132, 133, + 309, 134, 0, 0, 0, 135, 136, 137, 138, 139, + 387, 0, 0, 0, 388, 0, 0, 0, 142, 0, + 292, 293, 294, 23, 295, 0, 296, 0, 0, 313, + 0, 389, 0, 0, 0, 297, 0, 97, 0, 390, + 391, 0, 0, 0, 0, 98, 298, 99, 0, 299, + 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, 303, 304, + 112, 113, 114, 115, 0, 0, 0, 0, 305, 116, + 0, 117, 0, 118, 0, 306, 0, 0, 119, 120, + 121, 122, 0, 123, 0, 307, 0, 0, 0, 124, + 0, 125, 126, 127, 128, 129, 308, 211, 0, 0, + 130, 0, 131, 132, 133, 309, 134, 0, 0, 0, + 135, 136, 137, 138, 139, 310, 0, 0, 0, 0, + 0, 312, 0, 142, 0, 0, 0, 0, 0, 0, + 0, 292, 376, 377, 313, 378, 0, 379, 0, 0, + 0, 0, 0, 0, 314, 315, 297, 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, 303, + 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, + 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, + 0, 130, 0, 131, 132, 133, 309, 134, 0, 0, + 0, 135, 136, 137, 138, 139, 387, 0, 0, 0, + 388, 0, 0, 0, 142, 0, 292, 293, 294, 23, + 295, 0, 296, 0, 0, 313, 0, 389, 0, 0, + 0, 297, 0, 97, 0, 423, 391, 0, 0, 0, + 0, 98, 0, 99, 0, 299, 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, 303, 304, 112, 113, 114, 115, + 0, 0, 0, 0, 305, 116, 0, 117, 0, 118, + 0, 306, 0, 0, 119, 120, 121, 122, 0, 123, + 0, 307, 0, 0, 0, 124, 0, 125, 126, 127, + 128, 129, 308, 211, 0, 292, 130, 0, 131, 132, + 133, 309, 134, 0, 0, 0, 135, 136, 137, 138, + 139, 310, 97, 0, 0, 0, 0, 312, 0, 142, + 98, 0, 99, 0, 100, 0, 0, 101, 102, 103, + 313, 104, 105, 0, 0, 0, 0, 0, 106, 107, + 314, 315, 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, 292, 376, 377, 0, 378, 142, 379, + 0, 0, 0, 0, 0, 0, 0, 0, 297, 313, + 97, 0, 380, 381, 0, 0, 0, 0, 98, 143, + 230, 0, 421, 0, 0, 292, 376, 377, 383, 378, + 0, 379, 0, 0, 0, 384, 0, 0, 0, 0, + 297, 0, 0, 0, 380, 381, 0, 0, 0, 0, + 98, 303, 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, 303, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 422, 0, 309, 134, + 0, 0, 0, 0, 0, 0, 0, 0, 387, 386, + 0, 0, 709, 0, 0, 0, 0, 0, 0, 0, + 0, 23, 0, 0, 0, 0, 0, 313, 0, 389, + 309, 134, 0, 0, 0, 0, 0, 423, 424, 0, + 387, 0, 0, 0, 388, 0, 0, 0, 97, 0, + 0, 0, 0, 23, 0, 0, 98, 0, 99, 313, + 100, 389, 0, 101, 102, 103, 0, 104, 105, 423, + 424, 0, 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, 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, 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, 628, + 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, 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, - 373, 374, 0, 204, 16, 553, 832, 555, 0, 556, - 833, 558, 559, 834, 835, 836, 837, 838, 839, 566, - 567, 568, 569, 840, 841, 842, 573, 574, 843, 844, - 577, 578, 579, 845, 581, 582, 583, 584, 846, 847, - 587, 0, 0, 0, 0, 588, 589, 590, 591, 592, - 848, 594, 849, 596, 0, 597, 598, 599, 600, 0, - 850, 0, 851, 603, 852, 853, 606, 607, 608, 609, - 0, 610, 854, 855, 856, 857, 858, 616, 617, 618, - 619, 0, 620, 0, 859, 860, 861, 862, 625, 626, - 627, 0, 0, 0, 0, 0, 863, 0, 0, 0, + 367, 368, 0, 221, 16, 725, 824, 727, 0, 728, + 825, 730, 731, 826, 827, 828, 829, 830, 831, 738, + 739, 740, 741, 832, 833, 834, 745, 746, 835, 836, + 749, 750, 751, 837, 753, 754, 755, 756, 838, 839, + 759, 0, 0, 0, 0, 760, 761, 762, 763, 764, + 840, 766, 841, 768, 0, 769, 770, 771, 772, 0, + 842, 0, 843, 775, 844, 845, 778, 779, 780, 781, + 0, 782, 846, 847, 848, 849, 850, 788, 789, 790, + 791, 0, 792, 0, 851, 852, 853, 854, 797, 798, + 799, 0, 0, 0, 0, 0, 855, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 629, 0, 0, 0, 0, 0, 0, - 0, 0, 553, 832, 555, 865, 556, 833, 558, 559, - 834, 835, 836, 837, 838, 839, 566, 567, 568, 569, - 840, 841, 842, 573, 574, 843, 844, 577, 578, 579, - 845, 581, 582, 583, 584, 846, 847, 587, 0, 0, - 0, 0, 588, 589, 590, 591, 592, 848, 594, 849, - 596, 0, 597, 598, 599, 600, 0, 850, 0, 851, - 603, 852, 853, 606, 607, 608, 609, 0, 610, 854, - 855, 856, 857, 858, 616, 617, 618, 619, 0, 620, - 0, 859, 860, 861, 862, 625, 626, 627, 0, 0, - 0, 0, 0, 863, 0, 0, 0, 0, 874, 0, - 0, 864, 0, 0, 0, 0, 0, 0, 0, 0, - 629, 0, 0, 0, 0, 0, 0, 0, 0, 553, - 832, 555, 865, 556, 833, 558, 559, 834, 835, 836, - 837, 838, 839, 566, 567, 568, 569, 840, 841, 842, - 573, 574, 843, 844, 577, 578, 579, 845, 581, 582, - 583, 584, 846, 847, 587, 0, 0, 0, 0, 588, - 589, 590, 591, 592, 848, 594, 849, 596, 0, 597, - 598, 599, 600, 0, 850, 0, 851, 603, 852, 853, - 606, 607, 608, 609, 0, 610, 854, 855, 856, 857, - 858, 616, 617, 618, 619, 0, 620, 0, 859, 860, - 861, 862, 625, 626, 627, 0, 0, 0, 0, 0, - 863, 0, 0, 0, 0, 0, 0, 0, 864, 879, - 0, 0, 0, 0, 0, 0, 0, 629, 0, 0, - 0, 0, 0, 0, 0, 0, 553, 832, 555, 865, - 556, 833, 558, 559, 834, 835, 836, 837, 838, 839, - 566, 567, 568, 569, 840, 841, 842, 573, 574, 843, - 844, 577, 578, 579, 845, 581, 582, 583, 584, 846, - 847, 587, 0, 0, 0, 0, 588, 589, 590, 591, - 592, 848, 594, 849, 596, 0, 597, 598, 599, 600, - 0, 850, 0, 851, 603, 852, 853, 606, 607, 608, - 609, 0, 610, 854, 855, 856, 857, 858, 616, 617, - 618, 619, 0, 620, 0, 859, 860, 861, 862, 625, - 626, 627, 0, 0, 0, 0, 0, 863, 0, 0, - 0, 0, -270, 0, -270, 864, -270, 0, -270, -270, - 0, 0, 0, 0, 629, 0, -270, -270, -270, -270, - 0, 0, 0, -270, -270, 0, 865, -270, -270, -270, - 0, -270, -270, -270, -270, 0, 0, -270, 0, 0, - 0, 0, -270, -270, -270, -270, -270, 0, -270, 0, - -270, 0, -270, -270, -270, -270, 0, 0, 0, 0, - -270, 0, 0, -270, -270, -270, -270, 0, -270, 0, - 0, 0, 0, 0, -270, -270, -270, -270, 0, -270, - 0, 0, 0, 0, 0, -270, -270, -270, 0, 0, - -271, 0, -271, 0, -271, 0, -271, -271, -270, 0, - 0, 0, 0, 0, -271, -271, -271, -271, 0, 0, - -270, -271, -271, 0, 0, -271, -271, -271, -270, -271, - -271, -271, -271, 0, 0, -271, 0, 0, 0, 0, - -271, -271, -271, -271, -271, 0, -271, 0, -271, 0, - -271, -271, -271, -271, 0, 0, 0, 0, -271, 0, - 0, -271, -271, -271, -271, 0, -271, 0, 0, 0, - 0, 0, -271, -271, -271, -271, 0, -271, 0, 0, - 0, 0, 0, -271, -271, -271, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -271, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -271, 0, - 0, 0, 0, 0, 0, 0, -271 + 0, 0, 0, 801, 0, 0, 0, 0, 0, 0, + 0, 0, 725, 824, 727, 857, 728, 825, 730, 731, + 826, 827, 828, 829, 830, 831, 738, 739, 740, 741, + 832, 833, 834, 745, 746, 835, 836, 749, 750, 751, + 837, 753, 754, 755, 756, 838, 839, 759, 0, 0, + 0, 0, 760, 761, 762, 763, 764, 840, 766, 841, + 768, 0, 769, 770, 771, 772, 0, 842, 0, 843, + 775, 844, 845, 778, 779, 780, 781, 0, 782, 846, + 847, 848, 849, 850, 788, 789, 790, 791, 0, 792, + 0, 851, 852, 853, 854, 797, 798, 799, 0, 0, + 0, 0, 0, 855, 0, 0, 0, 0, 867, 0, + 0, 856, 0, 0, 0, 0, 0, 0, 0, 0, + 801, 0, 0, 0, 0, 0, 0, 0, 0, 725, + 824, 727, 857, 728, 825, 730, 731, 826, 827, 828, + 829, 830, 831, 738, 739, 740, 741, 832, 833, 834, + 745, 746, 835, 836, 749, 750, 751, 837, 753, 754, + 755, 756, 838, 839, 759, 0, 0, 0, 0, 760, + 761, 762, 763, 764, 840, 766, 841, 768, 0, 769, + 770, 771, 772, 0, 842, 0, 843, 775, 844, 845, + 778, 779, 780, 781, 0, 782, 846, 847, 848, 849, + 850, 788, 789, 790, 791, 0, 792, 0, 851, 852, + 853, 854, 797, 798, 799, 0, 0, 0, 0, 0, + 855, 0, 0, 0, 0, 0, 0, 0, 856, 873, + 0, 0, 0, 0, 0, 0, 0, 801, 0, 0, + 0, 0, 0, 0, 0, 0, 725, 824, 727, 857, + 728, 825, 730, 731, 826, 827, 828, 829, 830, 831, + 738, 739, 740, 741, 832, 833, 834, 745, 746, 835, + 836, 749, 750, 751, 837, 753, 754, 755, 756, 838, + 839, 759, 0, 0, 0, 0, 760, 761, 762, 763, + 764, 840, 766, 841, 768, 0, 769, 770, 771, 772, + 0, 842, 0, 843, 775, 844, 845, 778, 779, 780, + 781, 0, 782, 846, 847, 848, 849, 850, 788, 789, + 790, 791, 0, 792, 0, 851, 852, 853, 854, 797, + 798, 799, 0, 0, 0, 0, 0, 855, 0, 0, + 0, 0, -268, 0, -268, 856, -268, 0, -268, -268, + 0, 0, 0, 0, 801, 0, -268, -268, -268, -268, + 0, 0, 0, -268, -268, 0, 857, -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 int asn1_parser::yycheck_[] = { - 9, 228, 449, 265, 98, 99, 273, 0, 449, 18, - 3, 132, 133, 224, 464, 321, 272, 470, 274, 53, - 231, 4, 656, 98, 473, 4, 237, 253, 30, 21, - 296, 21, 66, 67, 98, 99, 70, 4, 32, 4, - 74, 21, 29, 63, 4, 53, 322, 500, 44, 53, - 144, 132, 133, 87, 49, 234, 111, 4, 66, 67, - 23, 24, 70, 21, 98, 21, 74, 44, 111, 335, - 21, 512, 148, 44, 49, 44, 49, 21, 0, 87, - 144, 86, 123, 91, 121, 526, 234, 86, 49, 144, - 98, 76, 49, 88, 121, 76, 101, 123, 91, 125, - 94, 144, 101, 753, 97, 98, 99, 121, 149, 121, - 372, 232, 149, 88, 23, 88, 136, 50, 123, 113, - 125, 125, 149, 110, 123, 121, 125, 88, 124, 779, - 44, 88, 15, 227, 44, 149, 44, 149, 91, 92, - 49, 417, 321, 322, 778, 98, 148, 149, 359, 360, - 121, 144, 121, 149, 365, 366, 250, 149, 148, 253, - 145, 148, 132, 227, 145, 148, 149, 123, 148, 203, - 149, 138, 149, 321, 322, 437, 270, 439, 149, 88, - 149, 148, 149, 148, 149, 148, 250, 634, 148, 149, - 148, 144, 148, 314, 28, 270, 271, 148, 149, 461, - 153, 148, 149, 465, 148, 149, 270, 121, 88, 88, - 124, 121, 125, 121, 866, 224, 122, 226, 532, 228, - 534, 873, 231, 129, 233, 178, 34, 140, 237, 238, - 683, 265, 112, 112, 227, 149, 270, 271, 417, 149, - 467, 149, 123, 234, 878, 198, 125, 124, 459, 74, - 58, 259, 124, 261, 88, 263, 265, 250, 92, 136, - 253, 69, 270, 271, 136, 9, 275, 123, 125, 417, - 263, 125, 265, 123, 18, 125, 123, 270, 231, 126, - 123, 137, 461, 137, 237, 541, 465, 137, 550, 136, - 140, 470, 124, 140, 137, 474, 123, 250, 125, 123, - 253, 125, 124, 256, 257, 105, 532, 260, 534, 317, - 137, 124, 122, 137, 136, 494, 139, 270, 497, 129, - 137, 500, 470, 136, 317, 124, 474, 280, 777, 124, - 321, 322, 149, 60, 437, 136, 439, 136, 372, 140, - 293, 136, 784, 144, 786, 105, 494, 800, 120, 497, - 359, 360, 500, 125, 120, 4, 365, 366, 311, 125, - 136, 482, 120, 810, 140, 671, 120, 125, 144, 810, - 105, 125, 380, 23, 24, 16, 17, 27, 828, 372, - 829, 643, 390, 139, 650, 55, 394, 380, 125, 59, - 140, 70, 129, 126, 144, 661, 349, 390, 23, 24, - 248, 394, 120, 437, 252, 439, 359, 360, 148, 149, - 43, 44, 365, 366, 23, 24, 132, 511, 426, 513, - 35, 263, 141, 870, 253, 71, 417, 461, 437, 870, - 439, 465, 881, 426, 263, 124, 125, 141, 532, 136, - 534, 689, 690, 123, 437, 751, 439, 511, 55, 513, - 459, 91, 92, 124, 141, 464, 449, 123, 467, 102, - 102, 123, 90, 123, 473, 86, 123, 68, 461, 15, - 478, 102, 465, 137, 137, 317, 120, 129, 123, 470, - 149, 137, 137, 474, 790, 478, 753, 123, 317, 140, - 125, 120, 671, 614, 615, 86, 449, 123, 86, 137, - 137, 140, 86, 494, 683, 137, 497, 541, 461, 500, - 86, 545, 779, 724, 21, 468, 550, 123, 511, 123, - 513, 140, 530, 671, 123, 781, 148, 535, 536, 537, - 538, 539, 124, 614, 615, 683, 136, 530, 380, 532, - 136, 534, 535, 536, 537, 538, 539, 124, 390, 131, - 125, 380, 394, 86, 124, 136, 57, 550, 511, 512, - 39, 390, 570, 39, 12, 394, 4, 123, 136, 57, - 664, 122, 751, 137, 129, 124, 124, 570, 125, 532, - 123, 534, 144, 136, 426, 144, 136, 125, 124, 123, - 125, 123, 137, 137, 125, 806, 137, 426, 123, 136, - 664, 124, 126, 751, 143, 126, 136, 449, 136, 643, - 121, 790, 128, 4, 124, 124, 39, 137, 137, 136, - 449, 800, 743, 149, 137, 121, 126, 126, 136, 119, - 136, 126, 124, 642, 136, 126, 478, 126, 631, 126, - 124, 634, 790, 147, 124, 103, 140, 656, 3, 478, - 643, 136, 800, 136, 124, 137, 664, 124, 136, 136, - 669, 123, 137, 137, 136, 136, 675, 136, 124, 693, - 136, 664, 140, 136, 760, 864, 250, 631, 631, 634, - 671, 634, 664, 249, 270, 750, 720, 791, 530, 18, - 664, 792, 683, 535, 536, 537, 538, 539, 4, 5, - 6, 530, 8, 532, 10, 534, 535, 536, 537, 538, - 539, 664, 32, 19, 74, 724, 53, 725, 70, 87, - 4, 5, 6, 797, 8, 776, 10, 33, 570, 550, - 642, 739, 725, 238, 11, 19, 724, 49, 497, 23, - 24, 570, 695, 44, 474, 29, 739, 494, 683, 33, - 344, -1, -1, -1, -1, 39, 62, -1, -1, -1, - 751, -1, 46, -1, -1, -1, -1, 776, 777, 778, - -1, 779, 78, 781, -1, 784, -1, 786, 62, -1, - -1, -1, -1, 792, 793, -1, 779, -1, -1, 631, - -1, 75, 634, -1, -1, -1, -1, 806, -1, 790, - -1, -1, 631, 109, 88, 634, -1, -1, -1, 800, - -1, -1, 4, 5, 6, -1, 8, 810, 10, 828, - 829, -1, -1, 129, -1, 109, 110, 19, -1, -1, - -1, -1, 138, -1, -1, 119, -1, -1, -1, 123, - 124, 33, 148, 149, -1, -1, -1, -1, 132, -1, - -1, -1, -1, -1, 138, -1, 140, 810, -1, -1, - -1, -1, -1, -1, 148, 149, -1, -1, -1, 878, - 62, -1, 881, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 725, -1, -1, 78, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 725, 739, -1, -1, + 9, 128, 129, 140, 141, 448, 311, 207, 458, 18, + 246, 286, 53, 358, 556, 0, 128, 129, 3, 455, + 497, 141, 89, 90, 4, 66, 67, 4, 4, 70, + 4, 312, 21, 74, 21, 691, 4, 258, 515, 21, + 63, 44, 53, 4, 85, 23, 24, 44, 44, 485, + 325, 21, 44, 709, 88, 49, 86, 21, 29, 140, + 141, 88, 21, 111, 76, 649, 76, 125, 49, 206, + 32, 101, 86, 140, 141, 148, 125, 23, 112, 111, + 28, 858, 140, 150, 203, 112, 44, 101, 137, 866, + 674, 210, 0, 123, 88, 125, 144, 216, 125, 211, + 141, 30, 53, 49, 89, 450, 243, 88, 175, 123, + 95, 125, 144, 136, 125, 66, 67, 50, 121, 70, + 44, 124, 44, 74, 121, 206, 15, 124, 195, 121, + 411, 673, 94, 145, 85, 145, 123, 55, 89, 110, + 88, 59, 88, 210, 92, 366, 149, 583, 123, 216, + 806, 113, 149, 149, 49, 140, 141, 149, 138, 200, + 149, 148, 243, 121, 124, 246, 148, 149, 148, 149, + 148, 148, 149, 149, 148, 149, 243, 148, 148, 246, + 148, 149, 249, 250, 148, 530, 253, 148, 149, 148, + 141, 149, 304, 88, 203, 246, 205, 121, 207, 121, + 267, 210, 132, 212, 49, 256, 862, 216, 217, 49, + 431, 34, 433, 123, 691, 125, 283, 258, 123, 148, + 149, 206, 672, 360, 445, 149, 124, 149, 449, 121, + 349, 350, 709, 74, 301, 58, 355, 356, 136, 121, + 360, 361, 121, 88, 149, 123, 69, 125, 88, 258, + 121, 123, 452, 262, 123, 120, 307, 149, 243, 137, + 125, 246, 140, 139, 700, 137, 571, 149, 137, 124, + 149, 256, 339, 258, 521, 550, 523, 123, 149, 360, + 126, 136, 349, 350, 122, 521, 561, 523, 355, 356, + 136, 129, 124, 360, 140, 123, 123, 125, 125, 124, + 137, 252, 124, 254, 136, 256, 122, 9, 125, 137, + 137, 136, 149, 129, 136, 124, 18, 105, 539, 360, + 361, 542, 307, 374, 443, 366, 136, 136, 136, 871, + 140, 676, 140, 384, 144, 105, 144, 388, 120, 120, + 349, 350, 647, 125, 125, 120, 355, 356, 23, 24, + 125, 105, 27, 125, 140, 467, 307, 129, 144, 496, + 213, 498, 4, 5, 6, 60, 8, 817, 10, 420, + 123, 124, 125, 816, 431, 360, 433, 19, 445, 241, + 685, 366, 679, 245, 681, 862, 453, 16, 17, 374, + 431, 33, 433, 148, 149, 23, 24, 43, 44, 384, + 23, 24, 4, 388, 445, 124, 125, 139, 449, 360, + 361, 213, 463, 589, 590, 496, 70, 498, 126, 120, + 62, 132, 431, 374, 433, 875, 35, 564, 71, 496, + 497, 141, 141, 384, 443, 420, 78, 388, 136, 448, + 521, 123, 523, 452, 55, 124, 431, 141, 433, 458, + 102, 102, 123, 90, 521, 123, 523, 123, 311, 312, + 445, 86, 68, 102, 449, 15, 129, 109, 519, 420, + 521, 120, 523, 524, 525, 526, 527, 528, 463, 256, + 137, 137, 123, 564, 137, 123, 86, 129, 123, 530, + 137, 149, 125, 534, 86, 213, 138, 564, 539, 86, + 619, 542, 86, 123, 140, 137, 148, 149, 123, 311, + 312, 496, 463, 498, 140, 123, 140, 21, 136, 124, + 124, 131, 136, 86, 125, 137, 124, 639, 595, 136, + 307, 57, 541, 39, 519, 12, 521, 39, 523, 524, + 525, 526, 527, 528, 137, 4, 123, 556, 136, 57, + 122, 129, 137, 124, 539, 125, 123, 542, 411, 124, + 569, 144, 136, 136, 144, 125, 575, 124, 519, 620, + 125, 137, 123, 524, 525, 526, 527, 528, 137, 564, + 621, 137, 125, 136, 635, 123, 705, 148, 123, 136, + 124, 136, 445, 311, 312, 126, 449, 374, 126, 143, + 121, 128, 455, 4, 124, 124, 459, 384, 149, 411, + 619, 388, 136, 564, 137, 126, 126, 39, 121, 136, + 119, 126, 136, 674, 691, 126, 479, 124, 126, 482, + 126, 124, 485, 140, 124, 620, 136, 124, 103, 124, + 691, 136, 709, 420, 123, 137, 137, 136, 136, 3, + 635, 137, 136, 455, 136, 136, 136, 459, 709, 786, + 787, 137, 671, 672, 673, 140, 137, 136, 124, 620, + 679, 856, 681, 147, 786, 787, 136, 479, 687, 688, + 482, 243, 593, 485, 635, 806, 463, 656, 674, 674, + 803, 742, 90, 411, 564, 360, 705, 564, 686, 646, + 242, 18, 32, 687, 74, 53, 691, 70, 85, 539, + 541, 11, 619, 49, 697, 671, 44, 479, 571, 482, + 459, 334, 583, 674, 709, 676, -1, -1, -1, -1, + 583, -1, -1, -1, 217, -1, 803, 455, -1, 806, + -1, 459, 519, -1, -1, -1, -1, 524, 525, 526, + 527, 528, 803, -1, -1, 806, -1, 742, -1, -1, + -1, 479, -1, -1, 482, -1, -1, 485, -1, 571, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 739, -1, -1, -1, -1, -1, -1, 109, -1, -1, + -1, 583, 4, 5, 6, -1, 8, -1, 10, -1, + -1, 742, -1, -1, 647, -1, -1, 19, -1, 4, + 5, 6, -1, 8, -1, 10, -1, 816, 817, -1, + -1, 33, -1, -1, 19, -1, -1, -1, 803, -1, + -1, 806, -1, -1, -1, -1, -1, -1, 33, -1, + -1, -1, 685, -1, -1, 4, 5, 6, -1, 8, + 62, 10, -1, 620, -1, 647, -1, 700, -1, -1, + 19, -1, -1, 571, 23, 24, 78, 62, 635, -1, + 29, -1, 871, -1, 33, 583, 875, -1, -1, -1, + 39, -1, -1, -1, -1, -1, -1, 46, -1, -1, + -1, -1, -1, 685, -1, -1, -1, 109, -1, -1, + -1, -1, -1, 62, -1, -1, -1, 674, 700, -1, + -1, -1, -1, -1, 109, -1, 75, -1, -1, -1, + -1, -1, -1, -1, 691, -1, 138, -1, -1, 88, + -1, -1, -1, -1, -1, -1, 148, 149, -1, 647, + -1, -1, 709, 138, -1, -1, -1, -1, -1, -1, + 109, 110, -1, 148, 149, -1, -1, -1, -1, -1, + 119, -1, -1, -1, 123, 124, -1, -1, -1, -1, + -1, -1, -1, 132, -1, 742, -1, 685, -1, 138, + -1, 140, -1, -1, -1, -1, -1, -1, -1, 148, + 149, -1, 700, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 779, -1, -1, - -1, -1, -1, -1, -1, -1, 138, -1, -1, -1, - 779, -1, -1, -1, -1, -1, 148, 149, 4, 5, - 6, -1, 8, -1, 10, -1, -1, -1, 810, -1, - -1, -1, -1, 19, -1, 21, -1, 23, 24, -1, - -1, 810, 28, 29, 30, 31, 32, 33, 34, 35, + -1, -1, -1, -1, -1, -1, -1, -1, 4, 5, + 6, -1, 8, -1, 10, -1, -1, -1, -1, -1, + -1, -1, -1, 19, -1, 21, 803, 23, 24, 806, + -1, -1, 28, 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, 62, 63, 64, 65, @@ -8768,21 +8828,21 @@ namespace yy { 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, -1, -1, 4, 5, 6, -1, 8, 127, 10, - -1, 4, 5, 6, -1, 8, -1, 10, 19, 138, - 21, -1, 23, 24, -1, -1, 19, -1, 29, 148, + -1, -1, -1, -1, -1, -1, -1, -1, 19, 138, + 21, -1, 23, 24, -1, -1, -1, -1, 29, 148, 149, -1, 33, -1, -1, 4, 5, 6, 39, 8, - 33, 10, -1, -1, -1, 46, -1, -1, -1, -1, + -1, 10, -1, -1, -1, 46, -1, -1, -1, -1, 19, -1, -1, -1, 23, 24, -1, -1, -1, -1, - 29, 62, -1, -1, 33, -1, -1, -1, -1, 62, + 29, 62, -1, -1, 33, -1, -1, -1, -1, -1, 39, -1, -1, -1, 75, -1, -1, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, 88, -1, -1, -1, -1, -1, 62, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 75, -1, 109, 110, - -1, -1, -1, -1, -1, -1, 109, -1, 119, 88, + -1, -1, -1, -1, -1, -1, -1, -1, 119, 88, -1, -1, 123, -1, -1, -1, -1, -1, -1, -1, -1, 132, -1, -1, -1, -1, -1, 138, -1, 140, - 109, 110, -1, -1, -1, 138, -1, 148, 149, -1, - 119, -1, -1, -1, 123, 148, 149, -1, 21, -1, + 109, 110, -1, -1, -1, -1, -1, 148, 149, -1, + 119, -1, -1, -1, 123, -1, -1, -1, 21, -1, -1, -1, -1, 132, -1, -1, 29, -1, 31, 138, 33, 140, -1, 36, 37, 38, -1, 40, 41, 148, 149, -1, -1, -1, 47, 48, -1, -1, 51, 52, @@ -8966,95 +9026,94 @@ namespace yy { const unsigned short int asn1_parser::yystos_[] = { - 0, 148, 153, 154, 228, 376, 0, 153, 50, 123, - 229, 230, 231, 15, 236, 4, 149, 232, 233, 234, - 235, 311, 374, 132, 316, 74, 34, 58, 69, 237, - 124, 232, 125, 139, 317, 105, 105, 105, 60, 238, - 234, 16, 17, 319, 139, 318, 70, 120, 126, 319, - 132, 35, 318, 59, 239, 240, 30, 148, 149, 241, - 248, 249, 250, 373, 375, 227, 71, 242, 141, 141, - 136, 123, 55, 243, 244, 245, 248, 21, 159, 198, - 202, 203, 204, 205, 206, 207, 251, 252, 261, 262, - 263, 373, 375, 249, 124, 141, 245, 63, 123, 208, - 251, 21, 29, 31, 33, 36, 37, 38, 40, 41, - 47, 48, 51, 52, 56, 61, 64, 65, 66, 67, - 73, 75, 77, 82, 83, 84, 85, 87, 93, 95, - 96, 97, 98, 99, 104, 106, 107, 108, 110, 114, - 115, 116, 117, 118, 120, 127, 148, 158, 186, 187, - 196, 197, 201, 208, 213, 214, 215, 216, 253, 255, - 259, 264, 265, 273, 275, 279, 283, 284, 287, 288, - 289, 293, 294, 295, 296, 300, 301, 302, 303, 307, - 314, 315, 320, 321, 322, 323, 325, 326, 327, 328, - 329, 330, 331, 332, 333, 373, 374, 376, 208, 264, - 373, 376, 246, 376, 148, 149, 156, 157, 158, 209, - 210, 211, 212, 250, 264, 373, 376, 377, 148, 156, - 158, 376, 102, 102, 123, 90, 123, 86, 123, 68, - 102, 86, 101, 123, 125, 334, 358, 86, 123, 334, - 358, 42, 156, 160, 161, 264, 15, 304, 137, 120, - 120, 264, 137, 123, 120, 334, 58, 69, 264, 137, - 129, 137, 264, 120, 137, 123, 247, 308, 375, 124, - 136, 140, 137, 120, 137, 123, 266, 297, 298, 299, - 374, 121, 277, 280, 281, 282, 374, 156, 276, 277, - 374, 264, 266, 374, 334, 44, 121, 124, 266, 290, - 291, 292, 4, 5, 6, 8, 10, 19, 30, 33, + 0, 148, 153, 154, 227, 375, 0, 153, 50, 123, + 228, 229, 230, 15, 235, 4, 149, 231, 232, 233, + 234, 310, 373, 132, 315, 74, 34, 58, 69, 236, + 124, 231, 125, 139, 316, 105, 105, 105, 60, 237, + 233, 16, 17, 318, 139, 317, 70, 120, 126, 318, + 132, 35, 317, 59, 238, 239, 30, 148, 149, 240, + 247, 248, 249, 372, 374, 226, 71, 241, 141, 141, + 136, 123, 55, 242, 243, 244, 247, 159, 198, 202, + 203, 204, 205, 206, 250, 251, 260, 261, 262, 372, + 374, 248, 124, 141, 244, 63, 250, 21, 29, 31, + 33, 36, 37, 38, 40, 41, 47, 48, 51, 52, + 56, 61, 64, 65, 66, 67, 73, 75, 77, 82, + 83, 84, 85, 87, 93, 95, 96, 97, 98, 99, + 104, 106, 107, 108, 110, 114, 115, 116, 117, 118, + 120, 123, 127, 148, 158, 186, 187, 196, 197, 201, + 207, 212, 213, 214, 215, 252, 254, 258, 263, 264, + 272, 274, 278, 282, 283, 286, 287, 288, 292, 293, + 294, 295, 299, 300, 301, 302, 306, 313, 314, 319, + 320, 321, 322, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 372, 373, 375, 207, 263, 372, 375, 245, + 375, 102, 102, 123, 90, 123, 86, 123, 68, 102, + 86, 101, 123, 125, 333, 357, 86, 123, 333, 357, + 42, 148, 156, 157, 158, 160, 161, 263, 375, 376, + 149, 156, 208, 209, 210, 211, 249, 263, 372, 15, + 303, 137, 120, 120, 263, 137, 123, 120, 333, 58, + 69, 263, 137, 129, 137, 263, 120, 137, 123, 246, + 307, 374, 123, 265, 296, 297, 298, 373, 121, 276, + 279, 280, 281, 373, 148, 156, 158, 375, 275, 276, + 373, 263, 265, 373, 333, 44, 121, 124, 265, 289, + 290, 291, 4, 5, 6, 8, 10, 19, 30, 33, 45, 46, 53, 62, 63, 72, 79, 89, 100, 109, - 119, 123, 125, 138, 148, 149, 199, 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, 86, - 86, 264, 266, 124, 290, 86, 86, 123, 140, 32, - 94, 113, 306, 23, 24, 164, 165, 199, 160, 264, - 120, 165, 5, 6, 8, 10, 23, 24, 33, 39, - 46, 75, 88, 119, 123, 140, 148, 149, 156, 201, - 217, 254, 256, 257, 258, 260, 264, 267, 268, 269, - 270, 274, 278, 316, 324, 375, 376, 123, 271, 264, - 264, 165, 373, 264, 21, 373, 120, 33, 75, 148, - 149, 201, 267, 268, 373, 376, 4, 254, 309, 310, - 311, 312, 313, 374, 375, 210, 250, 148, 377, 123, - 186, 188, 189, 190, 192, 285, 286, 374, 124, 136, - 264, 131, 371, 124, 136, 125, 124, 136, 86, 371, - 49, 88, 124, 136, 57, 345, 39, 264, 39, 334, - 268, 12, 43, 44, 121, 200, 338, 337, 4, 123, - 371, 136, 111, 144, 346, 76, 145, 347, 345, 264, - 122, 129, 264, 266, 264, 266, 124, 264, 266, 264, - 266, 23, 24, 27, 162, 163, 166, 167, 170, 172, - 173, 175, 177, 4, 254, 305, 137, 268, 268, 268, - 272, 125, 123, 124, 136, 136, 140, 144, 136, 144, - 137, 137, 337, 268, 137, 137, 254, 309, 124, 309, - 125, 23, 24, 28, 29, 30, 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, 62, 63, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 78, 79, 80, - 81, 83, 85, 86, 87, 88, 89, 90, 91, 92, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 105, 107, 108, 109, 110, 111, 112, 113, 119, 136, - 148, 164, 185, 191, 193, 194, 195, 264, 268, 376, - 378, 124, 136, 125, 121, 266, 254, 264, 278, 372, - 121, 282, 254, 278, 277, 264, 136, 33, 148, 149, - 350, 121, 292, 348, 123, 53, 268, 334, 362, 123, - 363, 136, 124, 136, 126, 143, 222, 223, 126, 121, - 341, 343, 78, 129, 350, 355, 357, 156, 264, 164, - 264, 156, 124, 136, 23, 49, 88, 168, 128, 164, - 124, 268, 4, 257, 257, 268, 268, 268, 268, 268, - 23, 24, 375, 124, 124, 312, 195, 136, 124, 194, - 137, 286, 4, 254, 136, 140, 371, 126, 126, 121, - 291, 371, 121, 156, 196, 212, 220, 264, 376, 39, - 121, 364, 365, 374, 338, 121, 137, 225, 374, 124, - 136, 136, 357, 49, 88, 176, 88, 112, 169, 169, - 169, 49, 88, 178, 119, 179, 163, 264, 126, 124, - 126, 147, 126, 126, 299, 268, 136, 136, 136, 140, - 124, 137, 268, 124, 136, 124, 136, 334, 366, 367, - 136, 137, 224, 137, 223, 338, 188, 49, 88, 174, - 49, 88, 171, 171, 103, 124, 136, 281, 121, 291, - 123, 188, 268, 148, 364, 364, 28, 88, 92, 368, - 338, 224, 225, 374, 271, 350, 123, 155, 136, 136, - 268, 124, 29, 33, 36, 37, 38, 39, 40, 41, - 46, 47, 48, 51, 52, 56, 61, 62, 73, 75, - 83, 85, 87, 88, 95, 96, 97, 98, 99, 107, - 108, 109, 110, 119, 127, 148, 180, 181, 182, 183, - 184, 185, 121, 180, 124, 181, 164, 185, 136, 128, - 291, 136 + 119, 123, 125, 138, 148, 149, 199, 217, 218, 220, + 225, 263, 273, 277, 323, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 347, 348, 349, 350, 351, + 352, 353, 355, 357, 358, 359, 360, 368, 369, 86, + 86, 263, 265, 124, 289, 86, 86, 123, 137, 124, + 136, 140, 140, 32, 94, 113, 305, 23, 24, 164, + 165, 199, 160, 263, 120, 165, 5, 6, 8, 10, + 23, 24, 33, 39, 46, 75, 88, 119, 123, 140, + 148, 149, 156, 201, 216, 253, 255, 256, 257, 259, + 263, 266, 267, 268, 269, 273, 277, 315, 323, 374, + 375, 123, 270, 263, 263, 165, 372, 263, 21, 372, + 120, 33, 75, 148, 149, 201, 266, 267, 372, 375, + 4, 253, 308, 309, 310, 311, 312, 373, 374, 284, + 285, 373, 124, 136, 263, 131, 370, 124, 136, 125, + 137, 124, 136, 86, 370, 49, 88, 124, 136, 57, + 344, 39, 263, 39, 333, 267, 12, 43, 44, 121, + 200, 337, 336, 4, 123, 370, 136, 111, 144, 345, + 76, 145, 346, 344, 263, 122, 129, 263, 265, 263, + 265, 124, 263, 265, 263, 265, 23, 24, 27, 162, + 163, 166, 167, 170, 172, 173, 175, 177, 148, 376, + 209, 249, 4, 253, 304, 137, 267, 267, 267, 271, + 125, 123, 124, 136, 136, 140, 144, 136, 144, 137, + 137, 336, 267, 137, 137, 253, 308, 124, 308, 125, + 124, 136, 125, 121, 265, 253, 263, 277, 371, 375, + 121, 281, 253, 277, 276, 263, 136, 33, 148, 149, + 349, 121, 291, 347, 123, 53, 267, 333, 361, 123, + 362, 136, 124, 136, 126, 143, 221, 222, 126, 121, + 340, 342, 78, 129, 349, 354, 356, 156, 263, 164, + 263, 156, 124, 136, 23, 49, 88, 168, 128, 164, + 124, 267, 4, 256, 256, 267, 267, 267, 267, 267, + 23, 24, 374, 124, 124, 311, 285, 4, 253, 136, + 140, 137, 370, 126, 126, 121, 290, 370, 121, 156, + 196, 211, 219, 263, 375, 39, 121, 363, 364, 373, + 337, 121, 137, 224, 373, 124, 136, 136, 356, 49, + 88, 176, 88, 112, 169, 169, 169, 49, 88, 178, + 119, 179, 163, 263, 126, 124, 126, 126, 126, 298, + 267, 136, 136, 136, 140, 124, 137, 267, 124, 136, + 124, 136, 333, 365, 366, 136, 137, 223, 137, 222, + 337, 123, 186, 188, 189, 190, 192, 49, 88, 174, + 49, 88, 171, 171, 103, 136, 280, 121, 290, 123, + 188, 267, 148, 363, 363, 28, 88, 92, 367, 337, + 223, 224, 373, 23, 24, 28, 29, 30, 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, 62, 63, + 68, 69, 70, 71, 72, 73, 74, 75, 76, 78, + 79, 80, 81, 83, 85, 86, 87, 88, 89, 90, + 91, 92, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 105, 107, 108, 109, 110, 111, 112, 113, + 119, 136, 148, 164, 185, 191, 193, 194, 195, 263, + 267, 377, 270, 349, 123, 155, 136, 136, 267, 124, + 195, 136, 124, 194, 29, 33, 36, 37, 38, 39, + 40, 41, 46, 47, 48, 51, 52, 56, 61, 62, + 73, 75, 83, 85, 87, 88, 95, 96, 97, 98, + 99, 107, 108, 109, 110, 119, 127, 148, 180, 181, + 182, 183, 184, 185, 121, 147, 180, 124, 181, 164, + 185, 136, 124, 128, 290, 136 }; const unsigned short int @@ -9069,55 +9128,55 @@ namespace yy { 182, 183, 184, 184, 184, 185, 185, 186, 186, 187, 188, 188, 189, 189, 190, 191, 192, 193, 193, 194, 194, 195, 195, 196, 196, 197, 198, 199, 200, 200, - 200, 200, 200, 201, 201, 202, 202, 202, 202, 202, - 203, 204, 205, 206, 207, 208, 209, 209, 210, 210, - 211, 211, 212, 212, 213, 214, 215, 216, 216, 217, - 217, 218, 218, 218, 219, 220, 220, 220, 220, 220, + 200, 200, 200, 201, 201, 202, 202, 202, 202, 203, + 204, 205, 206, 207, 208, 208, 209, 209, 210, 210, + 211, 211, 212, 213, 214, 215, 215, 216, 216, 217, + 217, 217, 218, 219, 219, 219, 219, 219, 219, 219, 220, 220, 221, 221, 222, 222, 223, 223, 224, 224, - 225, 225, 226, 226, 226, 227, 228, 229, 229, 229, - 230, 231, 232, 232, 233, 233, 233, 234, 235, 236, - 236, 237, 237, 237, 237, 238, 238, 239, 239, 240, - 240, 240, 241, 241, 242, 242, 243, 243, 244, 244, - 245, 246, 247, 247, 247, 248, 248, 249, 250, 250, - 250, 251, 251, 252, 252, 252, 252, 252, 252, 253, - 253, 253, 254, 254, 255, 256, 257, 257, 258, 258, - 258, 259, 260, 261, 262, 263, 264, 264, 264, 264, - 264, 265, 265, 265, 265, 265, 265, 265, 265, 265, - 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, - 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, - 265, 265, 266, 267, 267, 267, 267, 267, 267, 267, - 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, - 267, 267, 267, 267, 267, 267, 267, 267, 267, 268, - 268, 269, 269, 270, 270, 271, 272, 272, 273, 274, - 274, 275, 275, 276, 276, 277, 277, 278, 278, 279, - 280, 280, 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, 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 + 225, 225, 225, 226, 227, 228, 228, 228, 229, 230, + 231, 231, 232, 232, 232, 233, 234, 235, 235, 236, + 236, 236, 236, 237, 237, 238, 238, 239, 239, 239, + 240, 240, 241, 241, 242, 242, 243, 243, 244, 245, + 246, 246, 246, 247, 247, 248, 249, 249, 249, 250, + 250, 251, 251, 251, 251, 251, 251, 252, 252, 252, + 253, 253, 254, 255, 256, 256, 257, 257, 257, 258, + 259, 260, 261, 262, 263, 263, 263, 263, 263, 264, + 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, + 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, + 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, + 265, 266, 266, 266, 266, 266, 266, 266, 266, 266, + 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, + 266, 266, 266, 266, 266, 266, 267, 267, 267, 268, + 268, 269, 269, 270, 271, 271, 272, 273, 273, 274, + 274, 275, 275, 276, 276, 277, 277, 278, 279, 279, + 279, 279, 280, 280, 281, 281, 282, 283, 283, 284, + 284, 285, 285, 286, 287, 288, 288, 289, 289, 289, + 289, 289, 289, 289, 289, 289, 290, 290, 291, 291, + 291, 291, 292, 292, 293, 293, 294, 294, 295, 296, + 297, 297, 297, 298, 298, 299, 300, 301, 301, 301, + 302, 303, 303, 304, 304, 305, 305, 305, 305, 306, + 307, 307, 308, 308, 309, 309, 309, 310, 311, 311, + 312, 313, 314, 315, 316, 317, 317, 318, 318, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 328, 328, + 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, + 329, 329, 329, 330, 331, 331, 332, 332, 332, 332, + 332, 332, 332, 332, 333, 334, 334, 335, 336, 336, + 336, 337, 337, 338, 338, 339, 340, 340, 341, 342, + 342, 343, 344, 345, 345, 346, 346, 347, 347, 348, + 348, 348, 348, 348, 348, 348, 348, 348, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 350, 351, + 352, 353, 353, 354, 354, 355, 355, 356, 356, 357, + 358, 359, 360, 360, 361, 362, 362, 362, 362, 363, + 363, 364, 365, 366, 366, 367, 367, 367, 367, 368, + 369, 370, 370, 371, 371, 371, 372, 373, 374, 375, + 376, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, + 377, 377, 377, 377, 377, 377, 377, 377 }; const unsigned char @@ -9132,47 +9191,47 @@ namespace yy { 3, 2, 1, 2, 0, 1, 1, 1, 1, 3, 1, 1, 1, 1, 5, 2, 3, 1, 2, 1, 1, 1, 1, 1, 1, 3, 4, 3, 1, 3, - 1, 3, 5, 3, 3, 1, 1, 1, 1, 1, - 4, 5, 5, 4, 5, 3, 1, 3, 3, 1, - 1, 1, 1, 1, 1, 3, 3, 1, 1, 1, - 1, 1, 1, 1, 5, 3, 3, 1, 1, 1, - 1, 0, 1, 4, 1, 3, 2, 4, 2, 0, - 1, 3, 2, 3, 5, 0, 2, 1, 1, 0, - 3, 2, 1, 2, 1, 1, 1, 1, 4, 2, - 0, 2, 2, 2, 0, 2, 0, 3, 0, 3, - 3, 0, 1, 0, 3, 0, 1, 0, 1, 2, - 3, 2, 1, 1, 0, 1, 3, 1, 1, 3, - 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 4, 4, 1, 3, 1, 1, - 1, 3, 3, 3, 4, 4, 1, 1, 1, 1, + 1, 3, 5, 3, 3, 1, 1, 1, 1, 4, + 5, 5, 4, 3, 1, 3, 3, 1, 1, 1, + 1, 1, 1, 3, 3, 1, 1, 1, 1, 1, + 1, 1, 5, 3, 3, 1, 1, 1, 1, 0, + 1, 4, 1, 3, 2, 4, 2, 0, 1, 3, + 2, 3, 5, 0, 2, 1, 1, 0, 3, 2, + 1, 2, 1, 1, 1, 1, 4, 2, 0, 2, + 2, 2, 0, 2, 0, 3, 0, 3, 3, 0, + 1, 0, 3, 0, 1, 0, 1, 2, 3, 2, + 1, 1, 0, 1, 3, 1, 1, 3, 1, 1, + 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 4, 4, 1, 3, 1, 1, 1, 3, + 3, 3, 4, 4, 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, 2, 1, 1, 1, 1, 1, 1, 1, - 2, 1, 4, 1, 1, 1, 1, 3, 3, 3, - 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, - 1, 3, 3, 3, 3, 3, 1, 2, 1, 1, - 1, 1, 4, 1, 3, 4, 4, 1, 2, 4, - 1, 4, 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, + 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, + 4, 1, 1, 1, 1, 3, 3, 3, 1, 1, + 3, 1, 1, 1, 1, 1, 1, 1, 1, 3, + 3, 3, 3, 3, 1, 2, 1, 1, 1, 1, + 4, 1, 3, 4, 4, 1, 2, 4, 1, 4, + 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, 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, 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, - 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, 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, 1, 1, 1, @@ -9180,7 +9239,7 @@ 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 }; @@ -9238,33 +9297,32 @@ namespace yy { "ObjectSetSpec", "ObjectClassFieldType", "ParameterizedAssignment", "ParameterizedTypeAssignment", "ParameterizedValueAssignment", "ParameterizedValueSetTypeAssignment", - "ParameterizedObjectClassAssignment", "ParameterizedObjectAssignment", - "ParameterList", "ParameterSeries", "Parameter", "ParamGovernor", - "Governor", "ReferencedObjects", "TypeFromObject", "InstanceOfType", - "SimpleDefinedType", "SimpleDefinedValue", "GeneralConstraint", - "UserDefinedConstraint", "UserDefinedConstraintParameter", - "TableConstraint", "AtNotationList", "AtNotation", "Level", - "ComponentIdList", "ContentsConstraint", "EncodingControlSections", - "ModuleIdentifier", "DefinitiveIdentification", "DefinitiveOID", - "DefinitiveOIDandIRI", "DefinitiveObjIdComponentList", - "DefinitiveObjIdComponent", "DefinitiveNumberForm", - "DefinitiveNameAndNumberForm", "EncodingReferenceDefault", "TagDefault", - "ExtensionDefault", "ModuleBody", "Exports", "SymbolsExported", - "Imports", "SymbolsImported", "SymbolsFromModuleList", - "SymbolsFromModule", "GlobalModuleReference", "AssignedIdentifier", - "SymbolList", "Symbol", "Reference", "AssignmentList", "Assignment", - "DefinedType", "DefinedValue", "ParameterizedType", "ParameterizedValue", - "ActualParameterList", "ActualParameter", "ExternalTypeReference", - "ExternalValueReference", "TypeAssignment", "ValueAssignment", - "ValueSetTypeAssignment", "Type", "BuiltinType", "NamedType", - "ValueWithoutTypeIdentifier", "Value", "ValueCommaListChoice", - "ValueChoice", "ValueSet", "SequenceOfValues", "BooleanType", - "BooleanValue", "IntegerType", "NamedNumberList", "NamedNumber", - "SignedNumber", "EnumeratedType", "Enumerations", "Enumeration", - "EnumerationItem", "RealType", "BitStringType", "NamedBitList", - "NamedBit", "OctetStringType", "NullType", "SequenceType", - "ComponentTypeLists", "ComponentTypeList", "ComponentType", - "SequenceOfType", "SetType", "SetOfType", "ChoiceType", + "ParameterizedObjectClassAssignment", "ParameterList", "ParameterSeries", + "Parameter", "ParamGovernor", "Governor", "ReferencedObjects", + "TypeFromObject", "InstanceOfType", "SimpleDefinedType", + "SimpleDefinedValue", "GeneralConstraint", "UserDefinedConstraint", + "UserDefinedConstraintParameter", "TableConstraint", "AtNotationList", + "AtNotation", "Level", "ComponentIdList", "ContentsConstraint", + "EncodingControlSections", "ModuleIdentifier", + "DefinitiveIdentification", "DefinitiveOID", "DefinitiveOIDandIRI", + "DefinitiveObjIdComponentList", "DefinitiveObjIdComponent", + "DefinitiveNumberForm", "DefinitiveNameAndNumberForm", + "EncodingReferenceDefault", "TagDefault", "ExtensionDefault", + "ModuleBody", "Exports", "SymbolsExported", "Imports", "SymbolsImported", + "SymbolsFromModuleList", "SymbolsFromModule", "GlobalModuleReference", + "AssignedIdentifier", "SymbolList", "Symbol", "Reference", + "AssignmentList", "Assignment", "DefinedType", "DefinedValue", + "ParameterizedType", "ParameterizedValue", "ActualParameterList", + "ActualParameter", "ExternalTypeReference", "ExternalValueReference", + "TypeAssignment", "ValueAssignment", "ValueSetTypeAssignment", "Type", + "BuiltinType", "NamedType", "ValueWithoutTypeIdentifier", "Value", + "ValueCommaListChoice", "ValueChoice", "ValueSet", "SequenceOfValues", + "BooleanType", "BooleanValue", "IntegerType", "NamedNumberList", + "NamedNumber", "SignedNumber", "EnumeratedType", "Enumerations", + "Enumeration", "EnumerationItem", "RealType", "BitStringType", + "NamedBitList", "NamedBit", "OctetStringType", "NullType", + "SequenceType", "ComponentTypeLists", "ComponentTypeList", + "ComponentType", "SequenceOfType", "SetType", "SetOfType", "ChoiceType", "AlternativeTypeLists", "RootAlternativeTypeList", "AlternativeTypeList", "SelectionType", "PrefixedType", "TaggedType", "Tag", "EncodingReference", "ClassNumber", "Class", "ObjectIdentifierType", @@ -9294,64 +9352,64 @@ namespace yy { const unsigned short int asn1_parser::yyrline_[] = { - 0, 319, 319, 320, 323, 338, 341, 342, 343, 346, - 349, 351, 355, 359, 361, 366, 370, 372, 376, 378, - 380, 381, 382, 383, 386, 388, 396, 398, 402, 406, - 408, 412, 413, 414, 417, 418, 419, 422, 426, 427, - 428, 431, 434, 437, 438, 439, 442, 445, 446, 447, - 450, 453, 454, 455, 461, 462, 465, 466, 469, 470, - 473, 476, 479, 480, 481, 484, 485, 488, 489, 492, - 498, 499, 504, 505, 508, 511, 514, 517, 518, 521, - 522, 525, 526, 530, 531, 534, 537, 541, 544, 545, - 546, 547, 548, 557, 559, 566, 568, 570, 572, 574, - 579, 583, 587, 591, 595, 603, 607, 609, 613, 615, - 619, 620, 623, 624, 639, 651, 660, 667, 668, 672, - 673, 676, 677, 678, 681, 684, 685, 686, 687, 688, - 689, 690, 693, 695, 699, 700, 703, 704, 707, 708, - 711, 712, 715, 716, 717, 728, 736, 743, 744, 745, - 748, 751, 755, 756, 760, 761, 762, 765, 768, 772, - 773, 776, 778, 780, 782, 786, 787, 790, 792, 796, - 797, 798, 801, 802, 805, 807, 810, 812, 815, 817, - 821, 825, 829, 830, 831, 834, 836, 840, 844, 846, - 848, 857, 859, 863, 865, 867, 869, 872, 874, 878, - 880, 882, 888, 890, 893, 897, 900, 902, 906, 908, - 911, 921, 925, 950, 954, 958, 962, 964, 966, 968, - 970, 975, 976, 977, 978, 979, 980, 981, 982, 983, - 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, - 994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, - 1004, 1005, 1008, 1012, 1014, 1016, 1018, 1020, 1022, 1024, - 1026, 1028, 1030, 1032, 1033, 1035, 1037, 1039, 1043, 1044, - 1045, 1046, 1047, 1049, 1051, 1053, 1055, 1057, 1059, 1063, - 1065, 1069, 1070, 1073, 1074, 1077, 1080, 1082, 1090, 1093, - 1094, 1097, 1099, 1103, 1105, 1109, 1111, 1115, 1117, 1121, - 1125, 1128, 1131, 1135, 1138, 1140, 1144, 1146, 1154, 1157, - 1159, 1163, 1164, 1167, 1168, 1182, 1185, 1188, 1190, 1194, - 1196, 1198, 1200, 1202, 1204, 1206, 1208, 1210, 1214, 1216, - 1220, 1222, 1224, 1226, 1238, 1240, 1244, 1246, 1250, 1252, - 1256, 1260, 1264, 1266, 1268, 1272, 1274, 1281, 1284, 1288, - 1290, 1292, 1296, 1300, 1301, 1304, 1306, 1309, 1311, 1313, - 1315, 1325, 1328, 1330, 1334, 1336, 1340, 1342, 1344, 1348, - 1352, 1354, 1357, 1361, 1373, 1376, 1382, 1385, 1386, 1389, - 1390, 1393, 1399, 1406, 1412, 1415, 1418, 1421, 1424, 1427, - 1430, 1431, 1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, - 1442, 1443, 1444, 1445, 1446, 1450, 1453, 1455, 1459, 1461, - 1463, 1465, 1467, 1469, 1471, 1473, 1477, 1480, 1481, 1484, - 1487, 1488, 1489, 1492, 1493, 1496, 1497, 1500, 1503, 1504, - 1507, 1510, 1511, 1514, 1517, 1520, 1521, 1524, 1525, 1528, - 1530, 1533, 1534, 1535, 1536, 1537, 1538, 1539, 1540, 1541, - 1547, 1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1557, - 1560, 1563, 1566, 1569, 1570, 1573, 1574, 1577, 1578, 1581, - 1582, 1585, 1588, 1591, 1594, 1595, 1598, 1600, 1601, 1602, - 1603, 1606, 1607, 1610, 1613, 1616, 1617, 1620, 1621, 1622, - 1623, 1626, 1629, 1632, 1633, 1636, 1637, 1638, 1641, 1645, - 1649, 1653, 1657, 1661, 1662, 1663, 1664, 1665, 1666, 1667, - 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676, 1677, - 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686, 1687, - 1688, 1689, 1690, 1691, 1692, 1693, 1694, 1695, 1696, 1697, - 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1707, - 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, - 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, 1727, - 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737 + 0, 321, 321, 322, 325, 340, 343, 344, 345, 348, + 351, 353, 357, 361, 363, 368, 372, 374, 378, 380, + 382, 383, 384, 385, 388, 390, 398, 400, 404, 408, + 410, 414, 415, 416, 419, 420, 421, 424, 428, 429, + 430, 433, 436, 439, 440, 441, 444, 447, 448, 449, + 452, 455, 456, 457, 463, 464, 467, 468, 471, 472, + 475, 478, 481, 482, 483, 486, 487, 490, 491, 494, + 500, 501, 506, 507, 510, 513, 516, 519, 520, 523, + 524, 527, 528, 532, 533, 536, 539, 543, 546, 547, + 548, 549, 550, 559, 561, 568, 570, 572, 574, 581, + 585, 589, 593, 605, 609, 611, 615, 617, 621, 623, + 627, 629, 645, 657, 666, 673, 674, 678, 679, 682, + 683, 684, 687, 690, 691, 692, 693, 694, 695, 696, + 699, 701, 705, 706, 709, 710, 713, 714, 717, 718, + 721, 722, 723, 734, 742, 749, 750, 751, 754, 757, + 761, 762, 766, 767, 768, 771, 774, 778, 779, 782, + 784, 786, 788, 792, 793, 796, 798, 802, 803, 804, + 807, 808, 811, 813, 816, 818, 821, 823, 827, 831, + 835, 836, 837, 840, 842, 846, 850, 852, 854, 863, + 865, 869, 871, 873, 875, 878, 880, 884, 886, 888, + 894, 896, 899, 903, 906, 908, 912, 914, 917, 927, + 931, 956, 960, 964, 968, 970, 972, 974, 976, 981, + 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, + 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, + 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, + 1014, 1018, 1020, 1022, 1024, 1026, 1028, 1030, 1032, 1034, + 1036, 1038, 1039, 1041, 1043, 1045, 1049, 1050, 1051, 1052, + 1053, 1055, 1057, 1059, 1061, 1063, 1068, 1070, 1072, 1075, + 1076, 1079, 1080, 1083, 1086, 1088, 1096, 1099, 1100, 1103, + 1105, 1109, 1111, 1115, 1117, 1121, 1123, 1127, 1131, 1134, + 1137, 1141, 1144, 1146, 1150, 1152, 1160, 1163, 1165, 1169, + 1170, 1173, 1174, 1188, 1191, 1194, 1196, 1200, 1202, 1204, + 1206, 1208, 1210, 1212, 1214, 1216, 1220, 1222, 1226, 1228, + 1230, 1232, 1244, 1246, 1250, 1252, 1256, 1258, 1262, 1266, + 1270, 1272, 1274, 1278, 1280, 1287, 1290, 1294, 1296, 1298, + 1302, 1306, 1307, 1310, 1312, 1315, 1317, 1319, 1321, 1331, + 1334, 1336, 1340, 1342, 1346, 1348, 1350, 1354, 1358, 1360, + 1363, 1367, 1379, 1382, 1388, 1391, 1392, 1395, 1396, 1399, + 1405, 1412, 1418, 1421, 1424, 1427, 1430, 1433, 1436, 1437, + 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, + 1450, 1451, 1452, 1456, 1459, 1461, 1465, 1467, 1469, 1471, + 1473, 1475, 1477, 1479, 1483, 1486, 1487, 1490, 1493, 1494, + 1495, 1498, 1499, 1502, 1503, 1506, 1509, 1510, 1513, 1516, + 1517, 1520, 1523, 1526, 1527, 1530, 1531, 1534, 1536, 1539, + 1540, 1541, 1542, 1543, 1544, 1545, 1546, 1547, 1553, 1555, + 1556, 1557, 1558, 1559, 1560, 1561, 1562, 1563, 1566, 1569, + 1572, 1575, 1576, 1579, 1580, 1583, 1584, 1587, 1588, 1591, + 1594, 1597, 1600, 1601, 1604, 1606, 1607, 1608, 1609, 1612, + 1613, 1616, 1619, 1622, 1623, 1626, 1627, 1628, 1629, 1632, + 1635, 1638, 1639, 1642, 1643, 1644, 1647, 1651, 1655, 1659, + 1663, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, + 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, + 1686, 1687, 1688, 1689, 1690, 1691, 1692, 1693, 1694, 1695, + 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1705, + 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, + 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, + 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, + 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743 }; // Print the state stack on the debug stream. @@ -9386,8 +9444,8 @@ namespace yy { } // yy -#line 9388 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 -#line 1739 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 +#line 9446 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 +#line 1745 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 @@ -9400,7 +9458,7 @@ namespace yy { context.location.step(); // Lexer -#line 9404 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -9500,25 +9558,25 @@ namespace yy { } yy2: ++context.cursor; -#line 9521 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9579 "/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 9506 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9564 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 9548 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } -#line 9512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9570 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 9525 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9583 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 9517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9575 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 9524 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 9522 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9580 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -9527,9 +9585,9 @@ namespace yy { } yy11: ++context.cursor; -#line 9543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9601 "/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 9533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { @@ -9627,19 +9685,19 @@ namespace yy { } yy18: ++context.cursor; -#line 9533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9591 "/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 9633 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 9534 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9592 "/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 9638 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9696 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 9539 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9597 "/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 9643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9701 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { @@ -9647,9 +9705,9 @@ namespace yy { default: goto yy25; } yy25: -#line 9540 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9598 "/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 9653 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { @@ -9657,9 +9715,9 @@ namespace yy { default: goto yy27; } yy27: -#line 9541 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9599 "/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 9663 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { @@ -9684,9 +9742,9 @@ namespace yy { default: goto yy31; } yy31: -#line 9508 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9566 "/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 9690 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9748 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy32: yyaccept = 1; yych = *(YYMARKER = ++context.cursor); @@ -9695,24 +9753,24 @@ namespace yy { default: goto yy33; } yy33: -#line 9537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9595 "/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 9701 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9759 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 9538 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9596 "/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 9706 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9764 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 9544 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9602 "/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 9711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9769 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 9547 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9605 "/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 9716 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9774 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy40: yych = *++context.cursor; switch (yych) { @@ -9724,9 +9782,9 @@ namespace yy { default: goto yy49; } yy41: -#line 9515 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9573 "/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 9730 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9788 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy42: yych = *++context.cursor; switch (yych) { @@ -9939,19 +9997,19 @@ namespace yy { } yy61: ++context.cursor; -#line 9535 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9593 "/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 9945 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 9536 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9594 "/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 9950 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10008 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; -#line 9545 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9603 "/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 9955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10013 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy67: yych = *++context.cursor; switch (yych) { @@ -10022,24 +10080,24 @@ namespace yy { default: goto yy69; } yy69: -#line 9516 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9574 "/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 10028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; -#line 9531 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9589 "/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 10033 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10091 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; -#line 9542 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9600 "/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 10038 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10096 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; -#line 9532 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9590 "/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 10043 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -10047,9 +10105,9 @@ namespace yy { default: goto yy77; } yy77: -#line 9510 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9568 "/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 10053 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; @@ -10130,9 +10188,9 @@ namespace yy { default: goto yy83; } yy83: -#line 9517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9575 "/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 10136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy84: yych = *++context.cursor; switch (yych) { @@ -10203,9 +10261,9 @@ namespace yy { default: goto yy86; } yy86: -#line 9518 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9576 "/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 10209 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10267 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { @@ -10253,9 +10311,9 @@ namespace yy { default: goto yy90; } yy92: -#line 9502 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9560 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 10259 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10317 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { @@ -10263,9 +10321,9 @@ namespace yy { default: goto yy94; } yy94: -#line 9530 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9588 "/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 10269 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy95: yych = *++context.cursor; switch (yych) { @@ -10424,9 +10482,9 @@ namespace yy { default: goto yy110; } yy110: -#line 9416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9474 "/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 10430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10488 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy111: yych = *++context.cursor; switch (yych) { @@ -10655,9 +10713,9 @@ namespace yy { default: goto yy137; } yy137: -#line 9464 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9522 "/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 10661 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10719 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy138: yych = *++context.cursor; switch (yych) { @@ -10817,14 +10875,14 @@ namespace yy { } yy164: ++context.cursor; -#line 9512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9570 "/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 10823 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10881 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy166: ++context.cursor; -#line 9514 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9572 "/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, context.cursor), context.location); } -#line 10828 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10886 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy168: yych = *++context.cursor; switch (yych) { @@ -10841,9 +10899,9 @@ namespace yy { } yy170: ++context.cursor; -#line 9529 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9587 "/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 10847 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10905 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy172: yych = *++context.cursor; switch (yych) { @@ -10866,14 +10924,14 @@ namespace yy { default: goto yy175; } yy175: -#line 9507 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9565 "/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 10872 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10930 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy176: ++context.cursor; -#line 9528 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9586 "/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 10877 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10935 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy178: yych = *++context.cursor; switch (yych) { @@ -10951,9 +11009,9 @@ namespace yy { default: goto yy180; } yy180: -#line 9408 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9466 "/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 10957 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11015 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy181: yych = *++context.cursor; switch (yych) { @@ -11024,9 +11082,9 @@ namespace yy { default: goto yy182; } yy182: -#line 9409 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9467 "/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 11030 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy183: yych = *++context.cursor; switch (yych) { @@ -11115,9 +11173,9 @@ namespace yy { default: goto yy187; } yy187: -#line 9413 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9471 "/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 11121 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy188: yych = *++context.cursor; switch (yych) { @@ -11262,9 +11320,9 @@ namespace yy { default: goto yy201; } yy201: -#line 9432 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9490 "/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 11268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy202: yych = *++context.cursor; switch (yych) { @@ -11427,9 +11485,9 @@ namespace yy { default: goto yy218; } yy218: -#line 9455 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9513 "/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 11433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy219: yych = *++context.cursor; switch (yych) { @@ -11500,9 +11558,9 @@ namespace yy { default: goto yy220; } yy220: -#line 9456 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9514 "/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 11506 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11564 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy221: yych = *++context.cursor; switch (yych) { @@ -11627,9 +11685,9 @@ namespace yy { default: goto yy231; } yy231: -#line 9468 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9526 "/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 11633 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy232: yych = *++context.cursor; switch (yych) { @@ -11742,9 +11800,9 @@ namespace yy { default: goto yy240; } yy240: -#line 9477 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9535 "/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 11748 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11806 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy241: yych = *++context.cursor; switch (yych) { @@ -11845,14 +11903,14 @@ namespace yy { } yy257: ++context.cursor; -#line 9501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9559 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11851 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy259: ++context.cursor; -#line 9504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 11856 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 11914 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy261: yych = *++context.cursor; switch (yych) { @@ -12001,9 +12059,9 @@ namespace yy { default: goto yy275; } yy275: -#line 9424 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9482 "/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 12007 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy276: yych = *++context.cursor; switch (yych) { @@ -12141,9 +12199,9 @@ namespace yy { default: goto yy288; } yy288: -#line 9440 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9498 "/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 12147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12205 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy289: yych = *++context.cursor; switch (yych) { @@ -12288,9 +12346,9 @@ namespace yy { default: goto yy302; } yy302: -#line 9459 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9517 "/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 12294 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy303: yych = *++context.cursor; switch (yych) { @@ -12427,9 +12485,9 @@ namespace yy { default: goto yy315; } yy315: -#line 9473 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9531 "/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 12433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy316: yych = *++context.cursor; switch (yych) { @@ -12518,9 +12576,9 @@ namespace yy { default: goto yy320; } yy320: -#line 9479 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9537 "/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 12524 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy321: yych = *++context.cursor; switch (yych) { @@ -12609,9 +12667,9 @@ namespace yy { default: goto yy325; } yy325: -#line 9483 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9541 "/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 12615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12673 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy326: yych = *++context.cursor; switch (yych) { @@ -12682,9 +12740,9 @@ namespace yy { default: goto yy327; } yy327: -#line 9485 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9543 "/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 12688 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12746 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy328: yych = *++context.cursor; switch (yych) { @@ -12755,9 +12813,9 @@ namespace yy { default: goto yy329; } yy329: -#line 9487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9545 "/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 12761 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12819 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy330: yych = *++context.cursor; switch (yych) { @@ -12888,9 +12946,9 @@ namespace yy { default: goto yy341; } yy341: -#line 9497 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9555 "/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 12894 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 12952 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy342: yych = *++context.cursor; switch (yych) { @@ -12985,9 +13043,9 @@ namespace yy { default: goto yy347; } yy347: -#line 9412 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9470 "/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 12991 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy348: yych = *++context.cursor; switch (yych) { @@ -13082,9 +13140,9 @@ namespace yy { default: goto yy353; } yy353: -#line 9419 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9477 "/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 13088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy354: yych = *++context.cursor; switch (yych) { @@ -13246,9 +13304,9 @@ namespace yy { default: goto yy370; } yy370: -#line 9439 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9497 "/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 13252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13310 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy371: yych = *++context.cursor; switch (yych) { @@ -13416,9 +13474,9 @@ namespace yy { default: goto yy388; } yy388: -#line 9463 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9521 "/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 13422 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13480 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy389: yych = *++context.cursor; switch (yych) { @@ -13591,9 +13649,9 @@ namespace yy { default: goto yy407; } yy407: -#line 9489 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9547 "/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 13597 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy408: yych = *++context.cursor; switch (yych) { @@ -13706,9 +13764,9 @@ namespace yy { default: goto yy416; } yy416: -#line 9406 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9464 "/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 13712 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13770 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy417: yych = *++context.cursor; switch (yych) { @@ -13815,9 +13873,9 @@ namespace yy { default: goto yy424; } yy424: -#line 9418 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9476 "/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 13821 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 13879 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy425: yych = *++context.cursor; switch (yych) { @@ -13954,9 +14012,9 @@ namespace yy { default: goto yy437; } yy437: -#line 9434 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9492 "/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 13960 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14018 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy438: yych = *++context.cursor; switch (yych) { @@ -14147,9 +14205,9 @@ namespace yy { default: goto yy459; } yy459: -#line 9461 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9519 "/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 14153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14211 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy460: yych = *++context.cursor; switch (yych) { @@ -14286,9 +14344,9 @@ namespace yy { default: goto yy472; } yy472: -#line 9480 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9538 "/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 14292 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy473: yych = *++context.cursor; switch (yych) { @@ -14359,9 +14417,9 @@ namespace yy { default: goto yy474; } yy474: -#line 9481 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9539 "/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 14365 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14423 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy475: yych = *++context.cursor; switch (yych) { @@ -14456,9 +14514,9 @@ namespace yy { default: goto yy480; } yy480: -#line 9490 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9548 "/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 14462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14520 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy481: yych = *++context.cursor; switch (yych) { @@ -14589,9 +14647,9 @@ namespace yy { default: goto yy492; } yy492: -#line 9415 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9473 "/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 14595 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14653 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy493: yych = *++context.cursor; switch (yych) { @@ -14692,9 +14750,9 @@ namespace yy { default: goto yy499; } yy499: -#line 9426 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9484 "/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 14698 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14756 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy500: yych = *++context.cursor; switch (yych) { @@ -14783,9 +14841,9 @@ namespace yy { default: goto yy504; } yy504: -#line 9430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9488 "/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 14789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14847 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy505: yych = *++context.cursor; switch (yych) { @@ -14874,9 +14932,9 @@ namespace yy { default: goto yy509; } yy509: -#line 9436 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9494 "/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 14880 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 14938 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy510: yych = *++context.cursor; switch (yych) { @@ -14990,9 +15048,9 @@ namespace yy { default: goto yy518; } yy518: -#line 9447 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9505 "/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 14996 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15054 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy519: yych = *++context.cursor; switch (yych) { @@ -15063,9 +15121,9 @@ namespace yy { default: goto yy520; } yy520: -#line 9448 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9506 "/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 15069 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy521: yych = *++context.cursor; switch (yych) { @@ -15154,9 +15212,9 @@ namespace yy { default: goto yy525; } yy525: -#line 9452 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9510 "/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 15160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15218 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy526: yych = *++context.cursor; switch (yych) { @@ -15257,9 +15315,9 @@ namespace yy { default: goto yy532; } yy532: -#line 9465 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9523 "/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 15263 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15321 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy533: yych = *++context.cursor; switch (yych) { @@ -15342,9 +15400,9 @@ namespace yy { default: goto yy536; } yy536: -#line 9467 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9525 "/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 15348 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15406 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy537: yych = *++context.cursor; switch (yych) { @@ -15421,9 +15479,9 @@ namespace yy { default: goto yy539; } yy539: -#line 9470 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9528 "/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 15427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15485 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy540: yych = *++context.cursor; switch (yych) { @@ -15494,9 +15552,9 @@ namespace yy { default: goto yy541; } yy541: -#line 9472 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9530 "/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 15500 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15558 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy542: yych = *++context.cursor; switch (yych) { @@ -15621,9 +15679,9 @@ namespace yy { default: goto yy552; } yy552: -#line 9493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9551 "/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 15627 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy553: yych = *++context.cursor; switch (yych) { @@ -15778,9 +15836,9 @@ namespace yy { default: goto yy568; } yy568: -#line 9428 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9486 "/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 15784 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15842 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy569: yych = *++context.cursor; switch (yych) { @@ -15851,9 +15909,9 @@ namespace yy { default: goto yy570; } yy570: -#line 9429 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9487 "/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 15857 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 15915 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy571: yych = *++context.cursor; switch (yych) { @@ -15936,9 +15994,9 @@ namespace yy { default: goto yy574; } yy574: -#line 9435 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9493 "/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 15942 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16000 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy575: yych = *++context.cursor; switch (yych) { @@ -16015,9 +16073,9 @@ namespace yy { default: goto yy577; } yy577: -#line 9438 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9496 "/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 16021 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16079 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy578: yych = *++context.cursor; switch (yych) { @@ -16118,9 +16176,9 @@ namespace yy { default: goto yy584; } yy584: -#line 9446 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9504 "/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 16124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy585: yych = *++context.cursor; switch (yych) { @@ -16191,9 +16249,9 @@ namespace yy { default: goto yy586; } yy586: -#line 9449 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9507 "/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 16197 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16255 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy587: yych = *++context.cursor; switch (yych) { @@ -16264,9 +16322,9 @@ namespace yy { default: goto yy588; } yy588: -#line 9450 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9508 "/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 16270 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy589: yych = *++context.cursor; switch (yych) { @@ -16373,9 +16431,9 @@ namespace yy { default: goto yy596; } yy596: -#line 9466 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9524 "/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 16379 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16437 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy597: yych = *++context.cursor; switch (yych) { @@ -16470,9 +16528,9 @@ namespace yy { default: goto yy602; } yy602: -#line 9476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9534 "/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 16476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16534 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy603: yych = *++context.cursor; switch (yych) { @@ -16543,9 +16601,9 @@ namespace yy { default: goto yy604; } yy604: -#line 9478 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9536 "/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 16549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy605: yych = *++context.cursor; switch (yych) { @@ -16682,9 +16740,9 @@ namespace yy { default: goto yy617; } yy617: -#line 9411 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9469 "/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 16688 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16746 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy618: yych = *++context.cursor; switch (yych) { @@ -16755,9 +16813,9 @@ namespace yy { default: goto yy619; } yy619: -#line 9414 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9472 "/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 16761 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16819 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy620: yych = *++context.cursor; switch (yych) { @@ -16828,9 +16886,9 @@ namespace yy { default: goto yy621; } yy621: -#line 9417 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9475 "/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 16834 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16892 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy622: yych = *++context.cursor; switch (yych) { @@ -16901,9 +16959,9 @@ namespace yy { default: goto yy623; } yy623: -#line 9420 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9478 "/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 16907 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 16965 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy624: yych = *++context.cursor; switch (yych) { @@ -16986,9 +17044,9 @@ namespace yy { default: goto yy627; } yy627: -#line 9425 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9483 "/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 16992 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy628: yych = *++context.cursor; switch (yych) { @@ -17101,9 +17159,9 @@ namespace yy { default: goto yy636; } yy636: -#line 9444 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9502 "/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 17107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy637: yych = *++context.cursor; switch (yych) { @@ -17240,9 +17298,9 @@ namespace yy { default: goto yy649; } yy649: -#line 9482 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9540 "/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 17246 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17304 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy650: yych = *++context.cursor; switch (yych) { @@ -17331,9 +17389,9 @@ namespace yy { default: goto yy654; } yy654: -#line 9491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9549 "/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 17337 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17395 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy655: yych = *++context.cursor; switch (yych) { @@ -17440,9 +17498,9 @@ namespace yy { default: goto yy662; } yy662: -#line 9421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9479 "/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 17446 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy663: yych = *++context.cursor; switch (yych) { @@ -17519,9 +17577,9 @@ namespace yy { default: goto yy665; } yy665: -#line 9423 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9481 "/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 17525 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17583 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy666: yych = *++context.cursor; switch (yych) { @@ -17604,9 +17662,9 @@ namespace yy { default: goto yy669; } yy669: -#line 9433 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9491 "/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 17610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17668 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy670: yych = *++context.cursor; switch (yych) { @@ -17701,9 +17759,9 @@ namespace yy { default: goto yy675; } yy675: -#line 9445 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9503 "/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 17707 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy676: yych = *++context.cursor; switch (yych) { @@ -17852,9 +17910,9 @@ namespace yy { default: goto yy690; } yy690: -#line 9494 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9552 "/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 17858 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 17916 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy691: yych = *++context.cursor; switch (yych) { @@ -17949,9 +18007,9 @@ namespace yy { default: goto yy696; } yy696: -#line 9410 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9468 "/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 17955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18013 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy697: yych = *++context.cursor; switch (yych) { @@ -18022,9 +18080,9 @@ namespace yy { default: goto yy698; } yy698: -#line 9422 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9480 "/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 18028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy699: yych = *++context.cursor; switch (yych) { @@ -18095,9 +18153,9 @@ namespace yy { default: goto yy700; } yy700: -#line 9427 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9485 "/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 18101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18159 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy701: yych = *++context.cursor; switch (yych) { @@ -18258,9 +18316,9 @@ namespace yy { default: goto yy717; } yy717: -#line 9486 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9544 "/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 18264 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy718: yych = *++context.cursor; switch (yych) { @@ -18397,9 +18455,9 @@ namespace yy { default: goto yy730; } yy730: -#line 9451 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9509 "/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 18403 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18461 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy731: yych = *++context.cursor; switch (yych) { @@ -18470,9 +18528,9 @@ namespace yy { default: goto yy732; } yy732: -#line 9453 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9511 "/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 18476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18534 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy733: yych = *++context.cursor; switch (yych) { @@ -18543,9 +18601,9 @@ namespace yy { default: goto yy734; } yy734: -#line 9454 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9512 "/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 18549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy735: yych = *++context.cursor; switch (yych) { @@ -18622,9 +18680,9 @@ namespace yy { default: goto yy737; } yy737: -#line 9458 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9516 "/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 18628 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18686 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy738: yych = *++context.cursor; switch (yych) { @@ -18719,9 +18777,9 @@ namespace yy { default: goto yy743; } yy743: -#line 9474 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9532 "/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 18725 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18783 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy744: yych = *++context.cursor; switch (yych) { @@ -18834,9 +18892,9 @@ namespace yy { default: goto yy752; } yy752: -#line 9437 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9495 "/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 18840 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18898 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy753: yych = *++context.cursor; switch (yych) { @@ -18907,9 +18965,9 @@ namespace yy { default: goto yy754; } yy754: -#line 9442 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9500 "/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 18913 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 18971 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy755: yych = *++context.cursor; switch (yych) { @@ -18986,9 +19044,9 @@ namespace yy { default: goto yy757; } yy757: -#line 9443 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9501 "/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 18992 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy758: yych = *++context.cursor; switch (yych) { @@ -19065,9 +19123,9 @@ namespace yy { default: goto yy760; } yy760: -#line 9460 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9518 "/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 19071 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy761: yych = *++context.cursor; switch (yych) { @@ -19144,9 +19202,9 @@ namespace yy { default: goto yy763; } yy763: -#line 9469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9527 "/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 19150 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy764: yych = *++context.cursor; switch (yych) { @@ -19235,9 +19293,9 @@ namespace yy { default: goto yy768; } yy768: -#line 9484 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9542 "/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 19241 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19299 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy769: yych = *++context.cursor; switch (yych) { @@ -19320,9 +19378,9 @@ namespace yy { default: goto yy772; } yy772: -#line 9496 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9554 "/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 19326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19384 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy773: yych = *++context.cursor; switch (yych) { @@ -19411,9 +19469,9 @@ namespace yy { default: goto yy777; } yy777: -#line 9457 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9515 "/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 19417 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19475 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy778: yych = *++context.cursor; switch (yych) { @@ -19514,9 +19572,9 @@ namespace yy { default: goto yy784; } yy784: -#line 9495 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9553 "/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 19520 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19578 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy785: yych = *++context.cursor; switch (yych) { @@ -19587,9 +19645,9 @@ namespace yy { default: goto yy786; } yy786: -#line 9407 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9465 "/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 19593 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19651 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy787: yych = *++context.cursor; switch (yych) { @@ -19666,9 +19724,9 @@ namespace yy { default: goto yy789; } yy789: -#line 9441 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9499 "/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 19672 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19730 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy790: yych = *++context.cursor; switch (yych) { @@ -19745,9 +19803,9 @@ namespace yy { default: goto yy792; } yy792: -#line 9471 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9529 "/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 19751 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19809 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy793: yych = *++context.cursor; switch (yych) { @@ -19824,9 +19882,9 @@ namespace yy { default: goto yy795; } yy795: -#line 9488 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9546 "/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 19830 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19888 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy796: yych = *++context.cursor; switch (yych) { @@ -19897,9 +19955,9 @@ namespace yy { default: goto yy797; } yy797: -#line 9492 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9550 "/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 19903 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 19961 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy798: yych = *++context.cursor; switch (yych) { @@ -19970,9 +20028,9 @@ namespace yy { default: goto yy799; } yy799: -#line 9431 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9489 "/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 19976 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20034 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy800: yych = *++context.cursor; switch (yych) { @@ -20043,9 +20101,9 @@ namespace yy { default: goto yy801; } yy801: -#line 9462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9520 "/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 20049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy802: yych = *++context.cursor; switch (yych) { @@ -20116,11 +20174,11 @@ namespace yy { default: goto yy803; } yy803: -#line 9475 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9533 "/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 20122 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 20180 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" } -#line 9549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" } } From f76f2f1f3d4cbe37c32e761acf7c4e58cb4685ef Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 29 May 2019 21:52:57 +0100 Subject: [PATCH 11/31] Fix object class removal --- include/fast_ber/ber_types/All.hpp | 1 - include/fast_ber/compiler/ObjectClass.hpp | 101 ++++++++++++++------- src/compiler/asn_compiler.yacc | 2 +- src/compiler/autogen_copy/asn_compiler.hpp | 2 +- 4 files changed, 69 insertions(+), 37 deletions(-) diff --git a/include/fast_ber/ber_types/All.hpp b/include/fast_ber/ber_types/All.hpp index 42b972cc..04806385 100644 --- a/include/fast_ber/ber_types/All.hpp +++ b/include/fast_ber/ber_types/All.hpp @@ -15,7 +15,6 @@ #include "InstanceOf.hpp" #include "Integer.hpp" #include "Null.hpp" -#include "ObjectField.hpp" #include "ObjectIdentifier.hpp" #include "OctetString.hpp" #include "Optional.hpp" diff --git a/include/fast_ber/compiler/ObjectClass.hpp b/include/fast_ber/compiler/ObjectClass.hpp index 94952320..1595ac9e 100644 --- a/include/fast_ber/compiler/ObjectClass.hpp +++ b/include/fast_ber/compiler/ObjectClass.hpp @@ -200,65 +200,98 @@ std::set get_object_class_names(const Asn1Tree& tree) { std::set object_class_names; - for (const Module& module : tree.modules) + size_t old_number_of_names = 0; + do { - for (const Assignment& assignment : module.assignments) + old_number_of_names = object_class_names.size(); + for (const Module& module : tree.modules) { - if (is_type(assignment)) + for (const Assignment& assignment : module.assignments) { - for (const Parameter& parameter : assignment.parameters) + + if (is_type(assignment) || is_value(assignment)) { - if (parameter.governor) + for (const Parameter& parameter : assignment.parameters) { - if (is_defined(*parameter.governor)) + if (parameter.governor) { - const DefinedType& defined = absl::get(*parameter.governor); - const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); - if (is_object_class(inner_assignment)) + if (is_defined(*parameter.governor)) { - object_class_names.insert(module.module_reference + "." + inner_assignment.name); + const DefinedType& defined = absl::get(*parameter.governor); + const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); + if (is_object_class(inner_assignment)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + else if (is_defined_object_class(*defined.module_reference, defined.type_reference, + object_class_names)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } } } } } - } - if (is_type(assignment) && is_defined(type(assignment))) - { - const DefinedType& defined = absl::get(type(assignment)); - if (!is_a_parameter(defined.type_reference, assignment.parameters)) + if (is_type(assignment) && is_defined(type(assignment))) { - const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); - if (is_object_class(inner_assignment)) + const DefinedType& defined = absl::get(type(assignment)); + if (!is_a_parameter(defined.type_reference, assignment.parameters)) { - object_class_names.insert(module.module_reference + "." + inner_assignment.name); + const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); + if (is_object_class(inner_assignment)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + else if (is_defined_object_class(*defined.module_reference, defined.type_reference, + object_class_names)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } } } - } - if (is_object_class(assignment)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); + if (is_value(assignment) && is_defined(value(assignment).type)) + { + const DefinedType& defined = absl::get(value(assignment).type); + if (!is_a_parameter(defined.type_reference, assignment.parameters)) + { + const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); + if (is_object_class(inner_assignment)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + else if (is_defined_object_class(*defined.module_reference, defined.type_reference, + object_class_names)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + } + } + if (is_object_class(assignment)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } } } - } - for (const Module& module : tree.modules) - { - for (const Import& import : module.imports) + for (const Module& module : tree.modules) { - for (const std::string& imported_name : import.imports) + for (const Import& import : module.imports) { - if (is_defined_object_class(import.module_reference, imported_name, object_class_names)) + for (const std::string& imported_name : import.imports) { - object_class_names.insert(module.module_reference + "." + imported_name); + if (is_defined_object_class(import.module_reference, imported_name, object_class_names)) + { + object_class_names.insert(module.module_reference + "." + imported_name); + } } } } - } - for (auto s : object_class_names) - { - std::cout << "Object class names " << s << std::endl; - } + for (auto s : object_class_names) + { + std::cout << "Object class names " << s << std::endl; + } + } while (object_class_names.size() > old_number_of_names); return object_class_names; } diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 76328466..f2671b2d 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -609,7 +609,7 @@ ParameterSeries: Parameter { $$.push_back($1); } | ParameterSeries "," Parameter - { $$ = $1; $1.push_back($3); } + { $$ = $1; $$.push_back($3); } Parameter: ParamGovernor ":" Reference diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index 834844f1..872ee4a7 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -6530,7 +6530,7 @@ namespace yy { case 105: #line 612 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yystack_[2].value.as< std::vector > ().push_back(yystack_[0].value.as< Parameter > ()); } + { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Parameter > ()); } #line 6533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; From 8afb37f7b6cc3ffe93ac7ef0fa2c60243c09ebd5 Mon Sep 17 00:00:00 2001 From: Sam Date: Thu, 30 May 2019 20:33:19 +0100 Subject: [PATCH 12/31] Fix unchecked optional dereference --- include/fast_ber/compiler/ObjectClass.hpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/fast_ber/compiler/ObjectClass.hpp b/include/fast_ber/compiler/ObjectClass.hpp index 1595ac9e..7631a385 100644 --- a/include/fast_ber/compiler/ObjectClass.hpp +++ b/include/fast_ber/compiler/ObjectClass.hpp @@ -208,7 +208,6 @@ std::set get_object_class_names(const Asn1Tree& tree) { for (const Assignment& assignment : module.assignments) { - if (is_type(assignment) || is_value(assignment)) { for (const Parameter& parameter : assignment.parameters) @@ -242,7 +241,7 @@ std::set get_object_class_names(const Asn1Tree& tree) { object_class_names.insert(module.module_reference + "." + assignment.name); } - else if (is_defined_object_class(*defined.module_reference, defined.type_reference, + else if (is_defined_object_class(module.module_reference, defined.type_reference, object_class_names)) { object_class_names.insert(module.module_reference + "." + assignment.name); @@ -259,7 +258,7 @@ std::set get_object_class_names(const Asn1Tree& tree) { object_class_names.insert(module.module_reference + "." + assignment.name); } - else if (is_defined_object_class(*defined.module_reference, defined.type_reference, + else if (is_defined_object_class(module.module_reference, defined.type_reference, object_class_names)) { object_class_names.insert(module.module_reference + "." + assignment.name); @@ -299,6 +298,7 @@ std::set get_object_class_names(const Asn1Tree& tree) void resolve_object_classes(Asn1Tree& tree) { std::set object_class_names = get_object_class_names(tree); + for (Module& module : tree.modules) { for (Assignment& assignment : module.assignments) From bc195f07843f1150917bfff864e81a792619caa3 Mon Sep 17 00:00:00 2001 From: Sam Date: Thu, 30 May 2019 20:33:52 +0100 Subject: [PATCH 13/31] Ignore unknown ASCII chars --- src/compiler/asn_compiler.yacc | 2 +- src/compiler/autogen_copy/asn_compiler.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index f2671b2d..2bf9c489 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -1901,7 +1901,7 @@ re2c:define:YYCURSOR = "context.cursor"; "^" { context.location.columns(context.cursor - start); return asn1_parser::make_ACCENT (context.location); } "@" { context.location.columns(context.cursor - start); return asn1_parser::make_AT (context.location); } -. { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } +. { std::cerr << "Ignoring unknown symbol: " << static_cast(*start) << std::endl; return yylex(context); } %} } } diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index 872ee4a7..6395a96b 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -9565,7 +9565,7 @@ namespace yy { ++context.cursor; yy5: #line 9606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" - { throw(std::runtime_error(std::string("Unknown symbol!") + *start)); context.location.columns(context.cursor - start); return asn1_parser::symbol_type(asn1_parser::token_type(*start), context.location); } + { std::cerr << "Ignoring unknown symbol: " << static_cast(*start) << std::endl; return yylex(context); } #line 9570 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; From dde1b4201a6d1561b7cd5ce9686b13561be196be Mon Sep 17 00:00:00 2001 From: Sam Date: Thu, 30 May 2019 20:38:56 +0100 Subject: [PATCH 14/31] Continue compiling even if module reorder failed --- include/fast_ber/compiler/ReorderAssignments.hpp | 11 ++++++++--- src/compiler/CompilerMain.cpp | 12 +----------- 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/include/fast_ber/compiler/ReorderAssignments.hpp b/include/fast_ber/compiler/ReorderAssignments.hpp index d4c71b06..91beca23 100644 --- a/include/fast_ber/compiler/ReorderAssignments.hpp +++ b/include/fast_ber/compiler/ReorderAssignments.hpp @@ -1,5 +1,6 @@ #pragma once +#include #include #include #include @@ -389,7 +390,9 @@ void resolve_module_dependencies(const std::unordered_map& std::unordered_set& assigned_names, std::unordered_set& visited_names, std::vector& ordered_modules) { - const auto& module_iter = module_map.find(name); + const auto& module_iter = module_map.find(name); + const Module& module = module_iter->second; + if (module_iter == module_map.end()) { throw std::runtime_error("Reference to undefined module: " + name); @@ -403,12 +406,14 @@ void resolve_module_dependencies(const std::unordered_map& if (visited_names.count(name) == 1) { - throw std::runtime_error("Circular dependency when trying to resolve dependencies of " + name); + std::cerr << "Warning: Circular dependency when trying to resolve dependencies of " << name << std::endl; + ordered_modules.push_back(module); + assigned_names.insert(name); + return; } visited_names.insert(name); - const Module& module = module_iter->second; for (const Import& import : module.imports) { resolve_module_dependencies(module_map, import.module_reference, assigned_names, visited_names, diff --git a/src/compiler/CompilerMain.cpp b/src/compiler/CompilerMain.cpp index 8770a369..a3580860 100644 --- a/src/compiler/CompilerMain.cpp +++ b/src/compiler/CompilerMain.cpp @@ -55,16 +55,6 @@ std::string create_assignment(const Asn1Tree& tree, const Module& module, const const ValueAssignment& value_assign = absl::get(assignment.specific); std::string result = fully_tagged_type(value_assign.type, module, tree) + " " + assignment.name + " = "; - if (is_defined(value_assign.type)) - { - if (!exists(tree, module.module_reference, absl::get(value_assign.type)) || - !is_type(resolve(tree, module.module_reference, absl::get(value_assign.type)))) - { - std::cerr << "not resolving = " << assignment.name << std::endl; - return ""; - } - } - const Type& assigned_to_type = (is_defined(value_assign.type)) ? type(resolve(tree, module.module_reference, absl::get(value_assign.type))) @@ -142,7 +132,7 @@ std::string create_assignment(const Asn1Tree& tree, const Module& module, const } else { - return ""; + throw std::runtime_error("Strange value assign"); } result += ";\n"; From dca4f6112ddf9002531be2652593da43b673c3f6 Mon Sep 17 00:00:00 2001 From: Sam Date: Sat, 1 Jun 2019 00:32:55 +0100 Subject: [PATCH 15/31] Correctly handle assigning of hex strings --- src/compiler/CompilerMain.cpp | 25 +- src/compiler/asn_compiler.yacc | 10 +- src/compiler/autogen_copy/asn_compiler.hpp | 7240 ++++++++++++-------- testfiles/simple5.asn | 2 +- 4 files changed, 4446 insertions(+), 2831 deletions(-) diff --git a/src/compiler/CompilerMain.cpp b/src/compiler/CompilerMain.cpp index a3580860..80729467 100644 --- a/src/compiler/CompilerMain.cpp +++ b/src/compiler/CompilerMain.cpp @@ -46,6 +46,29 @@ std::string create_type_assignment(const Assignment& assignment, const Module& m "\n"; } +std::string cpp_value(const HexStringValue& hex) +{ + std::string res = "\""; + size_t i = 0; + + if (hex.value.length() % 2 == 1) + { + const std::string& byte = std::string(hex.value.begin(), hex.value.begin() + 1); + res += "\\"; + res += std::to_string(std::stoi(byte, nullptr, 16)); + i++; + } + + for (; i < hex.value.length(); i += 2) + { + const std::string& byte = std::string(hex.value.begin() + i, hex.value.begin() + i + 2); + res += "\\"; + res += std::to_string(std::stoi(byte, nullptr, 16)); + } + + return res + "\""; +} + std::string create_assignment(const Asn1Tree& tree, const Module& module, const Assignment& assignment) { try @@ -113,7 +136,7 @@ std::string create_assignment(const Asn1Tree& tree, const Module& module, const else if (absl::holds_alternative(value_assign.value.value_selection)) { const HexStringValue& hstring = absl::get(value_assign.value.value_selection); - result += hstring.value; + result += cpp_value(hstring); } else if (absl::holds_alternative(value_assign.value.value_selection)) { diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 2bf9c489..e9115aa6 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -1867,11 +1867,11 @@ re2c:define:YYCURSOR = "context.cursor"; ['\'']('0'|'1')*['\'']"B" { context.location.columns(context.cursor - start); return asn1_parser::make_bstring(std::string(start + 1, context.cursor - 2), context.location); } ['\''][0-9A-Fa-f]*['\'']"H" - { context.location.columns(context.cursor - start); return asn1_parser::make_hstring(std::string(start, context.cursor), context.location); } -[A-Z][A-Za-z_0-9\-]* { context.location.columns(context.cursor - start); return asn1_parser::make_GENERIC_IDENTIFIER_UPPERCASE(santize_name(std::string(start, context.cursor)), context.location); } -[a-z][A-Za-z_0-9\-]* { context.location.columns(context.cursor - start); return asn1_parser::make_GENERIC_IDENTIFIER_LOWERCASE(santize_name(std::string(start, context.cursor)), context.location); } -[&][A-Z][A-Za-z_0-9\-]* { context.location.columns(context.cursor - start); return asn1_parser::make_typefieldreference(santize_name(std::string(start, context.cursor)), context.location); } -[&][a-z][A-Za-z_0-9\-]* { context.location.columns(context.cursor - start); return asn1_parser::make_valuefieldreference(santize_name(std::string(start, context.cursor)), context.location); } + { context.location.columns(context.cursor - start); return asn1_parser::make_hstring(std::string(start + 1, context.cursor - 2), context.location); } +[A-Z]([\-]?[A-Za-z_0-9])* { context.location.columns(context.cursor - start); return asn1_parser::make_GENERIC_IDENTIFIER_UPPERCASE(santize_name(std::string(start, context.cursor)), context.location); } +[a-z]([\-]?[A-Za-z_0-9])* { context.location.columns(context.cursor - start); return asn1_parser::make_GENERIC_IDENTIFIER_LOWERCASE(santize_name(std::string(start, context.cursor)), context.location); } +[&][A-Z]([\-]?[A-Za-z_0-9])* { context.location.columns(context.cursor - start); return asn1_parser::make_typefieldreference(santize_name(std::string(start, context.cursor)), context.location); } +[&][a-z]([\-]?[A-Za-z_0-9])* { context.location.columns(context.cursor - start); return asn1_parser::make_valuefieldreference(santize_name(std::string(start, context.cursor)), context.location); } // End of file "\000" { context.location.columns(context.cursor - start); return asn1_parser::make_END_OF_FILE(context.location); } diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index 6395a96b..a1ee8a41 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -9772,72 +9772,80 @@ namespace yy { { context.location.columns(context.cursor - start); return asn1_parser::make_AT (context.location); } #line 9774 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy40: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'B': goto yy100; - case 'L': goto yy101; - case 'N': goto yy102; - case 'P': goto yy103; - case 'U': goto yy104; + case 'B': goto yy101; + case 'L': goto yy102; + case 'N': goto yy103; + case 'P': goto yy104; + case 'U': goto yy105; default: goto yy49; } yy41: #line 9573 "/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 9788 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy42: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy105; - case 'I': goto yy106; - case 'M': goto yy107; - case 'O': goto yy108; - case 'Y': goto yy109; + case 'E': goto yy106; + case 'I': goto yy107; + case 'M': goto yy108; + case 'O': goto yy109; + case 'Y': goto yy110; default: goto yy49; } yy43: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'H': goto yy111; - case 'L': goto yy112; - case 'O': goto yy113; + case 'H': goto yy112; + case 'L': goto yy113; + case 'O': goto yy114; default: goto yy49; } yy44: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy114; - case 'E': goto yy115; - case 'U': goto yy116; + case 'A': goto yy115; + case 'E': goto yy116; + case 'U': goto yy117; default: goto yy49; } yy45: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy117; - case 'N': goto yy118; - case 'X': goto yy119; + case 'M': goto yy118; + case 'N': goto yy119; + case 'X': goto yy120; default: goto yy49; } yy46: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy120; - case 'R': goto yy121; + case 'A': goto yy121; + case 'R': goto yy122; default: goto yy49; } yy47: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy122; - case 'r': goto yy123; + case 'e': goto yy123; + case 'r': goto yy124; default: goto yy49; } yy48: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); yy49: switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -9904,116 +9912,128 @@ namespace yy { default: goto yy41; } yy50: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy124; - case 'D': goto yy125; - case 'M': goto yy126; - case 'N': goto yy127; - case 'S': goto yy128; + case 'A': goto yy125; + case 'D': goto yy126; + case 'M': goto yy127; + case 'N': goto yy128; + case 'S': goto yy129; default: goto yy49; } yy51: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy129; - case 'I': goto yy130; + case 'A': goto yy130; + case 'I': goto yy131; default: goto yy49; } yy52: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy131; - case 'U': goto yy132; - case 'u': goto yy133; + case 'O': goto yy132; + case 'U': goto yy133; + case 'u': goto yy134; default: goto yy49; } yy53: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'B': goto yy134; - case 'C': goto yy135; - case 'F': goto yy136; - case 'I': goto yy138; - case 'P': goto yy139; - case 'b': goto yy140; + case 'B': goto yy135; + case 'C': goto yy136; + case 'F': goto yy137; + case 'I': goto yy139; + case 'P': goto yy140; + case 'b': goto yy141; default: goto yy49; } yy54: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy141; - case 'D': goto yy142; - case 'L': goto yy143; - case 'R': goto yy144; - case 'r': goto yy145; + case 'A': goto yy142; + case 'D': goto yy143; + case 'L': goto yy144; + case 'R': goto yy145; + case 'r': goto yy146; default: goto yy49; } yy55: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy146; + case 'E': goto yy147; default: goto yy49; } yy56: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy147; - case 'I': goto yy148; - case 'T': goto yy149; - case 'Y': goto yy150; + case 'E': goto yy148; + case 'I': goto yy149; + case 'T': goto yy150; + case 'Y': goto yy151; default: goto yy49; } yy57: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '6': goto yy151; - case 'A': goto yy152; - case 'I': goto yy153; - case 'R': goto yy154; - case 'Y': goto yy155; - case 'e': goto yy156; + case '6': goto yy152; + case 'A': goto yy153; + case 'I': goto yy154; + case 'R': goto yy155; + case 'Y': goto yy156; + case 'e': goto yy157; default: goto yy49; } yy58: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy157; - case 'T': goto yy158; - case 'n': goto yy159; + case 'N': goto yy158; + case 'T': goto yy159; + case 'n': goto yy160; default: goto yy49; } yy59: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy160; + case 'i': goto yy161; default: goto yy49; } yy60: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy161; + case 'I': goto yy162; default: goto yy49; } yy61: ++context.cursor; #line 9593 "/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 10003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; #line 9594 "/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 10008 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10027 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; #line 9603 "/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 10013 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10032 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy67: - yych = *++context.cursor; + yyaccept = 3; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy163; case '0': case '1': case '2': @@ -10082,22 +10102,22 @@ namespace yy { yy69: #line 9574 "/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 10086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; #line 9589 "/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 10091 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; #line 9600 "/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 10096 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; #line 9590 "/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 10101 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10121 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -10107,21 +10127,22 @@ namespace yy { yy77: #line 9568 "/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 10111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; yy79: yych = *++context.cursor; switch (yych) { - case '"': goto yy162; + case '"': goto yy164; case '\\': goto yy79; default: goto yy13; } yy81: - yych = *++context.cursor; + yyaccept = 4; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy166; case '0': case '1': case '2': @@ -10190,11 +10211,12 @@ namespace yy { yy83: #line 9575 "/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 10194 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10215 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy84: - yych = *++context.cursor; + yyaccept = 5; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy167; case '0': case '1': case '2': @@ -10263,19 +10285,19 @@ namespace yy { yy86: #line 9576 "/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 10267 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10289 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { - case 'B': goto yy164; - case 'H': goto yy166; + case 'B': goto yy168; + case 'H': goto yy170; default: goto yy77; } yy88: yych = *++context.cursor; switch (yych) { case '"': goto yy76; - case '\'': goto yy168; + case '\'': goto yy172; case '0': case '1': case '2': @@ -10302,32 +10324,32 @@ namespace yy { default: goto yy13; } yy90: - yyaccept = 2; + yyaccept = 6; yych = *(YYMARKER = ++context.cursor); switch (yych) { case '\n': case '\r': goto yy92; - case '-': goto yy169; + case '-': goto yy173; default: goto yy90; } yy92: #line 9560 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 10317 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10339 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { - case '.': goto yy170; + case '.': goto yy174; default: goto yy94; } yy94: #line 9588 "/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 10327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10349 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy95: yych = *++context.cursor; switch (yych) { - case '*': goto yy172; + case '*': goto yy176; default: goto yy95; } yy97: @@ -10342,7 +10364,7 @@ namespace yy { case '6': case '7': case '8': - case '9': goto yy173; + case '9': goto yy177; default: goto yy98; } yy98: @@ -10350,72 +10372,246 @@ namespace yy { switch (yyaccept) { case 0: goto yy31; case 1: goto yy33; - default: goto yy92; + case 2: goto yy41; + case 3: goto yy69; + case 4: goto yy83; + case 5: goto yy86; + case 6: goto yy92; + case 7: goto yy111; + case 8: goto yy138; + case 9: goto yy184; + case 10: goto yy186; + case 11: goto yy191; + case 12: goto yy205; + case 13: goto yy222; + case 14: goto yy224; + case 15: goto yy235; + case 16: goto yy244; + case 17: goto yy279; + case 18: goto yy292; + case 19: goto yy306; + case 20: goto yy319; + case 21: goto yy324; + case 22: goto yy329; + case 23: goto yy331; + case 24: goto yy333; + case 25: goto yy345; + case 26: goto yy351; + case 27: goto yy357; + case 28: goto yy374; + case 29: goto yy392; + case 30: goto yy411; + case 31: goto yy420; + case 32: goto yy428; + case 33: goto yy441; + case 34: goto yy463; + case 35: goto yy476; + case 36: goto yy478; + case 37: goto yy484; + case 38: goto yy496; + case 39: goto yy503; + case 40: goto yy508; + case 41: goto yy513; + case 42: goto yy522; + case 43: goto yy524; + case 44: goto yy529; + case 45: goto yy536; + case 46: goto yy540; + case 47: goto yy543; + case 48: goto yy545; + case 49: goto yy556; + case 50: goto yy572; + case 51: goto yy574; + case 52: goto yy578; + case 53: goto yy581; + case 54: goto yy588; + case 55: goto yy590; + case 56: goto yy592; + case 57: goto yy600; + case 58: goto yy606; + case 59: goto yy608; + case 60: goto yy621; + case 61: goto yy623; + case 62: goto yy625; + case 63: goto yy627; + case 64: goto yy631; + case 65: goto yy640; + case 66: goto yy653; + case 67: goto yy658; + case 68: goto yy666; + case 69: goto yy669; + case 70: goto yy673; + case 71: goto yy679; + case 72: goto yy694; + case 73: goto yy700; + case 74: goto yy702; + case 75: goto yy704; + case 76: goto yy721; + case 77: goto yy734; + case 78: goto yy736; + case 79: goto yy738; + case 80: goto yy741; + case 81: goto yy747; + case 82: goto yy756; + case 83: goto yy758; + case 84: goto yy761; + case 85: goto yy764; + case 86: goto yy767; + case 87: goto yy772; + case 88: goto yy776; + case 89: goto yy781; + case 90: goto yy788; + case 91: goto yy790; + case 92: goto yy793; + case 93: goto yy796; + case 94: goto yy799; + case 95: goto yy801; + case 96: goto yy803; + case 97: goto yy805; + default: goto yy807; } yy99: yych = *++context.cursor; switch (yych) { - case '=': goto yy176; + case '=': goto yy180; default: goto yy98; } yy100: yych = *++context.cursor; switch (yych) { - case 'S': goto yy178; - default: goto yy49; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + default: goto yy98; } yy101: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy179; + case 'S': goto yy182; default: goto yy49; } yy102: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy181; + case 'L': goto yy183; default: goto yy49; } yy103: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy183; + case 'Y': goto yy185; default: goto yy49; } yy104: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy184; + case 'P': goto yy187; default: goto yy49; } yy105: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy185; + case 'T': goto yy188; default: goto yy49; } yy106: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy186; + case 'G': goto yy189; default: goto yy49; } yy107: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy188; + case 'T': goto yy190; default: goto yy49; } yy108: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy189; + case 'P': goto yy192; default: goto yy49; } yy109: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case 'O': goto yy193; + default: goto yy49; + } +yy110: + yyaccept = 7; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; case '0': case '1': case '2': @@ -10479,174 +10675,200 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy110; + default: goto yy111; } -yy110: +yy111: #line 9474 "/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 10488 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy111: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy190; - case 'O': goto yy191; - default: goto yy49; - } +#line 10684 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy112: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy192; + case 'A': goto yy194; + case 'O': goto yy195; default: goto yy49; } yy113: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy193; - case 'N': goto yy194; + case 'A': goto yy196; default: goto yy49; } yy114: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy195; + case 'M': goto yy197; + case 'N': goto yy198; default: goto yy49; } yy115: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy196; + case 'T': goto yy199; default: goto yy49; } yy116: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy197; + case 'F': goto yy200; default: goto yy49; } yy117: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'B': goto yy198; + case 'R': goto yy201; default: goto yy49; } yy118: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy199; - case 'D': goto yy200; - case 'U': goto yy202; + case 'B': goto yy202; default: goto yy49; } yy119: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { case 'C': goto yy203; - case 'P': goto yy204; - case 'T': goto yy205; + case 'D': goto yy204; + case 'U': goto yy206; default: goto yy49; } yy120: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy206; + case 'C': goto yy207; + case 'P': goto yy208; + case 'T': goto yy209; default: goto yy49; } yy121: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy207; + case 'L': goto yy210; default: goto yy49; } yy122: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy208; + case 'O': goto yy211; default: goto yy49; } yy123: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'a': goto yy209; + case 'n': goto yy212; default: goto yy49; } yy124: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '5': goto yy210; + case 'a': goto yy213; default: goto yy49; } yy125: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy211; + case '5': goto yy214; default: goto yy49; } yy126: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy212; + case 'E': goto yy215; default: goto yy49; } yy127: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy213; - case 'S': goto yy214; - case 'T': goto yy215; + case 'P': goto yy216; default: goto yy49; } yy128: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy216; + case 'C': goto yy217; + case 'S': goto yy218; + case 'T': goto yy219; default: goto yy49; } yy129: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'X': goto yy217; + case 'O': goto yy220; default: goto yy49; } yy130: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy219; + case 'X': goto yy221; default: goto yy49; } yy131: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy221; + case 'N': goto yy223; default: goto yy49; } yy132: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy222; + case 'T': goto yy225; default: goto yy49; } yy133: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'm': goto yy223; + case 'L': goto yy226; default: goto yy49; } yy134: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'J': goto yy224; + case 'm': goto yy227; default: goto yy49; } yy135: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy225; + case 'J': goto yy228; default: goto yy49; } yy136: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy229; + default: goto yy49; + } +yy137: + yyaccept = 8; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -10710,205 +10932,186 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy137; + default: goto yy138; } -yy137: +yy138: #line 9522 "/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 10719 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy138: - yych = *++context.cursor; - switch (yych) { - case 'D': goto yy226; - default: goto yy49; - } +#line 10941 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy139: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy227; + case 'D': goto yy230; default: goto yy49; } yy140: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'j': goto yy228; + case 'T': goto yy231; default: goto yy49; } yy141: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy229; + case 'j': goto yy232; default: goto yy49; } yy142: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'V': goto yy230; + case 'T': goto yy233; default: goto yy49; } yy143: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy232; + case 'V': goto yy234; default: goto yy49; } yy144: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy233; - case 'I': goto yy234; + case 'U': goto yy236; default: goto yy49; } yy145: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy235; + case 'E': goto yy237; + case 'I': goto yy238; default: goto yy49; } yy146: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy236; - case 'L': goto yy237; + case 'i': goto yy239; default: goto yy49; } yy147: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Q': goto yy238; - case 'T': goto yy239; + case 'A': goto yy240; + case 'L': goto yy241; default: goto yy49; } yy148: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Z': goto yy241; + case 'Q': goto yy242; + case 'T': goto yy243; default: goto yy49; } yy149: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy242; + case 'Z': goto yy245; default: goto yy49; } yy150: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy243; + case 'R': goto yy246; default: goto yy49; } yy151: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '1': goto yy244; + case 'N': goto yy247; default: goto yy49; } yy152: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy245; + case '1': goto yy248; default: goto yy49; } yy153: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy246; + case 'G': goto yy249; default: goto yy49; } yy154: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy247; + case 'M': goto yy250; default: goto yy49; } yy155: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy248; + case 'U': goto yy251; default: goto yy49; } yy156: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'l': goto yy249; + case 'P': goto yy252; default: goto yy49; } yy157: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy250; + case 'l': goto yy253; default: goto yy49; } yy158: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy251; - case 'F': goto yy252; + case 'I': goto yy254; default: goto yy49; } yy159: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy253; + case 'C': goto yy255; + case 'F': goto yy256; default: goto yy49; } yy160: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'd': goto yy254; - case 's': goto yy255; + case 'i': goto yy257; default: goto yy49; } yy161: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy256; + case 'd': goto yy258; + case 's': goto yy259; default: goto yy49; } yy162: - yych = *++context.cursor; - switch (yych) { - case '"': goto yy162; - case '\'': goto yy78; - case '\\': goto yy79; - default: goto yy13; - } -yy164: - ++context.cursor; -#line 9570 "/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 10881 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy166: - ++context.cursor; -#line 9572 "/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, context.cursor), context.location); } -#line 10886 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy168: - yych = *++context.cursor; - switch (yych) { - case 'H': goto yy166; - default: goto yy77; - } -yy169: - yych = *++context.cursor; - switch (yych) { - case '\n': - case '\r': goto yy98; - case '-': goto yy257; - default: goto yy90; - } -yy170: - ++context.cursor; -#line 9587 "/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 10905 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy172: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '/': goto yy259; - default: goto yy95; + case 'T': goto yy260; + default: goto yy49; } -yy173: +yy163: yych = *++context.cursor; switch (yych) { case '0': @@ -10920,29 +11123,73 @@ namespace yy { case '6': case '7': case '8': - case '9': goto yy173; - default: goto yy175; + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy67; + default: goto yy98; } -yy175: -#line 9565 "/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 10930 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy176: - ++context.cursor; -#line 9586 "/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 10935 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy178: +yy164: yych = *++context.cursor; switch (yych) { - case 'E': goto yy261; - case 'T': goto yy262; - default: goto yy49; + case '"': goto yy164; + case '\'': goto yy78; + case '\\': goto yy79; + default: goto yy13; } -yy179: +yy166: yych = *++context.cursor; switch (yych) { - case '-': case '0': case '1': case '2': @@ -11005,17 +11252,12 @@ namespace yy { case 'w': case 'x': case 'y': - case 'z': goto yy48; - default: goto yy180; + case 'z': goto yy81; + default: goto yy98; } -yy180: -#line 9466 "/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 11015 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy181: +yy167: yych = *++context.cursor; switch (yych) { - case '-': case '0': case '1': case '2': @@ -11078,35 +11320,81 @@ namespace yy { case 'w': case 'x': case 'y': - case 'z': goto yy48; - default: goto yy182; + case 'z': goto yy84; + default: goto yy98; } -yy182: -#line 9467 "/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 11088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy183: +yy168: + ++context.cursor; +#line 9570 "/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 11331 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy170: + ++context.cursor; +#line 9572 "/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 11336 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy172: yych = *++context.cursor; switch (yych) { - case 'L': goto yy263; - default: goto yy49; + case 'H': goto yy170; + default: goto yy77; } -yy184: +yy173: yych = *++context.cursor; switch (yych) { - case 'O': goto yy264; - default: goto yy49; + case '\n': + case '\r': goto yy98; + case '-': goto yy261; + default: goto yy90; } -yy185: +yy174: + ++context.cursor; +#line 9587 "/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 11355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy176: yych = *++context.cursor; switch (yych) { - case 'I': goto yy265; - default: goto yy49; + case '/': goto yy263; + default: goto yy95; } -yy186: +yy177: yych = *++context.cursor; switch (yych) { - case '-': + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy177; + default: goto yy179; + } +yy179: +#line 9565 "/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 11380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy180: + ++context.cursor; +#line 9586 "/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 11385 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy182: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy265; + case 'T': goto yy266; + default: goto yy49; + } +yy183: + yyaccept = 9; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; case '0': case '1': case '2': @@ -11170,90 +11458,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy187; + default: goto yy184; } -yy187: -#line 9471 "/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 11179 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy188: - yych = *++context.cursor; +yy184: +#line 9466 "/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 11467 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy185: + yyaccept = 10; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy266; - default: goto yy49; - } -yy189: - yych = *++context.cursor; - switch (yych) { - case 'L': goto yy267; - default: goto yy49; - } -yy190: - yych = *++context.cursor; - switch (yych) { - case 'R': goto yy268; - default: goto yy49; - } -yy191: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy269; - default: goto yy49; - } -yy192: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy270; - default: goto yy49; - } -yy193: - yych = *++context.cursor; - switch (yych) { - case 'P': goto yy271; - default: goto yy49; - } -yy194: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy272; - case 'T': goto yy273; - default: goto yy49; - } -yy195: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy274; - default: goto yy49; - } -yy196: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy276; - case 'I': goto yy277; - default: goto yy49; - } -yy197: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy278; - default: goto yy49; - } -yy198: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy279; - default: goto yy49; - } -yy199: - yych = *++context.cursor; - switch (yych) { - case 'O': goto yy280; - default: goto yy49; - } -yy200: - yych = *++context.cursor; - switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -11317,108 +11532,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy201; - } -yy201: -#line 9490 "/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 11326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy202: - yych = *++context.cursor; - switch (yych) { - case 'M': goto yy281; - default: goto yy49; - } -yy203: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy282; - default: goto yy49; - } -yy204: - yych = *++context.cursor; - switch (yych) { - case 'L': goto yy283; - case 'O': goto yy284; - default: goto yy49; - } -yy205: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy285; - default: goto yy49; - } -yy206: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy286; - default: goto yy49; - } -yy207: - yych = *++context.cursor; - switch (yych) { - case 'M': goto yy287; - default: goto yy49; - } -yy208: - yych = *++context.cursor; - switch (yych) { - case 'e': goto yy289; - default: goto yy49; - } -yy209: - yych = *++context.cursor; - switch (yych) { - case 'p': goto yy290; - default: goto yy49; - } -yy210: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy291; - default: goto yy49; - } -yy211: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy292; - default: goto yy49; - } -yy212: - yych = *++context.cursor; - switch (yych) { - case 'L': goto yy293; - case 'O': goto yy294; - default: goto yy49; - } -yy213: - yych = *++context.cursor; - switch (yych) { - case 'L': goto yy295; - default: goto yy49; + default: goto yy186; } -yy214: - yych = *++context.cursor; +yy186: +#line 9467 "/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 11541 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy187: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy296; + case 'L': goto yy267; default: goto yy49; } -yy215: - yych = *++context.cursor; +yy188: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy297; + case 'O': goto yy268; default: goto yy49; } -yy216: - yych = *++context.cursor; +yy189: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '6': goto yy298; + case 'I': goto yy269; default: goto yy49; } -yy217: - yych = *++context.cursor; +yy190: + yyaccept = 11; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -11482,16 +11627,103 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy218; + default: goto yy191; } -yy218: -#line 9513 "/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 11491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy219: - yych = *++context.cursor; +yy191: +#line 9471 "/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 11636 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy192: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy270; + default: goto yy49; + } +yy193: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'L': goto yy271; + default: goto yy49; + } +yy194: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'R': goto yy272; + default: goto yy49; + } +yy195: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy273; + default: goto yy49; + } +yy196: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy274; + default: goto yy49; + } +yy197: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'P': goto yy275; + default: goto yy49; + } +yy198: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy276; + case 'T': goto yy277; + default: goto yy49; + } +yy199: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy278; + default: goto yy49; + } +yy200: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'A': goto yy280; + case 'I': goto yy281; + default: goto yy49; + } +yy201: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'A': goto yy282; + default: goto yy49; + } +yy202: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy283; + default: goto yy49; + } +yy203: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'O': goto yy284; + default: goto yy49; + } +yy204: + yyaccept = 12; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -11522,6 +11754,7 @@ namespace yy { case 'R': case 'S': case 'T': + case 'U': case 'V': case 'W': case 'X': @@ -11554,71 +11787,124 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'U': goto yy299; - default: goto yy220; + default: goto yy205; } -yy220: -#line 9514 "/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 11564 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy221: - yych = *++context.cursor; +yy205: +#line 9490 "/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 11796 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy206: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy300; + case 'M': goto yy285; default: goto yy49; } -yy222: - yych = *++context.cursor; +yy207: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy301; + case 'E': goto yy286; default: goto yy49; } -yy223: - yych = *++context.cursor; +yy208: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy303; + case 'L': goto yy287; + case 'O': goto yy288; default: goto yy49; } -yy224: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy304; +yy209: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy289; default: goto yy49; } -yy225: - yych = *++context.cursor; +yy210: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy305; + case 'S': goto yy290; default: goto yy49; } -yy226: - yych = *++context.cursor; +yy211: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '_': goto yy306; + case 'M': goto yy291; default: goto yy49; } -yy227: - yych = *++context.cursor; +yy212: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy307; + case 'e': goto yy293; default: goto yy49; } -yy228: - yych = *++context.cursor; +yy213: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy308; + case 'p': goto yy294; default: goto yy49; } -yy229: - yych = *++context.cursor; +yy214: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy309; + case 'S': goto yy295; default: goto yy49; } -yy230: - yych = *++context.cursor; +yy215: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy296; + default: goto yy49; + } +yy216: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'L': goto yy297; + case 'O': goto yy298; + default: goto yy49; + } +yy217: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'L': goto yy299; + default: goto yy49; + } +yy218: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy300; + default: goto yy49; + } +yy219: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy301; + default: goto yy49; + } +yy220: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '6': goto yy302; + default: goto yy49; + } +yy221: + yyaccept = 13; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; case '0': case '1': case '2': @@ -11682,58 +11968,154 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy231; + default: goto yy222; } -yy231: -#line 9526 "/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 11691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy232: - yych = *++context.cursor; +yy222: +#line 9513 "/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 11977 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy223: + yyaccept = 14; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + case 'U': goto yy303; + default: goto yy224; + } +yy224: +#line 9514 "/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 12051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy225: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy310; + case '-': goto yy304; default: goto yy49; } -yy233: - yych = *++context.cursor; +yy226: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy311; + case 'L': goto yy305; default: goto yy49; } -yy234: - yych = *++context.cursor; +yy227: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'V': goto yy312; + case 'e': goto yy307; default: goto yy49; } -yy235: - yych = *++context.cursor; +yy228: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy313; + case 'E': goto yy308; default: goto yy49; } -yy236: - yych = *++context.cursor; +yy229: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy314; + case 'E': goto yy309; default: goto yy49; } -yy237: - yych = *++context.cursor; +yy230: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy316; + case '_': goto yy310; default: goto yy49; } -yy238: - yych = *++context.cursor; +yy231: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy317; + case 'I': goto yy311; default: goto yy49; } -yy239: - yych = *++context.cursor; +yy232: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'e': goto yy312; + default: goto yy49; + } +yy233: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy313; + default: goto yy49; + } +yy234: + yyaccept = 15; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -11763,6 +12145,7 @@ namespace yy { case 'Q': case 'R': case 'S': + case 'T': case 'U': case 'V': case 'W': @@ -11796,203 +12179,355 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'T': goto yy318; - default: goto yy240; - } -yy240: -#line 9535 "/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 11806 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy241: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy319; - default: goto yy49; - } -yy242: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy321; - default: goto yy49; + default: goto yy235; } -yy243: - yych = *++context.cursor; +yy235: +#line 9526 "/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 12188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy236: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy322; + case 'S': goto yy314; default: goto yy49; } -yy244: - yych = *++context.cursor; +yy237: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy323; + case 'S': goto yy315; default: goto yy49; } -yy245: - yych = *++context.cursor; +yy238: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy324; + case 'V': goto yy316; default: goto yy49; } -yy246: - yych = *++context.cursor; +yy239: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy326; + case 'n': goto yy317; default: goto yy49; } -yy247: - yych = *++context.cursor; +yy240: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy328; + case 'L': goto yy318; default: goto yy49; } -yy248: - yych = *++context.cursor; +yy241: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy330; + case 'A': goto yy320; default: goto yy49; } -yy249: - yych = *++context.cursor; +yy242: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy331; + case 'U': goto yy321; default: goto yy49; } -yy250: - yych = *++context.cursor; +yy243: + yyaccept = 16; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy332; - case 'Q': goto yy333; - case 'V': goto yy334; - default: goto yy49; - } -yy251: - yych = *++context.cursor; + case '-': goto yy100; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + case 'T': goto yy322; + default: goto yy244; + } +yy244: +#line 9535 "/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 12311 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy245: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy323; + default: goto yy49; + } +yy246: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy325; + default: goto yy49; + } +yy247: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy326; + default: goto yy49; + } +yy248: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy327; + default: goto yy49; + } +yy249: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy328; + default: goto yy49; + } +yy250: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy330; + default: goto yy49; + } +yy251: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy335; + case 'E': goto yy332; default: goto yy49; } yy252: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '8': goto yy336; + case 'E': goto yy334; default: goto yy49; } yy253: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'v': goto yy337; + case 'e': goto yy335; default: goto yy49; } yy254: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy338; + case 'O': goto yy336; + case 'Q': goto yy337; + case 'V': goto yy338; default: goto yy49; } yy255: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy339; + case 'T': goto yy339; default: goto yy49; } yy256: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'H': goto yy340; + case '8': goto yy340; default: goto yy49; } yy257: - ++context.cursor; -#line 9559 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" - { context.location.columns(context.cursor - start); return yylex(context); } -#line 11909 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy259: - ++context.cursor; -#line 9562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" - { context.location.columns(context.cursor - start); return yylex(context); } -#line 11914 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy261: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy342; + case 'v': goto yy341; default: goto yy49; } -yy262: - yych = *++context.cursor; +yy258: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy343; + case 'e': goto yy342; default: goto yy49; } -yy263: - yych = *++context.cursor; +yy259: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy344; + case 'i': goto yy343; default: goto yy49; } -yy264: - yych = *++context.cursor; +yy260: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy345; + case 'H': goto yy344; default: goto yy49; } +yy261: + ++context.cursor; +#line 9559 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" + { context.location.columns(context.cursor - start); return yylex(context); } +#line 12430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy263: + ++context.cursor; +#line 9562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" + { context.location.columns(context.cursor - start); return yylex(context); } +#line 12435 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy265: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { case 'N': goto yy346; default: goto yy49; } yy266: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy348; + case 'R': goto yy347; default: goto yy49; } yy267: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy349; + case 'I': goto yy348; default: goto yy49; } yy268: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy350; + case 'M': goto yy349; default: goto yy49; } yy269: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy351; + case 'N': goto yy350; default: goto yy49; } yy270: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy352; + case 't': goto yy352; default: goto yy49; } yy271: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy354; + case 'E': goto yy353; default: goto yy49; } yy272: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy355; + case 'A': goto yy354; default: goto yy49; } yy273: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy356; + case 'C': goto yy355; default: goto yy49; } yy274: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy356; + default: goto yy49; + } +yy275: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'O': goto yy358; + default: goto yy49; + } +yy276: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy359; + default: goto yy49; + } +yy277: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'A': goto yy360; + default: goto yy49; + } +yy278: + yyaccept = 17; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy357; + case '-': goto yy361; case '0': case '1': case '2': @@ -12056,87 +12591,99 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy275; + default: goto yy279; } -yy275: +yy279: #line 9482 "/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 12065 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy276: - yych = *++context.cursor; - switch (yych) { - case 'U': goto yy358; - default: goto yy49; - } -yy277: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy359; - default: goto yy49; - } -yy278: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy360; - default: goto yy49; - } -yy279: - yych = *++context.cursor; - switch (yych) { - case 'D': goto yy361; - default: goto yy49; - } +#line 12600 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy280: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy362; + case 'U': goto yy362; default: goto yy49; } yy281: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy363; + case 'N': goto yy363; default: goto yy49; } yy282: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy364; + case 'T': goto yy364; default: goto yy49; } yy283: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy365; + case 'D': goto yy365; default: goto yy49; } yy284: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy366; + case 'D': goto yy366; default: goto yy49; } yy285: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy367; - case 'R': goto yy368; + case 'E': goto yy367; default: goto yy49; } yy286: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy369; + case 'P': goto yy368; default: goto yy49; } yy287: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': - case '0': - case '1': - case '2': - case '3': + case 'I': goto yy369; + default: goto yy49; + } +yy288: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'R': goto yy370; + default: goto yy49; + } +yy289: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy371; + case 'R': goto yy372; + default: goto yy49; + } +yy290: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy373; + default: goto yy49; + } +yy291: + yyaccept = 18; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; + case '0': + case '1': + case '2': + case '3': case '4': case '5': case '6': @@ -12196,90 +12743,94 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy288; + default: goto yy292; } -yy288: +yy292: #line 9498 "/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 12205 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy289: - yych = *++context.cursor; - switch (yych) { - case 'r': goto yy371; - default: goto yy49; - } -yy290: - yych = *++context.cursor; - switch (yych) { - case 'h': goto yy372; - default: goto yy49; - } -yy291: - yych = *++context.cursor; - switch (yych) { - case 't': goto yy373; - default: goto yy49; - } -yy292: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy374; - default: goto yy49; - } +#line 12752 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy293: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy375; + case 'r': goto yy375; default: goto yy49; } yy294: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy376; + case 'h': goto yy376; default: goto yy49; } yy295: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy377; + case 't': goto yy377; default: goto yy49; } yy296: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy378; - case 'R': goto yy379; + case 'T': goto yy378; default: goto yy49; } yy297: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy380; - case 'R': goto yy381; + case 'I': goto yy379; default: goto yy49; } yy298: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '4': goto yy382; + case 'R': goto yy380; default: goto yy49; } yy299: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy383; + case 'U': goto yy381; default: goto yy49; } yy300: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy384; + case 'A': goto yy382; + case 'R': goto yy383; default: goto yy49; } yy301: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'G': goto yy384; + case 'R': goto yy385; + default: goto yy49; + } +yy302: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '4': goto yy386; + default: goto yy49; + } +yy303: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy387; + default: goto yy49; + } +yy304: yych = *++context.cursor; switch (yych) { - case '-': case '0': case '1': case '2': @@ -12290,7 +12841,6 @@ namespace yy { case '7': case '8': case '9': - case 'A': case 'B': case 'C': case 'D': @@ -12343,82 +12893,14 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy302; - } -yy302: -#line 9517 "/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 12352 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy303: - yych = *++context.cursor; - switch (yych) { - case 'r': goto yy385; - default: goto yy49; - } -yy304: - yych = *++context.cursor; - switch (yych) { - case 'C': goto yy386; - default: goto yy49; + case 'A': goto yy388; + default: goto yy98; } yy305: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy387; - default: goto yy49; - } -yy306: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy389; - default: goto yy49; - } -yy307: - yych = *++context.cursor; - switch (yych) { - case 'O': goto yy390; - default: goto yy49; - } -yy308: - yych = *++context.cursor; - switch (yych) { - case 'c': goto yy391; - default: goto yy49; - } -yy309: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy392; - default: goto yy49; - } -yy310: - yych = *++context.cursor; - switch (yych) { - case '_': goto yy393; - default: goto yy49; - } -yy311: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy394; - default: goto yy49; - } -yy312: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy395; - default: goto yy49; - } -yy313: - yych = *++context.cursor; - switch (yych) { - case 't': goto yy396; - default: goto yy49; - } -yy314: - yych = *++context.cursor; + yyaccept = 19; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -12482,34 +12964,94 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy315; + default: goto yy306; } -yy315: -#line 9531 "/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 12491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy316: - yych = *++context.cursor; +yy306: +#line 9517 "/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 12973 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy307: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy397; + case 'r': goto yy389; default: goto yy49; } -yy317: - yych = *++context.cursor; +yy308: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'C': goto yy390; + default: goto yy49; + } +yy309: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy391; + default: goto yy49; + } +yy310: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy393; + default: goto yy49; + } +yy311: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'O': goto yy394; + default: goto yy49; + } +yy312: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'c': goto yy395; + default: goto yy49; + } +yy313: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy396; + default: goto yy49; + } +yy314: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '_': goto yy397; + default: goto yy49; + } +yy315: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { case 'E': goto yy398; default: goto yy49; } -yy318: - yych = *++context.cursor; +yy316: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy399; + case 'A': goto yy399; default: goto yy49; } -yy319: - yych = *++context.cursor; +yy317: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 't': goto yy400; + default: goto yy49; + } +yy318: + yyaccept = 20; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -12573,34 +13115,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy320; + default: goto yy319; } +yy319: +#line 9531 "/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 13124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy320: -#line 9537 "/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 12582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy321: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy400; + case 'T': goto yy401; default: goto yy49; } -yy322: - yych = *++context.cursor; +yy321: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy401; + case 'E': goto yy402; default: goto yy49; } -yy323: - yych = *++context.cursor; +yy322: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy402; + case 'I': goto yy403; default: goto yy49; } -yy324: - yych = *++context.cursor; +yy323: + yyaccept = 21; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -12664,16 +13210,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy325; + default: goto yy324; } +yy324: +#line 9537 "/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 13219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy325: -#line 9541 "/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 12673 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy326: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy404; + default: goto yy49; + } +yy326: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'A': goto yy405; + default: goto yy49; + } +yy327: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 't': goto yy406; + default: goto yy49; + } +yy328: + yyaccept = 22; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy403; + case '-': goto yy100; case '0': case '1': case '2': @@ -12737,16 +13305,91 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy327; + default: goto yy329; } -yy327: +yy329: +#line 9541 "/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 13314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy330: + yyaccept = 23; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy407; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + default: goto yy331; + } +yy331: #line 9543 "/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 12746 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy328: - yych = *++context.cursor; +#line 13388 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy332: + yyaccept = 24; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -12810,76 +13453,957 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy329; + default: goto yy333; } -yy329: +yy333: #line 9545 "/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 12819 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy330: - yych = *++context.cursor; +#line 13462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy334: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy404; + case '-': goto yy408; default: goto yy49; } -yy331: - yych = *++context.cursor; +yy335: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy405; + case 't': goto yy409; default: goto yy49; } -yy332: - yych = *++context.cursor; +yy336: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy406; + case 'N': goto yy410; default: goto yy49; } -yy333: - yych = *++context.cursor; +yy337: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy408; + case 'U': goto yy412; default: goto yy49; } -yy334: - yych = *++context.cursor; +yy338: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy409; + case 'E': goto yy413; default: goto yy49; } -yy335: - yych = *++context.cursor; +yy339: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy410; + case 'i': goto yy414; default: goto yy49; } -yy336: - yych = *++context.cursor; +yy340: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy411; + case 'S': goto yy415; default: goto yy49; } -yy337: - yych = *++context.cursor; +yy341: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy412; + case 'e': goto yy416; default: goto yy49; } -yy338: - yych = *++context.cursor; +yy342: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'o': goto yy413; + case 'o': goto yy417; default: goto yy49; } -yy339: - yych = *++context.cursor; +yy343: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'b': goto yy418; + default: goto yy49; + } +yy344: + yyaccept = 25; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + default: goto yy345; + } +yy345: +#line 9555 "/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 13606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy346: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy419; + default: goto yy49; + } +yy347: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'A': goto yy421; + default: goto yy49; + } +yy348: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'C': goto yy422; + default: goto yy49; + } +yy349: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'b': goto yy414; + case 'A': goto yy423; default: goto yy49; } -yy340: +yy350: + yyaccept = 26; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + default: goto yy351; + } +yy351: +#line 9470 "/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 13708 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy352: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'r': goto yy424; + default: goto yy49; + } +yy353: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'A': goto yy425; + default: goto yy49; + } +yy354: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'C': goto yy426; + default: goto yy49; + } +yy355: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy427; + default: goto yy49; + } +yy356: + yyaccept = 27; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + default: goto yy357; + } +yy357: +#line 9477 "/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 13810 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy358: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy429; + default: goto yy49; + } +yy359: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'R': goto yy430; + default: goto yy49; + } +yy360: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy431; + default: goto yy49; + } +yy361: + yych = *++context.cursor; + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + case 'T': goto yy432; + default: goto yy98; + } +yy362: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'L': goto yy433; + default: goto yy49; + } +yy363: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy434; + default: goto yy49; + } +yy364: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy435; + default: goto yy49; + } +yy365: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'D': goto yy436; + default: goto yy49; + } +yy366: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy437; + case 'I': goto yy438; + default: goto yy49; + } +yy367: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'R': goto yy439; + default: goto yy49; + } +yy368: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy440; + default: goto yy49; + } +yy369: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'C': goto yy442; + default: goto yy49; + } +yy370: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy443; + default: goto yy49; + } +yy371: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy444; + default: goto yy49; + } +yy372: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy445; + default: goto yy49; + } +yy373: + yyaccept = 28; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + default: goto yy374; + } +yy374: +#line 9497 "/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 14051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy375: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'a': goto yy446; + default: goto yy49; + } +yy376: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'i': goto yy447; + default: goto yy49; + } +yy377: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'r': goto yy448; + default: goto yy49; + } +yy378: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy449; + default: goto yy49; + } +yy379: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'C': goto yy450; + case 'E': goto yy451; + default: goto yy49; + } +yy380: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy452; + default: goto yy49; + } +yy381: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'D': goto yy453; + default: goto yy49; + } +yy382: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy454; + default: goto yy49; + } +yy383: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'U': goto yy455; + default: goto yy49; + } +yy384: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy456; + default: goto yy49; + } +yy385: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy457; + default: goto yy49; + } +yy386: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '6': goto yy458; + default: goto yy49; + } +yy387: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy459; + default: goto yy49; + } +yy388: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy460; + default: goto yy49; + } +yy389: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'i': goto yy461; + default: goto yy49; + } +yy390: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy462; + default: goto yy49; + } +yy391: + yyaccept = 29; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + default: goto yy392; + } +yy392: +#line 9521 "/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 14238 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy393: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'R': goto yy464; + default: goto yy49; + } +yy394: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy465; + default: goto yy49; + } +yy395: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 't': goto yy466; + default: goto yy49; + } +yy396: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'R': goto yy467; + default: goto yy49; + } +yy397: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy468; + default: goto yy49; + } +yy398: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy469; + default: goto yy49; + } +yy399: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy470; + default: goto yy49; + } +yy400: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'a': goto yy471; + default: goto yy49; + } +yy401: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy472; + default: goto yy49; + } +yy402: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy473; + default: goto yy49; + } +yy403: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy474; + default: goto yy49; + } +yy404: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'G': goto yy475; + default: goto yy49; + } +yy405: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'X': goto yy477; + default: goto yy49; + } +yy406: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'r': goto yy479; + default: goto yy49; + } +yy407: + yych = *++context.cursor; + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + case 'O': goto yy480; + default: goto yy98; + } +yy408: yych = *++context.cursor; switch (yych) { - case '-': case '0': case '1': case '2': @@ -12898,7 +14422,6 @@ namespace yy { case 'F': case 'G': case 'H': - case 'I': case 'J': case 'K': case 'L': @@ -12943,40 +14466,21 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy341; - } -yy341: -#line 9555 "/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 12952 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy342: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy415; - default: goto yy49; - } -yy343: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy417; - default: goto yy49; - } -yy344: - yych = *++context.cursor; - switch (yych) { - case 'C': goto yy418; - default: goto yy49; + case 'I': goto yy481; + default: goto yy98; } -yy345: - yych = *++context.cursor; +yy409: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy419; + case 'e': goto yy482; default: goto yy49; } -yy346: - yych = *++context.cursor; +yy410: + yyaccept = 30; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -13040,40 +14544,66 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy347; + default: goto yy411; } -yy347: -#line 9470 "/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 13049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy348: - yych = *++context.cursor; +yy411: +#line 9547 "/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 14553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy412: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy420; + case 'E': goto yy483; default: goto yy49; } -yy349: - yych = *++context.cursor; +yy413: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy421; + case 'R': goto yy485; default: goto yy49; } -yy350: - yych = *++context.cursor; +yy414: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy422; + case 'm': goto yy486; default: goto yy49; } -yy351: - yych = *++context.cursor; +yy415: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy423; + case 't': goto yy487; default: goto yy49; } -yy352: - yych = *++context.cursor; +yy416: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'r': goto yy488; + default: goto yy49; + } +yy417: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 't': goto yy489; + default: goto yy49; + } +yy418: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'l': goto yy490; + default: goto yy49; + } +yy419: + yyaccept = 31; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -13137,107 +14667,59 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy353; - } -yy353: -#line 9477 "/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 13146 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy354: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy425; - default: goto yy49; - } -yy355: - yych = *++context.cursor; - switch (yych) { - case 'R': goto yy426; - default: goto yy49; - } -yy356: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy427; - default: goto yy49; - } -yy357: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy428; - default: goto yy49; - } -yy358: - yych = *++context.cursor; - switch (yych) { - case 'L': goto yy429; - default: goto yy49; - } -yy359: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy430; - default: goto yy49; - } -yy360: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy431; - default: goto yy49; - } -yy361: - yych = *++context.cursor; - switch (yych) { - case 'D': goto yy432; - default: goto yy49; - } -yy362: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy433; - case 'I': goto yy434; - default: goto yy49; + default: goto yy420; } -yy363: - yych = *++context.cursor; +yy420: +#line 9464 "/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 14676 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy421: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy435; + case 'C': goto yy491; default: goto yy49; } -yy364: - yych = *++context.cursor; +yy422: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy436; + case 'A': goto yy492; default: goto yy49; } -yy365: - yych = *++context.cursor; +yy423: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy438; + case 'T': goto yy493; default: goto yy49; } -yy366: - yych = *++context.cursor; +yy424: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy439; + case 'i': goto yy494; default: goto yy49; } -yy367: - yych = *++context.cursor; +yy425: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy440; + case 'N': goto yy495; default: goto yy49; } -yy368: - yych = *++context.cursor; +yy426: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy441; + case 'T': goto yy497; default: goto yy49; } -yy369: - yych = *++context.cursor; +yy427: + yyaccept = 32; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -13301,113 +14783,94 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy370; - } -yy370: -#line 9497 "/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 13310 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy371: - yych = *++context.cursor; - switch (yych) { - case 'a': goto yy442; - default: goto yy49; - } -yy372: - yych = *++context.cursor; - switch (yych) { - case 'i': goto yy443; - default: goto yy49; - } -yy373: - yych = *++context.cursor; - switch (yych) { - case 'r': goto yy444; - default: goto yy49; - } -yy374: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy445; - default: goto yy49; - } -yy375: - yych = *++context.cursor; - switch (yych) { - case 'C': goto yy446; - case 'E': goto yy447; - default: goto yy49; + default: goto yy428; } -yy376: - yych = *++context.cursor; +yy428: +#line 9476 "/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 14792 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy429: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy448; + case 'E': goto yy498; default: goto yy49; } -yy377: - yych = *++context.cursor; +yy430: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy449; + case 'A': goto yy499; default: goto yy49; } -yy378: - yych = *++context.cursor; +yy431: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy450; + case 'N': goto yy500; default: goto yy49; } -yy379: - yych = *++context.cursor; +yy432: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy451; + case 'I': goto yy501; default: goto yy49; } -yy380: - yych = *++context.cursor; +yy433: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy452; + case 'T': goto yy502; default: goto yy49; } -yy381: - yych = *++context.cursor; +yy434: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy453; + case 'T': goto yy504; default: goto yy49; } -yy382: - yych = *++context.cursor; +yy435: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '6': goto yy454; + case 'O': goto yy505; default: goto yy49; } -yy383: - yych = *++context.cursor; +yy436: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy455; + case 'E': goto yy506; default: goto yy49; } -yy384: - yych = *++context.cursor; +yy437: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy456; + case 'D': goto yy507; default: goto yy49; } -yy385: - yych = *++context.cursor; +yy438: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy457; + case 'N': goto yy509; default: goto yy49; } -yy386: - yych = *++context.cursor; +yy439: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy458; + case 'A': goto yy510; default: goto yy49; } -yy387: - yych = *++context.cursor; +yy440: + yyaccept = 33; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -13471,118 +14934,134 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy388; + default: goto yy441; } -yy388: -#line 9521 "/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 13480 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy389: - yych = *++context.cursor; +yy441: +#line 9492 "/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 14943 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy442: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy460; + case 'I': goto yy511; default: goto yy49; } -yy390: - yych = *++context.cursor; +yy443: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy461; + case 'S': goto yy512; default: goto yy49; } -yy391: - yych = *++context.cursor; +yy444: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy462; + case 'I': goto yy514; default: goto yy49; } -yy392: - yych = *++context.cursor; +yy445: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy463; + case 'A': goto yy515; default: goto yy49; } -yy393: - yych = *++context.cursor; +yy446: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy464; + case 'l': goto yy516; default: goto yy49; } -yy394: - yych = *++context.cursor; +yy447: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy465; + case 'c': goto yy517; default: goto yy49; } -yy395: - yych = *++context.cursor; +yy448: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy466; + case 'i': goto yy518; default: goto yy49; } -yy396: - yych = *++context.cursor; +yy449: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'a': goto yy467; + case 'F': goto yy519; default: goto yy49; } -yy397: - yych = *++context.cursor; +yy450: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy468; + case 'I': goto yy520; default: goto yy49; } -yy398: - yych = *++context.cursor; +yy451: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy469; + case 'D': goto yy521; default: goto yy49; } -yy399: - yych = *++context.cursor; +yy452: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy470; + case 'S': goto yy523; default: goto yy49; } -yy400: - yych = *++context.cursor; +yy453: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy471; + case 'E': goto yy525; default: goto yy49; } -yy401: - yych = *++context.cursor; +yy454: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'X': goto yy473; + case 'C': goto yy526; default: goto yy49; } -yy402: - yych = *++context.cursor; +yy455: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy475; + case 'C': goto yy527; default: goto yy49; } -yy403: - yych = *++context.cursor; +yy456: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy476; + case 'R': goto yy528; default: goto yy49; } -yy404: - yych = *++context.cursor; +yy457: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy477; + case 'E': goto yy530; default: goto yy49; } -yy405: - yych = *++context.cursor; +yy458: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy478; + case 'S': goto yy531; default: goto yy49; } -yy406: +yy459: yych = *++context.cursor; switch (yych) { - case '-': case '0': case '1': case '2': @@ -13601,7 +15080,6 @@ namespace yy { case 'F': case 'G': case 'H': - case 'I': case 'J': case 'K': case 'L': @@ -13646,58 +15124,89 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy407; - } -yy407: -#line 9547 "/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 13655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy408: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy479; - default: goto yy49; - } -yy409: - yych = *++context.cursor; - switch (yych) { - case 'R': goto yy481; - default: goto yy49; - } -yy410: - yych = *++context.cursor; - switch (yych) { - case 'm': goto yy482; - default: goto yy49; - } -yy411: - yych = *++context.cursor; - switch (yych) { - case 't': goto yy483; - default: goto yy49; - } -yy412: - yych = *++context.cursor; - switch (yych) { - case 'r': goto yy484; - default: goto yy49; + case 'I': goto yy532; + default: goto yy98; } -yy413: +yy460: yych = *++context.cursor; switch (yych) { - case 't': goto yy485; - default: goto yy49; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + case 'N': goto yy533; + default: goto yy98; } -yy414: - yych = *++context.cursor; +yy461: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'l': goto yy486; + case 'c': goto yy534; default: goto yy49; } -yy415: - yych = *++context.cursor; +yy462: + yyaccept = 34; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -13761,52 +15270,94 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy416; + default: goto yy463; } -yy416: -#line 9464 "/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 13770 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy417: - yych = *++context.cursor; +yy463: +#line 9519 "/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 15279 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy464: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy487; + case 'I': goto yy535; default: goto yy49; } -yy418: - yych = *++context.cursor; +yy465: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy488; + case 'A': goto yy537; default: goto yy49; } -yy419: - yych = *++context.cursor; +yy466: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'D': goto yy538; + default: goto yy49; + } +yy467: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy539; + default: goto yy49; + } +yy468: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy541; + default: goto yy49; + } +yy469: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy542; + default: goto yy49; + } +yy470: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy544; + default: goto yy49; + } +yy471: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy489; + case 'b': goto yy546; default: goto yy49; } -yy420: - yych = *++context.cursor; +yy472: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy490; + case 'V': goto yy547; default: goto yy49; } -yy421: - yych = *++context.cursor; +yy473: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy491; + case 'C': goto yy548; default: goto yy49; } -yy422: - yych = *++context.cursor; +yy474: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy493; + case 'G': goto yy549; default: goto yy49; } -yy423: - yych = *++context.cursor; +yy475: + yyaccept = 35; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -13870,82 +15421,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy424; - } -yy424: -#line 9476 "/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 13879 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy425: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy494; - default: goto yy49; - } -yy426: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy495; - default: goto yy49; - } -yy427: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy496; - default: goto yy49; - } -yy428: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy497; - default: goto yy49; - } -yy429: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy498; - default: goto yy49; - } -yy430: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy500; - default: goto yy49; - } -yy431: - yych = *++context.cursor; - switch (yych) { - case 'O': goto yy501; - default: goto yy49; - } -yy432: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy502; - default: goto yy49; + default: goto yy476; } -yy433: - yych = *++context.cursor; - switch (yych) { - case 'D': goto yy503; - default: goto yy49; - } -yy434: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy505; - default: goto yy49; - } -yy435: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy506; - default: goto yy49; - } -yy436: - yych = *++context.cursor; +yy476: +#line 9538 "/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 15430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy477: + yyaccept = 36; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -14009,136 +15495,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy437; - } -yy437: -#line 9492 "/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 14018 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy438: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy507; - default: goto yy49; - } -yy439: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy508; - default: goto yy49; - } -yy440: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy510; - default: goto yy49; - } -yy441: - yych = *++context.cursor; - switch (yych) { - case 'A': goto yy511; - default: goto yy49; - } -yy442: - yych = *++context.cursor; - switch (yych) { - case 'l': goto yy512; - default: goto yy49; - } -yy443: - yych = *++context.cursor; - switch (yych) { - case 'c': goto yy513; - default: goto yy49; - } -yy444: - yych = *++context.cursor; - switch (yych) { - case 'i': goto yy514; - default: goto yy49; - } -yy445: - yych = *++context.cursor; - switch (yych) { - case 'F': goto yy515; - default: goto yy49; - } -yy446: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy516; - default: goto yy49; - } -yy447: - yych = *++context.cursor; - switch (yych) { - case 'D': goto yy517; - default: goto yy49; - } -yy448: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy519; - default: goto yy49; - } -yy449: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy521; - default: goto yy49; - } -yy450: - yych = *++context.cursor; - switch (yych) { - case 'C': goto yy522; - default: goto yy49; - } -yy451: - yych = *++context.cursor; - switch (yych) { - case 'C': goto yy523; - default: goto yy49; - } -yy452: - yych = *++context.cursor; - switch (yych) { - case 'R': goto yy524; - default: goto yy49; - } -yy453: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy526; - default: goto yy49; + default: goto yy478; } -yy454: - yych = *++context.cursor; +yy478: +#line 9539 "/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 15504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy479: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy527; + case 'i': goto yy550; default: goto yy49; } -yy455: - yych = *++context.cursor; +yy480: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy528; + case 'F': goto yy551; default: goto yy49; } -yy456: - yych = *++context.cursor; +yy481: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy529; + case 'D': goto yy552; default: goto yy49; } -yy457: - yych = *++context.cursor; +yy482: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'c': goto yy530; + case 'x': goto yy553; default: goto yy49; } -yy458: - yych = *++context.cursor; +yy483: + yyaccept = 37; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -14202,82 +15597,87 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy459; - } -yy459: -#line 9519 "/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 14211 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy460: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy531; - default: goto yy49; + default: goto yy484; } -yy461: - yych = *++context.cursor; +yy484: +#line 9548 "/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 15606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy485: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy533; + case 'S': goto yy554; default: goto yy49; } -yy462: - yych = *++context.cursor; +yy486: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy534; + case 'e': goto yy555; default: goto yy49; } -yy463: - yych = *++context.cursor; +yy487: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy535; + case 'r': goto yy557; default: goto yy49; } -yy464: - yych = *++context.cursor; +yy488: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy537; + case 's': goto yy558; default: goto yy49; } -yy465: - yych = *++context.cursor; +yy489: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy538; + case 'e': goto yy559; default: goto yy49; } -yy466: - yych = *++context.cursor; +yy490: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy540; + case 'e': goto yy560; default: goto yy49; } -yy467: - yych = *++context.cursor; +yy491: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'b': goto yy542; + case 'T': goto yy561; default: goto yy49; } -yy468: - yych = *++context.cursor; +yy492: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'V': goto yy543; + case 'T': goto yy562; default: goto yy49; } -yy469: - yych = *++context.cursor; +yy493: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy544; + case 'I': goto yy563; default: goto yy49; } -yy470: - yych = *++context.cursor; +yy494: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy545; + case 'n': goto yy564; default: goto yy49; } -yy471: - yych = *++context.cursor; +yy495: + yyaccept = 38; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -14341,16 +15741,52 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy472; + default: goto yy496; } -yy472: -#line 9538 "/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 14350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy473: - yych = *++context.cursor; +yy496: +#line 9473 "/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 15750 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy497: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy565; + default: goto yy49; + } +yy498: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy566; + default: goto yy49; + } +yy499: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy567; + default: goto yy49; + } +yy500: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy568; + default: goto yy49; + } +yy501: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'M': goto yy569; + default: goto yy49; + } +yy502: + yyaccept = 39; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -14414,40 +15850,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy474; - } -yy474: -#line 9539 "/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 14423 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy475: - yych = *++context.cursor; - switch (yych) { - case 'i': goto yy546; - default: goto yy49; + default: goto yy503; } -yy476: - yych = *++context.cursor; +yy503: +#line 9484 "/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 15859 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy504: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy547; + case 'I': goto yy570; default: goto yy49; } -yy477: - yych = *++context.cursor; +yy505: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy548; + case 'N': goto yy571; default: goto yy49; } -yy478: - yych = *++context.cursor; +yy506: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'x': goto yy549; + case 'D': goto yy573; default: goto yy49; } -yy479: - yych = *++context.cursor; +yy507: + yyaccept = 40; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -14511,76 +15945,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy480; - } -yy480: -#line 9548 "/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 14520 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy481: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy550; - default: goto yy49; - } -yy482: - yych = *++context.cursor; - switch (yych) { - case 'e': goto yy551; - default: goto yy49; - } -yy483: - yych = *++context.cursor; - switch (yych) { - case 'r': goto yy553; - default: goto yy49; - } -yy484: - yych = *++context.cursor; - switch (yych) { - case 's': goto yy554; - default: goto yy49; - } -yy485: - yych = *++context.cursor; - switch (yych) { - case 'e': goto yy555; - default: goto yy49; - } -yy486: - yych = *++context.cursor; - switch (yych) { - case 'e': goto yy556; - default: goto yy49; - } -yy487: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy557; - default: goto yy49; + default: goto yy508; } -yy488: - yych = *++context.cursor; +yy508: +#line 9488 "/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 15954 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy509: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy558; + case 'G': goto yy575; default: goto yy49; } -yy489: - yych = *++context.cursor; +yy510: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy559; + case 'T': goto yy576; default: goto yy49; } -yy490: - yych = *++context.cursor; +yy511: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy560; + case 'T': goto yy577; default: goto yy49; } -yy491: - yych = *++context.cursor; +yy512: + yyaccept = 41; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -14644,46 +16040,67 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy492; + default: goto yy513; } -yy492: -#line 9473 "/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 14653 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy493: - yych = *++context.cursor; +yy513: +#line 9494 "/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 16049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy514: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy561; + case 'B': goto yy579; default: goto yy49; } -yy494: - yych = *++context.cursor; +yy515: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy562; + case 'L': goto yy580; default: goto yy49; } -yy495: - yych = *++context.cursor; +yy516: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy563; + case 'S': goto yy582; + case 'i': goto yy583; default: goto yy49; } -yy496: - yych = *++context.cursor; +yy517: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy564; + case 'S': goto yy584; default: goto yy49; } -yy497: - yych = *++context.cursor; +yy518: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy565; + case 'n': goto yy585; default: goto yy49; } -yy498: - yych = *++context.cursor; +yy519: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy586; + default: goto yy49; + } +yy520: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy587; + default: goto yy49; + } +yy521: + yyaccept = 42; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -14747,34 +16164,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy499; - } -yy499: -#line 9484 "/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 14756 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy500: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy566; - default: goto yy49; - } -yy501: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy567; - default: goto yy49; - } -yy502: - yych = *++context.cursor; - switch (yych) { - case 'D': goto yy569; - default: goto yy49; + default: goto yy522; } -yy503: - yych = *++context.cursor; +yy522: +#line 9505 "/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 16173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy523: + yyaccept = 43; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -14838,34 +16238,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy504; + default: goto yy524; } -yy504: -#line 9488 "/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 14847 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy505: - yych = *++context.cursor; +yy524: +#line 9506 "/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 16247 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy525: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy571; + case 'S': goto yy589; default: goto yy49; } -yy506: - yych = *++context.cursor; +yy526: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy572; + case 'E': goto yy591; default: goto yy49; } -yy507: - yych = *++context.cursor; +yy527: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy573; + case 'T': goto yy593; default: goto yy49; } -yy508: - yych = *++context.cursor; +yy528: + yyaccept = 44; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -14929,59 +16333,52 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy509; - } -yy509: -#line 9494 "/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 14938 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy510: - yych = *++context.cursor; - switch (yych) { - case 'B': goto yy575; - default: goto yy49; - } -yy511: - yych = *++context.cursor; - switch (yych) { - case 'L': goto yy576; - default: goto yy49; + default: goto yy529; } -yy512: - yych = *++context.cursor; +yy529: +#line 9510 "/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 16342 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy530: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy578; - case 'i': goto yy579; + case 'C': goto yy594; default: goto yy49; } -yy513: - yych = *++context.cursor; +yy531: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy580; + case 't': goto yy595; default: goto yy49; } -yy514: - yych = *++context.cursor; +yy532: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy581; + case 'N': goto yy596; default: goto yy49; } -yy515: - yych = *++context.cursor; +yy533: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy582; + case 'U': goto yy597; default: goto yy49; } -yy516: - yych = *++context.cursor; +yy534: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy583; + case 'S': goto yy598; default: goto yy49; } -yy517: - yych = *++context.cursor; +yy535: + yyaccept = 45; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15045,16 +16442,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy518; + default: goto yy536; } -yy518: -#line 9505 "/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 15054 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy519: - yych = *++context.cursor; +yy536: +#line 9523 "/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 16451 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy537: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'L': goto yy599; + default: goto yy49; + } +yy538: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'e': goto yy601; + default: goto yy49; + } +yy539: + yyaccept = 46; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15118,34 +16530,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy520; + default: goto yy540; } -yy520: -#line 9506 "/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 15127 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy521: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy585; - default: goto yy49; - } -yy522: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy587; - default: goto yy49; - } -yy523: - yych = *++context.cursor; +yy540: +#line 9525 "/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 16539 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy541: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy589; + case 'F': goto yy602; default: goto yy49; } -yy524: - yych = *++context.cursor; +yy542: + yyaccept = 47; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15209,46 +16611,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy525; - } -yy525: -#line 9510 "/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 15218 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy526: - yych = *++context.cursor; - switch (yych) { - case 'C': goto yy590; - default: goto yy49; - } -yy527: - yych = *++context.cursor; - switch (yych) { - case 't': goto yy591; - default: goto yy49; - } -yy528: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy592; - default: goto yy49; - } -yy529: - yych = *++context.cursor; - switch (yych) { - case 'U': goto yy593; - default: goto yy49; + default: goto yy543; } -yy530: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy594; - default: goto yy49; - } -yy531: - yych = *++context.cursor; +yy543: +#line 9528 "/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 16620 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy544: + yyaccept = 48; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15312,28 +16685,80 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy532; + default: goto yy545; } -yy532: -#line 9523 "/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 15321 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy533: - yych = *++context.cursor; +yy545: +#line 9530 "/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 16694 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy546: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy595; + case 'l': goto yy603; default: goto yy49; } -yy534: - yych = *++context.cursor; +yy547: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy597; + case 'E': goto yy604; default: goto yy49; } -yy535: - yych = *++context.cursor; +yy548: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy605; + default: goto yy49; + } +yy549: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy607; + default: goto yy49; + } +yy550: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'n': goto yy609; + default: goto yy49; + } +yy551: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy610; + default: goto yy49; + } +yy552: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy611; + default: goto yy49; + } +yy553: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy612; + default: goto yy49; + } +yy554: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'A': goto yy613; + default: goto yy49; + } +yy555: + yyaccept = 49; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15397,22 +16822,115 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy536; + default: goto yy556; } -yy536: -#line 9525 "/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 15406 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy537: - yych = *++context.cursor; +yy556: +#line 9551 "/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 16831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy557: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'i': goto yy614; + default: goto yy49; + } +yy558: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'a': goto yy615; + default: goto yy49; + } +yy559: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'x': goto yy616; + default: goto yy49; + } +yy560: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy617; + default: goto yy49; + } +yy561: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy618; + default: goto yy49; + } +yy562: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy619; + default: goto yy49; + } +yy563: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'C': goto yy620; + default: goto yy49; + } +yy564: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'g': goto yy622; + default: goto yy49; + } +yy565: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'R': goto yy624; + default: goto yy49; + } +yy566: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy626; + default: goto yy49; + } +yy567: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy628; + default: goto yy49; + } +yy568: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy629; + default: goto yy49; + } +yy569: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy630; + default: goto yy49; + } +yy570: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy598; + case 'O': goto yy632; default: goto yy49; } -yy538: - yych = *++context.cursor; +yy571: + yyaccept = 50; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15476,16 +16994,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy539; + default: goto yy572; } -yy539: -#line 9528 "/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 15485 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy540: - yych = *++context.cursor; +yy572: +#line 9486 "/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 17003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy573: + yyaccept = 51; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15549,70 +17068,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy541; - } -yy541: -#line 9530 "/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 15558 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy542: - yych = *++context.cursor; - switch (yych) { - case 'l': goto yy599; - default: goto yy49; - } -yy543: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy600; - default: goto yy49; - } -yy544: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy601; - default: goto yy49; - } -yy545: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy603; - default: goto yy49; - } -yy546: - yych = *++context.cursor; - switch (yych) { - case 'n': goto yy605; - default: goto yy49; - } -yy547: - yych = *++context.cursor; - switch (yych) { - case '-': goto yy606; - default: goto yy49; - } -yy548: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy607; - default: goto yy49; + default: goto yy574; } -yy549: - yych = *++context.cursor; +yy574: +#line 9487 "/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 17077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy575: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy608; + case '_': goto yy633; default: goto yy49; } -yy550: - yych = *++context.cursor; +yy576: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy609; + case 'E': goto yy634; default: goto yy49; } -yy551: - yych = *++context.cursor; +yy577: + yyaccept = 52; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15676,100 +17156,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy552; - } -yy552: -#line 9551 "/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 15685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy553: - yych = *++context.cursor; - switch (yych) { - case 'i': goto yy610; - default: goto yy49; - } -yy554: - yych = *++context.cursor; - switch (yych) { - case 'a': goto yy611; - default: goto yy49; - } -yy555: - yych = *++context.cursor; - switch (yych) { - case 'x': goto yy612; - default: goto yy49; - } -yy556: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy613; - default: goto yy49; - } -yy557: - yych = *++context.cursor; - switch (yych) { - case '-': goto yy614; - default: goto yy49; - } -yy558: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy615; - default: goto yy49; - } -yy559: - yych = *++context.cursor; - switch (yych) { - case 'C': goto yy616; - default: goto yy49; - } -yy560: - yych = *++context.cursor; - switch (yych) { - case 'g': goto yy618; - default: goto yy49; - } -yy561: - yych = *++context.cursor; - switch (yych) { - case 'R': goto yy620; - default: goto yy49; - } -yy562: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy622; - default: goto yy49; + default: goto yy578; } -yy563: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy624; - default: goto yy49; - } -yy564: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy625; - default: goto yy49; - } -yy565: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy626; - default: goto yy49; - } -yy566: - yych = *++context.cursor; +yy578: +#line 9493 "/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 17165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy579: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy628; + case 'I': goto yy635; default: goto yy49; } -yy567: - yych = *++context.cursor; +yy580: + yyaccept = 53; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15833,101 +17237,52 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy568; + default: goto yy581; } -yy568: -#line 9486 "/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 15842 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy569: - yych = *++context.cursor; +yy581: +#line 9496 "/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 17246 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy582: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy48; - default: goto yy570; + case 't': goto yy636; + default: goto yy49; } -yy570: -#line 9487 "/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 15915 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy571: - yych = *++context.cursor; +yy583: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '_': goto yy629; + case 'z': goto yy637; default: goto yy49; } -yy572: - yych = *++context.cursor; +yy584: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 't': goto yy638; + default: goto yy49; + } +yy585: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'g': goto yy639; + default: goto yy49; + } +yy586: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy630; + case 'E': goto yy641; default: goto yy49; } -yy573: - yych = *++context.cursor; +yy587: + yyaccept = 54; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -15991,22 +17346,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy574; - } -yy574: -#line 9493 "/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 16000 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy575: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy631; - default: goto yy49; + default: goto yy588; } -yy576: - yych = *++context.cursor; +yy588: +#line 9504 "/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 17355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy589: + yyaccept = 55; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -16070,46 +17420,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy577; - } -yy577: -#line 9496 "/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 16079 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy578: - yych = *++context.cursor; - switch (yych) { - case 't': goto yy632; - default: goto yy49; - } -yy579: - yych = *++context.cursor; - switch (yych) { - case 'z': goto yy633; - default: goto yy49; - } -yy580: - yych = *++context.cursor; - switch (yych) { - case 't': goto yy634; - default: goto yy49; - } -yy581: - yych = *++context.cursor; - switch (yych) { - case 'g': goto yy635; - default: goto yy49; - } -yy582: - yych = *++context.cursor; - switch (yych) { - case 'E': goto yy637; - default: goto yy49; + default: goto yy590; } -yy583: - yych = *++context.cursor; +yy590: +#line 9507 "/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 17429 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy591: + yyaccept = 56; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -16173,16 +17494,59 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy584; + default: goto yy592; } -yy584: -#line 9504 "/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 16182 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy585: - yych = *++context.cursor; +yy592: +#line 9508 "/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 17503 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy593: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy642; + default: goto yy49; + } +yy594: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy643; + default: goto yy49; + } +yy595: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'r': goto yy644; + default: goto yy49; + } +yy596: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'F': goto yy645; + default: goto yy49; + } +yy597: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'M': goto yy646; + default: goto yy49; + } +yy598: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 't': goto yy647; + default: goto yy49; + } +yy599: + yyaccept = 57; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -16246,16 +17610,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy586; + default: goto yy600; } -yy586: -#line 9507 "/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 16255 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy587: - yych = *++context.cursor; +yy600: +#line 9524 "/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 17619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy601: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 's': goto yy648; + default: goto yy49; + } +yy602: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'I': goto yy649; + default: goto yy49; + } +yy603: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'e': goto yy650; + default: goto yy49; + } +yy604: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy651; + default: goto yy49; + } +yy605: + yyaccept = 58; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -16319,52 +17712,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy588; - } -yy588: -#line 9508 "/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 16328 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy589: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy638; - default: goto yy49; - } -yy590: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy639; - default: goto yy49; - } -yy591: - yych = *++context.cursor; - switch (yych) { - case 'r': goto yy640; - default: goto yy49; - } -yy592: - yych = *++context.cursor; - switch (yych) { - case 'F': goto yy641; - default: goto yy49; - } -yy593: - yych = *++context.cursor; - switch (yych) { - case 'M': goto yy642; - default: goto yy49; - } -yy594: - yych = *++context.cursor; - switch (yych) { - case 't': goto yy643; - default: goto yy49; + default: goto yy606; } -yy595: - yych = *++context.cursor; +yy606: +#line 9534 "/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 17721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy607: + yyaccept = 59; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -16428,40 +17786,22 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy596; - } -yy596: -#line 9524 "/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 16437 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy597: - yych = *++context.cursor; - switch (yych) { - case 's': goto yy644; - default: goto yy49; - } -yy598: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy645; - default: goto yy49; - } -yy599: - yych = *++context.cursor; - switch (yych) { - case 'e': goto yy646; - default: goto yy49; + default: goto yy608; } -yy600: - yych = *++context.cursor; +yy608: +#line 9536 "/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 17795 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy609: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy647; + case 'g': goto yy652; default: goto yy49; } -yy601: +yy610: yych = *++context.cursor; switch (yych) { - case '-': case '0': case '1': case '2': @@ -16475,7 +17815,6 @@ namespace yy { case 'A': case 'B': case 'C': - case 'D': case 'E': case 'F': case 'G': @@ -16525,16 +17864,61 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy602; + case 'D': goto yy654; + default: goto yy98; } -yy602: -#line 9534 "/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 16534 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy603: +yy611: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'N': goto yy655; + default: goto yy49; + } +yy612: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 't': goto yy656; + default: goto yy49; + } +yy613: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'L': goto yy657; + default: goto yy49; + } +yy614: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'n': goto yy659; + default: goto yy49; + } +yy615: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'l': goto yy660; + default: goto yy49; + } +yy616: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy661; + default: goto yy49; + } +yy617: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 't': goto yy662; + default: goto yy49; + } +yy618: yych = *++context.cursor; switch (yych) { - case '-': case '0': case '1': case '2': @@ -16563,7 +17947,6 @@ namespace yy { case 'P': case 'Q': case 'R': - case 'S': case 'T': case 'U': case 'V': @@ -16598,82 +17981,21 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy604; - } -yy604: -#line 9536 "/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 16607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy605: - yych = *++context.cursor; - switch (yych) { - case 'g': goto yy648; - default: goto yy49; - } -yy606: - yych = *++context.cursor; - switch (yych) { - case 'D': goto yy650; - default: goto yy49; - } -yy607: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy651; - default: goto yy49; - } -yy608: - yych = *++context.cursor; - switch (yych) { - case 't': goto yy652; - default: goto yy49; - } -yy609: - yych = *++context.cursor; - switch (yych) { - case 'L': goto yy653; - default: goto yy49; - } -yy610: - yych = *++context.cursor; - switch (yych) { - case 'n': goto yy655; - default: goto yy49; - } -yy611: - yych = *++context.cursor; - switch (yych) { - case 'l': goto yy656; - default: goto yy49; - } -yy612: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy657; - default: goto yy49; - } -yy613: - yych = *++context.cursor; - switch (yych) { - case 't': goto yy658; - default: goto yy49; - } -yy614: - yych = *++context.cursor; - switch (yych) { - case 'S': goto yy659; - default: goto yy49; + case 'S': goto yy663; + default: goto yy98; } -yy615: - yych = *++context.cursor; +yy619: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy660; + case 'O': goto yy664; default: goto yy49; } -yy616: - yych = *++context.cursor; +yy620: + yyaccept = 60; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -16737,16 +18059,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy617; + default: goto yy621; } -yy617: +yy621: #line 9469 "/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 16746 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy618: - yych = *++context.cursor; +#line 18068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy622: + yyaccept = 61; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -16810,16 +18133,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy619; + default: goto yy623; } -yy619: +yy623: #line 9472 "/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 16819 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy620: - yych = *++context.cursor; +#line 18142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy624: + yyaccept = 62; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -16883,16 +18207,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy621; + default: goto yy625; } -yy621: +yy625: #line 9475 "/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 16892 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy622: - yych = *++context.cursor; +#line 18216 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy626: + yyaccept = 63; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -16955,29 +18280,32 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'S': goto yy661; - default: goto yy623; + case 'S': goto yy665; + default: goto yy627; } -yy623: +yy627: #line 9478 "/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 16965 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy624: - yych = *++context.cursor; +#line 18290 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy628: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy663; + case 'E': goto yy667; default: goto yy49; } -yy625: - yych = *++context.cursor; +yy629: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy664; + case 'G': goto yy668; default: goto yy49; } -yy626: - yych = *++context.cursor; +yy630: + yyaccept = 64; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -17041,58 +18369,66 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy627; + default: goto yy631; } -yy627: +yy631: #line 9483 "/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 17050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy628: - yych = *++context.cursor; +#line 18378 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy632: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy666; + case 'N': goto yy670; default: goto yy49; } -yy629: - yych = *++context.cursor; +yy633: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy667; + case 'C': goto yy671; default: goto yy49; } -yy630: - yych = *++context.cursor; +yy634: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy668; + case 'D': goto yy672; default: goto yy49; } -yy631: - yych = *++context.cursor; +yy635: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy670; + case 'L': goto yy674; default: goto yy49; } -yy632: - yych = *++context.cursor; +yy636: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy671; + case 'r': goto yy675; default: goto yy49; } -yy633: - yych = *++context.cursor; +yy637: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy672; + case 'e': goto yy676; default: goto yy49; } -yy634: - yych = *++context.cursor; +yy638: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy673; + case 'r': goto yy677; default: goto yy49; } -yy635: - yych = *++context.cursor; +yy639: + yyaccept = 65; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -17156,82 +18492,155 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy636; + default: goto yy640; } -yy636: +yy640: #line 9502 "/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 17165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy637: - yych = *++context.cursor; +#line 18501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy641: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy674; + case 'R': goto yy678; default: goto yy49; } -yy638: - yych = *++context.cursor; +yy642: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy676; + case 'O': goto yy680; default: goto yy49; } -yy639: - yych = *++context.cursor; +yy643: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy677; + case 'I': goto yy681; default: goto yy49; } -yy640: - yych = *++context.cursor; +yy644: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy678; + case 'i': goto yy682; default: goto yy49; } -yy641: - yych = *++context.cursor; +yy645: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy679; + case 'I': goto yy683; default: goto yy49; } -yy642: - yych = *++context.cursor; +yy646: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'B': goto yy680; + case 'B': goto yy684; default: goto yy49; } -yy643: - yych = *++context.cursor; +yy647: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy681; + case 'r': goto yy685; default: goto yy49; } -yy644: - yych = *++context.cursor; +yy648: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'c': goto yy682; + case 'c': goto yy686; default: goto yy49; } -yy645: - yych = *++context.cursor; +yy649: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy683; + case 'N': goto yy687; default: goto yy49; } -yy646: - yych = *++context.cursor; +yy650: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy684; + case 'S': goto yy688; default: goto yy49; } -yy647: +yy651: yych = *++context.cursor; switch (yych) { - case 'O': goto yy685; - default: goto yy49; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + case 'O': goto yy689; + default: goto yy98; } -yy648: - yych = *++context.cursor; +yy652: + yyaccept = 66; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -17295,34 +18704,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy649; + default: goto yy653; } -yy649: +yy653: #line 9540 "/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 17304 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy650: - yych = *++context.cursor; +#line 18713 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy654: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy686; + case 'A': goto yy690; default: goto yy49; } -yy651: - yych = *++context.cursor; +yy655: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy687; + case 'T': goto yy691; default: goto yy49; } -yy652: - yych = *++context.cursor; +yy656: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy688; + case 'r': goto yy692; default: goto yy49; } -yy653: - yych = *++context.cursor; +yy657: + yyaccept = 67; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -17386,52 +18799,59 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy654; + default: goto yy658; } -yy654: +yy658: #line 9549 "/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 17395 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy655: - yych = *++context.cursor; +#line 18808 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy659: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy689; + case 'g': goto yy693; default: goto yy49; } -yy656: - yych = *++context.cursor; +yy660: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy691; + case 'S': goto yy695; default: goto yy49; } -yy657: - yych = *++context.cursor; +yy661: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy692; + case 't': goto yy696; default: goto yy49; } -yy658: - yych = *++context.cursor; +yy662: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy693; + case 'r': goto yy697; default: goto yy49; } -yy659: - yych = *++context.cursor; +yy663: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy694; + case 'Y': goto yy698; default: goto yy49; } -yy660: - yych = *++context.cursor; +yy664: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy695; + case 'N': goto yy699; default: goto yy49; } -yy661: - yych = *++context.cursor; +yy665: + yyaccept = 68; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -17495,22 +18915,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy662; + default: goto yy666; } -yy662: +yy666: #line 9479 "/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 17504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy663: - yych = *++context.cursor; +#line 18924 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy667: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy697; + case 'D': goto yy701; default: goto yy49; } -yy664: - yych = *++context.cursor; +yy668: + yyaccept = 69; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -17574,28 +18996,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy665; + default: goto yy669; } -yy665: +yy669: #line 9481 "/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 17583 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy666: - yych = *++context.cursor; +#line 19005 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy670: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy699; + case 'S': goto yy703; default: goto yy49; } -yy667: - yych = *++context.cursor; +yy671: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy701; + case 'O': goto yy705; default: goto yy49; } -yy668: - yych = *++context.cursor; +yy672: + yyaccept = 70; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -17659,40 +19084,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy669; + default: goto yy673; } -yy669: +yy673: #line 9491 "/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 17668 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy670: - yych = *++context.cursor; +#line 19093 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy674: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy702; + case 'I': goto yy706; default: goto yy49; } -yy671: - yych = *++context.cursor; +yy675: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy703; + case 'i': goto yy707; default: goto yy49; } -yy672: - yych = *++context.cursor; +yy676: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'd': goto yy704; + case 'd': goto yy708; default: goto yy49; } -yy673: - yych = *++context.cursor; +yy677: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy705; + case 'i': goto yy709; default: goto yy49; } -yy674: - yych = *++context.cursor; +yy678: + yyaccept = 71; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -17756,94 +19186,108 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy675; + default: goto yy679; } -yy675: +yy679: #line 9503 "/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 17765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy676: - yych = *++context.cursor; +#line 19195 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy680: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy706; + case 'N': goto yy710; default: goto yy49; } -yy677: - yych = *++context.cursor; +yy681: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy707; + case 'O': goto yy711; default: goto yy49; } -yy678: - yych = *++context.cursor; +yy682: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy708; + case 'n': goto yy712; default: goto yy49; } -yy679: - yych = *++context.cursor; +yy683: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy709; + case 'N': goto yy713; default: goto yy49; } -yy680: - yych = *++context.cursor; +yy684: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy710; + case 'E': goto yy714; default: goto yy49; } -yy681: - yych = *++context.cursor; +yy685: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy711; + case 'i': goto yy715; default: goto yy49; } -yy682: - yych = *++context.cursor; +yy686: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy712; + case 'r': goto yy716; default: goto yy49; } -yy683: - yych = *++context.cursor; +yy687: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy713; + case 'I': goto yy717; default: goto yy49; } -yy684: - yych = *++context.cursor; +yy688: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy714; + case 't': goto yy718; default: goto yy49; } -yy685: - yych = *++context.cursor; +yy689: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy715; + case 'I': goto yy719; default: goto yy49; } -yy686: - yych = *++context.cursor; +yy690: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy716; + case 'Y': goto yy720; default: goto yy49; } -yy687: - yych = *++context.cursor; +yy691: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy718; + case 'I': goto yy722; default: goto yy49; } -yy688: - yych = *++context.cursor; +yy692: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy719; + case 'i': goto yy723; default: goto yy49; } -yy689: - yych = *++context.cursor; +yy693: + yyaccept = 72; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -17907,40 +19351,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy690; + default: goto yy694; } -yy690: +yy694: #line 9552 "/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 17916 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy691: - yych = *++context.cursor; +#line 19360 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy695: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy720; + case 't': goto yy724; default: goto yy49; } -yy692: - yych = *++context.cursor; +yy696: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy721; + case 'r': goto yy725; default: goto yy49; } -yy693: - yych = *++context.cursor; +yy697: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy722; + case 'i': goto yy726; default: goto yy49; } -yy694: - yych = *++context.cursor; +yy698: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy723; + case 'N': goto yy727; default: goto yy49; } -yy695: - yych = *++context.cursor; +yy699: + yyaccept = 73; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18004,16 +19453,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy696; + default: goto yy700; } -yy696: +yy700: #line 9468 "/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 18013 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy697: - yych = *++context.cursor; +#line 19462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy701: + yyaccept = 74; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18077,16 +19527,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy698; + default: goto yy702; } -yy698: +yy702: #line 9480 "/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 18086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy699: - yych = *++context.cursor; +#line 19536 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy703: + yyaccept = 75; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18148,108 +19599,124 @@ namespace yy { case 'v': case 'w': case 'x': - case 'y': - case 'z': goto yy48; - default: goto yy700; - } -yy700: -#line 9485 "/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 18159 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy701: - yych = *++context.cursor; - switch (yych) { - case 'N': goto yy724; - default: goto yy49; - } -yy702: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy725; - default: goto yy49; - } -yy703: - yych = *++context.cursor; - switch (yych) { - case 'n': goto yy726; - default: goto yy49; + case 'y': + case 'z': goto yy48; + default: goto yy704; } yy704: - yych = *++context.cursor; - switch (yych) { - case 'T': goto yy727; - default: goto yy49; - } +#line 9485 "/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 19610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy705: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy728; + case 'N': goto yy728; default: goto yy49; } yy706: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy729; + case 'T': goto yy729; default: goto yy49; } yy707: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy731; + case 'n': goto yy730; default: goto yy49; } yy708: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy733; + case 'T': goto yy731; default: goto yy49; } yy709: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy735; + case 'n': goto yy732; default: goto yy49; } yy710: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy736; + case 'S': goto yy733; default: goto yy49; } yy711: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy738; + case 'N': goto yy735; default: goto yy49; } yy712: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy739; + case 'g': goto yy737; default: goto yy49; } yy713: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy740; + case 'I': goto yy739; default: goto yy49; } yy714: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy741; + case 'R': goto yy740; default: goto yy49; } yy715: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy742; + case 'n': goto yy742; default: goto yy49; } yy716: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'i': goto yy743; + default: goto yy49; + } +yy717: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy744; + default: goto yy49; + } +yy718: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'r': goto yy745; + default: goto yy49; + } +yy719: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'D': goto yy746; + default: goto yy49; + } +yy720: + yyaccept = 76; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18313,82 +19780,94 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy717; + default: goto yy721; } -yy717: +yy721: #line 9544 "/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 18322 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy718: - yych = *++context.cursor; +#line 19789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy722: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy744; + case 'F': goto yy748; default: goto yy49; } -yy719: - yych = *++context.cursor; +yy723: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy745; + case 'n': goto yy749; default: goto yy49; } -yy720: - yych = *++context.cursor; +yy724: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy746; + case 'r': goto yy750; default: goto yy49; } -yy721: - yych = *++context.cursor; +yy725: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy747; + case 'i': goto yy751; default: goto yy49; } -yy722: - yych = *++context.cursor; +yy726: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy748; + case 'n': goto yy752; default: goto yy49; } -yy723: - yych = *++context.cursor; +yy727: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy749; + case 'T': goto yy753; default: goto yy49; } -yy724: - yych = *++context.cursor; +yy728: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy750; + case 'T': goto yy754; default: goto yy49; } -yy725: - yych = *++context.cursor; +yy729: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy751; + case 'Y': goto yy755; default: goto yy49; } -yy726: - yych = *++context.cursor; +yy730: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy753; + case 'g': goto yy757; default: goto yy49; } -yy727: - yych = *++context.cursor; +yy731: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy755; + case 'i': goto yy759; default: goto yy49; } -yy728: - yych = *++context.cursor; +yy732: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy756; + case 'g': goto yy760; default: goto yy49; } -yy729: - yych = *++context.cursor; +yy733: + yyaccept = 77; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18452,16 +19931,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy730; + default: goto yy734; } -yy730: +yy734: #line 9509 "/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 18461 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy731: - yych = *++context.cursor; +#line 19940 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy735: + yyaccept = 78; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18525,16 +20005,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy732; + default: goto yy736; } -yy732: +yy736: #line 9511 "/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 18534 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy733: - yych = *++context.cursor; +#line 20014 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy737: + yyaccept = 79; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18598,22 +20079,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy734; + default: goto yy738; } -yy734: +yy738: #line 9512 "/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 18607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy735: - yych = *++context.cursor; +#line 20088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy739: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy758; + case 'T': goto yy762; default: goto yy49; } -yy736: - yych = *++context.cursor; +yy740: + yyaccept = 80; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18677,40 +20160,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy737; + default: goto yy741; } -yy737: +yy741: #line 9516 "/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 18686 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy738: - yych = *++context.cursor; +#line 20169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy742: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy759; + case 'g': goto yy763; default: goto yy49; } -yy739: - yych = *++context.cursor; +yy743: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'p': goto yy761; + case 'p': goto yy765; default: goto yy49; } -yy740: - yych = *++context.cursor; +yy744: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy762; + case 'Y': goto yy766; default: goto yy49; } -yy741: - yych = *++context.cursor; +yy745: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy764; + case 'i': goto yy768; default: goto yy49; } -yy742: - yych = *++context.cursor; +yy746: + yyaccept = 81; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy765; + case '-': goto yy769; case '0': case '1': case '2': @@ -18774,58 +20262,140 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy743; + default: goto yy747; } -yy743: +yy747: #line 9532 "/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 18783 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy744: - yych = *++context.cursor; +#line 20271 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy748: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy766; + case 'I': goto yy770; default: goto yy49; } -yy745: - yych = *++context.cursor; +yy749: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy767; + case 'g': goto yy771; default: goto yy49; } -yy746: - yych = *++context.cursor; +yy750: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy769; + case 'i': goto yy773; default: goto yy49; } -yy747: - yych = *++context.cursor; +yy751: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy770; + case 'n': goto yy774; default: goto yy49; } -yy748: - yych = *++context.cursor; +yy752: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy771; + case 'g': goto yy775; default: goto yy49; } -yy749: - yych = *++context.cursor; +yy753: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy773; + case 'A': goto yy777; default: goto yy49; } -yy750: - yych = *++context.cursor; +yy754: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy774; + case 'R': goto yy778; default: goto yy49; } -yy751: - yych = *++context.cursor; +yy755: + yyaccept = 82; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case '-': goto yy100; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy48; + default: goto yy756; + } +yy756: +#line 9495 "/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 20394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy757: + yyaccept = 83; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18889,16 +20459,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy752; + default: goto yy758; } -yy752: -#line 9495 "/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 18898 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy753: - yych = *++context.cursor; +yy758: +#line 9500 "/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 20468 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy759: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'm': goto yy779; + default: goto yy49; + } +yy760: + yyaccept = 84; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -18962,22 +20540,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy754; + default: goto yy761; } -yy754: -#line 9500 "/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 18971 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy755: - yych = *++context.cursor; +yy761: +#line 9501 "/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 20549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy762: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'm': goto yy775; + case 'Y': goto yy780; default: goto yy49; } -yy756: - yych = *++context.cursor; +yy763: + yyaccept = 85; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19041,22 +20621,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy757; + default: goto yy764; } -yy757: -#line 9501 "/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 19050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy758: - yych = *++context.cursor; +yy764: +#line 9518 "/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 20630 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy765: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy776; + case 't': goto yy782; default: goto yy49; } -yy759: - yych = *++context.cursor; +yy766: + yyaccept = 86; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19120,22 +20702,22 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy760; + default: goto yy767; } -yy760: -#line 9518 "/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 19129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy761: - yych = *++context.cursor; +yy767: +#line 9527 "/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 20711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy768: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy778; + case 'n': goto yy783; default: goto yy49; } -yy762: +yy769: yych = *++context.cursor; switch (yych) { - case '-': case '0': case '1': case '2': @@ -19154,7 +20736,6 @@ namespace yy { case 'F': case 'G': case 'H': - case 'I': case 'J': case 'K': case 'L': @@ -19199,34 +20780,21 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy763; - } -yy763: -#line 9527 "/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 19208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy764: - yych = *++context.cursor; - switch (yych) { - case 'n': goto yy779; - default: goto yy49; - } -yy765: - yych = *++context.cursor; - switch (yych) { - case 'I': goto yy780; - default: goto yy49; + case 'I': goto yy784; + default: goto yy98; } -yy766: - yych = *++context.cursor; +yy770: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy781; + case 'E': goto yy785; default: goto yy49; } -yy767: - yych = *++context.cursor; +yy771: + yyaccept = 87; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19290,28 +20858,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy768; + default: goto yy772; } -yy768: +yy772: #line 9542 "/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 19299 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy769: - yych = *++context.cursor; +#line 20867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy773: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy782; + case 'n': goto yy786; default: goto yy49; } -yy770: - yych = *++context.cursor; +yy774: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy783; + case 'g': goto yy787; default: goto yy49; } -yy771: - yych = *++context.cursor; +yy775: + yyaccept = 88; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19375,34 +20946,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy772; + default: goto yy776; } -yy772: +yy776: #line 9554 "/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 19384 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy773: - yych = *++context.cursor; +#line 20955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy777: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'X': goto yy785; + case 'X': goto yy789; default: goto yy49; } -yy774: - yych = *++context.cursor; +yy778: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy787; + case 'O': goto yy791; default: goto yy49; } -yy775: - yych = *++context.cursor; +yy779: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy788; + case 'e': goto yy792; default: goto yy49; } -yy776: - yych = *++context.cursor; +yy780: + yyaccept = 89; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19466,46 +21041,52 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy777; + default: goto yy781; } -yy777: +yy781: #line 9515 "/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 19475 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy778: - yych = *++context.cursor; +#line 21050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy782: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'o': goto yy790; + case 'o': goto yy794; default: goto yy49; } -yy779: - yych = *++context.cursor; +yy783: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy791; + case 'g': goto yy795; default: goto yy49; } -yy780: - yych = *++context.cursor; +yy784: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy793; + case 'R': goto yy797; default: goto yy49; } -yy781: - yych = *++context.cursor; +yy785: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy794; + case 'R': goto yy798; default: goto yy49; } -yy782: - yych = *++context.cursor; +yy786: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy796; + case 'g': goto yy800; default: goto yy49; } -yy783: - yych = *++context.cursor; +yy787: + yyaccept = 90; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19569,16 +21150,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy784; + default: goto yy788; } -yy784: +yy788: #line 9553 "/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 19578 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy785: - yych = *++context.cursor; +#line 21159 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy789: + yyaccept = 91; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19642,22 +21224,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy786; + default: goto yy790; } -yy786: +yy790: #line 9465 "/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 19651 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy787: - yych = *++context.cursor; +#line 21233 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy791: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy798; + case 'L': goto yy802; default: goto yy49; } -yy788: - yych = *++context.cursor; +yy792: + yyaccept = 92; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19721,22 +21305,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy789; + default: goto yy793; } -yy789: +yy793: #line 9499 "/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 19730 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy790: - yych = *++context.cursor; +#line 21314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy794: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy800; + case 'r': goto yy804; default: goto yy49; } -yy791: - yych = *++context.cursor; +yy795: + yyaccept = 93; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19800,22 +21386,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy792; + default: goto yy796; } -yy792: +yy796: #line 9529 "/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 19809 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy793: - yych = *++context.cursor; +#line 21395 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy797: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy802; + case 'I': goto yy806; default: goto yy49; } -yy794: - yych = *++context.cursor; +yy798: + yyaccept = 94; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19879,16 +21467,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy795; + default: goto yy799; } -yy795: +yy799: #line 9546 "/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 19888 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy796: - yych = *++context.cursor; +#line 21476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy800: + yyaccept = 95; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -19952,16 +21541,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy797; + default: goto yy801; } -yy797: +yy801: #line 9550 "/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 19961 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy798: - yych = *++context.cursor; +#line 21550 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy802: + yyaccept = 96; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -20025,16 +21615,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy799; + default: goto yy803; } -yy799: +yy803: #line 9489 "/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 20034 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy800: - yych = *++context.cursor; +#line 21624 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy804: + yyaccept = 97; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -20098,16 +21689,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy801; + default: goto yy805; } -yy801: +yy805: #line 9520 "/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 20107 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy802: - yych = *++context.cursor; +#line 21698 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy806: + yyaccept = 98; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': + case '-': goto yy100; case '0': case '1': case '2': @@ -20171,12 +21763,12 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy803; + default: goto yy807; } -yy803: +yy807: #line 9533 "/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 20180 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21772 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" } #line 9607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" diff --git a/testfiles/simple5.asn b/testfiles/simple5.asn index caf83d98..f66b04eb 100644 --- a/testfiles/simple5.asn +++ b/testfiles/simple5.asn @@ -27,4 +27,4 @@ Child ::= SEQUENCE { ... } -END +END-- Comment at end From 41ee0677c26f013286460502f85b8775add9aea8 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 2 Jun 2019 12:18:16 +0100 Subject: [PATCH 16/31] Split compiler includes into .cpp and .hpp pairs --- include/fast_ber/ber_types/Real.hpp | 2 +- include/fast_ber/compiler/CompilerTypes.hpp | 236 +-------- include/fast_ber/compiler/CppGeneration.hpp | 61 +-- include/fast_ber/compiler/Dependencies.hpp | 134 +----- include/fast_ber/compiler/Identifier.hpp | 238 ++-------- include/fast_ber/compiler/IdentifierFwd.hpp | 39 -- include/fast_ber/compiler/ObjectClass.hpp | 328 +------------ .../fast_ber/compiler/ReorderAssignments.hpp | 439 +---------------- include/fast_ber/compiler/ResolveType.hpp | 200 +------- include/fast_ber/compiler/ResolveTypeFwd.hpp | 29 -- include/fast_ber/compiler/TypeAsString.hpp | 260 ---------- src/compiler/CompilerTypes.cpp | 216 +++++++++ src/compiler/CppGeneration.cpp | 60 +++ src/compiler/Dependencies.cpp | 133 ++++++ src/compiler/Identifier.cpp | 201 ++++++++ src/compiler/ObjectClass.cpp | 318 +++++++++++++ src/compiler/ReorderAssignments.cpp | 449 ++++++++++++++++++ src/compiler/ResolveType.cpp | 176 +++++++ src/compiler/TypeAsString.cpp | 260 ++++++++++ 19 files changed, 1925 insertions(+), 1854 deletions(-) delete mode 100644 include/fast_ber/compiler/IdentifierFwd.hpp delete mode 100644 include/fast_ber/compiler/ResolveTypeFwd.hpp create mode 100644 src/compiler/CompilerTypes.cpp create mode 100644 src/compiler/CppGeneration.cpp create mode 100644 src/compiler/Dependencies.cpp create mode 100644 src/compiler/Identifier.cpp create mode 100644 src/compiler/ObjectClass.cpp create mode 100644 src/compiler/ReorderAssignments.cpp create mode 100644 src/compiler/ResolveType.cpp create mode 100644 src/compiler/TypeAsString.cpp diff --git a/include/fast_ber/ber_types/Real.hpp b/include/fast_ber/ber_types/Real.hpp index 1a5ad5aa..41ef1aa7 100644 --- a/include/fast_ber/ber_types/Real.hpp +++ b/include/fast_ber/ber_types/Real.hpp @@ -15,7 +15,7 @@ class Real explicit Real(absl::Span ber_data) noexcept { assign_ber(ber_data); } - // Implicit conversion to int + // Implicit conversion to double operator double() const noexcept { return value(); } double value() const noexcept; diff --git a/include/fast_ber/compiler/CompilerTypes.hpp b/include/fast_ber/compiler/CompilerTypes.hpp index 3047641c..4a7248e7 100644 --- a/include/fast_ber/compiler/CompilerTypes.hpp +++ b/include/fast_ber/compiler/CompilerTypes.hpp @@ -18,119 +18,6 @@ #include #include -static const std::unordered_set reserved_keywords = {"alignas", - "alignof", - "and", - "and_eq", - "asm", - "atomic_cancel", - "atomic_commit", - "atomic_noexcept", - "auto", - "bitand", - "bitor", - "bool", - "break", - "case", - "catch", - "char", - "char8_t", - "char16_t", - "char32_t", - "class", - "compl", - "concept", - "const", - "consteval", - "constexpr", - "const_cast", - "continue", - "co_await", - "co_return", - "co_yield", - "decltype", - "default", - "delete", - "do", - "double", - "dynamic_cast", - "else", - "enum", - "explicit", - "export", - "extern", - "false", - "float", - "for", - "friend", - "goto", - "if", - "import", - "inline", - "int", - "long", - "module", - "mutable", - "namespace", - "new", - "noexcept", - "not", - "not_eq", - "nullptr", - "operator", - "or", - "or_eq", - "private", - "protected", - "public", - "reflexpr", - "register", - "reinterpret_cast", - "requires", - "return", - "short", - "signed", - "sizeof", - "static", - "static_assert", - "static_cast", - "struct", - "switch", - "synchronized", - "template", - "this", - "thread_local", - "throw", - "true", - "try", - "typedef", - "typeid", - "typename", - "union", - "unsigned", - "using", - "virtual", - "void", - "volatile", - "wchar_t", - "while", - "xor", - "xor_eq"}; - -// Switch asn '-' for C++ '_' -// Rename any names which are reserved in C++ -std::string santize_name(const std::string& name) -{ - auto copy = name; - std::replace(copy.begin(), copy.end(), '-', '_'); - - if (reserved_keywords.count(copy) > 0) - { - return copy + "_"; - } - return copy; -} - enum class TaggingMode { explicit_, @@ -447,23 +334,6 @@ struct Asn1Tree std::vector modules; }; -std::string to_string(Class class_) -{ - switch (class_) - { - case Class::universal: - return "universal"; - case Class::application: - return "application"; - case Class::context_specific: - return "context_specific"; - case Class::private_: - return "private_"; - default: - return ""; - } -} - struct TaggingInfo { std::string tag; @@ -517,91 +387,27 @@ struct ObjectIdComponents std::vector components; }; -std::string make_type_optional(const std::string& type) { return "Optional<" + type + ">"; } +std::string to_string(Class class_); -bool is_bit_string(const Type& type) -{ - return absl::holds_alternative(type) && - absl::holds_alternative(absl::get(type)); -} - -bool is_set(const Type& type) -{ - return absl::holds_alternative(type) && absl::holds_alternative(absl::get(type)); -} - -bool is_sequence(const Type& type) -{ - return absl::holds_alternative(type) && - absl::holds_alternative(absl::get(type)); -} - -bool is_set_of(const Type& type) -{ - return absl::holds_alternative(type) && - absl::holds_alternative(absl::get(type)); -} - -bool is_sequence_of(const Type& type) -{ - return absl::holds_alternative(type) && - absl::holds_alternative(absl::get(type)); -} - -bool is_enumerated(const Type& type) -{ - return absl::holds_alternative(type) && - absl::holds_alternative(absl::get(type)); -} - -bool is_choice(const Type& type) -{ - return absl::holds_alternative(type) && - absl::holds_alternative(absl::get(type)); -} - -bool is_prefixed(const Type& type) -{ - return absl::holds_alternative(type) && - absl::holds_alternative(absl::get(type)); -} - -bool is_integer(const Type& type) -{ - return absl::holds_alternative(type) && - absl::holds_alternative(absl::get(type)); -} - -bool is_oid(const Type& type) -{ - return absl::holds_alternative(type) && - absl::holds_alternative(absl::get(type)); -} - -bool is_defined(const Type& type) { return absl::holds_alternative(type); } - -std::string create_template_definition(const std::vector& parameters) -{ - std::set param_set; - for (const Parameter& parameter : parameters) - { - param_set.insert(parameter.reference); - } - - return create_template_definition(param_set); -} - -std::string create_template_arguments(const std::vector& parameters) -{ - std::set param_set; - for (const Parameter& parameter : parameters) - { - param_set.insert(parameter.reference); - } - - return create_template_arguments(param_set); -} - -int unnamed_definition_reference_num = 0; +// Switch asn '-' for C++ '_' +// Rename any names which are reserved in C++ +std::string santize_name(const std::string& name); + +std::string make_type_optional(const std::string& type); + +bool is_bit_string(const Type& type); +bool is_set(const Type& type); +bool is_sequence(const Type& type); +bool is_set_of(const Type& type); +bool is_sequence_of(const Type& type); +bool is_enumerated(const Type& type); +bool is_choice(const Type& type); +bool is_prefixed(const Type& type); +bool is_integer(const Type& type); +bool is_oid(const Type& type); +bool is_defined(const Type& type); + +std::string create_template_definition(const std::vector& parameters); +std::string create_template_arguments(const std::vector& parameters); struct Context; diff --git a/include/fast_ber/compiler/CppGeneration.hpp b/include/fast_ber/compiler/CppGeneration.hpp index 1ec6379f..30cc85d8 100644 --- a/include/fast_ber/compiler/CppGeneration.hpp +++ b/include/fast_ber/compiler/CppGeneration.hpp @@ -1,66 +1,13 @@ #pragma once -#include "fast_ber/compiler/CompilerTypes.hpp" - #include #include #include -std::string create_include(const std::string& path) { return "#include \"" + path + "\"\n"; } - -std::string create_template_definition(const std::set& types) -{ - if (types.empty()) - { - return ""; - } - - std::string definition = "template <"; - bool is_first = true; - for (const std::string& type : types) - { - if (!is_first) - { - definition += ", "; - } - definition += "typename " + type; - is_first = false; - } - - definition += ">\n"; - return definition; -} - -std::string create_template_arguments(const std::set& types) -{ - if (types.empty()) - { - return ""; - } - - std::string arguments = "<"; - bool is_first = true; - for (const std::string& type : types) - { - if (!is_first) - { - arguments += ", "; - } - arguments += type; - is_first = false; - } - - arguments += ">"; - return arguments; -} +std::string create_include(const std::string& path); -std::string add_namespace(const std::string& name, const std::string& enclosed) -{ - std::string output; +std::string create_template_definition(const std::set& types); - output += "namespace " + name + " {\n"; - output += enclosed; - output += "} // End namespace " + name + "\n"; +std::string create_template_arguments(const std::set& types); - return output; -} +std::string add_namespace(const std::string& name, const std::string& enclosed); diff --git a/include/fast_ber/compiler/Dependencies.hpp b/include/fast_ber/compiler/Dependencies.hpp index fe3498c2..7dc88f9b 100644 --- a/include/fast_ber/compiler/Dependencies.hpp +++ b/include/fast_ber/compiler/Dependencies.hpp @@ -33,139 +33,9 @@ std::vector depends_on(const PrefixedType&); std::vector depends_on(const TimeType&); std::vector depends_on(const TimeOfDayType&); std::vector depends_on(const UTCTimeType&); - std::vector depends_on(const DefinedType&); std::vector depends_on(const BuiltinType& type); std::vector depends_on(const Type& type); -std::vector depends_on(const BitStringType&) { return {}; } -std::vector depends_on(const BooleanType&) { return {}; } -std::vector depends_on(const CharacterStringType&) { return {}; } -std::vector depends_on(const ChoiceType choice) -{ - std::vector depends; - for (const auto& named_type : choice.choices) - { - const auto& additional = depends_on(named_type.type); - depends.insert(depends.end(), additional.begin(), additional.end()); - } - return depends; -} -std::vector depends_on(const AnyType&) { return {}; } -std::vector depends_on(const DateType&) { return {}; } -std::vector depends_on(const DateTimeType&) { return {}; } -std::vector depends_on(const DurationType&) { return {}; } -std::vector depends_on(const EmbeddedPDVType&) { return {}; } -std::vector depends_on(const EnumeratedType&) { return {}; } -std::vector depends_on(const ExternalType&) { return {}; } -std::vector depends_on(const GeneralizedTimeType&) { return {}; } -std::vector depends_on(const InstanceOfType&) { return {}; } -std::vector depends_on(const IntegerType&) { return {}; } -std::vector depends_on(const IRIType&) { return {}; } -std::vector depends_on(const NullType&) { return {}; } -std::vector depends_on(const ObjectClassFieldType&) { return {}; } -std::vector depends_on(const ObjectDescriptorType&) { return {}; } -std::vector depends_on(const ObjectIdentifierType&) { return {}; } -std::vector depends_on(const OctetStringType&) { return {}; } -std::vector depends_on(const RealType&) { return {}; } -std::vector depends_on(const RelativeIRIType&) { return {}; } -std::vector depends_on(const RelativeOIDType&) { return {}; } -std::vector depends_on(const SequenceType& sequence) -{ - std::vector depends; - for (const ComponentType& component : sequence.components) - { - const auto& additional = depends_on(component.named_type.type); - depends.insert(depends.end(), additional.begin(), additional.end()); - } - return depends; -} -std::vector depends_on(const SequenceOfType& sequence) -{ - if (sequence.has_name) - { - return depends_on(sequence.named_type->type); - } - else - { - return depends_on(*sequence.type); - }; -} -std::vector depends_on(const SetType& set) -{ - std::vector depends; - for (const ComponentType& component : set.components) - { - const auto& additional = depends_on(component.named_type.type); - depends.insert(depends.end(), additional.begin(), additional.end()); - } - return depends; -} -std::vector depends_on(const SetOfType& set) -{ - if (set.has_name) - { - return depends_on(set.named_type->type); - } - else - { - return {depends_on(*set.type)}; - }; -} -std::vector depends_on(const PrefixedType& prefixed_type) -{ - return depends_on(prefixed_type.tagged_type->type); -} -std::vector depends_on(const TimeType&) { return {}; } -std::vector depends_on(const TimeOfDayType&) { return {}; } -std::vector depends_on(const UTCTimeType&) { return {}; } -std::vector depends_on(const DefinedType& defined) -{ - std::vector depends{defined.type_reference}; - - for (const Type& paramater : defined.parameters) - { - const std::vector param_depends = depends_on(paramater); - depends.insert(depends.end(), param_depends.begin(), param_depends.end()); - } - - return depends; -} - -struct DependsOnHelper -{ - template - std::vector operator()(const T& t) - { - return depends_on(t); - } -}; -static DependsOnHelper depends_on_helper; -std::vector depends_on(const BuiltinType& type) { return absl::visit(depends_on_helper, type); } -std::vector depends_on(const Type& type) { return absl::visit(depends_on_helper, type); } -std::vector depends_on(const Value& value) -{ - if (absl::holds_alternative(value.value_selection)) - { - return {absl::get(value.value_selection).reference}; - }; - return {}; -} - -std::vector dependenies(const Type& type) { return depends_on(type); } -std::vector dependenies(const Assignment& assignment) -{ - if (absl::holds_alternative(assignment.specific)) - { - return depends_on(absl::get(assignment.specific).type); - } - else if (absl::holds_alternative(assignment.specific)) - { - auto type_depends = depends_on(absl::get(assignment.specific).type); - auto value_depends = depends_on(absl::get(assignment.specific).value); - - type_depends.insert(type_depends.end(), value_depends.begin(), value_depends.end()); - return type_depends; - } - return {}; -} +std::vector dependencies(const Type& type); +std::vector dependencies(const Assignment& assignment); diff --git a/include/fast_ber/compiler/Identifier.hpp b/include/fast_ber/compiler/Identifier.hpp index cf9a0183..ac35de00 100644 --- a/include/fast_ber/compiler/Identifier.hpp +++ b/include/fast_ber/compiler/Identifier.hpp @@ -1,203 +1,39 @@ #pragma once -#include "fast_ber/compiler/IdentifierFwd.hpp" - -TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const BitStringType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const BooleanType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const CharacterStringType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const ChoiceType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const DateType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const DateTimeType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const DurationType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const EmbeddedPDVType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const EnumeratedType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const ExternalType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const GeneralizedTimeType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const InstanceOfType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const IntegerType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const IRIType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const NullType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const ObjectClassFieldType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const ObjectDescriptorType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const ObjectIdentifierType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const OctetStringType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const RealType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const RelativeIRIType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const RelativeOIDType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const SequenceType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const SequenceOfType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const SetType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const SetOfType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const PrefixedType& prefixed, const Module& current_module, const Asn1Tree& tree) -{ - assert(prefixed.tagged_type); - return identifier(*prefixed.tagged_type, current_module, tree); -} -TaggingInfo identifier(const TaggedType& tagged_type, const Module& current_module, const Asn1Tree& tree) -{ - std::string tag = ""; - bool is_explicit = false; - if (tagged_type.tagging_mode == TaggingMode::explicit_) - { - is_explicit = true; - } - else if (tagged_type.tagging_mode == TaggingMode::implicit) - { - is_explicit = false; - } - else - { - is_explicit = (current_module.tagging_default == TaggingMode::explicit_ || - current_module.tagging_default == TaggingMode::automatic); - } - - if (is_explicit) - { - tag = "TaggedExplicitIdentifier"; - } - else - { - tag = "ImplicitIdentifier"; - } - return TaggingInfo{tag, false}; -} -TaggingInfo identifier(const TimeType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} -TaggingInfo identifier(const TimeOfDayType&, const Module&, const Asn1Tree&) -{ - return TaggingInfo{"ExplicitIdentifier", true}; -} - -struct IdentifierHelper -{ - template - TaggingInfo operator()(const T& t) const - { - return identifier(t, current_module, tree); - } - - const Module& current_module; - const Asn1Tree& tree; -}; - -std::string fully_tagged_type(const Type& type, const Module& current_module, const Asn1Tree& tree) -{ - const TaggingInfo& tagging_info = identifier(type, current_module, tree); - if (tagging_info.is_default_tagged) - { - return type_as_string(type, current_module, tree); - } - - return "TaggedType<" + type_as_string(type, current_module, tree) + ", " + tagging_info.tag + ">"; -} - -TaggingInfo identifier(const DefinedType& defined, const Module& current_module, const Asn1Tree&) -{ - const std::string& module_ref = - (defined.module_reference) ? *defined.module_reference : current_module.module_reference; - const std::string& type_string = - "decltype(identifier(static_cast<" + module_ref + "::" + defined.type_reference + "*>(nullptr)))"; - - return {type_string, true}; -} -TaggingInfo identifier(const BuiltinType& type, const Module& current_module, const Asn1Tree& tree) -{ - IdentifierHelper tag_helper{current_module, tree}; - return absl::visit(tag_helper, type); -} -TaggingInfo identifier(const Type& type, const Module& current_module, const Asn1Tree& tree) -{ - IdentifierHelper tag_helper{current_module, tree}; - return absl::visit(tag_helper, type); -} +#include "fast_ber/compiler/CompilerTypes.hpp" +#include "fast_ber/compiler/ResolveType.hpp" +#include "fast_ber/compiler/TypeAsString.hpp" + +TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BitStringType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BooleanType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const CharacterStringType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ChoiceType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DateType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DateTimeType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DurationType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const EmbeddedPDVType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const EnumeratedType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ExternalType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const InstanceOfType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const IntegerType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const IRIType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const NullType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ObjectClassFieldType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ObjectDescriptorType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const ObjectIdentifierType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const OctetStringType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const RealType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const RelativeIRIType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const RelativeOIDType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SequenceType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SequenceOfType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SetType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const SetOfType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const PrefixedType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const TaggedType& tagged_type, const Module&, const Asn1Tree&); +TaggingInfo identifier(const TimeType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const TimeOfDayType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const DefinedType&, const Module&, const Asn1Tree&); +TaggingInfo identifier(const BuiltinType& type, const Module&, const Asn1Tree&); +TaggingInfo identifier(const Type& type, const Module&, const Asn1Tree&); diff --git a/include/fast_ber/compiler/IdentifierFwd.hpp b/include/fast_ber/compiler/IdentifierFwd.hpp deleted file mode 100644 index ac35de00..00000000 --- a/include/fast_ber/compiler/IdentifierFwd.hpp +++ /dev/null @@ -1,39 +0,0 @@ -#pragma once - -#include "fast_ber/compiler/CompilerTypes.hpp" -#include "fast_ber/compiler/ResolveType.hpp" -#include "fast_ber/compiler/TypeAsString.hpp" - -TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const BitStringType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const BooleanType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const CharacterStringType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ChoiceType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const DateType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const DateTimeType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const DurationType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const EmbeddedPDVType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const EnumeratedType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ExternalType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const InstanceOfType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const IntegerType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const IRIType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const NullType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ObjectClassFieldType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ObjectDescriptorType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const ObjectIdentifierType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const OctetStringType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const RealType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const RelativeIRIType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const RelativeOIDType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const SequenceType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const SequenceOfType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const SetType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const SetOfType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const PrefixedType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const TaggedType& tagged_type, const Module&, const Asn1Tree&); -TaggingInfo identifier(const TimeType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const TimeOfDayType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const DefinedType&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const BuiltinType& type, const Module&, const Asn1Tree&); -TaggingInfo identifier(const Type& type, const Module&, const Asn1Tree&); diff --git a/include/fast_ber/compiler/ObjectClass.hpp b/include/fast_ber/compiler/ObjectClass.hpp index 7631a385..bdbc7757 100644 --- a/include/fast_ber/compiler/ObjectClass.hpp +++ b/include/fast_ber/compiler/ObjectClass.hpp @@ -1,325 +1,21 @@ #pragma once #include "fast_ber/compiler/CompilerTypes.hpp" -#include "fast_ber/compiler/ResolveTypeFwd.hpp" +void object_class_to_concrete(Asn1Tree& tree, Module& module, Type& type); +void object_class_to_concrete(Asn1Tree& tree, Module& module, ChoiceType& choice); +void object_class_to_concrete(Asn1Tree& tree, Module& module, SequenceType& sequence); +void object_class_to_concrete(Asn1Tree& tree, Module& module, SequenceOfType& sequence); +void object_class_to_concrete(Asn1Tree& tree, Module& module, SetType& set); +void object_class_to_concrete(Asn1Tree& tree, Module& module, SetOfType& set); +void object_class_to_concrete(Asn1Tree& tree, Module& module, PrefixedType& prefixed_type); +void object_class_to_concrete(Asn1Tree& tree, Module& module, BuiltinType& type); void object_class_to_concrete(Asn1Tree& tree, Module& module, Type& type); -void object_class_to_concrete(Asn1Tree& tree, Module& module, ChoiceType& choice) -{ - for (NamedType& named_type : choice.choices) - { - object_class_to_concrete(tree, module, named_type.type); - } -} -void object_class_to_concrete(Asn1Tree& tree, Module& module, SequenceType& sequence) -{ - for (ComponentType& component : sequence.components) - { - object_class_to_concrete(tree, module, component.named_type.type); - } -} -void object_class_to_concrete(Asn1Tree& tree, Module& module, SequenceOfType& sequence) -{ - Type& type = sequence.has_name ? sequence.named_type->type : *sequence.type; - object_class_to_concrete(tree, module, type); -} -void object_class_to_concrete(Asn1Tree& tree, Module& module, SetType& set) -{ - for (ComponentType& component : set.components) - { - object_class_to_concrete(tree, module, component.named_type.type); - } -} -void object_class_to_concrete(Asn1Tree& tree, Module& module, SetOfType& set) -{ - Type& type = set.has_name ? set.named_type->type : *set.type; - object_class_to_concrete(tree, module, type); -} -void object_class_to_concrete(Asn1Tree& tree, Module& module, PrefixedType& prefixed_type) -{ - object_class_to_concrete(tree, module, prefixed_type.tagged_type->type); -} - -void object_class_to_concrete(Asn1Tree& tree, Module& module, BuiltinType& type) -{ - if (absl::holds_alternative(type)) - { - object_class_to_concrete(tree, module, absl::get(type)); - } - else if (absl::holds_alternative(type)) - { - object_class_to_concrete(tree, module, absl::get(type)); - } - else if (absl::holds_alternative(type)) - { - object_class_to_concrete(tree, module, absl::get(type)); - } - else if (absl::holds_alternative(type)) - { - object_class_to_concrete(tree, module, absl::get(type)); - } - else if (absl::holds_alternative(type)) - { - object_class_to_concrete(tree, module, absl::get(type)); - } - else if (absl::holds_alternative(type)) - { - object_class_to_concrete(tree, module, absl::get(type)); - } -} - -Type create_concrete_type(Asn1Tree& tree, Module& module, ObjectClassFieldType& object_class_field) -{ - const Assignment& assigment = resolve(tree, module.module_reference, object_class_field.referenced_object_class); - if (!is_object_class(assigment)) - { - throw std::runtime_error("Referenced object is not an ObjectClass " + - object_class_field.referenced_object_class.type_reference); - } - - if (object_class_field.fieldnames.size() == 1) - { - for (const ClassField& field : object_class(assigment).fields) - { - if (field.name == object_class_field.fieldnames[0]) - { - if (absl::holds_alternative(field.field)) - { - return absl::get(field.field).type; - } - throw std::runtime_error("Referenced class field does not have a type: " + - object_class_field.referenced_object_class.type_reference + "." + - object_class_field.fieldnames[0]); - } - } - } - - throw std::runtime_error("Failed to parse object field reference " + - object_class_field.referenced_object_class.type_reference); -} - -void object_class_to_concrete(Asn1Tree& tree, Module& module, Type& type) -{ - if (absl::holds_alternative(type)) - { - if (absl::holds_alternative(absl::get(type))) - { - type = create_concrete_type(tree, module, absl::get(absl::get(type))); - } - else - { - object_class_to_concrete(tree, module, absl::get(type)); - } - } - else if (absl::holds_alternative(type)) - { - // Do nothing - } - else - { - throw std::runtime_error("Unhandled type!"); - } -} - -bool is_defined_object_class(const std::string& module_reference, const std::string& type_reference, - const std::set& object_class_names) -{ - return object_class_names.count(module_reference + "." + type_reference) > 0; -} - -bool is_defined_object_class(const Asn1Tree&, Module& module, const Type& type, - const std::set& object_class_names) -{ - if (is_defined(type)) - { - const DefinedType& defined = absl::get(type); - if (defined.module_reference) - { - return is_defined_object_class(*defined.module_reference, defined.type_reference, object_class_names); - } - return is_defined_object_class(module.module_reference, defined.type_reference, object_class_names); - } - return false; -} - -void remove_object_classes(Asn1Tree& tree, const std::set& object_class_names) -{ - for (Module& module : tree.modules) - { - module.assignments.erase( - std::remove_if( - module.assignments.begin(), module.assignments.end(), - [&](const Assignment& assignment) { - if (is_object_class(assignment)) - { - return true; - } - else if (is_type(assignment) && is_defined(type(assignment))) - { - return is_defined_object_class(tree, module, type(assignment), object_class_names); - } - else if (absl::holds_alternative(assignment.specific) && - absl::holds_alternative(absl::get(assignment.specific).type)) - { - const ValueAssignment& value_assign = absl::get(assignment.specific); - return is_defined_object_class(tree, module, value_assign.type, object_class_names); - } - - for (const Parameter& parameter : assignment.parameters) - { - if (parameter.governor) - { - if (is_defined_object_class(tree, module, *parameter.governor, object_class_names)) - { - return true; - } - } - } - - return false; - }), - module.assignments.end()); - } - - for (Module& module : tree.modules) - { - for (Import& import : module.imports) - { - import.imports.erase(std::remove_if(import.imports.begin(), import.imports.end(), - [&](const std::string& imported_name) { - return is_defined_object_class(import.module_reference, - imported_name, object_class_names); - }), - import.imports.end()); - } - } -} - -std::set get_object_class_names(const Asn1Tree& tree) -{ - std::set object_class_names; - - size_t old_number_of_names = 0; - do - { - old_number_of_names = object_class_names.size(); - for (const Module& module : tree.modules) - { - for (const Assignment& assignment : module.assignments) - { - if (is_type(assignment) || is_value(assignment)) - { - for (const Parameter& parameter : assignment.parameters) - { - if (parameter.governor) - { - if (is_defined(*parameter.governor)) - { - const DefinedType& defined = absl::get(*parameter.governor); - const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); - if (is_object_class(inner_assignment)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); - } - else if (is_defined_object_class(*defined.module_reference, defined.type_reference, - object_class_names)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); - } - } - } - } - } - if (is_type(assignment) && is_defined(type(assignment))) - { - const DefinedType& defined = absl::get(type(assignment)); - if (!is_a_parameter(defined.type_reference, assignment.parameters)) - { - const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); - if (is_object_class(inner_assignment)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); - } - else if (is_defined_object_class(module.module_reference, defined.type_reference, - object_class_names)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); - } - } - } - if (is_value(assignment) && is_defined(value(assignment).type)) - { - const DefinedType& defined = absl::get(value(assignment).type); - if (!is_a_parameter(defined.type_reference, assignment.parameters)) - { - const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); - if (is_object_class(inner_assignment)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); - } - else if (is_defined_object_class(module.module_reference, defined.type_reference, - object_class_names)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); - } - } - } - if (is_object_class(assignment)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); - } - } - } - - for (const Module& module : tree.modules) - { - for (const Import& import : module.imports) - { - for (const std::string& imported_name : import.imports) - { - if (is_defined_object_class(import.module_reference, imported_name, object_class_names)) - { - object_class_names.insert(module.module_reference + "." + imported_name); - } - } - } - } +Type create_concrete_type(Asn1Tree& tree, Module& module, ObjectClassFieldType& object_class_field); - for (auto s : object_class_names) - { - std::cout << "Object class names " << s << std::endl; - } - } while (object_class_names.size() > old_number_of_names); - return object_class_names; -} +void remove_object_classes(Asn1Tree& tree, const std::set& object_class_names); +std::set get_object_class_names(const Asn1Tree& tree); // Convert usage of object classes to standard ASN.1 types -void resolve_object_classes(Asn1Tree& tree) -{ - std::set object_class_names = get_object_class_names(tree); - - for (Module& module : tree.modules) - { - for (Assignment& assignment : module.assignments) - { - if (absl::holds_alternative(assignment.specific)) - { - bool skip = false; - for (const Parameter& parameter : assignment.parameters) - { - if (parameter.governor) - { - skip = true; - } - } - if (!skip) - { - object_class_to_concrete(tree, module, absl::get(assignment.specific).type); - } - } - } - } - - remove_object_classes(tree, object_class_names); -} +void resolve_object_classes(Asn1Tree& tree); diff --git a/include/fast_ber/compiler/ReorderAssignments.hpp b/include/fast_ber/compiler/ReorderAssignments.hpp index 91beca23..164f8f77 100644 --- a/include/fast_ber/compiler/ReorderAssignments.hpp +++ b/include/fast_ber/compiler/ReorderAssignments.hpp @@ -1,451 +1,32 @@ #pragma once -#include -#include -#include -#include -#include - #include "fast_ber/compiler/CompilerTypes.hpp" -#include "fast_ber/compiler/Dependencies.hpp" -#include "fast_ber/compiler/ResolveType.hpp" - -std::string to_string(const std::vector& assignments) -{ - std::string str; - for (const Assignment& assignment : assignments) - { - if (assignment.name.empty()) - { - str += "\n"; - } - else - { - str += assignment.name + '\n'; - } - } - return str; -} - -void check_duplicated_names(const std::vector& assignments, const std::string& module_name) -{ - std::unordered_set defined_names; - for (const Assignment& assignment : assignments) - { - if (defined_names.count(assignment.name) > 0) - { - throw std::runtime_error("Error: Duplicated name \"" + assignment.name + "\" in module \"" + module_name + - '\"'); - } - defined_names.insert(assignment.name); - } -} - -void resolve_components_of(Asn1Tree& tree) -{ - for (Module& module : tree.modules) - { - for (Assignment& assignemnt : module.assignments) - { - if (absl::holds_alternative(assignemnt.specific)) - { - TypeAssignment& type_assignment = absl::get(assignemnt.specific); - if (is_sequence(type_assignment.type)) - { - SequenceType& sequence = absl::get(absl::get(type_assignment.type)); - for (auto iter = sequence.components.begin(); iter != sequence.components.end(); iter++) - { - if (iter->components_of) - { - if (is_defined(*iter->components_of)) - { - const DefinedType& defined = absl::get(*iter->components_of); - const Type& inheretied = type(resolve(tree, module.module_reference, defined)); - if (is_sequence(inheretied)) - { - const SequenceType& inheretied_sequence = - absl::get(absl::get(inheretied)); - - const size_t offset = std::distance(sequence.components.begin(), iter); - sequence.components.insert(iter, inheretied_sequence.components.begin(), - inheretied_sequence.components.end()); - - iter = sequence.components.begin(); - std::advance(iter, offset); - std::advance(iter, inheretied_sequence.components.size()); - } - else if (is_set(inheretied)) - { - const SetType& inheretied_set = - absl::get(absl::get(inheretied)); - - const size_t offset = std::distance(sequence.components.begin(), iter); - sequence.components.insert(iter, inheretied_set.components.begin(), - inheretied_set.components.end()); - - iter = sequence.components.begin(); - std::advance(iter, offset); - std::advance(iter, inheretied_set.components.size()); - } - } - else if (is_sequence(*iter->components_of)) - { - const SequenceType& inheretied_sequence = - absl::get(absl::get(*iter->components_of)); - - const size_t offset = std::distance(sequence.components.begin(), iter); - sequence.components.insert(iter, inheretied_sequence.components.begin(), - inheretied_sequence.components.end()); - iter = sequence.components.begin(); - std::advance(iter, offset); - std::advance(iter, inheretied_sequence.components.size()); - } - else if (is_set(*iter->components_of)) - { - const SetType& inheretied_set = - absl::get(absl::get(*iter->components_of)); - - const size_t offset = std::distance(sequence.components.begin(), iter); - sequence.components.insert(iter, inheretied_set.components.begin(), - inheretied_set.components.end()); - - iter = sequence.components.begin(); - std::advance(iter, offset); - std::advance(iter, inheretied_set.components.size()); - } - else - { - throw std::runtime_error("Strange type when resolving SEQUENCE OF in type" + - assignemnt.name); - } - } - } - sequence.components.erase( - std::remove_if(sequence.components.begin(), sequence.components.end(), - [](ComponentType& component) { return component.components_of; }), - sequence.components.end()); - } - } - } - } -} +std::string to_string(const std::vector& assignments); +void check_duplicated_names(const std::vector& assignments, const std::string& module_name); +void resolve_components_of(Asn1Tree& tree); void resolve_dependencies(const std::unordered_map& assignment_infos, const std::string& name, std::unordered_set& assigned_names, std::unordered_set& visited_names, - std::vector& ordered_assignment_infos) -{ - const auto& assign_iter = assignment_infos.find(name); - if (assign_iter == assignment_infos.end()) - { - throw std::runtime_error("Reference to undefined type: " + name); - } - - if (assigned_names.count(name) == 1) - { - // Already assigned - return; - } - - if (visited_names.count(name) == 1) - { - throw std::runtime_error("Circular dependency when trying to resolve dependencies of " + name); - } - - visited_names.insert(name); - - const Assignment& assignment = assign_iter->second; - for (const std::string& dependency : assignment.depends_on) - { - resolve_dependencies(assignment_infos, dependency, assigned_names, visited_names, ordered_assignment_infos); - } - - ordered_assignment_infos.push_back(assignment); - assigned_names.insert(name); -} + std::vector& ordered_assignment_infos); // Reorder assignments, defining // Should be able to detect missing assignments and circular dependencies -std::vector reorder_assignments(std::vector& assignments, const std::vector& imports) -{ - std::unordered_map assignment_map; - assignment_map.reserve(assignments.size()); - for (Assignment& assignment : assignments) - { - assignment.depends_on = dependenies(assignment); - // Any parameterized references are already defined and do not need to be resolved, - // Therefore remove any names which are defined as parameters from dependancy list - assignment.depends_on.erase(std::remove_if(assignment.depends_on.begin(), assignment.depends_on.end(), - [&assignment](const std::string& dependancy) { - return is_a_parameter(dependancy, assignment.parameters); - }), - assignment.depends_on.end()); - - assignment_map[assignment.name] = assignment; - } - - std::unordered_set assigned_names; - std::unordered_set visited_names; +std::vector reorder_assignments(std::vector& assignments, const std::vector& imports); - for (const Import& import : imports) - { - for (const std::string& import_name : import.imports) - { - assignment_map[import_name] = Assignment{}; - assigned_names.insert(import_name); - } - } - - std::vector ordered_assignments; - ordered_assignments.reserve(assignments.size()); - - for (const std::pair& assignment : assignment_map) - { - resolve_dependencies(assignment_map, assignment.first, assigned_names, visited_names, ordered_assignments); - } - - if (assignments.size() != ordered_assignments.size()) - { - throw std::runtime_error("Failed to re-order assignments, Unordered assigments:\n" + to_string(assignments) + - " ordered assignments:\n" + to_string(ordered_assignments)); - } - return ordered_assignments; -} - -int unnamed_definition_num = 0; // Finds any sequence or set types nested within a type -void find_nested_structs(const Type& type, std::vector& nested_structs) -{ - if (is_set(type)) - { - for (const ComponentType& component : absl::get(absl::get(type)).components) - { - if (is_enumerated(component.named_type.type)) - { - nested_structs.push_back( - NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), component.named_type.type}); - } - else - { - find_nested_structs(component.named_type.type, nested_structs); - } - } - } - else if (is_sequence(type)) - { - for (const ComponentType& component : absl::get(absl::get(type)).components) - { - if (is_enumerated(component.named_type.type)) - { - nested_structs.push_back( - NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), component.named_type.type}); - } - else - { - find_nested_structs(component.named_type.type, nested_structs); - } - } - } - else if (is_set_of(type)) - { - const SetOfType& set_of = absl::get(absl::get(type)); - const Type& inner_type = set_of.has_name ? set_of.named_type->type : *set_of.type; - if (is_set(inner_type)) - { - nested_structs.push_back(NamedType{"UnnamedSet" + std::to_string(unnamed_definition_num++), inner_type}); - } - else if (is_sequence(inner_type)) - { - nested_structs.push_back( - NamedType{"UnnamedSequence" + std::to_string(unnamed_definition_num++), inner_type}); - } - else if (is_enumerated(inner_type)) - { - nested_structs.push_back(NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), inner_type}); - } - find_nested_structs(inner_type, nested_structs); - } - else if (is_sequence_of(type)) - { - const SequenceOfType& sequence_of = absl::get(absl::get(type)); - const Type& inner_type = sequence_of.has_name ? sequence_of.named_type->type : *sequence_of.type; - if (is_set(inner_type)) - { - nested_structs.push_back(NamedType{"UnnamedSet" + std::to_string(unnamed_definition_num++), inner_type}); - } - else if (is_sequence(inner_type)) - { - nested_structs.push_back( - NamedType{"UnnamedSequence" + std::to_string(unnamed_definition_num++), inner_type}); - } - else if (is_enumerated(inner_type)) - { - nested_structs.push_back(NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), inner_type}); - } - find_nested_structs(inner_type, nested_structs); - } - else if (is_choice(type)) - { - const ChoiceType& choice = absl::get(absl::get(type)); - for (const NamedType& choice_selection : choice.choices) - { - const Type& inner_type = choice_selection.type; - if (is_set(inner_type)) - { - nested_structs.push_back( - NamedType{"UnnamedSet" + std::to_string(unnamed_definition_num++), inner_type}); - } - else if (is_sequence(inner_type)) - { - nested_structs.push_back( - NamedType{"UnnamedSequence" + std::to_string(unnamed_definition_num++), inner_type}); - } - else if (is_enumerated(inner_type)) - { - nested_structs.push_back( - NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), inner_type}); - } - find_nested_structs(choice_selection.type, nested_structs); - } - } - else if (is_prefixed(type)) - { - const Type& inner_type = absl::get(absl::get(type)).tagged_type->type; - if (is_set(inner_type)) - { - nested_structs.push_back(NamedType{"UnnamedSet" + std::to_string(unnamed_definition_num++), inner_type}); - } - else if (is_sequence(inner_type)) - { - nested_structs.push_back( - NamedType{"UnnamedSequence" + std::to_string(unnamed_definition_num++), inner_type}); - } - else if (is_enumerated(inner_type)) - { - nested_structs.push_back(NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), inner_type}); - } - find_nested_structs(inner_type, nested_structs); - } -} +void find_nested_structs(const Type& type, std::vector& nested_structs); // Statements such as integer type definitions can introduce new statements, such as value assignments -// -std::vector split_definitions(const std::vector& assignments) -{ - return assignments; - std::vector split_assignments; - split_assignments.reserve(assignments.size()); - - for (const Assignment& assignment : assignments) - { - if (absl::holds_alternative(assignment.specific)) - { - const TypeAssignment& type_assign = absl::get(assignment.specific); - if (is_integer(type_assign.type)) - { - const IntegerType& integer = absl::get(absl::get(type_assign.type)); - for (const NamedNumber& named_number : integer.named_numbers) - { - split_assignments.push_back( - Assignment{named_number.name, - ValueAssignment{BuiltinType{IntegerType{}}, Value{named_number.number}}, - {}, - {}}); - } - } - } - split_assignments.push_back(assignment); - } - - return split_assignments; -} +std::vector split_definitions(const std::vector& assignments); // structs (Sequence and Sets) cannot be defined within other definitions in C++, due to this nested assignments are // split into top level assignment statements. Note - assignments are assumed to already have been ordered -std::vector split_nested_structures(const std::vector& assignments) -{ - std::vector split_assignments; - split_assignments.reserve(assignments.size()); - - for (const Assignment& assignment : assignments) - { - if (absl::holds_alternative(assignment.specific)) - { - std::vector nested_structs; - find_nested_structs(absl::get(assignment.specific).type, nested_structs); - - for (auto nested_iter = nested_structs.rbegin(); nested_iter != nested_structs.rend(); nested_iter++) - { - split_assignments.push_back(Assignment{nested_iter->name, TypeAssignment{nested_iter->type}, {}, {}}); - } - } - split_assignments.push_back(assignment); - } - - return split_assignments; -} +std::vector split_nested_structures(const std::vector& assignments); void resolve_module_dependencies(const std::unordered_map& module_map, const std::string& name, std::unordered_set& assigned_names, - std::unordered_set& visited_names, std::vector& ordered_modules) -{ - const auto& module_iter = module_map.find(name); - const Module& module = module_iter->second; - - if (module_iter == module_map.end()) - { - throw std::runtime_error("Reference to undefined module: " + name); - } - - if (assigned_names.count(name) == 1) - { - // Already assigned - return; - } - - if (visited_names.count(name) == 1) - { - std::cerr << "Warning: Circular dependency when trying to resolve dependencies of " << name << std::endl; - ordered_modules.push_back(module); - assigned_names.insert(name); - return; - } - - visited_names.insert(name); - - for (const Import& import : module.imports) - { - resolve_module_dependencies(module_map, import.module_reference, assigned_names, visited_names, - ordered_modules); - } - - ordered_modules.push_back(module); - assigned_names.insert(name); -} - -std::vector reorder_modules(const std::vector& modules) -{ - std::vector ordered_modules; - ordered_modules.reserve(modules.size()); - - std::unordered_map module_map; - for (const Module& module : modules) - { - module_map[module.module_reference] = module; - } - - std::unordered_set assigned_modules; - std::unordered_set visited_modules; + std::unordered_set& visited_names, std::vector& ordered_modules); - for (const Module& module : modules) - { - resolve_module_dependencies(module_map, module.module_reference, assigned_modules, visited_modules, - ordered_modules); - } - if (modules.size() != ordered_modules.size()) - { - throw std::runtime_error("Failed to re-order modules!"); - } - return ordered_modules; -} +std::vector reorder_modules(const std::vector& modules); diff --git a/include/fast_ber/compiler/ResolveType.hpp b/include/fast_ber/compiler/ResolveType.hpp index e35a7f93..3d84afbd 100644 --- a/include/fast_ber/compiler/ResolveType.hpp +++ b/include/fast_ber/compiler/ResolveType.hpp @@ -1,179 +1,29 @@ #pragma once #include "fast_ber/compiler/CompilerTypes.hpp" -#include "fast_ber/compiler/ResolveTypeFwd.hpp" -Assignment& resolve(Asn1Tree& tree, Module& module, const std::string& reference) -{ - for (Assignment& assignemnt : module.assignments) - { - if (assignemnt.name == reference) - { - return assignemnt; - } - } - - for (const Import& import : module.imports) - { - for (const std::string& imported_reference : import.imports) - { - if (imported_reference == reference) - { - return resolve(tree, import.module_reference, reference); - } - } - } - - throw std::runtime_error("Reference to undefined object: " + reference); -} - -Assignment& resolve(Asn1Tree& tree, const std::string& module_reference, const std::string& reference) -{ - for (Module& module : tree.modules) - { - if (module.module_reference == module_reference) - { - return resolve(tree, module, reference); - } - } - throw std::runtime_error("Reference to undefined object: " + module_reference + "." + reference); -} - -Assignment& resolve(Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) -{ - const std::string& module_reference = - (defined.module_reference) ? *defined.module_reference : current_module_reference; - - for (Module& module : tree.modules) - { - if (module.module_reference == module_reference) - { - return resolve(tree, module, defined.type_reference); - } - } - throw std::runtime_error("Reference to undefined object: " + module_reference + "." + defined.type_reference); -} - -const Assignment& resolve(const Asn1Tree& tree, const Module& module, const std::string& reference) -{ - for (const Assignment& assignemnt : module.assignments) - { - if (assignemnt.name == reference) - { - return assignemnt; - } - } - - for (const Import& import : module.imports) - { - for (const std::string& imported_reference : import.imports) - { - if (imported_reference == reference) - { - return resolve(tree, import.module_reference, reference); - } - } - } - - throw std::runtime_error("Reference to undefined object: " + reference); -} - -const Assignment& resolve(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference) -{ - for (const Module& module : tree.modules) - { - if (module.module_reference == module_reference) - { - return resolve(tree, module, reference); - } - } - throw std::runtime_error("Reference to undefined object: " + module_reference + "." + reference); -} - -const Assignment& resolve(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) -{ - const std::string& module_reference = - (defined.module_reference) ? *defined.module_reference : current_module_reference; - - for (const Module& module : tree.modules) - { - if (module.module_reference == module_reference) - { - return resolve(tree, module, defined.type_reference); - } - } - throw std::runtime_error("Reference to undefined object: " + module_reference + "." + defined.type_reference); -} - -bool exists(const Asn1Tree& tree, const Module& module, const std::string& reference) -{ - for (const Assignment& assignemnt : module.assignments) - { - if (assignemnt.name == reference) - { - return true; - } - } - - for (const Import& import : module.imports) - { - for (const std::string& imported_reference : import.imports) - { - if (imported_reference == reference) - { - return exists(tree, import.module_reference, reference); - } - } - } - return false; -} - -bool exists(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference) -{ - for (const Module& module : tree.modules) - { - if (module.module_reference == module_reference) - { - return exists(tree, module, reference); - } - } - return false; -} - -bool exists(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) -{ - const std::string& module_reference = - (defined.module_reference) ? *defined.module_reference : current_module_reference; - - return exists(tree, module_reference, defined.type_reference); -} - -bool is_type(const Assignment& assignment) { return absl::holds_alternative(assignment.specific); } -bool is_value(const Assignment& assignment) { return absl::holds_alternative(assignment.specific); } -bool is_object_class(const Assignment& assignment) -{ - return absl::holds_alternative(assignment.specific) || - absl::holds_alternative(assignment.specific); -} - -Type& type(Assignment& assignemnt) { return absl::get(assignemnt.specific).type; } -const Type& type(const Assignment& assignemnt) { return absl::get(assignemnt.specific).type; } - -ValueAssignment& value(Assignment& assignemnt) { return absl::get(assignemnt.specific); } -const ValueAssignment& value(const Assignment& assignemnt) { return absl::get(assignemnt.specific); } - -ObjectClassAssignment& object_class(Assignment& assignemnt) -{ - return absl::get(assignemnt.specific); -} -const ObjectClassAssignment& object_class(const Assignment& assignemnt) -{ - return absl::get(assignemnt.specific); -} - -bool is_a_parameter(const std::string& reference, const std::vector& parameters) -{ - auto parameter_match = [&](const Parameter& param) { return param.reference == reference; }; - - return std::find_if(parameters.begin(), parameters.end(), parameter_match) != parameters.end(); -} +#include + +Assignment& resolve(Asn1Tree& tree, Module& module, const std::string& reference); +Assignment& resolve(Asn1Tree& tree, const std::string& module_reference, const std::string& reference); +Assignment& resolve(Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined); +const Assignment& resolve(const Asn1Tree& tree, const Module& module, const std::string& reference); +const Assignment& resolve(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference); +const Assignment& resolve(const Asn1Tree& tree, const std::string& current_module_reference, + const DefinedType& defined); + +bool exists(const Asn1Tree& tree, const Module& module, const std::string& reference); +bool exists(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference); +bool exists(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined); + +bool is_type(const Assignment& assignment); +bool is_value(const Assignment& assignment); +bool is_object_class(const Assignment& assignment); +bool is_a_parameter(const std::string& reference, const std::vector& parameters); + +Type& type(Assignment& assignemnt); +const Type& type(const Assignment& assignemnt); +ValueAssignment& value(Assignment& assignemnt); +const ValueAssignment& value(const Assignment& assignemnt); +ObjectClassAssignment& object_class(Assignment& assignemnt); +const ObjectClassAssignment& object_class(const Assignment& assignemnt); diff --git a/include/fast_ber/compiler/ResolveTypeFwd.hpp b/include/fast_ber/compiler/ResolveTypeFwd.hpp deleted file mode 100644 index 3d84afbd..00000000 --- a/include/fast_ber/compiler/ResolveTypeFwd.hpp +++ /dev/null @@ -1,29 +0,0 @@ -#pragma once - -#include "fast_ber/compiler/CompilerTypes.hpp" - -#include - -Assignment& resolve(Asn1Tree& tree, Module& module, const std::string& reference); -Assignment& resolve(Asn1Tree& tree, const std::string& module_reference, const std::string& reference); -Assignment& resolve(Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined); -const Assignment& resolve(const Asn1Tree& tree, const Module& module, const std::string& reference); -const Assignment& resolve(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference); -const Assignment& resolve(const Asn1Tree& tree, const std::string& current_module_reference, - const DefinedType& defined); - -bool exists(const Asn1Tree& tree, const Module& module, const std::string& reference); -bool exists(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference); -bool exists(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined); - -bool is_type(const Assignment& assignment); -bool is_value(const Assignment& assignment); -bool is_object_class(const Assignment& assignment); -bool is_a_parameter(const std::string& reference, const std::vector& parameters); - -Type& type(Assignment& assignemnt); -const Type& type(const Assignment& assignemnt); -ValueAssignment& value(Assignment& assignemnt); -const ValueAssignment& value(const Assignment& assignemnt); -ObjectClassAssignment& object_class(Assignment& assignemnt); -const ObjectClassAssignment& object_class(const Assignment& assignemnt); diff --git a/include/fast_ber/compiler/TypeAsString.hpp b/include/fast_ber/compiler/TypeAsString.hpp index c2da20eb..94670370 100644 --- a/include/fast_ber/compiler/TypeAsString.hpp +++ b/include/fast_ber/compiler/TypeAsString.hpp @@ -1,7 +1,6 @@ #pragma once #include "fast_ber/compiler/CompilerTypes.hpp" -#include "fast_ber/compiler/ResolveTypeFwd.hpp" std::string type_as_string(const AnyType&, const Module&, const Asn1Tree&); std::string type_as_string(const BitStringType&, const Module&, const Asn1Tree&); @@ -38,262 +37,3 @@ std::string type_as_string(const DefinedType&, const Module&, const Asn1Tree&); std::string type_as_string(const BuiltinType&, const Module&, const Asn1Tree&); std::string type_as_string(const Type&, const Module&, const Asn1Tree&); std::string fully_tagged_type(const Type& type, const Module&, const Asn1Tree&); - -TaggingInfo identifier(const DefinedType&, const Module&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const BuiltinType& type, const Module&, const Module&, const Asn1Tree&); -TaggingInfo identifier(const Type& type, const Module&, const Module&, const Asn1Tree&); - -std::string type_as_string(const AnyType&, const Module&, const Asn1Tree&) { return "Any"; } -std::string type_as_string(const BitStringType&, const Module&, const Asn1Tree&) { return "BitString"; } -std::string type_as_string(const BooleanType&, const Module&, const Asn1Tree&) { return "Boolean"; } -std::string type_as_string(const CharacterStringType&, const Module&, const Asn1Tree&) { return "CharacterString"; } -std::string type_as_string(const ChoiceType& choice, const Module& module, const Asn1Tree& tree) -{ - bool is_first = true; - std::string res = "Choice<"; - for (const auto& named_type : choice.choices) - { - if (!is_first) - res += ", "; - - if (is_sequence(named_type.type)) - { - res += "UnnamedSequence" + std::to_string(unnamed_definition_reference_num++); - } - else if (is_set(named_type.type)) - { - res += "UnnamedSet" + std::to_string(unnamed_definition_reference_num++); - } - else if (is_enumerated(named_type.type)) - { - return "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); - } - else - { - res += fully_tagged_type(named_type.type, module, tree); - } - - is_first = false; - } - - res += ">"; - return res; -} -std::string type_as_string(const DateType&, const Module&, const Asn1Tree&) { return "Date"; } -std::string type_as_string(const DateTimeType&, const Module&, const Asn1Tree&) { return "DateTime"; } -std::string type_as_string(const DurationType&, const Module&, const Asn1Tree&) { return "Duration"; } -std::string type_as_string(const EmbeddedPDVType&, const Module&, const Asn1Tree&) { return "EmbeddedPDV"; } -std::string type_as_string(const EnumeratedType& enumerated, const Module&, const Asn1Tree&) -{ - std::string res = " {\n"; - for (const EnumerationValue& enum_value : enumerated.enum_values) - { - res += " " + enum_value.name; - if (enum_value.value) - { - res += " = " + std::to_string(*enum_value.value); - } - res += ",\n"; - } - res += "};\n\n"; - - return res; -} -std::string type_as_string(const ExternalType&, const Module&, const Asn1Tree&) { return "External"; } -std::string type_as_string(const GeneralizedTimeType&, const Module&, const Asn1Tree&) { return "GeneralizedTime"; } -std::string type_as_string(const InstanceOfType&, const Module&, const Asn1Tree&) { return "InstanceOf"; } -std::string type_as_string(const IntegerType&, const Module&, const Asn1Tree&) { return "Integer"; } -std::string type_as_string(const IRIType&, const Module&, const Asn1Tree&) { return "IRI"; } -std::string type_as_string(const NullType&, const Module&, const Asn1Tree&) { return "Null"; } -std::string type_as_string(const ObjectClassFieldType&, const Module&, const Asn1Tree&) -{ - throw std::runtime_error("ObjectClassFieldType is not serializable!"); -} -std::string type_as_string(const ObjectDescriptorType&, const Module&, const Asn1Tree&) { return "ObjectDescriptor"; } -std::string type_as_string(const ObjectIdentifierType&, const Module&, const Asn1Tree&) { return "ObjectIdentifier"; } -std::string type_as_string(const OctetStringType&, const Module&, const Asn1Tree&) { return "OctetString"; } -std::string type_as_string(const RealType&, const Module&, const Asn1Tree&) { return "Real"; } -std::string type_as_string(const RelativeIRIType&, const Module&, const Asn1Tree&) { return "RelativeIRI"; } -std::string type_as_string(const RelativeOIDType&, const Module&, const Asn1Tree&) { return "RelativeOID"; } -std::string type_as_string(const SequenceType& sequence, const Module& module, const Asn1Tree& tree) -{ - std::string res = " {\n"; - - for (const ComponentType& component : sequence.components) - { - std::string component_type = type_as_string(component.named_type.type, module, tree); - if (is_enumerated(component.named_type.type)) - { - component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); - } - - if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) - { - res += "struct " + component.named_type.name + "_type " + component_type; - res += " " + component.named_type.name + "_type " + component.named_type.name + ";\n"; - } - else - { - if (component.is_optional) - { - component_type = make_type_optional(component_type); - } - res += " " + component_type + " " + component.named_type.name + ";\n"; - } - } - res += "};\n"; - - return res; -} -std::string type_as_string(const SequenceOfType& sequence, const Module& module, const Asn1Tree& tree) -{ - const Type& type = sequence.has_name ? sequence.named_type->type : *sequence.type; - - if (is_sequence(type)) - { - if (sequence.has_name) - { - return "SequenceOf<" + sequence.named_type->name + ">"; - } - return "SequenceOf"; - } - else if (is_set(type)) - { - if (sequence.has_name) - { - return "SequenceOf<" + sequence.named_type->name + ">"; - } - return "SequenceOf"; - } - else if (is_enumerated(type)) - { - if (sequence.has_name) - { - return "SequenceOf<" + sequence.named_type->name + ">"; - } - return "SequenceOf"; - } - else - { - return "SequenceOf<" + type_as_string(type, module, tree) + ">"; - } -} -std::string type_as_string(const SetType& set, const Module& module, const Asn1Tree& tree) -{ - std::string res = " {\n"; - - for (const ComponentType& component : set.components) - { - std::string component_type = type_as_string(component.named_type.type, module, tree); - if (is_enumerated(component.named_type.type)) - { - component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); - } - - if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) - { - res += " struct " + component.named_type.name + "_type " + component_type; - res += component.named_type.name + "_type " + component.named_type.name + ";\n"; - } - else - { - if (component.is_optional) - { - component_type = make_type_optional(component_type); - } - res += " " + component_type + " " + component.named_type.name + ";\n"; - } - } - res += "};\n"; - - return res; -} -std::string type_as_string(const SetOfType& set, const Module& module, const Asn1Tree& tree) -{ - const Type& type = set.has_name ? set.named_type->type : *set.type; - - if (is_sequence(type)) - { - if (set.has_name) - { - return "SequenceOf<" + set.named_type->name + ">"; - } - return "SequenceOf"; - } - else if (is_set(type)) - { - if (set.has_name) - { - return "SequenceOf<" + set.named_type->name + ">"; - } - return "SequenceOf"; - } - else if (is_enumerated(type)) - { - if (set.has_name) - { - return "SequenceOf<" + set.named_type->name + ">"; - } - return "SequenceOf"; - } - else - { - return "SequenceOf<" + type_as_string(type, module, tree) + ">"; - } -} -std::string type_as_string(const PrefixedType& prefixed_type, const Module& module, const Asn1Tree& tree) -{ - if (is_sequence(prefixed_type.tagged_type->type)) - { - return "UnnamedSequence" + std::to_string(unnamed_definition_reference_num++); - } - else if (is_set(prefixed_type.tagged_type->type)) - { - return "UnnamedSet" + std::to_string(unnamed_definition_reference_num++); - } - else if (is_enumerated(prefixed_type.tagged_type->type)) - { - return "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); - } - return type_as_string(prefixed_type.tagged_type->type, module, tree); -} -std::string type_as_string(const TimeType&, const Module&, const Asn1Tree&) { return "Time"; } -std::string type_as_string(const TimeOfDayType&, const Module&, const Asn1Tree&) { return "TimeOfDay"; } -std::string type_as_string(const UTCTimeType&, const Module&, const Asn1Tree&) { return "UTCTime"; } - -std::string type_as_string(const DefinedType& type, const Module& module, const Asn1Tree& tree) -{ - if (!type.parameters.empty()) - { - std::set parameter_types; - for (const Type& paramter : type.parameters) - { - parameter_types.insert(type_as_string(paramter, module, tree)); - } - return type.type_reference + create_template_arguments(parameter_types); - } - return type.type_reference; -} - -struct ToStringHelper -{ - template - std::string operator()(const T& t) - { - return type_as_string(t, module, tree); - } - - const Module& module; - const Asn1Tree& tree; -}; - -std::string type_as_string(const BuiltinType& type, const Module& module, const Asn1Tree& tree) -{ - ToStringHelper string_helper{module, tree}; - return absl::visit(string_helper, type); -} -std::string type_as_string(const Type& type, const Module& module, const Asn1Tree& tree) -{ - ToStringHelper string_helper{module, tree}; - return absl::visit(string_helper, type); -} diff --git a/src/compiler/CompilerTypes.cpp b/src/compiler/CompilerTypes.cpp new file mode 100644 index 00000000..252c8e48 --- /dev/null +++ b/src/compiler/CompilerTypes.cpp @@ -0,0 +1,216 @@ +#include "fast_ber/compiler/CompilerTypes.hpp" + +static const std::unordered_set reserved_keywords = {"alignas", + "alignof", + "and", + "and_eq", + "asm", + "atomic_cancel", + "atomic_commit", + "atomic_noexcept", + "auto", + "bitand", + "bitor", + "bool", + "break", + "case", + "catch", + "char", + "char8_t", + "char16_t", + "char32_t", + "class", + "compl", + "concept", + "const", + "consteval", + "constexpr", + "const_cast", + "continue", + "co_await", + "co_return", + "co_yield", + "decltype", + "default", + "delete", + "do", + "double", + "dynamic_cast", + "else", + "enum", + "explicit", + "export", + "extern", + "false", + "float", + "for", + "friend", + "goto", + "if", + "import", + "inline", + "int", + "long", + "module", + "mutable", + "namespace", + "new", + "noexcept", + "not", + "not_eq", + "nullptr", + "operator", + "or", + "or_eq", + "private", + "protected", + "public", + "reflexpr", + "register", + "reinterpret_cast", + "requires", + "return", + "short", + "signed", + "sizeof", + "static", + "static_assert", + "static_cast", + "struct", + "switch", + "synchronized", + "template", + "this", + "thread_local", + "throw", + "true", + "try", + "typedef", + "typeid", + "typename", + "union", + "unsigned", + "using", + "virtual", + "void", + "volatile", + "wchar_t", + "while", + "xor", + "xor_eq"}; + +// Switch asn '-' for C++ '_' +// Rename any names which are reserved in C++ +std::string santize_name(const std::string& name) +{ + auto copy = name; + std::replace(copy.begin(), copy.end(), '-', '_'); + + if (reserved_keywords.count(copy) > 0) + { + return copy + "_"; + } + return copy; +} + +std::string to_string(Class class_) +{ + switch (class_) + { + case Class::universal: + return "universal"; + case Class::application: + return "application"; + case Class::context_specific: + return "context_specific"; + case Class::private_: + return "private_"; + default: + return ""; + } +} + +std::string make_type_optional(const std::string& type) { return "Optional<" + type + ">"; } + +bool is_bit_string(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} + +bool is_set(const Type& type) +{ + return absl::holds_alternative(type) && absl::holds_alternative(absl::get(type)); +} + +bool is_sequence(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} + +bool is_set_of(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} + +bool is_sequence_of(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} + +bool is_enumerated(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} + +bool is_choice(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} + +bool is_prefixed(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} + +bool is_integer(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} + +bool is_oid(const Type& type) +{ + return absl::holds_alternative(type) && + absl::holds_alternative(absl::get(type)); +} + +bool is_defined(const Type& type) { return absl::holds_alternative(type); } + +std::string create_template_definition(const std::vector& parameters) +{ + std::set param_set; + for (const Parameter& parameter : parameters) + { + param_set.insert(parameter.reference); + } + + return create_template_definition(param_set); +} + +std::string create_template_arguments(const std::vector& parameters) +{ + std::set param_set; + for (const Parameter& parameter : parameters) + { + param_set.insert(parameter.reference); + } + + return create_template_arguments(param_set); +} diff --git a/src/compiler/CppGeneration.cpp b/src/compiler/CppGeneration.cpp new file mode 100644 index 00000000..82a01b53 --- /dev/null +++ b/src/compiler/CppGeneration.cpp @@ -0,0 +1,60 @@ +#include "fast_ber/compiler/CppGeneration.hpp" + +std::string create_include(const std::string& path) { return "#include \"" + path + "\"\n"; } + +std::string create_template_definition(const std::set& types) +{ + if (types.empty()) + { + return ""; + } + + std::string definition = "template <"; + bool is_first = true; + for (const std::string& type : types) + { + if (!is_first) + { + definition += ", "; + } + definition += "typename " + type; + is_first = false; + } + + definition += ">\n"; + return definition; +} + +std::string create_template_arguments(const std::set& types) +{ + if (types.empty()) + { + return ""; + } + + std::string arguments = "<"; + bool is_first = true; + for (const std::string& type : types) + { + if (!is_first) + { + arguments += ", "; + } + arguments += type; + is_first = false; + } + + arguments += ">"; + return arguments; +} + +std::string add_namespace(const std::string& name, const std::string& enclosed) +{ + std::string output; + + output += "namespace " + name + " {\n"; + output += enclosed; + output += "} // End namespace " + name + "\n"; + + return output; +} diff --git a/src/compiler/Dependencies.cpp b/src/compiler/Dependencies.cpp new file mode 100644 index 00000000..1d49d7da --- /dev/null +++ b/src/compiler/Dependencies.cpp @@ -0,0 +1,133 @@ +#include "fast_ber/compiler/Dependencies.hpp" + +std::vector depends_on(const BitStringType&) { return {}; } +std::vector depends_on(const BooleanType&) { return {}; } +std::vector depends_on(const CharacterStringType&) { return {}; } +std::vector depends_on(const ChoiceType choice) +{ + std::vector depends; + for (const auto& named_type : choice.choices) + { + const auto& additional = depends_on(named_type.type); + depends.insert(depends.end(), additional.begin(), additional.end()); + } + return depends; +} +std::vector depends_on(const AnyType&) { return {}; } +std::vector depends_on(const DateType&) { return {}; } +std::vector depends_on(const DateTimeType&) { return {}; } +std::vector depends_on(const DurationType&) { return {}; } +std::vector depends_on(const EmbeddedPDVType&) { return {}; } +std::vector depends_on(const EnumeratedType&) { return {}; } +std::vector depends_on(const ExternalType&) { return {}; } +std::vector depends_on(const GeneralizedTimeType&) { return {}; } +std::vector depends_on(const InstanceOfType&) { return {}; } +std::vector depends_on(const IntegerType&) { return {}; } +std::vector depends_on(const IRIType&) { return {}; } +std::vector depends_on(const NullType&) { return {}; } +std::vector depends_on(const ObjectClassFieldType&) { return {}; } +std::vector depends_on(const ObjectDescriptorType&) { return {}; } +std::vector depends_on(const ObjectIdentifierType&) { return {}; } +std::vector depends_on(const OctetStringType&) { return {}; } +std::vector depends_on(const RealType&) { return {}; } +std::vector depends_on(const RelativeIRIType&) { return {}; } +std::vector depends_on(const RelativeOIDType&) { return {}; } +std::vector depends_on(const SequenceType& sequence) +{ + std::vector depends; + for (const ComponentType& component : sequence.components) + { + const auto& additional = depends_on(component.named_type.type); + depends.insert(depends.end(), additional.begin(), additional.end()); + } + return depends; +} +std::vector depends_on(const SequenceOfType& sequence) +{ + if (sequence.has_name) + { + return depends_on(sequence.named_type->type); + } + else + { + return depends_on(*sequence.type); + }; +} +std::vector depends_on(const SetType& set) +{ + std::vector depends; + for (const ComponentType& component : set.components) + { + const auto& additional = depends_on(component.named_type.type); + depends.insert(depends.end(), additional.begin(), additional.end()); + } + return depends; +} +std::vector depends_on(const SetOfType& set) +{ + if (set.has_name) + { + return depends_on(set.named_type->type); + } + else + { + return {depends_on(*set.type)}; + }; +} +std::vector depends_on(const PrefixedType& prefixed_type) +{ + return depends_on(prefixed_type.tagged_type->type); +} +std::vector depends_on(const TimeType&) { return {}; } +std::vector depends_on(const TimeOfDayType&) { return {}; } +std::vector depends_on(const UTCTimeType&) { return {}; } +std::vector depends_on(const DefinedType& defined) +{ + std::vector depends{defined.type_reference}; + + for (const Type& paramater : defined.parameters) + { + const std::vector param_depends = depends_on(paramater); + depends.insert(depends.end(), param_depends.begin(), param_depends.end()); + } + + return depends; +} + +struct DependsOnHelper +{ + template + std::vector operator()(const T& t) + { + return depends_on(t); + } +}; +static DependsOnHelper depends_on_helper; +std::vector depends_on(const BuiltinType& type) { return absl::visit(depends_on_helper, type); } +std::vector depends_on(const Type& type) { return absl::visit(depends_on_helper, type); } +std::vector depends_on(const Value& value) +{ + if (absl::holds_alternative(value.value_selection)) + { + return {absl::get(value.value_selection).reference}; + }; + return {}; +} + +std::vector dependencies(const Type& type) { return depends_on(type); } +std::vector dependencies(const Assignment& assignment) +{ + if (absl::holds_alternative(assignment.specific)) + { + return depends_on(absl::get(assignment.specific).type); + } + else if (absl::holds_alternative(assignment.specific)) + { + auto type_depends = depends_on(absl::get(assignment.specific).type); + auto value_depends = depends_on(absl::get(assignment.specific).value); + + type_depends.insert(type_depends.end(), value_depends.begin(), value_depends.end()); + return type_depends; + } + return {}; +} diff --git a/src/compiler/Identifier.cpp b/src/compiler/Identifier.cpp new file mode 100644 index 00000000..2664f4a5 --- /dev/null +++ b/src/compiler/Identifier.cpp @@ -0,0 +1,201 @@ +#include "fast_ber/compiler/Identifier.hpp" + +TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const BitStringType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const BooleanType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const CharacterStringType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const ChoiceType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const DateType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const DateTimeType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const DurationType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const EmbeddedPDVType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const EnumeratedType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const ExternalType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const GeneralizedTimeType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const InstanceOfType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const IntegerType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const IRIType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const NullType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const ObjectClassFieldType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const ObjectDescriptorType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const ObjectIdentifierType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const OctetStringType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const RealType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const RelativeIRIType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const RelativeOIDType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const SequenceType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const SequenceOfType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const SetType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const SetOfType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const PrefixedType& prefixed, const Module& current_module, const Asn1Tree& tree) +{ + assert(prefixed.tagged_type); + return identifier(*prefixed.tagged_type, current_module, tree); +} +TaggingInfo identifier(const TaggedType& tagged_type, const Module& current_module, const Asn1Tree& tree) +{ + std::string tag = ""; + bool is_explicit = false; + if (tagged_type.tagging_mode == TaggingMode::explicit_) + { + is_explicit = true; + } + else if (tagged_type.tagging_mode == TaggingMode::implicit) + { + is_explicit = false; + } + else + { + is_explicit = (current_module.tagging_default == TaggingMode::explicit_ || + current_module.tagging_default == TaggingMode::automatic); + } + + if (is_explicit) + { + tag = "TaggedExplicitIdentifier"; + } + else + { + tag = "ImplicitIdentifier"; + } + return TaggingInfo{tag, false}; +} +TaggingInfo identifier(const TimeType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} +TaggingInfo identifier(const TimeOfDayType&, const Module&, const Asn1Tree&) +{ + return TaggingInfo{"ExplicitIdentifier", true}; +} + +struct IdentifierHelper +{ + template + TaggingInfo operator()(const T& t) const + { + return identifier(t, current_module, tree); + } + + const Module& current_module; + const Asn1Tree& tree; +}; + +std::string fully_tagged_type(const Type& type, const Module& current_module, const Asn1Tree& tree) +{ + const TaggingInfo& tagging_info = identifier(type, current_module, tree); + if (tagging_info.is_default_tagged) + { + return type_as_string(type, current_module, tree); + } + + return "TaggedType<" + type_as_string(type, current_module, tree) + ", " + tagging_info.tag + ">"; +} + +TaggingInfo identifier(const DefinedType& defined, const Module& current_module, const Asn1Tree&) +{ + const std::string& module_ref = + (defined.module_reference) ? *defined.module_reference : current_module.module_reference; + const std::string& type_string = + "decltype(identifier(static_cast<" + module_ref + "::" + defined.type_reference + "*>(nullptr)))"; + + return {type_string, true}; +} +TaggingInfo identifier(const BuiltinType& type, const Module& current_module, const Asn1Tree& tree) +{ + IdentifierHelper tag_helper{current_module, tree}; + return absl::visit(tag_helper, type); +} +TaggingInfo identifier(const Type& type, const Module& current_module, const Asn1Tree& tree) +{ + IdentifierHelper tag_helper{current_module, tree}; + return absl::visit(tag_helper, type); +} diff --git a/src/compiler/ObjectClass.cpp b/src/compiler/ObjectClass.cpp new file mode 100644 index 00000000..fef4e03e --- /dev/null +++ b/src/compiler/ObjectClass.cpp @@ -0,0 +1,318 @@ +#include "fast_ber/compiler/ObjectClass.hpp" +#include "fast_ber/compiler/ResolveType.hpp" + +void object_class_to_concrete(Asn1Tree& tree, Module& module, Type& type); + +void object_class_to_concrete(Asn1Tree& tree, Module& module, ChoiceType& choice) +{ + for (NamedType& named_type : choice.choices) + { + object_class_to_concrete(tree, module, named_type.type); + } +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, SequenceType& sequence) +{ + for (ComponentType& component : sequence.components) + { + object_class_to_concrete(tree, module, component.named_type.type); + } +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, SequenceOfType& sequence) +{ + Type& type = sequence.has_name ? sequence.named_type->type : *sequence.type; + object_class_to_concrete(tree, module, type); +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, SetType& set) +{ + for (ComponentType& component : set.components) + { + object_class_to_concrete(tree, module, component.named_type.type); + } +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, SetOfType& set) +{ + Type& type = set.has_name ? set.named_type->type : *set.type; + object_class_to_concrete(tree, module, type); +} +void object_class_to_concrete(Asn1Tree& tree, Module& module, PrefixedType& prefixed_type) +{ + object_class_to_concrete(tree, module, prefixed_type.tagged_type->type); +} + +void object_class_to_concrete(Asn1Tree& tree, Module& module, BuiltinType& type) +{ + if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + object_class_to_concrete(tree, module, absl::get(type)); + } +} + +Type create_concrete_type(Asn1Tree& tree, Module& module, ObjectClassFieldType& object_class_field) +{ + const Assignment& assigment = resolve(tree, module.module_reference, object_class_field.referenced_object_class); + if (!is_object_class(assigment)) + { + throw std::runtime_error("Referenced object is not an ObjectClass " + + object_class_field.referenced_object_class.type_reference); + } + + if (object_class_field.fieldnames.size() == 1) + { + for (const ClassField& field : object_class(assigment).fields) + { + if (field.name == object_class_field.fieldnames[0]) + { + if (absl::holds_alternative(field.field)) + { + return absl::get(field.field).type; + } + throw std::runtime_error("Referenced class field does not have a type: " + + object_class_field.referenced_object_class.type_reference + "." + + object_class_field.fieldnames[0]); + } + } + } + + throw std::runtime_error("Failed to parse object field reference " + + object_class_field.referenced_object_class.type_reference); +} + +void object_class_to_concrete(Asn1Tree& tree, Module& module, Type& type) +{ + if (absl::holds_alternative(type)) + { + if (absl::holds_alternative(absl::get(type))) + { + type = create_concrete_type(tree, module, absl::get(absl::get(type))); + } + else + { + object_class_to_concrete(tree, module, absl::get(type)); + } + } + else if (absl::holds_alternative(type)) + { + // Do nothing + } + else + { + throw std::runtime_error("Unhandled type!"); + } +} + +bool is_defined_object_class(const std::string& module_reference, const std::string& type_reference, + const std::set& object_class_names) +{ + return object_class_names.count(module_reference + "." + type_reference) > 0; +} + +bool is_defined_object_class(const Asn1Tree&, Module& module, const Type& type, + const std::set& object_class_names) +{ + if (is_defined(type)) + { + const DefinedType& defined = absl::get(type); + if (defined.module_reference) + { + return is_defined_object_class(*defined.module_reference, defined.type_reference, object_class_names); + } + return is_defined_object_class(module.module_reference, defined.type_reference, object_class_names); + } + return false; +} + +void remove_object_classes(Asn1Tree& tree, const std::set& object_class_names) +{ + for (Module& module : tree.modules) + { + module.assignments.erase( + std::remove_if( + module.assignments.begin(), module.assignments.end(), + [&](const Assignment& assignment) { + if (is_object_class(assignment)) + { + return true; + } + else if (is_type(assignment) && is_defined(type(assignment))) + { + return is_defined_object_class(tree, module, type(assignment), object_class_names); + } + else if (absl::holds_alternative(assignment.specific) && + absl::holds_alternative(absl::get(assignment.specific).type)) + { + const ValueAssignment& value_assign = absl::get(assignment.specific); + return is_defined_object_class(tree, module, value_assign.type, object_class_names); + } + + for (const Parameter& parameter : assignment.parameters) + { + if (parameter.governor) + { + if (is_defined_object_class(tree, module, *parameter.governor, object_class_names)) + { + return true; + } + } + } + + return false; + }), + module.assignments.end()); + } + + for (Module& module : tree.modules) + { + for (Import& import : module.imports) + { + import.imports.erase(std::remove_if(import.imports.begin(), import.imports.end(), + [&](const std::string& imported_name) { + return is_defined_object_class(import.module_reference, + imported_name, object_class_names); + }), + import.imports.end()); + } + } +} + +std::set get_object_class_names(const Asn1Tree& tree) +{ + std::set object_class_names; + + size_t old_number_of_names = 0; + do + { + old_number_of_names = object_class_names.size(); + for (const Module& module : tree.modules) + { + for (const Assignment& assignment : module.assignments) + { + if (is_type(assignment) || is_value(assignment)) + { + for (const Parameter& parameter : assignment.parameters) + { + if (parameter.governor) + { + if (is_defined(*parameter.governor)) + { + const DefinedType& defined = absl::get(*parameter.governor); + const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); + if (is_object_class(inner_assignment)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + else if (is_defined_object_class(*defined.module_reference, defined.type_reference, + object_class_names)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + } + } + } + } + if (is_type(assignment) && is_defined(type(assignment))) + { + const DefinedType& defined = absl::get(type(assignment)); + if (!is_a_parameter(defined.type_reference, assignment.parameters)) + { + const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); + if (is_object_class(inner_assignment)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + else if (is_defined_object_class(module.module_reference, defined.type_reference, + object_class_names)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + } + } + if (is_value(assignment) && is_defined(value(assignment).type)) + { + const DefinedType& defined = absl::get(value(assignment).type); + if (!is_a_parameter(defined.type_reference, assignment.parameters)) + { + const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); + if (is_object_class(inner_assignment)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + else if (is_defined_object_class(module.module_reference, defined.type_reference, + object_class_names)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + } + } + if (is_object_class(assignment)) + { + object_class_names.insert(module.module_reference + "." + assignment.name); + } + } + } + + for (const Module& module : tree.modules) + { + for (const Import& import : module.imports) + { + for (const std::string& imported_name : import.imports) + { + if (is_defined_object_class(import.module_reference, imported_name, object_class_names)) + { + object_class_names.insert(module.module_reference + "." + imported_name); + } + } + } + } + } while (object_class_names.size() > old_number_of_names); + return object_class_names; +} + +// Convert usage of object classes to standard ASN.1 types +void resolve_object_classes(Asn1Tree& tree) +{ + std::set object_class_names = get_object_class_names(tree); + + for (Module& module : tree.modules) + { + for (Assignment& assignment : module.assignments) + { + if (absl::holds_alternative(assignment.specific)) + { + bool skip = false; + for (const Parameter& parameter : assignment.parameters) + { + if (parameter.governor) + { + skip = true; + } + } + if (!skip) + { + object_class_to_concrete(tree, module, absl::get(assignment.specific).type); + } + } + } + } + + remove_object_classes(tree, object_class_names); +} diff --git a/src/compiler/ReorderAssignments.cpp b/src/compiler/ReorderAssignments.cpp new file mode 100644 index 00000000..08263719 --- /dev/null +++ b/src/compiler/ReorderAssignments.cpp @@ -0,0 +1,449 @@ +#include "fast_ber/compiler/ReorderAssignments.hpp" +#include "fast_ber/compiler/Dependencies.hpp" +#include "fast_ber/compiler/ResolveType.hpp" + +#include +#include +#include +#include +#include + +std::string to_string(const std::vector& assignments) +{ + std::string str; + for (const Assignment& assignment : assignments) + { + if (assignment.name.empty()) + { + str += "\n"; + } + else + { + str += assignment.name + '\n'; + } + } + return str; +} + +void check_duplicated_names(const std::vector& assignments, const std::string& module_name) +{ + std::unordered_set defined_names; + for (const Assignment& assignment : assignments) + { + if (defined_names.count(assignment.name) > 0) + { + throw std::runtime_error("Error: Duplicated name \"" + assignment.name + "\" in module \"" + module_name + + '\"'); + } + defined_names.insert(assignment.name); + } +} + +void resolve_components_of(Asn1Tree& tree) +{ + for (Module& module : tree.modules) + { + for (Assignment& assignemnt : module.assignments) + { + if (absl::holds_alternative(assignemnt.specific)) + { + TypeAssignment& type_assignment = absl::get(assignemnt.specific); + if (is_sequence(type_assignment.type)) + { + SequenceType& sequence = absl::get(absl::get(type_assignment.type)); + for (auto iter = sequence.components.begin(); iter != sequence.components.end(); iter++) + { + if (iter->components_of) + { + if (is_defined(*iter->components_of)) + { + const DefinedType& defined = absl::get(*iter->components_of); + const Type& inheretied = type(resolve(tree, module.module_reference, defined)); + if (is_sequence(inheretied)) + { + const SequenceType& inheretied_sequence = + absl::get(absl::get(inheretied)); + + const size_t offset = std::distance(sequence.components.begin(), iter); + sequence.components.insert(iter, inheretied_sequence.components.begin(), + inheretied_sequence.components.end()); + + iter = sequence.components.begin(); + std::advance(iter, offset); + std::advance(iter, inheretied_sequence.components.size()); + } + else if (is_set(inheretied)) + { + const SetType& inheretied_set = + absl::get(absl::get(inheretied)); + + const size_t offset = std::distance(sequence.components.begin(), iter); + sequence.components.insert(iter, inheretied_set.components.begin(), + inheretied_set.components.end()); + + iter = sequence.components.begin(); + std::advance(iter, offset); + std::advance(iter, inheretied_set.components.size()); + } + } + else if (is_sequence(*iter->components_of)) + { + const SequenceType& inheretied_sequence = + absl::get(absl::get(*iter->components_of)); + + const size_t offset = std::distance(sequence.components.begin(), iter); + sequence.components.insert(iter, inheretied_sequence.components.begin(), + inheretied_sequence.components.end()); + + iter = sequence.components.begin(); + std::advance(iter, offset); + std::advance(iter, inheretied_sequence.components.size()); + } + else if (is_set(*iter->components_of)) + { + const SetType& inheretied_set = + absl::get(absl::get(*iter->components_of)); + + const size_t offset = std::distance(sequence.components.begin(), iter); + sequence.components.insert(iter, inheretied_set.components.begin(), + inheretied_set.components.end()); + + iter = sequence.components.begin(); + std::advance(iter, offset); + std::advance(iter, inheretied_set.components.size()); + } + else + { + throw std::runtime_error("Strange type when resolving SEQUENCE OF in type" + + assignemnt.name); + } + } + } + sequence.components.erase( + std::remove_if(sequence.components.begin(), sequence.components.end(), + [](ComponentType& component) { return component.components_of; }), + sequence.components.end()); + } + } + } + } +} + +void resolve_dependencies(const std::unordered_map& assignment_infos, const std::string& name, + std::unordered_set& assigned_names, + std::unordered_set& visited_names, + std::vector& ordered_assignment_infos) +{ + const auto& assign_iter = assignment_infos.find(name); + if (assign_iter == assignment_infos.end()) + { + throw std::runtime_error("Reference to undefined type: " + name); + } + + if (assigned_names.count(name) == 1) + { + // Already assigned + return; + } + + if (visited_names.count(name) == 1) + { + throw std::runtime_error("Circular dependency when trying to resolve dependencies of " + name); + } + + visited_names.insert(name); + + const Assignment& assignment = assign_iter->second; + for (const std::string& dependency : assignment.depends_on) + { + resolve_dependencies(assignment_infos, dependency, assigned_names, visited_names, ordered_assignment_infos); + } + + ordered_assignment_infos.push_back(assignment); + assigned_names.insert(name); +} + +// Reorder assignments, defining +// Should be able to detect missing assignments and circular dependencies +std::vector reorder_assignments(std::vector& assignments, const std::vector& imports) +{ + std::unordered_map assignment_map; + assignment_map.reserve(assignments.size()); + for (Assignment& assignment : assignments) + { + assignment.depends_on = dependencies(assignment); + // Any parameterized references are already defined and do not need to be resolved, + // Therefore remove any names which are defined as parameters from dependancy list + assignment.depends_on.erase(std::remove_if(assignment.depends_on.begin(), assignment.depends_on.end(), + [&assignment](const std::string& dependancy) { + return is_a_parameter(dependancy, assignment.parameters); + }), + assignment.depends_on.end()); + + assignment_map[assignment.name] = assignment; + } + + std::unordered_set assigned_names; + std::unordered_set visited_names; + + for (const Import& import : imports) + { + for (const std::string& import_name : import.imports) + { + assignment_map[import_name] = Assignment{}; + assigned_names.insert(import_name); + } + } + + std::vector ordered_assignments; + ordered_assignments.reserve(assignments.size()); + + for (const std::pair& assignment : assignment_map) + { + resolve_dependencies(assignment_map, assignment.first, assigned_names, visited_names, ordered_assignments); + } + + if (assignments.size() != ordered_assignments.size()) + { + throw std::runtime_error("Failed to re-order assignments, Unordered assigments:\n" + to_string(assignments) + + " ordered assignments:\n" + to_string(ordered_assignments)); + } + return ordered_assignments; +} + +int unnamed_definition_num = 0; +// Finds any sequence or set types nested within a type +void find_nested_structs(const Type& type, std::vector& nested_structs) +{ + if (is_set(type)) + { + for (const ComponentType& component : absl::get(absl::get(type)).components) + { + if (is_enumerated(component.named_type.type)) + { + nested_structs.push_back( + NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), component.named_type.type}); + } + else + { + find_nested_structs(component.named_type.type, nested_structs); + } + } + } + else if (is_sequence(type)) + { + for (const ComponentType& component : absl::get(absl::get(type)).components) + { + if (is_enumerated(component.named_type.type)) + { + nested_structs.push_back( + NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), component.named_type.type}); + } + else + { + find_nested_structs(component.named_type.type, nested_structs); + } + } + } + else if (is_set_of(type)) + { + const SetOfType& set_of = absl::get(absl::get(type)); + const Type& inner_type = set_of.has_name ? set_of.named_type->type : *set_of.type; + if (is_set(inner_type)) + { + nested_structs.push_back(NamedType{"UnnamedSet" + std::to_string(unnamed_definition_num++), inner_type}); + } + else if (is_sequence(inner_type)) + { + nested_structs.push_back( + NamedType{"UnnamedSequence" + std::to_string(unnamed_definition_num++), inner_type}); + } + else if (is_enumerated(inner_type)) + { + nested_structs.push_back(NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), inner_type}); + } + find_nested_structs(inner_type, nested_structs); + } + else if (is_sequence_of(type)) + { + const SequenceOfType& sequence_of = absl::get(absl::get(type)); + const Type& inner_type = sequence_of.has_name ? sequence_of.named_type->type : *sequence_of.type; + if (is_set(inner_type)) + { + nested_structs.push_back(NamedType{"UnnamedSet" + std::to_string(unnamed_definition_num++), inner_type}); + } + else if (is_sequence(inner_type)) + { + nested_structs.push_back( + NamedType{"UnnamedSequence" + std::to_string(unnamed_definition_num++), inner_type}); + } + else if (is_enumerated(inner_type)) + { + nested_structs.push_back(NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), inner_type}); + } + find_nested_structs(inner_type, nested_structs); + } + else if (is_choice(type)) + { + const ChoiceType& choice = absl::get(absl::get(type)); + for (const NamedType& choice_selection : choice.choices) + { + const Type& inner_type = choice_selection.type; + if (is_set(inner_type)) + { + nested_structs.push_back( + NamedType{"UnnamedSet" + std::to_string(unnamed_definition_num++), inner_type}); + } + else if (is_sequence(inner_type)) + { + nested_structs.push_back( + NamedType{"UnnamedSequence" + std::to_string(unnamed_definition_num++), inner_type}); + } + else if (is_enumerated(inner_type)) + { + nested_structs.push_back( + NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), inner_type}); + } + find_nested_structs(choice_selection.type, nested_structs); + } + } + else if (is_prefixed(type)) + { + const Type& inner_type = absl::get(absl::get(type)).tagged_type->type; + if (is_set(inner_type)) + { + nested_structs.push_back(NamedType{"UnnamedSet" + std::to_string(unnamed_definition_num++), inner_type}); + } + else if (is_sequence(inner_type)) + { + nested_structs.push_back( + NamedType{"UnnamedSequence" + std::to_string(unnamed_definition_num++), inner_type}); + } + else if (is_enumerated(inner_type)) + { + nested_structs.push_back(NamedType{"UnnamedEnum" + std::to_string(unnamed_definition_num++), inner_type}); + } + find_nested_structs(inner_type, nested_structs); + } +} + +// Statements such as integer type definitions can introduce new statements, such as value assignments +// +std::vector split_definitions(const std::vector& assignments) +{ + return assignments; + std::vector split_assignments; + split_assignments.reserve(assignments.size()); + + for (const Assignment& assignment : assignments) + { + if (absl::holds_alternative(assignment.specific)) + { + const TypeAssignment& type_assign = absl::get(assignment.specific); + if (is_integer(type_assign.type)) + { + const IntegerType& integer = absl::get(absl::get(type_assign.type)); + for (const NamedNumber& named_number : integer.named_numbers) + { + split_assignments.push_back( + Assignment{named_number.name, + ValueAssignment{BuiltinType{IntegerType{}}, Value{named_number.number}}, + {}, + {}}); + } + } + } + split_assignments.push_back(assignment); + } + + return split_assignments; +} + +// structs (Sequence and Sets) cannot be defined within other definitions in C++, due to this nested assignments are +// split into top level assignment statements. Note - assignments are assumed to already have been ordered +std::vector split_nested_structures(const std::vector& assignments) +{ + std::vector split_assignments; + split_assignments.reserve(assignments.size()); + + for (const Assignment& assignment : assignments) + { + if (absl::holds_alternative(assignment.specific)) + { + std::vector nested_structs; + find_nested_structs(absl::get(assignment.specific).type, nested_structs); + + for (auto nested_iter = nested_structs.rbegin(); nested_iter != nested_structs.rend(); nested_iter++) + { + split_assignments.push_back(Assignment{nested_iter->name, TypeAssignment{nested_iter->type}, {}, {}}); + } + } + split_assignments.push_back(assignment); + } + + return split_assignments; +} + +void resolve_module_dependencies(const std::unordered_map& module_map, const std::string& name, + std::unordered_set& assigned_names, + std::unordered_set& visited_names, std::vector& ordered_modules) +{ + const auto& module_iter = module_map.find(name); + const Module& module = module_iter->second; + + if (module_iter == module_map.end()) + { + throw std::runtime_error("Reference to undefined module: " + name); + } + + if (assigned_names.count(name) == 1) + { + // Already assigned + return; + } + + if (visited_names.count(name) == 1) + { + std::cerr << "Warning: Circular dependency when trying to resolve dependencies of " << name << std::endl; + ordered_modules.push_back(module); + assigned_names.insert(name); + return; + } + + visited_names.insert(name); + + for (const Import& import : module.imports) + { + resolve_module_dependencies(module_map, import.module_reference, assigned_names, visited_names, + ordered_modules); + } + + ordered_modules.push_back(module); + assigned_names.insert(name); +} + +std::vector reorder_modules(const std::vector& modules) +{ + std::vector ordered_modules; + ordered_modules.reserve(modules.size()); + + std::unordered_map module_map; + for (const Module& module : modules) + { + module_map[module.module_reference] = module; + } + + std::unordered_set assigned_modules; + std::unordered_set visited_modules; + + for (const Module& module : modules) + { + resolve_module_dependencies(module_map, module.module_reference, assigned_modules, visited_modules, + ordered_modules); + } + if (modules.size() != ordered_modules.size()) + { + throw std::runtime_error("Failed to re-order modules!"); + } + return ordered_modules; +} diff --git a/src/compiler/ResolveType.cpp b/src/compiler/ResolveType.cpp new file mode 100644 index 00000000..0b0e4c27 --- /dev/null +++ b/src/compiler/ResolveType.cpp @@ -0,0 +1,176 @@ +#include "fast_ber/compiler/ResolveType.hpp" + +Assignment& resolve(Asn1Tree& tree, Module& module, const std::string& reference) +{ + for (Assignment& assignemnt : module.assignments) + { + if (assignemnt.name == reference) + { + return assignemnt; + } + } + + for (const Import& import : module.imports) + { + for (const std::string& imported_reference : import.imports) + { + if (imported_reference == reference) + { + return resolve(tree, import.module_reference, reference); + } + } + } + + throw std::runtime_error("Reference to undefined object: " + reference); +} + +Assignment& resolve(Asn1Tree& tree, const std::string& module_reference, const std::string& reference) +{ + for (Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return resolve(tree, module, reference); + } + } + throw std::runtime_error("Reference to undefined object: " + module_reference + "." + reference); +} + +Assignment& resolve(Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) +{ + const std::string& module_reference = + (defined.module_reference) ? *defined.module_reference : current_module_reference; + + for (Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return resolve(tree, module, defined.type_reference); + } + } + throw std::runtime_error("Reference to undefined object: " + module_reference + "." + defined.type_reference); +} + +const Assignment& resolve(const Asn1Tree& tree, const Module& module, const std::string& reference) +{ + for (const Assignment& assignemnt : module.assignments) + { + if (assignemnt.name == reference) + { + return assignemnt; + } + } + + for (const Import& import : module.imports) + { + for (const std::string& imported_reference : import.imports) + { + if (imported_reference == reference) + { + return resolve(tree, import.module_reference, reference); + } + } + } + + throw std::runtime_error("Reference to undefined object: " + reference); +} + +const Assignment& resolve(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference) +{ + for (const Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return resolve(tree, module, reference); + } + } + throw std::runtime_error("Reference to undefined object: " + module_reference + "." + reference); +} + +const Assignment& resolve(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) +{ + const std::string& module_reference = + (defined.module_reference) ? *defined.module_reference : current_module_reference; + + for (const Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return resolve(tree, module, defined.type_reference); + } + } + throw std::runtime_error("Reference to undefined object: " + module_reference + "." + defined.type_reference); +} + +bool exists(const Asn1Tree& tree, const Module& module, const std::string& reference) +{ + for (const Assignment& assignemnt : module.assignments) + { + if (assignemnt.name == reference) + { + return true; + } + } + + for (const Import& import : module.imports) + { + for (const std::string& imported_reference : import.imports) + { + if (imported_reference == reference) + { + return exists(tree, import.module_reference, reference); + } + } + } + return false; +} + +bool exists(const Asn1Tree& tree, const std::string& module_reference, const std::string& reference) +{ + for (const Module& module : tree.modules) + { + if (module.module_reference == module_reference) + { + return exists(tree, module, reference); + } + } + return false; +} + +bool exists(const Asn1Tree& tree, const std::string& current_module_reference, const DefinedType& defined) +{ + const std::string& module_reference = + (defined.module_reference) ? *defined.module_reference : current_module_reference; + + return exists(tree, module_reference, defined.type_reference); +} + +bool is_type(const Assignment& assignment) { return absl::holds_alternative(assignment.specific); } +bool is_value(const Assignment& assignment) { return absl::holds_alternative(assignment.specific); } +bool is_object_class(const Assignment& assignment) +{ + return absl::holds_alternative(assignment.specific) || + absl::holds_alternative(assignment.specific); +} + +Type& type(Assignment& assignemnt) { return absl::get(assignemnt.specific).type; } +const Type& type(const Assignment& assignemnt) { return absl::get(assignemnt.specific).type; } + +ValueAssignment& value(Assignment& assignemnt) { return absl::get(assignemnt.specific); } +const ValueAssignment& value(const Assignment& assignemnt) { return absl::get(assignemnt.specific); } + +ObjectClassAssignment& object_class(Assignment& assignemnt) +{ + return absl::get(assignemnt.specific); +} +const ObjectClassAssignment& object_class(const Assignment& assignemnt) +{ + return absl::get(assignemnt.specific); +} + +bool is_a_parameter(const std::string& reference, const std::vector& parameters) +{ + auto parameter_match = [&](const Parameter& param) { return param.reference == reference; }; + + return std::find_if(parameters.begin(), parameters.end(), parameter_match) != parameters.end(); +} diff --git a/src/compiler/TypeAsString.cpp b/src/compiler/TypeAsString.cpp new file mode 100644 index 00000000..3ae4a9e3 --- /dev/null +++ b/src/compiler/TypeAsString.cpp @@ -0,0 +1,260 @@ +#include "fast_ber/compiler/TypeAsString.hpp" +#include "fast_ber/compiler/Identifier.hpp" +#include "fast_ber/compiler/ResolveType.hpp" + +static int unnamed_definition_reference_num = 0; + +std::string type_as_string(const AnyType&, const Module&, const Asn1Tree&) { return "Any"; } +std::string type_as_string(const BitStringType&, const Module&, const Asn1Tree&) { return "BitString"; } +std::string type_as_string(const BooleanType&, const Module&, const Asn1Tree&) { return "Boolean"; } +std::string type_as_string(const CharacterStringType&, const Module&, const Asn1Tree&) { return "CharacterString"; } +std::string type_as_string(const ChoiceType& choice, const Module& module, const Asn1Tree& tree) +{ + bool is_first = true; + std::string res = "Choice<"; + for (const auto& named_type : choice.choices) + { + if (!is_first) + res += ", "; + + if (is_sequence(named_type.type)) + { + res += "UnnamedSequence" + std::to_string(unnamed_definition_reference_num++); + } + else if (is_set(named_type.type)) + { + res += "UnnamedSet" + std::to_string(unnamed_definition_reference_num++); + } + else if (is_enumerated(named_type.type)) + { + return "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + else + { + res += fully_tagged_type(named_type.type, module, tree); + } + + is_first = false; + } + + res += ">"; + return res; +} +std::string type_as_string(const DateType&, const Module&, const Asn1Tree&) { return "Date"; } +std::string type_as_string(const DateTimeType&, const Module&, const Asn1Tree&) { return "DateTime"; } +std::string type_as_string(const DurationType&, const Module&, const Asn1Tree&) { return "Duration"; } +std::string type_as_string(const EmbeddedPDVType&, const Module&, const Asn1Tree&) { return "EmbeddedPDV"; } +std::string type_as_string(const EnumeratedType& enumerated, const Module&, const Asn1Tree&) +{ + std::string res = " {\n"; + for (const EnumerationValue& enum_value : enumerated.enum_values) + { + res += " " + enum_value.name; + if (enum_value.value) + { + res += " = " + std::to_string(*enum_value.value); + } + res += ",\n"; + } + res += "};\n\n"; + + return res; +} +std::string type_as_string(const ExternalType&, const Module&, const Asn1Tree&) { return "External"; } +std::string type_as_string(const GeneralizedTimeType&, const Module&, const Asn1Tree&) { return "GeneralizedTime"; } +std::string type_as_string(const InstanceOfType&, const Module&, const Asn1Tree&) { return "InstanceOf"; } +std::string type_as_string(const IntegerType&, const Module&, const Asn1Tree&) { return "Integer"; } +std::string type_as_string(const IRIType&, const Module&, const Asn1Tree&) { return "IRI"; } +std::string type_as_string(const NullType&, const Module&, const Asn1Tree&) { return "Null"; } +std::string type_as_string(const ObjectClassFieldType&, const Module&, const Asn1Tree&) +{ + throw std::runtime_error("ObjectClassFieldType is not serializable!"); +} +std::string type_as_string(const ObjectDescriptorType&, const Module&, const Asn1Tree&) { return "ObjectDescriptor"; } +std::string type_as_string(const ObjectIdentifierType&, const Module&, const Asn1Tree&) { return "ObjectIdentifier"; } +std::string type_as_string(const OctetStringType&, const Module&, const Asn1Tree&) { return "OctetString"; } +std::string type_as_string(const RealType&, const Module&, const Asn1Tree&) { return "Real"; } +std::string type_as_string(const RelativeIRIType&, const Module&, const Asn1Tree&) { return "RelativeIRI"; } +std::string type_as_string(const RelativeOIDType&, const Module&, const Asn1Tree&) { return "RelativeOID"; } +std::string type_as_string(const SequenceType& sequence, const Module& module, const Asn1Tree& tree) +{ + std::string res = " {\n"; + + for (const ComponentType& component : sequence.components) + { + std::string component_type = type_as_string(component.named_type.type, module, tree); + if (is_enumerated(component.named_type.type)) + { + component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + + if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) + { + res += "struct " + component.named_type.name + "_type " + component_type; + res += " " + component.named_type.name + "_type " + component.named_type.name + ";\n"; + } + else + { + if (component.is_optional) + { + component_type = make_type_optional(component_type); + } + res += " " + component_type + " " + component.named_type.name + ";\n"; + } + } + res += "};\n"; + + return res; +} +std::string type_as_string(const SequenceOfType& sequence, const Module& module, const Asn1Tree& tree) +{ + const Type& type = sequence.has_name ? sequence.named_type->type : *sequence.type; + + if (is_sequence(type)) + { + if (sequence.has_name) + { + return "SequenceOf<" + sequence.named_type->name + ">"; + } + return "SequenceOf"; + } + else if (is_set(type)) + { + if (sequence.has_name) + { + return "SequenceOf<" + sequence.named_type->name + ">"; + } + return "SequenceOf"; + } + else if (is_enumerated(type)) + { + if (sequence.has_name) + { + return "SequenceOf<" + sequence.named_type->name + ">"; + } + return "SequenceOf"; + } + else + { + return "SequenceOf<" + type_as_string(type, module, tree) + ">"; + } +} +std::string type_as_string(const SetType& set, const Module& module, const Asn1Tree& tree) +{ + std::string res = " {\n"; + + for (const ComponentType& component : set.components) + { + std::string component_type = type_as_string(component.named_type.type, module, tree); + if (is_enumerated(component.named_type.type)) + { + component_type = "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + + if (is_set(component.named_type.type) || is_sequence(component.named_type.type)) + { + res += " struct " + component.named_type.name + "_type " + component_type; + res += component.named_type.name + "_type " + component.named_type.name + ";\n"; + } + else + { + if (component.is_optional) + { + component_type = make_type_optional(component_type); + } + res += " " + component_type + " " + component.named_type.name + ";\n"; + } + } + res += "};\n"; + + return res; +} +std::string type_as_string(const SetOfType& set, const Module& module, const Asn1Tree& tree) +{ + const Type& type = set.has_name ? set.named_type->type : *set.type; + + if (is_sequence(type)) + { + if (set.has_name) + { + return "SequenceOf<" + set.named_type->name + ">"; + } + return "SequenceOf"; + } + else if (is_set(type)) + { + if (set.has_name) + { + return "SequenceOf<" + set.named_type->name + ">"; + } + return "SequenceOf"; + } + else if (is_enumerated(type)) + { + if (set.has_name) + { + return "SequenceOf<" + set.named_type->name + ">"; + } + return "SequenceOf"; + } + else + { + return "SequenceOf<" + type_as_string(type, module, tree) + ">"; + } +} +std::string type_as_string(const PrefixedType& prefixed_type, const Module& module, const Asn1Tree& tree) +{ + if (is_sequence(prefixed_type.tagged_type->type)) + { + return "UnnamedSequence" + std::to_string(unnamed_definition_reference_num++); + } + else if (is_set(prefixed_type.tagged_type->type)) + { + return "UnnamedSet" + std::to_string(unnamed_definition_reference_num++); + } + else if (is_enumerated(prefixed_type.tagged_type->type)) + { + return "UnnamedEnum" + std::to_string(unnamed_definition_reference_num++); + } + return type_as_string(prefixed_type.tagged_type->type, module, tree); +} +std::string type_as_string(const TimeType&, const Module&, const Asn1Tree&) { return "Time"; } +std::string type_as_string(const TimeOfDayType&, const Module&, const Asn1Tree&) { return "TimeOfDay"; } +std::string type_as_string(const UTCTimeType&, const Module&, const Asn1Tree&) { return "UTCTime"; } + +std::string type_as_string(const DefinedType& type, const Module& module, const Asn1Tree& tree) +{ + if (!type.parameters.empty()) + { + std::set parameter_types; + for (const Type& paramter : type.parameters) + { + parameter_types.insert(type_as_string(paramter, module, tree)); + } + return type.type_reference + create_template_arguments(parameter_types); + } + return type.type_reference; +} + +struct ToStringHelper +{ + template + std::string operator()(const T& t) + { + return type_as_string(t, module, tree); + } + + const Module& module; + const Asn1Tree& tree; +}; + +std::string type_as_string(const BuiltinType& type, const Module& module, const Asn1Tree& tree) +{ + ToStringHelper string_helper{module, tree}; + return absl::visit(string_helper, type); +} +std::string type_as_string(const Type& type, const Module& module, const Asn1Tree& tree) +{ + ToStringHelper string_helper{module, tree}; + return absl::visit(string_helper, type); +} From e4e5887bdba3e8d048053c61f550691b4b7d0011 Mon Sep 17 00:00:00 2001 From: Sam Date: Mon, 3 Jun 2019 19:50:59 +0100 Subject: [PATCH 17/31] Avoid warning of unused parameter in empty sequences --- src/compiler/CompilerMain.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/compiler/CompilerMain.cpp b/src/compiler/CompilerMain.cpp index 80729467..713af473 100644 --- a/src/compiler/CompilerMain.cpp +++ b/src/compiler/CompilerMain.cpp @@ -229,6 +229,7 @@ create_collection_encode_functions(const std::string assignment_name, const std: res += "namespace " + tags_class + " {\n"; int tag_counter = 0; + for (const ComponentType& component : collection.components) { res += "static constexpr auto " + component.named_type.name + " = "; @@ -275,6 +276,12 @@ create_collection_encode_functions(const std::string assignment_name, const std: res += "inline EncodeResult encode(absl::Span output, const " + module.module_reference + "::" + assignment_name + create_template_arguments(parameters) + "& input, const ID& id = ID{}) noexcept\n{\n"; + + if (collection.components.size() == 0) + { + res += " (void)input;\n"; + } + res += " return encode_sequence_combine(output, id"; for (const ComponentType& component : collection.components) { @@ -300,6 +307,12 @@ std::string create_collection_decode_functions(const std::string ass res += create_template_definition(template_args); res += "inline DecodeResult decode(const BerView& input, " + module.module_reference + "::" + assignment_name + create_template_arguments(parameters) + "& output, const ID& id = ID{}) noexcept\n{\n"; + + if (collection.components.size() == 0) + { + res += " (void)output;\n"; + } + res += " return decode_" + collection_name(collection) + "_combine(input, \"" + module.module_reference + "::" + assignment_name + "\", id"; for (const ComponentType& component : collection.components) @@ -393,6 +406,13 @@ std::string create_collection_equality_operators(const CollectionType& collectio res += "const " + parameterized_name + "& lhs, "; res += "const " + parameterized_name + "& rhs)\n"; res += "{\n"; + + if (collection.components.size() == 0) + { + res += " (void)lhs;\n"; + res += " (void)rhs;\n"; + } + res += " return true"; for (const ComponentType& component : collection.components) { From 22ca5c2eaa62adb54198b3bfda1d20386aea6578 Mon Sep 17 00:00:00 2001 From: Sam Date: Mon, 3 Jun 2019 20:13:22 +0100 Subject: [PATCH 18/31] Simplify identifier logic --- src/compiler/Identifier.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/compiler/Identifier.cpp b/src/compiler/Identifier.cpp index 2664f4a5..f8e25e12 100644 --- a/src/compiler/Identifier.cpp +++ b/src/compiler/Identifier.cpp @@ -1,4 +1,5 @@ #include "fast_ber/compiler/Identifier.hpp" +#include "fast_ber/compiler/ResolveType.hpp" TaggingInfo identifier(const AnyType&, const Module&, const Asn1Tree&) { @@ -180,14 +181,10 @@ std::string fully_tagged_type(const Type& type, const Module& current_module, co return "TaggedType<" + type_as_string(type, current_module, tree) + ", " + tagging_info.tag + ">"; } -TaggingInfo identifier(const DefinedType& defined, const Module& current_module, const Asn1Tree&) +TaggingInfo identifier(const DefinedType& defined, const Module& current_module, const Asn1Tree& tree) { - const std::string& module_ref = - (defined.module_reference) ? *defined.module_reference : current_module.module_reference; - const std::string& type_string = - "decltype(identifier(static_cast<" + module_ref + "::" + defined.type_reference + "*>(nullptr)))"; - - return {type_string, true}; + const Type& resolved_type = type(resolve(tree, current_module.module_reference, defined)); + return identifier(resolved_type, current_module, tree); } TaggingInfo identifier(const BuiltinType& type, const Module& current_module, const Asn1Tree& tree) { From 2e68433030c9faa0998806c431a37597681091b3 Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 5 Jun 2019 20:29:32 +0100 Subject: [PATCH 19/31] Resolve parameters prior to compilation --- include/fast_ber/ber_types/Real.hpp | 7 + include/fast_ber/compiler/CompilerTypes.hpp | 25 ++- include/fast_ber/compiler/CppGeneration.hpp | 4 +- include/fast_ber/compiler/Parameters.hpp | 31 +++ src/compiler/CompilerMain.cpp | 61 +++--- src/compiler/CompilerTypes.cpp | 56 +++-- src/compiler/CppGeneration.cpp | 4 +- src/compiler/ObjectClass.cpp | 37 +--- src/compiler/Parameters.cpp | 226 ++++++++++++++++++++ src/compiler/ReorderAssignments.cpp | 10 +- src/compiler/TypeAsString.cpp | 15 +- src/compiler/asn_compiler.yacc | 24 +-- src/compiler/autogen_copy/asn_compiler.hpp | 24 +-- test/compiler/ParameterizedTypesTest.cpp | 4 +- testfiles/parameterized_types.asn | 9 +- 15 files changed, 383 insertions(+), 154 deletions(-) create mode 100644 include/fast_ber/compiler/Parameters.hpp create mode 100644 src/compiler/Parameters.cpp diff --git a/include/fast_ber/ber_types/Real.hpp b/include/fast_ber/ber_types/Real.hpp index 41ef1aa7..6a67720f 100644 --- a/include/fast_ber/ber_types/Real.hpp +++ b/include/fast_ber/ber_types/Real.hpp @@ -27,6 +27,13 @@ class Real size_t assign_ber(const BerView& rhs) noexcept; size_t assign_ber(absl::Span buffer) noexcept; + bool operator==(const Real&) const + { + // TODO: fuzzy equality here + return true; + } + bool operator!=(const Real& rhs) const { return !(*this == rhs); } + EncodeResult encode_content_and_length(absl::Span buffer) const noexcept; private: diff --git a/include/fast_ber/compiler/CompilerTypes.hpp b/include/fast_ber/compiler/CompilerTypes.hpp index 4a7248e7..8fac9fa7 100644 --- a/include/fast_ber/compiler/CompilerTypes.hpp +++ b/include/fast_ber/compiler/CompilerTypes.hpp @@ -177,17 +177,27 @@ struct DefinedType }; struct SequenceOfType { - // Shared pointers used to prevent circular references + // Unique pointers used to prevent circular references bool has_name; - std::shared_ptr named_type; - std::shared_ptr type; + std::unique_ptr named_type; + std::unique_ptr type; + + SequenceOfType() = default; + SequenceOfType(bool, std::unique_ptr&&, std::unique_ptr&&); + SequenceOfType(const SequenceOfType& rhs); + SequenceOfType& operator=(const SequenceOfType& rhs); }; struct SetOfType { - // Shared pointers used to prevent circular references + // Unique pointers used to prevent circular references bool has_name; - std::shared_ptr named_type; - std::shared_ptr type; + std::unique_ptr named_type; + std::unique_ptr type; + + SetOfType() = default; + SetOfType(bool, std::unique_ptr&&, std::unique_ptr&&); + SetOfType(const SetOfType& rhs); + SetOfType& operator=(const SetOfType& rhs); }; struct ChoiceType @@ -407,7 +417,4 @@ bool is_integer(const Type& type); bool is_oid(const Type& type); bool is_defined(const Type& type); -std::string create_template_definition(const std::vector& parameters); -std::string create_template_arguments(const std::vector& parameters); - struct Context; diff --git a/include/fast_ber/compiler/CppGeneration.hpp b/include/fast_ber/compiler/CppGeneration.hpp index 30cc85d8..51c1cd9f 100644 --- a/include/fast_ber/compiler/CppGeneration.hpp +++ b/include/fast_ber/compiler/CppGeneration.hpp @@ -6,8 +6,8 @@ std::string create_include(const std::string& path); -std::string create_template_definition(const std::set& types); +std::string create_template_definition(const std::vector& types); -std::string create_template_arguments(const std::set& types); +std::string create_template_arguments(const std::vector& types); std::string add_namespace(const std::string& name, const std::string& enclosed); diff --git a/include/fast_ber/compiler/Parameters.hpp b/include/fast_ber/compiler/Parameters.hpp new file mode 100644 index 00000000..ab962135 --- /dev/null +++ b/include/fast_ber/compiler/Parameters.hpp @@ -0,0 +1,31 @@ +#pragma once + +#include "fast_ber/compiler/CompilerTypes.hpp" + +using ParameterTypes = std::unordered_map; + +void resolve_parameterized(const Asn1Tree&, const Module&, Type&, const ParameterTypes&); +void resolve_parameterized(const Asn1Tree&, const Module&, ChoiceType&, const ParameterTypes&); +void resolve_parameterized(const Asn1Tree&, const Module&, SequenceType&, const ParameterTypes&); +void resolve_parameterized(const Asn1Tree&, const Module&, SequenceOfType&, const ParameterTypes&); +void resolve_parameterized(const Asn1Tree&, const Module&, SetType&, const ParameterTypes&); +void resolve_parameterized(const Asn1Tree&, const Module&, SetOfType&, const ParameterTypes&); +void resolve_parameterized(const Asn1Tree&, const Module&, PrefixedType&, const ParameterTypes&); +void resolve_parameterized(const Asn1Tree&, const Module&, BuiltinType&, const ParameterTypes&); +void resolve_parameterized(const Asn1Tree&, const Module&, Type&, const ParameterTypes&); + +void parameterized_to_concrete(const Asn1Tree&, const Module&, Type&); +void parameterized_to_concrete(const Asn1Tree&, const Module&, ChoiceType&); +void parameterized_to_concrete(const Asn1Tree&, const Module&, SequenceType&); +void parameterized_to_concrete(const Asn1Tree&, const Module&, SequenceOfType&); +void parameterized_to_concrete(const Asn1Tree&, const Module&, SetType&); +void parameterized_to_concrete(const Asn1Tree&, const Module&, SetOfType&); +void parameterized_to_concrete(const Asn1Tree&, const Module&, PrefixedType&); +void parameterized_to_concrete(const Asn1Tree&, const Module&, BuiltinType&); +void parameterized_to_concrete(const Asn1Tree&, const Module&, Type&); + +void remove_parameter_templates(Asn1Tree&); + +// Convert usage of object classes to standard ASN.1 types +void resolve_parameter(Asn1Tree&, Module&, DefinedType&, const Assignment&); +void resolve_parameters(Asn1Tree&); diff --git a/src/compiler/CompilerMain.cpp b/src/compiler/CompilerMain.cpp index 713af473..789294df 100644 --- a/src/compiler/CompilerMain.cpp +++ b/src/compiler/CompilerMain.cpp @@ -1,9 +1,10 @@ -#include "autogen/asn_compiler.hpp" +#include "autogen/asn_compiler.hpp" #include "fast_ber/compiler/CompilerTypes.hpp" #include "fast_ber/compiler/CppGeneration.hpp" #include "fast_ber/compiler/Dependencies.hpp" #include "fast_ber/compiler/Identifier.hpp" #include "fast_ber/compiler/ObjectClass.hpp" +#include "fast_ber/compiler/Parameters.hpp" #include "fast_ber/compiler/ReorderAssignments.hpp" #include "fast_ber/compiler/ResolveType.hpp" #include "fast_ber/compiler/TypeAsString.hpp" @@ -40,9 +41,7 @@ std::string create_type_assignment(const std::string& name, const Type& type, co std::string create_type_assignment(const Assignment& assignment, const Module& module, const Asn1Tree& tree) { - const std::string& template_definition = create_template_definition(assignment.parameters); - return template_definition + - create_type_assignment(assignment.name, absl::get(assignment.specific).type, module, tree) + + return create_type_assignment(assignment.name, absl::get(assignment.specific).type, module, tree) + "\n"; } @@ -182,8 +181,7 @@ std::string create_assignment(const Asn1Tree& tree, const Module& module, const std::string create_identifier_functions(const Assignment& assignment, const std::string& module_name) { - std::string full_assignment_name = assignment.name + create_template_arguments(assignment.parameters); - std::string res = create_template_definition(assignment.parameters); + std::string res; if (absl::holds_alternative(assignment.specific)) { @@ -194,7 +192,7 @@ std::string create_identifier_functions(const Assignment& assignment, const std: const std::string tags_class = assignment.name + "Tags"; res += "constexpr inline ExplicitIdentifier identifier(const fast_ber::" + - module_name + "::" + full_assignment_name + "*) noexcept"; + module_name + "::" + assignment.name + "*) noexcept"; res += "\n{\n"; res += " return {};\n"; res += "}\n\n"; @@ -202,7 +200,7 @@ std::string create_identifier_functions(const Assignment& assignment, const std: } else if (is_set(type_assign.type)) { - const std::string tags_class = full_assignment_name + "Tags"; + const std::string tags_class = assignment.name + "Tags"; res += "constexpr inline ExplicitIdentifier identifier(const fast_ber::" + module_name + "::" + assignment.name + "*) noexcept"; @@ -268,14 +266,11 @@ create_collection_encode_functions(const std::string assignment_name, const std: } } - std::vector template_args = parameters; - template_args.push_back( - Parameter{{}, "ID = ExplicitIdentifier"}); - + std::vector template_args = {"ID = ExplicitIdentifier"}; res += create_template_definition(template_args); res += "inline EncodeResult encode(absl::Span output, const " + module.module_reference + - "::" + assignment_name + create_template_arguments(parameters) + - "& input, const ID& id = ID{}) noexcept\n{\n"; + "::" + assignment_name + "& input, const ID& id = ID{}) noexcept\n{\n"; if (collection.components.size() == 0) { @@ -301,12 +296,12 @@ std::string create_collection_decode_functions(const std::string ass std::string tags_class = module.module_reference + "_" + assignment_name + "Tags"; std::replace(tags_class.begin(), tags_class.end(), ':', '_'); - std::vector template_args = parameters; - template_args.push_back({{}, "ID = ExplicitIdentifier"}); + std::vector template_args = {"ID = ExplicitIdentifier"}; res += create_template_definition(template_args); res += "inline DecodeResult decode(const BerView& input, " + module.module_reference + "::" + assignment_name + - create_template_arguments(parameters) + "& output, const ID& id = ID{}) noexcept\n{\n"; + "& output, const ID& id = ID{}) noexcept\n{\n"; if (collection.components.size() == 0) { @@ -343,7 +338,7 @@ std::string create_collection_decode_functions(const std::string ass res += create_template_definition(template_args); res += "inline DecodeResult decode(BerViewIterator& input, " + module.module_reference + "::" + assignment_name + - create_template_arguments(parameters) + "& output, const ID& id = ID{}) noexcept\n{\n"; + "& output, const ID& id = ID{}) noexcept\n{\n"; res += " DecodeResult result = decode(*input, output, id);\n"; res += " ++input;\n"; res += " return result;\n"; @@ -394,17 +389,15 @@ std::string create_decode_functions(const Assignment& assignment, const Module& } template -std::string create_collection_equality_operators(const CollectionType& collection, const std::string& name, - const std::vector& parameters) +std::string create_collection_equality_operators(const CollectionType& collection, const std::string& name) { const std::string tags_class = name + "Tags"; - const std::string parameterized_name = name + create_template_arguments(parameters); - std::string res; - res += create_template_definition(parameters); + std::string res; + res += "bool operator==("; - res += "const " + parameterized_name + "& lhs, "; - res += "const " + parameterized_name + "& rhs)\n"; + res += "const " + name + "& lhs, "; + res += "const " + name + "& rhs)\n"; res += "{\n"; if (collection.components.size() == 0) @@ -421,10 +414,9 @@ std::string create_collection_equality_operators(const CollectionType& collectio } res += ";\n}\n\n"; - res += create_template_definition(parameters); res += "bool operator!=("; - res += "const " + parameterized_name + "& lhs, "; - res += "const " + parameterized_name + "& rhs)\n"; + res += "const " + name + "& lhs, "; + res += "const " + name + "& rhs)\n"; res += "{\n"; res += " return !(lhs == rhs);\n}\n\n"; @@ -435,14 +427,14 @@ std::string create_collection_equality_operators(const CollectionType& collectio if (is_sequence(component.named_type.type)) { const SequenceType& sequence = absl::get(absl::get(component.named_type.type)); - child_equality += create_collection_equality_operators( - sequence, name + "::" + component.named_type.name + "_type", parameters); + child_equality += + create_collection_equality_operators(sequence, name + "::" + component.named_type.name + "_type"); } else if (is_set(component.named_type.type)) { const SetType& set = absl::get(absl::get(component.named_type.type)); - child_equality += create_collection_equality_operators( - set, name + "::" + component.named_type.name + "_type", parameters); + child_equality += + create_collection_equality_operators(set, name + "::" + component.named_type.name + "_type"); } } return child_equality + res; @@ -457,12 +449,12 @@ std::string create_helper_functions(const Assignment& assignment) if (is_sequence(type_assignment.type)) { const SequenceType& sequence = absl::get(absl::get(type_assignment.type)); - return create_collection_equality_operators(sequence, assignment.name, assignment.parameters); + return create_collection_equality_operators(sequence, assignment.name); } else if (is_set(type_assignment.type)) { const SetType& set = absl::get(absl::get(type_assignment.type)); - return create_collection_equality_operators(set, assignment.name, assignment.parameters); + return create_collection_equality_operators(set, assignment.name); } else if (is_enumerated(type_assignment.type)) { @@ -615,6 +607,7 @@ int main(int argc, char** argv) return -1; } + resolve_parameters(context.asn1_tree); context.asn1_tree.modules = reorder_modules(context.asn1_tree.modules); for (auto& module : context.asn1_tree.modules) diff --git a/src/compiler/CompilerTypes.cpp b/src/compiler/CompilerTypes.cpp index 252c8e48..8185fe96 100644 --- a/src/compiler/CompilerTypes.cpp +++ b/src/compiler/CompilerTypes.cpp @@ -1,5 +1,39 @@ #include "fast_ber/compiler/CompilerTypes.hpp" +SetOfType::SetOfType(bool a, std::unique_ptr&& b, std::unique_ptr&& c) + : has_name(a), named_type(std::move(b)), type(std::move(c)) +{ +} +SetOfType::SetOfType(const SetOfType& rhs) + : has_name(rhs.has_name), named_type(rhs.named_type ? new NamedType(*rhs.named_type) : nullptr), + type(rhs.type ? new Type(*rhs.type) : nullptr) +{ +} +SetOfType& SetOfType::operator=(const SetOfType& rhs) +{ + has_name = rhs.has_name; + named_type = rhs.named_type ? std::unique_ptr(new NamedType(*rhs.named_type)) : nullptr; + type = rhs.type ? std::unique_ptr(new Type(*rhs.type)) : nullptr; + return *this; +} +SequenceOfType::SequenceOfType(bool a, std::unique_ptr&& b, std::unique_ptr&& c) + : has_name(a), named_type(std::move(b)), type(std::move(c)) +{ +} +SequenceOfType::SequenceOfType(const SequenceOfType& rhs) + : has_name(rhs.has_name), + named_type(rhs.named_type ? std::unique_ptr(new NamedType(*rhs.named_type)) : nullptr), + type(rhs.type ? new Type(*rhs.type) : nullptr) +{ +} +SequenceOfType& SequenceOfType::operator=(const SequenceOfType& rhs) +{ + has_name = rhs.has_name; + named_type = rhs.named_type ? std::unique_ptr(new NamedType(*rhs.named_type)) : nullptr; + type = rhs.type ? std::unique_ptr(new Type(*rhs.type)) : nullptr; + return *this; +} + static const std::unordered_set reserved_keywords = {"alignas", "alignof", "and", @@ -192,25 +226,3 @@ bool is_oid(const Type& type) } bool is_defined(const Type& type) { return absl::holds_alternative(type); } - -std::string create_template_definition(const std::vector& parameters) -{ - std::set param_set; - for (const Parameter& parameter : parameters) - { - param_set.insert(parameter.reference); - } - - return create_template_definition(param_set); -} - -std::string create_template_arguments(const std::vector& parameters) -{ - std::set param_set; - for (const Parameter& parameter : parameters) - { - param_set.insert(parameter.reference); - } - - return create_template_arguments(param_set); -} diff --git a/src/compiler/CppGeneration.cpp b/src/compiler/CppGeneration.cpp index 82a01b53..2ba3dedd 100644 --- a/src/compiler/CppGeneration.cpp +++ b/src/compiler/CppGeneration.cpp @@ -2,7 +2,7 @@ std::string create_include(const std::string& path) { return "#include \"" + path + "\"\n"; } -std::string create_template_definition(const std::set& types) +std::string create_template_definition(const std::vector& types) { if (types.empty()) { @@ -25,7 +25,7 @@ std::string create_template_definition(const std::set& types) return definition; } -std::string create_template_arguments(const std::set& types) +std::string create_template_arguments(const std::vector& types) { if (types.empty()) { diff --git a/src/compiler/ObjectClass.cpp b/src/compiler/ObjectClass.cpp index fef4e03e..9124416c 100644 --- a/src/compiler/ObjectClass.cpp +++ b/src/compiler/ObjectClass.cpp @@ -206,29 +206,6 @@ std::set get_object_class_names(const Asn1Tree& tree) { for (const Assignment& assignment : module.assignments) { - if (is_type(assignment) || is_value(assignment)) - { - for (const Parameter& parameter : assignment.parameters) - { - if (parameter.governor) - { - if (is_defined(*parameter.governor)) - { - const DefinedType& defined = absl::get(*parameter.governor); - const Assignment& inner_assignment = resolve(tree, module.module_reference, defined); - if (is_object_class(inner_assignment)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); - } - else if (is_defined_object_class(*defined.module_reference, defined.type_reference, - object_class_names)) - { - object_class_names.insert(module.module_reference + "." + assignment.name); - } - } - } - } - } if (is_type(assignment) && is_defined(type(assignment))) { const DefinedType& defined = absl::get(type(assignment)); @@ -298,18 +275,8 @@ void resolve_object_classes(Asn1Tree& tree) { if (absl::holds_alternative(assignment.specific)) { - bool skip = false; - for (const Parameter& parameter : assignment.parameters) - { - if (parameter.governor) - { - skip = true; - } - } - if (!skip) - { - object_class_to_concrete(tree, module, absl::get(assignment.specific).type); - } + + object_class_to_concrete(tree, module, absl::get(assignment.specific).type); } } } diff --git a/src/compiler/Parameters.cpp b/src/compiler/Parameters.cpp new file mode 100644 index 00000000..536db08d --- /dev/null +++ b/src/compiler/Parameters.cpp @@ -0,0 +1,226 @@ +#include "fast_ber/compiler/Parameters.hpp" +#include "fast_ber/compiler/ResolveType.hpp" + +void resolve_parameterized(const Asn1Tree& tree, const Module& module, ChoiceType& choice, + const ParameterTypes& parameters) +{ + for (NamedType& named_type : choice.choices) + { + resolve_parameterized(tree, module, named_type.type, parameters); + } +} +void resolve_parameterized(const Asn1Tree& tree, const Module& module, SequenceType& sequence, + const ParameterTypes& parameters) +{ + for (ComponentType& component : sequence.components) + { + resolve_parameterized(tree, module, component.named_type.type, parameters); + } +} +void resolve_parameterized(const Asn1Tree& tree, const Module& module, SequenceOfType& sequence, + const ParameterTypes& parameters) +{ + Type& type = sequence.has_name ? sequence.named_type->type : *sequence.type; + resolve_parameterized(tree, module, type, parameters); +} +void resolve_parameterized(const Asn1Tree& tree, const Module& module, SetType& set, const ParameterTypes& parameters) +{ + for (ComponentType& component : set.components) + { + resolve_parameterized(tree, module, component.named_type.type, parameters); + } +} +void resolve_parameterized(const Asn1Tree& tree, const Module& module, SetOfType& set, const ParameterTypes& parameters) +{ + Type& type = set.has_name ? set.named_type->type : *set.type; + resolve_parameterized(tree, module, type, parameters); +} +void resolve_parameterized(const Asn1Tree& tree, const Module& module, PrefixedType& prefixed_type, + const ParameterTypes& parameters) +{ + resolve_parameterized(tree, module, prefixed_type.tagged_type->type, parameters); +} + +void resolve_parameterized(const Asn1Tree& tree, const Module& module, BuiltinType& type, + const ParameterTypes& parameters) +{ + if (absl::holds_alternative(type)) + { + resolve_parameterized(tree, module, absl::get(type), parameters); + } + else if (absl::holds_alternative(type)) + { + resolve_parameterized(tree, module, absl::get(type), parameters); + } + else if (absl::holds_alternative(type)) + { + resolve_parameterized(tree, module, absl::get(type), parameters); + } + else if (absl::holds_alternative(type)) + { + resolve_parameterized(tree, module, absl::get(type), parameters); + } + else if (absl::holds_alternative(type)) + { + resolve_parameterized(tree, module, absl::get(type), parameters); + } + else if (absl::holds_alternative(type)) + { + resolve_parameterized(tree, module, absl::get(type), parameters); + } +} + +void resolve_parameterized(const Asn1Tree& tree, const Module& module, Type& param_type, + const ParameterTypes& parameters) +{ + if (absl::holds_alternative(param_type)) + { + const DefinedType& defined = absl::get(param_type); + if (defined.parameters.size() > 0) + { + throw std::runtime_error("Nested parameters!"); + } + else if (!defined.module_reference) + { + if (parameters.count(defined.type_reference) > 0) + { + param_type = parameters.find(defined.type_reference)->second; + return; + } + } + + // param_type = type(resolve(tree, module.module_reference, defined)); + // resolve_parameterized(tree, module, param_type, parameters); + } + else if (absl::holds_alternative(param_type)) + { + resolve_parameterized(tree, module, absl::get(param_type), parameters); + } +} + +void parameterized_to_concrete(const Asn1Tree& tree, const Module& module, ChoiceType& choice) +{ + for (NamedType& named_type : choice.choices) + { + parameterized_to_concrete(tree, module, named_type.type); + } +} +void parameterized_to_concrete(const Asn1Tree& tree, const Module& module, SequenceType& sequence) +{ + for (ComponentType& component : sequence.components) + { + parameterized_to_concrete(tree, module, component.named_type.type); + } +} +void parameterized_to_concrete(const Asn1Tree& tree, const Module& module, SequenceOfType& sequence) +{ + Type& type = sequence.has_name ? sequence.named_type->type : *sequence.type; + parameterized_to_concrete(tree, module, type); +} +void parameterized_to_concrete(const Asn1Tree& tree, const Module& module, SetType& set) +{ + for (ComponentType& component : set.components) + { + parameterized_to_concrete(tree, module, component.named_type.type); + } +} +void parameterized_to_concrete(const Asn1Tree& tree, const Module& module, SetOfType& set) +{ + Type& type = set.has_name ? set.named_type->type : *set.type; + parameterized_to_concrete(tree, module, type); +} +void parameterized_to_concrete(const Asn1Tree& tree, const Module& module, PrefixedType& prefixed_type) +{ + parameterized_to_concrete(tree, module, prefixed_type.tagged_type->type); +} + +void parameterized_to_concrete(const Asn1Tree& tree, const Module& module, BuiltinType& type) +{ + if (absl::holds_alternative(type)) + { + parameterized_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + parameterized_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + parameterized_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + parameterized_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + parameterized_to_concrete(tree, module, absl::get(type)); + } + else if (absl::holds_alternative(type)) + { + parameterized_to_concrete(tree, module, absl::get(type)); + } +} + +void parameterized_to_concrete(const Asn1Tree& tree, const Module& module, Type& param_type) +{ + if (absl::holds_alternative(param_type)) + { + const DefinedType& defined = absl::get(param_type); + if (defined.parameters.size() > 0) + { + const Assignment& parameter_template = resolve(tree, module.module_reference, defined); + if (parameter_template.parameters.size() != defined.parameters.size()) + { + throw std::runtime_error("Invalid number of parameters for parameterized assignment, expected " + + std::to_string(defined.parameters.size()) + " got " + + std::to_string(defined.parameters.size())); + } + + std::unordered_map new_parameters; + for (size_t i = 0; i < parameter_template.parameters.size(); i++) + { + new_parameters[parameter_template.parameters[i].reference] = defined.parameters[i]; + } + + param_type = type(parameter_template); + resolve_parameterized(tree, module, param_type, new_parameters); + return; + } + } + else if (absl::holds_alternative(param_type)) + { + parameterized_to_concrete(tree, module, absl::get(param_type)); + } +} + +void remove_parameter_templates(Asn1Tree& tree) +{ + for (Module& module : tree.modules) + { + module.assignments.erase( + std::remove_if(module.assignments.begin(), module.assignments.end(), + [&](const Assignment& assignment) { return assignment.parameters.size() > 0; }), + module.assignments.end()); + } +} + +// Convert usage of parameterized types into standard ASN.1 types +void resolve_parameters(Asn1Tree& tree) +{ + for (Module& module : tree.modules) + { + for (Assignment& assignment : module.assignments) + { + if (absl::holds_alternative(assignment.specific)) + { + if (assignment.parameters.size() == 0) + { + parameterized_to_concrete(tree, module, type(assignment)); + } + } + } + } + + remove_parameter_templates(tree); +} diff --git a/src/compiler/ReorderAssignments.cpp b/src/compiler/ReorderAssignments.cpp index 08263719..98ab8e5b 100644 --- a/src/compiler/ReorderAssignments.cpp +++ b/src/compiler/ReorderAssignments.cpp @@ -171,15 +171,7 @@ std::vector reorder_assignments(std::vector& assignments assignment_map.reserve(assignments.size()); for (Assignment& assignment : assignments) { - assignment.depends_on = dependencies(assignment); - // Any parameterized references are already defined and do not need to be resolved, - // Therefore remove any names which are defined as parameters from dependancy list - assignment.depends_on.erase(std::remove_if(assignment.depends_on.begin(), assignment.depends_on.end(), - [&assignment](const std::string& dependancy) { - return is_a_parameter(dependancy, assignment.parameters); - }), - assignment.depends_on.end()); - + assignment.depends_on = dependencies(assignment); assignment_map[assignment.name] = assignment; } diff --git a/src/compiler/TypeAsString.cpp b/src/compiler/TypeAsString.cpp index 3ae4a9e3..a10256fd 100644 --- a/src/compiler/TypeAsString.cpp +++ b/src/compiler/TypeAsString.cpp @@ -221,20 +221,7 @@ std::string type_as_string(const PrefixedType& prefixed_type, const Module& modu std::string type_as_string(const TimeType&, const Module&, const Asn1Tree&) { return "Time"; } std::string type_as_string(const TimeOfDayType&, const Module&, const Asn1Tree&) { return "TimeOfDay"; } std::string type_as_string(const UTCTimeType&, const Module&, const Asn1Tree&) { return "UTCTime"; } - -std::string type_as_string(const DefinedType& type, const Module& module, const Asn1Tree& tree) -{ - if (!type.parameters.empty()) - { - std::set parameter_types; - for (const Type& paramter : type.parameters) - { - parameter_types.insert(type_as_string(paramter, module, tree)); - } - return type.type_reference + create_template_arguments(parameter_types); - } - return type.type_reference; -} +std::string type_as_string(const DefinedType& type, const Module&, const Asn1Tree&) { return type.type_reference; } struct ToStringHelper { diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index e9115aa6..716f66a6 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -1242,9 +1242,9 @@ ComponentValueList: SequenceOfType: SEQUENCE OF Type - { $$ = SequenceOfType{ false, nullptr, std::make_shared($3) }; } + { $$ = SequenceOfType{ false, nullptr, std::unique_ptr(new Type($3)) }; } | SEQUENCE OF NamedType - { $$ = SequenceOfType{ true, std::make_shared($3), nullptr }; } + { $$ = SequenceOfType{ true, std::unique_ptr(new NamedType($3)), nullptr }; } SetType: SET "{" "}" @@ -1254,9 +1254,9 @@ SetType: SetOfType: SET OF Type - { $$ = SetOfType{ false, nullptr, std::make_shared($3) }; } + { $$ = SetOfType{ false, nullptr, std::unique_ptr(new Type($3)) }; } | SET OF NamedType - { $$ = SetOfType{ true, std::make_shared($3), nullptr }; } + { $$ = SetOfType{ true, std::unique_ptr(new NamedType($3)), nullptr }; } ChoiceType: CHOICE "{" AlternativeTypeLists "}" @@ -1463,21 +1463,21 @@ ConstrainedType: TypeWithConstraint: SET Constraint OF Type - { $$ = SetOfType{ false, nullptr, std::make_shared($4) }; } + { $$ = SetOfType{ false, nullptr, std::unique_ptr(new Type($4)) }; } | SET SizeConstraint OF Type - { $$ = SetOfType{ false, nullptr, std::make_shared($4) }; } + { $$ = SetOfType{ false, nullptr, std::unique_ptr(new Type($4)) }; } | SEQUENCE Constraint OF Type - { $$ = SequenceOfType{ false, nullptr, std::make_shared($4) }; } + { $$ = SequenceOfType{ false, nullptr, std::unique_ptr(new Type($4)) }; } | SEQUENCE SizeConstraint OF Type - { $$ = SequenceOfType{ false, nullptr, std::make_shared($4) }; } + { $$ = SequenceOfType{ false, nullptr, std::unique_ptr(new Type($4)) }; } | SET Constraint OF NamedType - { $$ = SetOfType{ true, std::make_shared($4), nullptr }; } + { $$ = SetOfType{ true, std::unique_ptr(new NamedType($4)), nullptr }; } | SET SizeConstraint OF NamedType - { $$ = SetOfType{ true, std::make_shared($4), nullptr }; } + { $$ = SetOfType{ true, std::unique_ptr(new NamedType($4)), nullptr }; } | SEQUENCE Constraint OF NamedType - { $$ = SequenceOfType{ true, std::make_shared($4), nullptr }; } + { $$ = SequenceOfType{ true, std::unique_ptr(new NamedType($4)), nullptr }; } | SEQUENCE SizeConstraint OF NamedType - { $$ = SequenceOfType{ true, std::make_shared($4), nullptr }; } + { $$ = SequenceOfType{ true, std::unique_ptr(new NamedType($4)), nullptr }; } Constraint: "(" ConstraintSpec ExceptionSpec ")"; diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index a1ee8a41..393c9570 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -7413,13 +7413,13 @@ namespace yy { case 332: #line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } #line 7416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 333: #line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } #line 7422 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -7437,13 +7437,13 @@ namespace yy { case 336: #line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } #line 7440 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 337: #line 1259 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< SetOfType > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< SetOfType > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } #line 7446 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; @@ -7623,49 +7623,49 @@ namespace yy { case 406: #line 1466 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } #line 7626 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 407: #line 1468 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } #line 7632 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 408: #line 1470 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } #line 7638 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 409: #line 1472 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::make_shared(yystack_[0].value.as< Type > ()) }; } + { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } #line 7644 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 410: #line 1474 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< Type > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } #line 7650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 411: #line 1476 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SetOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< Type > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } #line 7656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 412: #line 1478 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< Type > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } #line 7662 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 413: #line 1480 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< Type > () = SequenceOfType{ true, std::make_shared(yystack_[0].value.as< NamedType > ()), nullptr }; } + { yylhs.value.as< Type > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } #line 7668 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; diff --git a/test/compiler/ParameterizedTypesTest.cpp b/test/compiler/ParameterizedTypesTest.cpp index eb6cf61d..c880eedb 100644 --- a/test/compiler/ParameterizedTypesTest.cpp +++ b/test/compiler/ParameterizedTypesTest.cpp @@ -6,7 +6,9 @@ TEST_CASE("Parameterized Types: Encode and decode parameterized types") { - REQUIRE(std::is_same, fast_ber::Parameterized::T3>::value); + REQUIRE(std::is_same::value); + REQUIRE(std::is_same::value); + REQUIRE(std::is_same::value); std::array buffer = {}; fast_ber::Parameterized::T3 one = {5, "param"}; diff --git a/testfiles/parameterized_types.asn b/testfiles/parameterized_types.asn index ebe0e7f1..355d7169 100644 --- a/testfiles/parameterized_types.asn +++ b/testfiles/parameterized_types.asn @@ -2,11 +2,16 @@ Parameterized DEFINITIONS AUTOMATIC TAGS ::= BEGIN T1 ::= OCTET STRING -T3 ::= T2{T1} - T2{X} ::= SEQUENCE { a INTEGER, b X } +T3 ::= T2{T1} + +T4 ::= SEQUENCE { + a T2{ INTEGER }, + b T2{ OCTET STRING } +} + END From ab955972a43f7d424dfcb1aa0751876dedbb5ea6 Mon Sep 17 00:00:00 2001 From: Samuel Tyler - Windows Date: Mon, 5 Aug 2019 23:00:38 +0100 Subject: [PATCH 20/31] Always specify no min/max on Windows --- CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 58eca197..cc21a226 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,8 +29,9 @@ else() set(BENCHMARKS_INCLUDE_ASN1C false) set(CTEST_CONFIGURATION_TYPE "${CMAKE_BUILD_TYPE}") add_compile_options("/W4") + add_compile_options("-DNOMINMAX") if (CMAKE_BUILD_TYPE MATCHES "Release") - add_compile_options("/O2" "-DNOMINMAX") + add_compile_options("/O2") endif () endif() From de830b0965fbe408843c135d864bf7b850c81fc6 Mon Sep 17 00:00:00 2001 From: Samuel Tyler - Windows Date: Mon, 5 Aug 2019 23:03:05 +0100 Subject: [PATCH 21/31] Generate test files portably --- test/CMakeLists.txt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index e0aa733b..9e53f83d 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -55,9 +55,8 @@ target_link_libraries (fast_ber_tests fast_ber_lib) # Compile when running tests, check that the include file can be succesfully compiled function(generate_and_compile test_case should_succeed) fast_ber_generate(${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/${test_case}.asn1 ${test_case}) - add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/autogen/${test_case}.cpp - COMMAND echo \\\#include \\\"${test_case}.hpp\\\" > ${CMAKE_CURRENT_BINARY_DIR}/autogen/${test_case}.cpp) + file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/autogen/${test_case}.cpp "\#include \"${test_case}.hpp\"") add_library(${test_case} ${CMAKE_CURRENT_BINARY_DIR}/autogen/${test_case}.cpp autogen/${test_case}.hpp) target_link_libraries(${test_case} fast_ber_lib) set_target_properties(${test_case} PROPERTIES EXCLUDE_FROM_ALL TRUE @@ -181,11 +180,11 @@ add_test(NAME fast_ber_parse_asn_104 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DI add_test(NAME fast_ber_parse_asn_105 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/105-param-2-OK.asn1 parse_test_105) add_test(NAME fast_ber_parse_asn_106 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/106-param-constr-OK.asn1 parse_test_106) add_test(NAME fast_ber_parse_asn_107 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/107-param-constr-2-OK.asn1 parse_test_107) -add_test(NAME fast_ber_parse_asn_108 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/108-param-constr-3-OK.asn1 parse_test_108) +#add_test(NAME fast_ber_parse_asn_108 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/108-param-constr-3-OK.asn1 parse_test_108) #add_test(NAME fast_ber_parse_asn_109 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/109-bit-string-SE.asn1 parse_test_109) add_test(NAME fast_ber_parse_asn_110 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/110-param-3-OK.asn1 parse_test_110) add_test(NAME fast_ber_parse_asn_111 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/111-param-4-SE.asn1 parse_test_111) -add_test(NAME fast_ber_parse_asn_112 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/112-param-class-OK.asn1 parse_test_112) +#add_test(NAME fast_ber_parse_asn_112 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/112-param-class-OK.asn1 parse_test_112) add_test(NAME fast_ber_parse_asn_113 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/113-bit-string-SE.asn1 parse_test_113) #add_test(NAME fast_ber_parse_asn_114 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/114-bit-string-SE.asn1 parse_test_114) add_test(NAME fast_ber_parse_asn_115 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/115-bit-string-OK.asn1 parse_test_115) From 236829c70ce85a643a8f6d962db5cdb03faaf206 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 11 Aug 2019 18:38:48 +0100 Subject: [PATCH 22/31] Correct clang detection in CMakeLists.txt --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index cc21a226..e665d50c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,7 +9,7 @@ set(default_build_type Release) set(SKIP_AUTO_GENERATION false) # Set to true to avoid bison / asn1c autogeneration (use checked in files instead) set(BENCHMARKS_INCLUDE_ASN1C true) -if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER MATCHES ".*clang") +if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") add_compile_options("-O3" "-Wall" "-Wextra" "-pedantic" "-Wcast-align" "-Wpointer-arith" "-Wshadow") add_compile_options("-Wfloat-equal" "-Wuninitialized") add_compile_options("-Wno-missing-field-initializers") # Stop spam on g++-4.8 From f85406a1dbda6c6651c5349c689889f68232757b Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 11 Aug 2019 18:56:59 +0100 Subject: [PATCH 23/31] Parse and compiler testfiles --- test/CMakeLists.txt | 170 ++++++++++++++++++++++---------------------- 1 file changed, 85 insertions(+), 85 deletions(-) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 9e53f83d..5c5e0660 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -82,16 +82,16 @@ generate_and_compile(06-enum-SE FALSE) generate_and_compile(07-int-OK TRUE) #generate_and_compile(08-int-SE FALSE) #generate_and_compile(09-int-SE FALSE) -#add_test(NAME fast_ber_parse_asn_10 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/10-int-OK.asn1 parse_test_10) -#add_test(NAME fast_ber_parse_asn_11 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/11-int-SE.asn1 parse_test_11) -#add_test(NAME fast_ber_parse_asn_12 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/12-int-SE.asn1 parse_test_12) -#add_test(NAME fast_ber_parse_asn_13 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/13-resolver-OK.asn1 parse_test_13) -#add_test(NAME fast_ber_parse_asn_14 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/14-resolver-OK.asn1 parse_test_14) -#add_test(NAME fast_ber_parse_asn_15 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/15-resolver-SE.asn1 parse_test_15) -add_test(NAME fast_ber_parse_asn_16 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/16-constraint-OK.asn1 parse_test_16) -add_test(NAME fast_ber_parse_asn_17 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/17-tags-OK.asn1 parse_test_17) -add_test(NAME fast_ber_parse_asn_18 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/18-class-OK.asn1 parse_test_18) -#add_test(NAME fast_ber_parse_asn_19 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/19-param-OK.asn1 parse_test_19) +#generate_and_compile(10-int-OK TRUE) +generate_and_compile(11-int-SE.asn1 FALSE) +generate_and_compile(12-int-SE.asn1 FALSE) +#generate_and_compile(13-resolver-OK TRUE) +#generate_and_compile(14-resolver-OK TRUE) +generate_and_compile(15-resolver-SE.asn1 FALSE) +#generate_and_compile(16-constraint-OK TRUE) +generate_and_compile(17-tags-OK TRUE) +generate_and_compile(18-class-OK TRUE) +#generate_and_compile(19-param-OK TRUE) generate_and_compile(20-constr-OK TRUE) generate_and_compile(21-tags-OK TRUE) generate_and_compile(22-tags-OK TRUE) @@ -112,16 +112,16 @@ generate_and_compile(33-misc-OK TRUE) generate_and_compile(37-indirect-choice-OK TRUE) #generate_and_compile(38-comments-OK TRUE) generate_and_compile(39-sequence-of-OK TRUE) -add_test(NAME fast_ber_parse_asn_40 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/40-int-optional-SE.asn1 parse_test_40) -add_test(NAME fast_ber_parse_asn_41 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/41-int-optional-OK.asn1 parse_test_41) -add_test(NAME fast_ber_parse_asn_42 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/42-real-life-OK.asn1 parse_test_42) -#add_test(NAME fast_ber_parse_asn_43 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/43-recursion-OK.asn1 parse_test_43) -add_test(NAME fast_ber_parse_asn_44 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/44-choice-in-sequence-OK.asn1 parse_test_44) -#add_test(NAME fast_ber_parse_asn_45 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/45-undefined-type-SE.asn1 parse_test_45) -add_test(NAME fast_ber_parse_asn_46 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/46-redefine-OK.asn1 parse_test_46) -add_test(NAME fast_ber_parse_asn_47 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/47-set-ext-OK.asn1 parse_test_47) -add_test(NAME fast_ber_parse_asn_48 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/48-real-life-OK.asn1 parse_test_48) -#add_test(NAME fast_ber_parse_asn_49 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/49-real-life-OK.asn1 parse_test_49) +generate_and_compile(40-int-optional-SE TRUE) +generate_and_compile(41-int-optional-OK TRUE) +generate_and_compile(42-real-life-OK TRUE) +#generate_and_compile(43-recursion-OK TRUE) +generate_and_compile(44-choice-in-sequence-OK TRUE) +#generate_and_compile(45-undefined-type-SE TRUE) +generate_and_compile(46-redefine-OK TRUE) +generate_and_compile(47-set-ext-OK TRUE) +generate_and_compile(48-real-life-OK TRUE) +#generate_and_compile(49-real-life-OK TRUE) generate_and_compile(50-constraint-OK TRUE) generate_and_compile(51-constraint-SE TRUE) generate_and_compile(52-constraint-SE TRUE) @@ -131,7 +131,7 @@ generate_and_compile(55-components-of-OK TRUE) generate_and_compile(56-components-of-SE FALSE) #generate_and_compile(57-components-of-OK TRUE) generate_and_compile(58-param-OK TRUE) -#add_test(NAME fast_ber_parse_asn_59 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/59-choice-extended-OK.asn1 parse_test_59) +#generate_and_compile(59-choice-extended-OK TRUE) generate_and_compile(60-any-OK TRUE) generate_and_compile(61-any-1-SE TRUE) generate_and_compile(62-any-OK TRUE) @@ -142,70 +142,70 @@ generate_and_compile(66-ref-simple-OK TRUE) generate_and_compile(67-embedded-choice-OK TRUE) generate_and_compile(68-enum-default-OK TRUE) generate_and_compile(69-reserved-words-OK TRUE) -#add_test(NAME fast_ber_parse_asn_70 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/70-xer-test-OK.asn1 parse_test_70) -add_test(NAME fast_ber_parse_asn_71 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/71-duplicate-types-SE.asn1 parse_test_71) -#add_test(NAME fast_ber_parse_asn_72 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/72-same-names-OK.asn1 parse_test_72) -#add_test(NAME fast_ber_parse_asn_73 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/73-circular-OK.asn1 parse_test_73) -add_test(NAME fast_ber_parse_asn_74 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/74-int-enum-constraints-OK.asn1 parse_test_74) -#add_test(NAME fast_ber_parse_asn_75 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/75-duplicate-modules-SE.asn1 parse_test_75) -#add_test(NAME fast_ber_parse_asn_76 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/76-duplicate-modules-SW.asn1 parse_test_76) -add_test(NAME fast_ber_parse_asn_77 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/77-str-default-OK.asn1 parse_test_77) -add_test(NAME fast_ber_parse_asn_78 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/78-str-default-SE.asn1 parse_test_78) -add_test(NAME fast_ber_parse_asn_79 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/79-constrained-by-OK.asn1 parse_test_79) -#add_test(NAME fast_ber_parse_asn_80 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/80-chardefs-OK.asn1 parse_test_80) -#add_test(NAME fast_ber_parse_asn_81 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/81-type-default-OK.asn1 parse_test_81) -add_test(NAME fast_ber_parse_asn_82 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/82-with-comps-OK.asn1 parse_test_82) -add_test(NAME fast_ber_parse_asn_83 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/83-with-comps-OK.asn1 parse_test_83) -add_test(NAME fast_ber_parse_asn_84 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/84-param-tags-OK.asn1 parse_test_84) -#add_test(NAME fast_ber_parse_asn_85 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/85-comments-OK.asn1 parse_test_85) -add_test(NAME fast_ber_parse_asn_86 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/86-atags-OK.asn1 parse_test_86) -#add_test(NAME fast_ber_parse_asn_87 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/87-old-syntax-OK.asn1 parse_test_87) -add_test(NAME fast_ber_parse_asn_88 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/88-integer-enum-OK.asn1 parse_test_88) -add_test(NAME fast_ber_parse_asn_89 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/89-bit-string-enum-OK.asn1 parse_test_89) -#add_test(NAME fast_ber_parse_asn_90 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/90-cond-int-type-OK.asn1 parse_test_90) -add_test(NAME fast_ber_parse_asn_91 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/91-cond-int-blessSize-OK.asn1 parse_test_91) -#add_test(NAME fast_ber_parse_asn_92 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/92-circular-loops-OK.asn1 parse_test_92) -add_test(NAME fast_ber_parse_asn_93 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/93-asn1c-controls-OK.asn1 parse_test_93) -add_test(NAME fast_ber_parse_asn_94 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/94-set-optionals-OK.asn1 parse_test_94) -add_test(NAME fast_ber_parse_asn_95 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/95-choice-per-order-OK.asn1 parse_test_95) -#add_test(NAME fast_ber_parse_asn_96 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/96-type-identifier-OK.asn1 parse_test_96) -#add_test(NAME fast_ber_parse_asn_97 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/97-type-identifier-SW.asn1 parse_test_97) -#add_test(NAME fast_ber_parse_asn_98 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/98-attribute-class-OK.asn1 parse_test_98) -#add_test(NAME fast_ber_parse_asn_99 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/99-class-sample-OK.asn1 parse_test_99) -#add_test(NAME fast_ber_parse_asn_100 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/100-class-ref-OK.asn1 parse_test_100) -#add_test(NAME fast_ber_parse_asn_101 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/101-class-ref-SE.asn1 parse_test_101) -#add_test(NAME fast_ber_parse_asn_102 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/102-class-ref-SE.asn1 parse_test_102) -#add_test(NAME fast_ber_parse_asn_103 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/103-reference-SE.asn1 parse_test_103) -add_test(NAME fast_ber_parse_asn_104 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/104-param-1-OK.asn1 parse_test_104) -add_test(NAME fast_ber_parse_asn_105 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/105-param-2-OK.asn1 parse_test_105) -add_test(NAME fast_ber_parse_asn_106 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/106-param-constr-OK.asn1 parse_test_106) -add_test(NAME fast_ber_parse_asn_107 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/107-param-constr-2-OK.asn1 parse_test_107) -#add_test(NAME fast_ber_parse_asn_108 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/108-param-constr-3-OK.asn1 parse_test_108) -#add_test(NAME fast_ber_parse_asn_109 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/109-bit-string-SE.asn1 parse_test_109) -add_test(NAME fast_ber_parse_asn_110 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/110-param-3-OK.asn1 parse_test_110) -add_test(NAME fast_ber_parse_asn_111 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/111-param-4-SE.asn1 parse_test_111) -#add_test(NAME fast_ber_parse_asn_112 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/112-param-class-OK.asn1 parse_test_112) -add_test(NAME fast_ber_parse_asn_113 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/113-bit-string-SE.asn1 parse_test_113) -#add_test(NAME fast_ber_parse_asn_114 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/114-bit-string-SE.asn1 parse_test_114) -add_test(NAME fast_ber_parse_asn_115 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/115-bit-string-OK.asn1 parse_test_115) -add_test(NAME fast_ber_parse_asn_116 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/116-bit-string-SE.asn1 parse_test_116) -add_test(NAME fast_ber_parse_asn_117 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/117-real-constraint-OK.asn1 parse_test_117) -add_test(NAME fast_ber_parse_asn_118 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/118-per-constraint-OK.asn1 parse_test_118) -#add_test(NAME fast_ber_parse_asn_119 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/119-per-strings-OK.asn1 parse_test_119) -add_test(NAME fast_ber_parse_asn_121 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/121-empty-imports-OK.asn1 parse_test_121) -add_test(NAME fast_ber_parse_asn_122 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/122-pattern-OK.asn1 parse_test_122) -add_test(NAME fast_ber_parse_asn_123 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/123-valueassignment-OK.asn1 parse_test_123) -add_test(NAME fast_ber_parse_asn_124 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/124-multiconstraint-OK.asn1 parse_test_124) -add_test(NAME fast_ber_parse_asn_125 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/125-bitstring-constraint-OK.asn1 parse_test_125) -add_test(NAME fast_ber_parse_asn_126 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/126-per-extensions-OK.asn1 parse_test_126) -add_test(NAME fast_ber_parse_asn_127 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/127-per-long-OK.asn1 parse_test_127) -add_test(NAME fast_ber_parse_asn_128 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/128-enum-SE.asn1 parse_test_128) -add_test(NAME fast_ber_parse_asn_129 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/129-enum-OK.asn1 parse_test_129) -add_test(NAME fast_ber_parse_asn_130 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/130-enum-OK.asn1 parse_test_130) -add_test(NAME fast_ber_parse_asn_131 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/131-per-empty-OK.asn1 parse_test_131) -add_test(NAME fast_ber_parse_asn_132 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/132-per-choice-OK.asn1 parse_test_132) -add_test(NAME fast_ber_parse_asn_133 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/133-per-constraints-OK.asn1 parse_test_133) -add_test(NAME fast_ber_parse_asn_134 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/3rd_party/asn1c/tests/134-per-long-OK.asn1 parse_test_134) +#generate_and_compile(70-xer-test-OK TRUE) +generate_and_compile(71-duplicate-types-SE TRUE) +#generate_and_compile(72-same-names-OK TRUE) +#generate_and_compile(73-circular-OK TRUE) +generate_and_compile(74-int-enum-constraints-OK TRUE) +generate_and_compile(75-duplicate-modules-SE FALSE) +generate_and_compile(76-duplicate-modules-SW FALSE) +generate_and_compile(77-str-default-OK TRUE) +generate_and_compile(78-str-default-SE TRUE) +generate_and_compile(79-constrained-by-OK TRUE) +#generate_and_compile(80-chardefs-OK TRUE) +#generate_and_compile(81-type-default-OK TRUE) +generate_and_compile(82-with-comps-OK TRUE) +#generate_and_compile(83-with-comps-OK TRUE) +generate_and_compile(84-param-tags-OK TRUE) +#generate_and_compile(85-comments-OK TRUE) +generate_and_compile(86-atags-OK TRUE) +#generate_and_compile(87-old-syntax-OK TRUE) +generate_and_compile(88-integer-enum-OK TRUE) +generate_and_compile(89-bit-string-enum-OK TRUE) +generate_and_compile(90-cond-int-type-OK TRUE) +generate_and_compile(91-cond-int-blessSize-OK TRUE) +#generate_and_compile(92-circular-loops-OK TRUE) +generate_and_compile(93-asn1c-controls-OK TRUE) +generate_and_compile(94-set-optionals-OK TRUE) +#generate_and_compile(95-choice-per-order-OK TRUE) +#generate_and_compile(96-type-identifier-OK TRUE) +#generate_and_compile(97-type-identifier-SW TRUE) +#generate_and_compile(98-attribute-class-OK TRUE) +#generate_and_compile(99-class-sample-OK TRUE) +#generate_and_compile(100-class-ref-OK TRUE) +#generate_and_compile(101-class-ref-SE FALSE) +generate_and_compile(102-class-ref-SE FALSE) +generate_and_compile(103-reference-SE FALSE) +generate_and_compile(104-param-1-OK TRUE) +generate_and_compile(105-param-2-OK TRUE) +generate_and_compile(106-param-constr-OK TRUE) +generate_and_compile(107-param-constr-2-OK TRUE) +#generate_and_compile(108-param-constr-3-OK TRUE) +#generate_and_compile(109-bit-string-SE TRUE) +generate_and_compile(110-param-3-OK TRUE) +generate_and_compile(111-param-4-SE TRUE) +#generate_and_compile(112-param-class-OK TRUE) +generate_and_compile(113-bit-string-SE TRUE) +#generate_and_compile(114-bit-string-SE TRUE) +generate_and_compile(115-bit-string-OK TRUE) +generate_and_compile(116-bit-string-SE TRUE) +generate_and_compile(117-real-constraint-OK TRUE) +generate_and_compile(118-per-constraint-OK TRUE) +#generate_and_compile(119-per-strings-OK TRUE) +generate_and_compile(121-empty-imports-OK TRUE) +generate_and_compile(122-pattern-OK TRUE) +generate_and_compile(123-valueassignment-OK TRUE) +generate_and_compile(124-multiconstraint-OK TRUE) +generate_and_compile(125-bitstring-constraint-OK TRUE) +generate_and_compile(126-per-extensions-OK TRUE) +generate_and_compile(127-per-long-OK TRUE) +#generate_and_compile(128-enum-SE TRUE) +generate_and_compile(129-enum-OK TRUE) +generate_and_compile(130-enum-OK TRUE) +generate_and_compile(131-per-empty-OK TRUE) +generate_and_compile(132-per-choice-OK TRUE) +generate_and_compile(133-per-constraints-OK TRUE) +generate_and_compile(134-per-long-OK TRUE) add_test(NAME fast_ber_compiler_0 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/simple0.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/simple0) add_test(NAME fast_ber_compiler_1 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/simple1.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/simple1) From 718c405bbba93c9f284e310ea9ac9783dac7d04a Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 11 Aug 2019 19:12:20 +0100 Subject: [PATCH 24/31] Correct parsing of int min --- src/compiler/asn_compiler.yacc | 7 +- src/compiler/autogen_copy/asn_compiler.hpp | 9010 ++++++++++---------- test/CMakeLists.txt | 1 + 3 files changed, 4529 insertions(+), 4489 deletions(-) diff --git a/src/compiler/asn_compiler.yacc b/src/compiler/asn_compiler.yacc index 716f66a6..58712735 100644 --- a/src/compiler/asn_compiler.yacc +++ b/src/compiler/asn_compiler.yacc @@ -35,6 +35,7 @@ %token comment %token number +%token negativenumber %token realnumber %token bstring %token xmlbstring @@ -211,6 +212,7 @@ %type xmltstring %type realnumber %type number +%type negativenumber %type SignedNumber %type DefinedValue %type BuiltinType; @@ -1120,8 +1122,8 @@ NamedNumber: SignedNumber: number { $$ = $1; } -| "-" number - { $$ = -$2; } +| negativenumber + { $$ = $1; } EnumeratedType: ENUMERATED "{" Enumerations "}" @@ -1862,6 +1864,7 @@ re2c:define:YYCURSOR = "context.cursor"; // Identifiers [0-9]+'\.'[0-9]+ { context.location.columns(context.cursor - start); return asn1_parser::make_realnumber(std::stod(std::string(start, context.cursor)), context.location); } [0-9]+ { context.location.columns(context.cursor - start); return asn1_parser::make_number(std::stoll(std::string(start, context.cursor)), context.location); } +"-"[0-9]+ { context.location.columns(context.cursor - start); return asn1_parser::make_negativenumber(std::stoll(std::string(start, context.cursor)), context.location); } ['\"']('\\'.|"\"\""|[^'\"'])*['\"'] { context.location.columns(context.cursor - start); return asn1_parser::make_cstring(std::string(start, context.cursor), context.location); } ['\'']('0'|'1')*['\'']"B" diff --git a/src/compiler/autogen_copy/asn_compiler.hpp b/src/compiler/autogen_copy/asn_compiler.hpp index 393c9570..afabe614 100644 --- a/src/compiler/autogen_copy/asn_compiler.hpp +++ b/src/compiler/autogen_copy/asn_compiler.hpp @@ -836,6 +836,7 @@ namespace yy { char dummy49[sizeof(int)]; // number + // negativenumber // SignedNumber char dummy50[sizeof(long long)]; @@ -935,150 +936,151 @@ namespace yy { END_OF_FILE = 0, comment = 258, number = 259, - realnumber = 260, - bstring = 261, - xmlbstring = 262, - hstring = 263, - xmlhstring = 264, - cstring = 265, - xmlcstring = 266, - simplestring = 267, - xmltstring = 268, - psname = 269, - encodingreference = 270, - integerUnicodeLabel = 271, - tstring = 274, - objectreference = 276, - objectsetreference = 277, - typefieldreference = 278, - valuefieldreference = 279, - valuesetfieldreference = 280, - objectfieldreference = 281, - objectsetfieldreference = 282, - ABSENT = 283, - ABSTRACT_SYNTAX = 284, - ALL = 285, - ANY = 286, - APPLICATION = 287, - ASN_NULL = 288, - AUTOMATIC = 289, - BEGIN = 290, - BIT = 291, - BMPString = 292, - BOOLEAN = 293, - BY = 294, - CHARACTER = 295, - CHOICE = 296, - CLASS = 297, - COMPONENT = 298, - COMPONENTS = 299, - CONSTRAINED = 300, - CONTAINING = 301, - DATE = 302, - DATE_TIME = 303, - DEFAULT = 304, - DEFINITIONS = 305, - DURATION = 306, - EMBEDDED = 307, - ENCODED = 308, - ENCODING_CONTROL = 309, - END = 310, - ENUMERATED = 311, - EXCEPT = 312, - EXPLICIT = 313, - EXPORTS = 314, - EXTENSIBILITY = 315, - EXTERNAL = 316, - FALSE = 317, - FROM = 318, - GeneralizedTime = 319, - GeneralString = 320, - GraphicString = 321, - IA5String = 322, - IDENTIFIER = 323, - IMPLICIT = 324, - IMPLIED = 325, - IMPORTS = 326, - INCLUDES = 327, - INSTANCE = 328, - INSTRUCTIONS = 329, - INTEGER = 330, - INTERSECTION = 331, - ISO646String = 332, - MAX = 333, - MIN = 334, - MINUS_INFINITY = 335, - NOT_A_NUMBER = 336, - NumericString = 337, - OBJECT = 338, - ObjectDescriptor = 339, - OCTET = 340, - OF = 341, - OID_IRI = 342, - OPTIONAL = 343, - PATTERN = 344, - PDV = 345, - PLUS_INFINITY = 346, - PRESENT = 347, - PrintableString = 348, - PRIVATE = 349, - REAL = 350, - RELATIVE_OID = 351, - RELATIVE_OID_IRI = 352, - SEQUENCE = 353, - SET = 354, - SETTINGS = 355, - SIZE = 356, - STRING = 357, - SYNTAX = 358, - T61String = 359, - TAGS = 360, - TeletexString = 361, - TIME = 362, - TIME_OF_DAY = 363, - TRUE = 364, - TYPE_IDENTIFIER = 365, - UNION = 366, - UNIQUE = 367, - UNIVERSAL = 368, - UniversalString = 369, - UTCTime = 370, - UTF8String = 371, - VideotexString = 372, - VisibleString = 373, - WITH = 374, - DEFINED_AS = 375, - ELIPSIS = 376, - RANGE = 377, - OPEN_BRACE = 378, - CLOSE_BRACE = 379, - OPEN_PARENTHESIS = 380, - CLOSE_PARENTHESIS = 381, - OPEN_SQUARE_BRACKET = 382, - CLOSE_SQUARE_BRACKET = 383, - LESS_THAN = 384, - GREATER_THAN = 385, - EXCLAMATION_MARK = 386, - QUOTATION_MARK = 387, - AMPERSAND = 388, - APOSTROPHE = 389, - ASTERISK = 390, - COMMA = 391, - FULL_STOP = 392, - HYPHEN_MINUS = 393, - SOLIDUS = 394, - COLON = 395, - SEMICOLON = 396, - EQUALS_SIGN = 397, - AT = 398, - VERTICAL_LINE = 399, - ACCENT = 400, - PLUS = 401, - STAR = 402, - GENERIC_IDENTIFIER_UPPERCASE = 403, - GENERIC_IDENTIFIER_LOWERCASE = 404, - GENERIC_INTEGER = 405, - xmlasn1typename = 406 + negativenumber = 260, + realnumber = 261, + bstring = 262, + xmlbstring = 263, + hstring = 264, + xmlhstring = 265, + cstring = 266, + xmlcstring = 267, + simplestring = 268, + xmltstring = 269, + psname = 270, + encodingreference = 271, + integerUnicodeLabel = 272, + tstring = 275, + objectreference = 277, + objectsetreference = 278, + typefieldreference = 279, + valuefieldreference = 280, + valuesetfieldreference = 281, + objectfieldreference = 282, + objectsetfieldreference = 283, + ABSENT = 284, + ABSTRACT_SYNTAX = 285, + ALL = 286, + ANY = 287, + APPLICATION = 288, + ASN_NULL = 289, + AUTOMATIC = 290, + BEGIN = 291, + BIT = 292, + BMPString = 293, + BOOLEAN = 294, + BY = 295, + CHARACTER = 296, + CHOICE = 297, + CLASS = 298, + COMPONENT = 299, + COMPONENTS = 300, + CONSTRAINED = 301, + CONTAINING = 302, + DATE = 303, + DATE_TIME = 304, + DEFAULT = 305, + DEFINITIONS = 306, + DURATION = 307, + EMBEDDED = 308, + ENCODED = 309, + ENCODING_CONTROL = 310, + END = 311, + ENUMERATED = 312, + EXCEPT = 313, + EXPLICIT = 314, + EXPORTS = 315, + EXTENSIBILITY = 316, + EXTERNAL = 317, + FALSE = 318, + FROM = 319, + GeneralizedTime = 320, + GeneralString = 321, + GraphicString = 322, + IA5String = 323, + IDENTIFIER = 324, + IMPLICIT = 325, + IMPLIED = 326, + IMPORTS = 327, + INCLUDES = 328, + INSTANCE = 329, + INSTRUCTIONS = 330, + INTEGER = 331, + INTERSECTION = 332, + ISO646String = 333, + MAX = 334, + MIN = 335, + MINUS_INFINITY = 336, + NOT_A_NUMBER = 337, + NumericString = 338, + OBJECT = 339, + ObjectDescriptor = 340, + OCTET = 341, + OF = 342, + OID_IRI = 343, + OPTIONAL = 344, + PATTERN = 345, + PDV = 346, + PLUS_INFINITY = 347, + PRESENT = 348, + PrintableString = 349, + PRIVATE = 350, + REAL = 351, + RELATIVE_OID = 352, + RELATIVE_OID_IRI = 353, + SEQUENCE = 354, + SET = 355, + SETTINGS = 356, + SIZE = 357, + STRING = 358, + SYNTAX = 359, + T61String = 360, + TAGS = 361, + TeletexString = 362, + TIME = 363, + TIME_OF_DAY = 364, + TRUE = 365, + TYPE_IDENTIFIER = 366, + UNION = 367, + UNIQUE = 368, + UNIVERSAL = 369, + UniversalString = 370, + UTCTime = 371, + UTF8String = 372, + VideotexString = 373, + VisibleString = 374, + WITH = 375, + DEFINED_AS = 376, + ELIPSIS = 377, + RANGE = 378, + OPEN_BRACE = 379, + CLOSE_BRACE = 380, + OPEN_PARENTHESIS = 381, + CLOSE_PARENTHESIS = 382, + OPEN_SQUARE_BRACKET = 383, + CLOSE_SQUARE_BRACKET = 384, + LESS_THAN = 385, + GREATER_THAN = 386, + EXCLAMATION_MARK = 387, + QUOTATION_MARK = 388, + AMPERSAND = 389, + APOSTROPHE = 390, + ASTERISK = 391, + COMMA = 392, + FULL_STOP = 393, + HYPHEN_MINUS = 394, + SOLIDUS = 395, + COLON = 396, + SEMICOLON = 397, + EQUALS_SIGN = 398, + AT = 399, + VERTICAL_LINE = 400, + ACCENT = 401, + PLUS = 402, + STAR = 403, + GENERIC_IDENTIFIER_UPPERCASE = 404, + GENERIC_IDENTIFIER_LOWERCASE = 405, + GENERIC_INTEGER = 406, + xmlasn1typename = 407 }; }; @@ -1319,6 +1321,10 @@ namespace yy { symbol_type make_number (const long long& v, const location_type& l); + static inline + symbol_type + make_negativenumber (const long long& v, const location_type& l); + static inline symbol_type make_realnumber (const double& v, const location_type& l); @@ -2100,12 +2106,12 @@ namespace yy { enum { yyeof_ = 0, - yylast_ = 4056, ///< Last index in yytable_. + yylast_ = 3992, ///< Last index in yytable_. yynnts_ = 226, ///< Number of nonterminal symbols. yyfinal_ = 6, ///< Termination state number. yyterror_ = 1, yyerrcode_ = 256, - yyntokens_ = 152 ///< Number of tokens. + yyntokens_ = 153 ///< Number of tokens. }; @@ -2162,9 +2168,9 @@ namespace yy { 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151 + 145, 146, 147, 148, 149, 150, 151, 152 }; - const unsigned int user_token_number_max_ = 406; + const unsigned int user_token_number_max_ = 407; const token_number_type undef_token_ = 2; if (static_cast(t) <= yyeof_) @@ -2197,314 +2203,315 @@ namespace yy { { switch (other.type_get ()) { - case 159: // ObjectClassAssignment - case 198: // ObjectSetAssignment - case 202: // ParameterizedAssignment - case 203: // ParameterizedTypeAssignment - case 204: // ParameterizedValueAssignment - case 205: // ParameterizedValueSetTypeAssignment - case 206: // ParameterizedObjectClassAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 160: // ObjectClassAssignment + case 199: // ObjectSetAssignment + case 203: // ParameterizedAssignment + case 204: // ParameterizedTypeAssignment + case 205: // ParameterizedValueAssignment + case 206: // ParameterizedValueSetTypeAssignment + case 207: // ParameterizedObjectClassAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.copy< Assignment > (other.value); break; - case 283: // BitStringType + case 284: // BitStringType value.copy< BitStringType > (other.value); break; - case 272: // BooleanType + case 273: // BooleanType value.copy< BooleanType > (other.value); break; - case 264: // BuiltinType + case 265: // BuiltinType value.copy< BuiltinType > (other.value); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.copy< CharacterStringType > (other.value); break; - case 295: // ChoiceType + case 296: // ChoiceType value.copy< ChoiceType > (other.value); break; - case 305: // Class + case 306: // Class value.copy< Class > (other.value); break; - case 291: // ComponentType + case 292: // ComponentType value.copy< ComponentType > (other.value); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.copy< ComponentTypeList > (other.value); break; - case 326: // DateTimeType + case 327: // DateTimeType value.copy< DateTimeType > (other.value); break; - case 324: // DateType + case 325: // DateType value.copy< DateType > (other.value); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.copy< DefinedType > (other.value); break; - case 253: // DefinedValue + case 254: // DefinedValue value.copy< DefinedValue > (other.value); break; - case 327: // DurationType + case 328: // DurationType value.copy< DurationType > (other.value); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.copy< EmbeddedPDVType > (other.value); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.copy< EnumeratedType > (other.value); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.copy< EnumerationValue > (other.value); break; - case 321: // ExternalType + case 322: // ExternalType value.copy< ExternalType > (other.value); break; - case 314: // IRIType + case 315: // IRIType value.copy< IRIType > (other.value); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.copy< Import > (other.value); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.copy< InstanceOfType > (other.value); break; - case 274: // IntegerType + case 275: // IntegerType value.copy< IntegerType > (other.value); break; - case 238: // ModuleBody + case 239: // ModuleBody value.copy< Module > (other.value); break; - case 276: // NamedNumber + case 277: // NamedNumber value.copy< NamedNumber > (other.value); break; - case 265: // NamedType + case 266: // NamedType value.copy< NamedType > (other.value); break; - case 287: // NullType + case 288: // NullType value.copy< NullType > (other.value); break; - case 160: // ObjectClass - case 161: // ObjectClassDefn + case 161: // ObjectClass + case 162: // ObjectClassDefn value.copy< ObjectClassAssignment > (other.value); break; - case 201: // ObjectClassFieldType + case 202: // ObjectClassFieldType value.copy< ObjectClassFieldType > (other.value); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.copy< ObjectIdComponentValue > (other.value); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.copy< ObjectIdentifierType > (other.value); break; - case 286: // OctetStringType + case 287: // OctetStringType value.copy< OctetStringType > (other.value); break; - case 209: // Parameter + case 210: // Parameter value.copy< Parameter > (other.value); break; - case 300: // PrefixedType + case 301: // PrefixedType value.copy< PrefixedType > (other.value); break; - case 282: // RealType + case 283: // RealType value.copy< RealType > (other.value); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.copy< RelativeIRIType > (other.value); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.copy< RelativeOIDType > (other.value); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.copy< SequenceOfType > (other.value); break; - case 288: // SequenceType + case 289: // SequenceType value.copy< SequenceType > (other.value); break; - case 294: // SetOfType + case 295: // SetOfType value.copy< SetOfType > (other.value); break; - case 293: // SetType + case 294: // SetType value.copy< SetType > (other.value); break; - case 302: // Tag + case 303: // Tag value.copy< Tag > (other.value); break; - case 301: // TaggedType + case 302: // TaggedType value.copy< TaggedType > (other.value); break; - case 236: // TagDefault + case 237: // TagDefault value.copy< TaggingMode > (other.value); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.copy< TimeOfDayType > (other.value); break; - case 322: // TimeType + case 323: // TimeType value.copy< TimeType > (other.value); break; - case 210: // ParamGovernor - case 211: // Governor - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 211: // ParamGovernor + case 212: // Governor + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.copy< Type > (other.value); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.copy< Value > (other.value); break; - case 5: // realnumber + case 6: // realnumber value.copy< double > (other.value); break; - case 304: // ClassNumber + case 305: // ClassNumber value.copy< int > (other.value); break; case 4: // number - case 277: // SignedNumber + case 5: // negativenumber + case 278: // SignedNumber value.copy< long long > (other.value); break; - case 6: // bstring - case 7: // xmlbstring - case 8: // hstring - case 9: // xmlhstring - case 10: // cstring - case 11: // xmlcstring - case 12: // simplestring - case 13: // xmltstring - case 21: // objectreference - case 23: // typefieldreference - case 24: // valuefieldreference - case 148: // GENERIC_IDENTIFIER_UPPERCASE - case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 158: // UsefulObjectClassReference - case 164: // FieldName - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 7: // bstring + case 8: // xmlbstring + case 9: // hstring + case 10: // xmlhstring + case 11: // cstring + case 12: // xmlcstring + case 13: // simplestring + case 14: // xmltstring + case 22: // objectreference + case 24: // typefieldreference + case 25: // valuefieldreference + case 149: // GENERIC_IDENTIFIER_UPPERCASE + case 150: // GENERIC_IDENTIFIER_LOWERCASE + case 159: // UsefulObjectClassReference + case 165: // FieldName + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.copy< std::string > (other.value); break; - case 250: // AssignmentList + case 251: // AssignmentList value.copy< std::vector > (other.value); break; - case 162: // FieldSpecList - case 163: // FieldSpec - case 166: // TypeFieldSpec - case 170: // FixedTypeValueFieldSpec + case 163: // FieldSpecList + case 164: // FieldSpec + case 167: // TypeFieldSpec + case 171: // FixedTypeValueFieldSpec value.copy< std::vector > (other.value); break; - case 239: // Exports + case 240: // Exports value.copy< std::vector > (other.value); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.copy< std::vector > (other.value); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.copy< std::vector > (other.value); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.copy< std::vector > (other.value); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.copy< std::vector > (other.value); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.copy< std::vector > (other.value); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.copy< std::vector > (other.value); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.copy< std::vector > (other.value); break; - case 165: // FieldNameList - case 167: // OneOrManyTypeFieldReference - case 247: // SymbolList + case 166: // FieldNameList + case 168: // OneOrManyTypeFieldReference + case 248: // SymbolList value.copy< std::vector > (other.value); break; @@ -2525,314 +2532,315 @@ namespace yy { (void) v; switch (this->type_get ()) { - case 159: // ObjectClassAssignment - case 198: // ObjectSetAssignment - case 202: // ParameterizedAssignment - case 203: // ParameterizedTypeAssignment - case 204: // ParameterizedValueAssignment - case 205: // ParameterizedValueSetTypeAssignment - case 206: // ParameterizedObjectClassAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 160: // ObjectClassAssignment + case 199: // ObjectSetAssignment + case 203: // ParameterizedAssignment + case 204: // ParameterizedTypeAssignment + case 205: // ParameterizedValueAssignment + case 206: // ParameterizedValueSetTypeAssignment + case 207: // ParameterizedObjectClassAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.copy< Assignment > (v); break; - case 283: // BitStringType + case 284: // BitStringType value.copy< BitStringType > (v); break; - case 272: // BooleanType + case 273: // BooleanType value.copy< BooleanType > (v); break; - case 264: // BuiltinType + case 265: // BuiltinType value.copy< BuiltinType > (v); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.copy< CharacterStringType > (v); break; - case 295: // ChoiceType + case 296: // ChoiceType value.copy< ChoiceType > (v); break; - case 305: // Class + case 306: // Class value.copy< Class > (v); break; - case 291: // ComponentType + case 292: // ComponentType value.copy< ComponentType > (v); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.copy< ComponentTypeList > (v); break; - case 326: // DateTimeType + case 327: // DateTimeType value.copy< DateTimeType > (v); break; - case 324: // DateType + case 325: // DateType value.copy< DateType > (v); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.copy< DefinedType > (v); break; - case 253: // DefinedValue + case 254: // DefinedValue value.copy< DefinedValue > (v); break; - case 327: // DurationType + case 328: // DurationType value.copy< DurationType > (v); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.copy< EmbeddedPDVType > (v); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.copy< EnumeratedType > (v); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.copy< EnumerationValue > (v); break; - case 321: // ExternalType + case 322: // ExternalType value.copy< ExternalType > (v); break; - case 314: // IRIType + case 315: // IRIType value.copy< IRIType > (v); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.copy< Import > (v); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.copy< InstanceOfType > (v); break; - case 274: // IntegerType + case 275: // IntegerType value.copy< IntegerType > (v); break; - case 238: // ModuleBody + case 239: // ModuleBody value.copy< Module > (v); break; - case 276: // NamedNumber + case 277: // NamedNumber value.copy< NamedNumber > (v); break; - case 265: // NamedType + case 266: // NamedType value.copy< NamedType > (v); break; - case 287: // NullType + case 288: // NullType value.copy< NullType > (v); break; - case 160: // ObjectClass - case 161: // ObjectClassDefn + case 161: // ObjectClass + case 162: // ObjectClassDefn value.copy< ObjectClassAssignment > (v); break; - case 201: // ObjectClassFieldType + case 202: // ObjectClassFieldType value.copy< ObjectClassFieldType > (v); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.copy< ObjectIdComponentValue > (v); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.copy< ObjectIdentifierType > (v); break; - case 286: // OctetStringType + case 287: // OctetStringType value.copy< OctetStringType > (v); break; - case 209: // Parameter + case 210: // Parameter value.copy< Parameter > (v); break; - case 300: // PrefixedType + case 301: // PrefixedType value.copy< PrefixedType > (v); break; - case 282: // RealType + case 283: // RealType value.copy< RealType > (v); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.copy< RelativeIRIType > (v); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.copy< RelativeOIDType > (v); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.copy< SequenceOfType > (v); break; - case 288: // SequenceType + case 289: // SequenceType value.copy< SequenceType > (v); break; - case 294: // SetOfType + case 295: // SetOfType value.copy< SetOfType > (v); break; - case 293: // SetType + case 294: // SetType value.copy< SetType > (v); break; - case 302: // Tag + case 303: // Tag value.copy< Tag > (v); break; - case 301: // TaggedType + case 302: // TaggedType value.copy< TaggedType > (v); break; - case 236: // TagDefault + case 237: // TagDefault value.copy< TaggingMode > (v); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.copy< TimeOfDayType > (v); break; - case 322: // TimeType + case 323: // TimeType value.copy< TimeType > (v); break; - case 210: // ParamGovernor - case 211: // Governor - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 211: // ParamGovernor + case 212: // Governor + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.copy< Type > (v); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.copy< Value > (v); break; - case 5: // realnumber + case 6: // realnumber value.copy< double > (v); break; - case 304: // ClassNumber + case 305: // ClassNumber value.copy< int > (v); break; case 4: // number - case 277: // SignedNumber + case 5: // negativenumber + case 278: // SignedNumber value.copy< long long > (v); break; - case 6: // bstring - case 7: // xmlbstring - case 8: // hstring - case 9: // xmlhstring - case 10: // cstring - case 11: // xmlcstring - case 12: // simplestring - case 13: // xmltstring - case 21: // objectreference - case 23: // typefieldreference - case 24: // valuefieldreference - case 148: // GENERIC_IDENTIFIER_UPPERCASE - case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 158: // UsefulObjectClassReference - case 164: // FieldName - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 7: // bstring + case 8: // xmlbstring + case 9: // hstring + case 10: // xmlhstring + case 11: // cstring + case 12: // xmlcstring + case 13: // simplestring + case 14: // xmltstring + case 22: // objectreference + case 24: // typefieldreference + case 25: // valuefieldreference + case 149: // GENERIC_IDENTIFIER_UPPERCASE + case 150: // GENERIC_IDENTIFIER_LOWERCASE + case 159: // UsefulObjectClassReference + case 165: // FieldName + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.copy< std::string > (v); break; - case 250: // AssignmentList + case 251: // AssignmentList value.copy< std::vector > (v); break; - case 162: // FieldSpecList - case 163: // FieldSpec - case 166: // TypeFieldSpec - case 170: // FixedTypeValueFieldSpec + case 163: // FieldSpecList + case 164: // FieldSpec + case 167: // TypeFieldSpec + case 171: // FixedTypeValueFieldSpec value.copy< std::vector > (v); break; - case 239: // Exports + case 240: // Exports value.copy< std::vector > (v); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.copy< std::vector > (v); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.copy< std::vector > (v); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.copy< std::vector > (v); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.copy< std::vector > (v); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.copy< std::vector > (v); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.copy< std::vector > (v); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.copy< std::vector > (v); break; - case 165: // FieldNameList - case 167: // OneOrManyTypeFieldReference - case 247: // SymbolList + case 166: // FieldNameList + case 168: // OneOrManyTypeFieldReference + case 248: // SymbolList value.copy< std::vector > (v); break; @@ -3311,314 +3319,315 @@ namespace yy { // Type destructor. switch (yytype) { - case 159: // ObjectClassAssignment - case 198: // ObjectSetAssignment - case 202: // ParameterizedAssignment - case 203: // ParameterizedTypeAssignment - case 204: // ParameterizedValueAssignment - case 205: // ParameterizedValueSetTypeAssignment - case 206: // ParameterizedObjectClassAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 160: // ObjectClassAssignment + case 199: // ObjectSetAssignment + case 203: // ParameterizedAssignment + case 204: // ParameterizedTypeAssignment + case 205: // ParameterizedValueAssignment + case 206: // ParameterizedValueSetTypeAssignment + case 207: // ParameterizedObjectClassAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.template destroy< Assignment > (); break; - case 283: // BitStringType + case 284: // BitStringType value.template destroy< BitStringType > (); break; - case 272: // BooleanType + case 273: // BooleanType value.template destroy< BooleanType > (); break; - case 264: // BuiltinType + case 265: // BuiltinType value.template destroy< BuiltinType > (); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.template destroy< CharacterStringType > (); break; - case 295: // ChoiceType + case 296: // ChoiceType value.template destroy< ChoiceType > (); break; - case 305: // Class + case 306: // Class value.template destroy< Class > (); break; - case 291: // ComponentType + case 292: // ComponentType value.template destroy< ComponentType > (); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.template destroy< ComponentTypeList > (); break; - case 326: // DateTimeType + case 327: // DateTimeType value.template destroy< DateTimeType > (); break; - case 324: // DateType + case 325: // DateType value.template destroy< DateType > (); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.template destroy< DefinedType > (); break; - case 253: // DefinedValue + case 254: // DefinedValue value.template destroy< DefinedValue > (); break; - case 327: // DurationType + case 328: // DurationType value.template destroy< DurationType > (); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.template destroy< EmbeddedPDVType > (); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.template destroy< EnumeratedType > (); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.template destroy< EnumerationValue > (); break; - case 321: // ExternalType + case 322: // ExternalType value.template destroy< ExternalType > (); break; - case 314: // IRIType + case 315: // IRIType value.template destroy< IRIType > (); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.template destroy< Import > (); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.template destroy< InstanceOfType > (); break; - case 274: // IntegerType + case 275: // IntegerType value.template destroy< IntegerType > (); break; - case 238: // ModuleBody + case 239: // ModuleBody value.template destroy< Module > (); break; - case 276: // NamedNumber + case 277: // NamedNumber value.template destroy< NamedNumber > (); break; - case 265: // NamedType + case 266: // NamedType value.template destroy< NamedType > (); break; - case 287: // NullType + case 288: // NullType value.template destroy< NullType > (); break; - case 160: // ObjectClass - case 161: // ObjectClassDefn + case 161: // ObjectClass + case 162: // ObjectClassDefn value.template destroy< ObjectClassAssignment > (); break; - case 201: // ObjectClassFieldType + case 202: // ObjectClassFieldType value.template destroy< ObjectClassFieldType > (); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.template destroy< ObjectIdComponentValue > (); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.template destroy< ObjectIdentifierType > (); break; - case 286: // OctetStringType + case 287: // OctetStringType value.template destroy< OctetStringType > (); break; - case 209: // Parameter + case 210: // Parameter value.template destroy< Parameter > (); break; - case 300: // PrefixedType + case 301: // PrefixedType value.template destroy< PrefixedType > (); break; - case 282: // RealType + case 283: // RealType value.template destroy< RealType > (); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.template destroy< RelativeIRIType > (); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.template destroy< RelativeOIDType > (); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.template destroy< SequenceOfType > (); break; - case 288: // SequenceType + case 289: // SequenceType value.template destroy< SequenceType > (); break; - case 294: // SetOfType + case 295: // SetOfType value.template destroy< SetOfType > (); break; - case 293: // SetType + case 294: // SetType value.template destroy< SetType > (); break; - case 302: // Tag + case 303: // Tag value.template destroy< Tag > (); break; - case 301: // TaggedType + case 302: // TaggedType value.template destroy< TaggedType > (); break; - case 236: // TagDefault + case 237: // TagDefault value.template destroy< TaggingMode > (); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.template destroy< TimeOfDayType > (); break; - case 322: // TimeType + case 323: // TimeType value.template destroy< TimeType > (); break; - case 210: // ParamGovernor - case 211: // Governor - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 211: // ParamGovernor + case 212: // Governor + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.template destroy< Type > (); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.template destroy< Value > (); break; - case 5: // realnumber + case 6: // realnumber value.template destroy< double > (); break; - case 304: // ClassNumber + case 305: // ClassNumber value.template destroy< int > (); break; case 4: // number - case 277: // SignedNumber + case 5: // negativenumber + case 278: // SignedNumber value.template destroy< long long > (); break; - case 6: // bstring - case 7: // xmlbstring - case 8: // hstring - case 9: // xmlhstring - case 10: // cstring - case 11: // xmlcstring - case 12: // simplestring - case 13: // xmltstring - case 21: // objectreference - case 23: // typefieldreference - case 24: // valuefieldreference - case 148: // GENERIC_IDENTIFIER_UPPERCASE - case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 158: // UsefulObjectClassReference - case 164: // FieldName - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 7: // bstring + case 8: // xmlbstring + case 9: // hstring + case 10: // xmlhstring + case 11: // cstring + case 12: // xmlcstring + case 13: // simplestring + case 14: // xmltstring + case 22: // objectreference + case 24: // typefieldreference + case 25: // valuefieldreference + case 149: // GENERIC_IDENTIFIER_UPPERCASE + case 150: // GENERIC_IDENTIFIER_LOWERCASE + case 159: // UsefulObjectClassReference + case 165: // FieldName + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.template destroy< std::string > (); break; - case 250: // AssignmentList + case 251: // AssignmentList value.template destroy< std::vector > (); break; - case 162: // FieldSpecList - case 163: // FieldSpec - case 166: // TypeFieldSpec - case 170: // FixedTypeValueFieldSpec + case 163: // FieldSpecList + case 164: // FieldSpec + case 167: // TypeFieldSpec + case 171: // FixedTypeValueFieldSpec value.template destroy< std::vector > (); break; - case 239: // Exports + case 240: // Exports value.template destroy< std::vector > (); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.template destroy< std::vector > (); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.template destroy< std::vector > (); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.template destroy< std::vector > (); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.template destroy< std::vector > (); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.template destroy< std::vector > (); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.template destroy< std::vector > (); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.template destroy< std::vector > (); break; - case 165: // FieldNameList - case 167: // OneOrManyTypeFieldReference - case 247: // SymbolList + case 166: // FieldNameList + case 168: // OneOrManyTypeFieldReference + case 248: // SymbolList value.template destroy< std::vector > (); break; @@ -3645,314 +3654,315 @@ namespace yy { super_type::move(s); switch (this->type_get ()) { - case 159: // ObjectClassAssignment - case 198: // ObjectSetAssignment - case 202: // ParameterizedAssignment - case 203: // ParameterizedTypeAssignment - case 204: // ParameterizedValueAssignment - case 205: // ParameterizedValueSetTypeAssignment - case 206: // ParameterizedObjectClassAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 160: // ObjectClassAssignment + case 199: // ObjectSetAssignment + case 203: // ParameterizedAssignment + case 204: // ParameterizedTypeAssignment + case 205: // ParameterizedValueAssignment + case 206: // ParameterizedValueSetTypeAssignment + case 207: // ParameterizedObjectClassAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.move< Assignment > (s.value); break; - case 283: // BitStringType + case 284: // BitStringType value.move< BitStringType > (s.value); break; - case 272: // BooleanType + case 273: // BooleanType value.move< BooleanType > (s.value); break; - case 264: // BuiltinType + case 265: // BuiltinType value.move< BuiltinType > (s.value); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.move< CharacterStringType > (s.value); break; - case 295: // ChoiceType + case 296: // ChoiceType value.move< ChoiceType > (s.value); break; - case 305: // Class + case 306: // Class value.move< Class > (s.value); break; - case 291: // ComponentType + case 292: // ComponentType value.move< ComponentType > (s.value); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.move< ComponentTypeList > (s.value); break; - case 326: // DateTimeType + case 327: // DateTimeType value.move< DateTimeType > (s.value); break; - case 324: // DateType + case 325: // DateType value.move< DateType > (s.value); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.move< DefinedType > (s.value); break; - case 253: // DefinedValue + case 254: // DefinedValue value.move< DefinedValue > (s.value); break; - case 327: // DurationType + case 328: // DurationType value.move< DurationType > (s.value); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.move< EmbeddedPDVType > (s.value); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.move< EnumeratedType > (s.value); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.move< EnumerationValue > (s.value); break; - case 321: // ExternalType + case 322: // ExternalType value.move< ExternalType > (s.value); break; - case 314: // IRIType + case 315: // IRIType value.move< IRIType > (s.value); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.move< Import > (s.value); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.move< InstanceOfType > (s.value); break; - case 274: // IntegerType + case 275: // IntegerType value.move< IntegerType > (s.value); break; - case 238: // ModuleBody + case 239: // ModuleBody value.move< Module > (s.value); break; - case 276: // NamedNumber + case 277: // NamedNumber value.move< NamedNumber > (s.value); break; - case 265: // NamedType + case 266: // NamedType value.move< NamedType > (s.value); break; - case 287: // NullType + case 288: // NullType value.move< NullType > (s.value); break; - case 160: // ObjectClass - case 161: // ObjectClassDefn + case 161: // ObjectClass + case 162: // ObjectClassDefn value.move< ObjectClassAssignment > (s.value); break; - case 201: // ObjectClassFieldType + case 202: // ObjectClassFieldType value.move< ObjectClassFieldType > (s.value); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.move< ObjectIdComponentValue > (s.value); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.move< ObjectIdentifierType > (s.value); break; - case 286: // OctetStringType + case 287: // OctetStringType value.move< OctetStringType > (s.value); break; - case 209: // Parameter + case 210: // Parameter value.move< Parameter > (s.value); break; - case 300: // PrefixedType + case 301: // PrefixedType value.move< PrefixedType > (s.value); break; - case 282: // RealType + case 283: // RealType value.move< RealType > (s.value); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.move< RelativeIRIType > (s.value); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.move< RelativeOIDType > (s.value); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.move< SequenceOfType > (s.value); break; - case 288: // SequenceType + case 289: // SequenceType value.move< SequenceType > (s.value); break; - case 294: // SetOfType + case 295: // SetOfType value.move< SetOfType > (s.value); break; - case 293: // SetType + case 294: // SetType value.move< SetType > (s.value); break; - case 302: // Tag + case 303: // Tag value.move< Tag > (s.value); break; - case 301: // TaggedType + case 302: // TaggedType value.move< TaggedType > (s.value); break; - case 236: // TagDefault + case 237: // TagDefault value.move< TaggingMode > (s.value); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.move< TimeOfDayType > (s.value); break; - case 322: // TimeType + case 323: // TimeType value.move< TimeType > (s.value); break; - case 210: // ParamGovernor - case 211: // Governor - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 211: // ParamGovernor + case 212: // Governor + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.move< Type > (s.value); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.move< Value > (s.value); break; - case 5: // realnumber + case 6: // realnumber value.move< double > (s.value); break; - case 304: // ClassNumber + case 305: // ClassNumber value.move< int > (s.value); break; case 4: // number - case 277: // SignedNumber + case 5: // negativenumber + case 278: // SignedNumber value.move< long long > (s.value); break; - case 6: // bstring - case 7: // xmlbstring - case 8: // hstring - case 9: // xmlhstring - case 10: // cstring - case 11: // xmlcstring - case 12: // simplestring - case 13: // xmltstring - case 21: // objectreference - case 23: // typefieldreference - case 24: // valuefieldreference - case 148: // GENERIC_IDENTIFIER_UPPERCASE - case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 158: // UsefulObjectClassReference - case 164: // FieldName - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 7: // bstring + case 8: // xmlbstring + case 9: // hstring + case 10: // xmlhstring + case 11: // cstring + case 12: // xmlcstring + case 13: // simplestring + case 14: // xmltstring + case 22: // objectreference + case 24: // typefieldreference + case 25: // valuefieldreference + case 149: // GENERIC_IDENTIFIER_UPPERCASE + case 150: // GENERIC_IDENTIFIER_LOWERCASE + case 159: // UsefulObjectClassReference + case 165: // FieldName + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.move< std::string > (s.value); break; - case 250: // AssignmentList + case 251: // AssignmentList value.move< std::vector > (s.value); break; - case 162: // FieldSpecList - case 163: // FieldSpec - case 166: // TypeFieldSpec - case 170: // FixedTypeValueFieldSpec + case 163: // FieldSpecList + case 164: // FieldSpec + case 167: // TypeFieldSpec + case 171: // FixedTypeValueFieldSpec value.move< std::vector > (s.value); break; - case 239: // Exports + case 240: // Exports value.move< std::vector > (s.value); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.move< std::vector > (s.value); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.move< std::vector > (s.value); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.move< std::vector > (s.value); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.move< std::vector > (s.value); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.move< std::vector > (s.value); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.move< std::vector > (s.value); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.move< std::vector > (s.value); break; - case 165: // FieldNameList - case 167: // OneOrManyTypeFieldReference - case 247: // SymbolList + case 166: // FieldNameList + case 168: // OneOrManyTypeFieldReference + case 248: // SymbolList value.move< std::vector > (s.value); break; @@ -4026,7 +4036,7 @@ namespace yy { 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406 + 405, 406, 407 }; return static_cast (yytoken_number_[type]); } @@ -4049,6 +4059,12 @@ namespace yy { return symbol_type (token::number, v, l); } + asn1_parser::symbol_type + asn1_parser::make_negativenumber (const long long& v, const location_type& l) + { + return symbol_type (token::negativenumber, v, l); + } + asn1_parser::symbol_type asn1_parser::make_realnumber (const double& v, const location_type& l) { @@ -4916,7 +4932,7 @@ namespace yy { } // yy -#line 4918 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 +#line 4934 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:408 @@ -4924,7 +4940,7 @@ namespace yy { // User implementation prologue. -#line 4926 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 +#line 4942 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:412 // Unqualified %code blocks. #line 15 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:413 @@ -4943,7 +4959,7 @@ namespace yy { namespace yy { asn1_parser::symbol_type yylex(Context& c); } -#line 4945 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 +#line 4961 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:413 #ifndef YY_ @@ -5029,7 +5045,7 @@ namespace yy { namespace yy { -#line 5031 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 +#line 5047 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:479 /* Return YYSTR after stripping away unnecessary quotes and backslashes, so that it's suitable for yyerror. The heuristic is @@ -5141,314 +5157,315 @@ namespace yy { { switch (that.type_get ()) { - case 159: // ObjectClassAssignment - case 198: // ObjectSetAssignment - case 202: // ParameterizedAssignment - case 203: // ParameterizedTypeAssignment - case 204: // ParameterizedValueAssignment - case 205: // ParameterizedValueSetTypeAssignment - case 206: // ParameterizedObjectClassAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 160: // ObjectClassAssignment + case 199: // ObjectSetAssignment + case 203: // ParameterizedAssignment + case 204: // ParameterizedTypeAssignment + case 205: // ParameterizedValueAssignment + case 206: // ParameterizedValueSetTypeAssignment + case 207: // ParameterizedObjectClassAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.move< Assignment > (that.value); break; - case 283: // BitStringType + case 284: // BitStringType value.move< BitStringType > (that.value); break; - case 272: // BooleanType + case 273: // BooleanType value.move< BooleanType > (that.value); break; - case 264: // BuiltinType + case 265: // BuiltinType value.move< BuiltinType > (that.value); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.move< CharacterStringType > (that.value); break; - case 295: // ChoiceType + case 296: // ChoiceType value.move< ChoiceType > (that.value); break; - case 305: // Class + case 306: // Class value.move< Class > (that.value); break; - case 291: // ComponentType + case 292: // ComponentType value.move< ComponentType > (that.value); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.move< ComponentTypeList > (that.value); break; - case 326: // DateTimeType + case 327: // DateTimeType value.move< DateTimeType > (that.value); break; - case 324: // DateType + case 325: // DateType value.move< DateType > (that.value); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.move< DefinedType > (that.value); break; - case 253: // DefinedValue + case 254: // DefinedValue value.move< DefinedValue > (that.value); break; - case 327: // DurationType + case 328: // DurationType value.move< DurationType > (that.value); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.move< EmbeddedPDVType > (that.value); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.move< EnumeratedType > (that.value); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.move< EnumerationValue > (that.value); break; - case 321: // ExternalType + case 322: // ExternalType value.move< ExternalType > (that.value); break; - case 314: // IRIType + case 315: // IRIType value.move< IRIType > (that.value); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.move< Import > (that.value); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.move< InstanceOfType > (that.value); break; - case 274: // IntegerType + case 275: // IntegerType value.move< IntegerType > (that.value); break; - case 238: // ModuleBody + case 239: // ModuleBody value.move< Module > (that.value); break; - case 276: // NamedNumber + case 277: // NamedNumber value.move< NamedNumber > (that.value); break; - case 265: // NamedType + case 266: // NamedType value.move< NamedType > (that.value); break; - case 287: // NullType + case 288: // NullType value.move< NullType > (that.value); break; - case 160: // ObjectClass - case 161: // ObjectClassDefn + case 161: // ObjectClass + case 162: // ObjectClassDefn value.move< ObjectClassAssignment > (that.value); break; - case 201: // ObjectClassFieldType + case 202: // ObjectClassFieldType value.move< ObjectClassFieldType > (that.value); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.move< ObjectIdComponentValue > (that.value); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.move< ObjectIdentifierType > (that.value); break; - case 286: // OctetStringType + case 287: // OctetStringType value.move< OctetStringType > (that.value); break; - case 209: // Parameter + case 210: // Parameter value.move< Parameter > (that.value); break; - case 300: // PrefixedType + case 301: // PrefixedType value.move< PrefixedType > (that.value); break; - case 282: // RealType + case 283: // RealType value.move< RealType > (that.value); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.move< RelativeIRIType > (that.value); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.move< RelativeOIDType > (that.value); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.move< SequenceOfType > (that.value); break; - case 288: // SequenceType + case 289: // SequenceType value.move< SequenceType > (that.value); break; - case 294: // SetOfType + case 295: // SetOfType value.move< SetOfType > (that.value); break; - case 293: // SetType + case 294: // SetType value.move< SetType > (that.value); break; - case 302: // Tag + case 303: // Tag value.move< Tag > (that.value); break; - case 301: // TaggedType + case 302: // TaggedType value.move< TaggedType > (that.value); break; - case 236: // TagDefault + case 237: // TagDefault value.move< TaggingMode > (that.value); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.move< TimeOfDayType > (that.value); break; - case 322: // TimeType + case 323: // TimeType value.move< TimeType > (that.value); break; - case 210: // ParamGovernor - case 211: // Governor - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 211: // ParamGovernor + case 212: // Governor + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.move< Type > (that.value); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.move< Value > (that.value); break; - case 5: // realnumber + case 6: // realnumber value.move< double > (that.value); break; - case 304: // ClassNumber + case 305: // ClassNumber value.move< int > (that.value); break; case 4: // number - case 277: // SignedNumber + case 5: // negativenumber + case 278: // SignedNumber value.move< long long > (that.value); break; - case 6: // bstring - case 7: // xmlbstring - case 8: // hstring - case 9: // xmlhstring - case 10: // cstring - case 11: // xmlcstring - case 12: // simplestring - case 13: // xmltstring - case 21: // objectreference - case 23: // typefieldreference - case 24: // valuefieldreference - case 148: // GENERIC_IDENTIFIER_UPPERCASE - case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 158: // UsefulObjectClassReference - case 164: // FieldName - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 7: // bstring + case 8: // xmlbstring + case 9: // hstring + case 10: // xmlhstring + case 11: // cstring + case 12: // xmlcstring + case 13: // simplestring + case 14: // xmltstring + case 22: // objectreference + case 24: // typefieldreference + case 25: // valuefieldreference + case 149: // GENERIC_IDENTIFIER_UPPERCASE + case 150: // GENERIC_IDENTIFIER_LOWERCASE + case 159: // UsefulObjectClassReference + case 165: // FieldName + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.move< std::string > (that.value); break; - case 250: // AssignmentList + case 251: // AssignmentList value.move< std::vector > (that.value); break; - case 162: // FieldSpecList - case 163: // FieldSpec - case 166: // TypeFieldSpec - case 170: // FixedTypeValueFieldSpec + case 163: // FieldSpecList + case 164: // FieldSpec + case 167: // TypeFieldSpec + case 171: // FixedTypeValueFieldSpec value.move< std::vector > (that.value); break; - case 239: // Exports + case 240: // Exports value.move< std::vector > (that.value); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.move< std::vector > (that.value); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.move< std::vector > (that.value); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.move< std::vector > (that.value); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.move< std::vector > (that.value); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.move< std::vector > (that.value); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.move< std::vector > (that.value); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.move< std::vector > (that.value); break; - case 165: // FieldNameList - case 167: // OneOrManyTypeFieldReference - case 247: // SymbolList + case 166: // FieldNameList + case 168: // OneOrManyTypeFieldReference + case 248: // SymbolList value.move< std::vector > (that.value); break; @@ -5467,314 +5484,315 @@ namespace yy { state = that.state; switch (that.type_get ()) { - case 159: // ObjectClassAssignment - case 198: // ObjectSetAssignment - case 202: // ParameterizedAssignment - case 203: // ParameterizedTypeAssignment - case 204: // ParameterizedValueAssignment - case 205: // ParameterizedValueSetTypeAssignment - case 206: // ParameterizedObjectClassAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 160: // ObjectClassAssignment + case 199: // ObjectSetAssignment + case 203: // ParameterizedAssignment + case 204: // ParameterizedTypeAssignment + case 205: // ParameterizedValueAssignment + case 206: // ParameterizedValueSetTypeAssignment + case 207: // ParameterizedObjectClassAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment value.copy< Assignment > (that.value); break; - case 283: // BitStringType + case 284: // BitStringType value.copy< BitStringType > (that.value); break; - case 272: // BooleanType + case 273: // BooleanType value.copy< BooleanType > (that.value); break; - case 264: // BuiltinType + case 265: // BuiltinType value.copy< BuiltinType > (that.value); break; - case 328: // CharacterStringType + case 329: // CharacterStringType value.copy< CharacterStringType > (that.value); break; - case 295: // ChoiceType + case 296: // ChoiceType value.copy< ChoiceType > (that.value); break; - case 305: // Class + case 306: // Class value.copy< Class > (that.value); break; - case 291: // ComponentType + case 292: // ComponentType value.copy< ComponentType > (that.value); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList value.copy< ComponentTypeList > (that.value); break; - case 326: // DateTimeType + case 327: // DateTimeType value.copy< DateTimeType > (that.value); break; - case 324: // DateType + case 325: // DateType value.copy< DateType > (that.value); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference value.copy< DefinedType > (that.value); break; - case 253: // DefinedValue + case 254: // DefinedValue value.copy< DefinedValue > (that.value); break; - case 327: // DurationType + case 328: // DurationType value.copy< DurationType > (that.value); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType value.copy< EmbeddedPDVType > (that.value); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration value.copy< EnumeratedType > (that.value); break; - case 281: // EnumerationItem + case 282: // EnumerationItem value.copy< EnumerationValue > (that.value); break; - case 321: // ExternalType + case 322: // ExternalType value.copy< ExternalType > (that.value); break; - case 314: // IRIType + case 315: // IRIType value.copy< IRIType > (that.value); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule value.copy< Import > (that.value); break; - case 214: // InstanceOfType + case 215: // InstanceOfType value.copy< InstanceOfType > (that.value); break; - case 274: // IntegerType + case 275: // IntegerType value.copy< IntegerType > (that.value); break; - case 238: // ModuleBody + case 239: // ModuleBody value.copy< Module > (that.value); break; - case 276: // NamedNumber + case 277: // NamedNumber value.copy< NamedNumber > (that.value); break; - case 265: // NamedType + case 266: // NamedType value.copy< NamedType > (that.value); break; - case 287: // NullType + case 288: // NullType value.copy< NullType > (that.value); break; - case 160: // ObjectClass - case 161: // ObjectClassDefn + case 161: // ObjectClass + case 162: // ObjectClassDefn value.copy< ObjectClassAssignment > (that.value); break; - case 201: // ObjectClassFieldType + case 202: // ObjectClassFieldType value.copy< ObjectClassFieldType > (that.value); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm value.copy< ObjectIdComponentValue > (that.value); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType value.copy< ObjectIdentifierType > (that.value); break; - case 286: // OctetStringType + case 287: // OctetStringType value.copy< OctetStringType > (that.value); break; - case 209: // Parameter + case 210: // Parameter value.copy< Parameter > (that.value); break; - case 300: // PrefixedType + case 301: // PrefixedType value.copy< PrefixedType > (that.value); break; - case 282: // RealType + case 283: // RealType value.copy< RealType > (that.value); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType value.copy< RelativeIRIType > (that.value); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType value.copy< RelativeOIDType > (that.value); break; - case 292: // SequenceOfType + case 293: // SequenceOfType value.copy< SequenceOfType > (that.value); break; - case 288: // SequenceType + case 289: // SequenceType value.copy< SequenceType > (that.value); break; - case 294: // SetOfType + case 295: // SetOfType value.copy< SetOfType > (that.value); break; - case 293: // SetType + case 294: // SetType value.copy< SetType > (that.value); break; - case 302: // Tag + case 303: // Tag value.copy< Tag > (that.value); break; - case 301: // TaggedType + case 302: // TaggedType value.copy< TaggedType > (that.value); break; - case 236: // TagDefault + case 237: // TagDefault value.copy< TaggingMode > (that.value); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType value.copy< TimeOfDayType > (that.value); break; - case 322: // TimeType + case 323: // TimeType value.copy< TimeType > (that.value); break; - case 210: // ParamGovernor - case 211: // Governor - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 211: // ParamGovernor + case 212: // Governor + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint value.copy< Type > (that.value); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue value.copy< Value > (that.value); break; - case 5: // realnumber + case 6: // realnumber value.copy< double > (that.value); break; - case 304: // ClassNumber + case 305: // ClassNumber value.copy< int > (that.value); break; case 4: // number - case 277: // SignedNumber + case 5: // negativenumber + case 278: // SignedNumber value.copy< long long > (that.value); break; - case 6: // bstring - case 7: // xmlbstring - case 8: // hstring - case 9: // xmlhstring - case 10: // cstring - case 11: // xmlcstring - case 12: // simplestring - case 13: // xmltstring - case 21: // objectreference - case 23: // typefieldreference - case 24: // valuefieldreference - case 148: // GENERIC_IDENTIFIER_UPPERCASE - case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 158: // UsefulObjectClassReference - case 164: // FieldName - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 7: // bstring + case 8: // xmlbstring + case 9: // hstring + case 10: // xmlhstring + case 11: // cstring + case 12: // xmlcstring + case 13: // simplestring + case 14: // xmltstring + case 22: // objectreference + case 24: // typefieldreference + case 25: // valuefieldreference + case 149: // GENERIC_IDENTIFIER_UPPERCASE + case 150: // GENERIC_IDENTIFIER_LOWERCASE + case 159: // UsefulObjectClassReference + case 165: // FieldName + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word value.copy< std::string > (that.value); break; - case 250: // AssignmentList + case 251: // AssignmentList value.copy< std::vector > (that.value); break; - case 162: // FieldSpecList - case 163: // FieldSpec - case 166: // TypeFieldSpec - case 170: // FixedTypeValueFieldSpec + case 163: // FieldSpecList + case 164: // FieldSpec + case 167: // TypeFieldSpec + case 171: // FixedTypeValueFieldSpec value.copy< std::vector > (that.value); break; - case 239: // Exports + case 240: // Exports value.copy< std::vector > (that.value); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList value.copy< std::vector > (that.value); break; - case 275: // NamedNumberList + case 276: // NamedNumberList value.copy< std::vector > (that.value); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList value.copy< std::vector > (that.value); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList value.copy< std::vector > (that.value); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries value.copy< std::vector > (that.value); break; - case 256: // ActualParameterList + case 257: // ActualParameterList value.copy< std::vector > (that.value); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues value.copy< std::vector > (that.value); break; - case 165: // FieldNameList - case 167: // OneOrManyTypeFieldReference - case 247: // SymbolList + case 166: // FieldNameList + case 168: // OneOrManyTypeFieldReference + case 248: // SymbolList value.copy< std::vector > (that.value); break; @@ -6006,314 +6024,315 @@ namespace yy { when using variants. */ switch (yyr1_[yyn]) { - case 159: // ObjectClassAssignment - case 198: // ObjectSetAssignment - case 202: // ParameterizedAssignment - case 203: // ParameterizedTypeAssignment - case 204: // ParameterizedValueAssignment - case 205: // ParameterizedValueSetTypeAssignment - case 206: // ParameterizedObjectClassAssignment - case 251: // Assignment - case 260: // TypeAssignment - case 261: // ValueAssignment - case 262: // ValueSetTypeAssignment + case 160: // ObjectClassAssignment + case 199: // ObjectSetAssignment + case 203: // ParameterizedAssignment + case 204: // ParameterizedTypeAssignment + case 205: // ParameterizedValueAssignment + case 206: // ParameterizedValueSetTypeAssignment + case 207: // ParameterizedObjectClassAssignment + case 252: // Assignment + case 261: // TypeAssignment + case 262: // ValueAssignment + case 263: // ValueSetTypeAssignment yylhs.value.build< Assignment > (); break; - case 283: // BitStringType + case 284: // BitStringType yylhs.value.build< BitStringType > (); break; - case 272: // BooleanType + case 273: // BooleanType yylhs.value.build< BooleanType > (); break; - case 264: // BuiltinType + case 265: // BuiltinType yylhs.value.build< BuiltinType > (); break; - case 328: // CharacterStringType + case 329: // CharacterStringType yylhs.value.build< CharacterStringType > (); break; - case 295: // ChoiceType + case 296: // ChoiceType yylhs.value.build< ChoiceType > (); break; - case 305: // Class + case 306: // Class yylhs.value.build< Class > (); break; - case 291: // ComponentType + case 292: // ComponentType yylhs.value.build< ComponentType > (); break; - case 289: // ComponentTypeLists - case 290: // ComponentTypeList + case 290: // ComponentTypeLists + case 291: // ComponentTypeList yylhs.value.build< ComponentTypeList > (); break; - case 326: // DateTimeType + case 327: // DateTimeType yylhs.value.build< DateTimeType > (); break; - case 324: // DateType + case 325: // DateType yylhs.value.build< DateType > (); break; - case 252: // DefinedType - case 254: // ParameterizedType - case 258: // ExternalTypeReference + case 253: // DefinedType + case 255: // ParameterizedType + case 259: // ExternalTypeReference yylhs.value.build< DefinedType > (); break; - case 253: // DefinedValue + case 254: // DefinedValue yylhs.value.build< DefinedValue > (); break; - case 327: // DurationType + case 328: // DurationType yylhs.value.build< DurationType > (); break; - case 320: // EmbeddedPDVType + case 321: // EmbeddedPDVType yylhs.value.build< EmbeddedPDVType > (); break; - case 278: // EnumeratedType - case 279: // Enumerations - case 280: // Enumeration + case 279: // EnumeratedType + case 280: // Enumerations + case 281: // Enumeration yylhs.value.build< EnumeratedType > (); break; - case 281: // EnumerationItem + case 282: // EnumerationItem yylhs.value.build< EnumerationValue > (); break; - case 321: // ExternalType + case 322: // ExternalType yylhs.value.build< ExternalType > (); break; - case 314: // IRIType + case 315: // IRIType yylhs.value.build< IRIType > (); break; - case 244: // SymbolsFromModule + case 245: // SymbolsFromModule yylhs.value.build< Import > (); break; - case 214: // InstanceOfType + case 215: // InstanceOfType yylhs.value.build< InstanceOfType > (); break; - case 274: // IntegerType + case 275: // IntegerType yylhs.value.build< IntegerType > (); break; - case 238: // ModuleBody + case 239: // ModuleBody yylhs.value.build< Module > (); break; - case 276: // NamedNumber + case 277: // NamedNumber yylhs.value.build< NamedNumber > (); break; - case 265: // NamedType + case 266: // NamedType yylhs.value.build< NamedType > (); break; - case 287: // NullType + case 288: // NullType yylhs.value.build< NullType > (); break; - case 160: // ObjectClass - case 161: // ObjectClassDefn + case 161: // ObjectClass + case 162: // ObjectClassDefn yylhs.value.build< ObjectClassAssignment > (); break; - case 201: // ObjectClassFieldType + case 202: // ObjectClassFieldType yylhs.value.build< ObjectClassFieldType > (); break; - case 309: // ObjIdComponents - case 310: // NameForm - case 311: // NumberForm - case 312: // NameAndNumberForm + case 310: // ObjIdComponents + case 311: // NameForm + case 312: // NumberForm + case 313: // NameAndNumberForm yylhs.value.build< ObjectIdComponentValue > (); break; - case 306: // ObjectIdentifierType + case 307: // ObjectIdentifierType yylhs.value.build< ObjectIdentifierType > (); break; - case 286: // OctetStringType + case 287: // OctetStringType yylhs.value.build< OctetStringType > (); break; - case 209: // Parameter + case 210: // Parameter yylhs.value.build< Parameter > (); break; - case 300: // PrefixedType + case 301: // PrefixedType yylhs.value.build< PrefixedType > (); break; - case 282: // RealType + case 283: // RealType yylhs.value.build< RealType > (); break; - case 319: // RelativeIRIType + case 320: // RelativeIRIType yylhs.value.build< RelativeIRIType > (); break; - case 313: // RelativeOIDType + case 314: // RelativeOIDType yylhs.value.build< RelativeOIDType > (); break; - case 292: // SequenceOfType + case 293: // SequenceOfType yylhs.value.build< SequenceOfType > (); break; - case 288: // SequenceType + case 289: // SequenceType yylhs.value.build< SequenceType > (); break; - case 294: // SetOfType + case 295: // SetOfType yylhs.value.build< SetOfType > (); break; - case 293: // SetType + case 294: // SetType yylhs.value.build< SetType > (); break; - case 302: // Tag + case 303: // Tag yylhs.value.build< Tag > (); break; - case 301: // TaggedType + case 302: // TaggedType yylhs.value.build< TaggedType > (); break; - case 236: // TagDefault + case 237: // TagDefault yylhs.value.build< TaggingMode > (); break; - case 325: // TimeOfDayType + case 326: // TimeOfDayType yylhs.value.build< TimeOfDayType > (); break; - case 322: // TimeType + case 323: // TimeType yylhs.value.build< TimeType > (); break; - case 210: // ParamGovernor - case 211: // Governor - case 257: // ActualParameter - case 263: // Type - case 331: // ConstrainedType - case 332: // TypeWithConstraint + case 211: // ParamGovernor + case 212: // Governor + case 258: // ActualParameter + case 264: // Type + case 332: // ConstrainedType + case 333: // TypeWithConstraint yylhs.value.build< Type > (); break; - case 266: // ValueWithoutTypeIdentifier - case 267: // Value - case 349: // SingleValue + case 267: // ValueWithoutTypeIdentifier + case 268: // Value + case 350: // SingleValue yylhs.value.build< Value > (); break; - case 5: // realnumber + case 6: // realnumber yylhs.value.build< double > (); break; - case 304: // ClassNumber + case 305: // ClassNumber yylhs.value.build< int > (); break; case 4: // number - case 277: // SignedNumber + case 5: // negativenumber + case 278: // SignedNumber yylhs.value.build< long long > (); break; - case 6: // bstring - case 7: // xmlbstring - case 8: // hstring - case 9: // xmlhstring - case 10: // cstring - case 11: // xmlcstring - case 12: // simplestring - case 13: // xmltstring - case 21: // objectreference - case 23: // typefieldreference - case 24: // valuefieldreference - case 148: // GENERIC_IDENTIFIER_UPPERCASE - case 149: // GENERIC_IDENTIFIER_LOWERCASE - case 158: // UsefulObjectClassReference - case 164: // FieldName - case 215: // SimpleDefinedType - case 227: // ModuleIdentifier - case 245: // GlobalModuleReference - case 248: // Symbol - case 249: // Reference - case 372: // typereference - case 373: // identifier - case 374: // valuereference - case 375: // modulereference - case 376: // objectclassreference - case 377: // word + case 7: // bstring + case 8: // xmlbstring + case 9: // hstring + case 10: // xmlhstring + case 11: // cstring + case 12: // xmlcstring + case 13: // simplestring + case 14: // xmltstring + case 22: // objectreference + case 24: // typefieldreference + case 25: // valuefieldreference + case 149: // GENERIC_IDENTIFIER_UPPERCASE + case 150: // GENERIC_IDENTIFIER_LOWERCASE + case 159: // UsefulObjectClassReference + case 165: // FieldName + case 216: // SimpleDefinedType + case 228: // ModuleIdentifier + case 246: // GlobalModuleReference + case 249: // Symbol + case 250: // Reference + case 373: // typereference + case 374: // identifier + case 375: // valuereference + case 376: // modulereference + case 377: // objectclassreference + case 378: // word yylhs.value.build< std::string > (); break; - case 250: // AssignmentList + case 251: // AssignmentList yylhs.value.build< std::vector > (); break; - case 162: // FieldSpecList - case 163: // FieldSpec - case 166: // TypeFieldSpec - case 170: // FixedTypeValueFieldSpec + case 163: // FieldSpecList + case 164: // FieldSpec + case 167: // TypeFieldSpec + case 171: // FixedTypeValueFieldSpec yylhs.value.build< std::vector > (); break; - case 239: // Exports + case 240: // Exports yylhs.value.build< std::vector > (); break; - case 241: // Imports - case 242: // SymbolsImported - case 243: // SymbolsFromModuleList + case 242: // Imports + case 243: // SymbolsImported + case 244: // SymbolsFromModuleList yylhs.value.build< std::vector > (); break; - case 275: // NamedNumberList + case 276: // NamedNumberList yylhs.value.build< std::vector > (); break; - case 296: // AlternativeTypeLists - case 297: // RootAlternativeTypeList - case 298: // AlternativeTypeList + case 297: // AlternativeTypeLists + case 298: // RootAlternativeTypeList + case 299: // AlternativeTypeList yylhs.value.build< std::vector > (); break; - case 307: // ObjectIdentifierValue - case 308: // ObjIdComponentsList + case 308: // ObjectIdentifierValue + case 309: // ObjIdComponentsList yylhs.value.build< std::vector > (); break; - case 207: // ParameterList - case 208: // ParameterSeries + case 208: // ParameterList + case 209: // ParameterSeries yylhs.value.build< std::vector > (); break; - case 256: // ActualParameterList + case 257: // ActualParameterList yylhs.value.build< std::vector > (); break; - case 271: // SequenceOfValues + case 272: // SequenceOfValues yylhs.value.build< std::vector > (); break; - case 165: // FieldNameList - case 167: // OneOrManyTypeFieldReference - case 247: // SymbolList + case 166: // FieldNameList + case 168: // OneOrManyTypeFieldReference + case 248: // SymbolList yylhs.value.build< std::vector > (); break; @@ -6335,1372 +6354,1372 @@ namespace yy { switch (yyn) { case 4: -#line 335 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 337 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< Module > ().module_reference = yystack_[9].value.as< std::string > (); yystack_[2].value.as< Module > ().tagging_default = yystack_[6].value.as< TaggingMode > (); context.asn1_tree.modules.push_back(yystack_[2].value.as< Module > ()); } -#line 6341 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6360 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 10: -#line 352 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 354 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = "TYPE-IDENTIFIER"; } -#line 6347 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6366 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 11: -#line 354 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 356 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = "TYPE-IDENTIFIER"; } -#line 6353 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6372 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 12: -#line 358 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 360 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[2].value.as< std::string > (), yystack_[0].value.as< ObjectClassAssignment > ()}; } -#line 6359 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6378 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 13: -#line 362 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 364 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning - Unhandled DefinedObjectClass\n"; } -#line 6365 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6384 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 14: -#line 364 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 366 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassAssignment > () = yystack_[0].value.as< ObjectClassAssignment > (); } -#line 6371 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6390 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 15: -#line 369 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 371 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassAssignment > () = {yystack_[2].value.as< std::vector > ()}; } -#line 6377 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6396 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 16: -#line 373 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 375 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6383 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6402 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 17: -#line 375 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 377 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().insert(yylhs.value.as< std::vector > ().end(), yystack_[0].value.as< std::vector > ().begin(), yystack_[0].value.as< std::vector > ().end()); } -#line 6389 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6408 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 18: -#line 379 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 381 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6395 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6414 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 19: -#line 381 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 383 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6401 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6420 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 24: -#line 389 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 391 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6407 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6426 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 25: -#line 391 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 393 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6413 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6432 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 26: -#line 399 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 401 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6419 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6438 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 27: -#line 401 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 403 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6425 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6444 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 28: -#line 405 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 407 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { for (const std::string& name : yystack_[1].value.as< std::vector > ()) yylhs.value.as< std::vector > ().push_back(ClassField{name, TypeField{}}); } -#line 6431 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6450 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 29: -#line 409 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 411 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6437 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6456 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 30: -#line 411 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 413 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6443 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 37: -#line 425 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 427 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(ClassField{yystack_[3].value.as< std::string > (), FixedTypeValueField{yystack_[2].value.as< Type > ()}}); } -#line 6449 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6468 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 86: -#line 540 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 542 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{yystack_[3].value.as< std::string > (), ObjectSetAssignment{}}; } -#line 6455 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6474 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 93: -#line 560 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 562 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassFieldType > () = {DefinedType{{}, }, yystack_[0].value.as< std::vector > ()}; } -#line 6461 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6480 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 94: -#line 562 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 564 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectClassFieldType > () = {DefinedType{{}, yystack_[2].value.as< std::string > ()}, yystack_[0].value.as< std::vector > ()}; } -#line 6467 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6486 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 95: -#line 569 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 571 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6473 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6492 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 96: -#line 571 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 573 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6479 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6498 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 97: -#line 573 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 575 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6485 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 98: -#line 575 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 577 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6510 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 99: -#line 582 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 584 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {}, yystack_[2].value.as< std::vector > () }; } -#line 6497 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6516 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 100: -#line 586 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 588 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6503 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6522 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 101: -#line 590 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 592 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[4].value.as< std::string > (), ValueAssignment{} }; } -#line 6509 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6528 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 102: -#line 594 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 596 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ObjectClassAssignment{} }; } -#line 6515 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6534 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 103: -#line 606 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 608 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } -#line 6521 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6540 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 104: -#line 610 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 612 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Parameter > ()); } -#line 6527 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6546 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 105: -#line 612 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 614 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Parameter > ()); } -#line 6533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6552 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 106: -#line 616 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 618 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Parameter > () = Parameter{yystack_[2].value.as< Type > (), yystack_[0].value.as< std::string > ()}; } -#line 6539 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6558 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 107: -#line 618 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 620 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Parameter > () = Parameter{{}, yystack_[0].value.as< std::string > ()}; } -#line 6545 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6564 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 108: -#line 622 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 624 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6551 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6570 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 109: -#line 624 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 626 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = DefinedType{{}, yystack_[0].value.as< std::string > ()}; } -#line 6557 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6576 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 110: -#line 628 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 630 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6563 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 111: -#line 630 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 632 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { } -#line 6569 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6588 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 116: -#line 675 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 677 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6575 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6594 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 130: -#line 700 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 702 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Simple constraint\n"; } -#line 6581 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6600 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 131: -#line 702 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 704 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Relation constraint\n"; } -#line 6587 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 144: -#line 744 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 746 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6595 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6614 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 159: -#line 783 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 785 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6601 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6620 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 160: -#line 785 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 787 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::implicit; } -#line 6607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6626 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 161: -#line 787 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 789 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::automatic; } -#line 6613 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6632 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 162: -#line 789 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 791 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggingMode > () = TaggingMode::explicit_; } -#line 6619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6638 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 165: -#line 797 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 799 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Module > () = Module{ {}, TaggingMode(), yystack_[2].value.as< std::vector > (), yystack_[1].value.as< std::vector > (), yystack_[0].value.as< std::vector > ()}; } -#line 6625 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6644 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 166: -#line 799 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 801 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { } -#line 6631 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 172: -#line 812 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 814 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); } -#line 6637 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 174: -#line 817 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 819 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 6643 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6662 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 176: -#line 822 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 824 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6649 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6668 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 177: -#line 824 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 826 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Import > ()); } -#line 6655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6674 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 178: -#line 828 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 830 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Import > () = Import{ yystack_[0].value.as< std::string > (), yystack_[2].value.as< std::vector > () }; } -#line 6661 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6680 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 179: -#line 832 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 834 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[1].value.as< std::string > (); } -#line 6667 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6686 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 183: -#line 841 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 843 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6673 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6692 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 184: -#line 843 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 845 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< std::string > ()); } -#line 6679 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6698 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 185: -#line 847 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 849 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6685 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6704 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 186: -#line 851 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 853 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6710 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 187: -#line 853 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 855 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[2].value.as< std::string > (); } -#line 6697 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6716 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 188: -#line 855 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 857 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 6703 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6722 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 189: -#line 864 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 866 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Assignment > ()); } -#line 6709 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6728 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 190: -#line 866 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 868 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< Assignment > ()); } -#line 6715 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6734 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 191: -#line 870 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 872 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6740 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 192: -#line 872 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 874 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6727 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6746 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 193: -#line 874 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 876 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6733 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6752 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 194: -#line 876 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 878 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6739 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6758 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 195: -#line 879 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 881 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6745 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6764 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 196: -#line 881 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 883 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = yystack_[0].value.as< Assignment > (); } -#line 6751 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6770 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 197: -#line 885 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 887 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6757 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6776 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 198: -#line 887 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 889 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{absl::nullopt, yystack_[0].value.as< std::string > (), {}}; } -#line 6763 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6782 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 199: -#line 889 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 891 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = yystack_[0].value.as< DefinedType > (); } -#line 6769 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6788 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 200: -#line 895 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 897 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedValue > () = DefinedValue{yystack_[0].value.as< std::string > ()}; } -#line 6775 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6794 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 202: -#line 900 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 902 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{ absl::nullopt, yystack_[3].value.as< std::string > (), yystack_[1].value.as< std::vector > ()}; } -#line 6781 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6800 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 204: -#line 907 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 909 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Type > ()); } -#line 6787 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6806 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 205: -#line 909 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 911 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[2].value.as< Type > ()); } -#line 6793 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6812 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 206: -#line 913 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 915 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6799 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6818 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 207: -#line 915 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 917 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not yet dealing with value paramaters\n"; } -#line 6805 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6824 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 209: -#line 928 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 930 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< DefinedType > () = DefinedType{yystack_[2].value.as< std::string > (), yystack_[0].value.as< std::string > (), {}}; } -#line 6811 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6830 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 211: -#line 957 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 959 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[2].value.as< std::string > (), TypeAssignment{yystack_[0].value.as< Type > ()}, {} }; } -#line 6817 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6836 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 212: -#line 961 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 963 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), ValueAssignment{yystack_[2].value.as< Type > (), yystack_[0].value.as< Value > ()}, {} }; } -#line 6823 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6842 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 213: -#line 965 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 967 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Assignment > () = Assignment{ yystack_[3].value.as< std::string > (), TypeAssignment{yystack_[2].value.as< Type > ()}, {} }; } -#line 6829 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6848 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 214: -#line 969 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< BuiltinType > (); } -#line 6835 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6854 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 215: -#line 971 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 973 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 6841 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6860 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 216: -#line 973 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< DefinedType > (); } -#line 6847 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6866 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 217: -#line 975 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - SelectionType\n"; } -#line 6853 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6872 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 218: -#line 977 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 979 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << "Warning: Not handled - TypeFromObject\n"; } -#line 6859 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6878 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 219: -#line 981 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 983 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = AnyType(); } -#line 6865 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6884 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 220: -#line 982 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BitStringType > (); } -#line 6871 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6890 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 221: -#line 983 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< BooleanType > (); } -#line 6877 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6896 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 222: -#line 984 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< CharacterStringType > (); } -#line 6883 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6902 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 223: -#line 985 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ChoiceType > (); } -#line 6889 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6908 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 224: -#line 986 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateType > (); } -#line 6895 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6914 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 225: -#line 987 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DateTimeType > (); } -#line 6901 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6920 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 226: -#line 988 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< DurationType > (); } -#line 6907 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6926 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 227: -#line 989 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EmbeddedPDVType > (); } -#line 6913 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6932 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 228: -#line 990 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< EnumeratedType > (); } -#line 6919 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6938 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 229: -#line 991 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 993 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ExternalType > (); } -#line 6925 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6944 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 230: -#line 992 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = GeneralizedTimeType(); } -#line 6931 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6950 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 231: -#line 993 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< InstanceOfType > (); } -#line 6937 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6956 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 232: -#line 994 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IntegerType > (); } -#line 6943 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6962 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 233: -#line 995 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< IRIType > (); } -#line 6949 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6968 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 234: -#line 996 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< NullType > (); } -#line 6955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6974 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 235: -#line 997 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectClassFieldType > (); } -#line 6961 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6980 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 236: -#line 998 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = ObjectDescriptorType(); } -#line 6967 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6986 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 237: -#line 999 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< ObjectIdentifierType > (); } -#line 6973 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6992 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 238: -#line 1000 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1002 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< OctetStringType > (); } -#line 6979 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 6998 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 239: -#line 1001 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RealType > (); } -#line 6985 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7004 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 240: -#line 1002 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeIRIType > (); } -#line 6991 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7010 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 241: -#line 1003 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1005 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< RelativeOIDType > (); } -#line 6997 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7016 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 242: -#line 1004 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1006 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceType > (); } -#line 7003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 243: -#line 1005 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1007 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SequenceOfType > (); } -#line 7009 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7028 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 244: -#line 1006 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1008 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetType > (); } -#line 7015 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7034 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 245: -#line 1007 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< SetOfType > (); } -#line 7021 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7040 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 246: -#line 1008 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1010 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< PrefixedType > (); } -#line 7027 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7046 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 247: -#line 1009 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1011 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeType > (); } -#line 7033 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7052 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 248: -#line 1010 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1012 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = yystack_[0].value.as< TimeOfDayType > (); } -#line 7039 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7058 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 249: -#line 1011 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1013 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BuiltinType > () = UTCTimeType(); } -#line 7045 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7064 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 250: -#line 1015 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1017 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedType > () = NamedType{ yystack_[1].value.as< std::string > (), yystack_[0].value.as< Type > () }; } -#line 7051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7070 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 251: -#line 1019 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BooleanValue\n"); } -#line 7057 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7076 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 252: -#line 1021 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: IRIValue\n"); } -#line 7063 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7082 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 253: -#line 1023 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1025 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ASN_NULL\n"); } -#line 7069 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 254: -#line 1025 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1027 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: TimeValue\n"); } -#line 7075 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7094 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 255: -#line 1027 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1029 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = BitStringValue{yystack_[0].value.as< std::string > ()}; } -#line 7081 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7100 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 256: -#line 1029 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1031 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = HexStringValue{yystack_[0].value.as< std::string > ()}; } -#line 7087 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 257: -#line 1031 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1033 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = CharStringValue{yystack_[0].value.as< std::string > ()}; } -#line 7093 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7112 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 258: -#line 1033 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1035 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: CONTAINING\n"); } -#line 7099 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7118 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 259: -#line 1035 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1037 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< DefinedValue > (); } -#line 7105 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 260: -#line 1037 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1039 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = NamedNumber{yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > ()}; } -#line 7111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7130 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 262: -#line 1040 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1042 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< long long > (); } -#line 7117 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7136 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 263: -#line 1042 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1044 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< double > (); } -#line 7123 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 264: -#line 1044 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1046 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 7129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 265: -#line 1046 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1048 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 7135 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7154 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 270: -#line 1054 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1056 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[1].value.as< std::vector > (); } -#line 7141 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 271: -#line 1056 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1058 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueChoice\n"); } -#line 7147 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7166 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 272: -#line 1058 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1060 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: OPTIONAL\n"); } -#line 7153 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7172 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 273: -#line 1060 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1062 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: ValueCommaListChoice\n"); } -#line 7159 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 274: -#line 1062 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1064 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: BY\n"); } -#line 7165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7184 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 275: -#line 1064 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1066 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { std::cerr << std::string("Warning: Unhandled field: WITH\n"); } -#line 7171 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7190 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 276: -#line 1069 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1071 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > () = yystack_[0].value.as< Value > (); } -#line 7177 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7196 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 277: -#line 1071 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1073 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Value > ().value_selection = yystack_[0].value.as< std::string > (); } -#line 7183 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7202 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 284: -#line 1087 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1089 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 7189 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7208 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 285: -#line 1089 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1091 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[1].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< Value > ()); } -#line 7195 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7214 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 289: -#line 1104 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1106 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{{}}; } -#line 7201 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7220 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 290: -#line 1106 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1108 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< IntegerType > () = IntegerType{yystack_[1].value.as< std::vector > ()}; } -#line 7207 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7226 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 291: -#line 1110 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1112 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = {yystack_[0].value.as< NamedNumber > ()}; } -#line 7213 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7232 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 292: -#line 1112 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1114 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< NamedNumber > ()); } -#line 7219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7238 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 293: -#line 1116 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1118 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), yystack_[1].value.as< long long > () }; } -#line 7225 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7244 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 294: -#line 1118 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1120 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< NamedNumber > () = NamedNumber{ yystack_[3].value.as< std::string > (), 0 }; } -#line 7231 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7250 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 295: -#line 1122 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1124 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } -#line 7237 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7256 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 296: -#line 1124 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 - { yylhs.value.as< long long > () = -yystack_[0].value.as< long long > (); } -#line 7243 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 1126 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 + { yylhs.value.as< long long > () = yystack_[0].value.as< long long > (); } +#line 7262 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 297: -#line 1128 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1130 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[1].value.as< EnumeratedType > (); } -#line 7249 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7268 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 298: -#line 1132 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1134 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[0].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = false; } -#line 7256 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7275 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 299: -#line 1135 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1137 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[3].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; } -#line 7263 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7282 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 300: -#line 1138 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1140 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[5].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().accept_anything = true; yylhs.value.as< EnumeratedType > ().enum_values.insert(yylhs.value.as< EnumeratedType > ().enum_values.end(), yystack_[0].value.as< EnumeratedType > ().enum_values.begin(), yystack_[0].value.as< EnumeratedType > ().enum_values.end()); } -#line 7271 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7290 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 302: -#line 1145 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1147 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 7277 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7296 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 303: -#line 1147 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1149 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumeratedType > () = yystack_[2].value.as< EnumeratedType > (); yylhs.value.as< EnumeratedType > ().enum_values.push_back(yystack_[0].value.as< EnumerationValue > ()); } -#line 7283 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 304: -#line 1151 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1153 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7289 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7308 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 305: -#line 1153 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1155 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< EnumerationValue > ().name = yystack_[0].value.as< NamedNumber > ().name; yylhs.value.as< EnumerationValue > ().value = yystack_[0].value.as< NamedNumber > ().number; } -#line 7296 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7315 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 307: -#line 1164 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1166 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BitStringType > () = BitStringType{}; } -#line 7302 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7321 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 308: -#line 1166 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1168 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< BitStringType > () = BitStringType{}; } -#line 7308 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7327 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 315: -#line 1195 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1197 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType(); } -#line 7314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7333 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 316: -#line 1197 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1199 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceType > () = SequenceType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7320 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7339 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 317: -#line 1201 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1203 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7345 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 318: -#line 1203 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[3].value.as< ComponentTypeList > (); } -#line 7332 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7351 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 319: -#line 1205 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[5].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7338 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7357 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 320: -#line 1207 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1209 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[7].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[2].value.as< ComponentTypeList > ().begin(), yystack_[2].value.as< ComponentTypeList > ().end()); } -#line 7344 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7363 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 321: -#line 1209 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[9].value.as< ComponentTypeList > (); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[4].value.as< ComponentTypeList > ().begin(), yystack_[4].value.as< ComponentTypeList > ().end()); yylhs.value.as< ComponentTypeList > ().insert(yylhs.value.as< ComponentTypeList > ().end(), yystack_[0].value.as< ComponentTypeList > ().begin(), yystack_[0].value.as< ComponentTypeList > ().end()); } -#line 7350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7369 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 322: -#line 1211 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1213 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[0].value.as< ComponentTypeList > (); } -#line 7356 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7375 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 323: -#line 1213 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7362 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7381 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 324: -#line 1215 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7368 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7387 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 325: -#line 1217 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1219 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = {}; } -#line 7374 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7393 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 326: -#line 1221 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentTypeList > () = ComponentTypeList{yystack_[0].value.as< ComponentType > ()}; } -#line 7380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7399 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 327: -#line 1223 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1225 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yystack_[2].value.as< ComponentTypeList > ().push_back(yystack_[0].value.as< ComponentType > ()); yylhs.value.as< ComponentTypeList > () = yystack_[2].value.as< ComponentTypeList > (); } -#line 7386 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7405 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 328: -#line 1227 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1229 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[0].value.as< NamedType > (), false, absl::nullopt, absl::nullopt}; } -#line 7392 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7411 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 329: -#line 1229 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1231 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[1].value.as< NamedType > (), true, absl::nullopt, absl::nullopt}; } -#line 7398 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7417 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 330: -#line 1231 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1233 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{yystack_[2].value.as< NamedType > (), false, yystack_[0].value.as< Value > (), absl::nullopt}; } -#line 7404 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7423 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 331: -#line 1233 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1235 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ComponentType > () = ComponentType{{}, false, absl::nullopt, yystack_[0].value.as< Type > ()}; } -#line 7410 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7429 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 332: -#line 1245 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } -#line 7416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7435 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 333: -#line 1247 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1249 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SequenceOfType > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } -#line 7422 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7441 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 334: -#line 1251 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{}; } -#line 7428 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7447 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 335: -#line 1253 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1255 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetType > () = SetType{yystack_[1].value.as< ComponentTypeList > ()}; } -#line 7434 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7453 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 336: -#line 1257 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1259 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } -#line 7440 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7459 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 337: -#line 1259 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1261 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< SetOfType > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } -#line 7446 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7465 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 338: -#line 1263 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1265 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ChoiceType > () = ChoiceType{ yystack_[1].value.as< std::vector > () }; } -#line 7452 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7471 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 339: -#line 1267 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1269 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7458 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7477 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 340: -#line 1271 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1273 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); } -#line 7464 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7483 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 341: -#line 1273 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1275 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[2].value.as< std::vector > (); } -#line 7470 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7489 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 342: -#line 1275 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1277 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7495 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 343: -#line 1279 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1281 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = std::vector { yystack_[0].value.as< NamedType > () }; } -#line 7482 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 344: -#line 1281 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1283 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7488 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7507 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 346: -#line 1291 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1293 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< PrefixedType > () = PrefixedType(yystack_[0].value.as< TaggedType > ()); } -#line 7494 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7513 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 347: -#line 1295 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[1].value.as< Tag > (), TaggingMode::automatic, yystack_[0].value.as< Type > () }; } -#line 7500 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7519 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 348: -#line 1297 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::implicit, yystack_[0].value.as< Type > () }; } -#line 7506 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7525 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 349: -#line 1299 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1301 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< TaggedType > () = TaggedType{ yystack_[2].value.as< Tag > (), TaggingMode::explicit_, yystack_[0].value.as< Type > () }; } -#line 7512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7531 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 350: -#line 1303 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1305 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Tag > () = Tag{ yystack_[2].value.as< Class > (), yystack_[1].value.as< int > () }; } -#line 7518 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 353: -#line 1311 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1313 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< int > () = yystack_[0].value.as< long long > (); } -#line 7524 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 355: -#line 1316 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1318 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::universal; } -#line 7530 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 356: -#line 1318 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1320 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::application; } -#line 7536 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7555 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 357: -#line 1320 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1322 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::private_; } -#line 7542 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7561 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 358: -#line 1322 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1324 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Class > () = Class::context_specific; } -#line 7548 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 360: -#line 1335 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1337 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7554 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7573 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 361: -#line 1337 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1339 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { 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 7560 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7579 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 362: -#line 1341 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1343 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > ().push_back(yystack_[0].value.as< ObjectIdComponentValue > ()); } -#line 7566 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7585 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 363: -#line 1343 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1345 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::vector > () = yystack_[0].value.as< std::vector > (); yylhs.value.as< std::vector > ().push_back(yystack_[1].value.as< ObjectIdComponentValue > ()); } -#line 7572 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 364: -#line 1347 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1349 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7578 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7597 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 365: -#line 1349 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1351 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7584 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7603 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 366: -#line 1351 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1353 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[0].value.as< ObjectIdComponentValue > (); } -#line 7590 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7609 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 367: -#line 1355 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1357 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[0].value.as< std::string > (); } -#line 7596 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 368: -#line 1359 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1361 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > ().value = yystack_[0].value.as< long long > (); } -#line 7602 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7621 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 370: -#line 1364 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1366 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< ObjectIdComponentValue > () = yystack_[1].value.as< ObjectIdComponentValue > (); yylhs.value.as< ObjectIdComponentValue > ().name = yystack_[3].value.as< std::string > (); } -#line 7608 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7627 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 404: -#line 1460 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1462 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[1].value.as< Type > (); } -#line 7614 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7633 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 405: -#line 1462 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1464 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = yystack_[0].value.as< Type > (); } -#line 7620 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7639 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 406: -#line 1466 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1468 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } -#line 7626 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7645 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 407: -#line 1468 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1470 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } -#line 7632 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7651 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 408: -#line 1470 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1472 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } -#line 7638 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7657 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 409: -#line 1472 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1474 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ false, nullptr, std::unique_ptr(new Type(yystack_[0].value.as< Type > ())) }; } -#line 7644 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7663 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 410: -#line 1474 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1476 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } -#line 7650 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7669 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 411: -#line 1476 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1478 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SetOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } -#line 7656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7675 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 412: -#line 1478 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1480 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } -#line 7662 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7681 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 413: -#line 1480 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1482 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< Type > () = SequenceOfType{ true, std::unique_ptr(new NamedType(yystack_[0].value.as< NamedType > ())), nullptr }; } -#line 7668 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7687 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 496: -#line 1648 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1650 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7674 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7693 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 497: -#line 1652 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1654 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7680 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7699 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 498: -#line 1656 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1658 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7686 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7705 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 499: -#line 1660 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1662 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7692 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; case 500: -#line 1664 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 +#line 1666 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:859 { yylhs.value.as< std::string > () = yystack_[0].value.as< std::string > (); } -#line 7698 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7717 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 break; -#line 7702 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 +#line 7721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:859 default: break; } @@ -7955,101 +7974,101 @@ namespace yy { } - const short int asn1_parser::yypact_ninf_ = -778; + const short int asn1_parser::yypact_ninf_ = -658; const short int asn1_parser::yytable_ninf_ = -501; const short int asn1_parser::yypact_[] = { - -73, -778, 92, -73, 67, 25, -778, -778, 111, 24, - -778, 70, -778, 159, 177, -778, -778, 40, 24, -778, - -778, -778, 183, 124, -778, -778, 212, 230, 246, 305, - -778, -778, 398, 371, 268, -778, -778, -778, 346, 299, - 292, -778, -778, -778, 371, 289, -778, 391, -778, 268, - -778, 82, -778, 71, -778, 357, 290, -778, -778, 291, - 302, -778, -778, 318, -778, 389, 245, 245, -778, -778, - 245, 321, -778, 306, 245, -778, -23, -778, -778, -778, - -778, -778, -778, -778, -778, 245, -778, -778, -778, 2257, - 2558, -778, -778, -778, -778, -73, -778, -778, -778, -778, - -778, 348, -778, -778, 349, 329, -778, -778, -778, 363, - 332, -778, -778, -778, -778, -778, 375, 334, -778, -778, - 394, -778, 361, -778, -778, -778, -778, -778, -30, -14, - -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, - 2657, 3057, 450, -778, 343, -778, -778, 351, -778, -778, - 2756, 344, -778, -778, 359, -778, -778, 362, 135, -778, - -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, - -778, -778, -778, -778, -778, 2360, -778, -778, -778, -778, - -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, - -778, -778, 122, 337, 347, 3156, 218, 128, 353, -778, - 95, 365, -778, 342, -778, 108, 29, 342, -778, -778, - 3156, 367, -3, 1266, 400, 408, 3156, 3, 413, 416, - 380, -778, -778, -778, 343, -778, -778, 367, 368, -778, - 154, -778, 102, -778, 364, -778, 374, 367, 172, 376, - 38, 372, 385, 2657, 219, 372, 1521, 392, -778, 3156, - 3156, 367, 22, 3156, 30, 225, 2151, 496, 23, -778, - -778, -778, 342, -778, 395, -778, 382, 3156, 390, -778, - 396, 386, -778, 399, 388, -778, -778, 407, 145, -778, - 399, 367, -778, 2859, -778, 437, 390, -778, 6, 402, - 393, -778, -778, -778, -778, -778, -778, -778, 474, 162, - 494, 3156, 498, -778, 367, -778, -778, 2151, 523, -778, - 354, 1390, 1646, 541, 173, -778, 423, -778, -778, -778, - -778, 367, -778, -778, -778, 390, -778, -778, 412, -48, - -32, -12, -10, -778, 474, 492, -778, 184, -778, 3156, - -778, 428, 422, -778, -778, -778, -778, -778, -778, 3156, - 3156, 367, -778, -778, 429, 3156, 3156, 325, 36, -778, - 3057, 245, -778, -778, -778, -778, 26, -778, -778, -778, - 415, -778, -778, 367, 2151, 415, -778, -778, -778, -778, - -778, -778, 430, -778, 2151, 247, -778, -778, 2151, -778, - 190, 228, -778, 417, 433, -778, -778, 435, 426, -778, - 367, 214, 192, 427, 420, -778, -778, -778, -778, 131, - 434, 1646, -778, 367, 367, 415, -778, 367, -778, -778, - 2151, -778, -778, -49, 440, -778, -778, 192, 441, 444, - -778, 23, 443, 23, -778, -778, -778, 445, 449, 168, - -778, 457, -778, 118, 367, 2001, -778, -778, 121, 20, - 439, -778, 342, 3156, 447, 795, -778, -778, 8, 1902, - -778, 462, -11, 2151, -778, 192, -778, 367, 465, 453, - 466, 455, 469, -778, 456, 472, 479, -778, -778, 1902, - -778, -778, 1902, -778, 367, 358, -778, 367, -778, 367, - -778, -778, 367, -778, 367, -778, 3255, 2459, 29, 175, - -778, -778, 54, -778, -778, -778, -778, -778, -778, -778, - -778, -778, -778, -778, 473, 372, 192, 192, 192, 831, - 599, 1521, -778, 1521, 2151, 2151, 2151, 2151, 2151, 377, - 18, 480, 192, 372, 459, -778, 481, -778, -778, 32, - -778, 342, 39, 476, -778, -778, -58, -778, -778, 477, - 390, -778, 489, 490, -778, 367, 42, -778, -778, -778, - -778, 390, -778, -778, 2958, 578, 192, -778, -778, 129, - -778, 1646, -778, 497, -778, 163, 178, -778, -778, 483, - -12, -778, -778, 778, -778, -778, -778, 19, -27, -34, - -27, 105, 501, 325, -778, 3156, -778, -778, -778, -778, - -778, 192, 495, 503, -778, 192, 192, 192, 192, 192, - -778, -778, -778, -778, -778, 499, -778, 502, 504, 342, - 2151, 11, 486, -778, -778, -778, 500, 505, -778, 507, - -778, 493, 510, 281, 508, 2151, 191, 513, 511, 367, - -778, 512, 509, 514, -778, -778, 456, 1646, -778, 13, - -778, -778, -778, -778, 155, 160, 160, -778, -778, -778, - 535, -778, -778, 367, -778, -778, -778, -778, -778, 516, - 192, 342, 76, 4, 2119, -778, 41, 192, -778, 342, - -778, 342, -778, -778, 52, 1646, 509, 342, 342, -778, - -778, 1141, -778, -778, -778, -778, -778, 392, -778, -778, - 795, -778, -778, -778, 521, 342, 518, -778, 519, 1141, - -778, 192, 525, 515, -778, -778, -778, -778, -778, -778, - -778, 514, -778, 3824, 3912, -778, 524, -778, -778, 430, - -778, -778, 348, -778, -778, -778, 349, 329, -778, -778, - -778, -778, 2151, -778, -778, -778, -778, -778, 363, -778, - -778, -778, 332, -778, -778, -778, -778, -778, -778, -778, - -778, -778, -778, -778, -778, 375, -778, 90, -778, -778, - -778, -778, -778, 394, 361, -778, -778, -778, -778, -778, - -778, -778, -778, -778, -778, -778, -30, -14, -778, -778, - -778, -778, -778, -778, -778, -778, 529, -778, -778, -778, - -778, -778, -49, 1777, -778, 520, 1004, -778, -778, 367, - 192, -778, -778, -778, 3728, -778, 342, 78, 192, -778, - -778, 526, -778, -778, -778, -778, -778, -778, -778, -778, - -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, - -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, - -778, -778, -778, -778, -778, -778, 3728, -778, 3494, -778, - -778, -778, 3377, -778, 531, 544, 3611, -778, -778, -778, - -778, 4, -778, -778, 540, 4 + -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 }; const unsigned short int @@ -8084,9 +8103,9 @@ namespace yy { 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, 457, 451, 452, 453, 383, 0, 314, - 0, 0, 0, 288, 0, 459, 466, 0, 0, 287, - 0, 0, 0, 0, 454, 455, 130, 416, 119, 120, + 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, @@ -8102,436 +8121,350 @@ namespace yy { 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, 296, 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, 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 }; const short int asn1_parser::yypgoto_[] = { - -778, 646, -778, -778, -137, -778, -81, -778, 438, -778, - -778, 89, -477, 138, -778, -778, -778, -176, -778, 31, - -778, -778, -778, -778, -778, -778, -778, -778, -185, -777, - -778, -778, -778, -656, -584, -778, 14, -778, -778, -778, - -778, -778, -121, -113, 130, -778, -778, 458, -778, -51, - -778, -778, -778, -778, -778, 602, -778, 335, -778, 133, - -778, -778, -778, -778, -778, -778, -778, -778, -778, -778, - 53, 12, 16, -778, -778, -778, -778, -778, -778, 683, - -778, 670, -778, -778, -778, -778, -778, -778, -778, -778, - -778, -778, 630, -778, -778, 652, 637, -120, 623, -778, - -778, -221, -778, -778, -247, -778, -778, -778, -778, -778, - -778, -67, -778, -119, -236, 223, -778, -778, 17, -778, - -778, 198, -778, -778, -200, 147, -778, -778, 44, -443, - -778, -778, -778, 169, -778, -778, -778, 517, -542, -450, - -778, -778, -778, -778, -778, -778, 93, -778, -778, -778, - -778, -778, -778, -778, -778, -778, -57, -778, 298, 170, - -778, -778, -778, 700, -778, 664, 672, -778, -778, -778, - -778, 282, -778, -778, -778, -778, -778, -778, -778, -778, - -778, -112, -778, -778, -281, -305, -778, -778, 238, -778, - 237, -778, 387, -778, -778, 261, -778, -436, -778, -778, - -778, -778, -778, -778, 139, -127, -778, -778, -778, -778, - -778, -297, -778, -778, -778, -778, -778, -778, -275, -778, - 49, -9, -41, 15, -345, -778 + -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 }; const short int asn1_parser::yydefgoto_[] = { - -1, 2, 3, 815, 392, 223, 144, 77, 225, 226, - 499, 500, 369, 415, 501, 502, 597, 654, 503, 702, - 504, 505, 699, 506, 651, 507, 659, 661, 858, 859, - 860, 861, 862, 863, 145, 146, 693, 694, 695, 805, - 696, 806, 807, 808, 147, 148, 78, 316, 470, 149, + -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, 79, 80, 81, 82, 83, 150, 232, 233, 234, 235, - 151, 152, 153, 154, 394, 317, 318, 632, 319, 576, - 577, 687, 643, 320, 65, 4, 10, 11, 12, 17, + 151, 152, 153, 154, 394, 317, 318, 631, 319, 575, + 576, 686, 642, 320, 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, 519, + 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, 168, 169, 170, 171, 264, 265, 266, 172, 173, 174, - 175, 240, 514, 366, 176, 260, 432, 433, 434, 435, + 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, 479, 482, 335, 336, 337, 338, 339, - 340, 341, 585, 342, 586, 343, 344, 345, 346, 568, - 570, 637, 638, 683, 684, 718, 347, 348, 446, 548, - 197, 193, 409, 198, 229, 811 + 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 }; const short int asn1_parser::yytable_[] = { - 22, 215, 219, 222, 231, 551, 471, 279, 562, 22, - 401, 454, 64, 509, 626, 5, 214, 218, 5, 560, - 589, 236, 158, 196, 292, 64, 90, 430, 15, 64, - 512, 472, 418, 64, 97, 804, 430, 431, 599, 418, - 95, 285, 565, 617, 90, 367, 368, 285, 285, 584, - 475, 418, 285, 804, 652, 455, 210, 418, 98, 224, - 224, 652, 418, -425, -428, 692, 480, 213, 649, 275, - 363, 211, 216, 227, 237, 1, -496, 594, 653, 477, - 715, 868, 620, 244, 263, 653, 285, 211, -496, 868, - 692, 282, 6, 212, 456, 213, -425, 352, 213, 284, - 64, 56, 63, 595, 194, 509, 222, 650, 251, 217, - 200, 213, 478, 70, 213, 63, 89, 8, 286, 63, - 285, 287, 285, 63, 286, 276, 13, 353, 255, 561, - 531, 708, 364, -428, 89, 481, 691, -166, 192, 134, - 716, 53, 596, 281, 717, 513, 16, 584, 9, 351, - 804, 365, 16, 16, 657, 228, 228, 16, 313, 261, - 58, 1, 224, 625, 30, 224, 508, 58, 1, 58, - 57, 1, 230, 16, 1, 58, 373, 274, 57, 400, - 1, 58, 413, 414, 508, 509, 417, 1, 58, 712, - 238, 16, 464, 658, 267, 393, 273, 707, 280, 864, - 444, 283, 23, 267, 697, 425, 870, 283, 267, 700, - 535, 26, 535, 207, 803, -289, 444, 438, 258, 57, - 58, 277, 562, 231, 545, 16, 359, 16, 552, 268, - 488, 490, 803, 25, 462, 27, 493, 495, 360, 543, - 236, 511, 550, 698, 58, -116, 28, -198, 701, 437, - 636, -116, 554, 441, -118, 247, 425, 16, 228, 252, - 213, 410, -198, 33, 813, 252, 640, 16, 529, 451, - 16, 429, 484, 429, 603, 622, 604, -498, 16, 224, - -498, 452, 487, 489, -449, 401, 627, 401, 492, 494, - -498, -449, 540, 237, -498, 71, -496, -198, -496, 592, - 642, 416, 645, 419, 541, 428, -465, 21, 32, 252, - -496, 593, 16, -465, 646, 678, 21, 35, 535, 64, - 64, 618, 429, 425, 544, 438, -277, 679, 524, 874, - -277, 509, 525, 425, -277, 36, 526, 425, 256, 374, - 283, 283, 690, 213, 213, 420, 283, 283, 496, 497, - 213, 37, 498, 520, -276, 567, 428, -497, -276, 587, - 323, 591, 292, 293, 294, 38, 295, 562, 296, 425, - 207, -289, -289, 551, 536, 228, 538, 297, 546, 370, - 719, 429, 713, 375, 714, 869, 555, 41, 42, 429, - 438, 557, 438, 57, 58, 367, 368, 467, 468, 429, - 610, 611, 15, 429, 438, -126, 213, 44, 438, 238, - 63, 322, 425, 655, 656, 224, 46, 276, 48, 47, - 303, 50, 437, 428, 437, 562, 51, 629, 66, 588, - 590, 68, 69, 428, 267, 429, 582, 428, 70, 273, - 224, 71, 224, 280, 72, 92, 429, 93, 429, 267, - 201, 202, 203, 204, 400, 205, 400, 207, 323, 323, - 549, 206, 208, 209, 429, 239, 253, 309, 425, 428, - 393, 242, 393, 425, 425, 425, 425, 425, 429, 427, - 241, 245, 246, 224, 254, -115, 349, 583, 262, 612, - 257, 16, 213, 612, 350, 324, 313, 633, 438, 355, - 263, 438, 356, 357, 361, 358, 558, 559, 311, 322, - 322, 228, 428, 277, -109, 411, 362, 418, 443, 442, - 447, 445, 448, 453, 449, -499, 457, 682, 663, 458, - 465, 459, 441, 461, 429, 466, 410, 463, 410, 429, - 429, 429, 429, 429, 450, 473, 474, 267, 476, -431, - 485, 486, 515, 491, 429, -314, 521, 429, 323, 522, - 639, -264, 523, 527, 528, 520, 644, 537, 428, 425, - 539, 530, -118, 428, 428, 428, 428, 428, 533, 634, - 612, 534, 542, 556, 425, 564, 544, 508, 569, 571, - 572, 573, 547, 324, 324, 574, 553, 516, 578, 575, - 579, 598, 323, 602, 613, 614, 323, 517, 58, 322, - 267, 518, 619, 192, 621, 623, 624, 635, 641, 647, - 660, 664, 671, 425, 809, 666, 323, 665, 667, 323, - 668, -127, 323, 674, 675, 429, 672, 680, 704, 819, - 393, 673, 809, 532, 814, 676, 686, 681, 685, 7, - 429, 688, 705, 322, 816, 817, 821, 322, 393, 215, - 219, -11, 273, 267, 267, -500, -10, 871, 872, 428, - 639, 866, 639, 865, 214, 218, 875, 322, 644, 722, - 322, 372, 662, 322, 428, 823, 566, 703, 710, 549, - 820, 425, 195, 324, 630, 510, 267, 631, 720, 689, - 371, 31, 40, 721, 94, 60, 549, 91, 96, 615, - 616, 24, 669, 52, 812, 706, 49, 580, 323, 581, - 563, 483, 648, 428, 549, 419, 0, 0, 0, 0, - 323, 0, 0, 0, 354, 0, 809, 324, 0, 809, - 0, 324, 601, 0, 0, 0, 0, 605, 606, 607, - 608, 609, 393, 0, 0, 393, 0, 429, 0, 0, - 0, 324, 0, 0, 324, 0, 0, 324, 0, 322, + 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 322, 292, 293, 294, 0, 295, 0, 296, 0, - 0, 428, 0, 0, 323, 0, 0, 297, 0, 292, - 293, 294, 0, 295, 0, 296, 0, 273, 267, 0, - 0, 557, 0, 0, 297, 0, 0, 0, 549, 0, - 0, 549, 0, 0, 0, 0, 0, 0, 557, 0, - 0, 0, 323, 0, 0, 292, 376, 377, 0, 378, - 303, 379, 0, 670, 0, 322, 0, 323, 0, 0, - 297, 0, 0, 324, 380, 381, 582, 303, 677, 0, - 98, 0, 267, 0, 421, 324, 267, 0, 0, 0, - 383, 0, 0, 0, 0, 0, 0, 384, 0, 0, - 0, 0, 0, 322, 0, 0, 0, 309, 0, 0, - 0, 0, 0, 303, 0, 0, 0, 711, 322, 0, - 0, 0, 0, 0, 309, 0, 422, 0, 0, 0, - 0, 0, 0, 0, 810, 0, 313, 0, 0, 386, - 0, 0, 0, 0, 0, 0, 558, 559, 0, 324, - 0, 0, 818, 313, 0, 0, 0, 0, 0, 0, - 309, 134, 0, 558, 559, 0, 0, 0, 0, 0, - 387, 0, 0, 0, 388, 600, 0, 0, 0, 0, - 0, 0, 0, 23, 0, 517, 0, 324, 0, 313, - 0, 389, 0, 0, 0, 0, 0, 0, 0, 423, - 424, 0, 324, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 292, 376, - 377, 0, 378, 0, 379, 0, 0, 0, 0, 0, - 0, 0, 0, 297, 0, 97, 810, 380, 381, 810, - 0, 0, 725, 726, 727, 99, 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, 759, 112, 113, - 114, 115, 760, 761, 762, 763, 764, 765, 766, 767, - 768, 118, 769, 770, 771, 772, 119, 773, 121, 774, - 775, 776, 777, 778, 779, 780, 781, 124, 782, 783, - 784, 785, 786, 787, 788, 789, 790, 791, 130, 792, - 131, 793, 794, 795, 796, 797, 798, 799, 135, 136, - 137, 138, 139, 800, 0, 0, 0, 388, 822, 0, - 0, 142, 0, 0, 0, 0, 23, 0, 0, 0, - 801, 0, 313, 0, 389, 292, 376, 377, 0, 378, - 0, 379, 802, 391, 0, 0, 0, 0, 0, 0, - 297, 0, 97, 0, 723, 724, 0, 0, 0, 725, - 726, 727, 99, 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, 759, 112, 113, 114, 115, 760, - 761, 762, 763, 764, 765, 766, 767, 768, 118, 769, - 770, 771, 772, 119, 773, 121, 774, 775, 776, 777, - 778, 779, 780, 781, 124, 782, 783, 784, 785, 786, - 787, 788, 789, 790, 791, 130, 792, 131, 793, 794, - 795, 796, 797, 798, 799, 135, 136, 137, 138, 139, - 800, 0, 0, 0, 388, 0, 0, 0, 142, 0, - 292, 293, 294, 23, 295, 0, 296, 801, 0, 313, - 0, 389, 0, 0, 0, 297, 0, 97, 0, 802, - 391, 0, 0, 0, 0, 98, 298, 99, 0, 299, - 0, 0, 101, 102, 103, 0, 104, 105, 0, 0, - 0, 300, 301, 106, 107, 0, 0, 108, 109, 302, - 0, 0, 110, 0, 0, 0, 0, 111, 303, 304, - 112, 113, 114, 115, 0, 0, 0, 0, 305, 116, - 0, 117, 0, 118, 0, 306, 0, 0, 119, 120, - 121, 122, 0, 123, 0, 307, 0, 0, 0, 124, - 0, 125, 126, 127, 128, 129, 308, 211, 0, 0, - 130, 0, 131, 132, 133, 309, 134, 0, 0, 0, - 135, 136, 137, 138, 139, 310, 0, 0, 0, 311, - 0, 312, 0, 142, 292, 293, 294, 0, 295, 0, - 296, 0, 0, 0, 313, 0, 0, 0, 0, 297, - 0, 97, 0, 0, 314, 315, 0, 0, 0, 98, - 298, 99, 0, 299, 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, 303, 304, 112, 113, 114, 115, 0, 0, - 0, 0, 305, 116, 0, 117, 0, 118, 0, 306, - 0, 0, 119, 120, 121, 122, 0, 123, 0, 307, - 0, 0, 0, 124, 0, 125, 126, 127, 128, 129, - 308, 211, 0, 0, 130, 0, 131, 132, 133, 309, - 134, 0, 0, 0, 135, 136, 137, 138, 139, 310, - 0, 469, 0, 0, 0, 312, 0, 142, 0, 0, - 0, 0, 0, 0, 0, 292, 376, 377, 313, 378, - 0, 379, 0, 0, 0, 0, 0, 0, 314, 315, - 297, 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, 303, 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, 124, 0, 125, 126, 127, 128, - 129, 0, 0, 0, 0, 130, 0, 131, 132, 133, - 309, 134, 0, 0, 0, 135, 136, 137, 138, 139, - 387, 0, 0, 0, 388, 0, 0, 0, 142, 0, - 292, 293, 294, 23, 295, 0, 296, 0, 0, 313, - 0, 389, 0, 0, 0, 297, 0, 97, 0, 390, - 391, 0, 0, 0, 0, 98, 298, 99, 0, 299, + 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, 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, 303, 304, - 112, 113, 114, 115, 0, 0, 0, 0, 305, 116, - 0, 117, 0, 118, 0, 306, 0, 0, 119, 120, - 121, 122, 0, 123, 0, 307, 0, 0, 0, 124, - 0, 125, 126, 127, 128, 129, 308, 211, 0, 0, - 130, 0, 131, 132, 133, 309, 134, 0, 0, 0, - 135, 136, 137, 138, 139, 310, 0, 0, 0, 0, - 0, 312, 0, 142, 0, 0, 0, 0, 0, 0, - 0, 292, 376, 377, 313, 378, 0, 379, 0, 0, - 0, 0, 0, 0, 314, 315, 297, 0, 97, 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, 303, + 0, 0, 0, 110, 0, 0, 0, 0, 111, 304, 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, 124, 0, 125, 126, 127, 128, 129, 0, 0, 0, - 0, 130, 0, 131, 132, 133, 309, 134, 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, 0, 292, 293, 294, 23, - 295, 0, 296, 0, 0, 313, 0, 389, 0, 0, - 0, 297, 0, 97, 0, 423, 391, 0, 0, 0, - 0, 98, 0, 99, 0, 299, 0, 0, 101, 102, + 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, 103, 0, 104, 105, 0, 0, 0, 0, 0, 106, 107, 0, 0, 108, 109, 0, 0, 0, 110, 0, - 0, 0, 0, 111, 303, 304, 112, 113, 114, 115, - 0, 0, 0, 0, 305, 116, 0, 117, 0, 118, - 0, 306, 0, 0, 119, 120, 121, 122, 0, 123, - 0, 307, 0, 0, 0, 124, 0, 125, 126, 127, - 128, 129, 308, 211, 0, 292, 130, 0, 131, 132, - 133, 309, 134, 0, 0, 0, 135, 136, 137, 138, - 139, 310, 97, 0, 0, 0, 0, 312, 0, 142, - 98, 0, 99, 0, 100, 0, 0, 101, 102, 103, - 313, 104, 105, 0, 0, 0, 0, 0, 106, 107, - 314, 315, 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, 292, 376, 377, 0, 378, 142, 379, - 0, 0, 0, 0, 0, 0, 0, 0, 297, 313, - 97, 0, 380, 381, 0, 0, 0, 0, 98, 143, - 230, 0, 421, 0, 0, 292, 376, 377, 383, 378, - 0, 379, 0, 0, 0, 384, 0, 0, 0, 0, - 297, 0, 0, 0, 380, 381, 0, 0, 0, 0, - 98, 303, 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, 303, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 422, 0, 309, 134, - 0, 0, 0, 0, 0, 0, 0, 0, 387, 386, - 0, 0, 709, 0, 0, 0, 0, 0, 0, 0, - 0, 23, 0, 0, 0, 0, 0, 313, 0, 389, - 309, 134, 0, 0, 0, 0, 0, 423, 424, 0, - 387, 0, 0, 0, 388, 0, 0, 0, 97, 0, - 0, 0, 0, 23, 0, 0, 98, 0, 99, 313, - 100, 389, 0, 101, 102, 103, 0, 104, 105, 423, - 424, 0, 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, 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, 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, + 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, + 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, + 118, 0, 0, 0, 0, 119, 120, 121, 122, 0, + 123, 386, 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, + 0, 0, 0, 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, 628, - 0, 0, 0, 0, 0, 142, 98, 0, 99, 0, + 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, 100, 0, 0, 101, 102, 103, 0, 104, 105, 0, - 0, 0, 0, 0, 106, 107, 221, 16, 108, 109, + 0, 0, 0, 0, 106, 107, 314, 315, 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, 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, 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, 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, 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, @@ -8541,642 +8474,716 @@ namespace yy { 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, - 367, 368, 0, 221, 16, 725, 824, 727, 0, 728, - 825, 730, 731, 826, 827, 828, 829, 830, 831, 738, - 739, 740, 741, 832, 833, 834, 745, 746, 835, 836, - 749, 750, 751, 837, 753, 754, 755, 756, 838, 839, - 759, 0, 0, 0, 0, 760, 761, 762, 763, 764, - 840, 766, 841, 768, 0, 769, 770, 771, 772, 0, - 842, 0, 843, 775, 844, 845, 778, 779, 780, 781, - 0, 782, 846, 847, 848, 849, 850, 788, 789, 790, - 791, 0, 792, 0, 851, 852, 853, 854, 797, 798, - 799, 0, 0, 0, 0, 0, 855, 0, 0, 0, + 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, 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, 627, 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, 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, 801, 0, 0, 0, 0, 0, 0, - 0, 0, 725, 824, 727, 857, 728, 825, 730, 731, - 826, 827, 828, 829, 830, 831, 738, 739, 740, 741, - 832, 833, 834, 745, 746, 835, 836, 749, 750, 751, - 837, 753, 754, 755, 756, 838, 839, 759, 0, 0, - 0, 0, 760, 761, 762, 763, 764, 840, 766, 841, - 768, 0, 769, 770, 771, 772, 0, 842, 0, 843, - 775, 844, 845, 778, 779, 780, 781, 0, 782, 846, - 847, 848, 849, 850, 788, 789, 790, 791, 0, 792, - 0, 851, 852, 853, 854, 797, 798, 799, 0, 0, - 0, 0, 0, 855, 0, 0, 0, 0, 867, 0, - 0, 856, 0, 0, 0, 0, 0, 0, 0, 0, - 801, 0, 0, 0, 0, 0, 0, 0, 0, 725, - 824, 727, 857, 728, 825, 730, 731, 826, 827, 828, - 829, 830, 831, 738, 739, 740, 741, 832, 833, 834, - 745, 746, 835, 836, 749, 750, 751, 837, 753, 754, - 755, 756, 838, 839, 759, 0, 0, 0, 0, 760, - 761, 762, 763, 764, 840, 766, 841, 768, 0, 769, - 770, 771, 772, 0, 842, 0, 843, 775, 844, 845, - 778, 779, 780, 781, 0, 782, 846, 847, 848, 849, - 850, 788, 789, 790, 791, 0, 792, 0, 851, 852, - 853, 854, 797, 798, 799, 0, 0, 0, 0, 0, - 855, 0, 0, 0, 0, 0, 0, 0, 856, 873, - 0, 0, 0, 0, 0, 0, 0, 801, 0, 0, - 0, 0, 0, 0, 0, 0, 725, 824, 727, 857, - 728, 825, 730, 731, 826, 827, 828, 829, 830, 831, - 738, 739, 740, 741, 832, 833, 834, 745, 746, 835, - 836, 749, 750, 751, 837, 753, 754, 755, 756, 838, - 839, 759, 0, 0, 0, 0, 760, 761, 762, 763, - 764, 840, 766, 841, 768, 0, 769, 770, 771, 772, - 0, 842, 0, 843, 775, 844, 845, 778, 779, 780, - 781, 0, 782, 846, 847, 848, 849, 850, 788, 789, - 790, 791, 0, 792, 0, 851, 852, 853, 854, 797, - 798, 799, 0, 0, 0, 0, 0, 855, 0, 0, - 0, 0, -268, 0, -268, 856, -268, 0, -268, -268, - 0, 0, 0, 0, 801, 0, -268, -268, -268, -268, - 0, 0, 0, -268, -268, 0, 857, -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, 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 }; const short int asn1_parser::yycheck_[] = { - 9, 128, 129, 140, 141, 448, 311, 207, 458, 18, - 246, 286, 53, 358, 556, 0, 128, 129, 3, 455, - 497, 141, 89, 90, 4, 66, 67, 4, 4, 70, - 4, 312, 21, 74, 21, 691, 4, 258, 515, 21, - 63, 44, 53, 4, 85, 23, 24, 44, 44, 485, - 325, 21, 44, 709, 88, 49, 86, 21, 29, 140, - 141, 88, 21, 111, 76, 649, 76, 125, 49, 206, - 32, 101, 86, 140, 141, 148, 125, 23, 112, 111, - 28, 858, 140, 150, 203, 112, 44, 101, 137, 866, - 674, 210, 0, 123, 88, 125, 144, 216, 125, 211, - 141, 30, 53, 49, 89, 450, 243, 88, 175, 123, - 95, 125, 144, 136, 125, 66, 67, 50, 121, 70, - 44, 124, 44, 74, 121, 206, 15, 124, 195, 121, - 411, 673, 94, 145, 85, 145, 123, 55, 89, 110, - 88, 59, 88, 210, 92, 366, 149, 583, 123, 216, - 806, 113, 149, 149, 49, 140, 141, 149, 138, 200, - 149, 148, 243, 121, 124, 246, 148, 149, 148, 149, - 148, 148, 149, 149, 148, 149, 243, 148, 148, 246, - 148, 149, 249, 250, 148, 530, 253, 148, 149, 148, - 141, 149, 304, 88, 203, 246, 205, 121, 207, 121, - 267, 210, 132, 212, 49, 256, 862, 216, 217, 49, - 431, 34, 433, 123, 691, 125, 283, 258, 123, 148, - 149, 206, 672, 360, 445, 149, 124, 149, 449, 121, - 349, 350, 709, 74, 301, 58, 355, 356, 136, 121, - 360, 361, 121, 88, 149, 123, 69, 125, 88, 258, - 121, 123, 452, 262, 123, 120, 307, 149, 243, 137, - 125, 246, 140, 139, 700, 137, 571, 149, 137, 124, - 149, 256, 339, 258, 521, 550, 523, 123, 149, 360, - 126, 136, 349, 350, 122, 521, 561, 523, 355, 356, - 136, 129, 124, 360, 140, 123, 123, 125, 125, 124, - 137, 252, 124, 254, 136, 256, 122, 9, 125, 137, - 137, 136, 149, 129, 136, 124, 18, 105, 539, 360, - 361, 542, 307, 374, 443, 366, 136, 136, 136, 871, - 140, 676, 140, 384, 144, 105, 144, 388, 120, 120, - 349, 350, 647, 125, 125, 120, 355, 356, 23, 24, - 125, 105, 27, 125, 140, 467, 307, 129, 144, 496, - 213, 498, 4, 5, 6, 60, 8, 817, 10, 420, - 123, 124, 125, 816, 431, 360, 433, 19, 445, 241, - 685, 366, 679, 245, 681, 862, 453, 16, 17, 374, - 431, 33, 433, 148, 149, 23, 24, 43, 44, 384, - 23, 24, 4, 388, 445, 124, 125, 139, 449, 360, - 361, 213, 463, 589, 590, 496, 70, 498, 126, 120, - 62, 132, 431, 374, 433, 875, 35, 564, 71, 496, - 497, 141, 141, 384, 443, 420, 78, 388, 136, 448, - 521, 123, 523, 452, 55, 124, 431, 141, 433, 458, - 102, 102, 123, 90, 521, 123, 523, 123, 311, 312, - 445, 86, 68, 102, 449, 15, 129, 109, 519, 420, - 521, 120, 523, 524, 525, 526, 527, 528, 463, 256, - 137, 137, 123, 564, 137, 123, 86, 129, 123, 530, - 137, 149, 125, 534, 86, 213, 138, 564, 539, 86, - 619, 542, 86, 123, 140, 137, 148, 149, 123, 311, - 312, 496, 463, 498, 140, 123, 140, 21, 136, 124, - 124, 131, 136, 86, 125, 137, 124, 639, 595, 136, - 307, 57, 541, 39, 519, 12, 521, 39, 523, 524, - 525, 526, 527, 528, 137, 4, 123, 556, 136, 57, - 122, 129, 137, 124, 539, 125, 123, 542, 411, 124, - 569, 144, 136, 136, 144, 125, 575, 124, 519, 620, - 125, 137, 123, 524, 525, 526, 527, 528, 137, 564, - 621, 137, 125, 136, 635, 123, 705, 148, 123, 136, - 124, 136, 445, 311, 312, 126, 449, 374, 126, 143, - 121, 128, 455, 4, 124, 124, 459, 384, 149, 411, - 619, 388, 136, 564, 137, 126, 126, 39, 121, 136, - 119, 126, 136, 674, 691, 126, 479, 124, 126, 482, - 126, 124, 485, 140, 124, 620, 136, 124, 103, 124, - 691, 136, 709, 420, 123, 137, 137, 136, 136, 3, - 635, 137, 136, 455, 136, 136, 136, 459, 709, 786, - 787, 137, 671, 672, 673, 140, 137, 136, 124, 620, - 679, 856, 681, 147, 786, 787, 136, 479, 687, 688, - 482, 243, 593, 485, 635, 806, 463, 656, 674, 674, - 803, 742, 90, 411, 564, 360, 705, 564, 686, 646, - 242, 18, 32, 687, 74, 53, 691, 70, 85, 539, - 541, 11, 619, 49, 697, 671, 44, 479, 571, 482, - 459, 334, 583, 674, 709, 676, -1, -1, -1, -1, - 583, -1, -1, -1, 217, -1, 803, 455, -1, 806, - -1, 459, 519, -1, -1, -1, -1, 524, 525, 526, - 527, 528, 803, -1, -1, 806, -1, 742, -1, -1, - -1, 479, -1, -1, 482, -1, -1, 485, -1, 571, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 583, 4, 5, 6, -1, 8, -1, 10, -1, - -1, 742, -1, -1, 647, -1, -1, 19, -1, 4, - 5, 6, -1, 8, -1, 10, -1, 816, 817, -1, - -1, 33, -1, -1, 19, -1, -1, -1, 803, -1, - -1, 806, -1, -1, -1, -1, -1, -1, 33, -1, - -1, -1, 685, -1, -1, 4, 5, 6, -1, 8, - 62, 10, -1, 620, -1, 647, -1, 700, -1, -1, - 19, -1, -1, 571, 23, 24, 78, 62, 635, -1, - 29, -1, 871, -1, 33, 583, 875, -1, -1, -1, - 39, -1, -1, -1, -1, -1, -1, 46, -1, -1, - -1, -1, -1, 685, -1, -1, -1, 109, -1, -1, - -1, -1, -1, 62, -1, -1, -1, 674, 700, -1, - -1, -1, -1, -1, 109, -1, 75, -1, -1, -1, - -1, -1, -1, -1, 691, -1, 138, -1, -1, 88, - -1, -1, -1, -1, -1, -1, 148, 149, -1, 647, - -1, -1, 709, 138, -1, -1, -1, -1, -1, -1, - 109, 110, -1, 148, 149, -1, -1, -1, -1, -1, - 119, -1, -1, -1, 123, 124, -1, -1, -1, -1, - -1, -1, -1, 132, -1, 742, -1, 685, -1, 138, - -1, 140, -1, -1, -1, -1, -1, -1, -1, 148, - 149, -1, 700, -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, 4, 5, - 6, -1, 8, -1, 10, -1, -1, -1, -1, -1, - -1, -1, -1, 19, -1, 21, 803, 23, 24, 806, - -1, -1, 28, 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, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, -1, -1, -1, 123, 124, -1, - -1, 127, -1, -1, -1, -1, 132, -1, -1, -1, - 136, -1, 138, -1, 140, 4, 5, 6, -1, 8, - -1, 10, 148, 149, -1, -1, -1, -1, -1, -1, - 19, -1, 21, -1, 23, 24, -1, -1, -1, 28, - 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, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, -1, -1, -1, 123, -1, -1, -1, 127, -1, - 4, 5, 6, 132, 8, -1, 10, 136, -1, 138, - -1, 140, -1, -1, -1, 19, -1, 21, -1, 148, - 149, -1, -1, -1, -1, 29, 30, 31, -1, 33, - -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, - -1, 45, 46, 47, 48, -1, -1, 51, 52, 53, - -1, -1, 56, -1, -1, -1, -1, 61, 62, 63, - 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, - -1, 75, -1, 77, -1, 79, -1, -1, 82, 83, - 84, 85, -1, 87, -1, 89, -1, -1, -1, 93, - -1, 95, 96, 97, 98, 99, 100, 101, -1, -1, - 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, - 114, 115, 116, 117, 118, 119, -1, -1, -1, 123, - -1, 125, -1, 127, 4, 5, 6, -1, 8, -1, - 10, -1, -1, -1, 138, -1, -1, -1, -1, 19, - -1, 21, -1, -1, 148, 149, -1, -1, -1, 29, - 30, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, -1, -1, 47, 48, -1, - -1, 51, 52, -1, -1, -1, 56, -1, -1, -1, - -1, 61, 62, 63, 64, 65, 66, 67, -1, -1, - -1, -1, 72, 73, -1, 75, -1, 77, -1, 79, - -1, -1, 82, 83, 84, 85, -1, 87, -1, 89, - -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, - 100, 101, -1, -1, 104, -1, 106, 107, 108, 109, - 110, -1, -1, -1, 114, 115, 116, 117, 118, 119, - -1, 121, -1, -1, -1, 125, -1, 127, -1, -1, - -1, -1, -1, -1, -1, 4, 5, 6, 138, 8, - -1, 10, -1, -1, -1, -1, -1, -1, 148, 149, - 19, -1, 21, -1, 23, 24, -1, -1, -1, -1, - 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, - 39, 40, 41, -1, -1, -1, -1, 46, 47, 48, - -1, -1, 51, 52, -1, -1, -1, 56, -1, -1, - -1, -1, 61, 62, -1, 64, 65, 66, 67, -1, - -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, - -1, -1, -1, 82, 83, 84, 85, -1, 87, 88, - -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, - 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, - 109, 110, -1, -1, -1, 114, 115, 116, 117, 118, - 119, -1, -1, -1, 123, -1, -1, -1, 127, -1, - 4, 5, 6, 132, 8, -1, 10, -1, -1, 138, - -1, 140, -1, -1, -1, 19, -1, 21, -1, 148, - 149, -1, -1, -1, -1, 29, 30, 31, -1, 33, - -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, - -1, -1, -1, 47, 48, -1, -1, 51, 52, -1, - -1, -1, 56, -1, -1, -1, -1, 61, 62, 63, - 64, 65, 66, 67, -1, -1, -1, -1, 72, 73, - -1, 75, -1, 77, -1, 79, -1, -1, 82, 83, - 84, 85, -1, 87, -1, 89, -1, -1, -1, 93, - -1, 95, 96, 97, 98, 99, 100, 101, -1, -1, - 104, -1, 106, 107, 108, 109, 110, -1, -1, -1, - 114, 115, 116, 117, 118, 119, -1, -1, -1, -1, - -1, 125, -1, 127, -1, -1, -1, -1, -1, -1, - -1, 4, 5, 6, 138, 8, -1, 10, -1, -1, - -1, -1, -1, -1, 148, 149, 19, -1, 21, -1, - 23, 24, -1, -1, -1, -1, 29, -1, 31, -1, - 33, -1, -1, 36, 37, 38, 39, 40, 41, -1, - -1, -1, -1, 46, 47, 48, -1, -1, 51, 52, - -1, -1, -1, 56, -1, -1, -1, -1, 61, 62, - -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, - 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, - 83, 84, 85, -1, 87, 88, -1, -1, -1, -1, - 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, - -1, 104, -1, 106, 107, 108, 109, 110, -1, -1, - -1, 114, 115, 116, 117, 118, 119, -1, -1, -1, - 123, -1, -1, -1, 127, -1, 4, 5, 6, 132, - 8, -1, 10, -1, -1, 138, -1, 140, -1, -1, - -1, 19, -1, 21, -1, 148, 149, -1, -1, -1, - -1, 29, -1, 31, -1, 33, -1, -1, 36, 37, - 38, -1, 40, 41, -1, -1, -1, -1, -1, 47, - 48, -1, -1, 51, 52, -1, -1, -1, 56, -1, - -1, -1, -1, 61, 62, 63, 64, 65, 66, 67, - -1, -1, -1, -1, 72, 73, -1, 75, -1, 77, - -1, 79, -1, -1, 82, 83, 84, 85, -1, 87, - -1, 89, -1, -1, -1, 93, -1, 95, 96, 97, - 98, 99, 100, 101, -1, 4, 104, -1, 106, 107, - 108, 109, 110, -1, -1, -1, 114, 115, 116, 117, - 118, 119, 21, -1, -1, -1, -1, 125, -1, 127, - 29, -1, 31, -1, 33, -1, -1, 36, 37, 38, - 138, 40, 41, -1, -1, -1, -1, -1, 47, 48, - 148, 149, 51, 52, -1, -1, -1, 56, -1, -1, - -1, -1, 61, -1, -1, 64, 65, 66, 67, -1, - -1, -1, -1, -1, 73, -1, 75, -1, 77, -1, - -1, -1, -1, 82, 83, 84, 85, -1, 87, -1, - -1, -1, -1, -1, 93, -1, 95, 96, 97, 98, - 99, -1, -1, -1, -1, 104, -1, 106, 107, 108, - -1, 110, -1, -1, -1, 114, 115, 116, 117, 118, - -1, -1, -1, 4, 5, 6, -1, 8, 127, 10, - -1, -1, -1, -1, -1, -1, -1, -1, 19, 138, - 21, -1, 23, 24, -1, -1, -1, -1, 29, 148, - 149, -1, 33, -1, -1, 4, 5, 6, 39, 8, - -1, 10, -1, -1, -1, 46, -1, -1, -1, -1, - 19, -1, -1, -1, 23, 24, -1, -1, -1, -1, - 29, 62, -1, -1, 33, -1, -1, -1, -1, -1, - 39, -1, -1, -1, 75, -1, -1, 46, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 88, -1, -1, - -1, -1, -1, 62, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 75, -1, 109, 110, - -1, -1, -1, -1, -1, -1, -1, -1, 119, 88, - -1, -1, 123, -1, -1, -1, -1, -1, -1, -1, - -1, 132, -1, -1, -1, -1, -1, 138, -1, 140, - 109, 110, -1, -1, -1, -1, -1, 148, 149, -1, - 119, -1, -1, -1, 123, -1, -1, -1, 21, -1, - -1, -1, -1, 132, -1, -1, 29, -1, 31, 138, - 33, 140, -1, 36, 37, 38, -1, 40, 41, 148, - 149, -1, -1, -1, 47, 48, -1, -1, 51, 52, - -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, - -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, - 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, - 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, - 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, - -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 120, -1, -1, - 123, 21, -1, -1, 127, -1, -1, -1, -1, 29, - -1, 31, -1, 33, -1, -1, 36, 37, 38, -1, - 40, 41, -1, -1, -1, 148, 149, 47, 48, -1, - -1, 51, 52, -1, -1, -1, 56, -1, 58, -1, - -1, 61, -1, -1, 64, 65, 66, 67, -1, 69, - -1, -1, -1, 73, -1, 75, -1, 77, -1, -1, - -1, -1, 82, 83, 84, 85, -1, 87, -1, -1, - -1, -1, -1, 93, -1, 95, 96, 97, 98, 99, - -1, -1, -1, -1, 104, -1, 106, 107, 108, -1, - 110, -1, -1, -1, 114, 115, 116, 117, 118, -1, - 21, -1, 23, 24, -1, -1, -1, 127, 29, -1, - 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, - 41, -1, -1, -1, -1, -1, 47, 48, 148, 149, - 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, - 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, - -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, - -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, - -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, - -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, - -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, - -1, -1, -1, -1, -1, -1, 127, 29, -1, 31, - -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, - 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, - -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, - -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, - 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, - -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, - -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, - -1, -1, 114, 115, 116, 117, 118, -1, 21, -1, - -1, 123, -1, -1, -1, 127, 29, -1, 31, -1, - 33, -1, -1, 36, 37, 38, -1, 40, 41, 42, - -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, - -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, - -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, - 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, - 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, - 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, - -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 21, -1, -1, - -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, - -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, - -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, - -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, - 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, - -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, - 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, - -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, - 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, - 114, 115, 116, 117, 118, -1, 120, -1, -1, -1, - 21, -1, -1, 127, -1, -1, -1, -1, 29, -1, - 31, -1, 33, -1, -1, 36, 37, 38, -1, 40, - 41, -1, -1, -1, 148, 149, 47, 48, -1, -1, - 51, 52, -1, -1, -1, 56, -1, -1, -1, -1, - 61, -1, -1, 64, 65, 66, 67, -1, -1, -1, - -1, -1, 73, -1, 75, -1, 77, -1, -1, -1, - -1, 82, 83, 84, 85, -1, 87, -1, -1, -1, - -1, -1, 93, -1, 95, 96, 97, 98, 99, -1, - -1, -1, -1, 104, -1, 106, 107, 108, -1, 110, - -1, -1, -1, 114, 115, 116, 117, 118, -1, 21, - -1, -1, -1, -1, -1, -1, 127, 29, 129, 31, - -1, 33, -1, -1, 36, 37, 38, -1, 40, 41, - -1, -1, -1, -1, -1, 47, 48, 148, 149, 51, - 52, -1, -1, -1, 56, -1, -1, -1, -1, 61, - -1, -1, 64, 65, 66, 67, -1, -1, -1, -1, - -1, 73, -1, 75, -1, 77, -1, -1, -1, -1, - 82, 83, 84, 85, -1, 87, -1, -1, -1, -1, - -1, 93, -1, 95, 96, 97, 98, 99, -1, -1, - -1, -1, 104, -1, 106, 107, 108, -1, 110, -1, - -1, -1, 114, 115, 116, 117, 118, -1, 21, 121, - -1, -1, -1, -1, -1, 127, 29, -1, 31, -1, - 33, -1, -1, 36, 37, 38, -1, 40, 41, -1, - -1, -1, -1, -1, 47, 48, 148, 149, 51, 52, - -1, -1, -1, 56, -1, -1, -1, -1, 61, -1, - -1, 64, 65, 66, 67, -1, -1, -1, -1, -1, - 73, -1, 75, -1, 77, -1, -1, -1, -1, 82, - 83, 84, 85, -1, 87, -1, -1, -1, -1, -1, - 93, -1, 95, 96, 97, 98, 99, -1, -1, -1, - -1, 104, -1, 106, 107, 108, -1, 110, -1, -1, - -1, 114, 115, 116, 117, 118, -1, 21, -1, -1, - -1, -1, -1, -1, 127, 29, -1, 31, -1, 33, - -1, -1, 36, 37, 38, -1, 40, 41, -1, -1, - -1, -1, -1, 47, 48, 148, 149, 51, 52, -1, - -1, -1, 56, -1, -1, -1, -1, 61, -1, -1, - 64, 65, 66, 67, -1, -1, -1, -1, -1, 73, - -1, 75, -1, 77, -1, -1, -1, -1, 82, 83, - 84, 85, -1, 87, -1, -1, -1, -1, -1, 93, - -1, 95, 96, 97, 98, 99, -1, -1, -1, -1, - 104, -1, 106, 107, 108, -1, 110, -1, -1, -1, - 114, 115, 116, 117, 118, -1, 21, -1, -1, -1, - -1, -1, -1, 127, 29, -1, 31, -1, 33, -1, - -1, 36, 37, 38, -1, 40, 41, -1, -1, -1, - -1, -1, 47, 48, 148, 149, 51, 52, -1, -1, - -1, 56, -1, -1, -1, -1, 61, -1, -1, 64, - 65, 66, 67, -1, -1, -1, -1, -1, 73, -1, - 75, -1, 77, -1, -1, -1, -1, 82, 83, 84, - 85, -1, 87, -1, -1, -1, -1, -1, 93, -1, - 95, 96, 97, 98, 99, -1, -1, -1, -1, 104, - -1, 106, 107, 108, -1, 110, -1, -1, -1, 114, - 115, 116, 117, 118, -1, -1, -1, -1, -1, -1, - -1, -1, 127, -1, -1, -1, -1, -1, -1, -1, + 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, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 23, 24, -1, 148, 149, 28, 29, 30, -1, 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, 62, - 63, -1, -1, -1, -1, 68, 69, 70, 71, 72, - 73, 74, 75, 76, -1, 78, 79, 80, 81, -1, - 83, -1, 85, 86, 87, 88, 89, 90, 91, 92, - -1, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, -1, 105, -1, 107, 108, 109, 110, 111, 112, - 113, -1, -1, -1, -1, -1, 119, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 136, -1, -1, -1, -1, -1, -1, - -1, -1, 28, 29, 30, 148, 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, 62, 63, -1, -1, - -1, -1, 68, 69, 70, 71, 72, 73, 74, 75, - 76, -1, 78, 79, 80, 81, -1, 83, -1, 85, - 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 103, -1, 105, - -1, 107, 108, 109, 110, 111, 112, 113, -1, -1, - -1, -1, -1, 119, -1, -1, -1, -1, 124, -1, - -1, 127, -1, -1, -1, -1, -1, -1, -1, -1, - 136, -1, -1, -1, -1, -1, -1, -1, -1, 28, - 29, 30, 148, 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, 62, 63, -1, -1, -1, -1, 68, - 69, 70, 71, 72, 73, 74, 75, 76, -1, 78, - 79, 80, 81, -1, 83, -1, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, -1, 105, -1, 107, 108, - 109, 110, 111, 112, 113, -1, -1, -1, -1, -1, - 119, -1, -1, -1, -1, -1, -1, -1, 127, 128, - -1, -1, -1, -1, -1, -1, -1, 136, -1, -1, - -1, -1, -1, -1, -1, -1, 28, 29, 30, 148, + 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, 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, - 62, 63, -1, -1, -1, -1, 68, 69, 70, 71, - 72, 73, 74, 75, 76, -1, 78, 79, 80, 81, - -1, 83, -1, 85, 86, 87, 88, 89, 90, 91, - 92, -1, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, -1, 105, -1, 107, 108, 109, 110, 111, - 112, 113, -1, -1, -1, -1, -1, 119, -1, -1, - -1, -1, 28, -1, 30, 127, 32, -1, 34, 35, - -1, -1, -1, -1, 136, -1, 42, 43, 44, 45, - -1, -1, -1, 49, 50, -1, 148, 53, 54, 55, - -1, 57, 58, 59, 60, -1, -1, 63, -1, -1, - -1, -1, 68, 69, 70, 71, 72, -1, 74, -1, - 76, -1, 78, 79, 80, 81, -1, -1, -1, -1, - 86, -1, -1, 89, 90, 91, 92, -1, 94, -1, - -1, -1, -1, -1, 100, 101, 102, 103, -1, 105, - -1, -1, -1, -1, -1, 111, 112, 113, -1, -1, - 28, -1, 30, -1, 32, -1, 34, 35, 124, -1, - -1, -1, -1, -1, 42, 43, 44, 45, -1, -1, - 136, 49, 50, -1, -1, 53, 54, 55, 144, 57, - 58, 59, 60, -1, -1, 63, -1, -1, -1, -1, - 68, 69, 70, 71, 72, -1, 74, -1, 76, -1, - 78, 79, 80, 81, -1, -1, -1, -1, 86, -1, - -1, 89, 90, 91, 92, -1, 94, -1, -1, -1, - -1, -1, 100, 101, 102, 103, -1, 105, -1, -1, - -1, -1, -1, 111, 112, 113, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 124, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 136, -1, - -1, -1, -1, -1, -1, -1, 144 + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, -1, + -1, -1, 124, 125, -1, -1, 128, -1, -1, -1, + -1, 133, -1, -1, -1, 137, -1, -1, -1, 141, + -1, -1, -1, -1, -1, -1, -1, 149, 150, 4, + 5, 6, 7, -1, 9, -1, 11, -1, -1, -1, + -1, -1, -1, -1, -1, 20, -1, 22, -1, 24, + 25, -1, -1, -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, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, -1, -1, -1, 124, + -1, -1, -1, 128, 4, 5, 6, 7, 133, 9, + -1, 11, 137, -1, -1, -1, 141, -1, -1, -1, + 20, -1, 22, -1, 149, 150, -1, -1, -1, -1, + 30, 31, 32, -1, 34, -1, -1, 37, 38, 39, + -1, 41, 42, -1, -1, -1, 46, 47, 48, 49, + -1, -1, 52, 53, 54, -1, -1, 57, -1, -1, + -1, -1, 62, 63, 64, 65, 66, 67, 68, -1, + -1, -1, -1, 73, 74, -1, 76, -1, 78, -1, + 80, -1, -1, 83, 84, 85, 86, -1, 88, -1, + 90, -1, -1, -1, 94, -1, 96, 97, 98, 99, + 100, 101, 102, -1, -1, 105, -1, 107, 108, 109, + 110, 111, -1, -1, -1, 115, 116, 117, 118, 119, + 120, -1, -1, -1, 124, -1, 126, -1, 128, 4, + 5, 6, 7, -1, 9, -1, 11, -1, -1, -1, + -1, -1, -1, -1, -1, 20, -1, 22, -1, 149, + 150, -1, -1, -1, -1, 30, 31, 32, -1, 34, + -1, -1, 37, 38, 39, -1, 41, 42, -1, -1, + -1, -1, -1, 48, 49, -1, -1, 52, 53, -1, + -1, -1, 57, -1, -1, -1, -1, 62, 63, 64, + 65, 66, 67, 68, -1, -1, -1, -1, 73, 74, + -1, 76, -1, 78, -1, 80, -1, -1, 83, 84, + 85, 86, -1, 88, -1, 90, -1, -1, -1, 94, + -1, 96, 97, 98, 99, 100, 101, 102, -1, -1, + 105, -1, 107, 108, 109, 110, 111, -1, -1, -1, + 115, 116, 117, 118, 119, 120, -1, 122, -1, -1, + -1, 126, -1, 128, -1, -1, -1, -1, -1, -1, + 4, 5, 6, 7, -1, 9, -1, 11, -1, -1, + -1, -1, -1, -1, 149, 150, 20, -1, 22, -1, + 24, 25, -1, -1, -1, -1, 30, -1, 32, -1, + 34, -1, -1, 37, 38, 39, 40, 41, 42, -1, + -1, -1, -1, 47, 48, 49, -1, -1, 52, 53, + -1, -1, -1, 57, -1, -1, -1, -1, 62, 63, + -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, 89, -1, -1, -1, -1, + 94, -1, 96, 97, 98, 99, 100, -1, -1, -1, + -1, 105, -1, 107, 108, 109, 110, 111, -1, -1, + -1, 115, 116, 117, 118, 119, 120, -1, -1, -1, + 124, -1, -1, -1, 128, 4, 5, 6, 7, 133, + 9, -1, 11, -1, -1, -1, -1, 141, -1, -1, + -1, 20, -1, 22, -1, 149, 150, -1, -1, -1, + -1, 30, 31, 32, -1, 34, -1, -1, 37, 38, + 39, -1, 41, 42, -1, -1, -1, -1, -1, 48, + 49, -1, -1, 52, 53, -1, -1, -1, 57, -1, + -1, -1, -1, 62, 63, 64, 65, 66, 67, 68, + -1, -1, -1, -1, 73, 74, -1, 76, -1, 78, + -1, 80, -1, -1, 83, 84, 85, 86, -1, 88, + -1, 90, -1, -1, -1, 94, -1, 96, 97, 98, + 99, 100, 101, 102, -1, -1, 105, -1, 107, 108, + 109, 110, 111, -1, -1, -1, 115, 116, 117, 118, + 119, 120, -1, -1, -1, -1, -1, 126, -1, 128, + -1, -1, -1, -1, -1, -1, 4, 5, 6, 7, + -1, 9, -1, 11, -1, -1, -1, -1, -1, -1, + 149, 150, 20, -1, 22, -1, 24, 25, -1, -1, + -1, -1, 30, -1, 32, -1, 34, -1, -1, 37, + 38, 39, 40, 41, 42, -1, -1, -1, -1, 47, + 48, 49, -1, -1, 52, 53, -1, -1, -1, 57, + -1, -1, -1, -1, 62, 63, -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, 89, -1, -1, -1, -1, 94, -1, 96, 97, + 98, 99, 100, -1, -1, -1, -1, 105, -1, 107, + 108, 109, 110, 111, -1, -1, -1, 115, 116, 117, + 118, 119, 120, -1, -1, -1, 124, -1, -1, -1, + 128, 4, 5, 6, 7, 133, 9, -1, 11, -1, + -1, -1, -1, 141, -1, -1, -1, 20, -1, 22, + -1, 149, 150, -1, -1, -1, -1, 30, -1, 32, + -1, 34, -1, -1, 37, 38, 39, -1, 41, 42, + -1, -1, -1, -1, -1, 48, 49, -1, -1, 52, + 53, -1, -1, -1, 57, -1, -1, -1, -1, 62, + 63, 64, 65, 66, 67, 68, -1, -1, -1, -1, + 73, 74, -1, 76, -1, 78, -1, 80, -1, -1, + 83, 84, 85, 86, -1, 88, -1, 90, -1, -1, + -1, 94, -1, 96, 97, 98, 99, 100, 101, 102, + 4, 5, 105, -1, 107, 108, 109, 110, 111, -1, + -1, -1, 115, 116, 117, 118, 119, 120, 22, -1, + -1, -1, -1, 126, -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, 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, 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, + 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, 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, + -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, -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, 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, 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, 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, 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 }; const unsigned short int asn1_parser::yystos_[] = { - 0, 148, 153, 154, 227, 375, 0, 153, 50, 123, - 228, 229, 230, 15, 235, 4, 149, 231, 232, 233, - 234, 310, 373, 132, 315, 74, 34, 58, 69, 236, - 124, 231, 125, 139, 316, 105, 105, 105, 60, 237, - 233, 16, 17, 318, 139, 317, 70, 120, 126, 318, - 132, 35, 317, 59, 238, 239, 30, 148, 149, 240, - 247, 248, 249, 372, 374, 226, 71, 241, 141, 141, - 136, 123, 55, 242, 243, 244, 247, 159, 198, 202, - 203, 204, 205, 206, 250, 251, 260, 261, 262, 372, - 374, 248, 124, 141, 244, 63, 250, 21, 29, 31, - 33, 36, 37, 38, 40, 41, 47, 48, 51, 52, - 56, 61, 64, 65, 66, 67, 73, 75, 77, 82, - 83, 84, 85, 87, 93, 95, 96, 97, 98, 99, - 104, 106, 107, 108, 110, 114, 115, 116, 117, 118, - 120, 123, 127, 148, 158, 186, 187, 196, 197, 201, - 207, 212, 213, 214, 215, 252, 254, 258, 263, 264, - 272, 274, 278, 282, 283, 286, 287, 288, 292, 293, - 294, 295, 299, 300, 301, 302, 306, 313, 314, 319, - 320, 321, 322, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 372, 373, 375, 207, 263, 372, 375, 245, - 375, 102, 102, 123, 90, 123, 86, 123, 68, 102, - 86, 101, 123, 125, 333, 357, 86, 123, 333, 357, - 42, 148, 156, 157, 158, 160, 161, 263, 375, 376, - 149, 156, 208, 209, 210, 211, 249, 263, 372, 15, - 303, 137, 120, 120, 263, 137, 123, 120, 333, 58, - 69, 263, 137, 129, 137, 263, 120, 137, 123, 246, - 307, 374, 123, 265, 296, 297, 298, 373, 121, 276, - 279, 280, 281, 373, 148, 156, 158, 375, 275, 276, - 373, 263, 265, 373, 333, 44, 121, 124, 265, 289, - 290, 291, 4, 5, 6, 8, 10, 19, 30, 33, - 45, 46, 53, 62, 63, 72, 79, 89, 100, 109, - 119, 123, 125, 138, 148, 149, 199, 217, 218, 220, - 225, 263, 273, 277, 323, 334, 335, 336, 337, 338, - 339, 340, 341, 342, 343, 347, 348, 349, 350, 351, - 352, 353, 355, 357, 358, 359, 360, 368, 369, 86, - 86, 263, 265, 124, 289, 86, 86, 123, 137, 124, - 136, 140, 140, 32, 94, 113, 305, 23, 24, 164, - 165, 199, 160, 263, 120, 165, 5, 6, 8, 10, - 23, 24, 33, 39, 46, 75, 88, 119, 123, 140, - 148, 149, 156, 201, 216, 253, 255, 256, 257, 259, - 263, 266, 267, 268, 269, 273, 277, 315, 323, 374, - 375, 123, 270, 263, 263, 165, 372, 263, 21, 372, - 120, 33, 75, 148, 149, 201, 266, 267, 372, 375, - 4, 253, 308, 309, 310, 311, 312, 373, 374, 284, - 285, 373, 124, 136, 263, 131, 370, 124, 136, 125, - 137, 124, 136, 86, 370, 49, 88, 124, 136, 57, - 344, 39, 263, 39, 333, 267, 12, 43, 44, 121, - 200, 337, 336, 4, 123, 370, 136, 111, 144, 345, - 76, 145, 346, 344, 263, 122, 129, 263, 265, 263, - 265, 124, 263, 265, 263, 265, 23, 24, 27, 162, - 163, 166, 167, 170, 172, 173, 175, 177, 148, 376, - 209, 249, 4, 253, 304, 137, 267, 267, 267, 271, - 125, 123, 124, 136, 136, 140, 144, 136, 144, 137, - 137, 336, 267, 137, 137, 253, 308, 124, 308, 125, - 124, 136, 125, 121, 265, 253, 263, 277, 371, 375, - 121, 281, 253, 277, 276, 263, 136, 33, 148, 149, - 349, 121, 291, 347, 123, 53, 267, 333, 361, 123, - 362, 136, 124, 136, 126, 143, 221, 222, 126, 121, - 340, 342, 78, 129, 349, 354, 356, 156, 263, 164, - 263, 156, 124, 136, 23, 49, 88, 168, 128, 164, - 124, 267, 4, 256, 256, 267, 267, 267, 267, 267, - 23, 24, 374, 124, 124, 311, 285, 4, 253, 136, - 140, 137, 370, 126, 126, 121, 290, 370, 121, 156, - 196, 211, 219, 263, 375, 39, 121, 363, 364, 373, - 337, 121, 137, 224, 373, 124, 136, 136, 356, 49, - 88, 176, 88, 112, 169, 169, 169, 49, 88, 178, - 119, 179, 163, 263, 126, 124, 126, 126, 126, 298, - 267, 136, 136, 136, 140, 124, 137, 267, 124, 136, - 124, 136, 333, 365, 366, 136, 137, 223, 137, 222, - 337, 123, 186, 188, 189, 190, 192, 49, 88, 174, - 49, 88, 171, 171, 103, 136, 280, 121, 290, 123, - 188, 267, 148, 363, 363, 28, 88, 92, 367, 337, - 223, 224, 373, 23, 24, 28, 29, 30, 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, 62, 63, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 78, - 79, 80, 81, 83, 85, 86, 87, 88, 89, 90, - 91, 92, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 103, 105, 107, 108, 109, 110, 111, 112, 113, - 119, 136, 148, 164, 185, 191, 193, 194, 195, 263, - 267, 377, 270, 349, 123, 155, 136, 136, 267, 124, - 195, 136, 124, 194, 29, 33, 36, 37, 38, 39, - 40, 41, 46, 47, 48, 51, 52, 56, 61, 62, - 73, 75, 83, 85, 87, 88, 95, 96, 97, 98, - 99, 107, 108, 109, 110, 119, 127, 148, 180, 181, - 182, 183, 184, 185, 121, 147, 180, 124, 181, 164, - 185, 136, 124, 128, 290, 136 + 0, 149, 154, 155, 228, 376, 0, 154, 51, 124, + 229, 230, 231, 16, 236, 4, 150, 232, 233, 234, + 235, 311, 374, 133, 316, 75, 35, 59, 70, 237, + 125, 232, 126, 140, 317, 106, 106, 106, 61, 238, + 234, 17, 18, 319, 140, 318, 71, 121, 127, 319, + 133, 36, 318, 60, 239, 240, 31, 149, 150, 241, + 248, 249, 250, 373, 375, 227, 72, 242, 142, 142, + 137, 124, 56, 243, 244, 245, 248, 160, 199, 203, + 204, 205, 206, 207, 251, 252, 261, 262, 263, 373, + 375, 249, 125, 142, 245, 64, 251, 22, 30, 32, + 34, 37, 38, 39, 41, 42, 48, 49, 52, 53, + 57, 62, 65, 66, 67, 68, 74, 76, 78, 83, + 84, 85, 86, 88, 94, 96, 97, 98, 99, 100, + 105, 107, 108, 109, 111, 115, 116, 117, 118, 119, + 121, 124, 128, 149, 159, 187, 188, 197, 198, 202, + 208, 213, 214, 215, 216, 253, 255, 259, 264, 265, + 273, 275, 279, 283, 284, 287, 288, 289, 293, 294, + 295, 296, 300, 301, 302, 303, 307, 314, 315, 320, + 321, 322, 323, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 373, 374, 376, 208, 264, 373, 376, 246, + 376, 103, 103, 124, 91, 124, 87, 124, 69, 103, + 87, 102, 124, 126, 334, 358, 87, 124, 334, 358, + 43, 149, 157, 158, 159, 161, 162, 264, 376, 377, + 150, 157, 209, 210, 211, 212, 250, 264, 373, 16, + 304, 138, 121, 121, 264, 138, 124, 121, 334, 59, + 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 }; const unsigned short int asn1_parser::yyr1_[] = { - 0, 152, 153, 153, 154, 155, 156, 156, 156, 157, - 158, 158, 159, 160, 160, 161, 162, 162, 163, 163, - 163, 163, 163, 163, 164, 164, 165, 165, 166, 167, - 167, 168, 168, 168, 169, 169, 169, 170, 171, 171, - 171, 172, 173, 174, 174, 174, 175, 176, 176, 176, - 177, 178, 178, 178, 179, 179, 180, 180, 181, 181, - 182, 183, 184, 184, 184, 185, 185, 186, 186, 187, - 188, 188, 189, 189, 190, 191, 192, 193, 193, 194, - 194, 195, 195, 196, 196, 197, 198, 199, 200, 200, - 200, 200, 200, 201, 201, 202, 202, 202, 202, 203, - 204, 205, 206, 207, 208, 208, 209, 209, 210, 210, - 211, 211, 212, 213, 214, 215, 215, 216, 216, 217, - 217, 217, 218, 219, 219, 219, 219, 219, 219, 219, - 220, 220, 221, 221, 222, 222, 223, 223, 224, 224, - 225, 225, 225, 226, 227, 228, 228, 228, 229, 230, - 231, 231, 232, 232, 232, 233, 234, 235, 235, 236, - 236, 236, 236, 237, 237, 238, 238, 239, 239, 239, - 240, 240, 241, 241, 242, 242, 243, 243, 244, 245, - 246, 246, 246, 247, 247, 248, 249, 249, 249, 250, - 250, 251, 251, 251, 251, 251, 251, 252, 252, 252, - 253, 253, 254, 255, 256, 256, 257, 257, 257, 258, - 259, 260, 261, 262, 263, 263, 263, 263, 263, 264, - 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 264, 264, 264, 264, 264, 264, 264, 264, 264, 264, - 265, 266, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 266, 266, 266, 266, 266, 266, - 266, 266, 266, 266, 266, 266, 267, 267, 267, 268, - 268, 269, 269, 270, 271, 271, 272, 273, 273, 274, - 274, 275, 275, 276, 276, 277, 277, 278, 279, 279, - 279, 279, 280, 280, 281, 281, 282, 283, 283, 284, - 284, 285, 285, 286, 287, 288, 288, 289, 289, 289, - 289, 289, 289, 289, 289, 289, 290, 290, 291, 291, - 291, 291, 292, 292, 293, 293, 294, 294, 295, 296, - 297, 297, 297, 298, 298, 299, 300, 301, 301, 301, - 302, 303, 303, 304, 304, 305, 305, 305, 305, 306, - 307, 307, 308, 308, 309, 309, 309, 310, 311, 311, - 312, 313, 314, 315, 316, 317, 317, 318, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 328, - 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, - 329, 329, 329, 330, 331, 331, 332, 332, 332, 332, - 332, 332, 332, 332, 333, 334, 334, 335, 336, 336, - 336, 337, 337, 338, 338, 339, 340, 340, 341, 342, - 342, 343, 344, 345, 345, 346, 346, 347, 347, 348, - 348, 348, 348, 348, 348, 348, 348, 348, 349, 349, - 349, 349, 349, 349, 349, 349, 349, 349, 350, 351, - 352, 353, 353, 354, 354, 355, 355, 356, 356, 357, - 358, 359, 360, 360, 361, 362, 362, 362, 362, 363, - 363, 364, 365, 366, 366, 367, 367, 367, 367, 368, - 369, 370, 370, 371, 371, 371, 372, 373, 374, 375, - 376, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377 + 0, 153, 154, 154, 155, 156, 157, 157, 157, 158, + 159, 159, 160, 161, 161, 162, 163, 163, 164, 164, + 164, 164, 164, 164, 165, 165, 166, 166, 167, 168, + 168, 169, 169, 169, 170, 170, 170, 171, 172, 172, + 172, 173, 174, 175, 175, 175, 176, 177, 177, 177, + 178, 179, 179, 179, 180, 180, 181, 181, 182, 182, + 183, 184, 185, 185, 185, 186, 186, 187, 187, 188, + 189, 189, 190, 190, 191, 192, 193, 194, 194, 195, + 195, 196, 196, 197, 197, 198, 199, 200, 201, 201, + 201, 201, 201, 202, 202, 203, 203, 203, 203, 204, + 205, 206, 207, 208, 209, 209, 210, 210, 211, 211, + 212, 212, 213, 214, 215, 216, 216, 217, 217, 218, + 218, 218, 219, 220, 220, 220, 220, 220, 220, 220, + 221, 221, 222, 222, 223, 223, 224, 224, 225, 225, + 226, 226, 226, 227, 228, 229, 229, 229, 230, 231, + 232, 232, 233, 233, 233, 234, 235, 236, 236, 237, + 237, 237, 237, 238, 238, 239, 239, 240, 240, 240, + 241, 241, 242, 242, 243, 243, 244, 244, 245, 246, + 247, 247, 247, 248, 248, 249, 250, 250, 250, 251, + 251, 252, 252, 252, 252, 252, 252, 253, 253, 253, + 254, 254, 255, 256, 257, 257, 258, 258, 258, 259, + 260, 261, 262, 263, 264, 264, 264, 264, 264, 265, + 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, + 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, + 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, + 266, 267, 267, 267, 267, 267, 267, 267, 267, 267, + 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, + 267, 267, 267, 267, 267, 267, 268, 268, 268, 269, + 269, 270, 270, 271, 272, 272, 273, 274, 274, 275, + 275, 276, 276, 277, 277, 278, 278, 279, 280, 280, + 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, + 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 @@ -9211,7 +9218,7 @@ namespace yy { 4, 1, 1, 1, 1, 3, 3, 3, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 3, 1, 2, 1, 1, 1, 1, - 4, 1, 3, 4, 4, 1, 2, 4, 1, 4, + 4, 1, 3, 4, 4, 1, 1, 4, 1, 4, 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, @@ -9249,13 +9256,13 @@ namespace yy { const char* const asn1_parser::yytname_[] = { - "END_OF_FILE", "error", "$undefined", "comment", "number", "realnumber", - "bstring", "xmlbstring", "hstring", "xmlhstring", "cstring", - "xmlcstring", "simplestring", "xmltstring", "psname", - "encodingreference", "integerUnicodeLabel", "non-integerUnicodeLabel", - "extended-true", "tstring", "extended-false", "objectreference", - "objectsetreference", "typefieldreference", "valuefieldreference", - "valuesetfieldreference", "objectfieldreference", + "END_OF_FILE", "error", "$undefined", "comment", "number", + "negativenumber", "realnumber", "bstring", "xmlbstring", "hstring", + "xmlhstring", "cstring", "xmlcstring", "simplestring", "xmltstring", + "psname", "encodingreference", "integerUnicodeLabel", + "non-integerUnicodeLabel", "extended-true", "tstring", "extended-false", + "objectreference", "objectsetreference", "typefieldreference", + "valuefieldreference", "valuesetfieldreference", "objectfieldreference", "objectsetfieldreference", "ABSENT", "ABSTRACT_SYNTAX", "ALL", "ANY", "APPLICATION", "ASN_NULL", "AUTOMATIC", "BEGIN", "BIT", "BMPString", "BOOLEAN", "BY", "CHARACTER", "CHOICE", "CLASS", "COMPONENT", @@ -9352,64 +9359,64 @@ namespace yy { const unsigned short int asn1_parser::yyrline_[] = { - 0, 321, 321, 322, 325, 340, 343, 344, 345, 348, - 351, 353, 357, 361, 363, 368, 372, 374, 378, 380, - 382, 383, 384, 385, 388, 390, 398, 400, 404, 408, - 410, 414, 415, 416, 419, 420, 421, 424, 428, 429, - 430, 433, 436, 439, 440, 441, 444, 447, 448, 449, - 452, 455, 456, 457, 463, 464, 467, 468, 471, 472, - 475, 478, 481, 482, 483, 486, 487, 490, 491, 494, - 500, 501, 506, 507, 510, 513, 516, 519, 520, 523, - 524, 527, 528, 532, 533, 536, 539, 543, 546, 547, - 548, 549, 550, 559, 561, 568, 570, 572, 574, 581, - 585, 589, 593, 605, 609, 611, 615, 617, 621, 623, - 627, 629, 645, 657, 666, 673, 674, 678, 679, 682, - 683, 684, 687, 690, 691, 692, 693, 694, 695, 696, - 699, 701, 705, 706, 709, 710, 713, 714, 717, 718, - 721, 722, 723, 734, 742, 749, 750, 751, 754, 757, - 761, 762, 766, 767, 768, 771, 774, 778, 779, 782, - 784, 786, 788, 792, 793, 796, 798, 802, 803, 804, - 807, 808, 811, 813, 816, 818, 821, 823, 827, 831, - 835, 836, 837, 840, 842, 846, 850, 852, 854, 863, - 865, 869, 871, 873, 875, 878, 880, 884, 886, 888, - 894, 896, 899, 903, 906, 908, 912, 914, 917, 927, - 931, 956, 960, 964, 968, 970, 972, 974, 976, 981, - 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, - 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, - 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, - 1014, 1018, 1020, 1022, 1024, 1026, 1028, 1030, 1032, 1034, - 1036, 1038, 1039, 1041, 1043, 1045, 1049, 1050, 1051, 1052, - 1053, 1055, 1057, 1059, 1061, 1063, 1068, 1070, 1072, 1075, - 1076, 1079, 1080, 1083, 1086, 1088, 1096, 1099, 1100, 1103, - 1105, 1109, 1111, 1115, 1117, 1121, 1123, 1127, 1131, 1134, - 1137, 1141, 1144, 1146, 1150, 1152, 1160, 1163, 1165, 1169, - 1170, 1173, 1174, 1188, 1191, 1194, 1196, 1200, 1202, 1204, - 1206, 1208, 1210, 1212, 1214, 1216, 1220, 1222, 1226, 1228, - 1230, 1232, 1244, 1246, 1250, 1252, 1256, 1258, 1262, 1266, - 1270, 1272, 1274, 1278, 1280, 1287, 1290, 1294, 1296, 1298, - 1302, 1306, 1307, 1310, 1312, 1315, 1317, 1319, 1321, 1331, - 1334, 1336, 1340, 1342, 1346, 1348, 1350, 1354, 1358, 1360, - 1363, 1367, 1379, 1382, 1388, 1391, 1392, 1395, 1396, 1399, - 1405, 1412, 1418, 1421, 1424, 1427, 1430, 1433, 1436, 1437, - 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, - 1450, 1451, 1452, 1456, 1459, 1461, 1465, 1467, 1469, 1471, - 1473, 1475, 1477, 1479, 1483, 1486, 1487, 1490, 1493, 1494, - 1495, 1498, 1499, 1502, 1503, 1506, 1509, 1510, 1513, 1516, - 1517, 1520, 1523, 1526, 1527, 1530, 1531, 1534, 1536, 1539, - 1540, 1541, 1542, 1543, 1544, 1545, 1546, 1547, 1553, 1555, - 1556, 1557, 1558, 1559, 1560, 1561, 1562, 1563, 1566, 1569, - 1572, 1575, 1576, 1579, 1580, 1583, 1584, 1587, 1588, 1591, - 1594, 1597, 1600, 1601, 1604, 1606, 1607, 1608, 1609, 1612, - 1613, 1616, 1619, 1622, 1623, 1626, 1627, 1628, 1629, 1632, - 1635, 1638, 1639, 1642, 1643, 1644, 1647, 1651, 1655, 1659, - 1663, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, - 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, - 1686, 1687, 1688, 1689, 1690, 1691, 1692, 1693, 1694, 1695, - 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1705, - 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, - 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, - 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, - 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743 + 0, 323, 323, 324, 327, 342, 345, 346, 347, 350, + 353, 355, 359, 363, 365, 370, 374, 376, 380, 382, + 384, 385, 386, 387, 390, 392, 400, 402, 406, 410, + 412, 416, 417, 418, 421, 422, 423, 426, 430, 431, + 432, 435, 438, 441, 442, 443, 446, 449, 450, 451, + 454, 457, 458, 459, 465, 466, 469, 470, 473, 474, + 477, 480, 483, 484, 485, 488, 489, 492, 493, 496, + 502, 503, 508, 509, 512, 515, 518, 521, 522, 525, + 526, 529, 530, 534, 535, 538, 541, 545, 548, 549, + 550, 551, 552, 561, 563, 570, 572, 574, 576, 583, + 587, 591, 595, 607, 611, 613, 617, 619, 623, 625, + 629, 631, 647, 659, 668, 675, 676, 680, 681, 684, + 685, 686, 689, 692, 693, 694, 695, 696, 697, 698, + 701, 703, 707, 708, 711, 712, 715, 716, 719, 720, + 723, 724, 725, 736, 744, 751, 752, 753, 756, 759, + 763, 764, 768, 769, 770, 773, 776, 780, 781, 784, + 786, 788, 790, 794, 795, 798, 800, 804, 805, 806, + 809, 810, 813, 815, 818, 820, 823, 825, 829, 833, + 837, 838, 839, 842, 844, 848, 852, 854, 856, 865, + 867, 871, 873, 875, 877, 880, 882, 886, 888, 890, + 896, 898, 901, 905, 908, 910, 914, 916, 919, 929, + 933, 958, 962, 966, 970, 972, 974, 976, 978, 983, + 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, + 994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, + 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, + 1016, 1020, 1022, 1024, 1026, 1028, 1030, 1032, 1034, 1036, + 1038, 1040, 1041, 1043, 1045, 1047, 1051, 1052, 1053, 1054, + 1055, 1057, 1059, 1061, 1063, 1065, 1070, 1072, 1074, 1077, + 1078, 1081, 1082, 1085, 1088, 1090, 1098, 1101, 1102, 1105, + 1107, 1111, 1113, 1117, 1119, 1123, 1125, 1129, 1133, 1136, + 1139, 1143, 1146, 1148, 1152, 1154, 1162, 1165, 1167, 1171, + 1172, 1175, 1176, 1190, 1193, 1196, 1198, 1202, 1204, 1206, + 1208, 1210, 1212, 1214, 1216, 1218, 1222, 1224, 1228, 1230, + 1232, 1234, 1246, 1248, 1252, 1254, 1258, 1260, 1264, 1268, + 1272, 1274, 1276, 1280, 1282, 1289, 1292, 1296, 1298, 1300, + 1304, 1308, 1309, 1312, 1314, 1317, 1319, 1321, 1323, 1333, + 1336, 1338, 1342, 1344, 1348, 1350, 1352, 1356, 1360, 1362, + 1365, 1369, 1381, 1384, 1390, 1393, 1394, 1397, 1398, 1401, + 1407, 1414, 1420, 1423, 1426, 1429, 1432, 1435, 1438, 1439, + 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1451, + 1452, 1453, 1454, 1458, 1461, 1463, 1467, 1469, 1471, 1473, + 1475, 1477, 1479, 1481, 1485, 1488, 1489, 1492, 1495, 1496, + 1497, 1500, 1501, 1504, 1505, 1508, 1511, 1512, 1515, 1518, + 1519, 1522, 1525, 1528, 1529, 1532, 1533, 1536, 1538, 1541, + 1542, 1543, 1544, 1545, 1546, 1547, 1548, 1549, 1555, 1557, + 1558, 1559, 1560, 1561, 1562, 1563, 1564, 1565, 1568, 1571, + 1574, 1577, 1578, 1581, 1582, 1585, 1586, 1589, 1590, 1593, + 1596, 1599, 1602, 1603, 1606, 1608, 1609, 1610, 1611, 1614, + 1615, 1618, 1621, 1624, 1625, 1628, 1629, 1630, 1631, 1634, + 1637, 1640, 1641, 1644, 1645, 1646, 1649, 1653, 1657, 1661, + 1665, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676, 1677, + 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686, 1687, + 1688, 1689, 1690, 1691, 1692, 1693, 1694, 1695, 1696, 1697, + 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1707, + 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, + 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, 1727, + 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737, + 1738, 1739, 1740, 1741, 1742, 1743, 1744, 1745 }; // Print the state stack on the debug stream. @@ -9444,8 +9451,8 @@ namespace yy { } // yy -#line 9446 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 -#line 1745 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 +#line 9453 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" // lalr1.cc:1167 +#line 1747 "/home/styler/git/fast_ber/src/compiler/asn_compiler.yacc" // lalr1.cc:1168 @@ -9458,7 +9465,7 @@ namespace yy { context.location.step(); // Lexer -#line 9462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" { char yych; unsigned int yyaccept = 0; @@ -9558,25 +9565,25 @@ namespace yy { } yy2: ++context.cursor; -#line 9579 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9587 "/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 9564 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9571 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy4: ++context.cursor; yy5: -#line 9606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9614 "/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 9570 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9577 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy6: ++context.cursor; -#line 9583 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.columns(); return yylex(context); } -#line 9575 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy8: ++context.cursor; -#line 9582 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9590 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); context.location.lines(); return yylex(context); } -#line 9580 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9587 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy10: yych = *++context.cursor; switch (yych) { @@ -9585,9 +9592,9 @@ namespace yy { } yy11: ++context.cursor; -#line 9601 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9609 "/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 9591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9598 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy13: yych = *++context.cursor; switch (yych) { @@ -9685,50 +9692,60 @@ namespace yy { } yy18: ++context.cursor; -#line 9591 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9599 "/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 9691 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9698 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy20: ++context.cursor; -#line 9592 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9600 "/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 9696 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9703 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy22: ++context.cursor; -#line 9597 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9605 "/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 9701 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9708 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy24: yych = *++context.cursor; switch (yych) { case '-': goto yy90; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy93; default: goto yy25; } yy25: -#line 9598 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9606 "/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 9711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9728 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy26: yych = *++context.cursor; switch (yych) { - case '.': goto yy93; + case '.': goto yy96; default: goto yy27; } yy27: -#line 9599 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9607 "/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 9721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9738 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy28: yych = *++context.cursor; switch (yych) { - case '*': goto yy95; + case '*': goto yy98; default: goto yy5; } yy29: yyaccept = 0; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '.': goto yy97; + case '.': goto yy100; case '0': case '1': case '2': @@ -9742,102 +9759,102 @@ namespace yy { default: goto yy31; } yy31: -#line 9566 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9573 "/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 9748 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9765 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy32: yyaccept = 1; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case ':': goto yy99; + case ':': goto yy102; default: goto yy33; } yy33: -#line 9595 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9603 "/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 9759 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9776 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy34: ++context.cursor; -#line 9596 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9604 "/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 9764 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9781 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy36: ++context.cursor; -#line 9602 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9610 "/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 9769 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9786 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy38: ++context.cursor; -#line 9605 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9613 "/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 9774 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9791 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy40: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'B': goto yy101; - case 'L': goto yy102; - case 'N': goto yy103; - case 'P': goto yy104; - case 'U': goto yy105; + case 'B': goto yy104; + case 'L': goto yy105; + case 'N': goto yy106; + case 'P': goto yy107; + case 'U': goto yy108; default: goto yy49; } yy41: -#line 9573 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9581 "/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 9789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 9806 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy42: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy106; - case 'I': goto yy107; - case 'M': goto yy108; - case 'O': goto yy109; - case 'Y': goto yy110; + case 'E': goto yy109; + case 'I': goto yy110; + case 'M': goto yy111; + case 'O': goto yy112; + case 'Y': goto yy113; default: goto yy49; } yy43: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'H': goto yy112; - case 'L': goto yy113; - case 'O': goto yy114; + case 'H': goto yy115; + case 'L': goto yy116; + case 'O': goto yy117; default: goto yy49; } yy44: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy115; - case 'E': goto yy116; - case 'U': goto yy117; + case 'A': goto yy118; + case 'E': goto yy119; + case 'U': goto yy120; default: goto yy49; } yy45: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy118; - case 'N': goto yy119; - case 'X': goto yy120; + case 'M': goto yy121; + case 'N': goto yy122; + case 'X': goto yy123; default: goto yy49; } yy46: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy121; - case 'R': goto yy122; + case 'A': goto yy124; + case 'R': goto yy125; default: goto yy49; } yy47: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy123; - case 'r': goto yy124; + case 'e': goto yy126; + case 'r': goto yy127; default: goto yy49; } yy48: @@ -9845,7 +9862,7 @@ namespace yy { yych = *(YYMARKER = ++context.cursor); yy49: switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -9915,125 +9932,125 @@ namespace yy { yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy125; - case 'D': goto yy126; - case 'M': goto yy127; - case 'N': goto yy128; - case 'S': goto yy129; + case 'A': goto yy128; + case 'D': goto yy129; + case 'M': goto yy130; + case 'N': goto yy131; + case 'S': goto yy132; default: goto yy49; } yy51: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy130; - case 'I': goto yy131; + case 'A': goto yy133; + case 'I': goto yy134; default: goto yy49; } yy52: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy132; - case 'U': goto yy133; - case 'u': goto yy134; + case 'O': goto yy135; + case 'U': goto yy136; + case 'u': goto yy137; default: goto yy49; } yy53: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'B': goto yy135; - case 'C': goto yy136; - case 'F': goto yy137; - case 'I': goto yy139; - case 'P': goto yy140; - case 'b': goto yy141; + case 'B': goto yy138; + case 'C': goto yy139; + case 'F': goto yy140; + case 'I': goto yy142; + case 'P': goto yy143; + case 'b': goto yy144; default: goto yy49; } yy54: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy142; - case 'D': goto yy143; - case 'L': goto yy144; - case 'R': goto yy145; - case 'r': goto yy146; + case 'A': goto yy145; + case 'D': goto yy146; + case 'L': goto yy147; + case 'R': goto yy148; + case 'r': goto yy149; default: goto yy49; } yy55: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy147; + case 'E': goto yy150; default: goto yy49; } yy56: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy148; - case 'I': goto yy149; - case 'T': goto yy150; - case 'Y': goto yy151; + case 'E': goto yy151; + case 'I': goto yy152; + case 'T': goto yy153; + case 'Y': goto yy154; default: goto yy49; } yy57: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '6': goto yy152; - case 'A': goto yy153; - case 'I': goto yy154; - case 'R': goto yy155; - case 'Y': goto yy156; - case 'e': goto yy157; + case '6': goto yy155; + case 'A': goto yy156; + case 'I': goto yy157; + case 'R': goto yy158; + case 'Y': goto yy159; + case 'e': goto yy160; default: goto yy49; } yy58: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy158; - case 'T': goto yy159; - case 'n': goto yy160; + case 'N': goto yy161; + case 'T': goto yy162; + case 'n': goto yy163; default: goto yy49; } yy59: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy161; + case 'i': goto yy164; default: goto yy49; } yy60: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy162; + case 'I': goto yy165; default: goto yy49; } yy61: ++context.cursor; -#line 9593 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9601 "/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 10022 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10039 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy63: ++context.cursor; -#line 9594 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9602 "/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 10027 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10044 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy65: ++context.cursor; -#line 9603 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9611 "/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 10032 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy67: yyaccept = 3; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy163; + case '-': goto yy166; case '0': case '1': case '2': @@ -10100,24 +10117,24 @@ namespace yy { default: goto yy69; } yy69: -#line 9574 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9582 "/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 10106 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10123 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy70: ++context.cursor; -#line 9589 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9597 "/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 10111 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10128 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy72: ++context.cursor; -#line 9600 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9608 "/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 10116 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10133 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy74: ++context.cursor; -#line 9590 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9598 "/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 10121 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10138 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy76: yych = *++context.cursor; switch (yych) { @@ -10125,16 +10142,16 @@ namespace yy { default: goto yy77; } yy77: -#line 9568 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9576 "/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 10131 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10148 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy78: ++context.cursor; goto yy77; yy79: yych = *++context.cursor; switch (yych) { - case '"': goto yy164; + case '"': goto yy167; case '\\': goto yy79; default: goto yy13; } @@ -10142,7 +10159,7 @@ namespace yy { yyaccept = 4; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy166; + case '-': goto yy169; case '0': case '1': case '2': @@ -10209,14 +10226,14 @@ namespace yy { default: goto yy83; } yy83: -#line 9575 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9583 "/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 10215 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10232 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy84: yyaccept = 5; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy167; + case '-': goto yy170; case '0': case '1': case '2': @@ -10283,21 +10300,21 @@ namespace yy { default: goto yy86; } yy86: -#line 9576 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9584 "/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 10289 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10306 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy87: yych = *++context.cursor; switch (yych) { - case 'B': goto yy168; - case 'H': goto yy170; + case 'B': goto yy171; + case 'H': goto yy173; default: goto yy77; } yy88: yych = *++context.cursor; switch (yych) { case '"': goto yy76; - case '\'': goto yy172; + case '\'': goto yy175; case '0': case '1': case '2': @@ -10329,30 +10346,49 @@ namespace yy { switch (yych) { case '\n': case '\r': goto yy92; - case '-': goto yy173; + case '-': goto yy176; default: goto yy90; } yy92: -#line 9560 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9567 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" { context.location.columns(context.cursor - start); return yylex(context); } -#line 10339 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 10356 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy93: yych = *++context.cursor; switch (yych) { - case '.': goto yy174; - default: goto yy94; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy93; + default: goto yy95; } -yy94: -#line 9588 "/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 10349 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy95: +#line 9574 "/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 10375 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy96: yych = *++context.cursor; switch (yych) { - case '*': goto yy176; - default: goto yy95; + case '.': goto yy177; + default: goto yy97; } yy97: +#line 9596 "/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 10385 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy98: + yych = *++context.cursor; + switch (yych) { + case '*': goto yy179; + default: goto yy98; + } +yy100: yych = *++context.cursor; switch (yych) { case '0': @@ -10364,10 +10400,10 @@ namespace yy { case '6': case '7': case '8': - case '9': goto yy177; - default: goto yy98; + case '9': goto yy180; + default: goto yy101; } -yy98: +yy101: context.cursor = YYMARKER; switch (yyaccept) { case 0: goto yy31; @@ -10377,106 +10413,106 @@ namespace yy { case 4: goto yy83; case 5: goto yy86; case 6: goto yy92; - case 7: goto yy111; - case 8: goto yy138; - case 9: goto yy184; - case 10: goto yy186; - case 11: goto yy191; - case 12: goto yy205; - case 13: goto yy222; - case 14: goto yy224; - case 15: goto yy235; - case 16: goto yy244; - case 17: goto yy279; - case 18: goto yy292; - case 19: goto yy306; - case 20: goto yy319; - case 21: goto yy324; - case 22: goto yy329; - case 23: goto yy331; - case 24: goto yy333; - case 25: goto yy345; - case 26: goto yy351; - case 27: goto yy357; - case 28: goto yy374; - case 29: goto yy392; - case 30: goto yy411; - case 31: goto yy420; - case 32: goto yy428; - case 33: goto yy441; - case 34: goto yy463; - case 35: goto yy476; - case 36: goto yy478; - case 37: goto yy484; - case 38: goto yy496; - case 39: goto yy503; - case 40: goto yy508; - case 41: goto yy513; - case 42: goto yy522; - case 43: goto yy524; - case 44: goto yy529; - case 45: goto yy536; - case 46: goto yy540; - case 47: goto yy543; - case 48: goto yy545; - case 49: goto yy556; - case 50: goto yy572; - case 51: goto yy574; - case 52: goto yy578; - case 53: goto yy581; - case 54: goto yy588; - case 55: goto yy590; - case 56: goto yy592; - case 57: goto yy600; - case 58: goto yy606; - case 59: goto yy608; - case 60: goto yy621; - case 61: goto yy623; - case 62: goto yy625; - case 63: goto yy627; - case 64: goto yy631; - case 65: goto yy640; - case 66: goto yy653; - case 67: goto yy658; - case 68: goto yy666; - case 69: goto yy669; - case 70: goto yy673; - case 71: goto yy679; - case 72: goto yy694; - case 73: goto yy700; - case 74: goto yy702; - case 75: goto yy704; - case 76: goto yy721; - case 77: goto yy734; - case 78: goto yy736; - case 79: goto yy738; - case 80: goto yy741; - case 81: goto yy747; - case 82: goto yy756; - case 83: goto yy758; - case 84: goto yy761; - case 85: goto yy764; - case 86: goto yy767; - case 87: goto yy772; - case 88: goto yy776; - case 89: goto yy781; - case 90: goto yy788; - case 91: goto yy790; - case 92: goto yy793; - case 93: goto yy796; - case 94: goto yy799; - case 95: goto yy801; - case 96: goto yy803; - case 97: goto yy805; - default: goto yy807; - } -yy99: + case 7: goto yy114; + case 8: goto yy141; + case 9: goto yy187; + case 10: goto yy189; + case 11: goto yy194; + case 12: goto yy208; + case 13: goto yy225; + case 14: goto yy227; + case 15: goto yy238; + case 16: goto yy247; + case 17: goto yy282; + case 18: goto yy295; + case 19: goto yy309; + case 20: goto yy322; + case 21: goto yy327; + case 22: goto yy332; + case 23: goto yy334; + case 24: goto yy336; + case 25: goto yy348; + case 26: goto yy354; + case 27: goto yy360; + case 28: goto yy377; + case 29: goto yy395; + case 30: goto yy414; + case 31: goto yy423; + case 32: goto yy431; + case 33: goto yy444; + case 34: goto yy466; + case 35: goto yy479; + case 36: goto yy481; + case 37: goto yy487; + case 38: goto yy499; + case 39: goto yy506; + case 40: goto yy511; + case 41: goto yy516; + case 42: goto yy525; + case 43: goto yy527; + case 44: goto yy532; + case 45: goto yy539; + case 46: goto yy543; + case 47: goto yy546; + case 48: goto yy548; + case 49: goto yy559; + case 50: goto yy575; + case 51: goto yy577; + case 52: goto yy581; + case 53: goto yy584; + case 54: goto yy591; + case 55: goto yy593; + case 56: goto yy595; + case 57: goto yy603; + case 58: goto yy609; + case 59: goto yy611; + case 60: goto yy624; + case 61: goto yy626; + case 62: goto yy628; + case 63: goto yy630; + case 64: goto yy634; + case 65: goto yy643; + case 66: goto yy656; + case 67: goto yy661; + case 68: goto yy669; + case 69: goto yy672; + case 70: goto yy676; + case 71: goto yy682; + case 72: goto yy697; + case 73: goto yy703; + case 74: goto yy705; + case 75: goto yy707; + case 76: goto yy724; + case 77: goto yy737; + case 78: goto yy739; + case 79: goto yy741; + case 80: goto yy744; + case 81: goto yy750; + case 82: goto yy759; + case 83: goto yy761; + case 84: goto yy764; + case 85: goto yy767; + case 86: goto yy770; + case 87: goto yy775; + case 88: goto yy779; + case 89: goto yy784; + case 90: goto yy791; + case 91: goto yy793; + case 92: goto yy796; + case 93: goto yy799; + case 94: goto yy802; + case 95: goto yy804; + case 96: goto yy806; + case 97: goto yy808; + default: goto yy810; + } +yy102: yych = *++context.cursor; switch (yych) { - case '=': goto yy180; - default: goto yy98; + case '=': goto yy183; + default: goto yy101; } -yy100: +yy103: yych = *++context.cursor; switch (yych) { case '0': @@ -10542,76 +10578,76 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy98; + default: goto yy101; } -yy101: +yy104: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy182; + case 'S': goto yy185; default: goto yy49; } -yy102: +yy105: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy183; + case 'L': goto yy186; default: goto yy49; } -yy103: +yy106: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy185; + case 'Y': goto yy188; default: goto yy49; } -yy104: +yy107: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy187; + case 'P': goto yy190; default: goto yy49; } -yy105: +yy108: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy188; + case 'T': goto yy191; default: goto yy49; } -yy106: +yy109: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy189; + case 'G': goto yy192; default: goto yy49; } -yy107: +yy110: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy190; + case 'T': goto yy193; default: goto yy49; } -yy108: +yy111: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy192; + case 'P': goto yy195; default: goto yy49; } -yy109: +yy112: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy193; + case 'O': goto yy196; default: goto yy49; } -yy110: +yy113: yyaccept = 7; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -10675,200 +10711,200 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy111; - } -yy111: -#line 9474 "/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 10684 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy112: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'A': goto yy194; - case 'O': goto yy195; - default: goto yy49; - } -yy113: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'A': goto yy196; - default: goto yy49; + default: goto yy114; } yy114: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'M': goto yy197; - case 'N': goto yy198; - default: goto yy49; - } +#line 9481 "/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 10720 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy115: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy199; + case 'A': goto yy197; + case 'O': goto yy198; default: goto yy49; } yy116: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy200; + case 'A': goto yy199; default: goto yy49; } yy117: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy201; + case 'M': goto yy200; + case 'N': goto yy201; default: goto yy49; } yy118: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'B': goto yy202; + case 'T': goto yy202; default: goto yy49; } yy119: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy203; - case 'D': goto yy204; - case 'U': goto yy206; + case 'F': goto yy203; default: goto yy49; } yy120: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy207; - case 'P': goto yy208; - case 'T': goto yy209; + case 'R': goto yy204; default: goto yy49; } yy121: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy210; + case 'B': goto yy205; default: goto yy49; } yy122: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy211; + case 'C': goto yy206; + case 'D': goto yy207; + case 'U': goto yy209; default: goto yy49; } yy123: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy212; + case 'C': goto yy210; + case 'P': goto yy211; + case 'T': goto yy212; default: goto yy49; } yy124: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'a': goto yy213; + case 'L': goto yy213; default: goto yy49; } yy125: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '5': goto yy214; + case 'O': goto yy214; default: goto yy49; } yy126: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy215; + case 'n': goto yy215; default: goto yy49; } yy127: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy216; + case 'a': goto yy216; default: goto yy49; } yy128: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy217; - case 'S': goto yy218; - case 'T': goto yy219; + case '5': goto yy217; default: goto yy49; } yy129: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy220; + case 'E': goto yy218; default: goto yy49; } yy130: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'X': goto yy221; + case 'P': goto yy219; default: goto yy49; } yy131: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy223; + case 'C': goto yy220; + case 'S': goto yy221; + case 'T': goto yy222; default: goto yy49; } yy132: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy225; + case 'O': goto yy223; default: goto yy49; } yy133: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy226; + case 'X': goto yy224; default: goto yy49; } yy134: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'm': goto yy227; + case 'N': goto yy226; default: goto yy49; } yy135: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'J': goto yy228; + case 'T': goto yy228; default: goto yy49; } yy136: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy229; + case 'L': goto yy229; default: goto yy49; } yy137: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'm': goto yy230; + default: goto yy49; + } +yy138: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'J': goto yy231; + default: goto yy49; + } +yy139: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy232; + default: goto yy49; + } +yy140: yyaccept = 8; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -10932,194 +10968,194 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy138; - } -yy138: -#line 9522 "/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 10941 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy139: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'D': goto yy230; - default: goto yy49; - } -yy140: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'T': goto yy231; - default: goto yy49; + default: goto yy141; } yy141: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'j': goto yy232; - default: goto yy49; - } +#line 9529 "/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 10977 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy142: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy233; + case 'D': goto yy233; default: goto yy49; } yy143: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'V': goto yy234; + case 'T': goto yy234; default: goto yy49; } yy144: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy236; + case 'j': goto yy235; default: goto yy49; } yy145: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy237; - case 'I': goto yy238; + case 'T': goto yy236; default: goto yy49; } yy146: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy239; + case 'V': goto yy237; default: goto yy49; } yy147: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy240; - case 'L': goto yy241; + case 'U': goto yy239; default: goto yy49; } yy148: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Q': goto yy242; - case 'T': goto yy243; + case 'E': goto yy240; + case 'I': goto yy241; default: goto yy49; } yy149: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Z': goto yy245; + case 'i': goto yy242; default: goto yy49; } yy150: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy246; + case 'A': goto yy243; + case 'L': goto yy244; default: goto yy49; } yy151: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy247; + case 'Q': goto yy245; + case 'T': goto yy246; default: goto yy49; } yy152: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '1': goto yy248; + case 'Z': goto yy248; default: goto yy49; } yy153: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy249; + case 'R': goto yy249; default: goto yy49; } yy154: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy250; + case 'N': goto yy250; default: goto yy49; } yy155: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy251; + case '1': goto yy251; default: goto yy49; } yy156: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy252; + case 'G': goto yy252; default: goto yy49; } yy157: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'l': goto yy253; + case 'M': goto yy253; default: goto yy49; } yy158: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy254; + case 'U': goto yy254; default: goto yy49; } yy159: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy255; - case 'F': goto yy256; + case 'P': goto yy255; default: goto yy49; } yy160: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy257; + case 'l': goto yy256; default: goto yy49; } yy161: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'd': goto yy258; - case 's': goto yy259; + case 'I': goto yy257; default: goto yy49; } yy162: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy260; + case 'C': goto yy258; + case 'F': goto yy259; default: goto yy49; } yy163: - yych = *++context.cursor; + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': + case 'i': goto yy260; + default: goto yy49; + } +yy164: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'd': goto yy261; + case 's': goto yy262; + default: goto yy49; + } +yy165: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy263; + default: goto yy49; + } +yy166: + yych = *++context.cursor; + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': case '6': case '7': case '8': @@ -11177,17 +11213,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy67; - default: goto yy98; + default: goto yy101; } -yy164: +yy167: yych = *++context.cursor; switch (yych) { - case '"': goto yy164; + case '"': goto yy167; case '\'': goto yy78; case '\\': goto yy79; default: goto yy13; } -yy166: +yy169: yych = *++context.cursor; switch (yych) { case '0': @@ -11253,9 +11289,9 @@ namespace yy { case 'x': case 'y': case 'z': goto yy81; - default: goto yy98; + default: goto yy101; } -yy167: +yy170: yych = *++context.cursor; switch (yych) { case '0': @@ -11321,44 +11357,44 @@ namespace yy { case 'x': case 'y': case 'z': goto yy84; - default: goto yy98; + default: goto yy101; } -yy168: +yy171: ++context.cursor; -#line 9570 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9578 "/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 11331 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy170: +#line 11367 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy173: ++context.cursor; -#line 9572 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9580 "/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 11336 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy172: +#line 11372 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy175: yych = *++context.cursor; switch (yych) { - case 'H': goto yy170; + case 'H': goto yy173; default: goto yy77; } -yy173: +yy176: yych = *++context.cursor; switch (yych) { case '\n': - case '\r': goto yy98; - case '-': goto yy261; + case '\r': goto yy101; + case '-': goto yy264; default: goto yy90; } -yy174: +yy177: ++context.cursor; -#line 9587 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9595 "/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 11355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy176: +#line 11391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy179: yych = *++context.cursor; switch (yych) { - case '/': goto yy263; - default: goto yy95; + case '/': goto yy266; + default: goto yy98; } -yy177: +yy180: yych = *++context.cursor; switch (yych) { case '0': @@ -11370,31 +11406,31 @@ namespace yy { case '6': case '7': case '8': - case '9': goto yy177; - default: goto yy179; + case '9': goto yy180; + default: goto yy182; } -yy179: -#line 9565 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy182: +#line 9572 "/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 11380 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy180: +#line 11416 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy183: ++context.cursor; -#line 9586 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9594 "/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 11385 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy182: +#line 11421 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy185: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy265; - case 'T': goto yy266; + case 'E': goto yy268; + case 'T': goto yy269; default: goto yy49; } -yy183: +yy186: yyaccept = 9; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -11458,17 +11494,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy184; + default: goto yy187; } -yy184: -#line 9466 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy187: +#line 9473 "/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 11467 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy185: +#line 11503 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy188: yyaccept = 10; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -11532,38 +11568,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy186; + default: goto yy189; } -yy186: -#line 9467 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy189: +#line 9474 "/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 11541 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy187: +#line 11577 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy190: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy267; + case 'L': goto yy270; default: goto yy49; } -yy188: +yy191: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy268; + case 'O': goto yy271; default: goto yy49; } -yy189: +yy192: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy269; + case 'I': goto yy272; default: goto yy49; } -yy190: +yy193: yyaccept = 11; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -11627,103 +11663,103 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy191; + default: goto yy194; } -yy191: -#line 9471 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy194: +#line 9478 "/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 11636 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy192: +#line 11672 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy195: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy270; + case 'S': goto yy273; default: goto yy49; } -yy193: +yy196: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy271; + case 'L': goto yy274; default: goto yy49; } -yy194: +yy197: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy272; + case 'R': goto yy275; default: goto yy49; } -yy195: +yy198: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy273; + case 'I': goto yy276; default: goto yy49; } -yy196: +yy199: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy274; + case 'S': goto yy277; default: goto yy49; } -yy197: +yy200: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy275; + case 'P': goto yy278; default: goto yy49; } -yy198: +yy201: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy276; - case 'T': goto yy277; + case 'S': goto yy279; + case 'T': goto yy280; default: goto yy49; } -yy199: +yy202: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy278; + case 'E': goto yy281; default: goto yy49; } -yy200: +yy203: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy280; - case 'I': goto yy281; + case 'A': goto yy283; + case 'I': goto yy284; default: goto yy49; } -yy201: +yy204: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy282; + case 'A': goto yy285; default: goto yy49; } -yy202: +yy205: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy283; + case 'E': goto yy286; default: goto yy49; } -yy203: +yy206: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy284; + case 'O': goto yy287; default: goto yy49; } -yy204: +yy207: yyaccept = 12; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -11787,124 +11823,124 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy205; + default: goto yy208; } -yy205: -#line 9490 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy208: +#line 9497 "/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 11796 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy206: +#line 11832 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy209: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy285; + case 'M': goto yy288; default: goto yy49; } -yy207: +yy210: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy286; + case 'E': goto yy289; default: goto yy49; } -yy208: +yy211: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy287; - case 'O': goto yy288; + case 'L': goto yy290; + case 'O': goto yy291; default: goto yy49; } -yy209: +yy212: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy289; + case 'E': goto yy292; default: goto yy49; } -yy210: +yy213: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy290; + case 'S': goto yy293; default: goto yy49; } -yy211: +yy214: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy291; + case 'M': goto yy294; default: goto yy49; } -yy212: +yy215: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy293; + case 'e': goto yy296; default: goto yy49; } -yy213: +yy216: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'p': goto yy294; + case 'p': goto yy297; default: goto yy49; } -yy214: +yy217: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy295; + case 'S': goto yy298; default: goto yy49; } -yy215: +yy218: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy296; + case 'N': goto yy299; default: goto yy49; } -yy216: +yy219: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy297; - case 'O': goto yy298; + case 'L': goto yy300; + case 'O': goto yy301; default: goto yy49; } -yy217: +yy220: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy299; + case 'L': goto yy302; default: goto yy49; } -yy218: +yy221: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy300; + case 'T': goto yy303; default: goto yy49; } -yy219: +yy222: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy301; + case 'E': goto yy304; default: goto yy49; } -yy220: +yy223: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '6': goto yy302; + case '6': goto yy305; default: goto yy49; } -yy221: +yy224: yyaccept = 13; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -11968,17 +12004,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy222; + default: goto yy225; } -yy222: -#line 9513 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy225: +#line 9520 "/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 11977 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy223: +#line 12013 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy226: yyaccept = 14; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -12041,81 +12077,81 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'U': goto yy303; - default: goto yy224; + case 'U': goto yy306; + default: goto yy227; } -yy224: -#line 9514 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy227: +#line 9521 "/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 12051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy225: +#line 12087 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy228: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy304; + case '-': goto yy307; default: goto yy49; } -yy226: +yy229: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy305; + case 'L': goto yy308; default: goto yy49; } -yy227: +yy230: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy307; + case 'e': goto yy310; default: goto yy49; } -yy228: +yy231: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy308; + case 'E': goto yy311; default: goto yy49; } -yy229: +yy232: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy309; + case 'E': goto yy312; default: goto yy49; } -yy230: +yy233: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '_': goto yy310; + case '_': goto yy313; default: goto yy49; } -yy231: +yy234: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy311; + case 'I': goto yy314; default: goto yy49; } -yy232: +yy235: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy312; + case 'e': goto yy315; default: goto yy49; } -yy233: +yy236: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy313; + case 'T': goto yy316; default: goto yy49; } -yy234: +yy237: yyaccept = 15; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -12179,66 +12215,66 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy235; + default: goto yy238; } -yy235: -#line 9526 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy238: +#line 9533 "/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 12188 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy236: +#line 12224 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy239: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy314; + case 'S': goto yy317; default: goto yy49; } -yy237: +yy240: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy315; + case 'S': goto yy318; default: goto yy49; } -yy238: +yy241: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'V': goto yy316; + case 'V': goto yy319; default: goto yy49; } -yy239: +yy242: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy317; + case 'n': goto yy320; default: goto yy49; } -yy240: +yy243: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy318; + case 'L': goto yy321; default: goto yy49; } -yy241: +yy244: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy320; + case 'A': goto yy323; default: goto yy49; } -yy242: +yy245: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy321; + case 'U': goto yy324; default: goto yy49; } -yy243: +yy246: yyaccept = 16; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -12301,233 +12337,233 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'T': goto yy322; - default: goto yy244; - } -yy244: -#line 9535 "/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 12311 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy245: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'E': goto yy323; - default: goto yy49; - } -yy246: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'I': goto yy325; - default: goto yy49; + case 'T': goto yy325; + default: goto yy247; } yy247: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'T': goto yy326; - default: goto yy49; - } +#line 9542 "/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 12347 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy248: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy327; + case 'E': goto yy326; default: goto yy49; } yy249: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy328; + case 'I': goto yy328; default: goto yy49; } yy250: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy330; + case 'T': goto yy329; default: goto yy49; } yy251: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy332; + case 'S': goto yy330; default: goto yy49; } yy252: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy334; + case 'S': goto yy331; default: goto yy49; } yy253: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy335; + case 'E': goto yy333; default: goto yy49; } yy254: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy336; - case 'Q': goto yy337; - case 'V': goto yy338; + case 'E': goto yy335; default: goto yy49; } yy255: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy339; + case 'E': goto yy337; default: goto yy49; } yy256: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '8': goto yy340; + case 'e': goto yy338; default: goto yy49; } yy257: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'v': goto yy341; + case 'O': goto yy339; + case 'Q': goto yy340; + case 'V': goto yy341; default: goto yy49; } yy258: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy342; + case 'T': goto yy342; default: goto yy49; } yy259: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy343; + case '8': goto yy343; default: goto yy49; } yy260: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'H': goto yy344; + case 'v': goto yy344; default: goto yy49; } yy261: - ++context.cursor; -#line 9559 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" - { context.location.columns(context.cursor - start); return yylex(context); } -#line 12430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy263: - ++context.cursor; -#line 9562 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" - { context.location.columns(context.cursor - start); return yylex(context); } -#line 12435 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy265: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy346; + case 'e': goto yy345; default: goto yy49; } -yy266: +yy262: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy347; + case 'i': goto yy346; default: goto yy49; } -yy267: +yy263: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy348; + case 'H': goto yy347; default: goto yy49; } +yy264: + ++context.cursor; +#line 9566 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" + { context.location.columns(context.cursor - start); return yylex(context); } +#line 12466 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy266: + ++context.cursor; +#line 9569 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" + { context.location.columns(context.cursor - start); return yylex(context); } +#line 12471 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy268: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy349; + case 'N': goto yy349; default: goto yy49; } yy269: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy350; + case 'R': goto yy350; default: goto yy49; } yy270: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy352; + case 'I': goto yy351; default: goto yy49; } yy271: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy353; + case 'M': goto yy352; default: goto yy49; } yy272: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy354; + case 'N': goto yy353; default: goto yy49; } yy273: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy355; + case 't': goto yy355; default: goto yy49; } yy274: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy356; + case 'E': goto yy356; default: goto yy49; } yy275: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy358; + case 'A': goto yy357; default: goto yy49; } yy276: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy359; + case 'C': goto yy358; default: goto yy49; } yy277: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy360; + case 'S': goto yy359; default: goto yy49; } yy278: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'O': goto yy361; + default: goto yy49; + } +yy279: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy362; + default: goto yy49; + } +yy280: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'A': goto yy363; + default: goto yy49; + } +yy281: yyaccept = 17; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy361; + case '-': goto yy364; case '0': case '1': case '2': @@ -12591,95 +12627,95 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy279; + default: goto yy282; } -yy279: -#line 9482 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy282: +#line 9489 "/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 12600 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy280: +#line 12636 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy283: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy362; + case 'U': goto yy365; default: goto yy49; } -yy281: +yy284: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy363; + case 'N': goto yy366; default: goto yy49; } -yy282: +yy285: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy364; + case 'T': goto yy367; default: goto yy49; } -yy283: +yy286: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy365; + case 'D': goto yy368; default: goto yy49; } -yy284: +yy287: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy366; + case 'D': goto yy369; default: goto yy49; } -yy285: +yy288: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy367; + case 'E': goto yy370; default: goto yy49; } -yy286: +yy289: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'P': goto yy368; + case 'P': goto yy371; default: goto yy49; } -yy287: +yy290: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy369; + case 'I': goto yy372; default: goto yy49; } -yy288: +yy291: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy370; + case 'R': goto yy373; default: goto yy49; } -yy289: +yy292: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy371; - case 'R': goto yy372; + case 'N': goto yy374; + case 'R': goto yy375; default: goto yy49; } -yy290: +yy293: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy373; + case 'E': goto yy376; default: goto yy49; } -yy291: +yy294: yyaccept = 18; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -12743,92 +12779,92 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy292; + default: goto yy295; } -yy292: -#line 9498 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy295: +#line 9505 "/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 12752 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy293: +#line 12788 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy296: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy375; + case 'r': goto yy378; default: goto yy49; } -yy294: +yy297: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'h': goto yy376; + case 'h': goto yy379; default: goto yy49; } -yy295: +yy298: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy377; + case 't': goto yy380; default: goto yy49; } -yy296: +yy299: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy378; + case 'T': goto yy381; default: goto yy49; } -yy297: +yy300: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy379; + case 'I': goto yy382; default: goto yy49; } -yy298: +yy301: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy380; + case 'R': goto yy383; default: goto yy49; } -yy299: +yy302: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy381; + case 'U': goto yy384; default: goto yy49; } -yy300: +yy303: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy382; - case 'R': goto yy383; + case 'A': goto yy385; + case 'R': goto yy386; default: goto yy49; } -yy301: +yy304: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy384; - case 'R': goto yy385; + case 'G': goto yy387; + case 'R': goto yy388; default: goto yy49; } -yy302: +yy305: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '4': goto yy386; + case '4': goto yy389; default: goto yy49; } -yy303: +yy306: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy387; + case 'S': goto yy390; default: goto yy49; } -yy304: +yy307: yych = *++context.cursor; switch (yych) { case '0': @@ -12893,14 +12929,14 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'A': goto yy388; - default: goto yy98; + case 'A': goto yy391; + default: goto yy101; } -yy305: +yy308: yyaccept = 19; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -12964,94 +13000,94 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy306; + default: goto yy309; } -yy306: -#line 9517 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy309: +#line 9524 "/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 12973 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy307: +#line 13009 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy310: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy389; + case 'r': goto yy392; default: goto yy49; } -yy308: +yy311: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy390; + case 'C': goto yy393; default: goto yy49; } -yy309: +yy312: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy391; + case 'T': goto yy394; default: goto yy49; } -yy310: +yy313: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy393; + case 'I': goto yy396; default: goto yy49; } -yy311: +yy314: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy394; + case 'O': goto yy397; default: goto yy49; } -yy312: +yy315: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'c': goto yy395; + case 'c': goto yy398; default: goto yy49; } -yy313: +yy316: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy396; + case 'E': goto yy399; default: goto yy49; } -yy314: +yy317: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '_': goto yy397; + case '_': goto yy400; default: goto yy49; } -yy315: +yy318: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy398; + case 'E': goto yy401; default: goto yy49; } -yy316: +yy319: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy399; + case 'A': goto yy402; default: goto yy49; } -yy317: +yy320: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy400; + case 't': goto yy403; default: goto yy49; } -yy318: +yy321: yyaccept = 20; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -13115,38 +13151,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy319; + default: goto yy322; } -yy319: -#line 9531 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy322: +#line 9538 "/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 13124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy320: +#line 13160 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy323: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy401; + case 'T': goto yy404; default: goto yy49; } -yy321: +yy324: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy402; + case 'E': goto yy405; default: goto yy49; } -yy322: +yy325: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy403; + case 'I': goto yy406; default: goto yy49; } -yy323: +yy326: yyaccept = 21; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -13210,38 +13246,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy324; + default: goto yy327; } -yy324: -#line 9537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy327: +#line 9544 "/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 13219 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy325: +#line 13255 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy328: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy404; + case 'N': goto yy407; default: goto yy49; } -yy326: +yy329: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy405; + case 'A': goto yy408; default: goto yy49; } -yy327: +yy330: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy406; + case 't': goto yy409; default: goto yy49; } -yy328: +yy331: yyaccept = 22; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -13305,17 +13341,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy329; + default: goto yy332; } -yy329: -#line 9541 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy332: +#line 9548 "/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 13314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy330: +#line 13350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy333: yyaccept = 23; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy407; + case '-': goto yy410; case '0': case '1': case '2': @@ -13379,17 +13415,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy331; + default: goto yy334; } -yy331: -#line 9543 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy334: +#line 9550 "/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 13388 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy332: +#line 13424 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy335: yyaccept = 24; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -13453,87 +13489,87 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy333; + default: goto yy336; } -yy333: -#line 9545 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy336: +#line 9552 "/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 13462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy334: +#line 13498 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy337: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy408; + case '-': goto yy411; default: goto yy49; } -yy335: +yy338: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy409; + case 't': goto yy412; default: goto yy49; } -yy336: +yy339: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy410; + case 'N': goto yy413; default: goto yy49; } -yy337: +yy340: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy412; + case 'U': goto yy415; default: goto yy49; } -yy338: +yy341: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy413; + case 'E': goto yy416; default: goto yy49; } -yy339: +yy342: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy414; + case 'i': goto yy417; default: goto yy49; } -yy340: +yy343: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy415; + case 'S': goto yy418; default: goto yy49; } -yy341: +yy344: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy416; + case 'e': goto yy419; default: goto yy49; } -yy342: +yy345: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'o': goto yy417; + case 'o': goto yy420; default: goto yy49; } -yy343: +yy346: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'b': goto yy418; + case 'b': goto yy421; default: goto yy49; } -yy344: +yy347: yyaccept = 25; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -13597,45 +13633,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy345; + default: goto yy348; } -yy345: -#line 9555 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy348: +#line 9562 "/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 13606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy346: +#line 13642 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy349: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy419; + case 'T': goto yy422; default: goto yy49; } -yy347: +yy350: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy421; + case 'A': goto yy424; default: goto yy49; } -yy348: +yy351: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy422; + case 'C': goto yy425; default: goto yy49; } -yy349: +yy352: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy423; + case 'A': goto yy426; default: goto yy49; } -yy350: +yy353: yyaccept = 26; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -13699,45 +13735,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy351; + default: goto yy354; } -yy351: -#line 9470 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy354: +#line 9477 "/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 13708 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy352: +#line 13744 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy355: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy424; + case 'r': goto yy427; default: goto yy49; } -yy353: +yy356: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy425; + case 'A': goto yy428; default: goto yy49; } -yy354: +yy357: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy426; + case 'C': goto yy429; default: goto yy49; } -yy355: +yy358: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy427; + case 'E': goto yy430; default: goto yy49; } -yy356: +yy359: yyaccept = 27; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -13801,34 +13837,34 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy357; + default: goto yy360; } -yy357: -#line 9477 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy360: +#line 9484 "/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 13810 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy358: +#line 13846 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy361: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy429; + case 'N': goto yy432; default: goto yy49; } -yy359: +yy362: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy430; + case 'R': goto yy433; default: goto yy49; } -yy360: +yy363: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy431; + case 'I': goto yy434; default: goto yy49; } -yy361: +yy364: yych = *++context.cursor; switch (yych) { case '0': @@ -13893,92 +13929,92 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'T': goto yy432; - default: goto yy98; + case 'T': goto yy435; + default: goto yy101; } -yy362: +yy365: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy433; + case 'L': goto yy436; default: goto yy49; } -yy363: +yy366: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy434; + case 'I': goto yy437; default: goto yy49; } -yy364: +yy367: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy435; + case 'I': goto yy438; default: goto yy49; } -yy365: +yy368: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy436; + case 'D': goto yy439; default: goto yy49; } -yy366: +yy369: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy437; - case 'I': goto yy438; + case 'E': goto yy440; + case 'I': goto yy441; default: goto yy49; } -yy367: +yy370: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy439; + case 'R': goto yy442; default: goto yy49; } -yy368: +yy371: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy440; + case 'T': goto yy443; default: goto yy49; } -yy369: +yy372: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy442; + case 'C': goto yy445; default: goto yy49; } -yy370: +yy373: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy443; + case 'T': goto yy446; default: goto yy49; } -yy371: +yy374: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy444; + case 'S': goto yy447; default: goto yy49; } -yy372: +yy375: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy445; + case 'N': goto yy448; default: goto yy49; } -yy373: +yy376: yyaccept = 28; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -14042,130 +14078,130 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy374; + default: goto yy377; } -yy374: -#line 9497 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy377: +#line 9504 "/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 14051 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy375: +#line 14087 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy378: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'a': goto yy446; + case 'a': goto yy449; default: goto yy49; } -yy376: +yy379: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy447; + case 'i': goto yy450; default: goto yy49; } -yy377: +yy380: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy448; + case 'r': goto yy451; default: goto yy49; } -yy378: +yy381: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy449; + case 'I': goto yy452; default: goto yy49; } -yy379: +yy382: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy450; - case 'E': goto yy451; + case 'C': goto yy453; + case 'E': goto yy454; default: goto yy49; } -yy380: +yy383: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy452; + case 'T': goto yy455; default: goto yy49; } -yy381: +yy384: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy453; + case 'D': goto yy456; default: goto yy49; } -yy382: +yy385: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy454; + case 'N': goto yy457; default: goto yy49; } -yy383: +yy386: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy455; + case 'U': goto yy458; default: goto yy49; } -yy384: +yy387: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy456; + case 'E': goto yy459; default: goto yy49; } -yy385: +yy388: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy457; + case 'S': goto yy460; default: goto yy49; } -yy386: +yy389: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '6': goto yy458; + case '6': goto yy461; default: goto yy49; } -yy387: +yy390: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy459; + case '-': goto yy462; default: goto yy49; } -yy388: +yy391: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy460; + case '-': goto yy463; default: goto yy49; } -yy389: +yy392: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy461; + case 'i': goto yy464; default: goto yy49; } -yy390: +yy393: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy462; + case 'T': goto yy465; default: goto yy49; } -yy391: +yy394: yyaccept = 29; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -14229,111 +14265,111 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy392; + default: goto yy395; } -yy392: -#line 9521 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy395: +#line 9528 "/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 14238 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy393: +#line 14274 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy396: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy464; + case 'R': goto yy467; default: goto yy49; } -yy394: +yy397: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy465; + case 'N': goto yy468; default: goto yy49; } -yy395: +yy398: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy466; + case 't': goto yy469; default: goto yy49; } -yy396: +yy399: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy467; + case 'R': goto yy470; default: goto yy49; } -yy397: +yy400: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy468; + case 'I': goto yy471; default: goto yy49; } -yy398: +yy401: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy469; + case 'N': goto yy472; default: goto yy49; } -yy399: +yy402: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy470; + case 'T': goto yy473; default: goto yy49; } -yy400: +yy403: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'a': goto yy471; + case 'a': goto yy474; default: goto yy49; } -yy401: +yy404: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy472; + case 'I': goto yy475; default: goto yy49; } -yy402: +yy405: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy473; + case 'N': goto yy476; default: goto yy49; } -yy403: +yy406: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy474; + case 'N': goto yy477; default: goto yy49; } -yy404: +yy407: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy475; + case 'G': goto yy478; default: goto yy49; } -yy405: +yy408: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'X': goto yy477; + case 'X': goto yy480; default: goto yy49; } -yy406: +yy409: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy479; + case 'r': goto yy482; default: goto yy49; } -yy407: +yy410: yych = *++context.cursor; switch (yych) { case '0': @@ -14398,10 +14434,10 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'O': goto yy480; - default: goto yy98; + case 'O': goto yy483; + default: goto yy101; } -yy408: +yy411: yych = *++context.cursor; switch (yych) { case '0': @@ -14466,21 +14502,21 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'I': goto yy481; - default: goto yy98; + case 'I': goto yy484; + default: goto yy101; } -yy409: +yy412: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy482; + case 'e': goto yy485; default: goto yy49; } -yy410: +yy413: yyaccept = 30; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -14544,66 +14580,66 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy411; + default: goto yy414; } -yy411: -#line 9547 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy414: +#line 9554 "/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 14553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy412: +#line 14589 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy415: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy483; + case 'E': goto yy486; default: goto yy49; } -yy413: +yy416: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy485; + case 'R': goto yy488; default: goto yy49; } -yy414: +yy417: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'm': goto yy486; + case 'm': goto yy489; default: goto yy49; } -yy415: +yy418: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy487; + case 't': goto yy490; default: goto yy49; } -yy416: +yy419: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy488; + case 'r': goto yy491; default: goto yy49; } -yy417: +yy420: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy489; + case 't': goto yy492; default: goto yy49; } -yy418: +yy421: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'l': goto yy490; + case 'l': goto yy493; default: goto yy49; } -yy419: +yy422: yyaccept = 31; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -14667,59 +14703,59 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy420; + default: goto yy423; } -yy420: -#line 9464 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy423: +#line 9471 "/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 14676 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy421: +#line 14712 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy424: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy491; + case 'C': goto yy494; default: goto yy49; } -yy422: +yy425: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy492; + case 'A': goto yy495; default: goto yy49; } -yy423: +yy426: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy493; + case 'T': goto yy496; default: goto yy49; } -yy424: +yy427: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy494; + case 'i': goto yy497; default: goto yy49; } -yy425: +yy428: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy495; + case 'N': goto yy498; default: goto yy49; } -yy426: +yy429: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy497; + case 'T': goto yy500; default: goto yy49; } -yy427: +yy430: yyaccept = 32; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -14783,94 +14819,94 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy428; + default: goto yy431; } -yy428: -#line 9476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy431: +#line 9483 "/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 14792 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy429: +#line 14828 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy432: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy498; + case 'E': goto yy501; default: goto yy49; } -yy430: +yy433: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy499; + case 'A': goto yy502; default: goto yy49; } -yy431: +yy434: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy500; + case 'N': goto yy503; default: goto yy49; } -yy432: +yy435: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy501; + case 'I': goto yy504; default: goto yy49; } -yy433: +yy436: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy502; + case 'T': goto yy505; default: goto yy49; } -yy434: +yy437: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy504; + case 'T': goto yy507; default: goto yy49; } -yy435: +yy438: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy505; + case 'O': goto yy508; default: goto yy49; } -yy436: +yy439: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy506; + case 'E': goto yy509; default: goto yy49; } -yy437: +yy440: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy507; + case 'D': goto yy510; default: goto yy49; } -yy438: +yy441: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy509; + case 'N': goto yy512; default: goto yy49; } -yy439: +yy442: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy510; + case 'A': goto yy513; default: goto yy49; } -yy440: +yy443: yyaccept = 33; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -14934,132 +14970,132 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy441; - } -yy441: -#line 9492 "/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 14943 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy442: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'I': goto yy511; - default: goto yy49; - } -yy443: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'S': goto yy512; - default: goto yy49; + default: goto yy444; } yy444: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'I': goto yy514; - default: goto yy49; - } +#line 9499 "/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 14979 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy445: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy515; + case 'I': goto yy514; default: goto yy49; } yy446: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'l': goto yy516; + case 'S': goto yy515; default: goto yy49; } yy447: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'c': goto yy517; + case 'I': goto yy517; default: goto yy49; } yy448: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy518; + case 'A': goto yy518; default: goto yy49; } yy449: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy519; + case 'l': goto yy519; default: goto yy49; } yy450: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy520; + case 'c': goto yy520; default: goto yy49; } yy451: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy521; + case 'i': goto yy521; default: goto yy49; } yy452: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy523; + case 'F': goto yy522; default: goto yy49; } yy453: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy525; + case 'I': goto yy523; default: goto yy49; } yy454: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy526; + case 'D': goto yy524; default: goto yy49; } yy455: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy527; + case 'S': goto yy526; default: goto yy49; } yy456: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy528; + case 'E': goto yy528; default: goto yy49; } yy457: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy530; + case 'C': goto yy529; default: goto yy49; } yy458: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy531; + case 'C': goto yy530; default: goto yy49; } yy459: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'R': goto yy531; + default: goto yy49; + } +yy460: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'E': goto yy533; + default: goto yy49; + } +yy461: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'S': goto yy534; + default: goto yy49; + } +yy462: yych = *++context.cursor; switch (yych) { case '0': @@ -15124,10 +15160,10 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'I': goto yy532; - default: goto yy98; + case 'I': goto yy535; + default: goto yy101; } -yy460: +yy463: yych = *++context.cursor; switch (yych) { case '0': @@ -15192,21 +15228,21 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'N': goto yy533; - default: goto yy98; + case 'N': goto yy536; + default: goto yy101; } -yy461: +yy464: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'c': goto yy534; + case 'c': goto yy537; default: goto yy49; } -yy462: +yy465: yyaccept = 34; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -15270,94 +15306,94 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy463; + default: goto yy466; } -yy463: -#line 9519 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy466: +#line 9526 "/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 15279 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy464: +#line 15315 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy467: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy535; + case 'I': goto yy538; default: goto yy49; } -yy465: +yy468: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy537; + case 'A': goto yy540; default: goto yy49; } -yy466: +yy469: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy538; + case 'D': goto yy541; default: goto yy49; } -yy467: +yy470: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy539; + case 'N': goto yy542; default: goto yy49; } -yy468: +yy471: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy541; + case 'N': goto yy544; default: goto yy49; } -yy469: +yy472: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy542; + case 'T': goto yy545; default: goto yy49; } -yy470: +yy473: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy544; + case 'E': goto yy547; default: goto yy49; } -yy471: +yy474: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'b': goto yy546; + case 'b': goto yy549; default: goto yy49; } -yy472: +yy475: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'V': goto yy547; + case 'V': goto yy550; default: goto yy49; } -yy473: +yy476: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy548; + case 'C': goto yy551; default: goto yy49; } -yy474: +yy477: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy549; + case 'G': goto yy552; default: goto yy49; } -yy475: +yy478: yyaccept = 35; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -15421,17 +15457,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy476; + default: goto yy479; } -yy476: -#line 9538 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy479: +#line 9545 "/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 15430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy477: +#line 15466 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy480: yyaccept = 36; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -15495,45 +15531,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy478; + default: goto yy481; } -yy478: -#line 9539 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy481: +#line 9546 "/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 15504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy479: +#line 15540 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy482: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy550; + case 'i': goto yy553; default: goto yy49; } -yy480: +yy483: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy551; + case 'F': goto yy554; default: goto yy49; } -yy481: +yy484: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy552; + case 'D': goto yy555; default: goto yy49; } -yy482: +yy485: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'x': goto yy553; + case 'x': goto yy556; default: goto yy49; } -yy483: +yy486: yyaccept = 37; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -15597,87 +15633,87 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy484; + default: goto yy487; } -yy484: -#line 9548 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy487: +#line 9555 "/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 15606 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy485: +#line 15642 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy488: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy554; + case 'S': goto yy557; default: goto yy49; } -yy486: +yy489: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy555; + case 'e': goto yy558; default: goto yy49; } -yy487: +yy490: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy557; + case 'r': goto yy560; default: goto yy49; } -yy488: +yy491: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 's': goto yy558; + case 's': goto yy561; default: goto yy49; } -yy489: +yy492: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy559; + case 'e': goto yy562; default: goto yy49; } -yy490: +yy493: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy560; + case 'e': goto yy563; default: goto yy49; } -yy491: +yy494: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy561; + case 'T': goto yy564; default: goto yy49; } -yy492: +yy495: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy562; + case 'T': goto yy565; default: goto yy49; } -yy493: +yy496: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy563; + case 'I': goto yy566; default: goto yy49; } -yy494: +yy497: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy564; + case 'n': goto yy567; default: goto yy49; } -yy495: +yy498: yyaccept = 38; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -15741,52 +15777,52 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy496; + default: goto yy499; } -yy496: -#line 9473 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy499: +#line 9480 "/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 15750 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy497: +#line 15786 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy500: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy565; + case 'E': goto yy568; default: goto yy49; } -yy498: +yy501: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy566; + case 'N': goto yy569; default: goto yy49; } -yy499: +yy502: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy567; + case 'I': goto yy570; default: goto yy49; } -yy500: +yy503: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy568; + case 'I': goto yy571; default: goto yy49; } -yy501: +yy504: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy569; + case 'M': goto yy572; default: goto yy49; } -yy502: +yy505: yyaccept = 39; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -15850,38 +15886,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy503; + default: goto yy506; } -yy503: -#line 9484 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy506: +#line 9491 "/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 15859 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy504: +#line 15895 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy507: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy570; + case 'I': goto yy573; default: goto yy49; } -yy505: +yy508: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy571; + case 'N': goto yy574; default: goto yy49; } -yy506: +yy509: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy573; + case 'D': goto yy576; default: goto yy49; } -yy507: +yy510: yyaccept = 40; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -15945,38 +15981,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy508; + default: goto yy511; } -yy508: -#line 9488 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy511: +#line 9495 "/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 15954 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy509: +#line 15990 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy512: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy575; + case 'G': goto yy578; default: goto yy49; } -yy510: +yy513: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy576; + case 'T': goto yy579; default: goto yy49; } -yy511: +yy514: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy577; + case 'T': goto yy580; default: goto yy49; } -yy512: +yy515: yyaccept = 41; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16040,67 +16076,67 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy513; + default: goto yy516; } -yy513: -#line 9494 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy516: +#line 9501 "/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 16049 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy514: +#line 16085 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy517: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'B': goto yy579; + case 'B': goto yy582; default: goto yy49; } -yy515: +yy518: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy580; + case 'L': goto yy583; default: goto yy49; } -yy516: +yy519: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy582; - case 'i': goto yy583; + case 'S': goto yy585; + case 'i': goto yy586; default: goto yy49; } -yy517: +yy520: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy584; + case 'S': goto yy587; default: goto yy49; } -yy518: +yy521: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy585; + case 'n': goto yy588; default: goto yy49; } -yy519: +yy522: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy586; + case 'I': goto yy589; default: goto yy49; } -yy520: +yy523: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy587; + case 'T': goto yy590; default: goto yy49; } -yy521: +yy524: yyaccept = 42; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16164,17 +16200,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy522; + default: goto yy525; } -yy522: -#line 9505 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy525: +#line 9512 "/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 16173 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy523: +#line 16209 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy526: yyaccept = 43; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16238,38 +16274,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy524; + default: goto yy527; } -yy524: -#line 9506 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy527: +#line 9513 "/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 16247 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy525: +#line 16283 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy528: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy589; + case 'S': goto yy592; default: goto yy49; } -yy526: +yy529: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy591; + case 'E': goto yy594; default: goto yy49; } -yy527: +yy530: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy593; + case 'T': goto yy596; default: goto yy49; } -yy528: +yy531: yyaccept = 44; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16333,52 +16369,52 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy529; + default: goto yy532; } -yy529: -#line 9510 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy532: +#line 9517 "/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 16342 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy530: +#line 16378 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy533: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy594; + case 'C': goto yy597; default: goto yy49; } -yy531: +yy534: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy595; + case 't': goto yy598; default: goto yy49; } -yy532: +yy535: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy596; + case 'N': goto yy599; default: goto yy49; } -yy533: +yy536: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'U': goto yy597; + case 'U': goto yy600; default: goto yy49; } -yy534: +yy537: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy598; + case 'S': goto yy601; default: goto yy49; } -yy535: +yy538: yyaccept = 45; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16442,31 +16478,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy536; + default: goto yy539; } -yy536: -#line 9523 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy539: +#line 9530 "/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 16451 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy537: +#line 16487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy540: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy599; + case 'L': goto yy602; default: goto yy49; } -yy538: +yy541: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy601; + case 'e': goto yy604; default: goto yy49; } -yy539: +yy542: yyaccept = 46; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16530,24 +16566,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy540; + default: goto yy543; } -yy540: -#line 9525 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy543: +#line 9532 "/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 16539 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy541: +#line 16575 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy544: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy602; + case 'F': goto yy605; default: goto yy49; } -yy542: +yy545: yyaccept = 47; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16611,17 +16647,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy543; + default: goto yy546; } -yy543: -#line 9528 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy546: +#line 9535 "/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 16620 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy544: +#line 16656 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy547: yyaccept = 48; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16685,80 +16721,80 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy545; + default: goto yy548; } -yy545: -#line 9530 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy548: +#line 9537 "/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 16694 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy546: +#line 16730 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy549: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'l': goto yy603; + case 'l': goto yy606; default: goto yy49; } -yy547: +yy550: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy604; + case 'E': goto yy607; default: goto yy49; } -yy548: +yy551: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy605; + case 'E': goto yy608; default: goto yy49; } -yy549: +yy552: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy607; + case 'S': goto yy610; default: goto yy49; } -yy550: +yy553: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy609; + case 'n': goto yy612; default: goto yy49; } -yy551: +yy554: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy610; + case '-': goto yy613; default: goto yy49; } -yy552: +yy555: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy611; + case 'E': goto yy614; default: goto yy49; } -yy553: +yy556: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy612; + case 'S': goto yy615; default: goto yy49; } -yy554: +yy557: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy613; + case 'A': goto yy616; default: goto yy49; } -yy555: +yy558: yyaccept = 49; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16822,115 +16858,115 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy556; + default: goto yy559; } -yy556: -#line 9551 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy559: +#line 9558 "/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 16831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy557: +#line 16867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy560: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy614; + case 'i': goto yy617; default: goto yy49; } -yy558: +yy561: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'a': goto yy615; + case 'a': goto yy618; default: goto yy49; } -yy559: +yy562: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'x': goto yy616; + case 'x': goto yy619; default: goto yy49; } -yy560: +yy563: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy617; + case 'S': goto yy620; default: goto yy49; } -yy561: +yy564: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy618; + case '-': goto yy621; default: goto yy49; } -yy562: +yy565: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy619; + case 'I': goto yy622; default: goto yy49; } -yy563: +yy566: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy620; + case 'C': goto yy623; default: goto yy49; } -yy564: +yy567: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy622; + case 'g': goto yy625; default: goto yy49; } -yy565: +yy568: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy624; + case 'R': goto yy627; default: goto yy49; } -yy566: +yy569: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy626; + case 'T': goto yy629; default: goto yy49; } -yy567: +yy570: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy628; + case 'N': goto yy631; default: goto yy49; } -yy568: +yy571: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy629; + case 'N': goto yy632; default: goto yy49; } -yy569: +yy572: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy630; + case 'E': goto yy633; default: goto yy49; } -yy570: +yy573: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy632; + case 'O': goto yy635; default: goto yy49; } -yy571: +yy574: yyaccept = 50; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -16994,17 +17030,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy572; + default: goto yy575; } -yy572: -#line 9486 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy575: +#line 9493 "/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 17003 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy573: +#line 17039 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy576: yyaccept = 51; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -17068,31 +17104,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy574; + default: goto yy577; } -yy574: -#line 9487 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy577: +#line 9494 "/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 17077 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy575: +#line 17113 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy578: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '_': goto yy633; + case '_': goto yy636; default: goto yy49; } -yy576: +yy579: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy634; + case 'E': goto yy637; default: goto yy49; } -yy577: +yy580: yyaccept = 52; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -17156,24 +17192,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy578; + default: goto yy581; } -yy578: -#line 9493 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy581: +#line 9500 "/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 17165 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy579: +#line 17201 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy582: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy635; + case 'I': goto yy638; default: goto yy49; } -yy580: +yy583: yyaccept = 53; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -17237,52 +17273,52 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy581; + default: goto yy584; } -yy581: -#line 9496 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy584: +#line 9503 "/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 17246 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy582: +#line 17282 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy585: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy636; + case 't': goto yy639; default: goto yy49; } -yy583: +yy586: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'z': goto yy637; + case 'z': goto yy640; default: goto yy49; } -yy584: +yy587: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy638; + case 't': goto yy641; default: goto yy49; } -yy585: +yy588: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy639; + case 'g': goto yy642; default: goto yy49; } -yy586: +yy589: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy641; + case 'E': goto yy644; default: goto yy49; } -yy587: +yy590: yyaccept = 54; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -17346,17 +17382,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy588; + default: goto yy591; } -yy588: -#line 9504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy591: +#line 9511 "/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 17355 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy589: +#line 17391 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy592: yyaccept = 55; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -17420,17 +17456,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy590; + default: goto yy593; } -yy590: -#line 9507 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy593: +#line 9514 "/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 17429 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy591: +#line 17465 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy594: yyaccept = 56; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -17494,59 +17530,59 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy592; + default: goto yy595; } -yy592: -#line 9508 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy595: +#line 9515 "/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 17503 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy593: +#line 17539 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy596: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy642; + case 'I': goto yy645; default: goto yy49; } -yy594: +yy597: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy643; + case 'T': goto yy646; default: goto yy49; } -yy595: +yy598: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy644; + case 'r': goto yy647; default: goto yy49; } -yy596: +yy599: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy645; + case 'F': goto yy648; default: goto yy49; } -yy597: +yy600: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'M': goto yy646; + case 'M': goto yy649; default: goto yy49; } -yy598: +yy601: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy647; + case 't': goto yy650; default: goto yy49; } -yy599: +yy602: yyaccept = 57; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -17610,45 +17646,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy600; + default: goto yy603; } -yy600: -#line 9524 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy603: +#line 9531 "/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 17619 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy601: +#line 17655 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy604: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 's': goto yy648; + case 's': goto yy651; default: goto yy49; } -yy602: +yy605: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy649; + case 'I': goto yy652; default: goto yy49; } -yy603: +yy606: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy650; + case 'e': goto yy653; default: goto yy49; } -yy604: +yy607: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy651; + case '-': goto yy654; default: goto yy49; } -yy605: +yy608: yyaccept = 58; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -17712,17 +17748,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy606; + default: goto yy609; } -yy606: -#line 9534 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy609: +#line 9541 "/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 17721 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy607: +#line 17757 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy610: yyaccept = 59; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -17786,20 +17822,20 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy608; + default: goto yy611; } -yy608: -#line 9536 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy611: +#line 9543 "/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 17795 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy609: +#line 17831 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy612: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy652; + case 'g': goto yy655; default: goto yy49; } -yy610: +yy613: yych = *++context.cursor; switch (yych) { case '0': @@ -17864,59 +17900,59 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'D': goto yy654; - default: goto yy98; + case 'D': goto yy657; + default: goto yy101; } -yy611: +yy614: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy655; + case 'N': goto yy658; default: goto yy49; } -yy612: +yy615: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy656; + case 't': goto yy659; default: goto yy49; } -yy613: +yy616: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy657; + case 'L': goto yy660; default: goto yy49; } -yy614: +yy617: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy659; + case 'n': goto yy662; default: goto yy49; } -yy615: +yy618: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'l': goto yy660; + case 'l': goto yy663; default: goto yy49; } -yy616: +yy619: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy661; + case 'S': goto yy664; default: goto yy49; } -yy617: +yy620: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy662; + case 't': goto yy665; default: goto yy49; } -yy618: +yy621: yych = *++context.cursor; switch (yych) { case '0': @@ -17981,21 +18017,21 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'S': goto yy663; - default: goto yy98; + case 'S': goto yy666; + default: goto yy101; } -yy619: +yy622: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy664; + case 'O': goto yy667; default: goto yy49; } -yy620: +yy623: yyaccept = 60; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18059,17 +18095,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy621; + default: goto yy624; } -yy621: -#line 9469 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy624: +#line 9476 "/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 18068 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy622: +#line 18104 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy625: yyaccept = 61; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18133,17 +18169,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy623; + default: goto yy626; } -yy623: -#line 9472 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy626: +#line 9479 "/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 18142 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy624: +#line 18178 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy627: yyaccept = 62; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18207,17 +18243,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy625; + default: goto yy628; } -yy625: -#line 9475 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy628: +#line 9482 "/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 18216 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy626: +#line 18252 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy629: yyaccept = 63; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18280,32 +18316,32 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'S': goto yy665; - default: goto yy627; + case 'S': goto yy668; + default: goto yy630; } -yy627: -#line 9478 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy630: +#line 9485 "/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 18290 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy628: +#line 18326 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy631: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy667; + case 'E': goto yy670; default: goto yy49; } -yy629: +yy632: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'G': goto yy668; + case 'G': goto yy671; default: goto yy49; } -yy630: +yy633: yyaccept = 64; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18369,66 +18405,66 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy631; + default: goto yy634; } -yy631: -#line 9483 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy634: +#line 9490 "/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 18378 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy632: +#line 18414 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy635: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy670; + case 'N': goto yy673; default: goto yy49; } -yy633: +yy636: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'C': goto yy671; + case 'C': goto yy674; default: goto yy49; } -yy634: +yy637: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy672; + case 'D': goto yy675; default: goto yy49; } -yy635: +yy638: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy674; + case 'L': goto yy677; default: goto yy49; } -yy636: +yy639: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy675; + case 'r': goto yy678; default: goto yy49; } -yy637: +yy640: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy676; + case 'e': goto yy679; default: goto yy49; } -yy638: +yy641: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy677; + case 'r': goto yy680; default: goto yy49; } -yy639: +yy642: yyaccept = 65; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18492,83 +18528,83 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy640; + default: goto yy643; } -yy640: -#line 9502 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy643: +#line 9509 "/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 18501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy641: +#line 18537 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy644: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy678; + case 'R': goto yy681; default: goto yy49; } -yy642: +yy645: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy680; + case 'O': goto yy683; default: goto yy49; } -yy643: +yy646: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy681; + case 'I': goto yy684; default: goto yy49; } -yy644: +yy647: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy682; + case 'i': goto yy685; default: goto yy49; } -yy645: +yy648: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy683; + case 'I': goto yy686; default: goto yy49; } -yy646: +yy649: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'B': goto yy684; + case 'B': goto yy687; default: goto yy49; } -yy647: +yy650: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy685; + case 'r': goto yy688; default: goto yy49; } -yy648: +yy651: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'c': goto yy686; + case 'c': goto yy689; default: goto yy49; } -yy649: +yy652: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy687; + case 'N': goto yy690; default: goto yy49; } -yy650: +yy653: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy688; + case 'S': goto yy691; default: goto yy49; } -yy651: +yy654: yych = *++context.cursor; switch (yych) { case '0': @@ -18633,14 +18669,14 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'O': goto yy689; - default: goto yy98; + case 'O': goto yy692; + default: goto yy101; } -yy652: +yy655: yyaccept = 66; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18704,38 +18740,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy653; + default: goto yy656; } -yy653: -#line 9540 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy656: +#line 9547 "/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 18713 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy654: +#line 18749 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy657: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy690; + case 'A': goto yy693; default: goto yy49; } -yy655: +yy658: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy691; + case 'T': goto yy694; default: goto yy49; } -yy656: +yy659: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy692; + case 'r': goto yy695; default: goto yy49; } -yy657: +yy660: yyaccept = 67; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18799,59 +18835,59 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy658; + default: goto yy661; } -yy658: -#line 9549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy661: +#line 9556 "/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 18808 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy659: +#line 18844 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy662: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy693; + case 'g': goto yy696; default: goto yy49; } -yy660: +yy663: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy695; + case 'S': goto yy698; default: goto yy49; } -yy661: +yy664: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy696; + case 't': goto yy699; default: goto yy49; } -yy662: +yy665: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy697; + case 'r': goto yy700; default: goto yy49; } -yy663: +yy666: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy698; + case 'Y': goto yy701; default: goto yy49; } -yy664: +yy667: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy699; + case 'N': goto yy702; default: goto yy49; } -yy665: +yy668: yyaccept = 68; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18915,24 +18951,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy666; + default: goto yy669; } -yy666: -#line 9479 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy669: +#line 9486 "/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 18924 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy667: +#line 18960 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy670: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy701; + case 'D': goto yy704; default: goto yy49; } -yy668: +yy671: yyaccept = 69; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -18996,31 +19032,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy669; + default: goto yy672; } -yy669: -#line 9481 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy672: +#line 9488 "/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 19005 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy670: +#line 19041 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy673: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy703; + case 'S': goto yy706; default: goto yy49; } -yy671: +yy674: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy705; + case 'O': goto yy708; default: goto yy49; } -yy672: +yy675: yyaccept = 70; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -19084,45 +19120,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy673; + default: goto yy676; } -yy673: -#line 9491 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy676: +#line 9498 "/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 19093 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy674: +#line 19129 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy677: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy706; + case 'I': goto yy709; default: goto yy49; } -yy675: +yy678: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy707; + case 'i': goto yy710; default: goto yy49; } -yy676: +yy679: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'd': goto yy708; + case 'd': goto yy711; default: goto yy49; } -yy677: +yy680: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy709; + case 'i': goto yy712; default: goto yy49; } -yy678: +yy681: yyaccept = 71; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -19186,108 +19222,108 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy679; + default: goto yy682; } -yy679: -#line 9503 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy682: +#line 9510 "/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 19195 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy680: +#line 19231 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy683: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy710; + case 'N': goto yy713; default: goto yy49; } -yy681: +yy684: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy711; + case 'O': goto yy714; default: goto yy49; } -yy682: +yy685: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy712; + case 'n': goto yy715; default: goto yy49; } -yy683: +yy686: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy713; + case 'N': goto yy716; default: goto yy49; } -yy684: +yy687: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy714; + case 'E': goto yy717; default: goto yy49; } -yy685: +yy688: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy715; + case 'i': goto yy718; default: goto yy49; } -yy686: +yy689: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy716; + case 'r': goto yy719; default: goto yy49; } -yy687: +yy690: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy717; + case 'I': goto yy720; default: goto yy49; } -yy688: +yy691: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy718; + case 't': goto yy721; default: goto yy49; } -yy689: +yy692: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy719; + case 'I': goto yy722; default: goto yy49; } -yy690: +yy693: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy720; + case 'Y': goto yy723; default: goto yy49; } -yy691: +yy694: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy722; + case 'I': goto yy725; default: goto yy49; } -yy692: +yy695: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy723; + case 'i': goto yy726; default: goto yy49; } -yy693: +yy696: yyaccept = 72; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -19351,45 +19387,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy694; + default: goto yy697; } -yy694: -#line 9552 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy697: +#line 9559 "/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 19360 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy695: +#line 19396 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy698: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy724; + case 't': goto yy727; default: goto yy49; } -yy696: +yy699: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy725; + case 'r': goto yy728; default: goto yy49; } -yy697: +yy700: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy726; + case 'i': goto yy729; default: goto yy49; } -yy698: +yy701: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy727; + case 'N': goto yy730; default: goto yy49; } -yy699: +yy702: yyaccept = 73; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -19453,17 +19489,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy700; + default: goto yy703; } -yy700: -#line 9468 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy703: +#line 9475 "/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 19462 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy701: +#line 19498 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy704: yyaccept = 74; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -19527,17 +19563,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy702; + default: goto yy705; } -yy702: -#line 9480 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy705: +#line 9487 "/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 19536 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy703: +#line 19572 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy706: yyaccept = 75; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -19601,122 +19637,122 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy704; - } -yy704: -#line 9485 "/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 19610 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy705: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'N': goto yy728; - default: goto yy49; - } -yy706: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'T': goto yy729; - default: goto yy49; + default: goto yy707; } yy707: - yyaccept = 2; - yych = *(YYMARKER = ++context.cursor); - switch (yych) { - case 'n': goto yy730; - default: goto yy49; - } +#line 9492 "/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 19646 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" yy708: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy731; + case 'N': goto yy731; default: goto yy49; } yy709: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy732; + case 'T': goto yy732; default: goto yy49; } yy710: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'S': goto yy733; + case 'n': goto yy733; default: goto yy49; } yy711: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'N': goto yy735; + case 'T': goto yy734; default: goto yy49; } yy712: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy737; + case 'n': goto yy735; default: goto yy49; } yy713: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy739; + case 'S': goto yy736; default: goto yy49; } yy714: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy740; + case 'N': goto yy738; default: goto yy49; } yy715: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy742; + case 'g': goto yy740; default: goto yy49; } yy716: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy743; + case 'I': goto yy742; default: goto yy49; } yy717: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy744; + case 'R': goto yy743; default: goto yy49; } yy718: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy745; + case 'n': goto yy745; default: goto yy49; } yy719: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'D': goto yy746; + case 'i': goto yy746; default: goto yy49; } yy720: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'T': goto yy747; + default: goto yy49; + } +yy721: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'r': goto yy748; + default: goto yy49; + } +yy722: + yyaccept = 2; + yych = *(YYMARKER = ++context.cursor); + switch (yych) { + case 'D': goto yy749; + default: goto yy49; + } +yy723: yyaccept = 76; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -19780,94 +19816,94 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy721; + default: goto yy724; } -yy721: -#line 9544 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy724: +#line 9551 "/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 19789 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy722: +#line 19825 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy725: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'F': goto yy748; + case 'F': goto yy751; default: goto yy49; } -yy723: +yy726: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy749; + case 'n': goto yy752; default: goto yy49; } -yy724: +yy727: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy750; + case 'r': goto yy753; default: goto yy49; } -yy725: +yy728: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy751; + case 'i': goto yy754; default: goto yy49; } -yy726: +yy729: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy752; + case 'n': goto yy755; default: goto yy49; } -yy727: +yy730: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy753; + case 'T': goto yy756; default: goto yy49; } -yy728: +yy731: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy754; + case 'T': goto yy757; default: goto yy49; } -yy729: +yy732: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy755; + case 'Y': goto yy758; default: goto yy49; } -yy730: +yy733: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy757; + case 'g': goto yy760; default: goto yy49; } -yy731: +yy734: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy759; + case 'i': goto yy762; default: goto yy49; } -yy732: +yy735: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy760; + case 'g': goto yy763; default: goto yy49; } -yy733: +yy736: yyaccept = 77; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -19931,17 +19967,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy734; + default: goto yy737; } -yy734: -#line 9509 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy737: +#line 9516 "/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 19940 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy735: +#line 19976 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy738: yyaccept = 78; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20005,17 +20041,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy736; + default: goto yy739; } -yy736: -#line 9511 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy739: +#line 9518 "/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 20014 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy737: +#line 20050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy740: yyaccept = 79; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20079,24 +20115,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy738; + default: goto yy741; } -yy738: -#line 9512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy741: +#line 9519 "/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 20088 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy739: +#line 20124 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy742: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'T': goto yy762; + case 'T': goto yy765; default: goto yy49; } -yy740: +yy743: yyaccept = 80; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20160,45 +20196,45 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy741; + default: goto yy744; } -yy741: -#line 9516 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy744: +#line 9523 "/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 20169 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy742: +#line 20205 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy745: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy763; + case 'g': goto yy766; default: goto yy49; } -yy743: +yy746: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'p': goto yy765; + case 'p': goto yy768; default: goto yy49; } -yy744: +yy747: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy766; + case 'Y': goto yy769; default: goto yy49; } -yy745: +yy748: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy768; + case 'i': goto yy771; default: goto yy49; } -yy746: +yy749: yyaccept = 81; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy769; + case '-': goto yy772; case '0': case '1': case '2': @@ -20262,66 +20298,66 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy747; + default: goto yy750; } -yy747: -#line 9532 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy750: +#line 9539 "/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 20271 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy748: +#line 20307 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy751: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy770; + case 'I': goto yy773; default: goto yy49; } -yy749: +yy752: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy771; + case 'g': goto yy774; default: goto yy49; } -yy750: +yy753: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'i': goto yy773; + case 'i': goto yy776; default: goto yy49; } -yy751: +yy754: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy774; + case 'n': goto yy777; default: goto yy49; } -yy752: +yy755: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy775; + case 'g': goto yy778; default: goto yy49; } -yy753: +yy756: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'A': goto yy777; + case 'A': goto yy780; default: goto yy49; } -yy754: +yy757: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy778; + case 'R': goto yy781; default: goto yy49; } -yy755: +yy758: yyaccept = 82; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20385,17 +20421,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy756; + default: goto yy759; } -yy756: -#line 9495 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy759: +#line 9502 "/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 20394 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy757: +#line 20430 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy760: yyaccept = 83; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20459,24 +20495,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy758; + default: goto yy761; } -yy758: -#line 9500 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy761: +#line 9507 "/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 20468 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy759: +#line 20504 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy762: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'm': goto yy779; + case 'm': goto yy782; default: goto yy49; } -yy760: +yy763: yyaccept = 84; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20540,24 +20576,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy761; + default: goto yy764; } -yy761: -#line 9501 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy764: +#line 9508 "/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 20549 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy762: +#line 20585 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy765: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'Y': goto yy780; + case 'Y': goto yy783; default: goto yy49; } -yy763: +yy766: yyaccept = 85; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20621,24 +20657,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy764; + default: goto yy767; } -yy764: -#line 9518 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy767: +#line 9525 "/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 20630 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy765: +#line 20666 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy768: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 't': goto yy782; + case 't': goto yy785; default: goto yy49; } -yy766: +yy769: yyaccept = 86; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20702,20 +20738,20 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy767; + default: goto yy770; } -yy767: -#line 9527 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy770: +#line 9534 "/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 20711 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy768: +#line 20747 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy771: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy783; + case 'n': goto yy786; default: goto yy49; } -yy769: +yy772: yych = *++context.cursor; switch (yych) { case '0': @@ -20780,21 +20816,21 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - case 'I': goto yy784; - default: goto yy98; + case 'I': goto yy787; + default: goto yy101; } -yy770: +yy773: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'E': goto yy785; + case 'E': goto yy788; default: goto yy49; } -yy771: +yy774: yyaccept = 87; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20858,31 +20894,31 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy772; + default: goto yy775; } -yy772: -#line 9542 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy775: +#line 9549 "/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 20867 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy773: +#line 20903 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy776: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'n': goto yy786; + case 'n': goto yy789; default: goto yy49; } -yy774: +yy777: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy787; + case 'g': goto yy790; default: goto yy49; } -yy775: +yy778: yyaccept = 88; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -20946,38 +20982,38 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy776; + default: goto yy779; } -yy776: -#line 9554 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy779: +#line 9561 "/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 20955 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy777: +#line 20991 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy780: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'X': goto yy789; + case 'X': goto yy792; default: goto yy49; } -yy778: +yy781: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'O': goto yy791; + case 'O': goto yy794; default: goto yy49; } -yy779: +yy782: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'e': goto yy792; + case 'e': goto yy795; default: goto yy49; } -yy780: +yy783: yyaccept = 89; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21041,52 +21077,52 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy781; + default: goto yy784; } -yy781: -#line 9515 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy784: +#line 9522 "/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 21050 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy782: +#line 21086 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy785: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'o': goto yy794; + case 'o': goto yy797; default: goto yy49; } -yy783: +yy786: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy795; + case 'g': goto yy798; default: goto yy49; } -yy784: +yy787: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy797; + case 'R': goto yy800; default: goto yy49; } -yy785: +yy788: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'R': goto yy798; + case 'R': goto yy801; default: goto yy49; } -yy786: +yy789: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'g': goto yy800; + case 'g': goto yy803; default: goto yy49; } -yy787: +yy790: yyaccept = 90; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21150,17 +21186,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy788; + default: goto yy791; } -yy788: -#line 9553 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy791: +#line 9560 "/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 21159 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy789: +#line 21195 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy792: yyaccept = 91; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21224,24 +21260,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy790; + default: goto yy793; } -yy790: -#line 9465 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy793: +#line 9472 "/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 21233 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy791: +#line 21269 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy794: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'L': goto yy802; + case 'L': goto yy805; default: goto yy49; } -yy792: +yy795: yyaccept = 92; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21305,24 +21341,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy793; + default: goto yy796; } -yy793: -#line 9499 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy796: +#line 9506 "/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 21314 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy794: +#line 21350 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy797: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'r': goto yy804; + case 'r': goto yy807; default: goto yy49; } -yy795: +yy798: yyaccept = 93; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21386,24 +21422,24 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy796; + default: goto yy799; } -yy796: -#line 9529 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy799: +#line 9536 "/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 21395 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy797: +#line 21431 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy800: yyaccept = 2; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case 'I': goto yy806; + case 'I': goto yy809; default: goto yy49; } -yy798: +yy801: yyaccept = 94; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21467,17 +21503,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy799; + default: goto yy802; } -yy799: -#line 9546 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy802: +#line 9553 "/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 21476 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy800: +#line 21512 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy803: yyaccept = 95; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21541,17 +21577,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy801; + default: goto yy804; } -yy801: -#line 9550 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy804: +#line 9557 "/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 21550 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy802: +#line 21586 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy805: yyaccept = 96; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21615,17 +21651,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy803; + default: goto yy806; } -yy803: -#line 9489 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy806: +#line 9496 "/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 21624 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy804: +#line 21660 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy807: yyaccept = 97; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21689,17 +21725,17 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy805; + default: goto yy808; } -yy805: -#line 9520 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy808: +#line 9527 "/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 21698 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" -yy806: +#line 21734 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +yy809: yyaccept = 98; yych = *(YYMARKER = ++context.cursor); switch (yych) { - case '-': goto yy100; + case '-': goto yy103; case '0': case '1': case '2': @@ -21763,14 +21799,14 @@ namespace yy { case 'x': case 'y': case 'z': goto yy48; - default: goto yy807; + default: goto yy810; } -yy807: -#line 9533 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +yy810: +#line 9540 "/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 21772 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" +#line 21808 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.hpp" } -#line 9607 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" +#line 9615 "/home/styler/git/fast_ber/build/src/autogen/asn_compiler.re" } } diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 5c5e0660..4b069b25 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -217,4 +217,5 @@ add_test(NAME fast_ber_compiler_6 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/ add_test(NAME fast_ber_compiler_7 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/extension.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/extension) add_test(NAME fast_ber_compiler_8 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/SGSN-CDR-def-v2009A.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/real_schema) add_test(NAME fast_ber_compiler_9 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/class.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/class) +add_test(NAME fast_ber_compiler_10 COMMAND fast_ber_compiler ${CMAKE_SOURCE_DIR}/testfiles/integer.asn ${CMAKE_CURRENT_BINARY_DIR}/autogen/integer) add_test(NAME fast_ber_tests COMMAND fast_ber_tests) From 01db03e9f17f9bf24263921d9f9da2328b1124b2 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 18 Aug 2019 18:01:14 +0100 Subject: [PATCH 25/31] Upversion abseil to prevent clang-7 build issue --- 3rd_party/abseil-cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/3rd_party/abseil-cpp b/3rd_party/abseil-cpp index 2c8421e1..9a41ffdd 160000 --- a/3rd_party/abseil-cpp +++ b/3rd_party/abseil-cpp @@ -1 +1 @@ -Subproject commit 2c8421e1c6cef0da9e8a20b01c15256ec9ec116d +Subproject commit 9a41ffdd3a0ccbcdd29c4e3886b28e06f2cd9c66 From 48ef60c17beeee7fca35777a5115470d28b7b120 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 18 Aug 2019 18:11:19 +0100 Subject: [PATCH 26/31] Add missing integer.asn test file --- testfiles/integer.asn | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 testfiles/integer.asn diff --git a/testfiles/integer.asn b/testfiles/integer.asn new file mode 100644 index 00000000..2425866c --- /dev/null +++ b/testfiles/integer.asn @@ -0,0 +1,8 @@ +Int DEFINITIONS AUTOMATIC TAGS ::= BEGIN + +small_int INTEGER ::= -9223372036854775808 +big_int INTEGER ::= 9223372036854775807 + +Integer64 ::= INTEGER (-9223372036854775808..9223372036854775807) + +END From 478011da94d6366209feed318666cbd20f8c7272 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 18 Aug 2019 18:44:03 +0100 Subject: [PATCH 27/31] Correct parameters error message --- src/compiler/Parameters.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/compiler/Parameters.cpp b/src/compiler/Parameters.cpp index 536db08d..1bc66b84 100644 --- a/src/compiler/Parameters.cpp +++ b/src/compiler/Parameters.cpp @@ -173,7 +173,7 @@ void parameterized_to_concrete(const Asn1Tree& tree, const Module& module, Type& if (parameter_template.parameters.size() != defined.parameters.size()) { throw std::runtime_error("Invalid number of parameters for parameterized assignment, expected " + - std::to_string(defined.parameters.size()) + " got " + + std::to_string(parameter_template.parameters.size()) + " got " + std::to_string(defined.parameters.size())); } From ff937759421209105bb2350de6722ea90ecd5c73 Mon Sep 17 00:00:00 2001 From: Samuel Tyler - Windows Date: Sun, 18 Aug 2019 22:45:16 +0100 Subject: [PATCH 28/31] One AppVeyor build only to reduce CI time --- appveyor.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 98aa21f5..a2d7fc8a 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,9 +1,7 @@ platform: - - x86 - x64 configuration: - - Debug - Release image: From 66f8af61471afa693de0d293005518808dcfca00 Mon Sep 17 00:00:00 2001 From: Samuel Tyler - Windows Date: Sun, 18 Aug 2019 23:18:52 +0100 Subject: [PATCH 29/31] Use NMake buildfiles on AppVeyor to speed up compilation --- appveyor.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index a2d7fc8a..465866e2 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -15,9 +15,10 @@ build_script: cd build - cmake .. -DCMAKE_BUILD_TYPE=Release + cmake .. -DCMAKE_BUILD_TYPE=Release -g "NMake Makefiles" cmake --build . --config Release test_script: - - ctest -C Release \ No newline at end of file + - ctest -C Release -j 8 + \ No newline at end of file From 05dc209ba7c4bdbce53caf87bb8aa146a1f2993f Mon Sep 17 00:00:00 2001 From: Samuel Tyler - Windows Date: Sun, 18 Aug 2019 23:22:15 +0100 Subject: [PATCH 30/31] Correct AppVeyor --- appveyor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 465866e2..91f82e51 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -15,7 +15,7 @@ build_script: cd build - cmake .. -DCMAKE_BUILD_TYPE=Release -g "NMake Makefiles" + cmake .. -DCMAKE_BUILD_TYPE=Release -G "NMake Makefiles" cmake --build . --config Release From 17affd2df583557b844d92f9a515ecfde1118fc3 Mon Sep 17 00:00:00 2001 From: Samuel Tyler - Windows Date: Sun, 18 Aug 2019 23:31:49 +0100 Subject: [PATCH 31/31] Intitialize VS environment in AppVeyor --- appveyor.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 91f82e51..5751683b 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -6,7 +6,10 @@ configuration: image: - Visual Studio 2017 - + +init: + - call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 + build_script: - cmd: >- git submodule update --init