class sun.net.www.protocol.http.DigestAuthentication extends sun.net.www.protocol.http.AuthenticationInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.net.www.protocol.http.DigestAuthentication
  super_class: sun.net.www.protocol.http.AuthenticationInfo
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 100

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

  private static final java.lang.String compatPropName;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "http.auth.digest.quoteParameters"

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

  sun.net.www.protocol.http.DigestAuthentication$Parameters params;
    descriptor: Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
    flags: (0x0000) 

  private static final char[] charArray;
    descriptor: [C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String[] zeroPad;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 51
            ldc Lsun/net/www/protocol/http/DigestAuthentication;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic sun.net.www.protocol.http.DigestAuthentication.$assertionsDisabled:Z
         3: .line 65
            new sun.net.www.protocol.http.DigestAuthentication$1
            dup
            invokespecial sun.net.www.protocol.http.DigestAuthentication$1.<init>:()V
         4: .line 64
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            astore 0 /* b */
        start local 0 // java.lang.Boolean b
         5: .line 71
            aload 0 /* b */
            ifnonnull 6
            iconst_0
            goto 7
      StackMap locals: java.lang.Boolean
      StackMap stack:
         6: aload 0 /* b */
            invokevirtual java.lang.Boolean.booleanValue:()Z
      StackMap locals:
      StackMap stack: int
         7: putstatic sun.net.www.protocol.http.DigestAuthentication.delimCompatFlag:Z
        end local 0 // java.lang.Boolean b
         8: .line 512
            bipush 16
            newarray 5
            dup
            iconst_0
         9: .line 513
            bipush 48
            castore
            dup
            iconst_1
            bipush 49
            castore
            dup
            iconst_2
            bipush 50
            castore
            dup
            iconst_3
            bipush 51
            castore
            dup
            iconst_4
            bipush 52
            castore
            dup
            iconst_5
            bipush 53
            castore
            dup
            bipush 6
            bipush 54
            castore
            dup
            bipush 7
            bipush 55
            castore
            dup
            bipush 8
        10: .line 514
            bipush 56
            castore
            dup
            bipush 9
            bipush 57
            castore
            dup
            bipush 10
            bipush 97
            castore
            dup
            bipush 11
            bipush 98
            castore
            dup
            bipush 12
            bipush 99
            castore
            dup
            bipush 13
            bipush 100
            castore
            dup
            bipush 14
            bipush 101
            castore
            dup
            bipush 15
            bipush 102
            castore
        11: .line 512
            putstatic sun.net.www.protocol.http.DigestAuthentication.charArray:[C
        12: .line 517
            bipush 8
            anewarray java.lang.String
            dup
            iconst_0
        13: .line 519
            ldc "00000000"
            aastore
            dup
            iconst_1
            ldc "0000000"
            aastore
            dup
            iconst_2
            ldc "000000"
            aastore
            dup
            iconst_3
            ldc "00000"
            aastore
            dup
            iconst_4
            ldc "0000"
            aastore
            dup
            iconst_5
            ldc "000"
            aastore
            dup
            bipush 6
            ldc "00"
            aastore
            dup
            bipush 7
            ldc "0"
            aastore
        14: .line 517
            putstatic sun.net.www.protocol.http.DigestAuthentication.zeroPad:[Ljava/lang/String;
        15: .line 520
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            5    8     0     b  Ljava/lang/Boolean;

  public void <init>(boolean, java.net.URL, java.lang.String, java.lang.String, java.net.PasswordAuthentication, sun.net.www.protocol.http.DigestAuthentication$Parameters, java.lang.String);
    descriptor: (ZLjava/net/URL;Ljava/lang/String;Ljava/lang/String;Ljava/net/PasswordAuthentication;Lsun/net/www/protocol/http/DigestAuthentication$Parameters;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=8
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // boolean isProxy
        start local 2 // java.net.URL url
        start local 3 // java.lang.String realm
        start local 4 // java.lang.String authMethod
        start local 5 // java.net.PasswordAuthentication pw
        start local 6 // sun.net.www.protocol.http.DigestAuthentication$Parameters params
        start local 7 // java.lang.String authenticatorKey
         0: .line 198
            aload 0 /* this */
            iload 1 /* isProxy */
            ifeq 1
            bipush 112
            goto 2
      StackMap locals:
      StackMap stack: uninitialized-this
         1: bipush 115
         2: .line 199
      StackMap locals: uninitialized-this int java.net.URL java.lang.String java.lang.String java.net.PasswordAuthentication sun.net.www.protocol.http.DigestAuthentication$Parameters java.lang.String
      StackMap stack: uninitialized-this int
            getstatic sun.net.www.protocol.http.AuthScheme.DIGEST:Lsun/net/www/protocol/http/AuthScheme;
         3: .line 200
            aload 2 /* url */
         4: .line 201
            aload 3 /* realm */
         5: .line 202
            aload 7 /* authenticatorKey */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokespecial sun.net.www.protocol.http.AuthenticationInfo.<init>:(CLsun/net/www/protocol/http/AuthScheme;Ljava/net/URL;Ljava/lang/String;Ljava/lang/String;)V
         6: .line 203
            aload 0 /* this */
            aload 4 /* authMethod */
            putfield sun.net.www.protocol.http.DigestAuthentication.authMethod:Ljava/lang/String;
         7: .line 204
            aload 0 /* this */
            aload 5 /* pw */
            putfield sun.net.www.protocol.http.DigestAuthentication.pw:Ljava/net/PasswordAuthentication;
         8: .line 205
            aload 0 /* this */
            aload 6 /* params */
            putfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
         9: .line 206
            return
        end local 7 // java.lang.String authenticatorKey
        end local 6 // sun.net.www.protocol.http.DigestAuthentication$Parameters params
        end local 5 // java.net.PasswordAuthentication pw
        end local 4 // java.lang.String authMethod
        end local 3 // java.lang.String realm
        end local 2 // java.net.URL url
        end local 1 // boolean isProxy
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   10     0              this  Lsun/net/www/protocol/http/DigestAuthentication;
            0   10     1           isProxy  Z
            0   10     2               url  Ljava/net/URL;
            0   10     3             realm  Ljava/lang/String;
            0   10     4        authMethod  Ljava/lang/String;
            0   10     5                pw  Ljava/net/PasswordAuthentication;
            0   10     6            params  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0   10     7  authenticatorKey  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      isProxy           
      url               
      realm             
      authMethod        
      pw                
      params            
      authenticatorKey  

  public void <init>(boolean, java.lang.String, int, java.lang.String, java.lang.String, java.net.PasswordAuthentication, sun.net.www.protocol.http.DigestAuthentication$Parameters, java.lang.String);
    descriptor: (ZLjava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/net/PasswordAuthentication;Lsun/net/www/protocol/http/DigestAuthentication$Parameters;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=9
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // boolean isProxy
        start local 2 // java.lang.String host
        start local 3 // int port
        start local 4 // java.lang.String realm
        start local 5 // java.lang.String authMethod
        start local 6 // java.net.PasswordAuthentication pw
        start local 7 // sun.net.www.protocol.http.DigestAuthentication$Parameters params
        start local 8 // java.lang.String authenticatorKey
         0: .line 211
            aload 0 /* this */
            iload 1 /* isProxy */
            ifeq 1
            bipush 112
            goto 2
      StackMap locals:
      StackMap stack: uninitialized-this
         1: bipush 115
         2: .line 212
      StackMap locals: uninitialized-this int java.lang.String int java.lang.String java.lang.String java.net.PasswordAuthentication sun.net.www.protocol.http.DigestAuthentication$Parameters java.lang.String
      StackMap stack: uninitialized-this int
            getstatic sun.net.www.protocol.http.AuthScheme.DIGEST:Lsun/net/www/protocol/http/AuthScheme;
         3: .line 213
            aload 2 /* host */
         4: .line 214
            iload 3 /* port */
         5: .line 215
            aload 4 /* realm */
         6: .line 216
            aload 8 /* authenticatorKey */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokespecial sun.net.www.protocol.http.AuthenticationInfo.<init>:(CLsun/net/www/protocol/http/AuthScheme;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
         7: .line 217
            aload 0 /* this */
            aload 5 /* authMethod */
            putfield sun.net.www.protocol.http.DigestAuthentication.authMethod:Ljava/lang/String;
         8: .line 218
            aload 0 /* this */
            aload 6 /* pw */
            putfield sun.net.www.protocol.http.DigestAuthentication.pw:Ljava/net/PasswordAuthentication;
         9: .line 219
            aload 0 /* this */
            aload 7 /* params */
            putfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
        10: .line 220
            return
        end local 8 // java.lang.String authenticatorKey
        end local 7 // sun.net.www.protocol.http.DigestAuthentication$Parameters params
        end local 6 // java.net.PasswordAuthentication pw
        end local 5 // java.lang.String authMethod
        end local 4 // java.lang.String realm
        end local 3 // int port
        end local 2 // java.lang.String host
        end local 1 // boolean isProxy
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   11     0              this  Lsun/net/www/protocol/http/DigestAuthentication;
            0   11     1           isProxy  Z
            0   11     2              host  Ljava/lang/String;
            0   11     3              port  I
            0   11     4             realm  Ljava/lang/String;
            0   11     5        authMethod  Ljava/lang/String;
            0   11     6                pw  Ljava/net/PasswordAuthentication;
            0   11     7            params  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0   11     8  authenticatorKey  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      isProxy           
      host              
      port              
      realm             
      authMethod        
      pw                
      params            
      authenticatorKey  

  public boolean supportsPreemptiveAuthorization();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
         0: .line 227
            iconst_1
            ireturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication;

  public java.lang.String getHeaderValue(java.net.URL, java.lang.String);
    descriptor: (Ljava/net/URL;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // java.net.URL url
        start local 2 // java.lang.String method
         0: .line 246
            aload 0 /* this */
            aload 1 /* url */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            aload 2 /* method */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.getHeaderValueImpl:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 2 // java.lang.String method
        end local 1 // java.net.URL url
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lsun/net/www/protocol/http/DigestAuthentication;
            0    1     1     url  Ljava/net/URL;
            0    1     2  method  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      url     
      method  

  java.lang.String getHeaderValue(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // java.lang.String requestURI
        start local 2 // java.lang.String method
         0: .line 264
            aload 0 /* this */
            aload 1 /* requestURI */
            aload 2 /* method */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.getHeaderValueImpl:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 2 // java.lang.String method
        end local 1 // java.lang.String requestURI
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lsun/net/www/protocol/http/DigestAuthentication;
            0    1     1  requestURI  Ljava/lang/String;
            0    1     2      method  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      requestURI  
      method      

  public boolean isAuthorizationStale(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // java.lang.String header
         0: .line 277
            new sun.net.www.HeaderParser
            dup
            aload 1 /* header */
            invokespecial sun.net.www.HeaderParser.<init>:(Ljava/lang/String;)V
            astore 2 /* p */
        start local 2 // sun.net.www.HeaderParser p
         1: .line 278
            aload 2 /* p */
            ldc "stale"
            invokevirtual sun.net.www.HeaderParser.findValue:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* s */
        start local 3 // java.lang.String s
         2: .line 279
            aload 3 /* s */
            ifnull 3
            aload 3 /* s */
            ldc "true"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         3: .line 280
      StackMap locals: sun.net.www.HeaderParser java.lang.String
      StackMap stack:
            iconst_0
            ireturn
         4: .line 281
      StackMap locals:
      StackMap stack:
            aload 2 /* p */
            ldc "nonce"
            invokevirtual sun.net.www.HeaderParser.findValue:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* newNonce */
        start local 4 // java.lang.String newNonce
         5: .line 282
            aload 4 /* newNonce */
            ifnull 6
            ldc ""
            aload 4 /* newNonce */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 283
      StackMap locals: java.lang.String
      StackMap stack:
            iconst_0
            ireturn
         7: .line 285
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            aload 4 /* newNonce */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setNonce:(Ljava/lang/String;)V
         8: .line 286
            iconst_1
            ireturn
        end local 4 // java.lang.String newNonce
        end local 3 // java.lang.String s
        end local 2 // sun.net.www.HeaderParser p
        end local 1 // java.lang.String header
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lsun/net/www/protocol/http/DigestAuthentication;
            0    9     1    header  Ljava/lang/String;
            1    9     2         p  Lsun/net/www/HeaderParser;
            2    9     3         s  Ljava/lang/String;
            5    9     4  newNonce  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      header  

  public boolean setHeaders(sun.net.www.protocol.http.HttpURLConnection, sun.net.www.HeaderParser, java.lang.String);
    descriptor: (Lsun/net/www/protocol/http/HttpURLConnection;Lsun/net/www/HeaderParser;Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // sun.net.www.protocol.http.HttpURLConnection conn
        start local 2 // sun.net.www.HeaderParser p
        start local 3 // java.lang.String raw
         0: .line 298
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            aload 2 /* p */
            ldc "nonce"
            invokevirtual sun.net.www.HeaderParser.findValue:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setNonce:(Ljava/lang/String;)V
         1: .line 299
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            aload 2 /* p */
            ldc "opaque"
            invokevirtual sun.net.www.HeaderParser.findValue:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setOpaque:(Ljava/lang/String;)V
         2: .line 300
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            aload 2 /* p */
            ldc "qop"
            invokevirtual sun.net.www.HeaderParser.findValue:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setQop:(Ljava/lang/String;)V
         3: .line 302
            ldc ""
            astore 4 /* uri */
        start local 4 // java.lang.String uri
         4: .line 304
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.type:C
            bipush 112
            if_icmpne 9
         5: .line 305
            aload 1 /* conn */
            invokevirtual sun.net.www.protocol.http.HttpURLConnection.tunnelState:()Lsun/net/www/protocol/http/HttpURLConnection$TunnelState;
            getstatic sun.net.www.protocol.http.HttpURLConnection$TunnelState.SETUP:Lsun/net/www/protocol/http/HttpURLConnection$TunnelState;
            if_acmpne 9
         6: .line 306
            aload 1 /* conn */
            invokevirtual sun.net.www.protocol.http.HttpURLConnection.getURL:()Ljava/net/URL;
            invokestatic sun.net.www.protocol.http.HttpURLConnection.connectRequestURI:(Ljava/net/URL;)Ljava/lang/String;
            astore 4 /* uri */
         7: .line 307
            getstatic sun.net.www.protocol.http.HttpURLConnection.HTTP_CONNECT:Ljava/lang/String;
            astore 5 /* method */
        start local 5 // java.lang.String method
         8: .line 308
            goto 13
        end local 5 // java.lang.String method
         9: .line 310
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* conn */
            invokevirtual sun.net.www.protocol.http.HttpURLConnection.getRequestURI:()Ljava/lang/String;
            astore 4 /* uri */
        10: .line 311
            goto 12
      StackMap locals:
      StackMap stack: java.io.IOException
        11: pop
        12: .line 312
      StackMap locals:
      StackMap stack:
            aload 1 /* conn */
            invokevirtual sun.net.www.protocol.http.HttpURLConnection.getMethod:()Ljava/lang/String;
            astore 5 /* method */
        start local 5 // java.lang.String method
        13: .line 315
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
            ifnull 14
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.authMethod:Ljava/lang/String;
            ifnull 14
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.pw:Ljava/net/PasswordAuthentication;
            ifnull 14
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.realm:Ljava/lang/String;
            ifnonnull 15
        14: .line 316
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        15: .line 318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.authMethod:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmplt 19
        16: .line 322
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.authMethod:Ljava/lang/String;
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toUpperCase:(C)C
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        17: .line 323
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.authMethod:Ljava/lang/String;
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        18: .line 322
            putfield sun.net.www.protocol.http.DigestAuthentication.authMethod:Ljava/lang/String;
        19: .line 325
      StackMap locals:
      StackMap stack:
            aload 2 /* p */
            ldc "algorithm"
            invokevirtual sun.net.www.HeaderParser.findValue:(Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* algorithm */
        start local 6 // java.lang.String algorithm
        20: .line 326
            aload 6 /* algorithm */
            ifnull 21
            ldc ""
            aload 6 /* algorithm */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 22
        21: .line 327
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "MD5"
            astore 6 /* algorithm */
        22: .line 329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            aload 6 /* algorithm */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setAlgorithm:(Ljava/lang/String;)V
        23: .line 335
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.authQop:()Z
            ifeq 25
        24: .line 336
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setNewCnonce:()V
        25: .line 339
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* uri */
            aload 5 /* method */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.getHeaderValueImpl:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* value */
        start local 7 // java.lang.String value
        26: .line 340
            aload 7 /* value */
            ifnull 29
        27: .line 341
            aload 1 /* conn */
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.getHeaderName:()Ljava/lang/String;
            aload 7 /* value */
            invokevirtual sun.net.www.protocol.http.HttpURLConnection.setAuthenticationProperty:(Ljava/lang/String;Ljava/lang/String;)V
        28: .line 342
            iconst_1
            ireturn
        29: .line 344
      StackMap locals: java.lang.String
      StackMap stack:
            iconst_0
            ireturn
        end local 7 // java.lang.String value
        end local 6 // java.lang.String algorithm
        end local 5 // java.lang.String method
        end local 4 // java.lang.String uri
        end local 3 // java.lang.String raw
        end local 2 // sun.net.www.HeaderParser p
        end local 1 // sun.net.www.protocol.http.HttpURLConnection conn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   30     0       this  Lsun/net/www/protocol/http/DigestAuthentication;
            0   30     1       conn  Lsun/net/www/protocol/http/HttpURLConnection;
            0   30     2          p  Lsun/net/www/HeaderParser;
            0   30     3        raw  Ljava/lang/String;
            4   30     4        uri  Ljava/lang/String;
            8    9     5     method  Ljava/lang/String;
           13   30     5     method  Ljava/lang/String;
           20   30     6  algorithm  Ljava/lang/String;
           26   30     7      value  Ljava/lang/String;
      Exception table:
        from    to  target  type
           9    10      11  Class java.io.IOException
    MethodParameters:
      Name  Flags
      conn  
      p     
      raw   

  private java.lang.String getHeaderValueImpl(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=16, args_size=3
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // java.lang.String uri
        start local 2 // java.lang.String method
         0: .line 353
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.pw:Ljava/net/PasswordAuthentication;
            invokevirtual java.net.PasswordAuthentication.getPassword:()[C
            astore 4 /* passwd */
        start local 4 // char[] passwd
         1: .line 354
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.authQop:()Z
            istore 5 /* qop */
        start local 5 // boolean qop
         2: .line 355
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getOpaque:()Ljava/lang/String;
            astore 6 /* opaque */
        start local 6 // java.lang.String opaque
         3: .line 356
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getCnonce:()Ljava/lang/String;
            astore 7 /* cnonce */
        start local 7 // java.lang.String cnonce
         4: .line 357
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getNonce:()Ljava/lang/String;
            astore 8 /* nonce */
        start local 8 // java.lang.String nonce
         5: .line 358
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getAlgorithm:()Ljava/lang/String;
            astore 9 /* algorithm */
        start local 9 // java.lang.String algorithm
         6: .line 359
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.incrementNC:()V
         7: .line 360
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getNCCount:()I
            istore 10 /* nccount */
        start local 10 // int nccount
         8: .line 361
            aconst_null
            astore 11 /* ncstring */
        start local 11 // java.lang.String ncstring
         9: .line 363
            iload 10 /* nccount */
            iconst_m1
            if_icmpeq 14
        10: .line 364
            iload 10 /* nccount */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            astore 11 /* ncstring */
        11: .line 365
            aload 11 /* ncstring */
            invokevirtual java.lang.String.length:()I
            istore 12 /* len */
        start local 12 // int len
        12: .line 366
            iload 12 /* len */
            bipush 8
            if_icmpge 14
        13: .line 367
            new java.lang.StringBuilder
            dup
            getstatic sun.net.www.protocol.http.DigestAuthentication.zeroPad:[Ljava/lang/String;
            iload 12 /* len */
            aaload
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 11 /* ncstring */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 11 /* ncstring */
        end local 12 // int len
        14: .line 371
      StackMap locals: sun.net.www.protocol.http.DigestAuthentication java.lang.String java.lang.String top char[] int java.lang.String java.lang.String java.lang.String java.lang.String int java.lang.String
      StackMap stack:
            aload 0 /* this */
            iconst_1
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.pw:Ljava/net/PasswordAuthentication;
            invokevirtual java.net.PasswordAuthentication.getUserName:()Ljava/lang/String;
            aload 4 /* passwd */
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.realm:Ljava/lang/String;
        15: .line 372
            aload 2 /* method */
            aload 1 /* uri */
            aload 8 /* nonce */
            aload 7 /* cnonce */
            aload 11 /* ncstring */
        16: .line 371
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.computeDigest:(ZLjava/lang/String;[CLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* response */
        start local 3 // java.lang.String response
        17: .line 373
            goto 20
        end local 3 // java.lang.String response
      StackMap locals:
      StackMap stack: java.security.NoSuchAlgorithmException
        18: pop
        19: .line 374
            aconst_null
            areturn
        start local 3 // java.lang.String response
        20: .line 377
      StackMap locals: sun.net.www.protocol.http.DigestAuthentication java.lang.String java.lang.String java.lang.String char[] int java.lang.String java.lang.String java.lang.String java.lang.String int java.lang.String
      StackMap stack:
            ldc "\""
            astore 12 /* ncfield */
        start local 12 // java.lang.String ncfield
        21: .line 378
            iload 5 /* qop */
            ifeq 23
        22: .line 379
            new java.lang.StringBuilder
            dup
            ldc "\", nc="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 11 /* ncstring */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 12 /* ncfield */
        23: .line 384
      StackMap locals: java.lang.String
      StackMap stack:
            getstatic sun.net.www.protocol.http.DigestAuthentication.delimCompatFlag:Z
            ifeq 27
        24: .line 386
            new java.lang.StringBuilder
            dup
            ldc ", algorithm=\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* algorithm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 13 /* algoS */
        start local 13 // java.lang.String algoS
        25: .line 387
            ldc ", qop=\"auth\""
            astore 14 /* qopS */
        start local 14 // java.lang.String qopS
        26: .line 388
            goto 29
        end local 14 // java.lang.String qopS
        end local 13 // java.lang.String algoS
        27: .line 390
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc ", algorithm="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* algorithm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 13 /* algoS */
        start local 13 // java.lang.String algoS
        28: .line 391
            ldc ", qop=auth"
            astore 14 /* qopS */
        start local 14 // java.lang.String qopS
        29: .line 394
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.authMethod:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        30: .line 395
            ldc " username=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.pw:Ljava/net/PasswordAuthentication;
            invokevirtual java.net.PasswordAuthentication.getUserName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        31: .line 396
            ldc "\", realm=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.realm:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        32: .line 397
            ldc "\", nonce=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* nonce */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        33: .line 398
            aload 12 /* ncfield */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        34: .line 399
            ldc ", uri=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* uri */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        35: .line 400
            ldc "\", response=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* response */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        36: .line 401
            aload 13 /* algoS */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        37: .line 394
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 15 /* value */
        start local 15 // java.lang.String value
        38: .line 402
            aload 6 /* opaque */
            ifnull 40
        39: .line 403
            new java.lang.StringBuilder
            dup
            aload 15 /* value */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ", opaque=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* opaque */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 15 /* value */
        40: .line 405
      StackMap locals: java.lang.String
      StackMap stack:
            aload 7 /* cnonce */
            ifnull 42
        41: .line 406
            new java.lang.StringBuilder
            dup
            aload 15 /* value */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ", cnonce=\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* cnonce */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 15 /* value */
        42: .line 408
      StackMap locals:
      StackMap stack:
            iload 5 /* qop */
            ifeq 44
        43: .line 409
            new java.lang.StringBuilder
            dup
            aload 15 /* value */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 14 /* qopS */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 15 /* value */
        44: .line 411
      StackMap locals:
      StackMap stack:
            aload 15 /* value */
            areturn
        end local 15 // java.lang.String value
        end local 14 // java.lang.String qopS
        end local 13 // java.lang.String algoS
        end local 12 // java.lang.String ncfield
        end local 11 // java.lang.String ncstring
        end local 10 // int nccount
        end local 9 // java.lang.String algorithm
        end local 8 // java.lang.String nonce
        end local 7 // java.lang.String cnonce
        end local 6 // java.lang.String opaque
        end local 5 // boolean qop
        end local 4 // char[] passwd
        end local 3 // java.lang.String response
        end local 2 // java.lang.String method
        end local 1 // java.lang.String uri
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   45     0       this  Lsun/net/www/protocol/http/DigestAuthentication;
            0   45     1        uri  Ljava/lang/String;
            0   45     2     method  Ljava/lang/String;
           17   18     3   response  Ljava/lang/String;
           20   45     3   response  Ljava/lang/String;
            1   45     4     passwd  [C
            2   45     5        qop  Z
            3   45     6     opaque  Ljava/lang/String;
            4   45     7     cnonce  Ljava/lang/String;
            5   45     8      nonce  Ljava/lang/String;
            6   45     9  algorithm  Ljava/lang/String;
            8   45    10    nccount  I
            9   45    11   ncstring  Ljava/lang/String;
           12   14    12        len  I
           21   45    12    ncfield  Ljava/lang/String;
           25   27    13      algoS  Ljava/lang/String;
           28   45    13      algoS  Ljava/lang/String;
           26   27    14       qopS  Ljava/lang/String;
           29   45    14       qopS  Ljava/lang/String;
           38   45    15      value  Ljava/lang/String;
      Exception table:
        from    to  target  type
          14    17      18  Class java.security.NoSuchAlgorithmException
    MethodParameters:
        Name  Flags
      uri     
      method  

  public void checkResponse(java.lang.String, java.lang.String, java.net.URL);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/net/URL;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // java.lang.String header
        start local 2 // java.lang.String method
        start local 3 // java.net.URL url
         0: .line 416
            aload 0 /* this */
            aload 1 /* header */
            aload 2 /* method */
            aload 3 /* url */
            invokevirtual java.net.URL.getFile:()Ljava/lang/String;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.checkResponse:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         1: .line 417
            return
        end local 3 // java.net.URL url
        end local 2 // java.lang.String method
        end local 1 // java.lang.String header
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lsun/net/www/protocol/http/DigestAuthentication;
            0    2     1  header  Ljava/lang/String;
            0    2     2  method  Ljava/lang/String;
            0    2     3     url  Ljava/net/URL;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      header  
      method  
      url     

  public void checkResponse(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=14, args_size=4
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // java.lang.String header
        start local 2 // java.lang.String method
        start local 3 // java.lang.String uri
         0: .line 421
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.pw:Ljava/net/PasswordAuthentication;
            invokevirtual java.net.PasswordAuthentication.getPassword:()[C
            astore 4 /* passwd */
        start local 4 // char[] passwd
         1: .line 422
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.pw:Ljava/net/PasswordAuthentication;
            invokevirtual java.net.PasswordAuthentication.getUserName:()Ljava/lang/String;
            astore 5 /* username */
        start local 5 // java.lang.String username
         2: .line 423
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.authQop:()Z
            pop
         3: .line 424
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getOpaque:()Ljava/lang/String;
            pop
         4: .line 425
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce:Ljava/lang/String;
            astore 6 /* cnonce */
        start local 6 // java.lang.String cnonce
         5: .line 426
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getNonce:()Ljava/lang/String;
            astore 7 /* nonce */
        start local 7 // java.lang.String nonce
         6: .line 427
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getAlgorithm:()Ljava/lang/String;
            pop
         7: .line 428
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getNCCount:()I
            istore 8 /* nccount */
        start local 8 // int nccount
         8: .line 429
            aconst_null
            astore 9 /* ncstring */
        start local 9 // java.lang.String ncstring
         9: .line 431
            aload 1 /* header */
            ifnonnull 11
        10: .line 432
            new java.net.ProtocolException
            dup
            ldc "No authentication information in response"
            invokespecial java.net.ProtocolException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 435
      StackMap locals: sun.net.www.protocol.http.DigestAuthentication java.lang.String java.lang.String java.lang.String char[] java.lang.String java.lang.String java.lang.String int java.lang.String
      StackMap stack:
            iload 8 /* nccount */
            iconst_m1
            if_icmpeq 16
        12: .line 436
            iload 8 /* nccount */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
            astore 9 /* ncstring */
        13: .line 437
            aload 9 /* ncstring */
            invokevirtual java.lang.String.length:()I
            istore 10 /* len */
        start local 10 // int len
        14: .line 438
            iload 10 /* len */
            bipush 8
            if_icmpge 16
        15: .line 439
            new java.lang.StringBuilder
            dup
            getstatic sun.net.www.protocol.http.DigestAuthentication.zeroPad:[Ljava/lang/String;
            iload 10 /* len */
            aaload
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* ncstring */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 9 /* ncstring */
        end local 10 // int len
        16: .line 442
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            aload 5 /* username */
            aload 4 /* passwd */
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.realm:Ljava/lang/String;
        17: .line 443
            aload 2 /* method */
            aload 3 /* uri */
            aload 7 /* nonce */
            aload 6 /* cnonce */
            aload 9 /* ncstring */
        18: .line 442
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.computeDigest:(ZLjava/lang/String;[CLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* expected */
        start local 10 // java.lang.String expected
        19: .line 444
            new sun.net.www.HeaderParser
            dup
            aload 1 /* header */
            invokespecial sun.net.www.HeaderParser.<init>:(Ljava/lang/String;)V
            astore 11 /* p */
        start local 11 // sun.net.www.HeaderParser p
        20: .line 445
            aload 11 /* p */
            ldc "rspauth"
            invokevirtual sun.net.www.HeaderParser.findValue:(Ljava/lang/String;)Ljava/lang/String;
            astore 12 /* rspauth */
        start local 12 // java.lang.String rspauth
        21: .line 446
            aload 12 /* rspauth */
            ifnonnull 23
        22: .line 447
            new java.net.ProtocolException
            dup
            ldc "No digest in response"
            invokespecial java.net.ProtocolException.<init>:(Ljava/lang/String;)V
            athrow
        23: .line 449
      StackMap locals: java.lang.String sun.net.www.HeaderParser java.lang.String
      StackMap stack:
            aload 12 /* rspauth */
            aload 10 /* expected */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 25
        24: .line 450
            new java.net.ProtocolException
            dup
            ldc "Response digest invalid"
            invokespecial java.net.ProtocolException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 453
      StackMap locals:
      StackMap stack:
            aload 11 /* p */
            ldc "nextnonce"
            invokevirtual sun.net.www.HeaderParser.findValue:(Ljava/lang/String;)Ljava/lang/String;
            astore 13 /* nextnonce */
        start local 13 // java.lang.String nextnonce
        26: .line 454
            aload 13 /* nextnonce */
            ifnull 31
            ldc ""
            aload 13 /* nextnonce */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 31
        27: .line 455
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            aload 13 /* nextnonce */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setNonce:(Ljava/lang/String;)V
        end local 13 // java.lang.String nextnonce
        end local 12 // java.lang.String rspauth
        end local 11 // sun.net.www.HeaderParser p
        end local 10 // java.lang.String expected
        28: .line 458
            goto 31
      StackMap locals: sun.net.www.protocol.http.DigestAuthentication java.lang.String java.lang.String java.lang.String char[] java.lang.String java.lang.String java.lang.String int java.lang.String
      StackMap stack: java.security.NoSuchAlgorithmException
        29: pop
        30: .line 459
            new java.net.ProtocolException
            dup
            ldc "Unsupported algorithm in response"
            invokespecial java.net.ProtocolException.<init>:(Ljava/lang/String;)V
            athrow
        31: .line 461
      StackMap locals:
      StackMap stack:
            return
        end local 9 // java.lang.String ncstring
        end local 8 // int nccount
        end local 7 // java.lang.String nonce
        end local 6 // java.lang.String cnonce
        end local 5 // java.lang.String username
        end local 4 // char[] passwd
        end local 3 // java.lang.String uri
        end local 2 // java.lang.String method
        end local 1 // java.lang.String header
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   32     0       this  Lsun/net/www/protocol/http/DigestAuthentication;
            0   32     1     header  Ljava/lang/String;
            0   32     2     method  Ljava/lang/String;
            0   32     3        uri  Ljava/lang/String;
            1   32     4     passwd  [C
            2   32     5   username  Ljava/lang/String;
            5   32     6     cnonce  Ljava/lang/String;
            6   32     7      nonce  Ljava/lang/String;
            8   32     8    nccount  I
            9   32     9   ncstring  Ljava/lang/String;
           14   16    10        len  I
           19   28    10   expected  Ljava/lang/String;
           20   28    11          p  Lsun/net/www/HeaderParser;
           21   28    12    rspauth  Ljava/lang/String;
           26   28    13  nextnonce  Ljava/lang/String;
      Exception table:
        from    to  target  type
          16    28      29  Class java.security.NoSuchAlgorithmException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      header  
      method  
      uri     

  private java.lang.String computeDigest(boolean, java.lang.String, char[], java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String);
    descriptor: (ZLjava/lang/String;[CLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=19, args_size=10
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // boolean isRequest
        start local 2 // java.lang.String userName
        start local 3 // char[] password
        start local 4 // java.lang.String realm
        start local 5 // java.lang.String connMethod
        start local 6 // java.lang.String requestURI
        start local 7 // java.lang.String nonceString
        start local 8 // java.lang.String cnonce
        start local 9 // java.lang.String ncValue
         0: .line 472
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getAlgorithm:()Ljava/lang/String;
            astore 12 /* algorithm */
        start local 12 // java.lang.String algorithm
         1: .line 473
            aload 12 /* algorithm */
            ldc "MD5-sess"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            istore 13 /* md5sess */
        start local 13 // boolean md5sess
         2: .line 475
            iload 13 /* md5sess */
            ifeq 3
            ldc "MD5"
            goto 4
      StackMap locals: sun.net.www.protocol.http.DigestAuthentication int java.lang.String char[] java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String top top java.lang.String int
      StackMap stack:
         3: aload 12 /* algorithm */
      StackMap locals:
      StackMap stack: java.lang.String
         4: invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
            astore 14 /* md */
        start local 14 // java.security.MessageDigest md
         5: .line 477
            iload 13 /* md5sess */
            ifeq 14
         6: .line 478
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.getCachedHA1:()Ljava/lang/String;
            dup
            astore 11 /* HashA1 */
        start local 11 // java.lang.String HashA1
         7: ifnonnull 16
         8: .line 479
            new java.lang.StringBuilder
            dup
            aload 2 /* userName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* realm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 15 /* s */
        start local 15 // java.lang.String s
         9: .line 480
            aload 0 /* this */
            aload 15 /* s */
            aload 3 /* password */
            aload 14 /* md */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.encode:(Ljava/lang/String;[CLjava/security/MessageDigest;)Ljava/lang/String;
            astore 16 /* s1 */
        start local 16 // java.lang.String s1
        10: .line 481
            new java.lang.StringBuilder
            dup
            aload 16 /* s1 */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* nonceString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* cnonce */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 10 /* A1 */
        start local 10 // java.lang.String A1
        11: .line 482
            aload 0 /* this */
            aload 10 /* A1 */
            aconst_null
            aload 14 /* md */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.encode:(Ljava/lang/String;[CLjava/security/MessageDigest;)Ljava/lang/String;
            astore 11 /* HashA1 */
        12: .line 483
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            aload 11 /* HashA1 */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setCachedHA1:(Ljava/lang/String;)V
        end local 16 // java.lang.String s1
        end local 15 // java.lang.String s
        end local 10 // java.lang.String A1
        13: .line 485
            goto 16
        end local 11 // java.lang.String HashA1
        14: .line 486
      StackMap locals: java.security.MessageDigest
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* userName */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* realm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 10 /* A1 */
        start local 10 // java.lang.String A1
        15: .line 487
            aload 0 /* this */
            aload 10 /* A1 */
            aload 3 /* password */
            aload 14 /* md */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.encode:(Ljava/lang/String;[CLjava/security/MessageDigest;)Ljava/lang/String;
            astore 11 /* HashA1 */
        end local 10 // java.lang.String A1
        start local 11 // java.lang.String HashA1
        16: .line 491
      StackMap locals: sun.net.www.protocol.http.DigestAuthentication int java.lang.String char[] java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String top java.lang.String java.lang.String int java.security.MessageDigest
      StackMap stack:
            iload 1 /* isRequest */
            ifeq 19
        17: .line 492
            new java.lang.StringBuilder
            dup
            aload 5 /* connMethod */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* requestURI */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 15 /* A2 */
        start local 15 // java.lang.String A2
        18: .line 493
            goto 20
        end local 15 // java.lang.String A2
        19: .line 494
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc ":"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* requestURI */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 15 /* A2 */
        start local 15 // java.lang.String A2
        20: .line 496
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 15 /* A2 */
            aconst_null
            aload 14 /* md */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.encode:(Ljava/lang/String;[CLjava/security/MessageDigest;)Ljava/lang/String;
            astore 16 /* HashA2 */
        start local 16 // java.lang.String HashA2
        21: .line 499
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication.params:Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.authQop:()Z
            ifeq 26
        22: .line 500
            new java.lang.StringBuilder
            dup
            aload 11 /* HashA1 */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 7 /* nonceString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 9 /* ncValue */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        23: .line 501
            aload 8 /* cnonce */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":auth:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 16 /* HashA2 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        24: .line 500
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 17 /* combo */
        start local 17 // java.lang.String combo
        25: .line 503
            goto 30
        end local 17 // java.lang.String combo
        26: .line 504
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 11 /* HashA1 */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        27: .line 505
            aload 7 /* nonceString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        28: .line 506
            aload 16 /* HashA2 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        29: .line 504
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 17 /* combo */
        start local 17 // java.lang.String combo
        30: .line 508
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 17 /* combo */
            aconst_null
            aload 14 /* md */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication.encode:(Ljava/lang/String;[CLjava/security/MessageDigest;)Ljava/lang/String;
            astore 18 /* finalHash */
        start local 18 // java.lang.String finalHash
        31: .line 509
            aload 18 /* finalHash */
            areturn
        end local 18 // java.lang.String finalHash
        end local 17 // java.lang.String combo
        end local 16 // java.lang.String HashA2
        end local 15 // java.lang.String A2
        end local 14 // java.security.MessageDigest md
        end local 13 // boolean md5sess
        end local 12 // java.lang.String algorithm
        end local 11 // java.lang.String HashA1
        end local 9 // java.lang.String ncValue
        end local 8 // java.lang.String cnonce
        end local 7 // java.lang.String nonceString
        end local 6 // java.lang.String requestURI
        end local 5 // java.lang.String connMethod
        end local 4 // java.lang.String realm
        end local 3 // char[] password
        end local 2 // java.lang.String userName
        end local 1 // boolean isRequest
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   32     0         this  Lsun/net/www/protocol/http/DigestAuthentication;
            0   32     1    isRequest  Z
            0   32     2     userName  Ljava/lang/String;
            0   32     3     password  [C
            0   32     4        realm  Ljava/lang/String;
            0   32     5   connMethod  Ljava/lang/String;
            0   32     6   requestURI  Ljava/lang/String;
            0   32     7  nonceString  Ljava/lang/String;
            0   32     8       cnonce  Ljava/lang/String;
            0   32     9      ncValue  Ljava/lang/String;
           11   13    10           A1  Ljava/lang/String;
           15   16    10           A1  Ljava/lang/String;
            7   14    11       HashA1  Ljava/lang/String;
           16   32    11       HashA1  Ljava/lang/String;
            1   32    12    algorithm  Ljava/lang/String;
            2   32    13      md5sess  Z
            5   32    14           md  Ljava/security/MessageDigest;
            9   13    15            s  Ljava/lang/String;
           10   13    16           s1  Ljava/lang/String;
           18   19    15           A2  Ljava/lang/String;
           20   32    15           A2  Ljava/lang/String;
           21   32    16       HashA2  Ljava/lang/String;
           25   26    17        combo  Ljava/lang/String;
           30   32    17        combo  Ljava/lang/String;
           31   32    18    finalHash  Ljava/lang/String;
    Exceptions:
      throws java.security.NoSuchAlgorithmException
    MethodParameters:
             Name  Flags
      isRequest    
      userName     
      password     
      realm        
      connMethod   
      requestURI   
      nonceString  
      cnonce       
      ncValue      

  private java.lang.String encode(java.lang.String, char[], java.security.MessageDigest);
    descriptor: (Ljava/lang/String;[CLjava/security/MessageDigest;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // sun.net.www.protocol.http.DigestAuthentication this
        start local 1 // java.lang.String src
        start local 2 // char[] passwd
        start local 3 // java.security.MessageDigest md
         0: .line 524
            aload 3 /* md */
            aload 1 /* src */
            ldc "ISO-8859-1"
            invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
            invokevirtual java.security.MessageDigest.update:([B)V
         1: .line 525
            goto 4
      StackMap locals:
      StackMap stack: java.io.UnsupportedEncodingException
         2: pop
         3: .line 526
            getstatic sun.net.www.protocol.http.DigestAuthentication.$assertionsDisabled:Z
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 528
      StackMap locals:
      StackMap stack:
            aload 2 /* passwd */
            ifnull 13
         5: .line 529
            aload 2 /* passwd */
            arraylength
            newarray 8
            astore 4 /* passwdBytes */
        start local 4 // byte[] passwdBytes
         6: .line 530
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         7: goto 10
         8: .line 531
      StackMap locals: byte[] int
      StackMap stack:
            aload 4 /* passwdBytes */
            iload 5 /* i */
            aload 2 /* passwd */
            iload 5 /* i */
            caload
            i2b
            bastore
         9: .line 530
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            aload 2 /* passwd */
            arraylength
            if_icmplt 8
        end local 5 // int i
        11: .line 532
            aload 3 /* md */
            aload 4 /* passwdBytes */
            invokevirtual java.security.MessageDigest.update:([B)V
        12: .line 533
            aload 4 /* passwdBytes */
            iconst_0
            invokestatic java.util.Arrays.fill:([BB)V
        end local 4 // byte[] passwdBytes
        13: .line 535
      StackMap locals:
      StackMap stack:
            aload 3 /* md */
            invokevirtual java.security.MessageDigest.digest:()[B
            astore 4 /* digest */
        start local 4 // byte[] digest
        14: .line 537
            new java.lang.StringBuilder
            dup
            aload 4 /* digest */
            arraylength
            iconst_2
            imul
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 5 /* res */
        start local 5 // java.lang.StringBuilder res
        15: .line 538
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        16: goto 22
        17: .line 539
      StackMap locals: byte[] java.lang.StringBuilder int
      StackMap stack:
            aload 4 /* digest */
            iload 6 /* i */
            baload
            iconst_4
            iushr
            bipush 15
            iand
            istore 7 /* hashchar */
        start local 7 // int hashchar
        18: .line 540
            aload 5 /* res */
            getstatic sun.net.www.protocol.http.DigestAuthentication.charArray:[C
            iload 7 /* hashchar */
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        19: .line 541
            aload 4 /* digest */
            iload 6 /* i */
            baload
            bipush 15
            iand
            istore 7 /* hashchar */
        20: .line 542
            aload 5 /* res */
            getstatic sun.net.www.protocol.http.DigestAuthentication.charArray:[C
            iload 7 /* hashchar */
            caload
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 7 // int hashchar
        21: .line 538
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 6 /* i */
            aload 4 /* digest */
            arraylength
            if_icmplt 17
        end local 6 // int i
        23: .line 544
            aload 5 /* res */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.StringBuilder res
        end local 4 // byte[] digest
        end local 3 // java.security.MessageDigest md
        end local 2 // char[] passwd
        end local 1 // java.lang.String src
        end local 0 // sun.net.www.protocol.http.DigestAuthentication this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0         this  Lsun/net/www/protocol/http/DigestAuthentication;
            0   24     1          src  Ljava/lang/String;
            0   24     2       passwd  [C
            0   24     3           md  Ljava/security/MessageDigest;
            6   13     4  passwdBytes  [B
            7   11     5            i  I
           14   24     4       digest  [B
           15   24     5          res  Ljava/lang/StringBuilder;
           16   23     6            i  I
           18   21     7     hashchar  I
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.UnsupportedEncodingException
    MethodParameters:
        Name  Flags
      src     
      passwd  
      md      
}
SourceFile: "DigestAuthentication.java"
NestMembers:
  sun.net.www.protocol.http.DigestAuthentication$1  sun.net.www.protocol.http.DigestAuthentication$Parameters
InnerClasses:
  sun.net.www.protocol.http.DigestAuthentication$1
  Parameters = sun.net.www.protocol.http.DigestAuthentication$Parameters of sun.net.www.protocol.http.DigestAuthentication
  public final TunnelState = sun.net.www.protocol.http.HttpURLConnection$TunnelState of sun.net.www.protocol.http.HttpURLConnection