public class org.apache.http.impl.client.ProxyClient
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.http.impl.client.ProxyClient
  super_class: java.lang.Object
{
  private final org.apache.http.conn.HttpConnectionFactory<org.apache.http.conn.routing.HttpRoute, org.apache.http.conn.ManagedHttpClientConnection> connFactory;
    descriptor: Lorg/apache/http/conn/HttpConnectionFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/apache/http/conn/HttpConnectionFactory<Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/conn/ManagedHttpClientConnection;>;

  private final org.apache.http.config.ConnectionConfig connectionConfig;
    descriptor: Lorg/apache/http/config/ConnectionConfig;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.client.config.RequestConfig requestConfig;
    descriptor: Lorg/apache/http/client/config/RequestConfig;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.protocol.HttpProcessor httpProcessor;
    descriptor: Lorg/apache/http/protocol/HttpProcessor;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.protocol.HttpRequestExecutor requestExec;
    descriptor: Lorg/apache/http/protocol/HttpRequestExecutor;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.impl.client.ProxyAuthenticationStrategy proxyAuthStrategy;
    descriptor: Lorg/apache/http/impl/client/ProxyAuthenticationStrategy;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.impl.auth.HttpAuthenticator authenticator;
    descriptor: Lorg/apache/http/impl/auth/HttpAuthenticator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.auth.AuthState proxyAuthState;
    descriptor: Lorg/apache/http/auth/AuthState;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.auth.AuthSchemeRegistry authSchemeRegistry;
    descriptor: Lorg/apache/http/auth/AuthSchemeRegistry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.ConnectionReuseStrategy reuseStrategy;
    descriptor: Lorg/apache/http/ConnectionReuseStrategy;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.apache.http.conn.HttpConnectionFactory<org.apache.http.conn.routing.HttpRoute, org.apache.http.conn.ManagedHttpClientConnection>, org.apache.http.config.ConnectionConfig, org.apache.http.client.config.RequestConfig);
    descriptor: (Lorg/apache/http/conn/HttpConnectionFactory;Lorg/apache/http/config/ConnectionConfig;Lorg/apache/http/client/config/RequestConfig;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // org.apache.http.impl.client.ProxyClient this
        start local 1 // org.apache.http.conn.HttpConnectionFactory connFactory
        start local 2 // org.apache.http.config.ConnectionConfig connectionConfig
        start local 3 // org.apache.http.client.config.RequestConfig requestConfig
         0: .line 105
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 106
            aload 0 /* this */
            aload 1 /* connFactory */
            ifnull 2
            aload 1 /* connFactory */
            goto 3
      StackMap locals: org.apache.http.impl.client.ProxyClient org.apache.http.conn.HttpConnectionFactory org.apache.http.config.ConnectionConfig org.apache.http.client.config.RequestConfig
      StackMap stack: org.apache.http.impl.client.ProxyClient
         2: getstatic org.apache.http.impl.conn.ManagedHttpClientConnectionFactory.INSTANCE:Lorg/apache/http/impl/conn/ManagedHttpClientConnectionFactory;
      StackMap locals: org.apache.http.impl.client.ProxyClient org.apache.http.conn.HttpConnectionFactory org.apache.http.config.ConnectionConfig org.apache.http.client.config.RequestConfig
      StackMap stack: org.apache.http.impl.client.ProxyClient org.apache.http.conn.HttpConnectionFactory
         3: putfield org.apache.http.impl.client.ProxyClient.connFactory:Lorg/apache/http/conn/HttpConnectionFactory;
         4: .line 107
            aload 0 /* this */
            aload 2 /* connectionConfig */
            ifnull 5
            aload 2 /* connectionConfig */
            goto 6
      StackMap locals:
      StackMap stack: org.apache.http.impl.client.ProxyClient
         5: getstatic org.apache.http.config.ConnectionConfig.DEFAULT:Lorg/apache/http/config/ConnectionConfig;
      StackMap locals: org.apache.http.impl.client.ProxyClient org.apache.http.conn.HttpConnectionFactory org.apache.http.config.ConnectionConfig org.apache.http.client.config.RequestConfig
      StackMap stack: org.apache.http.impl.client.ProxyClient org.apache.http.config.ConnectionConfig
         6: putfield org.apache.http.impl.client.ProxyClient.connectionConfig:Lorg/apache/http/config/ConnectionConfig;
         7: .line 108
            aload 0 /* this */
            aload 3 /* requestConfig */
            ifnull 8
            aload 3 /* requestConfig */
            goto 9
      StackMap locals:
      StackMap stack: org.apache.http.impl.client.ProxyClient
         8: getstatic org.apache.http.client.config.RequestConfig.DEFAULT:Lorg/apache/http/client/config/RequestConfig;
      StackMap locals: org.apache.http.impl.client.ProxyClient org.apache.http.conn.HttpConnectionFactory org.apache.http.config.ConnectionConfig org.apache.http.client.config.RequestConfig
      StackMap stack: org.apache.http.impl.client.ProxyClient org.apache.http.client.config.RequestConfig
         9: putfield org.apache.http.impl.client.ProxyClient.requestConfig:Lorg/apache/http/client/config/RequestConfig;
        10: .line 109
            aload 0 /* this */
            new org.apache.http.protocol.ImmutableHttpProcessor
            dup
            iconst_3
            anewarray org.apache.http.HttpRequestInterceptor
            dup
            iconst_0
        11: .line 110
            new org.apache.http.protocol.RequestTargetHost
            dup
            invokespecial org.apache.http.protocol.RequestTargetHost.<init>:()V
            aastore
            dup
            iconst_1
            new org.apache.http.client.protocol.RequestClientConnControl
            dup
            invokespecial org.apache.http.client.protocol.RequestClientConnControl.<init>:()V
            aastore
            dup
            iconst_2
            new org.apache.http.protocol.RequestUserAgent
            dup
            invokespecial org.apache.http.protocol.RequestUserAgent.<init>:()V
            aastore
            invokespecial org.apache.http.protocol.ImmutableHttpProcessor.<init>:([Lorg/apache/http/HttpRequestInterceptor;)V
        12: .line 109
            putfield org.apache.http.impl.client.ProxyClient.httpProcessor:Lorg/apache/http/protocol/HttpProcessor;
        13: .line 111
            aload 0 /* this */
            new org.apache.http.protocol.HttpRequestExecutor
            dup
            invokespecial org.apache.http.protocol.HttpRequestExecutor.<init>:()V
            putfield org.apache.http.impl.client.ProxyClient.requestExec:Lorg/apache/http/protocol/HttpRequestExecutor;
        14: .line 112
            aload 0 /* this */
            new org.apache.http.impl.client.ProxyAuthenticationStrategy
            dup
            invokespecial org.apache.http.impl.client.ProxyAuthenticationStrategy.<init>:()V
            putfield org.apache.http.impl.client.ProxyClient.proxyAuthStrategy:Lorg/apache/http/impl/client/ProxyAuthenticationStrategy;
        15: .line 113
            aload 0 /* this */
            new org.apache.http.impl.auth.HttpAuthenticator
            dup
            invokespecial org.apache.http.impl.auth.HttpAuthenticator.<init>:()V
            putfield org.apache.http.impl.client.ProxyClient.authenticator:Lorg/apache/http/impl/auth/HttpAuthenticator;
        16: .line 114
            aload 0 /* this */
            new org.apache.http.auth.AuthState
            dup
            invokespecial org.apache.http.auth.AuthState.<init>:()V
            putfield org.apache.http.impl.client.ProxyClient.proxyAuthState:Lorg/apache/http/auth/AuthState;
        17: .line 115
            aload 0 /* this */
            new org.apache.http.auth.AuthSchemeRegistry
            dup
            invokespecial org.apache.http.auth.AuthSchemeRegistry.<init>:()V
            putfield org.apache.http.impl.client.ProxyClient.authSchemeRegistry:Lorg/apache/http/auth/AuthSchemeRegistry;
        18: .line 116
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authSchemeRegistry:Lorg/apache/http/auth/AuthSchemeRegistry;
            ldc "Basic"
            new org.apache.http.impl.auth.BasicSchemeFactory
            dup
            invokespecial org.apache.http.impl.auth.BasicSchemeFactory.<init>:()V
            invokevirtual org.apache.http.auth.AuthSchemeRegistry.register:(Ljava/lang/String;Lorg/apache/http/auth/AuthSchemeFactory;)V
        19: .line 117
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authSchemeRegistry:Lorg/apache/http/auth/AuthSchemeRegistry;
            ldc "Digest"
            new org.apache.http.impl.auth.DigestSchemeFactory
            dup
            invokespecial org.apache.http.impl.auth.DigestSchemeFactory.<init>:()V
            invokevirtual org.apache.http.auth.AuthSchemeRegistry.register:(Ljava/lang/String;Lorg/apache/http/auth/AuthSchemeFactory;)V
        20: .line 118
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authSchemeRegistry:Lorg/apache/http/auth/AuthSchemeRegistry;
            ldc "NTLM"
            new org.apache.http.impl.auth.NTLMSchemeFactory
            dup
            invokespecial org.apache.http.impl.auth.NTLMSchemeFactory.<init>:()V
            invokevirtual org.apache.http.auth.AuthSchemeRegistry.register:(Ljava/lang/String;Lorg/apache/http/auth/AuthSchemeFactory;)V
        21: .line 119
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authSchemeRegistry:Lorg/apache/http/auth/AuthSchemeRegistry;
            ldc "Negotiate"
            new org.apache.http.impl.auth.SPNegoSchemeFactory
            dup
            invokespecial org.apache.http.impl.auth.SPNegoSchemeFactory.<init>:()V
            invokevirtual org.apache.http.auth.AuthSchemeRegistry.register:(Ljava/lang/String;Lorg/apache/http/auth/AuthSchemeFactory;)V
        22: .line 120
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authSchemeRegistry:Lorg/apache/http/auth/AuthSchemeRegistry;
            ldc "Kerberos"
            new org.apache.http.impl.auth.KerberosSchemeFactory
            dup
            invokespecial org.apache.http.impl.auth.KerberosSchemeFactory.<init>:()V
            invokevirtual org.apache.http.auth.AuthSchemeRegistry.register:(Ljava/lang/String;Lorg/apache/http/auth/AuthSchemeFactory;)V
        23: .line 121
            aload 0 /* this */
            new org.apache.http.impl.DefaultConnectionReuseStrategy
            dup
            invokespecial org.apache.http.impl.DefaultConnectionReuseStrategy.<init>:()V
            putfield org.apache.http.impl.client.ProxyClient.reuseStrategy:Lorg/apache/http/ConnectionReuseStrategy;
        24: .line 122
            return
        end local 3 // org.apache.http.client.config.RequestConfig requestConfig
        end local 2 // org.apache.http.config.ConnectionConfig connectionConfig
        end local 1 // org.apache.http.conn.HttpConnectionFactory connFactory
        end local 0 // org.apache.http.impl.client.ProxyClient this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   25     0              this  Lorg/apache/http/impl/client/ProxyClient;
            0   25     1       connFactory  Lorg/apache/http/conn/HttpConnectionFactory<Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/conn/ManagedHttpClientConnection;>;
            0   25     2  connectionConfig  Lorg/apache/http/config/ConnectionConfig;
            0   25     3     requestConfig  Lorg/apache/http/client/config/RequestConfig;
    Signature: (Lorg/apache/http/conn/HttpConnectionFactory<Lorg/apache/http/conn/routing/HttpRoute;Lorg/apache/http/conn/ManagedHttpClientConnection;>;Lorg/apache/http/config/ConnectionConfig;Lorg/apache/http/client/config/RequestConfig;)V
    MethodParameters:
                  Name  Flags
      connFactory       final
      connectionConfig  final
      requestConfig     final

  public void <init>(org.apache.http.params.HttpParams);
    descriptor: (Lorg/apache/http/params/HttpParams;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.http.impl.client.ProxyClient this
        start local 1 // org.apache.http.params.HttpParams params
         0: .line 129
            aload 0 /* this */
            aconst_null
         1: .line 130
            aload 1 /* params */
            invokestatic org.apache.http.params.HttpParamConfig.getConnectionConfig:(Lorg/apache/http/params/HttpParams;)Lorg/apache/http/config/ConnectionConfig;
         2: .line 131
            aload 1 /* params */
            invokestatic org.apache.http.client.params.HttpClientParamConfig.getRequestConfig:(Lorg/apache/http/params/HttpParams;)Lorg/apache/http/client/config/RequestConfig;
            invokespecial org.apache.http.impl.client.ProxyClient.<init>:(Lorg/apache/http/conn/HttpConnectionFactory;Lorg/apache/http/config/ConnectionConfig;Lorg/apache/http/client/config/RequestConfig;)V
         3: .line 132
            return
        end local 1 // org.apache.http.params.HttpParams params
        end local 0 // org.apache.http.impl.client.ProxyClient this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/apache/http/impl/client/ProxyClient;
            0    4     1  params  Lorg/apache/http/params/HttpParams;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      params  final

  public void <init>(org.apache.http.client.config.RequestConfig);
    descriptor: (Lorg/apache/http/client/config/RequestConfig;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.http.impl.client.ProxyClient this
        start local 1 // org.apache.http.client.config.RequestConfig requestConfig
         0: .line 138
            aload 0 /* this */
            aconst_null
            aconst_null
            aload 1 /* requestConfig */
            invokespecial org.apache.http.impl.client.ProxyClient.<init>:(Lorg/apache/http/conn/HttpConnectionFactory;Lorg/apache/http/config/ConnectionConfig;Lorg/apache/http/client/config/RequestConfig;)V
         1: .line 139
            return
        end local 1 // org.apache.http.client.config.RequestConfig requestConfig
        end local 0 // org.apache.http.impl.client.ProxyClient this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/apache/http/impl/client/ProxyClient;
            0    2     1  requestConfig  Lorg/apache/http/client/config/RequestConfig;
    MethodParameters:
               Name  Flags
      requestConfig  final

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.http.impl.client.ProxyClient this
         0: .line 142
            aload 0 /* this */
            aconst_null
            aconst_null
            aconst_null
            invokespecial org.apache.http.impl.client.ProxyClient.<init>:(Lorg/apache/http/conn/HttpConnectionFactory;Lorg/apache/http/config/ConnectionConfig;Lorg/apache/http/client/config/RequestConfig;)V
         1: .line 143
            return
        end local 0 // org.apache.http.impl.client.ProxyClient this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/http/impl/client/ProxyClient;

  public org.apache.http.params.HttpParams getParams();
    descriptor: ()Lorg/apache/http/params/HttpParams;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.http.impl.client.ProxyClient this
         0: .line 150
            new org.apache.http.params.BasicHttpParams
            dup
            invokespecial org.apache.http.params.BasicHttpParams.<init>:()V
            areturn
        end local 0 // org.apache.http.impl.client.ProxyClient this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/client/ProxyClient;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public org.apache.http.auth.AuthSchemeRegistry getAuthSchemeRegistry();
    descriptor: ()Lorg/apache/http/auth/AuthSchemeRegistry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.client.ProxyClient this
         0: .line 158
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authSchemeRegistry:Lorg/apache/http/auth/AuthSchemeRegistry;
            areturn
        end local 0 // org.apache.http.impl.client.ProxyClient this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/client/ProxyClient;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public java.net.Socket tunnel(org.apache.http.HttpHost, org.apache.http.HttpHost, org.apache.http.auth.Credentials);
    descriptor: (Lorg/apache/http/HttpHost;Lorg/apache/http/HttpHost;Lorg/apache/http/auth/Credentials;)Ljava/net/Socket;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=13, args_size=4
        start local 0 // org.apache.http.impl.client.ProxyClient this
        start local 1 // org.apache.http.HttpHost proxy
        start local 2 // org.apache.http.HttpHost target
        start local 3 // org.apache.http.auth.Credentials credentials
         0: .line 165
            aload 1 /* proxy */
            ldc "Proxy host"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 166
            aload 2 /* target */
            ldc "Target host"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         2: .line 167
            aload 3 /* credentials */
            ldc "Credentials"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         3: .line 168
            aload 2 /* target */
            astore 4 /* host */
        start local 4 // org.apache.http.HttpHost host
         4: .line 169
            aload 4 /* host */
            invokevirtual org.apache.http.HttpHost.getPort:()I
            ifgt 6
         5: .line 170
            new org.apache.http.HttpHost
            dup
            aload 4 /* host */
            invokevirtual org.apache.http.HttpHost.getHostName:()Ljava/lang/String;
            bipush 80
            aload 4 /* host */
            invokevirtual org.apache.http.HttpHost.getSchemeName:()Ljava/lang/String;
            invokespecial org.apache.http.HttpHost.<init>:(Ljava/lang/String;ILjava/lang/String;)V
            astore 4 /* host */
         6: .line 172
      StackMap locals: org.apache.http.HttpHost
      StackMap stack:
            new org.apache.http.conn.routing.HttpRoute
            dup
         7: .line 173
            aload 4 /* host */
         8: .line 174
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.requestConfig:Lorg/apache/http/client/config/RequestConfig;
            invokevirtual org.apache.http.client.config.RequestConfig.getLocalAddress:()Ljava/net/InetAddress;
         9: .line 175
            aload 1 /* proxy */
            iconst_0
            getstatic org.apache.http.conn.routing.RouteInfo$TunnelType.TUNNELLED:Lorg/apache/http/conn/routing/RouteInfo$TunnelType;
            getstatic org.apache.http.conn.routing.RouteInfo$LayerType.PLAIN:Lorg/apache/http/conn/routing/RouteInfo$LayerType;
        10: .line 172
            invokespecial org.apache.http.conn.routing.HttpRoute.<init>:(Lorg/apache/http/HttpHost;Ljava/net/InetAddress;Lorg/apache/http/HttpHost;ZLorg/apache/http/conn/routing/RouteInfo$TunnelType;Lorg/apache/http/conn/routing/RouteInfo$LayerType;)V
            astore 5 /* route */
        start local 5 // org.apache.http.conn.routing.HttpRoute route
        11: .line 177
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.connFactory:Lorg/apache/http/conn/HttpConnectionFactory;
        12: .line 178
            aload 5 /* route */
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.connectionConfig:Lorg/apache/http/config/ConnectionConfig;
        13: .line 177
            invokeinterface org.apache.http.conn.HttpConnectionFactory.create:(Ljava/lang/Object;Lorg/apache/http/config/ConnectionConfig;)Lorg/apache/http/HttpConnection;
            checkcast org.apache.http.conn.ManagedHttpClientConnection
            astore 6 /* conn */
        start local 6 // org.apache.http.conn.ManagedHttpClientConnection conn
        14: .line 179
            new org.apache.http.protocol.BasicHttpContext
            dup
            invokespecial org.apache.http.protocol.BasicHttpContext.<init>:()V
            astore 7 /* context */
        start local 7 // org.apache.http.protocol.HttpContext context
        15: .line 182
            new org.apache.http.message.BasicHttpRequest
            dup
        16: .line 183
            ldc "CONNECT"
            aload 4 /* host */
            invokevirtual org.apache.http.HttpHost.toHostString:()Ljava/lang/String;
            getstatic org.apache.http.HttpVersion.HTTP_1_1:Lorg/apache/http/HttpVersion;
        17: .line 182
            invokespecial org.apache.http.message.BasicHttpRequest.<init>:(Ljava/lang/String;Ljava/lang/String;Lorg/apache/http/ProtocolVersion;)V
            astore 9 /* connect */
        start local 9 // org.apache.http.HttpRequest connect
        18: .line 185
            new org.apache.http.impl.client.BasicCredentialsProvider
            dup
            invokespecial org.apache.http.impl.client.BasicCredentialsProvider.<init>:()V
            astore 10 /* credsProvider */
        start local 10 // org.apache.http.impl.client.BasicCredentialsProvider credsProvider
        19: .line 186
            aload 10 /* credsProvider */
            new org.apache.http.auth.AuthScope
            dup
            aload 1 /* proxy */
            invokespecial org.apache.http.auth.AuthScope.<init>:(Lorg/apache/http/HttpHost;)V
            aload 3 /* credentials */
            invokevirtual org.apache.http.impl.client.BasicCredentialsProvider.setCredentials:(Lorg/apache/http/auth/AuthScope;Lorg/apache/http/auth/Credentials;)V
        20: .line 189
            aload 7 /* context */
            ldc "http.target_host"
            aload 2 /* target */
            invokeinterface org.apache.http.protocol.HttpContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        21: .line 190
            aload 7 /* context */
            ldc "http.connection"
            aload 6 /* conn */
            invokeinterface org.apache.http.protocol.HttpContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        22: .line 191
            aload 7 /* context */
            ldc "http.request"
            aload 9 /* connect */
            invokeinterface org.apache.http.protocol.HttpContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        23: .line 192
            aload 7 /* context */
            ldc "http.route"
            aload 5 /* route */
            invokeinterface org.apache.http.protocol.HttpContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        24: .line 193
            aload 7 /* context */
            ldc "http.auth.proxy-scope"
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.proxyAuthState:Lorg/apache/http/auth/AuthState;
            invokeinterface org.apache.http.protocol.HttpContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        25: .line 194
            aload 7 /* context */
            ldc "http.auth.credentials-provider"
            aload 10 /* credsProvider */
            invokeinterface org.apache.http.protocol.HttpContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        26: .line 195
            aload 7 /* context */
            ldc "http.authscheme-registry"
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authSchemeRegistry:Lorg/apache/http/auth/AuthSchemeRegistry;
            invokeinterface org.apache.http.protocol.HttpContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        27: .line 196
            aload 7 /* context */
            ldc "http.request-config"
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.requestConfig:Lorg/apache/http/client/config/RequestConfig;
            invokeinterface org.apache.http.protocol.HttpContext.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
        28: .line 198
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.requestExec:Lorg/apache/http/protocol/HttpRequestExecutor;
            aload 9 /* connect */
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.httpProcessor:Lorg/apache/http/protocol/HttpProcessor;
            aload 7 /* context */
            invokevirtual org.apache.http.protocol.HttpRequestExecutor.preProcess:(Lorg/apache/http/HttpRequest;Lorg/apache/http/protocol/HttpProcessor;Lorg/apache/http/protocol/HttpContext;)V
        29: .line 201
      StackMap locals: org.apache.http.impl.client.ProxyClient org.apache.http.HttpHost org.apache.http.HttpHost org.apache.http.auth.Credentials org.apache.http.HttpHost org.apache.http.conn.routing.HttpRoute org.apache.http.conn.ManagedHttpClientConnection org.apache.http.protocol.HttpContext top org.apache.http.HttpRequest org.apache.http.impl.client.BasicCredentialsProvider
      StackMap stack:
            aload 6 /* conn */
            invokeinterface org.apache.http.conn.ManagedHttpClientConnection.isOpen:()Z
            ifne 32
        30: .line 202
            new java.net.Socket
            dup
            aload 1 /* proxy */
            invokevirtual org.apache.http.HttpHost.getHostName:()Ljava/lang/String;
            aload 1 /* proxy */
            invokevirtual org.apache.http.HttpHost.getPort:()I
            invokespecial java.net.Socket.<init>:(Ljava/lang/String;I)V
            astore 11 /* socket */
        start local 11 // java.net.Socket socket
        31: .line 203
            aload 6 /* conn */
            aload 11 /* socket */
            invokeinterface org.apache.http.conn.ManagedHttpClientConnection.bind:(Ljava/net/Socket;)V
        end local 11 // java.net.Socket socket
        32: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authenticator:Lorg/apache/http/impl/auth/HttpAuthenticator;
            aload 9 /* connect */
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.proxyAuthState:Lorg/apache/http/auth/AuthState;
            aload 7 /* context */
            invokevirtual org.apache.http.impl.auth.HttpAuthenticator.generateAuthResponse:(Lorg/apache/http/HttpRequest;Lorg/apache/http/auth/AuthState;Lorg/apache/http/protocol/HttpContext;)V
        33: .line 208
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.requestExec:Lorg/apache/http/protocol/HttpRequestExecutor;
            aload 9 /* connect */
            aload 6 /* conn */
            aload 7 /* context */
            invokevirtual org.apache.http.protocol.HttpRequestExecutor.execute:(Lorg/apache/http/HttpRequest;Lorg/apache/http/HttpClientConnection;Lorg/apache/http/protocol/HttpContext;)Lorg/apache/http/HttpResponse;
            astore 8 /* response */
        start local 8 // org.apache.http.HttpResponse response
        34: .line 210
            aload 8 /* response */
            invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
            invokeinterface org.apache.http.StatusLine.getStatusCode:()I
            istore 11 /* status */
        start local 11 // int status
        35: .line 211
            iload 11 /* status */
            sipush 200
            if_icmpge 39
        36: .line 212
            new org.apache.http.HttpException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unexpected response to CONNECT request: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        37: .line 213
            aload 8 /* response */
            invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        38: .line 212
            invokespecial org.apache.http.HttpException.<init>:(Ljava/lang/String;)V
            athrow
        39: .line 215
      StackMap locals: org.apache.http.impl.client.ProxyClient org.apache.http.HttpHost org.apache.http.HttpHost org.apache.http.auth.Credentials org.apache.http.HttpHost org.apache.http.conn.routing.HttpRoute org.apache.http.conn.ManagedHttpClientConnection org.apache.http.protocol.HttpContext org.apache.http.HttpResponse org.apache.http.HttpRequest org.apache.http.impl.client.BasicCredentialsProvider int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authenticator:Lorg/apache/http/impl/auth/HttpAuthenticator;
            aload 1 /* proxy */
            aload 8 /* response */
        40: .line 216
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.proxyAuthStrategy:Lorg/apache/http/impl/client/ProxyAuthenticationStrategy;
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.proxyAuthState:Lorg/apache/http/auth/AuthState;
            aload 7 /* context */
        41: .line 215
            invokevirtual org.apache.http.impl.auth.HttpAuthenticator.isAuthenticationRequested:(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpResponse;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/auth/AuthState;Lorg/apache/http/protocol/HttpContext;)Z
        42: .line 216
            ifeq 54
        43: .line 217
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.authenticator:Lorg/apache/http/impl/auth/HttpAuthenticator;
            aload 1 /* proxy */
            aload 8 /* response */
        44: .line 218
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.proxyAuthStrategy:Lorg/apache/http/impl/client/ProxyAuthenticationStrategy;
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.proxyAuthState:Lorg/apache/http/auth/AuthState;
            aload 7 /* context */
        45: .line 217
            invokevirtual org.apache.http.impl.auth.HttpAuthenticator.handleAuthChallenge:(Lorg/apache/http/HttpHost;Lorg/apache/http/HttpResponse;Lorg/apache/http/client/AuthenticationStrategy;Lorg/apache/http/auth/AuthState;Lorg/apache/http/protocol/HttpContext;)Z
        46: .line 218
            ifeq 54
        47: .line 220
            aload 0 /* this */
            getfield org.apache.http.impl.client.ProxyClient.reuseStrategy:Lorg/apache/http/ConnectionReuseStrategy;
            aload 8 /* response */
            aload 7 /* context */
            invokeinterface org.apache.http.ConnectionReuseStrategy.keepAlive:(Lorg/apache/http/HttpResponse;Lorg/apache/http/protocol/HttpContext;)Z
            ifeq 51
        48: .line 222
            aload 8 /* response */
            invokeinterface org.apache.http.HttpResponse.getEntity:()Lorg/apache/http/HttpEntity;
            astore 12 /* entity */
        start local 12 // org.apache.http.HttpEntity entity
        49: .line 223
            aload 12 /* entity */
            invokestatic org.apache.http.util.EntityUtils.consume:(Lorg/apache/http/HttpEntity;)V
        end local 12 // org.apache.http.HttpEntity entity
        50: .line 224
            goto 52
        51: .line 225
      StackMap locals:
      StackMap stack:
            aload 6 /* conn */
            invokeinterface org.apache.http.conn.ManagedHttpClientConnection.close:()V
        52: .line 228
      StackMap locals:
      StackMap stack:
            aload 9 /* connect */
            ldc "Proxy-Authorization"
            invokeinterface org.apache.http.HttpRequest.removeHeaders:(Ljava/lang/String;)V
        end local 11 // int status
        end local 8 // org.apache.http.HttpResponse response
        53: .line 200
            goto 29
        start local 8 // org.apache.http.HttpResponse response
        54: .line 237
      StackMap locals:
      StackMap stack:
            aload 8 /* response */
            invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
            invokeinterface org.apache.http.StatusLine.getStatusCode:()I
            istore 11 /* status */
        start local 11 // int status
        55: .line 239
            iload 11 /* status */
            sipush 299
            if_icmple 63
        56: .line 242
            aload 8 /* response */
            invokeinterface org.apache.http.HttpResponse.getEntity:()Lorg/apache/http/HttpEntity;
            astore 12 /* entity */
        start local 12 // org.apache.http.HttpEntity entity
        57: .line 243
            aload 12 /* entity */
            ifnull 59
        58: .line 244
            aload 8 /* response */
            new org.apache.http.entity.BufferedHttpEntity
            dup
            aload 12 /* entity */
            invokespecial org.apache.http.entity.BufferedHttpEntity.<init>:(Lorg/apache/http/HttpEntity;)V
            invokeinterface org.apache.http.HttpResponse.setEntity:(Lorg/apache/http/HttpEntity;)V
        59: .line 247
      StackMap locals: int org.apache.http.HttpEntity
      StackMap stack:
            aload 6 /* conn */
            invokeinterface org.apache.http.conn.ManagedHttpClientConnection.close:()V
        60: .line 248
            new org.apache.http.impl.execchain.TunnelRefusedException
            dup
            new java.lang.StringBuilder
            dup
            ldc "CONNECT refused by proxy: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        61: .line 249
            aload 8 /* response */
            invokeinterface org.apache.http.HttpResponse.getStatusLine:()Lorg/apache/http/StatusLine;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 8 /* response */
        62: .line 248
            invokespecial org.apache.http.impl.execchain.TunnelRefusedException.<init>:(Ljava/lang/String;Lorg/apache/http/HttpResponse;)V
            athrow
        end local 12 // org.apache.http.HttpEntity entity
        63: .line 251
      StackMap locals:
      StackMap stack:
            aload 6 /* conn */
            invokeinterface org.apache.http.conn.ManagedHttpClientConnection.getSocket:()Ljava/net/Socket;
            areturn
        end local 11 // int status
        end local 10 // org.apache.http.impl.client.BasicCredentialsProvider credsProvider
        end local 9 // org.apache.http.HttpRequest connect
        end local 8 // org.apache.http.HttpResponse response
        end local 7 // org.apache.http.protocol.HttpContext context
        end local 6 // org.apache.http.conn.ManagedHttpClientConnection conn
        end local 5 // org.apache.http.conn.routing.HttpRoute route
        end local 4 // org.apache.http.HttpHost host
        end local 3 // org.apache.http.auth.Credentials credentials
        end local 2 // org.apache.http.HttpHost target
        end local 1 // org.apache.http.HttpHost proxy
        end local 0 // org.apache.http.impl.client.ProxyClient this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   64     0           this  Lorg/apache/http/impl/client/ProxyClient;
            0   64     1          proxy  Lorg/apache/http/HttpHost;
            0   64     2         target  Lorg/apache/http/HttpHost;
            0   64     3    credentials  Lorg/apache/http/auth/Credentials;
            4   64     4           host  Lorg/apache/http/HttpHost;
           11   64     5          route  Lorg/apache/http/conn/routing/HttpRoute;
           14   64     6           conn  Lorg/apache/http/conn/ManagedHttpClientConnection;
           15   64     7        context  Lorg/apache/http/protocol/HttpContext;
           34   53     8       response  Lorg/apache/http/HttpResponse;
           54   64     8       response  Lorg/apache/http/HttpResponse;
           18   64     9        connect  Lorg/apache/http/HttpRequest;
           19   64    10  credsProvider  Lorg/apache/http/impl/client/BasicCredentialsProvider;
           31   32    11         socket  Ljava/net/Socket;
           35   53    11         status  I
           49   50    12         entity  Lorg/apache/http/HttpEntity;
           55   64    11         status  I
           57   63    12         entity  Lorg/apache/http/HttpEntity;
    Exceptions:
      throws java.io.IOException, org.apache.http.HttpException
    MethodParameters:
             Name  Flags
      proxy        final
      target       final
      credentials  final
}
SourceFile: "ProxyClient.java"
InnerClasses:
  public final LayerType = org.apache.http.conn.routing.RouteInfo$LayerType of org.apache.http.conn.routing.RouteInfo
  public final TunnelType = org.apache.http.conn.routing.RouteInfo$TunnelType of org.apache.http.conn.routing.RouteInfo