final class sun.security.ssl.SSLSessionImpl extends javax.net.ssl.ExtendedSSLSession
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: sun.security.ssl.SSLSessionImpl
  super_class: javax.net.ssl.ExtendedSSLSession
{
  static final sun.security.ssl.SSLSessionImpl nullSession;
    descriptor: Lsun/security/ssl/SSLSessionImpl;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final byte compression_null;
    descriptor: B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private final sun.security.ssl.ProtocolVersion protocolVersion;
    descriptor: Lsun/security/ssl/ProtocolVersion;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final sun.security.ssl.SessionId sessionId;
    descriptor: Lsun/security/ssl/SessionId;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.security.cert.X509Certificate[] peerCerts;
    descriptor: [Ljava/security/cert/X509Certificate;
    flags: (0x0002) ACC_PRIVATE

  private byte compressionMethod;
    descriptor: B
    flags: (0x0002) ACC_PRIVATE

  private sun.security.ssl.CipherSuite cipherSuite;
    descriptor: Lsun/security/ssl/CipherSuite;
    flags: (0x0002) ACC_PRIVATE

  private javax.crypto.SecretKey masterSecret;
    descriptor: Ljavax/crypto/SecretKey;
    flags: (0x0002) ACC_PRIVATE

  private final boolean useExtendedMasterSecret;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long creationTime;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private long lastUsedTime;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private final java.lang.String host;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int port;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private sun.security.ssl.SSLSessionContextImpl context;
    descriptor: Lsun/security/ssl/SSLSessionContextImpl;
    flags: (0x0002) ACC_PRIVATE

  private int sessionCount;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

  private java.security.cert.X509Certificate[] localCerts;
    descriptor: [Ljava/security/cert/X509Certificate;
    flags: (0x0002) ACC_PRIVATE

  private java.security.PrivateKey localPrivateKey;
    descriptor: Ljava/security/PrivateKey;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String[] localSupportedSignAlgs;
    descriptor: [Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String[] peerSupportedSignAlgs;
    descriptor: [Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<javax.net.ssl.SNIServerName> requestedServerNames;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljavax/net/ssl/SNIServerName;>;

  private java.util.List<byte[]> statusResponses;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<[B>;

  private int negotiatedMaxFragLen;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int maximumPacketSize;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.security.Principal peerPrincipal;
    descriptor: Ljava/security/Principal;
    flags: (0x0002) ACC_PRIVATE

  private java.security.Principal localPrincipal;
    descriptor: Ljava/security/Principal;
    flags: (0x0002) ACC_PRIVATE

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

  private static volatile int counter;
    descriptor: I
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  private static boolean defaultRejoinable;
    descriptor: Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

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

  private java.util.Hashtable<sun.security.ssl.SecureKey, java.lang.Object> table;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Hashtable<Lsun/security/ssl/SecureKey;Ljava/lang/Object;>;

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 79
            new sun.security.ssl.SSLSessionImpl
            dup
            invokespecial sun.security.ssl.SSLSessionImpl.<init>:()V
            putstatic sun.security.ssl.SSLSessionImpl.nullSession:Lsun/security/ssl/SSLSessionImpl;
         1: .line 139
            iconst_1
            putstatic sun.security.ssl.SSLSessionImpl.defaultRejoinable:Z
         2: .line 142
            ldc "ssl"
            invokestatic sun.security.ssl.Debug.getInstance:(Ljava/lang/String;)Lsun/security/ssl/Debug;
            putstatic sun.security.ssl.SSLSessionImpl.debug:Lsun/security/ssl/Debug;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 151
            aload 0 /* this */
            getstatic sun.security.ssl.ProtocolVersion.NONE:Lsun/security/ssl/ProtocolVersion;
            getstatic sun.security.ssl.CipherSuite.C_NULL:Lsun/security/ssl/CipherSuite;
            aconst_null
         1: .line 152
            new sun.security.ssl.SessionId
            dup
            iconst_0
            aconst_null
            invokespecial sun.security.ssl.SessionId.<init>:(ZLjava/security/SecureRandom;)V
            aconst_null
            iconst_m1
            iconst_0
            invokespecial sun.security.ssl.SSLSessionImpl.<init>:(Lsun/security/ssl/ProtocolVersion;Lsun/security/ssl/CipherSuite;Ljava/util/Collection;Lsun/security/ssl/SessionId;Ljava/lang/String;IZ)V
         2: .line 153
            return
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/ssl/SSLSessionImpl;

  void <init>(sun.security.ssl.ProtocolVersion, sun.security.ssl.CipherSuite, java.util.Collection<sun.security.ssl.SignatureAndHashAlgorithm>, java.security.SecureRandom, java.lang.String, int, );
    descriptor: (Lsun/security/ssl/ProtocolVersion;Lsun/security/ssl/CipherSuite;Ljava/util/Collection;Ljava/security/SecureRandom;Ljava/lang/String;IZ)V
    flags: (0x0000) 
    Code:
      stack=8, locals=8, args_size=8
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // sun.security.ssl.ProtocolVersion protocolVersion
        start local 2 // sun.security.ssl.CipherSuite cipherSuite
        start local 3 // java.util.Collection algorithms
        start local 4 // java.security.SecureRandom generator
        start local 5 // java.lang.String host
        start local 6 // int port
        start local 7 // boolean useExtendedMasterSecret
         0: .line 164
            aload 0 /* this */
            aload 1 /* protocolVersion */
            aload 2 /* cipherSuite */
            aload 3 /* algorithms */
         1: .line 165
            new sun.security.ssl.SessionId
            dup
            getstatic sun.security.ssl.SSLSessionImpl.defaultRejoinable:Z
            aload 4 /* generator */
            invokespecial sun.security.ssl.SessionId.<init>:(ZLjava/security/SecureRandom;)V
            aload 5 /* host */
            iload 6 /* port */
         2: .line 166
            iload 7 /* useExtendedMasterSecret */
            invokespecial sun.security.ssl.SSLSessionImpl.<init>:(Lsun/security/ssl/ProtocolVersion;Lsun/security/ssl/CipherSuite;Ljava/util/Collection;Lsun/security/ssl/SessionId;Ljava/lang/String;IZ)V
         3: .line 167
            return
        end local 7 // boolean useExtendedMasterSecret
        end local 6 // int port
        end local 5 // java.lang.String host
        end local 4 // java.security.SecureRandom generator
        end local 3 // java.util.Collection algorithms
        end local 2 // sun.security.ssl.CipherSuite cipherSuite
        end local 1 // sun.security.ssl.ProtocolVersion protocolVersion
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    4     0                     this  Lsun/security/ssl/SSLSessionImpl;
            0    4     1          protocolVersion  Lsun/security/ssl/ProtocolVersion;
            0    4     2              cipherSuite  Lsun/security/ssl/CipherSuite;
            0    4     3               algorithms  Ljava/util/Collection<Lsun/security/ssl/SignatureAndHashAlgorithm;>;
            0    4     4                generator  Ljava/security/SecureRandom;
            0    4     5                     host  Ljava/lang/String;
            0    4     6                     port  I
            0    4     7  useExtendedMasterSecret  Z
    Signature: (Lsun/security/ssl/ProtocolVersion;Lsun/security/ssl/CipherSuite;Ljava/util/Collection<Lsun/security/ssl/SignatureAndHashAlgorithm;>;Ljava/security/SecureRandom;Ljava/lang/String;IZ)V
    MethodParameters:
                         Name  Flags
      protocolVersion          
      cipherSuite              
      algorithms               
      generator                
      host                     
      port                     
      useExtendedMasterSecret  

  void <init>(sun.security.ssl.ProtocolVersion, sun.security.ssl.CipherSuite, java.util.Collection<sun.security.ssl.SignatureAndHashAlgorithm>, sun.security.ssl.SessionId, java.lang.String, int, );
    descriptor: (Lsun/security/ssl/ProtocolVersion;Lsun/security/ssl/CipherSuite;Ljava/util/Collection;Lsun/security/ssl/SessionId;Ljava/lang/String;IZ)V
    flags: (0x0000) 
    Code:
      stack=4, locals=8, args_size=8
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // sun.security.ssl.ProtocolVersion protocolVersion
        start local 2 // sun.security.ssl.CipherSuite cipherSuite
        start local 3 // java.util.Collection algorithms
        start local 4 // sun.security.ssl.SessionId id
        start local 5 // java.lang.String host
        start local 6 // int port
        start local 7 // boolean useExtendedMasterSecret
         0: .line 172
            aload 0 /* this */
            invokespecial javax.net.ssl.ExtendedSSLSession.<init>:()V
         1: .line 100
            aload 0 /* this */
            invokestatic java.lang.System.currentTimeMillis:()J
            putfield sun.security.ssl.SSLSessionImpl.creationTime:J
         2: .line 101
            aload 0 /* this */
            lconst_0
            putfield sun.security.ssl.SSLSessionImpl.lastUsedTime:J
         3: .line 127
            aload 0 /* this */
            iconst_0
            putfield sun.security.ssl.SSLSessionImpl.isSessionResumption:Z
         4: .line 713
            aload 0 /* this */
            new java.util.Hashtable
            dup
            invokespecial java.util.Hashtable.<init>:()V
            putfield sun.security.ssl.SSLSessionImpl.table:Ljava/util/Hashtable;
         5: .line 815
            aload 0 /* this */
         6: .line 816
            ldc "jsse.SSLEngine.acceptLargeFragments"
            iconst_0
            invokestatic sun.security.ssl.Debug.getBooleanProperty:(Ljava/lang/String;Z)Z
            putfield sun.security.ssl.SSLSessionImpl.acceptLargeFragments:Z
         7: .line 176
            aload 0 /* this */
            aload 1 /* protocolVersion */
            putfield sun.security.ssl.SSLSessionImpl.protocolVersion:Lsun/security/ssl/ProtocolVersion;
         8: .line 177
            aload 0 /* this */
            aload 4 /* id */
            putfield sun.security.ssl.SSLSessionImpl.sessionId:Lsun/security/ssl/SessionId;
         9: .line 178
            aload 0 /* this */
            aconst_null
            putfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
        10: .line 179
            aload 0 /* this */
            iconst_0
            putfield sun.security.ssl.SSLSessionImpl.compressionMethod:B
        11: .line 180
            aload 0 /* this */
            aload 2 /* cipherSuite */
            putfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
        12: .line 181
            aload 0 /* this */
            aconst_null
            putfield sun.security.ssl.SSLSessionImpl.masterSecret:Ljavax/crypto/SecretKey;
        13: .line 182
            aload 0 /* this */
            aload 5 /* host */
            putfield sun.security.ssl.SSLSessionImpl.host:Ljava/lang/String;
        14: .line 183
            aload 0 /* this */
            iload 6 /* port */
            putfield sun.security.ssl.SSLSessionImpl.port:I
        15: .line 184
            aload 0 /* this */
            getstatic sun.security.ssl.SSLSessionImpl.counter:I
            iconst_1
            iadd
            dup
            putstatic sun.security.ssl.SSLSessionImpl.counter:I
            putfield sun.security.ssl.SSLSessionImpl.sessionCount:I
        16: .line 185
            aload 0 /* this */
        17: .line 186
            aload 3 /* algorithms */
            invokestatic sun.security.ssl.SignatureAndHashAlgorithm.getAlgorithmNames:(Ljava/util/Collection;)[Ljava/lang/String;
        18: .line 185
            putfield sun.security.ssl.SSLSessionImpl.localSupportedSignAlgs:[Ljava/lang/String;
        19: .line 187
            aload 0 /* this */
            iconst_m1
            putfield sun.security.ssl.SSLSessionImpl.negotiatedMaxFragLen:I
        20: .line 188
            aload 0 /* this */
            aconst_null
            putfield sun.security.ssl.SSLSessionImpl.statusResponses:Ljava/util/List;
        21: .line 189
            aload 0 /* this */
            iload 7 /* useExtendedMasterSecret */
            putfield sun.security.ssl.SSLSessionImpl.useExtendedMasterSecret:Z
        22: .line 191
            getstatic sun.security.ssl.SSLSessionImpl.debug:Lsun/security/ssl/Debug;
            ifnull 24
            ldc "session"
            invokestatic sun.security.ssl.Debug.isOn:(Ljava/lang/String;)Z
            ifeq 24
        23: .line 192
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "%% Initialized:  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        24: .line 194
      StackMap locals: sun.security.ssl.SSLSessionImpl sun.security.ssl.ProtocolVersion sun.security.ssl.CipherSuite java.util.Collection sun.security.ssl.SessionId java.lang.String int int
      StackMap stack:
            return
        end local 7 // boolean useExtendedMasterSecret
        end local 6 // int port
        end local 5 // java.lang.String host
        end local 4 // sun.security.ssl.SessionId id
        end local 3 // java.util.Collection algorithms
        end local 2 // sun.security.ssl.CipherSuite cipherSuite
        end local 1 // sun.security.ssl.ProtocolVersion protocolVersion
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   25     0                     this  Lsun/security/ssl/SSLSessionImpl;
            0   25     1          protocolVersion  Lsun/security/ssl/ProtocolVersion;
            0   25     2              cipherSuite  Lsun/security/ssl/CipherSuite;
            0   25     3               algorithms  Ljava/util/Collection<Lsun/security/ssl/SignatureAndHashAlgorithm;>;
            0   25     4                       id  Lsun/security/ssl/SessionId;
            0   25     5                     host  Ljava/lang/String;
            0   25     6                     port  I
            0   25     7  useExtendedMasterSecret  Z
    Signature: (Lsun/security/ssl/ProtocolVersion;Lsun/security/ssl/CipherSuite;Ljava/util/Collection<Lsun/security/ssl/SignatureAndHashAlgorithm;>;Lsun/security/ssl/SessionId;Ljava/lang/String;IZ)V
    MethodParameters:
                         Name  Flags
      protocolVersion          
      cipherSuite              
      algorithms               
      id                       
      host                     
      port                     
      useExtendedMasterSecret  

  void setMasterSecret(javax.crypto.SecretKey);
    descriptor: (Ljavax/crypto/SecretKey;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // javax.crypto.SecretKey secret
         0: .line 197
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.masterSecret:Ljavax/crypto/SecretKey;
            ifnonnull 3
         1: .line 198
            aload 0 /* this */
            aload 1 /* secret */
            putfield sun.security.ssl.SSLSessionImpl.masterSecret:Ljavax/crypto/SecretKey;
         2: .line 199
            goto 4
         3: .line 200
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            ldc "setMasterSecret() error"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 202
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.crypto.SecretKey secret
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lsun/security/ssl/SSLSessionImpl;
            0    5     1  secret  Ljavax/crypto/SecretKey;
    MethodParameters:
        Name  Flags
      secret  

  javax.crypto.SecretKey getMasterSecret();
    descriptor: ()Ljavax/crypto/SecretKey;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 208
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.masterSecret:Ljavax/crypto/SecretKey;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  boolean getUseExtendedMasterSecret();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 212
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.useExtendedMasterSecret:Z
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  void setPeerCertificates(java.security.cert.X509Certificate[]);
    descriptor: ([Ljava/security/cert/X509Certificate;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.security.cert.X509Certificate[] peer
         0: .line 216
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            ifnonnull 2
         1: .line 217
            aload 0 /* this */
            aload 1 /* peer */
            putfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
         2: .line 219
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.security.cert.X509Certificate[] peer
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/ssl/SSLSessionImpl;
            0    3     1  peer  [Ljava/security/cert/X509Certificate;
    MethodParameters:
      Name  Flags
      peer  

  void setLocalCertificates(java.security.cert.X509Certificate[]);
    descriptor: ([Ljava/security/cert/X509Certificate;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.security.cert.X509Certificate[] local
         0: .line 222
            aload 0 /* this */
            aload 1 /* local */
            putfield sun.security.ssl.SSLSessionImpl.localCerts:[Ljava/security/cert/X509Certificate;
         1: .line 223
            return
        end local 1 // java.security.cert.X509Certificate[] local
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lsun/security/ssl/SSLSessionImpl;
            0    2     1  local  [Ljava/security/cert/X509Certificate;
    MethodParameters:
       Name  Flags
      local  

  void setLocalPrivateKey(java.security.PrivateKey);
    descriptor: (Ljava/security/PrivateKey;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.security.PrivateKey privateKey
         0: .line 226
            aload 0 /* this */
            aload 1 /* privateKey */
            putfield sun.security.ssl.SSLSessionImpl.localPrivateKey:Ljava/security/PrivateKey;
         1: .line 227
            return
        end local 1 // java.security.PrivateKey privateKey
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lsun/security/ssl/SSLSessionImpl;
            0    2     1  privateKey  Ljava/security/PrivateKey;
    MethodParameters:
            Name  Flags
      privateKey  

  void setPeerSupportedSignatureAlgorithms(java.util.Collection<sun.security.ssl.SignatureAndHashAlgorithm>);
    descriptor: (Ljava/util/Collection;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.util.Collection algorithms
         0: .line 231
            aload 0 /* this */
         1: .line 232
            aload 1 /* algorithms */
            invokestatic sun.security.ssl.SignatureAndHashAlgorithm.getAlgorithmNames:(Ljava/util/Collection;)[Ljava/lang/String;
         2: .line 231
            putfield sun.security.ssl.SSLSessionImpl.peerSupportedSignAlgs:[Ljava/lang/String;
         3: .line 233
            return
        end local 1 // java.util.Collection algorithms
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lsun/security/ssl/SSLSessionImpl;
            0    4     1  algorithms  Ljava/util/Collection<Lsun/security/ssl/SignatureAndHashAlgorithm;>;
    Signature: (Ljava/util/Collection<Lsun/security/ssl/SignatureAndHashAlgorithm;>;)V
    MethodParameters:
            Name  Flags
      algorithms  

  void setRequestedServerNames(java.util.List<javax.net.ssl.SNIServerName>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.util.List requestedServerNames
         0: .line 236
            aload 0 /* this */
            new java.util.ArrayList
            dup
            aload 1 /* requestedServerNames */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            putfield sun.security.ssl.SSLSessionImpl.requestedServerNames:Ljava/util/List;
         1: .line 237
            return
        end local 1 // java.util.List requestedServerNames
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    2     0                  this  Lsun/security/ssl/SSLSessionImpl;
            0    2     1  requestedServerNames  Ljava/util/List<Ljavax/net/ssl/SNIServerName;>;
    Signature: (Ljava/util/List<Ljavax/net/ssl/SNIServerName;>;)V
    MethodParameters:
                      Name  Flags
      requestedServerNames  

  void setStatusResponses(java.util.List<byte[]>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.util.List responses
         0: .line 245
            aload 1 /* responses */
            ifnull 3
            aload 1 /* responses */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 3
         1: .line 246
            aload 0 /* this */
            aload 1 /* responses */
            putfield sun.security.ssl.SSLSessionImpl.statusResponses:Ljava/util/List;
         2: .line 247
            goto 4
         3: .line 248
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            putfield sun.security.ssl.SSLSessionImpl.statusResponses:Ljava/util/List;
         4: .line 250
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.List responses
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lsun/security/ssl/SSLSessionImpl;
            0    5     1  responses  Ljava/util/List<[B>;
    Signature: (Ljava/util/List<[B>;)V
    MethodParameters:
           Name  Flags
      responses  

  void setPeerPrincipal(java.security.Principal);
    descriptor: (Ljava/security/Principal;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.security.Principal principal
         0: .line 256
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerPrincipal:Ljava/security/Principal;
            ifnonnull 2
         1: .line 257
            aload 0 /* this */
            aload 1 /* principal */
            putfield sun.security.ssl.SSLSessionImpl.peerPrincipal:Ljava/security/Principal;
         2: .line 259
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.security.Principal principal
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lsun/security/ssl/SSLSessionImpl;
            0    3     1  principal  Ljava/security/Principal;
    MethodParameters:
           Name  Flags
      principal  

  void setLocalPrincipal(java.security.Principal);
    descriptor: (Ljava/security/Principal;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.security.Principal principal
         0: .line 265
            aload 0 /* this */
            aload 1 /* principal */
            putfield sun.security.ssl.SSLSessionImpl.localPrincipal:Ljava/security/Principal;
         1: .line 266
            return
        end local 1 // java.security.Principal principal
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lsun/security/ssl/SSLSessionImpl;
            0    2     1  principal  Ljava/security/Principal;
    MethodParameters:
           Name  Flags
      principal  

  boolean isRejoinable();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 276
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.sessionId:Lsun/security/ssl/SessionId;
            ifnull 3
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.sessionId:Lsun/security/ssl/SessionId;
            invokevirtual sun.security.ssl.SessionId.length:()I
            ifeq 3
         1: .line 277
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.invalidated:Z
            ifne 3
            aload 0 /* this */
            invokevirtual sun.security.ssl.SSLSessionImpl.isLocalAuthenticationValid:()Z
            ifeq 3
         2: .line 276
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/security/ssl/SSLSessionImpl;

  public synchronized boolean isValid();
    descriptor: ()Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 282
            aload 0 /* this */
            invokevirtual sun.security.ssl.SSLSessionImpl.isRejoinable:()Z
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  boolean isLocalAuthenticationValid();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 290
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localPrivateKey:Ljava/security/PrivateKey;
            ifnull 6
         1: .line 295
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localPrivateKey:Ljava/security/PrivateKey;
            invokeinterface java.security.PrivateKey.getAlgorithm:()Ljava/lang/String;
            pop
         2: .line 296
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Exception
         3: pop
         4: .line 297
            aload 0 /* this */
            invokevirtual sun.security.ssl.SSLSessionImpl.invalidate:()V
         5: .line 298
            iconst_0
            ireturn
         6: .line 301
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/security/ssl/SSLSessionImpl;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Exception

  public byte[] getId();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 310
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.sessionId:Lsun/security/ssl/SessionId;
            invokevirtual sun.security.ssl.SessionId.getId:()[B
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  public javax.net.ssl.SSLSessionContext getSessionContext();
    descriptor: ()Ljavax/net/ssl/SSLSessionContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 331
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            dup
            astore 1 /* sm */
        start local 1 // java.lang.SecurityManager sm
         1: ifnull 3
         2: .line 332
            aload 1 /* sm */
            new javax.net.ssl.SSLPermission
            dup
            ldc "getSSLSessionContext"
            invokespecial javax.net.ssl.SSLPermission.<init>:(Ljava/lang/String;)V
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
         3: .line 335
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.context:Lsun/security/ssl/SSLSessionContextImpl;
            areturn
        end local 1 // java.lang.SecurityManager sm
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/security/ssl/SSLSessionImpl;
            1    4     1    sm  Ljava/lang/SecurityManager;

  sun.security.ssl.SessionId getSessionId();
    descriptor: ()Lsun/security/ssl/SessionId;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 340
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.sessionId:Lsun/security/ssl/SessionId;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  sun.security.ssl.CipherSuite getSuite();
    descriptor: ()Lsun/security/ssl/CipherSuite;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 348
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  void setSuite(sun.security.ssl.CipherSuite);
    descriptor: (Lsun/security/ssl/CipherSuite;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // sun.security.ssl.CipherSuite suite
         0: .line 355
            aload 0 /* this */
            aload 1 /* suite */
            putfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
         1: .line 357
            getstatic sun.security.ssl.SSLSessionImpl.debug:Lsun/security/ssl/Debug;
            ifnull 3
            ldc "session"
            invokestatic sun.security.ssl.Debug.isOn:(Ljava/lang/String;)Z
            ifeq 3
         2: .line 358
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "%% Negotiating:  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         3: .line 360
      StackMap locals:
      StackMap stack:
            return
        end local 1 // sun.security.ssl.CipherSuite suite
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lsun/security/ssl/SSLSessionImpl;
            0    4     1  suite  Lsun/security/ssl/CipherSuite;
    MethodParameters:
       Name  Flags
      suite  

  boolean isSessionResumption();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 367
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.isSessionResumption:Z
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  void setAsSessionResumption(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // boolean flag
         0: .line 375
            aload 0 /* this */
            iload 1 /* flag */
            putfield sun.security.ssl.SSLSessionImpl.isSessionResumption:Z
         1: .line 376
            return
        end local 1 // boolean flag
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/ssl/SSLSessionImpl;
            0    2     1  flag  Z
    MethodParameters:
      Name  Flags
      flag  

  public java.lang.String getCipherSuite();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 383
            aload 0 /* this */
            invokevirtual sun.security.ssl.SSLSessionImpl.getSuite:()Lsun/security/ssl/CipherSuite;
            getfield sun.security.ssl.CipherSuite.name:Ljava/lang/String;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  sun.security.ssl.ProtocolVersion getProtocolVersion();
    descriptor: ()Lsun/security/ssl/ProtocolVersion;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 387
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.protocolVersion:Lsun/security/ssl/ProtocolVersion;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  public java.lang.String getProtocol();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 395
            aload 0 /* this */
            invokevirtual sun.security.ssl.SSLSessionImpl.getProtocolVersion:()Lsun/security/ssl/ProtocolVersion;
            getfield sun.security.ssl.ProtocolVersion.name:Ljava/lang/String;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  byte getCompression();
    descriptor: ()B
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 402
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.compressionMethod:B
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 410
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.sessionId:Lsun/security/ssl/SessionId;
            invokevirtual sun.security.ssl.SessionId.hashCode:()I
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.lang.Object obj
         0: .line 420
            aload 1 /* obj */
            aload 0 /* this */
            if_acmpne 2
         1: .line 421
            iconst_1
            ireturn
         2: .line 424
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof sun.security.ssl.SSLSessionImpl
            ifeq 10
         3: .line 425
            aload 1 /* obj */
            checkcast sun.security.ssl.SSLSessionImpl
            astore 2 /* sess */
        start local 2 // sun.security.ssl.SSLSessionImpl sess
         4: .line 426
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.sessionId:Lsun/security/ssl/SessionId;
            ifnull 9
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.sessionId:Lsun/security/ssl/SessionId;
         5: .line 427
            aload 2 /* sess */
            invokevirtual sun.security.ssl.SSLSessionImpl.getSessionId:()Lsun/security/ssl/SessionId;
         6: .line 426
            invokevirtual sun.security.ssl.SessionId.equals:(Ljava/lang/Object;)Z
         7: .line 427
            ifeq 9
         8: .line 426
            iconst_1
            ireturn
      StackMap locals: sun.security.ssl.SSLSessionImpl
      StackMap stack:
         9: iconst_0
            ireturn
        end local 2 // sun.security.ssl.SSLSessionImpl sess
        10: .line 430
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/security/ssl/SSLSessionImpl;
            0   11     1   obj  Ljava/lang/Object;
            4   10     2  sess  Lsun/security/ssl/SSLSessionImpl;
    MethodParameters:
      Name  Flags
      obj   

  public java.security.cert.Certificate[] getPeerCertificates();
    descriptor: ()[Ljava/security/cert/Certificate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 452
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
            getfield sun.security.ssl.CipherSuite.keyExchange:Lsun/security/ssl/CipherSuite$KeyExchange;
            getfield sun.security.ssl.CipherSuite$KeyExchange.name:Ljava/lang/String;
            invokestatic sun.security.ssl.ClientKeyExchangeService.find:(Ljava/lang/String;)Lsun/security/ssl/ClientKeyExchangeService;
            ifnull 4
         1: .line 453
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            new java.lang.StringBuilder
            dup
            ldc "no certificates expected for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 454
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
            getfield sun.security.ssl.CipherSuite.keyExchange:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " cipher suites"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 453
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 456
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            ifnonnull 6
         5: .line 457
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            ldc "peer not authenticated"
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 462
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            invokevirtual java.security.cert.X509Certificate[].clone:()Ljava/lang/Object;
            checkcast java.security.cert.Certificate[]
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/security/ssl/SSLSessionImpl;
    Exceptions:
      throws javax.net.ssl.SSLPeerUnverifiedException

  public java.security.cert.Certificate[] getLocalCertificates();
    descriptor: ()[Ljava/security/cert/Certificate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 480
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localCerts:[Ljava/security/cert/X509Certificate;
            ifnonnull 1
            aconst_null
            goto 2
         1: .line 481
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localCerts:[Ljava/security/cert/X509Certificate;
            invokevirtual java.security.cert.X509Certificate[].clone:()Ljava/lang/Object;
            checkcast java.security.cert.Certificate[]
         2: .line 480
      StackMap locals:
      StackMap stack: java.security.cert.Certificate[]
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/ssl/SSLSessionImpl;

  public javax.security.cert.X509Certificate[] getPeerCertificateChain();
    descriptor: ()[Ljavax/security/cert/X509Certificate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 507
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
            getfield sun.security.ssl.CipherSuite.keyExchange:Lsun/security/ssl/CipherSuite$KeyExchange;
            getfield sun.security.ssl.CipherSuite$KeyExchange.name:Ljava/lang/String;
            invokestatic sun.security.ssl.ClientKeyExchangeService.find:(Ljava/lang/String;)Lsun/security/ssl/ClientKeyExchangeService;
            ifnull 4
         1: .line 508
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            new java.lang.StringBuilder
            dup
            ldc "no certificates expected for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 509
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
            getfield sun.security.ssl.CipherSuite.keyExchange:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " cipher suites"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 508
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 511
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            ifnonnull 6
         5: .line 512
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            ldc "peer not authenticated"
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 515
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            arraylength
            anewarray javax.security.cert.X509Certificate
            astore 1 /* certs */
        start local 1 // javax.security.cert.X509Certificate[] certs
         7: .line 516
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         8: goto 18
         9: .line 517
      StackMap locals: javax.security.cert.X509Certificate[] int
      StackMap stack:
            aconst_null
            astore 3 /* der */
        start local 3 // byte[] der
        10: .line 519
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            iload 2 /* i */
            aaload
            invokevirtual java.security.cert.X509Certificate.getEncoded:()[B
            astore 3 /* der */
        11: .line 520
            aload 1 /* certs */
            iload 2 /* i */
            aload 3 /* der */
            invokestatic javax.security.cert.X509Certificate.getInstance:([B)Ljavax/security/cert/X509Certificate;
            aastore
        12: .line 521
            goto 17
      StackMap locals: sun.security.ssl.SSLSessionImpl javax.security.cert.X509Certificate[] int byte[]
      StackMap stack: java.security.cert.CertificateEncodingException
        13: astore 4 /* e */
        start local 4 // java.security.cert.CertificateEncodingException e
        14: .line 522
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            aload 4 /* e */
            invokevirtual java.security.cert.CertificateEncodingException.getMessage:()Ljava/lang/String;
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.security.cert.CertificateEncodingException e
        15: .line 523
      StackMap locals:
      StackMap stack: javax.security.cert.CertificateException
            astore 4 /* e */
        start local 4 // javax.security.cert.CertificateException e
        16: .line 524
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            aload 4 /* e */
            invokevirtual javax.security.cert.CertificateException.getMessage:()Ljava/lang/String;
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // javax.security.cert.CertificateException e
        end local 3 // byte[] der
        17: .line 516
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 2 /* i */
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            arraylength
            if_icmplt 9
        end local 2 // int i
        19: .line 528
            aload 1 /* certs */
            areturn
        end local 1 // javax.security.cert.X509Certificate[] certs
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   20     0   this  Lsun/security/ssl/SSLSessionImpl;
            7   20     1  certs  [Ljavax/security/cert/X509Certificate;
            8   19     2      i  I
           10   17     3    der  [B
           14   15     4      e  Ljava/security/cert/CertificateEncodingException;
           16   17     4      e  Ljavax/security/cert/CertificateException;
      Exception table:
        from    to  target  type
          10    12      13  Class java.security.cert.CertificateEncodingException
          10    12      15  Class javax.security.cert.CertificateException
    Exceptions:
      throws javax.net.ssl.SSLPeerUnverifiedException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public java.security.cert.X509Certificate[] getCertificateChain();
    descriptor: ()[Ljava/security/cert/X509Certificate;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 547
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
            getfield sun.security.ssl.CipherSuite.keyExchange:Lsun/security/ssl/CipherSuite$KeyExchange;
            getfield sun.security.ssl.CipherSuite$KeyExchange.name:Ljava/lang/String;
            invokestatic sun.security.ssl.ClientKeyExchangeService.find:(Ljava/lang/String;)Lsun/security/ssl/ClientKeyExchangeService;
            ifnull 4
         1: .line 548
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            new java.lang.StringBuilder
            dup
            ldc "no certificates expected for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 549
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
            getfield sun.security.ssl.CipherSuite.keyExchange:Lsun/security/ssl/CipherSuite$KeyExchange;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " cipher suites"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 548
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 551
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            ifnull 6
         5: .line 552
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            invokevirtual java.security.cert.X509Certificate[].clone:()Ljava/lang/Object;
            checkcast java.security.cert.X509Certificate[]
            areturn
         6: .line 554
      StackMap locals:
      StackMap stack:
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            ldc "peer not authenticated"
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/security/ssl/SSLSessionImpl;
    Exceptions:
      throws javax.net.ssl.SSLPeerUnverifiedException

  public java.util.List<byte[]> getStatusResponses();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 570
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.statusResponses:Ljava/util/List;
            ifnull 1
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.statusResponses:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 2
         1: .line 571
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
         2: .line 574
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.statusResponses:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* responses */
        start local 1 // java.util.List responses
         3: .line 575
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.statusResponses:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 6
      StackMap locals: sun.security.ssl.SSLSessionImpl java.util.List top java.util.Iterator
      StackMap stack:
         4: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast byte[]
            astore 2 /* respBytes */
        start local 2 // byte[] respBytes
         5: .line 576
            aload 1 /* responses */
            aload 2 /* respBytes */
            invokevirtual byte[].clone:()Ljava/lang/Object;
            checkcast byte[]
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // byte[] respBytes
         6: .line 575
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         7: .line 578
            aload 1 /* responses */
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
        end local 1 // java.util.List responses
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lsun/security/ssl/SSLSessionImpl;
            3    8     1  responses  Ljava/util/List<[B>;
            5    6     2  respBytes  [B
    Signature: ()Ljava/util/List<[B>;

  public java.security.Principal getPeerPrincipal();
    descriptor: ()Ljava/security/Principal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 597
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
            getfield sun.security.ssl.CipherSuite.keyExchange:Lsun/security/ssl/CipherSuite$KeyExchange;
            getfield sun.security.ssl.CipherSuite$KeyExchange.name:Ljava/lang/String;
            invokestatic sun.security.ssl.ClientKeyExchangeService.find:(Ljava/lang/String;)Lsun/security/ssl/ClientKeyExchangeService;
            ifnull 4
         1: .line 598
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerPrincipal:Ljava/security/Principal;
            ifnonnull 3
         2: .line 599
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            ldc "peer not authenticated"
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 601
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerPrincipal:Ljava/security/Principal;
            areturn
         4: .line 604
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            ifnonnull 6
         5: .line 605
            new javax.net.ssl.SSLPeerUnverifiedException
            dup
            ldc "peer not authenticated"
            invokespecial javax.net.ssl.SSLPeerUnverifiedException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 607
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerCerts:[Ljava/security/cert/X509Certificate;
            iconst_0
            aaload
            invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/security/ssl/SSLSessionImpl;
    Exceptions:
      throws javax.net.ssl.SSLPeerUnverifiedException

  public java.security.Principal getLocalPrincipal();
    descriptor: ()Ljava/security/Principal;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 621
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
            getfield sun.security.ssl.CipherSuite.keyExchange:Lsun/security/ssl/CipherSuite$KeyExchange;
            getfield sun.security.ssl.CipherSuite$KeyExchange.name:Ljava/lang/String;
            invokestatic sun.security.ssl.ClientKeyExchangeService.find:(Ljava/lang/String;)Lsun/security/ssl/ClientKeyExchangeService;
            ifnull 4
         1: .line 622
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localPrincipal:Ljava/security/Principal;
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localPrincipal:Ljava/security/Principal;
      StackMap locals:
      StackMap stack: java.security.Principal
         3: areturn
         4: .line 624
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localCerts:[Ljava/security/cert/X509Certificate;
            ifnonnull 5
            aconst_null
            goto 6
         5: .line 625
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localCerts:[Ljava/security/cert/X509Certificate;
            iconst_0
            aaload
            invokevirtual java.security.cert.X509Certificate.getSubjectX500Principal:()Ljavax/security/auth/x500/X500Principal;
         6: .line 624
      StackMap locals:
      StackMap stack: javax.security.auth.x500.X500Principal
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/security/ssl/SSLSessionImpl;

  public long getCreationTime();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 633
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.creationTime:J
            lreturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  public long getLastAccessedTime();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 642
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.lastUsedTime:J
            lconst_0
            lcmp
            ifeq 1
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.lastUsedTime:J
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.creationTime:J
      StackMap locals:
      StackMap stack: long
         2: lreturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/ssl/SSLSessionImpl;

  void setLastAccessedTime(long);
    descriptor: (J)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // long time
         0: .line 646
            aload 0 /* this */
            lload 1 /* time */
            putfield sun.security.ssl.SSLSessionImpl.lastUsedTime:J
         1: .line 647
            return
        end local 1 // long time
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/ssl/SSLSessionImpl;
            0    2     1  time  J
    MethodParameters:
      Name  Flags
      time  

  public java.net.InetAddress getPeerAddress();
    descriptor: ()Ljava/net/InetAddress;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 658
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.host:Ljava/lang/String;
            invokestatic java.net.InetAddress.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
         1: areturn
         2: .line 659
      StackMap locals:
      StackMap stack: java.net.UnknownHostException
            pop
         3: .line 660
            aconst_null
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/security/ssl/SSLSessionImpl;
      Exception table:
        from    to  target  type
           0     1       2  Class java.net.UnknownHostException

  public java.lang.String getPeerHost();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 666
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.host:Ljava/lang/String;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  public int getPeerPort();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 675
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.port:I
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  void setContext(sun.security.ssl.SSLSessionContextImpl);
    descriptor: (Lsun/security/ssl/SSLSessionContextImpl;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // sun.security.ssl.SSLSessionContextImpl ctx
         0: .line 679
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.context:Lsun/security/ssl/SSLSessionContextImpl;
            ifnonnull 2
         1: .line 680
            aload 0 /* this */
            aload 1 /* ctx */
            putfield sun.security.ssl.SSLSessionImpl.context:Lsun/security/ssl/SSLSessionContextImpl;
         2: .line 682
      StackMap locals:
      StackMap stack:
            return
        end local 1 // sun.security.ssl.SSLSessionContextImpl ctx
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/ssl/SSLSessionImpl;
            0    3     1   ctx  Lsun/security/ssl/SSLSessionContextImpl;
    MethodParameters:
      Name  Flags
      ctx   

  public synchronized void invalidate();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 695
            aload 0 /* this */
            getstatic sun.security.ssl.SSLSessionImpl.nullSession:Lsun/security/ssl/SSLSessionImpl;
            if_acmpne 2
         1: .line 696
            return
         2: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.security.ssl.SSLSessionImpl.invalidated:Z
         3: .line 699
            getstatic sun.security.ssl.SSLSessionImpl.debug:Lsun/security/ssl/Debug;
            ifnull 5
            ldc "session"
            invokestatic sun.security.ssl.Debug.isOn:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 700
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "%% Invalidated:  "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         5: .line 702
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.context:Lsun/security/ssl/SSLSessionContextImpl;
            ifnull 8
         6: .line 703
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.context:Lsun/security/ssl/SSLSessionContextImpl;
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.sessionId:Lsun/security/ssl/SessionId;
            invokevirtual sun.security.ssl.SSLSessionContextImpl.remove:(Lsun/security/ssl/SessionId;)V
         7: .line 704
            aload 0 /* this */
            aconst_null
            putfield sun.security.ssl.SSLSessionImpl.context:Lsun/security/ssl/SSLSessionContextImpl;
         8: .line 706
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lsun/security/ssl/SSLSessionImpl;

  public void putValue(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.lang.String key
        start local 2 // java.lang.Object value
         0: .line 721
            aload 1 /* key */
            ifnull 1
            aload 2 /* value */
            ifnonnull 2
         1: .line 722
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "arguments can not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 725
      StackMap locals:
      StackMap stack:
            new sun.security.ssl.SecureKey
            dup
            aload 1 /* key */
            invokespecial sun.security.ssl.SecureKey.<init>:(Ljava/lang/Object;)V
            astore 3 /* secureKey */
        start local 3 // sun.security.ssl.SecureKey secureKey
         3: .line 726
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.table:Ljava/util/Hashtable;
            aload 3 /* secureKey */
            aload 2 /* value */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 4 /* oldValue */
        start local 4 // java.lang.Object oldValue
         4: .line 728
            aload 4 /* oldValue */
            instanceof javax.net.ssl.SSLSessionBindingListener
            ifeq 7
         5: .line 731
            new javax.net.ssl.SSLSessionBindingEvent
            dup
            aload 0 /* this */
            aload 1 /* key */
            invokespecial javax.net.ssl.SSLSessionBindingEvent.<init>:(Ljavax/net/ssl/SSLSession;Ljava/lang/String;)V
            astore 5 /* e */
        start local 5 // javax.net.ssl.SSLSessionBindingEvent e
         6: .line 732
            aload 4 /* oldValue */
            checkcast javax.net.ssl.SSLSessionBindingListener
            aload 5 /* e */
            invokeinterface javax.net.ssl.SSLSessionBindingListener.valueUnbound:(Ljavax/net/ssl/SSLSessionBindingEvent;)V
        end local 5 // javax.net.ssl.SSLSessionBindingEvent e
         7: .line 734
      StackMap locals: sun.security.ssl.SecureKey java.lang.Object
      StackMap stack:
            aload 2 /* value */
            instanceof javax.net.ssl.SSLSessionBindingListener
            ifeq 10
         8: .line 737
            new javax.net.ssl.SSLSessionBindingEvent
            dup
            aload 0 /* this */
            aload 1 /* key */
            invokespecial javax.net.ssl.SSLSessionBindingEvent.<init>:(Ljavax/net/ssl/SSLSession;Ljava/lang/String;)V
            astore 5 /* e */
        start local 5 // javax.net.ssl.SSLSessionBindingEvent e
         9: .line 738
            aload 2 /* value */
            checkcast javax.net.ssl.SSLSessionBindingListener
            aload 5 /* e */
            invokeinterface javax.net.ssl.SSLSessionBindingListener.valueBound:(Ljavax/net/ssl/SSLSessionBindingEvent;)V
        end local 5 // javax.net.ssl.SSLSessionBindingEvent e
        10: .line 740
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.Object oldValue
        end local 3 // sun.security.ssl.SecureKey secureKey
        end local 2 // java.lang.Object value
        end local 1 // java.lang.String key
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lsun/security/ssl/SSLSessionImpl;
            0   11     1        key  Ljava/lang/String;
            0   11     2      value  Ljava/lang/Object;
            3   11     3  secureKey  Lsun/security/ssl/SecureKey;
            4   11     4   oldValue  Ljava/lang/Object;
            6    7     5          e  Ljavax/net/ssl/SSLSessionBindingEvent;
            9   10     5          e  Ljavax/net/ssl/SSLSessionBindingEvent;
    MethodParameters:
       Name  Flags
      key    
      value  

  public java.lang.Object getValue(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.lang.String key
         0: .line 748
            aload 1 /* key */
            ifnonnull 2
         1: .line 749
            new java.lang.IllegalArgumentException
            dup
            ldc "argument can not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 752
      StackMap locals:
      StackMap stack:
            new sun.security.ssl.SecureKey
            dup
            aload 1 /* key */
            invokespecial sun.security.ssl.SecureKey.<init>:(Ljava/lang/Object;)V
            astore 2 /* secureKey */
        start local 2 // sun.security.ssl.SecureKey secureKey
         3: .line 753
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.table:Ljava/util/Hashtable;
            aload 2 /* secureKey */
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 2 // sun.security.ssl.SecureKey secureKey
        end local 1 // java.lang.String key
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lsun/security/ssl/SSLSessionImpl;
            0    4     1        key  Ljava/lang/String;
            3    4     2  secureKey  Lsun/security/ssl/SecureKey;
    MethodParameters:
      Name  Flags
      key   

  public void removeValue(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // java.lang.String key
         0: .line 763
            aload 1 /* key */
            ifnonnull 2
         1: .line 764
            new java.lang.IllegalArgumentException
            dup
            ldc "argument can not be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 767
      StackMap locals:
      StackMap stack:
            new sun.security.ssl.SecureKey
            dup
            aload 1 /* key */
            invokespecial sun.security.ssl.SecureKey.<init>:(Ljava/lang/Object;)V
            astore 2 /* secureKey */
        start local 2 // sun.security.ssl.SecureKey secureKey
         3: .line 768
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.table:Ljava/util/Hashtable;
            aload 2 /* secureKey */
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* value */
        start local 3 // java.lang.Object value
         4: .line 770
            aload 3 /* value */
            instanceof javax.net.ssl.SSLSessionBindingListener
            ifeq 7
         5: .line 773
            new javax.net.ssl.SSLSessionBindingEvent
            dup
            aload 0 /* this */
            aload 1 /* key */
            invokespecial javax.net.ssl.SSLSessionBindingEvent.<init>:(Ljavax/net/ssl/SSLSession;Ljava/lang/String;)V
            astore 4 /* e */
        start local 4 // javax.net.ssl.SSLSessionBindingEvent e
         6: .line 774
            aload 3 /* value */
            checkcast javax.net.ssl.SSLSessionBindingListener
            aload 4 /* e */
            invokeinterface javax.net.ssl.SSLSessionBindingListener.valueUnbound:(Ljavax/net/ssl/SSLSessionBindingEvent;)V
        end local 4 // javax.net.ssl.SSLSessionBindingEvent e
         7: .line 776
      StackMap locals: sun.security.ssl.SecureKey java.lang.Object
      StackMap stack:
            return
        end local 3 // java.lang.Object value
        end local 2 // sun.security.ssl.SecureKey secureKey
        end local 1 // java.lang.String key
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lsun/security/ssl/SSLSessionImpl;
            0    8     1        key  Ljava/lang/String;
            3    8     2  secureKey  Lsun/security/ssl/SecureKey;
            4    8     3      value  Ljava/lang/Object;
            6    7     4          e  Ljavax/net/ssl/SSLSessionBindingEvent;
    MethodParameters:
      Name  Flags
      key   

  public java.lang.String[] getValueNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 785
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 2 /* v */
        start local 2 // java.util.Vector v
         1: .line 787
            invokestatic sun.security.ssl.SecureKey.getCurrentSecurityContext:()Ljava/lang/Object;
            astore 4 /* securityCtx */
        start local 4 // java.lang.Object securityCtx
         2: .line 789
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.table:Ljava/util/Hashtable;
            invokevirtual java.util.Hashtable.keys:()Ljava/util/Enumeration;
            astore 1 /* e */
        start local 1 // java.util.Enumeration e
         3: goto 7
         4: .line 790
      StackMap locals: sun.security.ssl.SSLSessionImpl java.util.Enumeration java.util.Vector top java.lang.Object
      StackMap stack:
            aload 1 /* e */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast sun.security.ssl.SecureKey
            astore 3 /* key */
        start local 3 // sun.security.ssl.SecureKey key
         5: .line 792
            aload 4 /* securityCtx */
            aload 3 /* key */
            invokevirtual sun.security.ssl.SecureKey.getSecurityContext:()Ljava/lang/Object;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 793
            aload 2 /* v */
            aload 3 /* key */
            invokevirtual sun.security.ssl.SecureKey.getAppKey:()Ljava/lang/Object;
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        end local 3 // sun.security.ssl.SecureKey key
         7: .line 789
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 4
         8: .line 796
            aload 2 /* v */
            invokevirtual java.util.Vector.size:()I
            anewarray java.lang.String
            astore 5 /* names */
        start local 5 // java.lang.String[] names
         9: .line 797
            aload 2 /* v */
            aload 5 /* names */
            invokevirtual java.util.Vector.copyInto:([Ljava/lang/Object;)V
        10: .line 799
            aload 5 /* names */
            areturn
        end local 5 // java.lang.String[] names
        end local 4 // java.lang.Object securityCtx
        end local 2 // java.util.Vector v
        end local 1 // java.util.Enumeration e
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lsun/security/ssl/SSLSessionImpl;
            3   11     1            e  Ljava/util/Enumeration<Lsun/security/ssl/SecureKey;>;
            1   11     2            v  Ljava/util/Vector<Ljava/lang/Object;>;
            5    7     3          key  Lsun/security/ssl/SecureKey;
            2   11     4  securityCtx  Ljava/lang/Object;
            9   11     5        names  [Ljava/lang/String;

  protected synchronized void expandBufferSizes();
    descriptor: ()V
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 823
            aload 0 /* this */
            iconst_1
            putfield sun.security.ssl.SSLSessionImpl.acceptLargeFragments:Z
         1: .line 824
            return
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/ssl/SSLSessionImpl;

  public synchronized int getPacketBufferSize();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 834
            iconst_0
            istore 1 /* packetSize */
        start local 1 // int packetSize
         1: .line 835
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.negotiatedMaxFragLen:I
            ifle 6
         2: .line 836
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
         3: .line 837
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.negotiatedMaxFragLen:I
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.protocolVersion:Lsun/security/ssl/ProtocolVersion;
         4: .line 838
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.protocolVersion:Lsun/security/ssl/ProtocolVersion;
            invokevirtual sun.security.ssl.ProtocolVersion.isDTLSProtocol:()Z
         5: .line 836
            invokevirtual sun.security.ssl.CipherSuite.calculatePacketSize:(ILsun/security/ssl/ProtocolVersion;Z)I
            istore 1 /* packetSize */
         6: .line 841
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.maximumPacketSize:I
            ifle 11
         7: .line 842
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.maximumPacketSize:I
            iload 1 /* packetSize */
            if_icmple 9
         8: .line 843
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.maximumPacketSize:I
            goto 10
      StackMap locals:
      StackMap stack:
         9: iload 1 /* packetSize */
        10: .line 842
      StackMap locals:
      StackMap stack: int
            ireturn
        11: .line 846
      StackMap locals:
      StackMap stack:
            iload 1 /* packetSize */
            ifeq 13
        12: .line 847
            iload 1 /* packetSize */
            ireturn
        13: .line 850
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.protocolVersion:Lsun/security/ssl/ProtocolVersion;
            invokevirtual sun.security.ssl.ProtocolVersion.isDTLSProtocol:()Z
            ifeq 15
        14: .line 851
            sipush 16717
            ireturn
        15: .line 853
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.acceptLargeFragments:Z
            ifeq 17
        16: .line 854
            ldc 33093
            goto 18
      StackMap locals:
      StackMap stack:
        17: sipush 16709
        18: .line 853
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 1 // int packetSize
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        this  Lsun/security/ssl/SSLSessionImpl;
            1   19     1  packetSize  I

  public synchronized int getApplicationBufferSize();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 866
            iconst_0
            istore 1 /* fragmentSize */
        start local 1 // int fragmentSize
         1: .line 867
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.maximumPacketSize:I
            ifle 6
         2: .line 868
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.cipherSuite:Lsun/security/ssl/CipherSuite;
         3: .line 869
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.maximumPacketSize:I
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.protocolVersion:Lsun/security/ssl/ProtocolVersion;
         4: .line 870
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.protocolVersion:Lsun/security/ssl/ProtocolVersion;
            invokevirtual sun.security.ssl.ProtocolVersion.isDTLSProtocol:()Z
         5: .line 868
            invokevirtual sun.security.ssl.CipherSuite.calculateFragSize:(ILsun/security/ssl/ProtocolVersion;Z)I
            istore 1 /* fragmentSize */
         6: .line 873
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.negotiatedMaxFragLen:I
            ifle 11
         7: .line 874
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.negotiatedMaxFragLen:I
            iload 1 /* fragmentSize */
            if_icmple 9
         8: .line 875
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.negotiatedMaxFragLen:I
            goto 10
      StackMap locals:
      StackMap stack:
         9: iload 1 /* fragmentSize */
        10: .line 874
      StackMap locals:
      StackMap stack: int
            ireturn
        11: .line 878
      StackMap locals:
      StackMap stack:
            iload 1 /* fragmentSize */
            ifeq 13
        12: .line 879
            iload 1 /* fragmentSize */
            ireturn
        13: .line 882
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.protocolVersion:Lsun/security/ssl/ProtocolVersion;
            invokevirtual sun.security.ssl.ProtocolVersion.isDTLSProtocol:()Z
            ifeq 15
        14: .line 883
            sipush 16384
            ireturn
        15: .line 885
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.acceptLargeFragments:Z
            ifeq 17
        16: .line 886
            ldc 33093
            goto 18
      StackMap locals:
      StackMap stack:
        17: sipush 16709
        18: .line 885
      StackMap locals:
      StackMap stack: int
            istore 2 /* maxPacketSize */
        start local 2 // int maxPacketSize
        19: .line 887
            iload 2 /* maxPacketSize */
            iconst_5
            isub
            ireturn
        end local 2 // int maxPacketSize
        end local 1 // int fragmentSize
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   20     0           this  Lsun/security/ssl/SSLSessionImpl;
            1   20     1   fragmentSize  I
           19   20     2  maxPacketSize  I

  synchronized void setNegotiatedMaxFragSize(int);
    descriptor: (I)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // int negotiatedMaxFragLen
         0: .line 902
            aload 0 /* this */
            iload 1 /* negotiatedMaxFragLen */
            putfield sun.security.ssl.SSLSessionImpl.negotiatedMaxFragLen:I
         1: .line 903
            return
        end local 1 // int negotiatedMaxFragLen
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    2     0                  this  Lsun/security/ssl/SSLSessionImpl;
            0    2     1  negotiatedMaxFragLen  I
    MethodParameters:
                      Name  Flags
      negotiatedMaxFragLen  

  synchronized int getNegotiatedMaxFragSize();
    descriptor: ()I
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 913
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.negotiatedMaxFragLen:I
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  synchronized void setMaximumPacketSize(int);
    descriptor: (I)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.security.ssl.SSLSessionImpl this
        start local 1 // int maximumPacketSize
         0: .line 917
            aload 0 /* this */
            iload 1 /* maximumPacketSize */
            putfield sun.security.ssl.SSLSessionImpl.maximumPacketSize:I
         1: .line 918
            return
        end local 1 // int maximumPacketSize
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lsun/security/ssl/SSLSessionImpl;
            0    2     1  maximumPacketSize  I
    MethodParameters:
                   Name  Flags
      maximumPacketSize  

  synchronized int getMaximumPacketSize();
    descriptor: ()I
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 921
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.maximumPacketSize:I
            ireturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/security/ssl/SSLSessionImpl;

  public java.lang.String[] getLocalSupportedSignatureAlgorithms();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 930
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localSupportedSignAlgs:[Ljava/lang/String;
            ifnull 2
         1: .line 931
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.localSupportedSignAlgs:[Ljava/lang/String;
            invokevirtual java.lang.String[].clone:()Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
         2: .line 934
      StackMap locals:
      StackMap stack:
            iconst_0
            anewarray java.lang.String
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/ssl/SSLSessionImpl;

  public java.lang.String[] getPeerSupportedSignatureAlgorithms();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 943
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerSupportedSignAlgs:[Ljava/lang/String;
            ifnull 2
         1: .line 944
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.peerSupportedSignAlgs:[Ljava/lang/String;
            invokevirtual java.lang.String[].clone:()Ljava/lang/Object;
            checkcast java.lang.String[]
            areturn
         2: .line 947
      StackMap locals:
      StackMap stack:
            iconst_0
            anewarray java.lang.String
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/security/ssl/SSLSessionImpl;

  public java.util.List<javax.net.ssl.SNIServerName> getRequestedServerNames();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 956
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.requestedServerNames:Ljava/util/List;
            ifnull 3
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.requestedServerNames:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 3
         1: .line 958
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.requestedServerNames:Ljava/util/List;
         2: .line 957
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
         3: .line 961
      StackMap locals:
      StackMap stack:
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/security/ssl/SSLSessionImpl;
    Signature: ()Ljava/util/List<Ljavax/net/ssl/SNIServerName;>;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.security.ssl.SSLSessionImpl this
         0: .line 967
            new java.lang.StringBuilder
            dup
            ldc "[Session-"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield sun.security.ssl.SSLSessionImpl.sessionCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         1: .line 968
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual sun.security.ssl.SSLSessionImpl.getCipherSuite:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 969
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 967
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // sun.security.ssl.SSLSessionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/security/ssl/SSLSessionImpl;
}
SourceFile: "SSLSessionImpl.java"
InnerClasses:
  final KeyExchange = sun.security.ssl.CipherSuite$KeyExchange of sun.security.ssl.CipherSuite