public class sun.security.pkcs.PKCS9Attributes
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.security.pkcs.PKCS9Attributes
  super_class: java.lang.Object
{
  private final java.util.Hashtable<sun.security.util.ObjectIdentifier, sun.security.pkcs.PKCS9Attribute> attributes;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Hashtable<Lsun/security/util/ObjectIdentifier;Lsun/security/pkcs/PKCS9Attribute;>;

  private final java.util.Hashtable<sun.security.util.ObjectIdentifier, sun.security.util.ObjectIdentifier> permittedAttributes;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Hashtable<Lsun/security/util/ObjectIdentifier;Lsun/security/util/ObjectIdentifier;>;

  private final byte[] derEncoding;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean ignoreUnsupportedAttributes;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  public void <init>(sun.security.util.ObjectIdentifier[], sun.security.util.DerInputStream);
    descriptor: ([Lsun/security/util/ObjectIdentifier;Lsun/security/util/DerInputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // sun.security.util.ObjectIdentifier[] permittedAttributes
        start local 2 // sun.security.util.DerInputStream in
         0: .line 84
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 46
            aload 0 /* this */
         2: .line 47
            new java.util.Hashtable
            dup
            iconst_3
            invokespecial java.util.Hashtable.<init>:(I)V
            putfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
         3: .line 64
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS9Attributes.ignoreUnsupportedAttributes:Z
         4: .line 86
            aload 1 /* permittedAttributes */
            ifnull 18
         5: .line 87
            aload 0 /* this */
         6: .line 88
            new java.util.Hashtable
            dup
         7: .line 89
            aload 1 /* permittedAttributes */
            arraylength
         8: .line 88
            invokespecial java.util.Hashtable.<init>:(I)V
         9: .line 87
            putfield sun.security.pkcs.PKCS9Attributes.permittedAttributes:Ljava/util/Hashtable;
        10: .line 91
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        11: goto 16
        12: .line 92
      StackMap locals: sun.security.pkcs.PKCS9Attributes sun.security.util.ObjectIdentifier[] sun.security.util.DerInputStream int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.permittedAttributes:Ljava/util/Hashtable;
            aload 1 /* permittedAttributes */
            iload 3 /* i */
            aaload
        13: .line 93
            aload 1 /* permittedAttributes */
            iload 3 /* i */
            aaload
        14: .line 92
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 91
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 3 /* i */
            aload 1 /* permittedAttributes */
            arraylength
            if_icmplt 12
        end local 3 // int i
        17: .line 94
            goto 19
        18: .line 95
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS9Attributes.permittedAttributes:Ljava/util/Hashtable;
        19: .line 99
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* in */
            invokevirtual sun.security.pkcs.PKCS9Attributes.decode:(Lsun/security/util/DerInputStream;)[B
            putfield sun.security.pkcs.PKCS9Attributes.derEncoding:[B
        20: .line 100
            return
        end local 2 // sun.security.util.DerInputStream in
        end local 1 // sun.security.util.ObjectIdentifier[] permittedAttributes
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   21     0                 this  Lsun/security/pkcs/PKCS9Attributes;
            0   21     1  permittedAttributes  [Lsun/security/util/ObjectIdentifier;
            0   21     2                   in  Lsun/security/util/DerInputStream;
           11   17     3                    i  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                     Name  Flags
      permittedAttributes  
      in                   

  public void <init>(sun.security.util.DerInputStream);
    descriptor: (Lsun/security/util/DerInputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // sun.security.util.DerInputStream in
         0: .line 116
            aload 0 /* this */
            aload 1 /* in */
            iconst_0
            invokespecial sun.security.pkcs.PKCS9Attributes.<init>:(Lsun/security/util/DerInputStream;Z)V
         1: .line 117
            return
        end local 1 // sun.security.util.DerInputStream in
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/pkcs/PKCS9Attributes;
            0    2     1    in  Lsun/security/util/DerInputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    

  public void <init>(sun.security.util.DerInputStream, boolean);
    descriptor: (Lsun/security/util/DerInputStream;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // sun.security.util.DerInputStream in
        start local 2 // boolean ignoreUnsupportedAttributes
         0: .line 135
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 46
            aload 0 /* this */
         2: .line 47
            new java.util.Hashtable
            dup
            iconst_3
            invokespecial java.util.Hashtable.<init>:(I)V
            putfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
         3: .line 64
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS9Attributes.ignoreUnsupportedAttributes:Z
         4: .line 138
            aload 0 /* this */
            iload 2 /* ignoreUnsupportedAttributes */
            putfield sun.security.pkcs.PKCS9Attributes.ignoreUnsupportedAttributes:Z
         5: .line 140
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* in */
            invokevirtual sun.security.pkcs.PKCS9Attributes.decode:(Lsun/security/util/DerInputStream;)[B
            putfield sun.security.pkcs.PKCS9Attributes.derEncoding:[B
         6: .line 141
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS9Attributes.permittedAttributes:Ljava/util/Hashtable;
         7: .line 142
            return
        end local 2 // boolean ignoreUnsupportedAttributes
        end local 1 // sun.security.util.DerInputStream in
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0    8     0                         this  Lsun/security/pkcs/PKCS9Attributes;
            0    8     1                           in  Lsun/security/util/DerInputStream;
            0    8     2  ignoreUnsupportedAttributes  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                             Name  Flags
      in                           
      ignoreUnsupportedAttributes  

  public void <init>(sun.security.pkcs.PKCS9Attribute[]);
    descriptor: ([Lsun/security/pkcs/PKCS9Attribute;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // sun.security.pkcs.PKCS9Attribute[] attribs
         0: .line 157
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 46
            aload 0 /* this */
         2: .line 47
            new java.util.Hashtable
            dup
            iconst_3
            invokespecial java.util.Hashtable.<init>:(I)V
            putfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
         3: .line 64
            aload 0 /* this */
            iconst_0
            putfield sun.security.pkcs.PKCS9Attributes.ignoreUnsupportedAttributes:Z
         4: .line 160
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 16
         6: .line 161
      StackMap locals: sun.security.pkcs.PKCS9Attributes sun.security.pkcs.PKCS9Attribute[] top int
      StackMap stack:
            aload 1 /* attribs */
            iload 3 /* i */
            aaload
            invokevirtual sun.security.pkcs.PKCS9Attribute.getOID:()Lsun/security/util/ObjectIdentifier;
            astore 2 /* oid */
        start local 2 // sun.security.util.ObjectIdentifier oid
         7: .line 162
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
            aload 2 /* oid */
            invokevirtual java.util.Hashtable.containsKey:(Ljava/lang/Object;)Z
            ifeq 14
         8: .line 163
            new java.lang.IllegalArgumentException
            dup
         9: .line 164
            new java.lang.StringBuilder
            dup
            ldc "PKCSAttribute "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* attribs */
            iload 3 /* i */
            aaload
            invokevirtual sun.security.pkcs.PKCS9Attribute.getOID:()Lsun/security/util/ObjectIdentifier;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        10: .line 165
            ldc " duplicated while constructing "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        11: .line 166
            ldc "PKCS9Attributes."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 164
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 163
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 168
      StackMap locals: sun.security.pkcs.PKCS9Attributes sun.security.pkcs.PKCS9Attribute[] sun.security.util.ObjectIdentifier int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
            aload 2 /* oid */
            aload 1 /* attribs */
            iload 3 /* i */
            aaload
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 160
            iinc 3 /* i */ 1
        end local 2 // sun.security.util.ObjectIdentifier oid
      StackMap locals: sun.security.pkcs.PKCS9Attributes sun.security.pkcs.PKCS9Attribute[] top int
      StackMap stack:
        16: iload 3 /* i */
            aload 1 /* attribs */
            arraylength
            if_icmplt 6
        end local 3 // int i
        17: .line 170
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.security.pkcs.PKCS9Attributes.generateDerEncoding:()[B
            putfield sun.security.pkcs.PKCS9Attributes.derEncoding:[B
        18: .line 171
            aload 0 /* this */
            aconst_null
            putfield sun.security.pkcs.PKCS9Attributes.permittedAttributes:Ljava/util/Hashtable;
        19: .line 172
            return
        end local 1 // sun.security.pkcs.PKCS9Attribute[] attribs
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0     this  Lsun/security/pkcs/PKCS9Attributes;
            0   20     1  attribs  [Lsun/security/pkcs/PKCS9Attribute;
            7   16     2      oid  Lsun/security/util/ObjectIdentifier;
            5   17     3        i  I
    Exceptions:
      throws java.lang.IllegalArgumentException, java.io.IOException
    MethodParameters:
         Name  Flags
      attribs  

  private byte[] decode(sun.security.util.DerInputStream);
    descriptor: (Lsun/security/util/DerInputStream;)[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=11, args_size=2
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // sun.security.util.DerInputStream in
         0: .line 188
            aload 1 /* in */
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 2 /* val */
        start local 2 // sun.security.util.DerValue val
         1: .line 191
            aload 2 /* val */
            invokevirtual sun.security.util.DerValue.toByteArray:()[B
            astore 3 /* derEncoding */
        start local 3 // byte[] derEncoding
         2: .line 192
            aload 3 /* derEncoding */
            iconst_0
            bipush 49
            bastore
         3: .line 194
            new sun.security.util.DerInputStream
            dup
            aload 3 /* derEncoding */
            invokespecial sun.security.util.DerInputStream.<init>:([B)V
            astore 4 /* derIn */
        start local 4 // sun.security.util.DerInputStream derIn
         4: .line 195
            aload 4 /* derIn */
            iconst_3
            iconst_1
            invokevirtual sun.security.util.DerInputStream.getSet:(IZ)[Lsun/security/util/DerValue;
            astore 5 /* derVals */
        start local 5 // sun.security.util.DerValue[] derVals
         5: .line 199
            iconst_1
            istore 8 /* reuseEncoding */
        start local 8 // boolean reuseEncoding
         6: .line 201
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         7: goto 25
         8: .line 204
      StackMap locals: sun.security.pkcs.PKCS9Attributes sun.security.util.DerInputStream sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] top top int int
      StackMap stack:
            new sun.security.pkcs.PKCS9Attribute
            dup
            aload 5 /* derVals */
            iload 9 /* i */
            aaload
            invokespecial sun.security.pkcs.PKCS9Attribute.<init>:(Lsun/security/util/DerValue;)V
            astore 6 /* attrib */
        start local 6 // sun.security.pkcs.PKCS9Attribute attrib
         9: .line 206
            goto 15
        end local 6 // sun.security.pkcs.PKCS9Attribute attrib
      StackMap locals:
      StackMap stack: sun.security.pkcs.ParsingException
        10: astore 10 /* e */
        start local 10 // sun.security.pkcs.ParsingException e
        11: .line 207
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.ignoreUnsupportedAttributes:Z
            ifeq 14
        12: .line 208
            iconst_0
            istore 8 /* reuseEncoding */
        13: .line 209
            goto 24
        14: .line 211
      StackMap locals: sun.security.pkcs.ParsingException
      StackMap stack:
            aload 10 /* e */
            athrow
        end local 10 // sun.security.pkcs.ParsingException e
        start local 6 // sun.security.pkcs.PKCS9Attribute attrib
        15: .line 214
      StackMap locals: sun.security.pkcs.PKCS9Attributes sun.security.util.DerInputStream sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.pkcs.PKCS9Attribute top int int
      StackMap stack:
            aload 6 /* attrib */
            invokevirtual sun.security.pkcs.PKCS9Attribute.getOID:()Lsun/security/util/ObjectIdentifier;
            astore 7 /* oid */
        start local 7 // sun.security.util.ObjectIdentifier oid
        16: .line 216
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
            aload 7 /* oid */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 18
        17: .line 217
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Duplicate PKCS9 attribute: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* oid */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 219
      StackMap locals: sun.security.pkcs.PKCS9Attributes sun.security.util.DerInputStream sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.pkcs.PKCS9Attribute sun.security.util.ObjectIdentifier int int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.permittedAttributes:Ljava/util/Hashtable;
            ifnull 23
        19: .line 220
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.permittedAttributes:Ljava/util/Hashtable;
            aload 7 /* oid */
            invokevirtual java.util.Hashtable.containsKey:(Ljava/lang/Object;)Z
            ifne 23
        20: .line 221
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Attribute "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* oid */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        21: .line 222
            ldc " not permitted in this attribute set"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        22: .line 221
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        23: .line 224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
            aload 7 /* oid */
            aload 6 /* attrib */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // sun.security.util.ObjectIdentifier oid
        end local 6 // sun.security.pkcs.PKCS9Attribute attrib
        24: .line 201
      StackMap locals: sun.security.pkcs.PKCS9Attributes sun.security.util.DerInputStream sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue[] top top int int
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 9 /* i */
            aload 5 /* derVals */
            arraylength
            if_icmplt 8
        end local 9 // int i
        26: .line 226
            iload 8 /* reuseEncoding */
            ifeq 27
            aload 3 /* derEncoding */
            goto 28
      StackMap locals:
      StackMap stack:
        27: aload 0 /* this */
            invokevirtual sun.security.pkcs.PKCS9Attributes.generateDerEncoding:()[B
      StackMap locals:
      StackMap stack: byte[]
        28: areturn
        end local 8 // boolean reuseEncoding
        end local 5 // sun.security.util.DerValue[] derVals
        end local 4 // sun.security.util.DerInputStream derIn
        end local 3 // byte[] derEncoding
        end local 2 // sun.security.util.DerValue val
        end local 1 // sun.security.util.DerInputStream in
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   29     0           this  Lsun/security/pkcs/PKCS9Attributes;
            0   29     1             in  Lsun/security/util/DerInputStream;
            1   29     2            val  Lsun/security/util/DerValue;
            2   29     3    derEncoding  [B
            4   29     4          derIn  Lsun/security/util/DerInputStream;
            5   29     5        derVals  [Lsun/security/util/DerValue;
            9   10     6         attrib  Lsun/security/pkcs/PKCS9Attribute;
           15   24     6         attrib  Lsun/security/pkcs/PKCS9Attribute;
           16   24     7            oid  Lsun/security/util/ObjectIdentifier;
            6   29     8  reuseEncoding  Z
            7   26     9              i  I
           11   15    10              e  Lsun/security/pkcs/ParsingException;
      Exception table:
        from    to  target  type
           8     9      10  Class sun.security.pkcs.ParsingException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    

  public void encode(byte, java.io.OutputStream);
    descriptor: (BLjava/io/OutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // byte tag
        start local 2 // java.io.OutputStream out
         0: .line 239
            aload 2 /* out */
            iload 1 /* tag */
            invokevirtual java.io.OutputStream.write:(I)V
         1: .line 240
            aload 2 /* out */
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.derEncoding:[B
            iconst_1
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.derEncoding:[B
            arraylength
            iconst_1
            isub
            invokevirtual java.io.OutputStream.write:([BII)V
         2: .line 241
            return
        end local 2 // java.io.OutputStream out
        end local 1 // byte tag
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/pkcs/PKCS9Attributes;
            0    3     1   tag  B
            0    3     2   out  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      tag   
      out   

  private byte[] generateDerEncoding();
    descriptor: ()[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // sun.security.pkcs.PKCS9Attributes this
         0: .line 244
            new sun.security.util.DerOutputStream
            dup
            invokespecial sun.security.util.DerOutputStream.<init>:()V
            astore 1 /* out */
        start local 1 // sun.security.util.DerOutputStream out
         1: .line 245
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
            invokevirtual java.util.Hashtable.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.toArray:()[Ljava/lang/Object;
            astore 2 /* attribVals */
        start local 2 // java.lang.Object[] attribVals
         2: .line 247
            aload 1 /* out */
            bipush 49
         3: .line 248
            aload 2 /* attribVals */
            invokestatic sun.security.pkcs.PKCS9Attributes.castToDerEncoder:([Ljava/lang/Object;)[Lsun/security/util/DerEncoder;
         4: .line 247
            invokevirtual sun.security.util.DerOutputStream.putOrderedSetOf:(B[Lsun/security/util/DerEncoder;)V
         5: .line 249
            aload 1 /* out */
            invokevirtual sun.security.util.DerOutputStream.toByteArray:()[B
            areturn
        end local 2 // java.lang.Object[] attribVals
        end local 1 // sun.security.util.DerOutputStream out
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lsun/security/pkcs/PKCS9Attributes;
            1    6     1         out  Lsun/security/util/DerOutputStream;
            2    6     2  attribVals  [Ljava/lang/Object;
    Exceptions:
      throws java.io.IOException

  public byte[] getDerEncoding();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.pkcs.PKCS9Attributes this
         0: .line 257
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.derEncoding:[B
            invokevirtual byte[].clone:()Ljava/lang/Object;
            checkcast byte[]
            areturn
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs/PKCS9Attributes;
    Exceptions:
      throws java.io.IOException

  public sun.security.pkcs.PKCS9Attribute getAttribute(sun.security.util.ObjectIdentifier);
    descriptor: (Lsun/security/util/ObjectIdentifier;)Lsun/security/pkcs/PKCS9Attribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // sun.security.util.ObjectIdentifier oid
         0: .line 265
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
            aload 1 /* oid */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.security.pkcs.PKCS9Attribute
            areturn
        end local 1 // sun.security.util.ObjectIdentifier oid
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs/PKCS9Attributes;
            0    1     1   oid  Lsun/security/util/ObjectIdentifier;
    MethodParameters:
      Name  Flags
      oid   

  public sun.security.pkcs.PKCS9Attribute getAttribute(java.lang.String);
    descriptor: (Ljava/lang/String;)Lsun/security/pkcs/PKCS9Attribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // java.lang.String name
         0: .line 272
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
            aload 1 /* name */
            invokestatic sun.security.pkcs.PKCS9Attribute.getOID:(Ljava/lang/String;)Lsun/security/util/ObjectIdentifier;
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.security.pkcs.PKCS9Attribute
            areturn
        end local 1 // java.lang.String name
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/pkcs/PKCS9Attributes;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public sun.security.pkcs.PKCS9Attribute[] getAttributes();
    descriptor: ()[Lsun/security/pkcs/PKCS9Attribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // sun.security.pkcs.PKCS9Attributes this
         0: .line 280
            aload 0 /* this */
            getfield sun.security.pkcs.PKCS9Attributes.attributes:Ljava/util/Hashtable;
            invokevirtual java.util.Hashtable.size:()I
            anewarray sun.security.pkcs.PKCS9Attribute
            astore 1 /* attribs */
        start local 1 // sun.security.pkcs.PKCS9Attribute[] attribs
         1: .line 283
            iconst_0
            istore 2 /* j */
        start local 2 // int j
         2: .line 284
            iconst_1
            istore 3 /* i */
        start local 3 // int i
         3: goto 8
         4: .line 286
      StackMap locals: sun.security.pkcs.PKCS9Attribute[] int int
      StackMap stack:
            aload 1 /* attribs */
            iload 2 /* j */
            aload 0 /* this */
            getstatic sun.security.pkcs.PKCS9Attribute.PKCS9_OIDS:[Lsun/security/util/ObjectIdentifier;
            iload 3 /* i */
            aaload
            invokevirtual sun.security.pkcs.PKCS9Attributes.getAttribute:(Lsun/security/util/ObjectIdentifier;)Lsun/security/pkcs/PKCS9Attribute;
            aastore
         5: .line 288
            aload 1 /* attribs */
            iload 2 /* j */
            aaload
            ifnull 7
         6: .line 289
            iinc 2 /* j */ 1
         7: .line 285
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
         8: .line 284
      StackMap locals:
      StackMap stack:
            iload 3 /* i */
            getstatic sun.security.pkcs.PKCS9Attribute.PKCS9_OIDS:[Lsun/security/util/ObjectIdentifier;
            arraylength
            if_icmpge 11
         9: .line 285
            iload 2 /* j */
            aload 1 /* attribs */
            arraylength
        10: .line 284
            if_icmplt 4
        end local 3 // int i
        11: .line 291
      StackMap locals:
      StackMap stack:
            aload 1 /* attribs */
            areturn
        end local 2 // int j
        end local 1 // sun.security.pkcs.PKCS9Attribute[] attribs
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lsun/security/pkcs/PKCS9Attributes;
            1   12     1  attribs  [Lsun/security/pkcs/PKCS9Attribute;
            2   12     2        j  I
            3   11     3        i  I

  public java.lang.Object getAttributeValue(sun.security.util.ObjectIdentifier);
    descriptor: (Lsun/security/util/ObjectIdentifier;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // sun.security.util.ObjectIdentifier oid
         0: .line 300
            aload 0 /* this */
            aload 1 /* oid */
            invokevirtual sun.security.pkcs.PKCS9Attributes.getAttribute:(Lsun/security/util/ObjectIdentifier;)Lsun/security/pkcs/PKCS9Attribute;
            invokevirtual sun.security.pkcs.PKCS9Attribute.getValue:()Ljava/lang/Object;
            astore 2 /* value */
        start local 2 // java.lang.Object value
         1: .line 301
            aload 2 /* value */
         2: areturn
        end local 2 // java.lang.Object value
         3: .line 302
      StackMap locals:
      StackMap stack: java.lang.NullPointerException
            pop
         4: .line 303
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "No value found for attribute "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* oid */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // sun.security.util.ObjectIdentifier oid
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lsun/security/pkcs/PKCS9Attributes;
            0    5     1    oid  Lsun/security/util/ObjectIdentifier;
            1    3     2  value  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.NullPointerException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      oid   

  public java.lang.Object getAttributeValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // sun.security.pkcs.PKCS9Attributes this
        start local 1 // java.lang.String name
         0: .line 312
            aload 1 /* name */
            invokestatic sun.security.pkcs.PKCS9Attribute.getOID:(Ljava/lang/String;)Lsun/security/util/ObjectIdentifier;
            astore 2 /* oid */
        start local 2 // sun.security.util.ObjectIdentifier oid
         1: .line 314
            aload 2 /* oid */
            ifnonnull 5
         2: .line 315
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Attribute name "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 316
            ldc " not recognized or not supported."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 315
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 318
      StackMap locals: sun.security.util.ObjectIdentifier
      StackMap stack:
            aload 0 /* this */
            aload 2 /* oid */
            invokevirtual sun.security.pkcs.PKCS9Attributes.getAttributeValue:(Lsun/security/util/ObjectIdentifier;)Ljava/lang/Object;
            areturn
        end local 2 // sun.security.util.ObjectIdentifier oid
        end local 1 // java.lang.String name
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/security/pkcs/PKCS9Attributes;
            0    6     1  name  Ljava/lang/String;
            1    6     2   oid  Lsun/security/util/ObjectIdentifier;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      name  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // sun.security.pkcs.PKCS9Attributes this
         0: .line 326
            new java.lang.StringBuffer
            dup
            sipush 200
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuffer buf
         1: .line 327
            aload 1 /* buf */
            ldc "PKCS9 Attributes: [\n\t"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 332
            iconst_1
            istore 3 /* first */
        start local 3 // boolean first
         3: .line 333
            iconst_1
            istore 4 /* i */
        start local 4 // int i
         4: goto 12
         5: .line 334
      StackMap locals: sun.security.pkcs.PKCS9Attributes java.lang.StringBuffer top int int
      StackMap stack:
            aload 0 /* this */
            getstatic sun.security.pkcs.PKCS9Attribute.PKCS9_OIDS:[Lsun/security/util/ObjectIdentifier;
            iload 4 /* i */
            aaload
            invokevirtual sun.security.pkcs.PKCS9Attributes.getAttribute:(Lsun/security/util/ObjectIdentifier;)Lsun/security/pkcs/PKCS9Attribute;
            astore 2 /* value */
        start local 2 // sun.security.pkcs.PKCS9Attribute value
         6: .line 336
            aload 2 /* value */
            ifnonnull 7
            goto 11
         7: .line 339
      StackMap locals: sun.security.pkcs.PKCS9Attributes java.lang.StringBuffer sun.security.pkcs.PKCS9Attribute int int
      StackMap stack:
            iload 3 /* first */
            ifeq 9
         8: .line 340
            iconst_0
            istore 3 /* first */
            goto 10
         9: .line 342
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            ldc ";\n\t"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        10: .line 344
      StackMap locals:
      StackMap stack:
            aload 1 /* buf */
            aload 2 /* value */
            invokevirtual sun.security.pkcs.PKCS9Attribute.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        11: .line 333
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
        end local 2 // sun.security.pkcs.PKCS9Attribute value
      StackMap locals: sun.security.pkcs.PKCS9Attributes java.lang.StringBuffer top int int
      StackMap stack:
        12: iload 4 /* i */
            getstatic sun.security.pkcs.PKCS9Attribute.PKCS9_OIDS:[Lsun/security/util/ObjectIdentifier;
            arraylength
            if_icmplt 5
        end local 4 // int i
        13: .line 347
            aload 1 /* buf */
            ldc "\n\t] (end PKCS9 Attributes)"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 349
            aload 1 /* buf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 3 // boolean first
        end local 1 // java.lang.StringBuffer buf
        end local 0 // sun.security.pkcs.PKCS9Attributes this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lsun/security/pkcs/PKCS9Attributes;
            1   15     1    buf  Ljava/lang/StringBuffer;
            6   12     2  value  Lsun/security/pkcs/PKCS9Attribute;
            3   15     3  first  Z
            4   13     4      i  I

  static sun.security.util.DerEncoder[] castToDerEncoder(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)[Lsun/security/util/DerEncoder;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.lang.Object[] objs
         0: .line 358
            aload 0 /* objs */
            arraylength
            anewarray sun.security.util.DerEncoder
            astore 1 /* encoders */
        start local 1 // sun.security.util.DerEncoder[] encoders
         1: .line 360
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 361
      StackMap locals: sun.security.util.DerEncoder[] int
      StackMap stack:
            aload 1 /* encoders */
            iload 2 /* i */
            aload 0 /* objs */
            iload 2 /* i */
            aaload
            checkcast sun.security.util.DerEncoder
            aastore
         4: .line 360
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 1 /* encoders */
            arraylength
            if_icmplt 3
        end local 2 // int i
         6: .line 363
            aload 1 /* encoders */
            areturn
        end local 1 // sun.security.util.DerEncoder[] encoders
        end local 0 // java.lang.Object[] objs
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      objs  [Ljava/lang/Object;
            1    7     1  encoders  [Lsun/security/util/DerEncoder;
            2    6     2         i  I
    MethodParameters:
      Name  Flags
      objs  
}
SourceFile: "PKCS9Attributes.java"