class sun.net.www.protocol.http.DigestAuthentication$Parameters implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.net.www.protocol.http.DigestAuthentication$Parameters
  super_class: java.lang.Object
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -3584543755194526252

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

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

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

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

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

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

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

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

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

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

  private static java.util.Random random;
    descriptor: Ljava/util/Random;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  int cnonce_count;
    descriptor: I
    flags: (0x0000) 

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 101
            new java.util.Random
            dup
            invokespecial java.util.Random.<init>:()V
            putstatic sun.net.www.protocol.http.DigestAuthentication$Parameters.random:Ljava/util/Random;
         1: .line 102
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 104
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 86
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
         2: .line 92
            aload 0 /* this */
            iconst_1
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
         3: .line 123
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
         4: .line 105
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.serverQop:Z
         5: .line 106
            aload 0 /* this */
            aconst_null
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.opaque:Ljava/lang/String;
         6: .line 107
            aload 0 /* this */
            aconst_null
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.algorithm:Ljava/lang/String;
         7: .line 108
            aload 0 /* this */
            aconst_null
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cachedHA1:Ljava/lang/String;
         8: .line 109
            aload 0 /* this */
            aconst_null
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
         9: .line 110
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setNewCnonce:()V
        10: .line 111
            return
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  boolean authQop();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 114
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.serverQop:Z
            ireturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void incrementNC();
    descriptor: ()V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 117
            aload 0 /* this */
            dup
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
            iconst_1
            iadd
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
         1: .line 118
            return
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized int getNCCount();
    descriptor: ()I
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 120
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
            ireturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized java.lang.String getCnonce();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 127
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
            iconst_5
            if_icmplt 2
         1: .line 128
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.http.DigestAuthentication$Parameters.setNewCnonce:()V
         2: .line 130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
            iconst_1
            iadd
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
         3: .line 131
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setNewCnonce();
    descriptor: ()V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=6, locals=5, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 134
            bipush 20
            newarray 8
            astore 1 /* bb */
        start local 1 // byte[] bb
         1: .line 135
            bipush 40
            newarray 5
            astore 2 /* cc */
        start local 2 // char[] cc
         2: .line 136
            getstatic sun.net.www.protocol.http.DigestAuthentication$Parameters.random:Ljava/util/Random;
            aload 1 /* bb */
            invokevirtual java.util.Random.nextBytes:([B)V
         3: .line 137
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 9
         5: .line 138
      StackMap locals: byte[] char[] int
      StackMap stack:
            aload 1 /* bb */
            iload 3 /* i */
            baload
            sipush 128
            iadd
            istore 4 /* x */
        start local 4 // int x
         6: .line 139
            aload 2 /* cc */
            iload 3 /* i */
            iconst_2
            imul
            bipush 65
            iload 4 /* x */
            bipush 16
            idiv
            iadd
            i2c
            castore
         7: .line 140
            aload 2 /* cc */
            iload 3 /* i */
            iconst_2
            imul
            iconst_1
            iadd
            bipush 65
            iload 4 /* x */
            bipush 16
            irem
            iadd
            i2c
            castore
        end local 4 // int x
         8: .line 137
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            bipush 20
            if_icmplt 5
        end local 3 // int i
        10: .line 142
            aload 0 /* this */
            new java.lang.String
            dup
            aload 2 /* cc */
            iconst_0
            bipush 40
            invokespecial java.lang.String.<init>:([CII)V
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce:Ljava/lang/String;
        11: .line 143
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cnonce_count:I
        12: .line 144
            aload 0 /* this */
            iconst_1
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
        13: .line 145
            return
        end local 2 // char[] cc
        end local 1 // byte[] bb
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            1   14     1    bb  [B
            2   14     2    cc  [C
            4   10     3     i  I
            6    8     4     x  I

  synchronized void setQop(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String qop
         0: .line 148
            aload 1 /* qop */
            ifnull 9
         1: .line 149
            aload 1 /* qop */
            ldc ","
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 2 /* items */
        start local 2 // java.lang.String[] items
         2: .line 150
            aload 2 /* items */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 8
      StackMap locals: sun.net.www.protocol.http.DigestAuthentication$Parameters java.lang.String java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* item */
        start local 3 // java.lang.String item
         4: .line 151
            ldc "auth"
            aload 3 /* item */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 7
         5: .line 152
            aload 0 /* this */
            iconst_1
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.serverQop:Z
         6: .line 153
            return
        end local 3 // java.lang.String item
         7: .line 150
      StackMap locals:
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
         8: iload 4
            iload 5
            if_icmplt 3
        end local 2 // java.lang.String[] items
         9: .line 157
      StackMap locals: sun.net.www.protocol.http.DigestAuthentication$Parameters java.lang.String
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.serverQop:Z
        10: .line 158
            return
        end local 1 // java.lang.String qop
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0   11     1    qop  Ljava/lang/String;
            2    9     2  items  [Ljava/lang/String;
            4    7     3   item  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      qop   

  synchronized java.lang.String getOpaque();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 160
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.opaque:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setOpaque(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String s
         0: .line 161
            aload 0 /* this */
            aload 1 /* s */
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.opaque:Ljava/lang/String;
            return
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0    1     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  synchronized java.lang.String getNonce();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 163
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setNonce(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String s
         0: .line 166
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
            ifnull 1
            aload 1 /* s */
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
         1: .line 167
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* s */
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.nonce:Ljava/lang/String;
         2: .line 168
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.NCcount:I
         3: .line 169
            aload 0 /* this */
            iconst_1
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
         4: .line 171
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0    5     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  synchronized java.lang.String getCachedHA1();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 174
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
            ifeq 2
         1: .line 175
            aconst_null
            areturn
         2: .line 177
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cachedHA1:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setCachedHA1(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String s
         0: .line 182
            aload 0 /* this */
            aload 1 /* s */
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.cachedHA1:Ljava/lang/String;
         1: .line 183
            aload 0 /* this */
            iconst_0
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.redoCachedHA1:Z
         2: .line 184
            return
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0    3     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  synchronized java.lang.String getAlgorithm();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
         0: .line 186
            aload 0 /* this */
            getfield sun.net.www.protocol.http.DigestAuthentication$Parameters.algorithm:Ljava/lang/String;
            areturn
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;

  synchronized void setAlgorithm(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
        start local 1 // java.lang.String s
         0: .line 187
            aload 0 /* this */
            aload 1 /* s */
            putfield sun.net.www.protocol.http.DigestAuthentication$Parameters.algorithm:Ljava/lang/String;
            return
        end local 1 // java.lang.String s
        end local 0 // sun.net.www.protocol.http.DigestAuthentication$Parameters this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/DigestAuthentication$Parameters;
            0    1     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     
}
SourceFile: "DigestAuthentication.java"
NestHost: sun.net.www.protocol.http.DigestAuthentication
InnerClasses:
  Parameters = sun.net.www.protocol.http.DigestAuthentication$Parameters of sun.net.www.protocol.http.DigestAuthentication