public final class sun.security.provider.certpath.OCSPResponse
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.security.provider.certpath.OCSPResponse
  super_class: java.lang.Object
{
  private static final sun.security.provider.certpath.OCSPResponse$ResponseStatus[] rsvalues;
    descriptor: [Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final sun.security.util.Debug DEBUG;
    descriptor: Lsun/security/util/Debug;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final boolean dump;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final sun.security.util.ObjectIdentifier OCSP_BASIC_RESPONSE_OID;
    descriptor: Lsun/security/util/ObjectIdentifier;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final sun.security.util.ObjectIdentifier OCSP_NONCE_EXTENSION_OID;
    descriptor: Lsun/security/util/ObjectIdentifier;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int CERT_STATUS_GOOD;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int CERT_STATUS_REVOKED;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int CERT_STATUS_UNKNOWN;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int NAME_TAG;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int KEY_TAG;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final java.lang.String KP_OCSP_SIGNING_OID;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "1.3.6.1.5.5.7.3.9"

  private final sun.security.provider.certpath.OCSPResponse$ResponseStatus responseStatus;
    descriptor: Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<sun.security.provider.certpath.CertId, sun.security.provider.certpath.OCSPResponse$SingleResponse> singleResponseMap;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lsun/security/provider/certpath/CertId;Lsun/security/provider/certpath/OCSPResponse$SingleResponse;>;

  private static final int DEFAULT_MAX_CLOCK_SKEW;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 900000

  private static final int MAX_CLOCK_SKEW;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private final sun.security.provider.certpath.ResponderId respId;
    descriptor: Lsun/security/provider/certpath/ResponderId;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.Date producedAtDate;
    descriptor: Ljava/util/Date;
    flags: (0x0002) ACC_PRIVATE

  private final java.util.Map<java.lang.String, sun.security.x509.Extension> responseExtensions;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lsun/security/x509/Extension;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 131
            invokestatic sun.security.provider.certpath.OCSPResponse$ResponseStatus.values:()[Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
            putstatic sun.security.provider.certpath.OCSPResponse.rsvalues:[Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
         1: .line 133
            ldc "certpath"
            invokestatic sun.security.util.Debug.getInstance:(Ljava/lang/String;)Lsun/security/util/Debug;
            putstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
         2: .line 136
            bipush 10
            newarray 10
            dup
            iconst_0
            iconst_1
            iastore
            dup
            iconst_1
            iconst_3
            iastore
            dup
            iconst_2
            bipush 6
            iastore
            dup
            iconst_3
            iconst_1
            iastore
            dup
            iconst_4
            iconst_5
            iastore
            dup
            iconst_5
            iconst_5
            iastore
            dup
            bipush 6
            bipush 7
            iastore
            dup
            bipush 7
            bipush 48
            iastore
            dup
            bipush 8
            iconst_1
            iastore
            dup
            bipush 9
            iconst_1
            iastore
            invokestatic sun.security.util.ObjectIdentifier.newInternal:([I)Lsun/security/util/ObjectIdentifier;
         3: .line 135
            putstatic sun.security.provider.certpath.OCSPResponse.OCSP_BASIC_RESPONSE_OID:Lsun/security/util/ObjectIdentifier;
         4: .line 138
            bipush 10
            newarray 10
            dup
            iconst_0
            iconst_1
            iastore
            dup
            iconst_1
            iconst_3
            iastore
            dup
            iconst_2
            bipush 6
            iastore
            dup
            iconst_3
            iconst_1
            iastore
            dup
            iconst_4
            iconst_5
            iastore
            dup
            iconst_5
            iconst_5
            iastore
            dup
            bipush 6
            bipush 7
            iastore
            dup
            bipush 7
            bipush 48
            iastore
            dup
            bipush 8
            iconst_1
            iastore
            dup
            bipush 9
            iconst_2
            iastore
            invokestatic sun.security.util.ObjectIdentifier.newInternal:([I)Lsun/security/util/ObjectIdentifier;
         5: .line 137
            putstatic sun.security.provider.certpath.OCSPResponse.OCSP_NONCE_EXTENSION_OID:Lsun/security/util/ObjectIdentifier;
         6: .line 163
            invokestatic sun.security.provider.certpath.OCSPResponse.initializeClockSkew:()I
            putstatic sun.security.provider.certpath.OCSPResponse.MAX_CLOCK_SKEW:I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static int initializeClockSkew();
    descriptor: ()I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 172
            new sun.security.action.GetIntegerAction
            dup
            ldc "com.sun.security.ocsp.clockSkew"
            invokespecial sun.security.action.GetIntegerAction.<init>:(Ljava/lang/String;)V
         1: .line 171
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 0 /* tmp */
        start local 0 // java.lang.Integer tmp
         2: .line 173
            aload 0 /* tmp */
            ifnull 3
            aload 0 /* tmp */
            invokevirtual java.lang.Integer.intValue:()I
            ifge 4
         3: .line 174
      StackMap locals: java.lang.Integer
      StackMap stack:
            ldc 900000
            ireturn
         4: .line 178
      StackMap locals:
      StackMap stack:
            aload 0 /* tmp */
            invokevirtual java.lang.Integer.intValue:()I
            sipush 1000
            imul
            ireturn
        end local 0 // java.lang.Integer tmp
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            2    5     0   tmp  Ljava/lang/Integer;

  void <init>(byte[], java.util.Date, java.security.cert.X509Certificate, java.lang.String);
    descriptor: ([BLjava/util/Date;Ljava/security/cert/X509Certificate;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=25, args_size=5
        start local 0 // sun.security.provider.certpath.OCSPResponse this
        start local 1 // byte[] bytes
        start local 2 // java.util.Date dateCheckedAgainst
        start local 3 // java.security.cert.X509Certificate responderCert
        start local 4 // java.lang.String variant
         0: .line 190
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 183
            aload 0 /* this */
            aconst_null
            putfield sun.security.provider.certpath.OCSPResponse.producedAtDate:Ljava/util/Date;
         2: .line 200
            new sun.security.util.DerValue
            dup
            aload 1 /* bytes */
            invokespecial sun.security.util.DerValue.<init>:([B)V
            astore 5 /* der */
        start local 5 // sun.security.util.DerValue der
         3: .line 201
            aload 5 /* der */
            getfield sun.security.util.DerValue.tag:B
            bipush 48
            if_icmpeq 5
         4: .line 202
            new java.io.IOException
            dup
            ldc "Bad encoding in OCSP response: expected ASN.1 SEQUENCE tag."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 205
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.util.Date java.security.cert.X509Certificate java.lang.String sun.security.util.DerValue
      StackMap stack:
            aload 5 /* der */
            invokevirtual sun.security.util.DerValue.getData:()Lsun/security/util/DerInputStream;
            astore 6 /* derIn */
        start local 6 // sun.security.util.DerInputStream derIn
         6: .line 208
            aload 6 /* derIn */
            invokevirtual sun.security.util.DerInputStream.getEnumerated:()I
            istore 7 /* status */
        start local 7 // int status
         7: .line 209
            iload 7 /* status */
            iflt 10
            iload 7 /* status */
            getstatic sun.security.provider.certpath.OCSPResponse.rsvalues:[Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
            arraylength
            if_icmpge 10
         8: .line 210
            aload 0 /* this */
            getstatic sun.security.provider.certpath.OCSPResponse.rsvalues:[Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
            iload 7 /* status */
            aaload
            putfield sun.security.provider.certpath.OCSPResponse.responseStatus:Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
         9: .line 211
            goto 11
        10: .line 213
      StackMap locals: sun.security.util.DerInputStream int
      StackMap stack:
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown OCSPResponse status: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 7 /* status */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 215
      StackMap locals:
      StackMap stack:
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 13
        12: .line 216
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            new java.lang.StringBuilder
            dup
            ldc "OCSP response status: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseStatus:Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        13: .line 218
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseStatus:Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
            getstatic sun.security.provider.certpath.OCSPResponse$ResponseStatus.SUCCESSFUL:Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
            if_acmpeq 19
        14: .line 220
            aload 0 /* this */
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            putfield sun.security.provider.certpath.OCSPResponse.singleResponseMap:Ljava/util/Map;
        15: .line 221
            aload 0 /* this */
            aconst_null
            putfield sun.security.provider.certpath.OCSPResponse.responseNonce:[B
        16: .line 222
            aload 0 /* this */
            invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
            putfield sun.security.provider.certpath.OCSPResponse.responseExtensions:Ljava/util/Map;
        17: .line 223
            aload 0 /* this */
            aconst_null
            putfield sun.security.provider.certpath.OCSPResponse.respId:Lsun/security/provider/certpath/ResponderId;
        18: .line 224
            return
        19: .line 228
      StackMap locals:
      StackMap stack:
            aload 6 /* derIn */
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 5 /* der */
        20: .line 229
            aload 5 /* der */
            iconst_0
            invokevirtual sun.security.util.DerValue.isContextSpecific:(B)Z
            ifne 22
        21: .line 230
            new java.io.IOException
            dup
            ldc "Bad encoding in responseBytes element of OCSP response: expected ASN.1 context specific tag 0."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 233
      StackMap locals:
      StackMap stack:
            aload 5 /* der */
            getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 8 /* tmp */
        start local 8 // sun.security.util.DerValue tmp
        23: .line 234
            aload 8 /* tmp */
            getfield sun.security.util.DerValue.tag:B
            bipush 48
            if_icmpeq 25
        24: .line 235
            new java.io.IOException
            dup
            ldc "Bad encoding in responseBytes element of OCSP response: expected ASN.1 SEQUENCE tag."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 240
      StackMap locals: sun.security.util.DerValue
      StackMap stack:
            aload 8 /* tmp */
            getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
            astore 6 /* derIn */
        26: .line 241
            aload 6 /* derIn */
            invokevirtual sun.security.util.DerInputStream.getOID:()Lsun/security/util/ObjectIdentifier;
            astore 9 /* responseType */
        start local 9 // sun.security.util.ObjectIdentifier responseType
        27: .line 242
            aload 9 /* responseType */
            getstatic sun.security.provider.certpath.OCSPResponse.OCSP_BASIC_RESPONSE_OID:Lsun/security/util/ObjectIdentifier;
            invokevirtual sun.security.util.ObjectIdentifier.equals:(Lsun/security/util/ObjectIdentifier;)Z
            ifeq 31
        28: .line 243
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 36
        29: .line 244
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ldc "OCSP response type: basic"
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        30: .line 246
            goto 36
        31: .line 247
      StackMap locals: sun.security.util.ObjectIdentifier
      StackMap stack:
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 33
        32: .line 248
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            new java.lang.StringBuilder
            dup
            ldc "OCSP response type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* responseType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        33: .line 250
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported OCSP response type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        34: .line 251
            aload 9 /* responseType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        35: .line 250
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        36: .line 256
      StackMap locals:
      StackMap stack:
            new sun.security.util.DerInputStream
            dup
            aload 6 /* derIn */
            invokevirtual sun.security.util.DerInputStream.getOctetString:()[B
            invokespecial sun.security.util.DerInputStream.<init>:([B)V
        37: .line 255
            astore 10 /* basicOCSPResponse */
        start local 10 // sun.security.util.DerInputStream basicOCSPResponse
        38: .line 258
            aload 10 /* basicOCSPResponse */
            iconst_2
            invokevirtual sun.security.util.DerInputStream.getSequence:(I)[Lsun/security/util/DerValue;
            astore 11 /* seqTmp */
        start local 11 // sun.security.util.DerValue[] seqTmp
        39: .line 259
            aload 11 /* seqTmp */
            arraylength
            iconst_3
            if_icmpge 41
        40: .line 260
            new java.io.IOException
            dup
            ldc "Unexpected BasicOCSPResponse value"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        41: .line 263
      StackMap locals: sun.security.util.DerInputStream sun.security.util.DerValue[]
      StackMap stack:
            aload 11 /* seqTmp */
            iconst_0
            aaload
            astore 12 /* responseData */
        start local 12 // sun.security.util.DerValue responseData
        42: .line 266
            aload 11 /* seqTmp */
            iconst_0
            aaload
            invokevirtual sun.security.util.DerValue.toByteArray:()[B
            astore 13 /* responseDataDer */
        start local 13 // byte[] responseDataDer
        43: .line 269
            aload 12 /* responseData */
            getfield sun.security.util.DerValue.tag:B
            bipush 48
            if_icmpeq 45
        44: .line 270
            new java.io.IOException
            dup
            ldc "Bad encoding in tbsResponseData element of OCSP response: expected ASN.1 SEQUENCE tag."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        45: .line 273
      StackMap locals: sun.security.util.DerValue byte[]
      StackMap stack:
            aload 12 /* responseData */
            getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
            astore 14 /* seqDerIn */
        start local 14 // sun.security.util.DerInputStream seqDerIn
        46: .line 274
            aload 14 /* seqDerIn */
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 15 /* seq */
        start local 15 // sun.security.util.DerValue seq
        47: .line 277
            aload 15 /* seq */
            iconst_0
            invokevirtual sun.security.util.DerValue.isContextSpecific:(B)Z
            ifeq 54
        48: .line 279
            aload 15 /* seq */
            invokevirtual sun.security.util.DerValue.isConstructed:()Z
            ifeq 54
            aload 15 /* seq */
            invokevirtual sun.security.util.DerValue.isContextSpecific:()Z
            ifeq 54
        49: .line 281
            aload 15 /* seq */
            getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 15 /* seq */
        50: .line 282
            aload 15 /* seq */
            invokevirtual sun.security.util.DerValue.getInteger:()I
            pop
        51: .line 283
            aload 15 /* seq */
            getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
            invokevirtual sun.security.util.DerInputStream.available:()I
            ifeq 53
        52: .line 284
            new java.io.IOException
            dup
            ldc "Bad encoding in version  element of OCSP response: bad format"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        53: .line 287
      StackMap locals: sun.security.util.DerInputStream sun.security.util.DerValue
      StackMap stack:
            aload 14 /* seqDerIn */
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 15 /* seq */
        54: .line 292
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.security.provider.certpath.ResponderId
            dup
            aload 15 /* seq */
            invokevirtual sun.security.util.DerValue.toByteArray:()[B
            invokespecial sun.security.provider.certpath.ResponderId.<init>:([B)V
            putfield sun.security.provider.certpath.OCSPResponse.respId:Lsun/security/provider/certpath/ResponderId;
        55: .line 293
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 57
        56: .line 294
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            new java.lang.StringBuilder
            dup
            ldc "Responder ID: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.respId:Lsun/security/provider/certpath/ResponderId;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        57: .line 298
      StackMap locals:
      StackMap stack:
            aload 14 /* seqDerIn */
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 15 /* seq */
        58: .line 299
            aload 0 /* this */
            aload 15 /* seq */
            invokevirtual sun.security.util.DerValue.getGeneralizedTime:()Ljava/util/Date;
            putfield sun.security.provider.certpath.OCSPResponse.producedAtDate:Ljava/util/Date;
        59: .line 300
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 61
        60: .line 301
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            new java.lang.StringBuilder
            dup
            ldc "OCSP response produced at: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.producedAtDate:Ljava/util/Date;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        61: .line 305
      StackMap locals:
      StackMap stack:
            aload 14 /* seqDerIn */
            iconst_1
            invokevirtual sun.security.util.DerInputStream.getSequence:(I)[Lsun/security/util/DerValue;
            astore 16 /* singleResponseDer */
        start local 16 // sun.security.util.DerValue[] singleResponseDer
        62: .line 306
            aload 0 /* this */
        63: .line 307
            new java.util.HashMap
            dup
            aload 16 /* singleResponseDer */
            arraylength
            invokespecial java.util.HashMap.<init>:(I)V
        64: .line 306
            putfield sun.security.provider.certpath.OCSPResponse.singleResponseMap:Ljava/util/Map;
        65: .line 308
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 69
        66: .line 309
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            new java.lang.StringBuilder
            dup
            ldc "OCSP number of SingleResponses: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        67: .line 310
            aload 16 /* singleResponseDer */
            arraylength
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        68: .line 309
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        69: .line 312
      StackMap locals: sun.security.util.DerValue[]
      StackMap stack:
            aload 16 /* singleResponseDer */
            dup
            astore 20
            arraylength
            istore 19
            iconst_0
            istore 18
            goto 74
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.util.Date java.security.cert.X509Certificate java.lang.String sun.security.util.DerValue sun.security.util.DerInputStream int sun.security.util.DerValue sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue sun.security.util.DerValue[] top int int sun.security.util.DerValue[]
      StackMap stack:
        70: aload 20
            iload 18
            aaload
            astore 17 /* srDer */
        start local 17 // sun.security.util.DerValue srDer
        71: .line 313
            new sun.security.provider.certpath.OCSPResponse$SingleResponse
            dup
            aload 17 /* srDer */
            invokespecial sun.security.provider.certpath.OCSPResponse$SingleResponse.<init>:(Lsun/security/util/DerValue;)V
            astore 21 /* singleResponse */
        start local 21 // sun.security.provider.certpath.OCSPResponse$SingleResponse singleResponse
        72: .line 314
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.singleResponseMap:Ljava/util/Map;
            aload 21 /* singleResponse */
            invokevirtual sun.security.provider.certpath.OCSPResponse$SingleResponse.getCertId:()Lsun/security/provider/certpath/CertId;
            aload 21 /* singleResponse */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 21 // sun.security.provider.certpath.OCSPResponse$SingleResponse singleResponse
        end local 17 // sun.security.util.DerValue srDer
        73: .line 312
            iinc 18 1
      StackMap locals:
      StackMap stack:
        74: iload 18
            iload 19
            if_icmplt 70
        75: .line 318
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 17 /* tmpExtMap */
        start local 17 // java.util.Map tmpExtMap
        76: .line 319
            aload 14 /* seqDerIn */
            invokevirtual sun.security.util.DerInputStream.available:()I
            ifle 80
        77: .line 320
            aload 14 /* seqDerIn */
            invokevirtual sun.security.util.DerInputStream.getDerValue:()Lsun/security/util/DerValue;
            astore 15 /* seq */
        78: .line 321
            aload 15 /* seq */
            iconst_1
            invokevirtual sun.security.util.DerValue.isContextSpecific:(B)Z
            ifeq 80
        79: .line 322
            aload 15 /* seq */
            invokestatic sun.security.provider.certpath.OCSPResponse.parseExtensions:(Lsun/security/util/DerValue;)Ljava/util/Map;
            astore 17 /* tmpExtMap */
        80: .line 325
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.util.Date java.security.cert.X509Certificate java.lang.String sun.security.util.DerValue sun.security.util.DerInputStream int sun.security.util.DerValue sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map
      StackMap stack:
            aload 0 /* this */
            aload 17 /* tmpExtMap */
            putfield sun.security.provider.certpath.OCSPResponse.responseExtensions:Ljava/util/Map;
        81: .line 328
            aload 17 /* tmpExtMap */
        82: .line 329
            getstatic sun.security.x509.PKIXExtensions.OCSPNonce_Id:Lsun/security/util/ObjectIdentifier;
            invokevirtual sun.security.util.ObjectIdentifier.toString:()Ljava/lang/String;
        83: .line 328
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.security.x509.Extension
            astore 18 /* nonceExt */
        start local 18 // sun.security.x509.Extension nonceExt
        84: .line 330
            aload 0 /* this */
            aload 18 /* nonceExt */
            ifnull 86
        85: .line 331
            aload 18 /* nonceExt */
            invokevirtual sun.security.x509.Extension.getExtensionValue:()[B
            goto 87
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.util.Date java.security.cert.X509Certificate java.lang.String sun.security.util.DerValue sun.security.util.DerInputStream int sun.security.util.DerValue sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map sun.security.x509.Extension
      StackMap stack: sun.security.provider.certpath.OCSPResponse
        86: aconst_null
        87: .line 330
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.util.Date java.security.cert.X509Certificate java.lang.String sun.security.util.DerValue sun.security.util.DerInputStream int sun.security.util.DerValue sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map sun.security.x509.Extension
      StackMap stack: sun.security.provider.certpath.OCSPResponse byte[]
            putfield sun.security.provider.certpath.OCSPResponse.responseNonce:[B
        88: .line 332
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 90
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseNonce:[B
            ifnull 90
        89: .line 333
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            new java.lang.StringBuilder
            dup
            ldc "Response nonce: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseNonce:[B
            invokestatic java.util.Arrays.toString:([B)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        90: .line 337
      StackMap locals:
      StackMap stack:
            aload 11 /* seqTmp */
            iconst_1
            aaload
            invokestatic sun.security.x509.AlgorithmId.parse:(Lsun/security/util/DerValue;)Lsun/security/x509/AlgorithmId;
            astore 19 /* sigAlgId */
        start local 19 // sun.security.x509.AlgorithmId sigAlgId
        91: .line 340
            aload 11 /* seqTmp */
            iconst_2
            aaload
            invokevirtual sun.security.util.DerValue.getBitString:()[B
            astore 20 /* signature */
        start local 20 // byte[] signature
        92: .line 341
            aconst_null
            astore 21 /* x509Certs */
        start local 21 // sun.security.x509.X509CertImpl[] x509Certs
        93: .line 344
            aload 11 /* seqTmp */
            arraylength
            iconst_3
            if_icmple 107
        94: .line 346
            aload 11 /* seqTmp */
            iconst_3
            aaload
            astore 22 /* seqCert */
        start local 22 // sun.security.util.DerValue seqCert
        95: .line 347
            aload 22 /* seqCert */
            iconst_0
            invokevirtual sun.security.util.DerValue.isContextSpecific:(B)Z
            ifne 97
        96: .line 348
            new java.io.IOException
            dup
            ldc "Bad encoding in certs element of OCSP response: expected ASN.1 context specific tag 0."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        97: .line 351
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.util.Date java.security.cert.X509Certificate java.lang.String sun.security.util.DerValue sun.security.util.DerInputStream int sun.security.util.DerValue sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map sun.security.x509.Extension sun.security.x509.AlgorithmId byte[] sun.security.x509.X509CertImpl[] sun.security.util.DerValue
      StackMap stack:
            aload 22 /* seqCert */
            invokevirtual sun.security.util.DerValue.getData:()Lsun/security/util/DerInputStream;
            iconst_3
            invokevirtual sun.security.util.DerInputStream.getSequence:(I)[Lsun/security/util/DerValue;
            astore 23 /* certs */
        start local 23 // sun.security.util.DerValue[] certs
        98: .line 352
            aload 23 /* certs */
            arraylength
            anewarray sun.security.x509.X509CertImpl
            astore 21 /* x509Certs */
        99: .line 354
            iconst_0
            istore 24 /* i */
        start local 24 // int i
       100: goto 103
       101: .line 355
      StackMap locals: sun.security.util.DerValue[] int
      StackMap stack:
            aload 21 /* x509Certs */
            iload 24 /* i */
            new sun.security.x509.X509CertImpl
            dup
            aload 23 /* certs */
            iload 24 /* i */
            aaload
            invokevirtual sun.security.util.DerValue.toByteArray:()[B
            invokespecial sun.security.x509.X509CertImpl.<init>:([B)V
            aastore
       102: .line 354
            iinc 24 /* i */ 1
      StackMap locals:
      StackMap stack:
       103: iload 24 /* i */
            aload 23 /* certs */
            arraylength
            if_icmplt 101
        end local 24 // int i
       104: .line 357
            goto 107
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.util.Date java.security.cert.X509Certificate java.lang.String sun.security.util.DerValue sun.security.util.DerInputStream int sun.security.util.DerValue sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map sun.security.x509.Extension sun.security.x509.AlgorithmId byte[] sun.security.x509.X509CertImpl[] sun.security.util.DerValue sun.security.util.DerValue[]
      StackMap stack: java.security.cert.CertificateException
       105: astore 24 /* ce */
        start local 24 // java.security.cert.CertificateException ce
       106: .line 358
            new java.io.IOException
            dup
            ldc "Bad encoding in X509 Certificate"
            aload 24 /* ce */
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 24 // java.security.cert.CertificateException ce
        end local 23 // sun.security.util.DerValue[] certs
        end local 22 // sun.security.util.DerValue seqCert
       107: .line 363
      StackMap locals:
      StackMap stack:
            aload 21 /* x509Certs */
            ifnull 135
            aload 21 /* x509Certs */
            iconst_0
            aaload
            ifnull 135
       108: .line 364
            aload 21 /* x509Certs */
            iconst_0
            aaload
            astore 22 /* cert */
        start local 22 // java.security.cert.X509Certificate cert
       109: .line 368
            aload 22 /* cert */
            aload 3 /* responderCert */
            invokevirtual java.security.cert.X509Certificate.equals:(Ljava/lang/Object;)Z
            ifne 135
       110: .line 373
            aload 22 /* cert */
            invokevirtual java.security.cert.X509Certificate.getIssuerX500Principal:()Ljavax/security/auth/x500/X500Principal;
       111: .line 374
            aload 3 /* responderCert */
            invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
       112: .line 373
            invokevirtual javax.security.auth.x500.X500Principal.equals:(Ljava/lang/Object;)Z
       113: .line 374
            ifeq 135
       114: .line 378
            aload 22 /* cert */
            invokevirtual java.security.cert.X509Certificate.getExtendedKeyUsage:()Ljava/util/List;
            astore 23 /* keyPurposes */
        start local 23 // java.util.List keyPurposes
       115: .line 379
            aload 23 /* keyPurposes */
            ifnull 117
       116: .line 380
            aload 23 /* keyPurposes */
            ldc "1.3.6.1.5.5.7.3.9"
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 125
       117: .line 381
      StackMap locals: java.security.cert.X509Certificate java.util.List
      StackMap stack:
            new java.security.cert.CertPathValidatorException
            dup
       118: .line 382
            ldc "Responder's certificate not valid for signing OCSP responses"
       119: .line 381
            invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
            athrow
        end local 23 // java.util.List keyPurposes
       120: .line 385
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.util.Date java.security.cert.X509Certificate java.lang.String sun.security.util.DerValue sun.security.util.DerInputStream int sun.security.util.DerValue sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map sun.security.x509.Extension sun.security.x509.AlgorithmId byte[] sun.security.x509.X509CertImpl[] java.security.cert.X509Certificate
      StackMap stack: java.security.cert.CertificateParsingException
            astore 23 /* cpe */
        start local 23 // java.security.cert.CertificateParsingException cpe
       121: .line 387
            new java.security.cert.CertPathValidatorException
            dup
       122: .line 388
            ldc "Responder's certificate not valid for signing OCSP responses"
       123: .line 389
            aload 23 /* cpe */
       124: .line 387
            invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 23 // java.security.cert.CertificateParsingException cpe
       125: .line 394
      StackMap locals:
      StackMap stack:
            new sun.security.provider.certpath.AlgorithmChecker
            dup
       126: .line 395
            new java.security.cert.TrustAnchor
            dup
            aload 3 /* responderCert */
            aconst_null
            invokespecial java.security.cert.TrustAnchor.<init>:(Ljava/security/cert/X509Certificate;[B)V
            aload 4 /* variant */
       127: .line 394
            invokespecial sun.security.provider.certpath.AlgorithmChecker.<init>:(Ljava/security/cert/TrustAnchor;Ljava/lang/String;)V
            astore 23 /* algChecker */
        start local 23 // sun.security.provider.certpath.AlgorithmChecker algChecker
       128: .line 396
            aload 23 /* algChecker */
            iconst_0
            invokevirtual sun.security.provider.certpath.AlgorithmChecker.init:(Z)V
       129: .line 397
            aload 23 /* algChecker */
            aload 22 /* cert */
            invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
            invokevirtual sun.security.provider.certpath.AlgorithmChecker.check:(Ljava/security/cert/Certificate;Ljava/util/Collection;)V
       130: .line 401
            aload 22 /* cert */
            aload 3 /* responderCert */
            invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
            invokevirtual java.security.cert.X509Certificate.verify:(Ljava/security/PublicKey;)V
       131: .line 402
            aload 22 /* cert */
            astore 3 /* responderCert */
       132: .line 405
            goto 135
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.util.Date java.security.cert.X509Certificate java.lang.String sun.security.util.DerValue sun.security.util.DerInputStream int sun.security.util.DerValue sun.security.util.ObjectIdentifier sun.security.util.DerInputStream sun.security.util.DerValue[] sun.security.util.DerValue byte[] sun.security.util.DerInputStream sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map sun.security.x509.Extension sun.security.x509.AlgorithmId byte[] sun.security.x509.X509CertImpl[] java.security.cert.X509Certificate sun.security.provider.certpath.AlgorithmChecker
      StackMap stack: java.security.GeneralSecurityException
       133: pop
       134: .line 406
            aconst_null
            astore 3 /* responderCert */
        end local 23 // sun.security.provider.certpath.AlgorithmChecker algChecker
        end local 22 // java.security.cert.X509Certificate cert
       135: .line 413
      StackMap locals:
      StackMap stack:
            aload 3 /* responderCert */
            ifnull 144
       136: .line 416
            aload 3 /* responderCert */
            invokevirtual java.security.cert.X509Certificate.getPublicKey:()Ljava/security/PublicKey;
            aload 19 /* sigAlgId */
            aload 4 /* variant */
            invokestatic sun.security.provider.certpath.AlgorithmChecker.check:(Ljava/security/PublicKey;Lsun/security/x509/AlgorithmId;Ljava/lang/String;)V
       137: .line 418
            aload 0 /* this */
            aload 13 /* responseDataDer */
            aload 3 /* responderCert */
       138: .line 419
            aload 19 /* sigAlgId */
            aload 20 /* signature */
       139: .line 418
            invokevirtual sun.security.provider.certpath.OCSPResponse.verifyResponse:([BLjava/security/cert/X509Certificate;Lsun/security/x509/AlgorithmId;[B)Z
       140: .line 419
            ifne 147
       141: .line 420
            new java.security.cert.CertPathValidatorException
            dup
       142: .line 421
            ldc "Error verifying OCSP Responder's signature"
       143: .line 420
            invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
            athrow
       144: .line 425
      StackMap locals:
      StackMap stack:
            new java.security.cert.CertPathValidatorException
            dup
       145: .line 426
            ldc "Unable to verify OCSP Responder's signature"
       146: .line 425
            invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;)V
            athrow
       147: .line 428
      StackMap locals:
      StackMap stack:
            return
        end local 21 // sun.security.x509.X509CertImpl[] x509Certs
        end local 20 // byte[] signature
        end local 19 // sun.security.x509.AlgorithmId sigAlgId
        end local 18 // sun.security.x509.Extension nonceExt
        end local 17 // java.util.Map tmpExtMap
        end local 16 // sun.security.util.DerValue[] singleResponseDer
        end local 15 // sun.security.util.DerValue seq
        end local 14 // sun.security.util.DerInputStream seqDerIn
        end local 13 // byte[] responseDataDer
        end local 12 // sun.security.util.DerValue responseData
        end local 11 // sun.security.util.DerValue[] seqTmp
        end local 10 // sun.security.util.DerInputStream basicOCSPResponse
        end local 9 // sun.security.util.ObjectIdentifier responseType
        end local 8 // sun.security.util.DerValue tmp
        end local 7 // int status
        end local 6 // sun.security.util.DerInputStream derIn
        end local 5 // sun.security.util.DerValue der
        end local 4 // java.lang.String variant
        end local 3 // java.security.cert.X509Certificate responderCert
        end local 2 // java.util.Date dateCheckedAgainst
        end local 1 // byte[] bytes
        end local 0 // sun.security.provider.certpath.OCSPResponse this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0  148     0                this  Lsun/security/provider/certpath/OCSPResponse;
            0  148     1               bytes  [B
            0  148     2  dateCheckedAgainst  Ljava/util/Date;
            0  148     3       responderCert  Ljava/security/cert/X509Certificate;
            0  148     4             variant  Ljava/lang/String;
            3  148     5                 der  Lsun/security/util/DerValue;
            6  148     6               derIn  Lsun/security/util/DerInputStream;
            7  148     7              status  I
           23  148     8                 tmp  Lsun/security/util/DerValue;
           27  148     9        responseType  Lsun/security/util/ObjectIdentifier;
           38  148    10   basicOCSPResponse  Lsun/security/util/DerInputStream;
           39  148    11              seqTmp  [Lsun/security/util/DerValue;
           42  148    12        responseData  Lsun/security/util/DerValue;
           43  148    13     responseDataDer  [B
           46  148    14            seqDerIn  Lsun/security/util/DerInputStream;
           47  148    15                 seq  Lsun/security/util/DerValue;
           62  148    16   singleResponseDer  [Lsun/security/util/DerValue;
           71   73    17               srDer  Lsun/security/util/DerValue;
           72   73    21      singleResponse  Lsun/security/provider/certpath/OCSPResponse$SingleResponse;
           76  148    17           tmpExtMap  Ljava/util/Map<Ljava/lang/String;Lsun/security/x509/Extension;>;
           84  148    18            nonceExt  Lsun/security/x509/Extension;
           91  148    19            sigAlgId  Lsun/security/x509/AlgorithmId;
           92  148    20           signature  [B
           93  148    21           x509Certs  [Lsun/security/x509/X509CertImpl;
           95  107    22             seqCert  Lsun/security/util/DerValue;
           98  107    23               certs  [Lsun/security/util/DerValue;
          100  104    24                   i  I
          106  107    24                  ce  Ljava/security/cert/CertificateException;
          109  135    22                cert  Ljava/security/cert/X509Certificate;
          115  120    23         keyPurposes  Ljava/util/List<Ljava/lang/String;>;
          121  125    23                 cpe  Ljava/security/cert/CertificateParsingException;
          128  135    23          algChecker  Lsun/security/provider/certpath/AlgorithmChecker;
      Exception table:
        from    to  target  type
          99   104     105  Class java.security.cert.CertificateException
         114   120     120  Class java.security.cert.CertificateParsingException
         130   132     133  Class java.security.GeneralSecurityException
    Exceptions:
      throws java.io.IOException, java.security.cert.CertPathValidatorException
    MethodParameters:
                    Name  Flags
      bytes               
      dateCheckedAgainst  
      responderCert       
      variant             

  public sun.security.provider.certpath.OCSPResponse$ResponseStatus getResponseStatus();
    descriptor: ()Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.provider.certpath.OCSPResponse this
         0: .line 436
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseStatus:Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
            areturn
        end local 0 // sun.security.provider.certpath.OCSPResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/provider/certpath/OCSPResponse;

  private boolean verifyResponse(byte[], java.security.cert.X509Certificate, sun.security.x509.AlgorithmId, byte[]);
    descriptor: ([BLjava/security/cert/X509Certificate;Lsun/security/x509/AlgorithmId;[B)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // sun.security.provider.certpath.OCSPResponse this
        start local 1 // byte[] responseData
        start local 2 // java.security.cert.X509Certificate cert
        start local 3 // sun.security.x509.AlgorithmId sigAlgId
        start local 4 // byte[] signBytes
         0: .line 448
            aload 3 /* sigAlgId */
            invokevirtual sun.security.x509.AlgorithmId.getName:()Ljava/lang/String;
            invokestatic java.security.Signature.getInstance:(Ljava/lang/String;)Ljava/security/Signature;
            astore 5 /* respSignature */
        start local 5 // java.security.Signature respSignature
         1: .line 449
            aload 5 /* respSignature */
            aload 2 /* cert */
            invokevirtual java.security.Signature.initVerify:(Ljava/security/cert/Certificate;)V
         2: .line 450
            aload 5 /* respSignature */
            aload 1 /* responseData */
            invokevirtual java.security.Signature.update:([B)V
         3: .line 452
            aload 5 /* respSignature */
            aload 4 /* signBytes */
            invokevirtual java.security.Signature.verify:([B)Z
            ifeq 7
         4: .line 453
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 6
         5: .line 454
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ldc "Verified signature of OCSP Responder"
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
         6: .line 456
      StackMap locals: java.security.Signature
      StackMap stack:
            iconst_1
            ireturn
         7: .line 459
      StackMap locals:
      StackMap stack:
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 11
         8: .line 460
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
         9: .line 461
            ldc "Error verifying signature of OCSP Responder"
        10: .line 460
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        11: .line 463
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // java.security.Signature respSignature
        12: .line 465
      StackMap locals: sun.security.provider.certpath.OCSPResponse byte[] java.security.cert.X509Certificate sun.security.x509.AlgorithmId byte[]
      StackMap stack: java.security.InvalidKeyException
            astore 5 /* ike */
        start local 5 // java.security.InvalidKeyException ike
        13: .line 466
            new java.security.cert.CertPathValidatorException
            dup
            aload 5 /* ike */
            invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.security.InvalidKeyException ike
        14: .line 467
      StackMap locals:
      StackMap stack: java.security.NoSuchAlgorithmException
            astore 5 /* nsae */
        start local 5 // java.security.NoSuchAlgorithmException nsae
        15: .line 468
            new java.security.cert.CertPathValidatorException
            dup
            aload 5 /* nsae */
            invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.security.NoSuchAlgorithmException nsae
        16: .line 469
      StackMap locals:
      StackMap stack: java.security.SignatureException
            astore 5 /* se */
        start local 5 // java.security.SignatureException se
        17: .line 470
            new java.security.cert.CertPathValidatorException
            dup
            aload 5 /* se */
            invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.security.SignatureException se
        end local 4 // byte[] signBytes
        end local 3 // sun.security.x509.AlgorithmId sigAlgId
        end local 2 // java.security.cert.X509Certificate cert
        end local 1 // byte[] responseData
        end local 0 // sun.security.provider.certpath.OCSPResponse this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   18     0           this  Lsun/security/provider/certpath/OCSPResponse;
            0   18     1   responseData  [B
            0   18     2           cert  Ljava/security/cert/X509Certificate;
            0   18     3       sigAlgId  Lsun/security/x509/AlgorithmId;
            0   18     4      signBytes  [B
            1   12     5  respSignature  Ljava/security/Signature;
           13   14     5            ike  Ljava/security/InvalidKeyException;
           15   16     5           nsae  Ljava/security/NoSuchAlgorithmException;
           17   18     5             se  Ljava/security/SignatureException;
      Exception table:
        from    to  target  type
           0     6      12  Class java.security.InvalidKeyException
           7    11      12  Class java.security.InvalidKeyException
           0     6      14  Class java.security.NoSuchAlgorithmException
           7    11      14  Class java.security.NoSuchAlgorithmException
           0     6      16  Class java.security.SignatureException
           7    11      16  Class java.security.SignatureException
    Exceptions:
      throws java.security.cert.CertPathValidatorException
    MethodParameters:
              Name  Flags
      responseData  
      cert          
      sigAlgId      
      signBytes     

  public sun.security.provider.certpath.OCSPResponse$SingleResponse getSingleResponse(sun.security.provider.certpath.CertId);
    descriptor: (Lsun/security/provider/certpath/CertId;)Lsun/security/provider/certpath/OCSPResponse$SingleResponse;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.provider.certpath.OCSPResponse this
        start local 1 // sun.security.provider.certpath.CertId certId
         0: .line 485
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.singleResponseMap:Ljava/util/Map;
            aload 1 /* certId */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast sun.security.provider.certpath.OCSPResponse$SingleResponse
            areturn
        end local 1 // sun.security.provider.certpath.CertId certId
        end local 0 // sun.security.provider.certpath.OCSPResponse this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lsun/security/provider/certpath/OCSPResponse;
            0    1     1  certId  Lsun/security/provider/certpath/CertId;
    MethodParameters:
        Name  Flags
      certId  

  public java.util.Set<sun.security.provider.certpath.CertId> getCertIds();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.provider.certpath.OCSPResponse this
         0: .line 495
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.singleResponseMap:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
            areturn
        end local 0 // sun.security.provider.certpath.OCSPResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/provider/certpath/OCSPResponse;
    Signature: ()Ljava/util/Set<Lsun/security/provider/certpath/CertId;>;

  public sun.security.provider.certpath.ResponderId getResponderId();
    descriptor: ()Lsun/security/provider/certpath/ResponderId;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.provider.certpath.OCSPResponse this
         0: .line 506
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.respId:Lsun/security/provider/certpath/ResponderId;
            areturn
        end local 0 // sun.security.provider.certpath.OCSPResponse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/provider/certpath/OCSPResponse;

  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.provider.certpath.OCSPResponse this
         0: .line 516
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 517
            aload 1 /* sb */
            ldc "OCSP Response:\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 518
            aload 1 /* sb */
            ldc "Response Status: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseStatus:Lsun/security/provider/certpath/OCSPResponse$ResponseStatus;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 519
            aload 1 /* sb */
            ldc "Responder ID: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.respId:Lsun/security/provider/certpath/ResponderId;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 520
            aload 1 /* sb */
            ldc "Produced at: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.producedAtDate:Ljava/util/Date;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 521
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.singleResponseMap:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            istore 2 /* count */
        start local 2 // int count
         6: .line 522
            aload 1 /* sb */
            iload 2 /* count */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            iload 2 /* count */
            iconst_1
            if_icmpne 8
         7: .line 523
            ldc " response:\n"
            goto 9
      StackMap locals: sun.security.provider.certpath.OCSPResponse java.lang.StringBuilder int
      StackMap stack: java.lang.StringBuilder
         8: ldc " responses:\n"
         9: .line 522
      StackMap locals: sun.security.provider.certpath.OCSPResponse java.lang.StringBuilder int
      StackMap stack: java.lang.StringBuilder java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 524
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.singleResponseMap:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 13
      StackMap locals: sun.security.provider.certpath.OCSPResponse java.lang.StringBuilder int top java.util.Iterator
      StackMap stack:
        11: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.security.provider.certpath.OCSPResponse$SingleResponse
            astore 3 /* sr */
        start local 3 // sun.security.provider.certpath.OCSPResponse$SingleResponse sr
        12: .line 525
            aload 1 /* sb */
            aload 3 /* sr */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 3 // sun.security.provider.certpath.OCSPResponse$SingleResponse sr
        13: .line 524
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        14: .line 527
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseExtensions:Ljava/util/Map;
            ifnull 24
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseExtensions:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            ifle 24
        15: .line 528
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseExtensions:Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            istore 2 /* count */
        16: .line 529
            aload 1 /* sb */
            iload 2 /* count */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            iload 2 /* count */
            iconst_1
            if_icmpne 18
        17: .line 530
            ldc " extension:\n"
            goto 19
      StackMap locals: sun.security.provider.certpath.OCSPResponse java.lang.StringBuilder int
      StackMap stack: java.lang.StringBuilder
        18: ldc " extensions:\n"
        19: .line 529
      StackMap locals: sun.security.provider.certpath.OCSPResponse java.lang.StringBuilder int
      StackMap stack: java.lang.StringBuilder java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 531
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseExtensions:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 23
      StackMap locals: sun.security.provider.certpath.OCSPResponse java.lang.StringBuilder int top java.util.Iterator
      StackMap stack:
        21: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* extId */
        start local 3 // java.lang.String extId
        22: .line 532
            aload 1 /* sb */
            aload 0 /* this */
            getfield sun.security.provider.certpath.OCSPResponse.responseExtensions:Ljava/util/Map;
            aload 3 /* extId */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 3 // java.lang.String extId
        23: .line 531
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        24: .line 536
      StackMap locals: sun.security.provider.certpath.OCSPResponse java.lang.StringBuilder int
      StackMap stack:
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int count
        end local 1 // java.lang.StringBuilder sb
        end local 0 // sun.security.provider.certpath.OCSPResponse this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   25     0   this  Lsun/security/provider/certpath/OCSPResponse;
            1   25     1     sb  Ljava/lang/StringBuilder;
            6   25     2  count  I
           12   13     3     sr  Lsun/security/provider/certpath/OCSPResponse$SingleResponse;
           22   23     3  extId  Ljava/lang/String;

  private static java.util.Map<java.lang.String, sun.security.x509.Extension> parseExtensions(sun.security.util.DerValue);
    descriptor: (Lsun/security/util/DerValue;)Ljava/util/Map;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=1
        start local 0 // sun.security.util.DerValue derVal
         0: .line 552
            aload 0 /* derVal */
            getfield sun.security.util.DerValue.data:Lsun/security/util/DerInputStream;
            iconst_3
            invokevirtual sun.security.util.DerInputStream.getSequence:(I)[Lsun/security/util/DerValue;
            astore 1 /* extDer */
        start local 1 // sun.security.util.DerValue[] extDer
         1: .line 554
            new java.util.HashMap
            dup
            aload 1 /* extDer */
            arraylength
            invokespecial java.util.HashMap.<init>:(I)V
         2: .line 553
            astore 2 /* extMap */
        start local 2 // java.util.Map extMap
         3: .line 556
            aload 1 /* extDer */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 14
      StackMap locals: sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map top int int sun.security.util.DerValue[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* extDerVal */
        start local 3 // sun.security.util.DerValue extDerVal
         5: .line 557
            new sun.security.x509.Extension
            dup
            aload 3 /* extDerVal */
            invokespecial sun.security.x509.Extension.<init>:(Lsun/security/util/DerValue;)V
            astore 7 /* ext */
        start local 7 // sun.security.x509.Extension ext
         6: .line 558
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            ifnull 8
         7: .line 559
            getstatic sun.security.provider.certpath.OCSPResponse.DEBUG:Lsun/security/util/Debug;
            new java.lang.StringBuilder
            dup
            ldc "Extension: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* ext */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
         8: .line 564
      StackMap locals: sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map sun.security.util.DerValue int int sun.security.util.DerValue[] sun.security.x509.Extension
      StackMap stack:
            aload 7 /* ext */
            invokevirtual sun.security.x509.Extension.isCritical:()Z
            ifeq 12
         9: .line 565
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported OCSP critical extension: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        10: .line 566
            aload 7 /* ext */
            invokevirtual sun.security.x509.Extension.getExtensionId:()Lsun/security/util/ObjectIdentifier;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 565
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 568
      StackMap locals:
      StackMap stack:
            aload 2 /* extMap */
            aload 7 /* ext */
            invokevirtual sun.security.x509.Extension.toString:()Ljava/lang/String;
            aload 7 /* ext */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // sun.security.x509.Extension ext
        end local 3 // sun.security.util.DerValue extDerVal
        13: .line 556
            iinc 4 1
      StackMap locals: sun.security.util.DerValue sun.security.util.DerValue[] java.util.Map top int int sun.security.util.DerValue[]
      StackMap stack:
        14: iload 4
            iload 5
            if_icmplt 4
        15: .line 571
            aload 2 /* extMap */
            areturn
        end local 2 // java.util.Map extMap
        end local 1 // sun.security.util.DerValue[] extDer
        end local 0 // sun.security.util.DerValue derVal
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0     derVal  Lsun/security/util/DerValue;
            1   16     1     extDer  [Lsun/security/util/DerValue;
            3   16     2     extMap  Ljava/util/Map<Ljava/lang/String;Lsun/security/x509/Extension;>;
            5   13     3  extDerVal  Lsun/security/util/DerValue;
            6   13     7        ext  Lsun/security/x509/Extension;
    Exceptions:
      throws java.io.IOException
    Signature: (Lsun/security/util/DerValue;)Ljava/util/Map<Ljava/lang/String;Lsun/security/x509/Extension;>;
    MethodParameters:
        Name  Flags
      derVal  
}
SourceFile: "OCSPResponse.java"
NestMembers:
  sun.security.provider.certpath.OCSPResponse$IssuerInfo  sun.security.provider.certpath.OCSPResponse$ResponseStatus  sun.security.provider.certpath.OCSPResponse$SingleResponse
InnerClasses:
  final IssuerInfo = sun.security.provider.certpath.OCSPResponse$IssuerInfo of sun.security.provider.certpath.OCSPResponse
  public final ResponseStatus = sun.security.provider.certpath.OCSPResponse$ResponseStatus of sun.security.provider.certpath.OCSPResponse
  public final SingleResponse = sun.security.provider.certpath.OCSPResponse$SingleResponse of sun.security.provider.certpath.OCSPResponse