public class org.apache.http.impl.auth.DigestScheme extends org.apache.http.impl.auth.RFC2617Scheme
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.http.impl.auth.DigestScheme
  super_class: org.apache.http.impl.auth.RFC2617Scheme
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3883908186234566916

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

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

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

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

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

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

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

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

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

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 84
            bipush 16
            newarray 5
            dup
            iconst_0
         1: .line 85
            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
            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
         2: .line 86
            bipush 101
            castore
            dup
            bipush 15
            bipush 102
            castore
         3: .line 84
            putstatic org.apache.http.impl.auth.DigestScheme.HEXADECIMAL:[C
         4: .line 95
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.nio.charset.Charset);
    descriptor: (Ljava/nio/charset/Charset;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.http.impl.auth.DigestScheme this
        start local 1 // java.nio.charset.Charset credentialsCharset
         0: .line 107
            aload 0 /* this */
            aload 1 /* credentialsCharset */
            invokespecial org.apache.http.impl.auth.RFC2617Scheme.<init>:(Ljava/nio/charset/Charset;)V
         1: .line 108
            aload 0 /* this */
            iconst_0
            putfield org.apache.http.impl.auth.DigestScheme.complete:Z
         2: .line 109
            return
        end local 1 // java.nio.charset.Charset credentialsCharset
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    3     0                this  Lorg/apache/http/impl/auth/DigestScheme;
            0    3     1  credentialsCharset  Ljava/nio/charset/Charset;
    MethodParameters:
                    Name  Flags
      credentialsCharset  final

  public void <init>(org.apache.http.auth.ChallengeState);
    descriptor: (Lorg/apache/http/auth/ChallengeState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.http.impl.auth.DigestScheme this
        start local 1 // org.apache.http.auth.ChallengeState challengeState
         0: .line 121
            aload 0 /* this */
            aload 1 /* challengeState */
            invokespecial org.apache.http.impl.auth.RFC2617Scheme.<init>:(Lorg/apache/http/auth/ChallengeState;)V
         1: .line 122
            return
        end local 1 // org.apache.http.auth.ChallengeState challengeState
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/apache/http/impl/auth/DigestScheme;
            0    2     1  challengeState  Lorg/apache/http/auth/ChallengeState;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                Name  Flags
      challengeState  final

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.http.impl.auth.DigestScheme this
         0: .line 125
            aload 0 /* this */
            getstatic org.apache.http.Consts.ASCII:Ljava/nio/charset/Charset;
            invokespecial org.apache.http.impl.auth.DigestScheme.<init>:(Ljava/nio/charset/Charset;)V
         1: .line 126
            return
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/http/impl/auth/DigestScheme;

  public void processChallenge(org.apache.http.Header);
    descriptor: (Lorg/apache/http/Header;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.http.impl.auth.DigestScheme this
        start local 1 // org.apache.http.Header header
         0: .line 139
            aload 0 /* this */
            aload 1 /* header */
            invokespecial org.apache.http.impl.auth.RFC2617Scheme.processChallenge:(Lorg/apache/http/Header;)V
         1: .line 140
            aload 0 /* this */
            iconst_1
            putfield org.apache.http.impl.auth.DigestScheme.complete:Z
         2: .line 141
            aload 0 /* this */
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameters:()Ljava/util/Map;
            invokeinterface java.util.Map.isEmpty:()Z
            ifeq 4
         3: .line 142
            new org.apache.http.auth.MalformedChallengeException
            dup
            ldc "Authentication challenge is empty"
            invokespecial org.apache.http.auth.MalformedChallengeException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 144
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.http.Header header
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/apache/http/impl/auth/DigestScheme;
            0    5     1  header  Lorg/apache/http/Header;
    Exceptions:
      throws org.apache.http.auth.MalformedChallengeException
    MethodParameters:
        Name  Flags
      header  final

  public boolean isComplete();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.http.impl.auth.DigestScheme this
         0: .line 154
            aload 0 /* this */
            ldc "stale"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* s */
        start local 1 // java.lang.String s
         1: .line 155
            ldc "true"
            aload 1 /* s */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 2
            iconst_0
            goto 3
      StackMap locals: java.lang.String
      StackMap stack:
         2: aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.complete:Z
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 1 // java.lang.String s
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/http/impl/auth/DigestScheme;
            1    4     1     s  Ljava/lang/String;

  public java.lang.String getSchemeName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.auth.DigestScheme this
         0: .line 165
            ldc "digest"
            areturn
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/auth/DigestScheme;

  public boolean isConnectionBased();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.auth.DigestScheme this
         0: .line 175
            iconst_0
            ireturn
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/auth/DigestScheme;

  public void overrideParamter(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.http.impl.auth.DigestScheme this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String value
         0: .line 179
            aload 0 /* this */
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameters:()Ljava/util/Map;
            aload 1 /* name */
            aload 2 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 180
            return
        end local 2 // java.lang.String value
        end local 1 // java.lang.String name
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/http/impl/auth/DigestScheme;
            0    2     1   name  Ljava/lang/String;
            0    2     2  value  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      name   final
      value  final

  public org.apache.http.Header authenticate(org.apache.http.auth.Credentials, org.apache.http.HttpRequest);
    descriptor: (Lorg/apache/http/auth/Credentials;Lorg/apache/http/HttpRequest;)Lorg/apache/http/Header;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.http.impl.auth.DigestScheme this
        start local 1 // org.apache.http.auth.Credentials credentials
        start local 2 // org.apache.http.HttpRequest request
         0: .line 190
            aload 0 /* this */
            aload 1 /* credentials */
            aload 2 /* request */
            new org.apache.http.protocol.BasicHttpContext
            dup
            invokespecial org.apache.http.protocol.BasicHttpContext.<init>:()V
            invokevirtual org.apache.http.impl.auth.DigestScheme.authenticate:(Lorg/apache/http/auth/Credentials;Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/Header;
            areturn
        end local 2 // org.apache.http.HttpRequest request
        end local 1 // org.apache.http.auth.Credentials credentials
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/apache/http/impl/auth/DigestScheme;
            0    1     1  credentials  Lorg/apache/http/auth/Credentials;
            0    1     2      request  Lorg/apache/http/HttpRequest;
    Exceptions:
      throws org.apache.http.auth.AuthenticationException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      credentials  final
      request      final

  public org.apache.http.Header authenticate(org.apache.http.auth.Credentials, org.apache.http.HttpRequest, org.apache.http.protocol.HttpContext);
    descriptor: (Lorg/apache/http/auth/Credentials;Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/Header;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.apache.http.impl.auth.DigestScheme this
        start local 1 // org.apache.http.auth.Credentials credentials
        start local 2 // org.apache.http.HttpRequest request
        start local 3 // org.apache.http.protocol.HttpContext context
         0: .line 213
            aload 1 /* credentials */
            ldc "Credentials"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 214
            aload 2 /* request */
            ldc "HTTP request"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 215
            aload 0 /* this */
            ldc "realm"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            ifnonnull 4
         3: .line 216
            new org.apache.http.auth.AuthenticationException
            dup
            ldc "missing realm in challenge"
            invokespecial org.apache.http.auth.AuthenticationException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 218
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "nonce"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            ifnonnull 6
         5: .line 219
            new org.apache.http.auth.AuthenticationException
            dup
            ldc "missing nonce in challenge"
            invokespecial org.apache.http.auth.AuthenticationException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameters:()Ljava/util/Map;
            ldc "methodname"
            aload 2 /* request */
            invokeinterface org.apache.http.HttpRequest.getRequestLine:()Lorg/apache/http/RequestLine;
            invokeinterface org.apache.http.RequestLine.getMethod:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 223
            aload 0 /* this */
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameters:()Ljava/util/Map;
            ldc "uri"
            aload 2 /* request */
            invokeinterface org.apache.http.HttpRequest.getRequestLine:()Lorg/apache/http/RequestLine;
            invokeinterface org.apache.http.RequestLine.getUri:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 224
            aload 0 /* this */
            ldc "charset"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* charset */
        start local 4 // java.lang.String charset
         9: .line 225
            aload 4 /* charset */
            ifnonnull 11
        10: .line 226
            aload 0 /* this */
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameters:()Ljava/util/Map;
            ldc "charset"
            aload 0 /* this */
            aload 2 /* request */
            invokevirtual org.apache.http.impl.auth.DigestScheme.getCredentialsCharset:(Lorg/apache/http/HttpRequest;)Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 228
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* credentials */
            aload 2 /* request */
            invokevirtual org.apache.http.impl.auth.DigestScheme.createDigestHeader:(Lorg/apache/http/auth/Credentials;Lorg/apache/http/HttpRequest;)Lorg/apache/http/Header;
            areturn
        end local 4 // java.lang.String charset
        end local 3 // org.apache.http.protocol.HttpContext context
        end local 2 // org.apache.http.HttpRequest request
        end local 1 // org.apache.http.auth.Credentials credentials
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/apache/http/impl/auth/DigestScheme;
            0   12     1  credentials  Lorg/apache/http/auth/Credentials;
            0   12     2      request  Lorg/apache/http/HttpRequest;
            0   12     3      context  Lorg/apache/http/protocol/HttpContext;
            9   12     4      charset  Ljava/lang/String;
    Exceptions:
      throws org.apache.http.auth.AuthenticationException
    MethodParameters:
             Name  Flags
      credentials  final
      request      final
      context      final

  private static java.security.MessageDigest createMessageDigest(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/security/MessageDigest;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.lang.String digAlg
         0: .line 234
            aload 0 /* digAlg */
            invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
         1: areturn
         2: .line 235
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         3: .line 236
            new org.apache.http.impl.auth.UnsupportedDigestAlgorithmException
            dup
         4: .line 237
            new java.lang.StringBuilder
            dup
            ldc "Unsupported algorithm in HTTP Digest authentication: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 238
            aload 0 /* digAlg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 237
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 236
            invokespecial org.apache.http.impl.auth.UnsupportedDigestAlgorithmException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.String digAlg
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0  digAlg  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception
    Exceptions:
      throws org.apache.http.impl.auth.UnsupportedDigestAlgorithmException
    MethodParameters:
        Name  Flags
      digAlg  final

  private org.apache.http.Header createDigestHeader(org.apache.http.auth.Credentials, org.apache.http.HttpRequest);
    descriptor: (Lorg/apache/http/auth/Credentials;Lorg/apache/http/HttpRequest;)Lorg/apache/http/Header;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=30, args_size=3
        start local 0 // org.apache.http.impl.auth.DigestScheme this
        start local 1 // org.apache.http.auth.Credentials credentials
        start local 2 // org.apache.http.HttpRequest request
         0: .line 252
            aload 0 /* this */
            ldc "uri"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* uri */
        start local 3 // java.lang.String uri
         1: .line 253
            aload 0 /* this */
            ldc "realm"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* realm */
        start local 4 // java.lang.String realm
         2: .line 254
            aload 0 /* this */
            ldc "nonce"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* nonce */
        start local 5 // java.lang.String nonce
         3: .line 255
            aload 0 /* this */
            ldc "opaque"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* opaque */
        start local 6 // java.lang.String opaque
         4: .line 256
            aload 0 /* this */
            ldc "methodname"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* method */
        start local 7 // java.lang.String method
         5: .line 257
            aload 0 /* this */
            ldc "algorithm"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* algorithm */
        start local 8 // java.lang.String algorithm
         6: .line 259
            aload 8 /* algorithm */
            ifnonnull 8
         7: .line 260
            ldc "MD5"
            astore 8 /* algorithm */
         8: .line 263
      StackMap locals: org.apache.http.impl.auth.DigestScheme org.apache.http.auth.Credentials org.apache.http.HttpRequest java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String
      StackMap stack:
            new java.util.HashSet
            dup
            bipush 8
            invokespecial java.util.HashSet.<init>:(I)V
            astore 9 /* qopset */
        start local 9 // java.util.Set qopset
         9: .line 264
            iconst_m1
            istore 10 /* qop */
        start local 10 // int qop
        10: .line 265
            aload 0 /* this */
            ldc "qop"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 11 /* qoplist */
        start local 11 // java.lang.String qoplist
        11: .line 266
            aload 11 /* qoplist */
            ifnull 23
        12: .line 267
            new java.util.StringTokenizer
            dup
            aload 11 /* qoplist */
            ldc ","
            invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            astore 12 /* tok */
        start local 12 // java.util.StringTokenizer tok
        13: .line 268
            goto 16
        14: .line 269
      StackMap locals: org.apache.http.impl.auth.DigestScheme org.apache.http.auth.Credentials org.apache.http.HttpRequest java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.Set int java.lang.String java.util.StringTokenizer
      StackMap stack:
            aload 12 /* tok */
            invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 13 /* variant */
        start local 13 // java.lang.String variant
        15: .line 270
            aload 9 /* qopset */
            aload 13 /* variant */
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 13 // java.lang.String variant
        16: .line 268
      StackMap locals:
      StackMap stack:
            aload 12 /* tok */
            invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
            ifne 14
        17: .line 272
            aload 2 /* request */
            instanceof org.apache.http.HttpEntityEnclosingRequest
            ifeq 20
            aload 9 /* qopset */
            ldc "auth-int"
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 20
        18: .line 273
            iconst_1
            istore 10 /* qop */
        19: .line 274
            goto 24
      StackMap locals:
      StackMap stack:
        20: aload 9 /* qopset */
            ldc "auth"
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 24
        21: .line 275
            iconst_2
            istore 10 /* qop */
        end local 12 // java.util.StringTokenizer tok
        22: .line 277
            goto 24
        23: .line 278
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 10 /* qop */
        24: .line 281
      StackMap locals:
      StackMap stack:
            iload 10 /* qop */
            iconst_m1
            if_icmpne 26
        25: .line 282
            new org.apache.http.auth.AuthenticationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "None of the qop methods is supported: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 11 /* qoplist */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.apache.http.auth.AuthenticationException.<init>:(Ljava/lang/String;)V
            athrow
        26: .line 285
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "charset"
            invokevirtual org.apache.http.impl.auth.DigestScheme.getParameter:(Ljava/lang/String;)Ljava/lang/String;
            astore 12 /* charset */
        start local 12 // java.lang.String charset
        27: .line 286
            aload 12 /* charset */
            ifnonnull 29
        28: .line 287
            ldc "ISO-8859-1"
            astore 12 /* charset */
        29: .line 290
      StackMap locals: java.lang.String
      StackMap stack:
            aload 8 /* algorithm */
            astore 13 /* digAlg */
        start local 13 // java.lang.String digAlg
        30: .line 291
            aload 13 /* digAlg */
            ldc "MD5-sess"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 32
        31: .line 292
            ldc "MD5"
            astore 13 /* digAlg */
        32: .line 297
      StackMap locals: java.lang.String
      StackMap stack:
            aload 13 /* digAlg */
            invokestatic org.apache.http.impl.auth.DigestScheme.createMessageDigest:(Ljava/lang/String;)Ljava/security/MessageDigest;
            astore 14 /* digester */
        start local 14 // java.security.MessageDigest digester
        33: .line 298
            goto 36
        end local 14 // java.security.MessageDigest digester
      StackMap locals:
      StackMap stack: org.apache.http.impl.auth.UnsupportedDigestAlgorithmException
        34: pop
        35: .line 299
            new org.apache.http.auth.AuthenticationException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsuppported digest algorithm: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 13 /* digAlg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.apache.http.auth.AuthenticationException.<init>:(Ljava/lang/String;)V
            athrow
        start local 14 // java.security.MessageDigest digester
        36: .line 302
      StackMap locals: java.security.MessageDigest
      StackMap stack:
            aload 1 /* credentials */
            invokeinterface org.apache.http.auth.Credentials.getUserPrincipal:()Ljava/security/Principal;
            invokeinterface java.security.Principal.getName:()Ljava/lang/String;
            astore 15 /* uname */
        start local 15 // java.lang.String uname
        37: .line 303
            aload 1 /* credentials */
            invokeinterface org.apache.http.auth.Credentials.getPassword:()Ljava/lang/String;
            astore 16 /* pwd */
        start local 16 // java.lang.String pwd
        38: .line 305
            aload 5 /* nonce */
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.lastNonce:Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 41
        39: .line 306
            aload 0 /* this */
            dup
            getfield org.apache.http.impl.auth.DigestScheme.nounceCount:J
            lconst_1
            ladd
            putfield org.apache.http.impl.auth.DigestScheme.nounceCount:J
        40: .line 307
            goto 44
        41: .line 308
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            lconst_1
            putfield org.apache.http.impl.auth.DigestScheme.nounceCount:J
        42: .line 309
            aload 0 /* this */
            aconst_null
            putfield org.apache.http.impl.auth.DigestScheme.cnonce:Ljava/lang/String;
        43: .line 310
            aload 0 /* this */
            aload 5 /* nonce */
            putfield org.apache.http.impl.auth.DigestScheme.lastNonce:Ljava/lang/String;
        44: .line 312
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            sipush 256
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 17 /* sb */
        start local 17 // java.lang.StringBuilder sb
        45: .line 313
            new java.util.Formatter
            dup
            aload 17 /* sb */
            getstatic java.util.Locale.US:Ljava/util/Locale;
            invokespecial java.util.Formatter.<init>:(Ljava/lang/Appendable;Ljava/util/Locale;)V
            astore 18 /* formatter */
        start local 18 // java.util.Formatter formatter
        46: .line 314
            aload 18 /* formatter */
            ldc "%08x"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.nounceCount:J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
            pop
        47: .line 315
            aload 18 /* formatter */
            invokevirtual java.util.Formatter.close:()V
        48: .line 316
            aload 17 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 19 /* nc */
        start local 19 // java.lang.String nc
        49: .line 318
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.cnonce:Ljava/lang/String;
            ifnonnull 51
        50: .line 319
            aload 0 /* this */
            invokestatic org.apache.http.impl.auth.DigestScheme.createCnonce:()Ljava/lang/String;
            putfield org.apache.http.impl.auth.DigestScheme.cnonce:Ljava/lang/String;
        51: .line 322
      StackMap locals: java.lang.StringBuilder java.util.Formatter java.lang.String
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.apache.http.impl.auth.DigestScheme.a1:Ljava/lang/String;
        52: .line 323
            aload 0 /* this */
            aconst_null
            putfield org.apache.http.impl.auth.DigestScheme.a2:Ljava/lang/String;
        53: .line 325
            aload 8 /* algorithm */
            ldc "MD5-sess"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 61
        54: .line 331
            aload 17 /* sb */
            iconst_0
            invokevirtual java.lang.StringBuilder.setLength:(I)V
        55: .line 332
            aload 17 /* sb */
            aload 15 /* uname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 4 /* realm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 16 /* pwd */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        56: .line 333
            aload 14 /* digester */
            aload 17 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 12 /* charset */
            invokestatic org.apache.http.util.EncodingUtils.getBytes:(Ljava/lang/String;Ljava/lang/String;)[B
            invokevirtual java.security.MessageDigest.digest:([B)[B
            invokestatic org.apache.http.impl.auth.DigestScheme.encode:([B)Ljava/lang/String;
            astore 20 /* checksum */
        start local 20 // java.lang.String checksum
        57: .line 334
            aload 17 /* sb */
            iconst_0
            invokevirtual java.lang.StringBuilder.setLength:(I)V
        58: .line 335
            aload 17 /* sb */
            aload 20 /* checksum */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 5 /* nonce */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.cnonce:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        59: .line 336
            aload 0 /* this */
            aload 17 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.apache.http.impl.auth.DigestScheme.a1:Ljava/lang/String;
        end local 20 // java.lang.String checksum
        60: .line 337
            goto 64
        61: .line 339
      StackMap locals:
      StackMap stack:
            aload 17 /* sb */
            iconst_0
            invokevirtual java.lang.StringBuilder.setLength:(I)V
        62: .line 340
            aload 17 /* sb */
            aload 15 /* uname */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 4 /* realm */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 16 /* pwd */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        63: .line 341
            aload 0 /* this */
            aload 17 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.apache.http.impl.auth.DigestScheme.a1:Ljava/lang/String;
        64: .line 344
      StackMap locals:
      StackMap stack:
            aload 14 /* digester */
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.a1:Ljava/lang/String;
            aload 12 /* charset */
            invokestatic org.apache.http.util.EncodingUtils.getBytes:(Ljava/lang/String;Ljava/lang/String;)[B
            invokevirtual java.security.MessageDigest.digest:([B)[B
            invokestatic org.apache.http.impl.auth.DigestScheme.encode:([B)Ljava/lang/String;
            astore 20 /* hasha1 */
        start local 20 // java.lang.String hasha1
        65: .line 346
            iload 10 /* qop */
            iconst_2
            if_icmpne 68
        66: .line 348
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 7 /* method */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 3 /* uri */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.apache.http.impl.auth.DigestScheme.a2:Ljava/lang/String;
        67: .line 349
            goto 88
      StackMap locals: java.lang.String
      StackMap stack:
        68: iload 10 /* qop */
            iconst_1
            if_icmpne 87
        69: .line 351
            aconst_null
            astore 21 /* entity */
        start local 21 // org.apache.http.HttpEntity entity
        70: .line 352
            aload 2 /* request */
            instanceof org.apache.http.HttpEntityEnclosingRequest
            ifeq 72
        71: .line 353
            aload 2 /* request */
            checkcast org.apache.http.HttpEntityEnclosingRequest
            invokeinterface org.apache.http.HttpEntityEnclosingRequest.getEntity:()Lorg/apache/http/HttpEntity;
            astore 21 /* entity */
        72: .line 355
      StackMap locals: org.apache.http.HttpEntity
      StackMap stack:
            aload 21 /* entity */
            ifnull 78
            aload 21 /* entity */
            invokeinterface org.apache.http.HttpEntity.isRepeatable:()Z
            ifne 78
        73: .line 357
            aload 9 /* qopset */
            ldc "auth"
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 77
        74: .line 358
            iconst_2
            istore 10 /* qop */
        75: .line 359
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 7 /* method */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 3 /* uri */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.apache.http.impl.auth.DigestScheme.a2:Ljava/lang/String;
        76: .line 360
            goto 88
        77: .line 361
      StackMap locals:
      StackMap stack:
            new org.apache.http.auth.AuthenticationException
            dup
            ldc "Qop auth-int cannot be used with a non-repeatable entity"
            invokespecial org.apache.http.auth.AuthenticationException.<init>:(Ljava/lang/String;)V
            athrow
        78: .line 365
      StackMap locals:
      StackMap stack:
            new org.apache.http.impl.auth.HttpEntityDigester
            dup
            aload 14 /* digester */
            invokespecial org.apache.http.impl.auth.HttpEntityDigester.<init>:(Ljava/security/MessageDigest;)V
            astore 22 /* entityDigester */
        start local 22 // org.apache.http.impl.auth.HttpEntityDigester entityDigester
        79: .line 367
            aload 21 /* entity */
            ifnull 81
        80: .line 368
            aload 21 /* entity */
            aload 22 /* entityDigester */
            invokeinterface org.apache.http.HttpEntity.writeTo:(Ljava/io/OutputStream;)V
        81: .line 370
      StackMap locals: org.apache.http.impl.auth.HttpEntityDigester
      StackMap stack:
            aload 22 /* entityDigester */
            invokevirtual org.apache.http.impl.auth.HttpEntityDigester.close:()V
        82: .line 371
            goto 85
      StackMap locals:
      StackMap stack: java.io.IOException
        83: astore 23 /* ex */
        start local 23 // java.io.IOException ex
        84: .line 372
            new org.apache.http.auth.AuthenticationException
            dup
            ldc "I/O error reading entity content"
            aload 23 /* ex */
            invokespecial org.apache.http.auth.AuthenticationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 23 // java.io.IOException ex
        85: .line 374
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 7 /* method */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 3 /* uri */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 22 /* entityDigester */
            invokevirtual org.apache.http.impl.auth.HttpEntityDigester.getDigest:()[B
            invokestatic org.apache.http.impl.auth.DigestScheme.encode:([B)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.apache.http.impl.auth.DigestScheme.a2:Ljava/lang/String;
        end local 22 // org.apache.http.impl.auth.HttpEntityDigester entityDigester
        end local 21 // org.apache.http.HttpEntity entity
        86: .line 376
            goto 88
        87: .line 377
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            aload 7 /* method */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 3 /* uri */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.apache.http.impl.auth.DigestScheme.a2:Ljava/lang/String;
        88: .line 380
      StackMap locals:
      StackMap stack:
            aload 14 /* digester */
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.a2:Ljava/lang/String;
            aload 12 /* charset */
            invokestatic org.apache.http.util.EncodingUtils.getBytes:(Ljava/lang/String;Ljava/lang/String;)[B
            invokevirtual java.security.MessageDigest.digest:([B)[B
            invokestatic org.apache.http.impl.auth.DigestScheme.encode:([B)Ljava/lang/String;
            astore 21 /* hasha2 */
        start local 21 // java.lang.String hasha2
        89: .line 385
            iload 10 /* qop */
            ifne 94
        90: .line 386
            aload 17 /* sb */
            iconst_0
            invokevirtual java.lang.StringBuilder.setLength:(I)V
        91: .line 387
            aload 17 /* sb */
            aload 20 /* hasha1 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 5 /* nonce */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 21 /* hasha2 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        92: .line 388
            aload 17 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 22 /* digestValue */
        start local 22 // java.lang.String digestValue
        93: .line 389
            goto 101
        end local 22 // java.lang.String digestValue
        94: .line 390
      StackMap locals: java.lang.String
      StackMap stack:
            aload 17 /* sb */
            iconst_0
            invokevirtual java.lang.StringBuilder.setLength:(I)V
        95: .line 391
            aload 17 /* sb */
            aload 20 /* hasha1 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 5 /* nonce */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 19 /* nc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        96: .line 392
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.cnonce:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            iload 10 /* qop */
            iconst_1
            if_icmpne 97
            ldc "auth-int"
            goto 98
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
        97: ldc "auth"
      StackMap locals: org.apache.http.impl.auth.DigestScheme org.apache.http.auth.Credentials org.apache.http.HttpRequest java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.Set int java.lang.String java.lang.String java.lang.String java.security.MessageDigest java.lang.String java.lang.String java.lang.StringBuilder java.util.Formatter java.lang.String java.lang.String java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
        98: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        99: .line 393
            bipush 58
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 21 /* hasha2 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       100: .line 394
            aload 17 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 22 /* digestValue */
        start local 22 // java.lang.String digestValue
       101: .line 397
      StackMap locals: java.lang.String
      StackMap stack:
            aload 14 /* digester */
            aload 22 /* digestValue */
            invokestatic org.apache.http.util.EncodingUtils.getAsciiBytes:(Ljava/lang/String;)[B
            invokevirtual java.security.MessageDigest.digest:([B)[B
            invokestatic org.apache.http.impl.auth.DigestScheme.encode:([B)Ljava/lang/String;
            astore 23 /* digest */
        start local 23 // java.lang.String digest
       102: .line 399
            new org.apache.http.util.CharArrayBuffer
            dup
            sipush 128
            invokespecial org.apache.http.util.CharArrayBuffer.<init>:(I)V
            astore 24 /* buffer */
        start local 24 // org.apache.http.util.CharArrayBuffer buffer
       103: .line 400
            aload 0 /* this */
            invokevirtual org.apache.http.impl.auth.DigestScheme.isProxy:()Z
            ifeq 106
       104: .line 401
            aload 24 /* buffer */
            ldc "Proxy-Authorization"
            invokevirtual org.apache.http.util.CharArrayBuffer.append:(Ljava/lang/String;)V
       105: .line 402
            goto 107
       106: .line 403
      StackMap locals: java.lang.String org.apache.http.util.CharArrayBuffer
      StackMap stack:
            aload 24 /* buffer */
            ldc "Authorization"
            invokevirtual org.apache.http.util.CharArrayBuffer.append:(Ljava/lang/String;)V
       107: .line 405
      StackMap locals:
      StackMap stack:
            aload 24 /* buffer */
            ldc ": Digest "
            invokevirtual org.apache.http.util.CharArrayBuffer.append:(Ljava/lang/String;)V
       108: .line 407
            new java.util.ArrayList
            dup
            bipush 20
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 25 /* params */
        start local 25 // java.util.List params
       109: .line 408
            aload 25 /* params */
            new org.apache.http.message.BasicNameValuePair
            dup
            ldc "username"
            aload 15 /* uname */
            invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       110: .line 409
            aload 25 /* params */
            new org.apache.http.message.BasicNameValuePair
            dup
            ldc "realm"
            aload 4 /* realm */
            invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       111: .line 410
            aload 25 /* params */
            new org.apache.http.message.BasicNameValuePair
            dup
            ldc "nonce"
            aload 5 /* nonce */
            invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       112: .line 411
            aload 25 /* params */
            new org.apache.http.message.BasicNameValuePair
            dup
            ldc "uri"
            aload 3 /* uri */
            invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       113: .line 412
            aload 25 /* params */
            new org.apache.http.message.BasicNameValuePair
            dup
            ldc "response"
            aload 23 /* digest */
            invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       114: .line 414
            iload 10 /* qop */
            ifeq 121
       115: .line 415
            aload 25 /* params */
       116: new org.apache.http.message.BasicNameValuePair
            dup
            ldc "qop"
            iload 10 /* qop */
            iconst_1
            if_icmpne 117
            ldc "auth-int"
            goto 118
      StackMap locals: org.apache.http.impl.auth.DigestScheme org.apache.http.auth.Credentials org.apache.http.HttpRequest java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.Set int java.lang.String java.lang.String java.lang.String java.security.MessageDigest java.lang.String java.lang.String java.lang.StringBuilder java.util.Formatter java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String org.apache.http.util.CharArrayBuffer java.util.List
      StackMap stack: java.util.List new 116 new 116 java.lang.String
       117: ldc "auth"
      StackMap locals: org.apache.http.impl.auth.DigestScheme org.apache.http.auth.Credentials org.apache.http.HttpRequest java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.Set int java.lang.String java.lang.String java.lang.String java.security.MessageDigest java.lang.String java.lang.String java.lang.StringBuilder java.util.Formatter java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String org.apache.http.util.CharArrayBuffer java.util.List
      StackMap stack: java.util.List new 116 new 116 java.lang.String java.lang.String
       118: invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       119: .line 416
            aload 25 /* params */
            new org.apache.http.message.BasicNameValuePair
            dup
            ldc "nc"
            aload 19 /* nc */
            invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       120: .line 417
            aload 25 /* params */
            new org.apache.http.message.BasicNameValuePair
            dup
            ldc "cnonce"
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.cnonce:Ljava/lang/String;
            invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       121: .line 420
      StackMap locals:
      StackMap stack:
            aload 25 /* params */
            new org.apache.http.message.BasicNameValuePair
            dup
            ldc "algorithm"
            aload 8 /* algorithm */
            invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       122: .line 421
            aload 6 /* opaque */
            ifnull 124
       123: .line 422
            aload 25 /* params */
            new org.apache.http.message.BasicNameValuePair
            dup
            ldc "opaque"
            aload 6 /* opaque */
            invokespecial org.apache.http.message.BasicNameValuePair.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
       124: .line 425
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 26 /* i */
        start local 26 // int i
       125: goto 139
       126: .line 426
      StackMap locals: int
      StackMap stack:
            aload 25 /* params */
            iload 26 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.http.message.BasicNameValuePair
            astore 27 /* param */
        start local 27 // org.apache.http.message.BasicNameValuePair param
       127: .line 427
            iload 26 /* i */
            ifle 129
       128: .line 428
            aload 24 /* buffer */
            ldc ", "
            invokevirtual org.apache.http.util.CharArrayBuffer.append:(Ljava/lang/String;)V
       129: .line 430
      StackMap locals: org.apache.http.message.BasicNameValuePair
      StackMap stack:
            aload 27 /* param */
            invokevirtual org.apache.http.message.BasicNameValuePair.getName:()Ljava/lang/String;
            astore 28 /* name */
        start local 28 // java.lang.String name
       130: .line 431
            ldc "nc"
            aload 28 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 133
            ldc "qop"
            aload 28 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 133
       131: .line 432
            ldc "algorithm"
            aload 28 /* name */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 133
       132: .line 431
            iconst_0
            goto 134
      StackMap locals: java.lang.String
      StackMap stack:
       133: iconst_1
      StackMap locals:
      StackMap stack: int
       134: istore 29 /* noQuotes */
        start local 29 // boolean noQuotes
       135: .line 433
            getstatic org.apache.http.message.BasicHeaderValueFormatter.INSTANCE:Lorg/apache/http/message/BasicHeaderValueFormatter;
            aload 24 /* buffer */
            aload 27 /* param */
            iload 29 /* noQuotes */
            ifeq 136
            iconst_0
            goto 137
      StackMap locals: org.apache.http.impl.auth.DigestScheme org.apache.http.auth.Credentials org.apache.http.HttpRequest java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.Set int java.lang.String java.lang.String java.lang.String java.security.MessageDigest java.lang.String java.lang.String java.lang.StringBuilder java.util.Formatter java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String org.apache.http.util.CharArrayBuffer java.util.List int org.apache.http.message.BasicNameValuePair java.lang.String int
      StackMap stack: org.apache.http.message.BasicHeaderValueFormatter org.apache.http.util.CharArrayBuffer org.apache.http.message.BasicNameValuePair
       136: iconst_1
      StackMap locals: org.apache.http.impl.auth.DigestScheme org.apache.http.auth.Credentials org.apache.http.HttpRequest java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.Set int java.lang.String java.lang.String java.lang.String java.security.MessageDigest java.lang.String java.lang.String java.lang.StringBuilder java.util.Formatter java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String org.apache.http.util.CharArrayBuffer java.util.List int org.apache.http.message.BasicNameValuePair java.lang.String int
      StackMap stack: org.apache.http.message.BasicHeaderValueFormatter org.apache.http.util.CharArrayBuffer org.apache.http.message.BasicNameValuePair int
       137: invokevirtual org.apache.http.message.BasicHeaderValueFormatter.formatNameValuePair:(Lorg/apache/http/util/CharArrayBuffer;Lorg/apache/http/NameValuePair;Z)Lorg/apache/http/util/CharArrayBuffer;
            pop
        end local 29 // boolean noQuotes
        end local 28 // java.lang.String name
        end local 27 // org.apache.http.message.BasicNameValuePair param
       138: .line 425
            iinc 26 /* i */ 1
      StackMap locals:
      StackMap stack:
       139: iload 26 /* i */
            aload 25 /* params */
            invokeinterface java.util.List.size:()I
            if_icmplt 126
        end local 26 // int i
       140: .line 435
            new org.apache.http.message.BufferedHeader
            dup
            aload 24 /* buffer */
            invokespecial org.apache.http.message.BufferedHeader.<init>:(Lorg/apache/http/util/CharArrayBuffer;)V
            areturn
        end local 25 // java.util.List params
        end local 24 // org.apache.http.util.CharArrayBuffer buffer
        end local 23 // java.lang.String digest
        end local 22 // java.lang.String digestValue
        end local 21 // java.lang.String hasha2
        end local 20 // java.lang.String hasha1
        end local 19 // java.lang.String nc
        end local 18 // java.util.Formatter formatter
        end local 17 // java.lang.StringBuilder sb
        end local 16 // java.lang.String pwd
        end local 15 // java.lang.String uname
        end local 14 // java.security.MessageDigest digester
        end local 13 // java.lang.String digAlg
        end local 12 // java.lang.String charset
        end local 11 // java.lang.String qoplist
        end local 10 // int qop
        end local 9 // java.util.Set qopset
        end local 8 // java.lang.String algorithm
        end local 7 // java.lang.String method
        end local 6 // java.lang.String opaque
        end local 5 // java.lang.String nonce
        end local 4 // java.lang.String realm
        end local 3 // java.lang.String uri
        end local 2 // org.apache.http.HttpRequest request
        end local 1 // org.apache.http.auth.Credentials credentials
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0  141     0            this  Lorg/apache/http/impl/auth/DigestScheme;
            0  141     1     credentials  Lorg/apache/http/auth/Credentials;
            0  141     2         request  Lorg/apache/http/HttpRequest;
            1  141     3             uri  Ljava/lang/String;
            2  141     4           realm  Ljava/lang/String;
            3  141     5           nonce  Ljava/lang/String;
            4  141     6          opaque  Ljava/lang/String;
            5  141     7          method  Ljava/lang/String;
            6  141     8       algorithm  Ljava/lang/String;
            9  141     9          qopset  Ljava/util/Set<Ljava/lang/String;>;
           10  141    10             qop  I
           11  141    11         qoplist  Ljava/lang/String;
           13   22    12             tok  Ljava/util/StringTokenizer;
           15   16    13         variant  Ljava/lang/String;
           27  141    12         charset  Ljava/lang/String;
           30  141    13          digAlg  Ljava/lang/String;
           33   34    14        digester  Ljava/security/MessageDigest;
           36  141    14        digester  Ljava/security/MessageDigest;
           37  141    15           uname  Ljava/lang/String;
           38  141    16             pwd  Ljava/lang/String;
           45  141    17              sb  Ljava/lang/StringBuilder;
           46  141    18       formatter  Ljava/util/Formatter;
           49  141    19              nc  Ljava/lang/String;
           57   60    20        checksum  Ljava/lang/String;
           65  141    20          hasha1  Ljava/lang/String;
           70   86    21          entity  Lorg/apache/http/HttpEntity;
           79   86    22  entityDigester  Lorg/apache/http/impl/auth/HttpEntityDigester;
           84   85    23              ex  Ljava/io/IOException;
           89  141    21          hasha2  Ljava/lang/String;
           93   94    22     digestValue  Ljava/lang/String;
          101  141    22     digestValue  Ljava/lang/String;
          102  141    23          digest  Ljava/lang/String;
          103  141    24          buffer  Lorg/apache/http/util/CharArrayBuffer;
          109  141    25          params  Ljava/util/List<Lorg/apache/http/message/BasicNameValuePair;>;
          125  140    26               i  I
          127  138    27           param  Lorg/apache/http/message/BasicNameValuePair;
          130  138    28            name  Ljava/lang/String;
          135  138    29        noQuotes  Z
      Exception table:
        from    to  target  type
          32    33      34  Class org.apache.http.impl.auth.UnsupportedDigestAlgorithmException
          79    82      83  Class java.io.IOException
    Exceptions:
      throws org.apache.http.auth.AuthenticationException
    MethodParameters:
             Name  Flags
      credentials  final
      request      final

  java.lang.String getCnonce();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.auth.DigestScheme this
         0: .line 439
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.cnonce:Ljava/lang/String;
            areturn
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/auth/DigestScheme;

  java.lang.String getA1();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.auth.DigestScheme this
         0: .line 443
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.a1:Ljava/lang/String;
            areturn
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/auth/DigestScheme;

  java.lang.String getA2();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.auth.DigestScheme this
         0: .line 447
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.a2:Ljava/lang/String;
            areturn
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/auth/DigestScheme;

  static java.lang.String encode(byte[]);
    descriptor: ([B)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // byte[] binaryData
         0: .line 458
            aload 0 /* binaryData */
            arraylength
            istore 1 /* n */
        start local 1 // int n
         1: .line 459
            iload 1 /* n */
            iconst_2
            imul
            newarray 5
            astore 2 /* buffer */
        start local 2 // char[] buffer
         2: .line 460
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 9
         4: .line 461
      StackMap locals: int char[] int
      StackMap stack:
            aload 0 /* binaryData */
            iload 3 /* i */
            baload
            bipush 15
            iand
            istore 4 /* low */
        start local 4 // int low
         5: .line 462
            aload 0 /* binaryData */
            iload 3 /* i */
            baload
            sipush 240
            iand
            iconst_4
            ishr
            istore 5 /* high */
        start local 5 // int high
         6: .line 463
            aload 2 /* buffer */
            iload 3 /* i */
            iconst_2
            imul
            getstatic org.apache.http.impl.auth.DigestScheme.HEXADECIMAL:[C
            iload 5 /* high */
            caload
            castore
         7: .line 464
            aload 2 /* buffer */
            iload 3 /* i */
            iconst_2
            imul
            iconst_1
            iadd
            getstatic org.apache.http.impl.auth.DigestScheme.HEXADECIMAL:[C
            iload 4 /* low */
            caload
            castore
        end local 5 // int high
        end local 4 // int low
         8: .line 460
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            iload 1 /* n */
            if_icmplt 4
        end local 3 // int i
        10: .line 467
            new java.lang.String
            dup
            aload 2 /* buffer */
            invokespecial java.lang.String.<init>:([C)V
            areturn
        end local 2 // char[] buffer
        end local 1 // int n
        end local 0 // byte[] binaryData
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0  binaryData  [B
            1   11     1           n  I
            2   11     2      buffer  [C
            3   10     3           i  I
            5    8     4         low  I
            6    8     5        high  I
    MethodParameters:
            Name  Flags
      binaryData  final

  public static java.lang.String createCnonce();
    descriptor: ()Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=0
         0: .line 477
            new java.security.SecureRandom
            dup
            invokespecial java.security.SecureRandom.<init>:()V
            astore 0 /* rnd */
        start local 0 // java.security.SecureRandom rnd
         1: .line 478
            bipush 8
            newarray 8
            astore 1 /* tmp */
        start local 1 // byte[] tmp
         2: .line 479
            aload 0 /* rnd */
            aload 1 /* tmp */
            invokevirtual java.security.SecureRandom.nextBytes:([B)V
         3: .line 480
            aload 1 /* tmp */
            invokestatic org.apache.http.impl.auth.DigestScheme.encode:([B)Ljava/lang/String;
            areturn
        end local 1 // byte[] tmp
        end local 0 // java.security.SecureRandom rnd
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    4     0   rnd  Ljava/security/SecureRandom;
            2    4     1   tmp  [B

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.apache.http.impl.auth.DigestScheme this
         0: .line 485
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* builder */
        start local 1 // java.lang.StringBuilder builder
         1: .line 486
            aload 1 /* builder */
            ldc "DIGEST [complete="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.complete:Z
            invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
         2: .line 487
            ldc ", nonce="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.lastNonce:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 488
            ldc ", nc="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.apache.http.impl.auth.DigestScheme.nounceCount:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
         4: .line 489
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 490
            aload 1 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder builder
        end local 0 // org.apache.http.impl.auth.DigestScheme this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/apache/http/impl/auth/DigestScheme;
            1    6     1  builder  Ljava/lang/StringBuilder;
}
SourceFile: "DigestScheme.java"