EXPECTED = {'X680': {'extensibility-implied': False,
          'imports': {},
          'object-classes': {'ATTRIBUTE-E-2-15': {'members': [{'name': '&AttributeType',
                                                               'type': 'OpenType'},
                                                              {'name': '&attributeId',
                                                               'type': 'OBJECT '
                                                                       'IDENTIFIER'}]}},
          'object-sets': {},
          'tags': 'AUTOMATIC',
          'types': {'A': {'type': 'NULL'},
                    'A-19-5': {'type': 'ENUMERATED',
                               'values': [('a', 0), ('b', 3), None, ('c', 1)]},
                    'A-19-6': {'type': 'ENUMERATED',
                               'values': [('a', 0), ('b', 1), None, ('c', 2)]},
                    'A-G-1-4-1': {'members': [{'name': 'a', 'type': 'INTEGER'},
                                              None],
                                  'type': 'SEQUENCE'},
                    'A-G-1-4-2': {'members': [{'name': 'a', 'type': 'INTEGER'},
                                              None,
                                              {'name': 'b', 'type': 'BOOLEAN'},
                                              {'name': 'c', 'type': 'INTEGER'}],
                                  'type': 'SEQUENCE'},
                    'A-G-1-4-3': {'members': [{'name': 'a', 'type': 'INTEGER'},
                                              None,
                                              {'name': 'b', 'type': 'BOOLEAN'},
                                              {'name': 'c', 'type': 'INTEGER'},
                                              {'members': [{'name': 'e',
                                                            'type': 'INTEGER'},
                                                           None,
                                                           None,
                                                           {'name': 'f',
                                                            'type': 'IA5String'}],
                                               'name': 'd',
                                               'type': 'SEQUENCE'}],
                                  'type': 'SEQUENCE'},
                    'A-G-1-4-4': {'members': [{'name': 'a', 'type': 'INTEGER'},
                                              None,
                                              {'name': 'b', 'type': 'BOOLEAN'},
                                              {'name': 'c', 'type': 'INTEGER'},
                                              {'members': [{'name': 'e',
                                                            'type': 'INTEGER'},
                                                           None,
                                                           {'name': 'g',
                                                            'optional': True,
                                                            'type': 'BOOLEAN'},
                                                           {'name': 'h',
                                                            'type': 'BMPString'},
                                                           None,
                                                           {'name': 'f',
                                                            'type': 'IA5String'}],
                                               'name': 'd',
                                               'type': 'SEQUENCE'}],
                                  'type': 'SEQUENCE'},
                    'A-G-1-7-1': {'members': [{'name': 'a', 'type': 'INTEGER'},
                                              None],
                                  'type': 'SEQUENCE'},
                    'A-G-1-7-2': {'members': [{'name': 'a', 'type': 'INTEGER'},
                                              None,
                                              [{'name': 'b', 'type': 'BOOLEAN'},
                                               {'name': 'c',
                                                'type': 'INTEGER'}]],
                                  'type': 'SEQUENCE'},
                    'A-G-1-7-3': {'members': [{'name': 'a', 'type': 'INTEGER'},
                                              None,
                                              [{'name': 'b', 'type': 'BOOLEAN'},
                                               {'name': 'c',
                                                'type': 'INTEGER'}],
                                              {'members': [{'name': 'e',
                                                            'type': 'INTEGER'},
                                                           None,
                                                           None,
                                                           {'name': 'f',
                                                            'type': 'IA5String'}],
                                               'name': 'd',
                                               'type': 'SEQUENCE'}],
                                  'type': 'SEQUENCE'},
                    'A-G-1-7-4': {'members': [{'name': 'a', 'type': 'INTEGER'},
                                              None,
                                              [{'name': 'b', 'type': 'BOOLEAN'},
                                               {'name': 'c',
                                                'type': 'INTEGER'}],
                                              {'members': [{'name': 'e',
                                                            'type': 'INTEGER'},
                                                           None,
                                                           [{'name': 'g',
                                                             'optional': True,
                                                             'type': 'BOOLEAN'},
                                                            {'name': 'h',
                                                             'type': 'BMPString'}],
                                                           None,
                                                           {'name': 'f',
                                                            'type': 'IA5String'}],
                                               'name': 'd',
                                               'type': 'SEQUENCE'}],
                                  'type': 'SEQUENCE'},
                    'A-G-4-1-2': {'restricted-to': [('MIN', 'MAX'),
                                                    None,
                                                    (1, 10)],
                                  'type': 'INTEGER'},
                    'A1-G-4-2-3': {'restricted-to': [(1, 32), None, (33, 128)],
                                   'type': 'INTEGER'},
                    'A3-G-4-2-3': {'type': 'INTEGER'},
                    'ABEnvelope-E-4-a': {'type': 'Envelope-E-4',
                                         'with-components': [None,
                                                             ('typeB',
                                                              'PRESENT'),
                                                             ('typeC',
                                                              'ABSENT')]},
                    'ABEnvelope-E-4-b': {'type': 'Envelope-E-4',
                                         'with-components': [['typeA'],
                                                             ['typeB']]},
                    'ACEnvelope-E-4-a': {'type': 'Envelope-E-4',
                                         'with-components': [None,
                                                             ('typeB',
                                                              'ABSENT'),
                                                             ('typeC',
                                                              'PRESENT')]},
                    'ACEnvelope-E-4-b': {'type': 'Envelope-E-4',
                                         'with-components': [['typeA'],
                                                             ['typeC']]},
                    'AcmeBadgeNumber-E-2-12': {'tag': {'class': 'PRIVATE',
                                                       'number': 2},
                                               'type': 'INTEGER'},
                    'Address-E-4': {'size': [(1, 6)], 'type': 'Text-block-E-4'},
                    'AngleInRadians-E-2-4': {'type': 'REAL'},
                    'App-X-Real-E-2-4': {'type': 'REAL',
                                         'with-components': [('mantissa',
                                                              (-16777215,
                                                               16777215)),
                                                             ('base', 2),
                                                             ('exponent',
                                                              (-125, 128))]},
                    'AtomicNumber-E-4': {'restricted-to': [(1, 104)],
                                         'type': 'INTEGER'},
                    'Attribute-E-2-15': {'members': [{'name': 'attributeID',
                                                      'table': None,
                                                      'type': 'ATTRIBUTE-E-2-15.&attributeId'},
                                                     {'name': 'attributeValue',
                                                      'table': None,
                                                      'type': 'ATTRIBUTE-E-2-15.&AttributeType'}],
                                         'type': 'SEQUENCE'},
                    'Audio': {'type': 'NULL'},
                    'B': {'type': 'NULL'},
                    'B-19-6': {'type': 'ENUMERATED',
                               'values': [('a', 1),
                                          ('b', 2),
                                          ('c', 0),
                                          None,
                                          ('d', 3)]},
                    'B1-G-4-2-3': {'restricted-to': [(1, 128)],
                                   'type': 'A1-G-4-2-3'},
                    'B2-G-4-2-3': {'restricted-to': [(1, 16)],
                                   'type': 'A1-G-4-2-3'},
                    'BitField-E-2-5': {'size': [12], 'type': 'BIT STRING'},
                    'C': {'type': 'NULL'},
                    'C-19-6': {'type': 'ENUMERATED',
                               'values': [('a', 0),
                                          ('b', 1),
                                          None,
                                          ('c', 3),
                                          ('d', 4)]},
                    'C0-F-2-6': {'from': [('{', '{')], 'type': 'BMPString'},
                    'C1-F-2-6': {'from': [('{', '{')], 'type': 'BMPString'},
                    'Certificate': {'type': 'NULL'},
                    'CheckingAccountBalance-E-2-2': {'type': 'INTEGER'},
                    'ChildInformation-E-1-1': {'members': [{'name': 'name',
                                                            'type': 'Name-E-1-1'},
                                                           {'name': 'dateOfBirth',
                                                            'type': 'Date-E-1-1'}],
                                               'type': 'SET'},
                    'Credentials-E-2-10': {'members': [{'name': 'userName',
                                                        'type': 'VisibleString'},
                                                       {'name': 'password',
                                                        'type': 'VisibleString'},
                                                       {'name': 'accountNumber',
                                                        'type': 'INTEGER'}],
                                           'type': 'SEQUENCE'},
                    'CustomerAttribute-E-2-12-a': {'members': [{'name': 'name',
                                                                'tag': {'number': 0},
                                                                'type': 'VisibleString'},
                                                               {'name': 'mailingAddress',
                                                                'tag': {'number': 1},
                                                                'type': 'VisibleString'},
                                                               {'name': 'accountNumber',
                                                                'tag': {'number': 2},
                                                                'type': 'INTEGER'},
                                                               {'name': 'balanceDue',
                                                                'tag': {'number': 3},
                                                                'type': 'INTEGER'}],
                                                   'type': 'CHOICE'},
                    'CustomerAttribute-E-2-12-b': {'members': [{'name': 'name',
                                                                'tag': {'kind': 'IMPLICIT',
                                                                        'number': 0},
                                                                'type': 'VisibleString'},
                                                               {'name': 'mailingAddress',
                                                                'tag': {'kind': 'IMPLICIT',
                                                                        'number': 1},
                                                                'type': 'VisibleString'},
                                                               {'name': 'accountNumber',
                                                                'tag': {'kind': 'IMPLICIT',
                                                                        'number': 2},
                                                                'type': 'INTEGER'},
                                                               {'name': 'balanceDue',
                                                                'tag': {'kind': 'IMPLICIT',
                                                                        'number': 3},
                                                                'type': 'INTEGER'}],
                                                   'type': 'CHOICE'},
                    'CustomerRecord-E-2-12-a': {'members': [{'name': 'name',
                                                             'tag': {'number': 0},
                                                             'type': 'VisibleString'},
                                                            {'name': 'mailingAddress',
                                                             'tag': {'number': 1},
                                                             'type': 'VisibleString'},
                                                            {'name': 'accountNumber',
                                                             'tag': {'number': 2},
                                                             'type': 'INTEGER'},
                                                            {'name': 'balanceDue',
                                                             'tag': {'number': 3},
                                                             'type': 'INTEGER'}],
                                                'type': 'SET'},
                    'CustomerRecord-E-2-12-b': {'members': [{'name': 'name',
                                                             'tag': {'kind': 'IMPLICIT',
                                                                     'number': 0},
                                                             'type': 'VisibleString'},
                                                            {'name': 'mailingAddress',
                                                             'tag': {'kind': 'IMPLICIT',
                                                                     'number': 1},
                                                             'type': 'VisibleString'},
                                                            {'name': 'accountNumber',
                                                             'tag': {'kind': 'IMPLICIT',
                                                                     'number': 2},
                                                             'type': 'INTEGER'},
                                                            {'name': 'balanceDue',
                                                             'tag': {'kind': 'IMPLICIT',
                                                                     'number': 3},
                                                             'type': 'INTEGER'}],
                                                'type': 'SET'},
                    'D': {'type': 'NULL'},
                    'D-19-5': {'type': 'ENUMERATED',
                               'values': [('a', 0), ('b', 1), None, ('c', 2)]},
                    'D-19-6': {'type': 'ENUMERATED',
                               'values': [('a', 0), ('z', 25), None, ('d', 1)]},
                    'Date-E-1-1': {'tag': {'class': 'APPLICATION', 'number': 3},
                                   'type': 'VisibleString'},
                    'DayOfTheMonth-E-2-2': {'type': 'INTEGER'},
                    'DayOfTheMonth-E-2-2-a': {'restricted-to': ['first',
                                                                'last'],
                                              'type': 'INTEGER'},
                    'DayOfTheMonth-E-2-2-b': {'restricted-to': [('first',
                                                                 'last')],
                                              'type': 'INTEGER'},
                    'DayOfTheWeek-E-2-3': {'type': 'ENUMERATED',
                                           'values': [('sunday', 0),
                                                      ('monday', 1),
                                                      ('tuesday', 2),
                                                      ('wednesday', 3),
                                                      ('thursday', 4),
                                                      ('friday', 5),
                                                      ('saturday', 6)]},
                    'DaysOfTheWeek-E-2-5-a': {'named-bits': [('sunday', '0'),
                                                             ('monday', '1'),
                                                             ('tuesday', '2'),
                                                             ('wednesday', '3'),
                                                             ('thursday', '4'),
                                                             ('friday', '5'),
                                                             ('saturday', '6')],
                                              'size': [(0, 7)],
                                              'type': 'BIT STRING'},
                    'DaysOfTheWeek-E-2-5-b': {'named-bits': [('sunday', '0'),
                                                             ('monday', '1'),
                                                             ('tuesday', '2'),
                                                             ('wednesday', '3'),
                                                             ('thursday', '4'),
                                                             ('friday', '5'),
                                                             ('saturday', '6')],
                                              'size': [7],
                                              'type': 'BIT STRING'},
                    'E': {'type': 'NULL'},
                    'Employed-E-2-1': {'type': 'BOOLEAN'},
                    'EmployeeNumber-E-1-1': {'tag': {'class': 'APPLICATION',
                                                     'number': 2},
                                             'type': 'INTEGER'},
                    'Envelope-E-4': {'members': [{'name': 'typeA',
                                                  'type': 'TypeA'},
                                                 {'name': 'typeB',
                                                  'optional': True,
                                                  'type': 'TypeB'},
                                                 {'name': 'typeC',
                                                  'optional': True,
                                                  'type': 'TypeC'}],
                                     'type': 'SET'},
                    'FileIdentifier-E-2-13-a': {'members': [{'name': 'relativeName',
                                                             'type': 'VisibleString'},
                                                            {'name': 'absoluteName',
                                                             'type': 'VisibleString'},
                                                            {'name': 'serialNumber',
                                                             'type': 'INTEGER'}],
                                                'type': 'CHOICE'},
                    'FileIdentifier-E-2-13-b': {'members': [{'name': 'relativeName',
                                                             'type': 'VisibleString'},
                                                            {'name': 'absoluteName',
                                                             'type': 'VisibleString'},
                                                            None,
                                                            None],
                                                'type': 'CHOICE'},
                    'FileIdentifier-E-2-13-c': {'members': [{'name': 'relativeName',
                                                             'type': 'VisibleString'},
                                                            {'name': 'absoluteName',
                                                             'type': 'VisibleString'},
                                                            None,
                                                            {'name': 'serialNumber',
                                                             'type': 'INTEGER'},
                                                            None],
                                                'type': 'CHOICE'},
                    'FileIdentifier-E-2-13-d': {'members': [{'name': 'relativeName',
                                                             'type': 'VisibleString'},
                                                            {'name': 'absoluteName',
                                                             'type': 'VisibleString'},
                                                            None,
                                                            {'name': 'serialNumber',
                                                             'type': 'INTEGER'},
                                                            [{'name': 'vendorSpecific',
                                                              'type': 'VendorExt'},
                                                             {'name': 'unidentified',
                                                              'type': 'NULL'}],
                                                            None],
                                                'type': 'CHOICE'},
                    'FileName-E-2-12': {'members': [{'name': 'directoryName',
                                                     'type': 'VisibleString'},
                                                    {'name': 'directoryRelativeFileName',
                                                     'type': 'VisibleString'}],
                                        'tag': {'class': 'APPLICATION',
                                                'number': 8},
                                        'type': 'SEQUENCE'},
                    'First-half-E-4': {'restricted-to': [{'type': 'First-quarter-E-4'},
                                                         {'type': 'Second-quarter-E-4'}],
                                       'type': 'Months-E-4'},
                    'First-quarter-E-4': {'restricted-to': ['january',
                                                            'february',
                                                            'march'],
                                          'type': 'Months-E-4'},
                    'Fourth-quarter-E-4': {'restricted-to': ['october',
                                                             'november',
                                                             'december'],
                                           'type': 'Months-E-4'},
                    'FurtherTestPDU-E-4': {'type': 'TestPDU-E-4',
                                           'with-components': [None,
                                                               ['beta',
                                                                [{'size': [5,
                                                                           12]}],
                                                                'PRESENT']]},
                    'G3FacsimilePage-E-2-5': {'type': 'BIT STRING'},
                    'G4FacsimileImage-E-2-6': {'type': 'OCTET STRING'},
                    'Greeting-E-2-13-a': {'members': [{'name': 'postCard',
                                                       'type': 'VisibleString'},
                                                      None,
                                                      None],
                                          'type': 'CHOICE'},
                    'Greeting-E-2-13-b': {'members': [{'name': 'postCard',
                                                       'type': 'VisibleString'},
                                                      None,
                                                      [{'name': 'audio',
                                                        'type': 'Audio'},
                                                       {'name': 'video',
                                                        'type': 'Video'}],
                                                      None],
                                          'type': 'CHOICE'},
                    'Greeting-E-2-13-c': {'members': [{'name': 'postCard',
                                                       'type': 'VisibleString'},
                                                      {'name': 'recording',
                                                       'type': 'Voice-E-2-13'}],
                                          'tag': {'class': 'APPLICATION',
                                                  'number': 12},
                                          'type': 'CHOICE'},
                    'Keywords-E-2-11': {'element': {'type': 'VisibleString'},
                                        'type': 'SET OF'},
                    'Keywords2-E-2-11': {'element': {'type': 'VisibleString'},
                                         'type': 'SET OF'},
                    'MaritalStatus-E-2-3-a': {'type': 'ENUMERATED',
                                              'values': [('single', 0),
                                                         ('married', 1)]},
                    'MaritalStatus-E-2-3-b': {'type': 'ENUMERATED',
                                              'values': [('single', 0),
                                                         ('married', 1),
                                                         None,
                                                         ('widowed', 2)]},
                    'MaritalStatus-E-2-3-c': {'type': 'ENUMERATED',
                                              'values': [('single', 0),
                                                         ('married', 1),
                                                         None,
                                                         ('widowed', 2),
                                                         ('divorced', 3)]},
                    'Months-E-4': {'type': 'ENUMERATED',
                                   'values': [('january', 1),
                                              ('february', 2),
                                              ('march', 3),
                                              ('april', 4),
                                              ('may', 5),
                                              ('june', 6),
                                              ('july', 7),
                                              ('august', 8),
                                              ('september', 9),
                                              ('october', 10),
                                              ('november', 11),
                                              ('december', 12)]},
                    'Name-E-1-1': {'members': [{'name': 'givenName',
                                                'type': 'VisibleString'},
                                               {'name': 'initial',
                                                'type': 'VisibleString'},
                                               {'name': 'familyName',
                                                'type': 'VisibleString'}],
                                   'tag': {'class': 'APPLICATION', 'number': 1},
                                   'type': 'SEQUENCE'},
                    'NamesOfMemberNations-E-2-10': {'element': {'type': 'VisibleString'},
                                                    'type': 'SEQUENCE OF'},
                    'NamesOfMemberNations2-E-2-10': {'element': {'type': 'VisibleString'},
                                                     'type': 'SEQUENCE OF'},
                    'NamesOfOfficers-E-2-10': {'members': [{'name': 'president',
                                                            'type': 'VisibleString'},
                                                           {'name': 'vicePresident',
                                                            'type': 'VisibleString'},
                                                           {'name': 'secretary',
                                                            'type': 'VisibleString'}],
                                               'type': 'SEQUENCE'},
                    'PDU-E-4': {'members': [{'name': 'alpha',
                                             'type': 'INTEGER'},
                                            {'name': 'beta',
                                             'optional': True,
                                             'type': 'IA5String'},
                                            {'element': {'type': 'Parameter'},
                                             'name': 'gamma',
                                             'type': 'SEQUENCE OF'},
                                            {'name': 'delta',
                                             'type': 'BOOLEAN'}],
                                'type': 'SET'},
                    'PackedBCDString-E-2-8': {'type': 'CHARACTER STRING',
                                              'with-components': [('identification',
                                                                   {'with-components': [('fixed',
                                                                                         'PRESENT')]})]},
                    'Parameter': {'type': 'NULL'},
                    'ParameterList-E-4': {'element': {'type': 'Parameter'},
                                          'size': [(1, 63)],
                                          'type': 'SET OF'},
                    'PatientIdentifier-E-2-9': {'members': [{'name': 'name',
                                                             'type': 'VisibleString'},
                                                            {'members': [{'name': 'room',
                                                                          'type': 'INTEGER'},
                                                                         {'name': 'outPatient',
                                                                          'type': 'NULL'}],
                                                             'name': 'roomNumber',
                                                             'type': 'CHOICE'}],
                                                'type': 'SEQUENCE'},
                    'PersonalStatus-E-2-5': {'named-bits': [('married', '0'),
                                                            ('employed', '1'),
                                                            ('veteran', '2'),
                                                            ('collegeGraduate',
                                                             '3')],
                                             'type': 'BIT STRING'},
                    'PersonnelRecord-E-1-1': {'members': [{'name': 'name',
                                                           'type': 'Name-E-1-1'},
                                                          {'name': 'title',
                                                           'type': 'VisibleString'},
                                                          {'name': 'number',
                                                           'type': 'EmployeeNumber-E-1-1'},
                                                          {'name': 'dateOfHire',
                                                           'type': 'Date-E-1-1'},
                                                          {'name': 'nameOfSpouse',
                                                           'type': 'Name-E-1-1'},
                                                          {'default': [],
                                                           'element': {'type': 'ChildInformation-E-1-1'},
                                                           'name': 'children',
                                                           'type': 'SEQUENCE '
                                                                   'OF'}],
                                              'tag': {'class': 'APPLICATION',
                                                      'number': 0},
                                              'type': 'SET'},
                    'Record-E-2-10-a': {'members': [{'name': 'userName',
                                                     'type': 'VisibleString'},
                                                    {'name': 'password',
                                                     'type': 'VisibleString'},
                                                    {'name': 'accountNumber',
                                                     'type': 'INTEGER'},
                                                    None,
                                                    None],
                                        'type': 'SEQUENCE'},
                    'Record-E-2-10-b': {'members': [{'name': 'userName',
                                                     'type': 'VisibleString'},
                                                    {'name': 'password',
                                                     'type': 'VisibleString'},
                                                    {'name': 'accountNumber',
                                                     'type': 'INTEGER'},
                                                    None,
                                                    [{'name': 'lastLoggedIn',
                                                      'optional': True,
                                                      'type': 'GeneralizedTime'},
                                                     {'name': 'minutesLastLoggedIn',
                                                      'type': 'INTEGER'}],
                                                    None],
                                        'type': 'SEQUENCE'},
                    'Record-E-2-10-c': {'members': [{'name': 'userName',
                                                     'type': 'VisibleString'},
                                                    {'name': 'password',
                                                     'type': 'VisibleString'},
                                                    {'name': 'accountNumber',
                                                     'type': 'INTEGER'},
                                                    None,
                                                    [{'name': 'lastLoggedIn',
                                                      'optional': True,
                                                      'type': 'GeneralizedTime'},
                                                     {'name': 'minutesLastLoggedIn',
                                                      'type': 'INTEGER'}],
                                                    [{'name': 'certificate',
                                                      'type': 'Certificate'},
                                                     {'name': 'thumb',
                                                      'optional': True,
                                                      'type': 'ThumbPrint'}],
                                                    None],
                                        'type': 'SEQUENCE'},
                    'Second-half-E-4': {'restricted-to': [{'type': 'Third-quarter-E-4'},
                                                          {'type': 'Fourth-quarter-E-4'}],
                                        'type': 'Months-E-4'},
                    'Second-quarter-E-4': {'restricted-to': ['april',
                                                             'may',
                                                             'june'],
                                           'type': 'Months-E-4'},
                    'SmallPrime-E-4-a': {'restricted-to': [2,
                                                           3,
                                                           5,
                                                           7,
                                                           11,
                                                           13,
                                                           17,
                                                           19,
                                                           23,
                                                           29],
                                         'type': 'INTEGER'},
                    'SmallPrime-E-4-b': {'restricted-to': [2, 3, None],
                                         'type': 'INTEGER'},
                    'SmallPrime-E-4-c': {'restricted-to': [2,
                                                           3,
                                                           None,
                                                           5,
                                                           7,
                                                           11],
                                         'type': 'INTEGER'},
                    'SmallPrime-E-4-d': {'restricted-to': [2,
                                                           3,
                                                           None,
                                                           5,
                                                           7,
                                                           11,
                                                           13,
                                                           17,
                                                           19],
                                         'type': 'INTEGER'},
                    'Surname-E-2-6': {'type': 'PrintableString'},
                    'T-14-10': {'members': [{'name': 'a', 'type': 'BOOLEAN'},
                                            {'element': {'type': 'INTEGER'},
                                             'name': 'b',
                                             'type': 'SET OF'}],
                                'type': 'SEQUENCE'},
                    'TestPDU-E-4': {'type': 'PDU-E-4',
                                    'with-components': [None,
                                                        ('delta', 'FALSE'),
                                                        ('alpha',
                                                         ('MIN', '<'))]},
                    'Text-block-E-4': {'element': {'type': 'VisibleString'},
                                       'type': 'SEQUENCE OF'},
                    'Third-quarter-E-4': {'restricted-to': ['july',
                                                            'august',
                                                            'september'],
                                          'type': 'Months-E-4'},
                    'ThumbPrint': {'type': 'NULL'},
                    'TouchToneString-E-4': {'from': [('0', '0'),
                                                     ('1', '1'),
                                                     ('2', '2'),
                                                     ('3', '3'),
                                                     ('4', '4'),
                                                     ('5', '5'),
                                                     ('6', '6'),
                                                     ('7', '7'),
                                                     ('8', '8'),
                                                     ('9', '9'),
                                                     ('*', '*'),
                                                     ('#', '#')],
                                            'size': [(1, 63)],
                                            'type': 'IA5String'},
                    'TypeA': {'type': 'INTEGER'},
                    'TypeB': {'type': 'BIT STRING'},
                    'TypeC': {'type': 'REAL'},
                    'UserName-E-2-11-a': {'members': [{'name': 'personalName',
                                                       'tag': {'number': 0},
                                                       'type': 'VisibleString'},
                                                      {'name': 'organizationName',
                                                       'tag': {'number': 1},
                                                       'type': 'VisibleString'},
                                                      {'name': 'countryName',
                                                       'tag': {'number': 2},
                                                       'type': 'VisibleString'}],
                                          'type': 'SET'},
                    'UserName-E-2-11-b': {'members': [{'name': 'personalName',
                                                       'tag': {'number': 0},
                                                       'type': 'VisibleString'},
                                                      {'name': 'organizationName',
                                                       'optional': True,
                                                       'tag': {'number': 1},
                                                       'type': 'VisibleString'},
                                                      {'name': 'countryName',
                                                       'optional': True,
                                                       'tag': {'number': 2},
                                                       'type': 'VisibleString'}],
                                          'type': 'SET'},
                    'UserName-E-2-11-c': {'members': [{'name': 'personalName',
                                                       'type': 'VisibleString'},
                                                      {'name': 'organizationName',
                                                       'optional': True,
                                                       'type': 'VisibleString'},
                                                      {'name': 'countryName',
                                                       'optional': True,
                                                       'type': 'VisibleString'},
                                                      None,
                                                      None],
                                          'type': 'SET'},
                    'UserName-E-2-11-d': {'members': [{'name': 'personalName',
                                                       'type': 'VisibleString'},
                                                      {'name': 'organizationName',
                                                       'optional': True,
                                                       'type': 'VisibleString'},
                                                      {'name': 'countryName',
                                                       'optional': True,
                                                       'type': 'VisibleString'},
                                                      None,
                                                      [{'name': 'internetEmailAddress',
                                                        'type': 'VisibleString'},
                                                       {'name': 'faxNumber',
                                                        'optional': True,
                                                        'type': 'VisibleString'}],
                                                      None],
                                          'type': 'SET'},
                    'UserName-E-2-11-e': {'members': [{'name': 'personalName',
                                                       'type': 'VisibleString'},
                                                      {'name': 'organizationName',
                                                       'optional': True,
                                                       'type': 'VisibleString'},
                                                      {'name': 'countryName',
                                                       'optional': True,
                                                       'type': 'VisibleString'},
                                                      None,
                                                      [{'name': 'internetEmailAddress',
                                                        'type': 'VisibleString'},
                                                       {'name': 'faxNumber',
                                                        'optional': True,
                                                        'type': 'VisibleString'}],
                                                      [{'name': 'phoneNumber',
                                                        'optional': True,
                                                        'type': 'VisibleString'}],
                                                      None],
                                          'type': 'SET'},
                    'V-E-4': {'type': 'Z-E-4',
                              'with-components': [None,
                                                  ('a', 'ABSENT'),
                                                  ('b', 'ABSENT')]},
                    'VendorExt': {'type': 'OCTET STRING'},
                    'Video': {'type': 'REAL'},
                    'Voice-E-2-13': {'members': [{'name': 'english',
                                                  'type': 'OCTET STRING'},
                                                 {'name': 'swahili',
                                                  'type': 'OCTET STRING'}],
                                     'type': 'CHOICE'},
                    'W-E-4': {'type': 'Z-E-4',
                              'with-components': [None, ('a', 'PRESENT')]},
                    'X-E-4': {'type': 'Z-E-4',
                              'with-components': [('a', 'PRESENT')]},
                    'Y-E-4': {'type': 'Z-E-4',
                              'with-components': [('a', 'ABSENT'),
                                                  ['b'],
                                                  ['c']]},
                    'Z-E-4': {'members': [{'name': 'a', 'type': 'A'},
                                          {'name': 'b', 'type': 'B'},
                                          {'name': 'c', 'type': 'C'},
                                          {'name': 'd', 'type': 'D'},
                                          {'name': 'e', 'type': 'E'}],
                              'type': 'CHOICE'}},
          'values': {'acmeCorp-E-2-10': {'type': 'NamesOfOfficers-E-2-10',
                                         'value': '{'},
                     'badgeNumber-E-2-12': {'type': 'AcmeBadgeNumber-E-2-12',
                                            'value': 2345},
                     'balance-E-2-2': {'type': 'CheckingAccountBalance-E-2-2',
                                       'value': 0},
                     'billClinton-E-2-5': {'type': 'PersonalStatus-E-2-5',
                                           'value': ['married',
                                                     'employed',
                                                     'collegeGraduate']},
                     'body1-E-2-5': {'type': 'G3FacsimilePage-E-2-5',
                                     'value': '0b1101'},
                     'body2-E-2-5': {'type': 'G3FacsimilePage-E-2-5',
                                     'value': '0b1101000'},
                     'dayOfTheMonth-E-2-2-c': {'type': 'DayOfTheMonth-E-2-2',
                                               'value': 4},
                     'file-E-2-13': {'type': 'FileIdentifier-E-2-13-a',
                                     'value': 'serialNumber'},
                     'fileId1-E-2-13-a': {'type': 'FileIdentifier-E-2-13-b',
                                          'value': 'relativeName'},
                     'fileId1-E-2-13-b': {'type': 'FileIdentifier-E-2-13-c',
                                          'value': 'relativeName'},
                     'fileId1-E-2-13-c': {'type': 'FileIdentifier-E-2-13-d',
                                          'value': 'relativeName'},
                     'fileId2-E-2-13-a': {'type': 'FileIdentifier-E-2-13-c',
                                          'value': 'serialNumber'},
                     'fileId2-E-2-13-b': {'type': 'FileIdentifier-E-2-13-d',
                                          'value': 'serialNumber'},
                     'fileId3-E-2-13-a': {'type': 'FileIdentifier-E-2-13-d',
                                          'value': 'unidentified'},
                     'firstDay-E-2-3': {'type': 'DayOfTheWeek-E-2-3',
                                        'value': 'sunday'},
                     'firstTwo-E-2-10': {'type': 'NamesOfMemberNations-E-2-10',
                                         'value': '{'},
                     'firstTwo2-E-2-10': {'type': 'NamesOfMemberNations2-E-2-10',
                                          'value': '{'},
                     'girth-E-2-4': {'type': 'App-X-Real-E-2-4', 'value': '{'},
                     'greekCapitalLetterSigma-E-2-7': {'type': 'BMPString',
                                                       'value': '{'},
                     'hillaryClinton-E-2-5': {'type': 'PersonalStatus-E-2-5',
                                              'value': '0b110100'},
                     'image-E-2-5': {'type': 'G3FacsimilePage-E-2-5',
                                     'value': '0b100110100100001110110'},
                     'image-E-2-6': {'type': 'G4FacsimileImage-E-2-6',
                                     'value': '0x3fe2ebad471005'},
                     'infinity-E-2-7': {'type': 'UTF8String', 'value': '{'},
                     'lastPatient-E-2-9': {'type': 'PatientIdentifier-E-2-9',
                                           'value': '{'},
                     'map1-E-2-5': {'type': 'BitField-E-2-5',
                                    'value': '0b100110100100'},
                     'map2-E-2-5': {'type': 'BitField-E-2-5', 'value': '0x9a4'},
                     'myGreeting-E-2-13': {'type': 'Greeting-E-2-13-c',
                                           'value': 'recording'},
                     'pi-E-2-4-a': {'type': 'REAL', 'value': None},
                     'pi-E-2-4-b': {'type': 'REAL',
                                    'value': '3.141592653589793'},
                     'president-E-2-6': {'type': 'Surname-E-2-6',
                                         'value': 'Clinton'},
                     'property-E-2-7': {'type': 'UTF8String', 'value': '{'},
                     'rightwardsArrow-E-2-7': {'type': 'UTF8String',
                                               'value': '{'},
                     'someASN1Keywords-E-2-11': {'type': 'Keywords-E-2-11',
                                                 'value': '{'},
                     'someASN1Keywords2-E-2-11': {'type': 'Keywords2-E-2-11',
                                                  'value': '{'},
                     'sunnyDaysLastWeek1-E-2-5-a': {'type': 'DaysOfTheWeek-E-2-5-a',
                                                    'value': ['sunday',
                                                              'monday',
                                                              'wednesday']},
                     'sunnyDaysLastWeek1-E-2-5-b': {'type': 'DaysOfTheWeek-E-2-5-b',
                                                    'value': ['sunday',
                                                              'monday',
                                                              'wednesday']},
                     'sunnyDaysLastWeek2-E-2-5-a': {'type': 'DaysOfTheWeek-E-2-5-a',
                                                    'value': '0b1101'},
                     'sunnyDaysLastWeek3-E-2-5-a': {'type': 'DaysOfTheWeek-E-2-5-a',
                                                    'value': '0b1101000'},
                     'sunnyDaysLastWeek3-E-2-5-b': {'type': 'DaysOfTheWeek-E-2-5-b',
                                                    'value': '0b1101000'},
                     'today-E-2-2': {'type': 'DayOfTheMonth-E-2-2',
                                     'value': 'first'},
                     'trailer-E-2-5': {'type': 'BIT STRING',
                                       'value': '0x0123456789abcdef'},
                     'unknown-E-2-2': {'type': 'DayOfTheMonth-E-2-2',
                                       'value': 0},
                     'user-E-2-11-a': {'type': 'UserName-E-2-11-a',
                                       'value': '{'},
                     'user-E-2-11-b': {'type': 'UserName-E-2-11-c',
                                       'value': '{'},
                     'user-E-2-11-c': {'type': 'UserName-E-2-11-d',
                                       'value': '{'},
                     'user-E-2-11-d': {'type': 'UserName-E-2-11-e',
                                       'value': '{'}}}}