public abstract class org.bouncycastle.asn1.ASN1BitString extends org.bouncycastle.asn1.ASN1Primitive implements org.bouncycastle.asn1.ASN1String
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.bouncycastle.asn1.ASN1BitString
  super_class: org.bouncycastle.asn1.ASN1Primitive
{
  private static final char[] table;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  protected final byte[] data;
    descriptor: [B
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final int padBits;
    descriptor: I
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 18
            bipush 16
            newarray 5
            dup
            iconst_0
            bipush 48
            castore
            dup
            iconst_1
            bipush 49
            castore
            dup
            iconst_2
            bipush 50
            castore
            dup
            iconst_3
            bipush 51
            castore
            dup
            iconst_4
            bipush 52
            castore
            dup
            iconst_5
            bipush 53
            castore
            dup
            bipush 6
            bipush 54
            castore
            dup
            bipush 7
            bipush 55
            castore
            dup
            bipush 8
            bipush 56
            castore
            dup
            bipush 9
            bipush 57
            castore
            dup
            bipush 10
            bipush 65
            castore
            dup
            bipush 11
            bipush 66
            castore
            dup
            bipush 12
            bipush 67
            castore
            dup
            bipush 13
            bipush 68
            castore
            dup
            bipush 14
            bipush 69
            castore
            dup
            bipush 15
            bipush 70
            castore
            putstatic org.bouncycastle.asn1.ASN1BitString.table:[C
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected static int getPadBits(int);
    descriptor: (I)I
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // int bitString
         0: .line 31
            iconst_0
            istore 1 /* val */
        start local 1 // int val
         1: .line 32
            iconst_3
            istore 2 /* i */
        start local 2 // int i
         2: goto 11
         3: .line 38
      StackMap locals: int int
      StackMap stack:
            iload 2 /* i */
            ifeq 7
         4: .line 40
            iload 0 /* bitString */
            iload 2 /* i */
            bipush 8
            imul
            ishr
            ifeq 10
         5: .line 42
            iload 0 /* bitString */
            iload 2 /* i */
            bipush 8
            imul
            ishr
            sipush 255
            iand
            istore 1 /* val */
         6: .line 43
            goto 12
         7: .line 48
      StackMap locals:
      StackMap stack:
            iload 0 /* bitString */
            ifeq 10
         8: .line 50
            iload 0 /* bitString */
            sipush 255
            iand
            istore 1 /* val */
         9: .line 51
            goto 12
        10: .line 32
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
        11: iload 2 /* i */
            ifge 3
        end local 2 // int i
        12: .line 56
      StackMap locals:
      StackMap stack:
            iload 1 /* val */
            ifne 14
        13: .line 58
            iconst_0
            ireturn
        14: .line 62
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* bits */
        start local 2 // int bits
        15: .line 64
            goto 17
        16: .line 66
      StackMap locals: int
      StackMap stack:
            iinc 2 /* bits */ 1
        17: .line 64
      StackMap locals:
      StackMap stack:
            iload 1 /* val */
            iconst_1
            ishl
            dup
            istore 1 /* val */
            sipush 255
            iand
            ifne 16
        18: .line 69
            bipush 8
            iload 2 /* bits */
            isub
            ireturn
        end local 2 // int bits
        end local 1 // int val
        end local 0 // int bitString
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0  bitString  I
            1   19     1        val  I
            2   12     2          i  I
           15   19     2       bits  I
    MethodParameters:
           Name  Flags
      bitString  

  protected static byte[] getBytes(int);
    descriptor: (I)[B
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // int bitString
         0: .line 79
            iload 0 /* bitString */
            ifne 2
         1: .line 81
            iconst_0
            newarray 8
            areturn
         2: .line 84
      StackMap locals:
      StackMap stack:
            iconst_4
            istore 1 /* bytes */
        start local 1 // int bytes
         3: .line 85
            iconst_3
            istore 2 /* i */
        start local 2 // int i
         4: goto 9
         5: .line 87
      StackMap locals: int int
      StackMap stack:
            iload 0 /* bitString */
            sipush 255
            iload 2 /* i */
            bipush 8
            imul
            ishl
            iand
            ifeq 7
         6: .line 89
            goto 10
         7: .line 91
      StackMap locals:
      StackMap stack:
            iinc 1 /* bytes */ -1
         8: .line 85
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
         9: iload 2 /* i */
            iconst_1
            if_icmpge 5
        end local 2 // int i
        10: .line 94
      StackMap locals:
      StackMap stack:
            iload 1 /* bytes */
            newarray 8
            astore 2 /* result */
        start local 2 // byte[] result
        11: .line 95
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        12: goto 15
        13: .line 97
      StackMap locals: byte[] int
      StackMap stack:
            aload 2 /* result */
            iload 3 /* i */
            iload 0 /* bitString */
            iload 3 /* i */
            bipush 8
            imul
            ishr
            sipush 255
            iand
            i2b
            bastore
        14: .line 95
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 3 /* i */
            iload 1 /* bytes */
            if_icmplt 13
        end local 3 // int i
        16: .line 100
            aload 2 /* result */
            areturn
        end local 2 // byte[] result
        end local 1 // int bytes
        end local 0 // int bitString
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   17     0  bitString  I
            3   17     1      bytes  I
            4   10     2          i  I
           11   17     2     result  [B
           12   16     3          i  I
    MethodParameters:
           Name  Flags
      bitString  

  public void <init>(byte[], int);
    descriptor: ([BI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
        start local 1 // byte[] data
        start local 2 // int padBits
         0: .line 109
            aload 0 /* this */
            invokespecial org.bouncycastle.asn1.ASN1Primitive.<init>:()V
         1: .line 113
            aload 1 /* data */
            ifnonnull 3
         2: .line 115
            new java.lang.NullPointerException
            dup
            ldc "data cannot be null"
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 117
      StackMap locals: org.bouncycastle.asn1.ASN1BitString byte[] int
      StackMap stack:
            aload 1 /* data */
            arraylength
            ifne 5
            iload 2 /* padBits */
            ifeq 5
         4: .line 119
            new java.lang.IllegalArgumentException
            dup
            ldc "zero length data with non-zero pad bits"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 121
      StackMap locals:
      StackMap stack:
            iload 2 /* padBits */
            bipush 7
            if_icmpgt 6
            iload 2 /* padBits */
            ifge 7
         6: .line 123
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "pad bits cannot be greater than 7 or less than 0"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 126
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* data */
            invokestatic org.bouncycastle.util.Arrays.clone:([B)[B
            putfield org.bouncycastle.asn1.ASN1BitString.data:[B
         8: .line 127
            aload 0 /* this */
            iload 2 /* padBits */
            putfield org.bouncycastle.asn1.ASN1BitString.padBits:I
         9: .line 128
            return
        end local 2 // int padBits
        end local 1 // byte[] data
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/bouncycastle/asn1/ASN1BitString;
            0   10     1     data  [B
            0   10     2  padBits  I
    MethodParameters:
         Name  Flags
      data     
      padBits  

  public java.lang.String getString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 137
            new java.lang.StringBuffer
            dup
            ldc "#"
            invokespecial java.lang.StringBuffer.<init>:(Ljava/lang/String;)V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuffer buf
         1: .line 138
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 2 /* bOut */
        start local 2 // java.io.ByteArrayOutputStream bOut
         2: .line 139
            new org.bouncycastle.asn1.ASN1OutputStream
            dup
            aload 2 /* bOut */
            invokespecial org.bouncycastle.asn1.ASN1OutputStream.<init>:(Ljava/io/OutputStream;)V
            astore 3 /* aOut */
        start local 3 // org.bouncycastle.asn1.ASN1OutputStream aOut
         3: .line 143
            aload 3 /* aOut */
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.ASN1OutputStream.writeObject:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
         4: .line 144
            goto 7
         5: .line 145
      StackMap locals: org.bouncycastle.asn1.ASN1BitString java.lang.StringBuffer java.io.ByteArrayOutputStream org.bouncycastle.asn1.ASN1OutputStream
      StackMap stack: java.io.IOException
            astore 4 /* e */
        start local 4 // java.io.IOException e
         6: .line 147
            new org.bouncycastle.asn1.ASN1ParsingException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Internal error encoding BitString: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* e */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* e */
            invokespecial org.bouncycastle.asn1.ASN1ParsingException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.io.IOException e
         7: .line 150
      StackMap locals:
      StackMap stack:
            aload 2 /* bOut */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            astore 4 /* string */
        start local 4 // byte[] string
         8: .line 152
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         9: goto 13
        10: .line 154
      StackMap locals: byte[] int
      StackMap stack:
            aload 1 /* buf */
            getstatic org.bouncycastle.asn1.ASN1BitString.table:[C
            aload 4 /* string */
            iload 5 /* i */
            baload
            iconst_4
            iushr
            bipush 15
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        11: .line 155
            aload 1 /* buf */
            getstatic org.bouncycastle.asn1.ASN1BitString.table:[C
            aload 4 /* string */
            iload 5 /* i */
            baload
            bipush 15
            iand
            caload
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        12: .line 152
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 5 /* i */
            aload 4 /* string */
            arraylength
            if_icmpne 10
        end local 5 // int i
        14: .line 158
            aload 1 /* buf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 4 // byte[] string
        end local 3 // org.bouncycastle.asn1.ASN1OutputStream aOut
        end local 2 // java.io.ByteArrayOutputStream bOut
        end local 1 // java.lang.StringBuffer buf
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Lorg/bouncycastle/asn1/ASN1BitString;
            1   15     1     buf  Ljava/lang/StringBuffer;
            2   15     2    bOut  Ljava/io/ByteArrayOutputStream;
            3   15     3    aOut  Lorg/bouncycastle/asn1/ASN1OutputStream;
            6    7     4       e  Ljava/io/IOException;
            8   15     4  string  [B
            9   14     5       i  I
      Exception table:
        from    to  target  type
           3     4       5  Class java.io.IOException

  public int intValue();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 166
            iconst_0
            istore 1 /* value */
        start local 1 // int value
         1: .line 167
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.data:[B
            astore 2 /* string */
        start local 2 // byte[] string
         2: .line 169
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            ifle 4
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.data:[B
            arraylength
            iconst_4
            if_icmpgt 4
         3: .line 171
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.data:[B
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            invokestatic org.bouncycastle.asn1.ASN1BitString.derForm:([BI)[B
            astore 2 /* string */
         4: .line 174
      StackMap locals: int byte[]
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 8
         6: .line 176
      StackMap locals: int
      StackMap stack:
            iload 1 /* value */
            aload 2 /* string */
            iload 3 /* i */
            baload
            sipush 255
            iand
            bipush 8
            iload 3 /* i */
            imul
            ishl
            ior
            istore 1 /* value */
         7: .line 174
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            aload 2 /* string */
            arraylength
            if_icmpeq 9
            iload 3 /* i */
            iconst_4
            if_icmpne 6
        end local 3 // int i
         9: .line 179
      StackMap locals:
      StackMap stack:
            iload 1 /* value */
            ireturn
        end local 2 // byte[] string
        end local 1 // int value
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lorg/bouncycastle/asn1/ASN1BitString;
            1   10     1   value  I
            2   10     2  string  [B
            5    9     3       i  I

  public byte[] getOctets();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 191
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            ifeq 2
         1: .line 193
            new java.lang.IllegalStateException
            dup
            ldc "attempt to get non-octet aligned data from BIT STRING"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.data:[B
            invokestatic org.bouncycastle.util.Arrays.clone:([B)[B
            areturn
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/bouncycastle/asn1/ASN1BitString;

  public byte[] getBytes();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 201
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.data:[B
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            invokestatic org.bouncycastle.asn1.ASN1BitString.derForm:([BI)[B
            areturn
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/asn1/ASN1BitString;

  public int getPadBits();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 206
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            ireturn
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/asn1/ASN1BitString;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 211
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.ASN1BitString.getString:()Ljava/lang/String;
            areturn
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/asn1/ASN1BitString;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 216
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.ASN1BitString.getBytes:()[B
            invokestatic org.bouncycastle.util.Arrays.hashCode:([B)I
            ixor
            ireturn
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/asn1/ASN1BitString;

  protected boolean asn1Equals(org.bouncycastle.asn1.ASN1Primitive);
    descriptor: (Lorg/bouncycastle/asn1/ASN1Primitive;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
        start local 1 // org.bouncycastle.asn1.ASN1Primitive o
         0: .line 222
            aload 1 /* o */
            instanceof org.bouncycastle.asn1.ASN1BitString
            ifne 2
         1: .line 224
            iconst_0
            ireturn
         2: .line 227
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast org.bouncycastle.asn1.ASN1BitString
            astore 2 /* other */
        start local 2 // org.bouncycastle.asn1.ASN1BitString other
         3: .line 229
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            aload 2 /* other */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            if_icmpne 6
         4: .line 230
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.ASN1BitString.getBytes:()[B
            aload 2 /* other */
            invokevirtual org.bouncycastle.asn1.ASN1BitString.getBytes:()[B
            invokestatic org.bouncycastle.util.Arrays.areEqual:([B[B)Z
            ifeq 6
         5: .line 229
            iconst_1
            ireturn
      StackMap locals: org.bouncycastle.asn1.ASN1BitString
      StackMap stack:
         6: iconst_0
            ireturn
        end local 2 // org.bouncycastle.asn1.ASN1BitString other
        end local 1 // org.bouncycastle.asn1.ASN1Primitive o
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/bouncycastle/asn1/ASN1BitString;
            0    7     1      o  Lorg/bouncycastle/asn1/ASN1Primitive;
            3    7     2  other  Lorg/bouncycastle/asn1/ASN1BitString;
    MethodParameters:
      Name  Flags
      o     

  protected static byte[] derForm(byte[], int);
    descriptor: ([BI)[B
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // byte[] data
        start local 1 // int padBits
         0: .line 235
            aload 0 /* data */
            invokestatic org.bouncycastle.util.Arrays.clone:([B)[B
            astore 2 /* rv */
        start local 2 // byte[] rv
         1: .line 237
            iload 1 /* padBits */
            ifle 3
         2: .line 239
            aload 2 /* rv */
            aload 0 /* data */
            arraylength
            iconst_1
            isub
            dup2
            baload
            sipush 255
            iload 1 /* padBits */
            ishl
            iand
            i2b
            bastore
         3: .line 242
      StackMap locals: byte[]
      StackMap stack:
            aload 2 /* rv */
            areturn
        end local 2 // byte[] rv
        end local 1 // int padBits
        end local 0 // byte[] data
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     data  [B
            0    4     1  padBits  I
            1    4     2       rv  [B
    MethodParameters:
         Name  Flags
      data     
      padBits  

  static org.bouncycastle.asn1.ASN1BitString fromInputStream(int, java.io.InputStream);
    descriptor: (ILjava/io/InputStream;)Lorg/bouncycastle/asn1/ASN1BitString;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // int length
        start local 1 // java.io.InputStream stream
         0: .line 248
            iload 0 /* length */
            iconst_1
            if_icmpge 2
         1: .line 250
            new java.lang.IllegalArgumentException
            dup
            ldc "truncated BIT STRING detected"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 253
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            invokevirtual java.io.InputStream.read:()I
            istore 2 /* padBits */
        start local 2 // int padBits
         3: .line 254
            iload 0 /* length */
            iconst_1
            isub
            newarray 8
            astore 3 /* data */
        start local 3 // byte[] data
         4: .line 256
            aload 3 /* data */
            arraylength
            ifeq 10
         5: .line 258
            aload 1 /* stream */
            aload 3 /* data */
            invokestatic org.bouncycastle.util.io.Streams.readFully:(Ljava/io/InputStream;[B)I
            aload 3 /* data */
            arraylength
            if_icmpeq 7
         6: .line 260
            new java.io.EOFException
            dup
            ldc "EOF encountered in middle of BIT STRING"
            invokespecial java.io.EOFException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 263
      StackMap locals: int byte[]
      StackMap stack:
            iload 2 /* padBits */
            ifle 10
            iload 2 /* padBits */
            bipush 8
            if_icmpge 10
         8: .line 265
            aload 3 /* data */
            aload 3 /* data */
            arraylength
            iconst_1
            isub
            baload
            aload 3 /* data */
            aload 3 /* data */
            arraylength
            iconst_1
            isub
            baload
            sipush 255
            iload 2 /* padBits */
            ishl
            iand
            i2b
            if_icmpeq 10
         9: .line 267
            new org.bouncycastle.asn1.DLBitString
            dup
            aload 3 /* data */
            iload 2 /* padBits */
            invokespecial org.bouncycastle.asn1.DLBitString.<init>:([BI)V
            areturn
        10: .line 272
      StackMap locals:
      StackMap stack:
            new org.bouncycastle.asn1.DERBitString
            dup
            aload 3 /* data */
            iload 2 /* padBits */
            invokespecial org.bouncycastle.asn1.DERBitString.<init>:([BI)V
            areturn
        end local 3 // byte[] data
        end local 2 // int padBits
        end local 1 // java.io.InputStream stream
        end local 0 // int length
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0   length  I
            0   11     1   stream  Ljava/io/InputStream;
            3   11     2  padBits  I
            4   11     3     data  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      length  
      stream  

  public org.bouncycastle.asn1.ASN1Primitive getLoadedObject();
    descriptor: ()Lorg/bouncycastle/asn1/ASN1Primitive;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 277
            aload 0 /* this */
            invokevirtual org.bouncycastle.asn1.ASN1BitString.toASN1Primitive:()Lorg/bouncycastle/asn1/ASN1Primitive;
            areturn
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/asn1/ASN1BitString;

  org.bouncycastle.asn1.ASN1Primitive toDERObject();
    descriptor: ()Lorg/bouncycastle/asn1/ASN1Primitive;
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 282
            new org.bouncycastle.asn1.DERBitString
            dup
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.data:[B
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            invokespecial org.bouncycastle.asn1.DERBitString.<init>:([BI)V
            areturn
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/asn1/ASN1BitString;

  org.bouncycastle.asn1.ASN1Primitive toDLObject();
    descriptor: ()Lorg/bouncycastle/asn1/ASN1Primitive;
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.bouncycastle.asn1.ASN1BitString this
         0: .line 287
            new org.bouncycastle.asn1.DLBitString
            dup
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.data:[B
            aload 0 /* this */
            getfield org.bouncycastle.asn1.ASN1BitString.padBits:I
            invokespecial org.bouncycastle.asn1.DLBitString.<init>:([BI)V
            areturn
        end local 0 // org.bouncycastle.asn1.ASN1BitString this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/asn1/ASN1BitString;

  abstract void encode(org.bouncycastle.asn1.ASN1OutputStream);
    descriptor: (Lorg/bouncycastle/asn1/ASN1OutputStream;)V
    flags: (0x0400) ACC_ABSTRACT
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   
}
SourceFile: "ASN1BitString.java"