public class org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder
  super_class: java.lang.Object
{
  private java.util.List list;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE

  private org.bouncycastle.asn1.x509.Extensions responseExtensions;
    descriptor: Lorg/bouncycastle/asn1/x509/Extensions;
    flags: (0x0002) ACC_PRIVATE

  private org.bouncycastle.cert.ocsp.RespID responderID;
    descriptor: Lorg/bouncycastle/cert/ocsp/RespID;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.bouncycastle.cert.ocsp.RespID);
    descriptor: (Lorg/bouncycastle/cert/ocsp/RespID;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
        start local 1 // org.bouncycastle.cert.ocsp.RespID responderID
         0: .line 103
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 34
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.list:Ljava/util/List;
         2: .line 35
            aload 0 /* this */
            aconst_null
            putfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.responseExtensions:Lorg/bouncycastle/asn1/x509/Extensions;
         3: .line 106
            aload 0 /* this */
            aload 1 /* responderID */
            putfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.responderID:Lorg/bouncycastle/cert/ocsp/RespID;
         4: .line 107
            return
        end local 1 // org.bouncycastle.cert.ocsp.RespID responderID
        end local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            0    5     1  responderID  Lorg/bouncycastle/cert/ocsp/RespID;
    MethodParameters:
             Name  Flags
      responderID  

  public void <init>(org.bouncycastle.asn1.x509.SubjectPublicKeyInfo, org.bouncycastle.operator.DigestCalculator);
    descriptor: (Lorg/bouncycastle/asn1/x509/SubjectPublicKeyInfo;Lorg/bouncycastle/operator/DigestCalculator;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
        start local 1 // org.bouncycastle.asn1.x509.SubjectPublicKeyInfo key
        start local 2 // org.bouncycastle.operator.DigestCalculator digCalc
         0: .line 115
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 34
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.list:Ljava/util/List;
         2: .line 35
            aload 0 /* this */
            aconst_null
            putfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.responseExtensions:Lorg/bouncycastle/asn1/x509/Extensions;
         3: .line 120
            aload 0 /* this */
            new org.bouncycastle.cert.ocsp.RespID
            dup
            aload 1 /* key */
            aload 2 /* digCalc */
            invokespecial org.bouncycastle.cert.ocsp.RespID.<init>:(Lorg/bouncycastle/asn1/x509/SubjectPublicKeyInfo;Lorg/bouncycastle/operator/DigestCalculator;)V
            putfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.responderID:Lorg/bouncycastle/cert/ocsp/RespID;
         4: .line 121
            return
        end local 2 // org.bouncycastle.operator.DigestCalculator digCalc
        end local 1 // org.bouncycastle.asn1.x509.SubjectPublicKeyInfo key
        end local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            0    5     1      key  Lorg/bouncycastle/asn1/x509/SubjectPublicKeyInfo;
            0    5     2  digCalc  Lorg/bouncycastle/operator/DigestCalculator;
    Exceptions:
      throws org.bouncycastle.cert.ocsp.OCSPException
    MethodParameters:
         Name  Flags
      key      
      digCalc  

  public org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder addResponse(org.bouncycastle.cert.ocsp.CertificateID, org.bouncycastle.cert.ocsp.CertificateStatus);
    descriptor: (Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
        start local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        start local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
         0: .line 133
            aload 0 /* this */
            aload 1 /* certID */
            aload 2 /* certStatus */
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
            aconst_null
            aconst_null
            invokevirtual org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.addResponse:(Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;Ljava/util/Date;Ljava/util/Date;Lorg/bouncycastle/asn1/x509/Extensions;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            pop
         1: .line 135
            aload 0 /* this */
            areturn
        end local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
        end local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        end local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            0    2     1      certID  Lorg/bouncycastle/cert/ocsp/CertificateID;
            0    2     2  certStatus  Lorg/bouncycastle/cert/ocsp/CertificateStatus;
    MethodParameters:
            Name  Flags
      certID      
      certStatus  

  public org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder addResponse(org.bouncycastle.cert.ocsp.CertificateID, org.bouncycastle.cert.ocsp.CertificateStatus, org.bouncycastle.asn1.x509.Extensions);
    descriptor: (Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;Lorg/bouncycastle/asn1/x509/Extensions;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
        start local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        start local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
        start local 3 // org.bouncycastle.asn1.x509.Extensions singleExtensions
         0: .line 150
            aload 0 /* this */
            aload 1 /* certID */
            aload 2 /* certStatus */
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
            aconst_null
            aload 3 /* singleExtensions */
            invokevirtual org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.addResponse:(Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;Ljava/util/Date;Ljava/util/Date;Lorg/bouncycastle/asn1/x509/Extensions;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            pop
         1: .line 152
            aload 0 /* this */
            areturn
        end local 3 // org.bouncycastle.asn1.x509.Extensions singleExtensions
        end local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
        end local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        end local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            0    2     1            certID  Lorg/bouncycastle/cert/ocsp/CertificateID;
            0    2     2        certStatus  Lorg/bouncycastle/cert/ocsp/CertificateStatus;
            0    2     3  singleExtensions  Lorg/bouncycastle/asn1/x509/Extensions;
    MethodParameters:
                  Name  Flags
      certID            
      certStatus        
      singleExtensions  

  public org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder addResponse(org.bouncycastle.cert.ocsp.CertificateID, org.bouncycastle.cert.ocsp.CertificateStatus, java.util.Date, org.bouncycastle.asn1.x509.Extensions);
    descriptor: (Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;Ljava/util/Date;Lorg/bouncycastle/asn1/x509/Extensions;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
        start local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        start local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
        start local 3 // java.util.Date nextUpdate
        start local 4 // org.bouncycastle.asn1.x509.Extensions singleExtensions
         0: .line 169
            aload 0 /* this */
            aload 1 /* certID */
            aload 2 /* certStatus */
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
            aload 3 /* nextUpdate */
            aload 4 /* singleExtensions */
            invokevirtual org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.addResponse:(Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;Ljava/util/Date;Ljava/util/Date;Lorg/bouncycastle/asn1/x509/Extensions;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            pop
         1: .line 171
            aload 0 /* this */
            areturn
        end local 4 // org.bouncycastle.asn1.x509.Extensions singleExtensions
        end local 3 // java.util.Date nextUpdate
        end local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
        end local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        end local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            0    2     1            certID  Lorg/bouncycastle/cert/ocsp/CertificateID;
            0    2     2        certStatus  Lorg/bouncycastle/cert/ocsp/CertificateStatus;
            0    2     3        nextUpdate  Ljava/util/Date;
            0    2     4  singleExtensions  Lorg/bouncycastle/asn1/x509/Extensions;
    MethodParameters:
                  Name  Flags
      certID            
      certStatus        
      nextUpdate        
      singleExtensions  

  public org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder addResponse(org.bouncycastle.cert.ocsp.CertificateID, org.bouncycastle.cert.ocsp.CertificateStatus, java.util.Date, java.util.Date);
    descriptor: (Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;Ljava/util/Date;Ljava/util/Date;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
        start local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        start local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
        start local 3 // java.util.Date thisUpdate
        start local 4 // java.util.Date nextUpdate
         0: .line 188
            aload 0 /* this */
            aload 1 /* certID */
            aload 2 /* certStatus */
            aload 3 /* thisUpdate */
            aload 4 /* nextUpdate */
            aconst_null
            invokevirtual org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.addResponse:(Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;Ljava/util/Date;Ljava/util/Date;Lorg/bouncycastle/asn1/x509/Extensions;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            pop
         1: .line 190
            aload 0 /* this */
            areturn
        end local 4 // java.util.Date nextUpdate
        end local 3 // java.util.Date thisUpdate
        end local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
        end local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        end local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            0    2     1      certID  Lorg/bouncycastle/cert/ocsp/CertificateID;
            0    2     2  certStatus  Lorg/bouncycastle/cert/ocsp/CertificateStatus;
            0    2     3  thisUpdate  Ljava/util/Date;
            0    2     4  nextUpdate  Ljava/util/Date;
    MethodParameters:
            Name  Flags
      certID      
      certStatus  
      thisUpdate  
      nextUpdate  

  public org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder addResponse(org.bouncycastle.cert.ocsp.CertificateID, org.bouncycastle.cert.ocsp.CertificateStatus, java.util.Date, java.util.Date, org.bouncycastle.asn1.x509.Extensions);
    descriptor: (Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;Ljava/util/Date;Ljava/util/Date;Lorg/bouncycastle/asn1/x509/Extensions;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=6, args_size=6
        start local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
        start local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        start local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
        start local 3 // java.util.Date thisUpdate
        start local 4 // java.util.Date nextUpdate
        start local 5 // org.bouncycastle.asn1.x509.Extensions singleExtensions
         0: .line 209
            aload 0 /* this */
            getfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.list:Ljava/util/List;
            new org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder$ResponseObject
            dup
            aload 0 /* this */
            aload 1 /* certID */
            aload 2 /* certStatus */
            aload 3 /* thisUpdate */
            aload 4 /* nextUpdate */
            aload 5 /* singleExtensions */
            invokespecial org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder$ResponseObject.<init>:(Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;Lorg/bouncycastle/cert/ocsp/CertificateID;Lorg/bouncycastle/cert/ocsp/CertificateStatus;Ljava/util/Date;Ljava/util/Date;Lorg/bouncycastle/asn1/x509/Extensions;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 211
            aload 0 /* this */
            areturn
        end local 5 // org.bouncycastle.asn1.x509.Extensions singleExtensions
        end local 4 // java.util.Date nextUpdate
        end local 3 // java.util.Date thisUpdate
        end local 2 // org.bouncycastle.cert.ocsp.CertificateStatus certStatus
        end local 1 // org.bouncycastle.cert.ocsp.CertificateID certID
        end local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            0    2     1            certID  Lorg/bouncycastle/cert/ocsp/CertificateID;
            0    2     2        certStatus  Lorg/bouncycastle/cert/ocsp/CertificateStatus;
            0    2     3        thisUpdate  Ljava/util/Date;
            0    2     4        nextUpdate  Ljava/util/Date;
            0    2     5  singleExtensions  Lorg/bouncycastle/asn1/x509/Extensions;
    MethodParameters:
                  Name  Flags
      certID            
      certStatus        
      thisUpdate        
      nextUpdate        
      singleExtensions  

  public org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder setResponseExtensions(org.bouncycastle.asn1.x509.Extensions);
    descriptor: (Lorg/bouncycastle/asn1/x509/Extensions;)Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
        start local 1 // org.bouncycastle.asn1.x509.Extensions responseExtensions
         0: .line 222
            aload 0 /* this */
            aload 1 /* responseExtensions */
            putfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.responseExtensions:Lorg/bouncycastle/asn1/x509/Extensions;
         1: .line 224
            aload 0 /* this */
            areturn
        end local 1 // org.bouncycastle.asn1.x509.Extensions responseExtensions
        end local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    2     0                this  Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            0    2     1  responseExtensions  Lorg/bouncycastle/asn1/x509/Extensions;
    MethodParameters:
                    Name  Flags
      responseExtensions  

  public org.bouncycastle.cert.ocsp.BasicOCSPResp build(org.bouncycastle.operator.ContentSigner, org.bouncycastle.cert.X509CertificateHolder[], java.util.Date);
    descriptor: (Lorg/bouncycastle/operator/ContentSigner;[Lorg/bouncycastle/cert/X509CertificateHolder;Ljava/util/Date;)Lorg/bouncycastle/cert/ocsp/BasicOCSPResp;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=12, args_size=4
        start local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
        start local 1 // org.bouncycastle.operator.ContentSigner signer
        start local 2 // org.bouncycastle.cert.X509CertificateHolder[] chain
        start local 3 // java.util.Date producedAt
         0: .line 233
            aload 0 /* this */
            getfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.list:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4 /* it */
        start local 4 // java.util.Iterator it
         1: .line 235
            new org.bouncycastle.asn1.ASN1EncodableVector
            dup
            invokespecial org.bouncycastle.asn1.ASN1EncodableVector.<init>:()V
            astore 5 /* responses */
        start local 5 // org.bouncycastle.asn1.ASN1EncodableVector responses
         2: .line 237
            goto 7
         3: .line 241
      StackMap locals: java.util.Iterator org.bouncycastle.asn1.ASN1EncodableVector
      StackMap stack:
            aload 5 /* responses */
            aload 4 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder$ResponseObject
            invokevirtual org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder$ResponseObject.toResponse:()Lorg/bouncycastle/asn1/ocsp/SingleResponse;
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
         4: .line 242
            goto 7
         5: .line 243
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 6 /* e */
        start local 6 // java.lang.Exception e
         6: .line 245
            new org.bouncycastle.cert.ocsp.OCSPException
            dup
            ldc "exception creating Request"
            aload 6 /* e */
            invokespecial org.bouncycastle.cert.ocsp.OCSPException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.lang.Exception e
         7: .line 237
      StackMap locals:
      StackMap stack:
            aload 4 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         8: .line 249
            new org.bouncycastle.asn1.ocsp.ResponseData
            dup
            aload 0 /* this */
            getfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.responderID:Lorg/bouncycastle/cert/ocsp/RespID;
            invokevirtual org.bouncycastle.cert.ocsp.RespID.toASN1Primitive:()Lorg/bouncycastle/asn1/ocsp/ResponderID;
            new org.bouncycastle.asn1.ASN1GeneralizedTime
            dup
            aload 3 /* producedAt */
            invokespecial org.bouncycastle.asn1.ASN1GeneralizedTime.<init>:(Ljava/util/Date;)V
            new org.bouncycastle.asn1.DERSequence
            dup
            aload 5 /* responses */
            invokespecial org.bouncycastle.asn1.DERSequence.<init>:(Lorg/bouncycastle/asn1/ASN1EncodableVector;)V
            aload 0 /* this */
            getfield org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder.responseExtensions:Lorg/bouncycastle/asn1/x509/Extensions;
            invokespecial org.bouncycastle.asn1.ocsp.ResponseData.<init>:(Lorg/bouncycastle/asn1/ocsp/ResponderID;Lorg/bouncycastle/asn1/ASN1GeneralizedTime;Lorg/bouncycastle/asn1/ASN1Sequence;Lorg/bouncycastle/asn1/x509/Extensions;)V
            astore 6 /* tbsResp */
        start local 6 // org.bouncycastle.asn1.ocsp.ResponseData tbsResp
         9: .line 254
            aload 1 /* signer */
            invokeinterface org.bouncycastle.operator.ContentSigner.getOutputStream:()Ljava/io/OutputStream;
            astore 8 /* sigOut */
        start local 8 // java.io.OutputStream sigOut
        10: .line 256
            aload 8 /* sigOut */
            aload 6 /* tbsResp */
            ldc "DER"
            invokevirtual org.bouncycastle.asn1.ocsp.ResponseData.getEncoded:(Ljava/lang/String;)[B
            invokevirtual java.io.OutputStream.write:([B)V
        11: .line 257
            aload 8 /* sigOut */
            invokevirtual java.io.OutputStream.close:()V
        12: .line 259
            new org.bouncycastle.asn1.DERBitString
            dup
            aload 1 /* signer */
            invokeinterface org.bouncycastle.operator.ContentSigner.getSignature:()[B
            invokespecial org.bouncycastle.asn1.DERBitString.<init>:([B)V
            astore 7 /* bitSig */
        end local 8 // java.io.OutputStream sigOut
        start local 7 // org.bouncycastle.asn1.DERBitString bitSig
        13: .line 260
            goto 16
        end local 7 // org.bouncycastle.asn1.DERBitString bitSig
        14: .line 261
      StackMap locals: org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder org.bouncycastle.operator.ContentSigner org.bouncycastle.cert.X509CertificateHolder[] java.util.Date java.util.Iterator org.bouncycastle.asn1.ASN1EncodableVector org.bouncycastle.asn1.ocsp.ResponseData
      StackMap stack: java.lang.Exception
            astore 8 /* e */
        start local 8 // java.lang.Exception e
        15: .line 263
            new org.bouncycastle.cert.ocsp.OCSPException
            dup
            new java.lang.StringBuilder
            dup
            ldc "exception processing TBSRequest: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 8 /* e */
            invokespecial org.bouncycastle.cert.ocsp.OCSPException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 8 // java.lang.Exception e
        start local 7 // org.bouncycastle.asn1.DERBitString bitSig
        16: .line 266
      StackMap locals: org.bouncycastle.asn1.DERBitString
      StackMap stack:
            aload 1 /* signer */
            invokeinterface org.bouncycastle.operator.ContentSigner.getAlgorithmIdentifier:()Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
            astore 8 /* sigAlgId */
        start local 8 // org.bouncycastle.asn1.x509.AlgorithmIdentifier sigAlgId
        17: .line 268
            aconst_null
            astore 9 /* chainSeq */
        start local 9 // org.bouncycastle.asn1.DERSequence chainSeq
        18: .line 269
            aload 2 /* chain */
            ifnull 26
            aload 2 /* chain */
            arraylength
            ifle 26
        19: .line 271
            new org.bouncycastle.asn1.ASN1EncodableVector
            dup
            invokespecial org.bouncycastle.asn1.ASN1EncodableVector.<init>:()V
            astore 10 /* v */
        start local 10 // org.bouncycastle.asn1.ASN1EncodableVector v
        20: .line 273
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        21: goto 24
        22: .line 275
      StackMap locals: org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder org.bouncycastle.operator.ContentSigner org.bouncycastle.cert.X509CertificateHolder[] java.util.Date java.util.Iterator org.bouncycastle.asn1.ASN1EncodableVector org.bouncycastle.asn1.ocsp.ResponseData org.bouncycastle.asn1.DERBitString org.bouncycastle.asn1.x509.AlgorithmIdentifier org.bouncycastle.asn1.DERSequence org.bouncycastle.asn1.ASN1EncodableVector int
      StackMap stack:
            aload 10 /* v */
            aload 2 /* chain */
            iload 11 /* i */
            aaload
            invokevirtual org.bouncycastle.cert.X509CertificateHolder.toASN1Structure:()Lorg/bouncycastle/asn1/x509/Certificate;
            invokevirtual org.bouncycastle.asn1.ASN1EncodableVector.add:(Lorg/bouncycastle/asn1/ASN1Encodable;)V
        23: .line 273
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 11 /* i */
            aload 2 /* chain */
            arraylength
            if_icmpne 22
        end local 11 // int i
        25: .line 278
            new org.bouncycastle.asn1.DERSequence
            dup
            aload 10 /* v */
            invokespecial org.bouncycastle.asn1.DERSequence.<init>:(Lorg/bouncycastle/asn1/ASN1EncodableVector;)V
            astore 9 /* chainSeq */
        end local 10 // org.bouncycastle.asn1.ASN1EncodableVector v
        26: .line 281
      StackMap locals:
      StackMap stack:
            new org.bouncycastle.cert.ocsp.BasicOCSPResp
            dup
            new org.bouncycastle.asn1.ocsp.BasicOCSPResponse
            dup
            aload 6 /* tbsResp */
            aload 8 /* sigAlgId */
            aload 7 /* bitSig */
            aload 9 /* chainSeq */
            invokespecial org.bouncycastle.asn1.ocsp.BasicOCSPResponse.<init>:(Lorg/bouncycastle/asn1/ocsp/ResponseData;Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;Lorg/bouncycastle/asn1/DERBitString;Lorg/bouncycastle/asn1/ASN1Sequence;)V
            invokespecial org.bouncycastle.cert.ocsp.BasicOCSPResp.<init>:(Lorg/bouncycastle/asn1/ocsp/BasicOCSPResponse;)V
            areturn
        end local 9 // org.bouncycastle.asn1.DERSequence chainSeq
        end local 8 // org.bouncycastle.asn1.x509.AlgorithmIdentifier sigAlgId
        end local 7 // org.bouncycastle.asn1.DERBitString bitSig
        end local 6 // org.bouncycastle.asn1.ocsp.ResponseData tbsResp
        end local 5 // org.bouncycastle.asn1.ASN1EncodableVector responses
        end local 4 // java.util.Iterator it
        end local 3 // java.util.Date producedAt
        end local 2 // org.bouncycastle.cert.X509CertificateHolder[] chain
        end local 1 // org.bouncycastle.operator.ContentSigner signer
        end local 0 // org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   27     0        this  Lorg/bouncycastle/cert/ocsp/BasicOCSPRespBuilder;
            0   27     1      signer  Lorg/bouncycastle/operator/ContentSigner;
            0   27     2       chain  [Lorg/bouncycastle/cert/X509CertificateHolder;
            0   27     3  producedAt  Ljava/util/Date;
            1   27     4          it  Ljava/util/Iterator;
            2   27     5   responses  Lorg/bouncycastle/asn1/ASN1EncodableVector;
            6    7     6           e  Ljava/lang/Exception;
            9   27     6     tbsResp  Lorg/bouncycastle/asn1/ocsp/ResponseData;
           13   14     7      bitSig  Lorg/bouncycastle/asn1/DERBitString;
           16   27     7      bitSig  Lorg/bouncycastle/asn1/DERBitString;
           10   13     8      sigOut  Ljava/io/OutputStream;
           15   16     8           e  Ljava/lang/Exception;
           17   27     8    sigAlgId  Lorg/bouncycastle/asn1/x509/AlgorithmIdentifier;
           18   27     9    chainSeq  Lorg/bouncycastle/asn1/DERSequence;
           20   26    10           v  Lorg/bouncycastle/asn1/ASN1EncodableVector;
           21   25    11           i  I
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.Exception
           9    13      14  Class java.lang.Exception
    Exceptions:
      throws org.bouncycastle.cert.ocsp.OCSPException
    MethodParameters:
            Name  Flags
      signer      
      chain       
      producedAt  
}
SourceFile: "BasicOCSPRespBuilder.java"
NestMembers:
  org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder$ResponseObject
InnerClasses:
  private ResponseObject = org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder$ResponseObject of org.bouncycastle.cert.ocsp.BasicOCSPRespBuilder