public final class okhttp3.internal.connection.StreamAllocation
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: okhttp3.internal.connection.StreamAllocation
  super_class: java.lang.Object
{
  public final okhttp3.Address address;
    descriptor: Lokhttp3/Address;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  private okhttp3.internal.connection.RouteSelector$Selection routeSelection;
    descriptor: Lokhttp3/internal/connection/RouteSelector$Selection;
    flags: (0x0002) ACC_PRIVATE

  private okhttp3.Route route;
    descriptor: Lokhttp3/Route;
    flags: (0x0002) ACC_PRIVATE

  private final okhttp3.ConnectionPool connectionPool;
    descriptor: Lokhttp3/ConnectionPool;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public final okhttp3.Call call;
    descriptor: Lokhttp3/Call;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final okhttp3.EventListener eventListener;
    descriptor: Lokhttp3/EventListener;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

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

  private final okhttp3.internal.connection.RouteSelector routeSelector;
    descriptor: Lokhttp3/internal/connection/RouteSelector;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private okhttp3.internal.connection.RealConnection connection;
    descriptor: Lokhttp3/internal/connection/RealConnection;
    flags: (0x0002) ACC_PRIVATE

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

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

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

  private okhttp3.internal.http.HttpCodec codec;
    descriptor: Lokhttp3/internal/http/HttpCodec;
    flags: (0x0002) ACC_PRIVATE

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 77
            ldc Lokhttp3/internal/connection/StreamAllocation;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic okhttp3.internal.connection.StreamAllocation.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(okhttp3.ConnectionPool, okhttp3.Address, okhttp3.Call, okhttp3.EventListener, java.lang.Object);
    descriptor: (Lokhttp3/ConnectionPool;Lokhttp3/Address;Lokhttp3/Call;Lokhttp3/EventListener;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // okhttp3.ConnectionPool connectionPool
        start local 2 // okhttp3.Address address
        start local 3 // okhttp3.Call call
        start local 4 // okhttp3.EventListener eventListener
        start local 5 // java.lang.Object callStackTrace
         0: .line 95
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 97
            aload 0 /* this */
            aload 1 /* connectionPool */
            putfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
         2: .line 98
            aload 0 /* this */
            aload 2 /* address */
            putfield okhttp3.internal.connection.StreamAllocation.address:Lokhttp3/Address;
         3: .line 99
            aload 0 /* this */
            aload 3 /* call */
            putfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
         4: .line 100
            aload 0 /* this */
            aload 4 /* eventListener */
            putfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
         5: .line 101
            aload 0 /* this */
            new okhttp3.internal.connection.RouteSelector
            dup
            aload 2 /* address */
            aload 0 /* this */
            invokevirtual okhttp3.internal.connection.StreamAllocation.routeDatabase:()Lokhttp3/internal/connection/RouteDatabase;
            aload 3 /* call */
            aload 4 /* eventListener */
            invokespecial okhttp3.internal.connection.RouteSelector.<init>:(Lokhttp3/Address;Lokhttp3/internal/connection/RouteDatabase;Lokhttp3/Call;Lokhttp3/EventListener;)V
            putfield okhttp3.internal.connection.StreamAllocation.routeSelector:Lokhttp3/internal/connection/RouteSelector;
         6: .line 102
            aload 0 /* this */
            aload 5 /* callStackTrace */
            putfield okhttp3.internal.connection.StreamAllocation.callStackTrace:Ljava/lang/Object;
         7: .line 103
            return
        end local 5 // java.lang.Object callStackTrace
        end local 4 // okhttp3.EventListener eventListener
        end local 3 // okhttp3.Call call
        end local 2 // okhttp3.Address address
        end local 1 // okhttp3.ConnectionPool connectionPool
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Lokhttp3/internal/connection/StreamAllocation;
            0    8     1  connectionPool  Lokhttp3/ConnectionPool;
            0    8     2         address  Lokhttp3/Address;
            0    8     3            call  Lokhttp3/Call;
            0    8     4   eventListener  Lokhttp3/EventListener;
            0    8     5  callStackTrace  Ljava/lang/Object;
    MethodParameters:
                Name  Flags
      connectionPool  
      address         
      call            
      eventListener   
      callStackTrace  

  public okhttp3.internal.http.HttpCodec newStream(okhttp3.OkHttpClient, okhttp3.Interceptor$Chain, boolean);
    descriptor: (Lokhttp3/OkHttpClient;Lokhttp3/Interceptor$Chain;Z)Lokhttp3/internal/http/HttpCodec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=12, args_size=4
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // okhttp3.OkHttpClient client
        start local 2 // okhttp3.Interceptor$Chain chain
        start local 3 // boolean doExtensiveHealthChecks
         0: .line 107
            aload 2 /* chain */
            invokeinterface okhttp3.Interceptor$Chain.connectTimeoutMillis:()I
            istore 4 /* connectTimeout */
        start local 4 // int connectTimeout
         1: .line 108
            aload 2 /* chain */
            invokeinterface okhttp3.Interceptor$Chain.readTimeoutMillis:()I
            istore 5 /* readTimeout */
        start local 5 // int readTimeout
         2: .line 109
            aload 2 /* chain */
            invokeinterface okhttp3.Interceptor$Chain.writeTimeoutMillis:()I
            istore 6 /* writeTimeout */
        start local 6 // int writeTimeout
         3: .line 110
            aload 1 /* client */
            invokevirtual okhttp3.OkHttpClient.pingIntervalMillis:()I
            istore 7 /* pingIntervalMillis */
        start local 7 // int pingIntervalMillis
         4: .line 111
            aload 1 /* client */
            invokevirtual okhttp3.OkHttpClient.retryOnConnectionFailure:()Z
            istore 8 /* connectionRetryEnabled */
        start local 8 // boolean connectionRetryEnabled
         5: .line 114
            aload 0 /* this */
            iload 4 /* connectTimeout */
            iload 5 /* readTimeout */
         6: .line 115
            iload 6 /* writeTimeout */
            iload 7 /* pingIntervalMillis */
            iload 8 /* connectionRetryEnabled */
            iload 3 /* doExtensiveHealthChecks */
         7: .line 114
            invokevirtual okhttp3.internal.connection.StreamAllocation.findHealthyConnection:(IIIIZZ)Lokhttp3/internal/connection/RealConnection;
            astore 9 /* resultConnection */
        start local 9 // okhttp3.internal.connection.RealConnection resultConnection
         8: .line 116
            aload 9 /* resultConnection */
            aload 1 /* client */
            aload 2 /* chain */
            aload 0 /* this */
            invokevirtual okhttp3.internal.connection.RealConnection.newCodec:(Lokhttp3/OkHttpClient;Lokhttp3/Interceptor$Chain;Lokhttp3/internal/connection/StreamAllocation;)Lokhttp3/internal/http/HttpCodec;
            astore 10 /* resultCodec */
        start local 10 // okhttp3.internal.http.HttpCodec resultCodec
         9: .line 118
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 11
            monitorenter
        10: .line 119
            aload 0 /* this */
            aload 10 /* resultCodec */
            putfield okhttp3.internal.connection.StreamAllocation.codec:Lokhttp3/internal/http/HttpCodec;
        11: .line 120
            aload 10 /* resultCodec */
            aload 11
            monitorexit
        12: areturn
        13: .line 118
      StackMap locals: okhttp3.internal.connection.StreamAllocation okhttp3.OkHttpClient okhttp3.Interceptor$Chain int int int int int int okhttp3.internal.connection.RealConnection okhttp3.internal.http.HttpCodec okhttp3.ConnectionPool
      StackMap stack: java.lang.Throwable
            aload 11
            monitorexit
        14: athrow
        end local 10 // okhttp3.internal.http.HttpCodec resultCodec
        end local 9 // okhttp3.internal.connection.RealConnection resultConnection
        15: .line 122
      StackMap locals: okhttp3.internal.connection.StreamAllocation okhttp3.OkHttpClient okhttp3.Interceptor$Chain int int int int int int
      StackMap stack: java.io.IOException
            astore 9 /* e */
        start local 9 // java.io.IOException e
        16: .line 123
            new okhttp3.internal.connection.RouteException
            dup
            aload 9 /* e */
            invokespecial okhttp3.internal.connection.RouteException.<init>:(Ljava/io/IOException;)V
            athrow
        end local 9 // java.io.IOException e
        end local 8 // boolean connectionRetryEnabled
        end local 7 // int pingIntervalMillis
        end local 6 // int writeTimeout
        end local 5 // int readTimeout
        end local 4 // int connectTimeout
        end local 3 // boolean doExtensiveHealthChecks
        end local 2 // okhttp3.Interceptor$Chain chain
        end local 1 // okhttp3.OkHttpClient client
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   17     0                     this  Lokhttp3/internal/connection/StreamAllocation;
            0   17     1                   client  Lokhttp3/OkHttpClient;
            0   17     2                    chain  Lokhttp3/Interceptor$Chain;
            0   17     3  doExtensiveHealthChecks  Z
            1   17     4           connectTimeout  I
            2   17     5              readTimeout  I
            3   17     6             writeTimeout  I
            4   17     7       pingIntervalMillis  I
            5   17     8   connectionRetryEnabled  Z
            8   15     9         resultConnection  Lokhttp3/internal/connection/RealConnection;
            9   15    10              resultCodec  Lokhttp3/internal/http/HttpCodec;
           16   17     9                        e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
          10    12      13  any
          13    14      13  any
           5    12      15  Class java.io.IOException
          13    15      15  Class java.io.IOException
    MethodParameters:
                         Name  Flags
      client                   
      chain                    
      doExtensiveHealthChecks  

  private okhttp3.internal.connection.RealConnection findHealthyConnection(int, int, int, int, boolean, boolean);
    descriptor: (IIIIZZ)Lokhttp3/internal/connection/RealConnection;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=9, args_size=7
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // int connectTimeout
        start local 2 // int readTimeout
        start local 3 // int writeTimeout
        start local 4 // int pingIntervalMillis
        start local 5 // boolean connectionRetryEnabled
        start local 6 // boolean doExtensiveHealthChecks
         0: .line 135
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* connectTimeout */
            iload 2 /* readTimeout */
            iload 3 /* writeTimeout */
         1: .line 136
            iload 4 /* pingIntervalMillis */
            iload 5 /* connectionRetryEnabled */
         2: .line 135
            invokevirtual okhttp3.internal.connection.StreamAllocation.findConnection:(IIIIZ)Lokhttp3/internal/connection/RealConnection;
            astore 7 /* candidate */
        start local 7 // okhttp3.internal.connection.RealConnection candidate
         3: .line 139
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 8
            monitorenter
         4: .line 140
            aload 7 /* candidate */
            getfield okhttp3.internal.connection.RealConnection.successCount:I
            ifne 7
         5: .line 141
            aload 7 /* candidate */
            aload 8
            monitorexit
         6: areturn
         7: .line 139
      StackMap locals: okhttp3.internal.connection.RealConnection okhttp3.ConnectionPool
      StackMap stack:
            aload 8
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 8
            monitorexit
        10: athrow
        11: .line 147
      StackMap locals:
      StackMap stack:
            aload 7 /* candidate */
            iload 6 /* doExtensiveHealthChecks */
            invokevirtual okhttp3.internal.connection.RealConnection.isHealthy:(Z)Z
            ifne 14
        12: .line 148
            aload 0 /* this */
            invokevirtual okhttp3.internal.connection.StreamAllocation.noNewStreams:()V
        13: .line 149
            goto 0
        14: .line 152
      StackMap locals:
      StackMap stack:
            aload 7 /* candidate */
            areturn
        end local 7 // okhttp3.internal.connection.RealConnection candidate
        end local 6 // boolean doExtensiveHealthChecks
        end local 5 // boolean connectionRetryEnabled
        end local 4 // int pingIntervalMillis
        end local 3 // int writeTimeout
        end local 2 // int readTimeout
        end local 1 // int connectTimeout
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   15     0                     this  Lokhttp3/internal/connection/StreamAllocation;
            0   15     1           connectTimeout  I
            0   15     2              readTimeout  I
            0   15     3             writeTimeout  I
            0   15     4       pingIntervalMillis  I
            0   15     5   connectionRetryEnabled  Z
            0   15     6  doExtensiveHealthChecks  Z
            3   15     7                candidate  Lokhttp3/internal/connection/RealConnection;
      Exception table:
        from    to  target  type
           4     6       9  any
           7     8       9  any
           9    10       9  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                         Name  Flags
      connectTimeout           
      readTimeout              
      writeTimeout             
      pingIntervalMillis       
      connectionRetryEnabled   
      doExtensiveHealthChecks  

  private okhttp3.internal.connection.RealConnection findConnection(int, int, int, int, boolean);
    descriptor: (IIIIZ)Lokhttp3/internal/connection/RealConnection;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=17, args_size=6
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // int connectTimeout
        start local 2 // int readTimeout
        start local 3 // int writeTimeout
        start local 4 // int pingIntervalMillis
        start local 5 // boolean connectionRetryEnabled
         0: .line 162
            iconst_0
            istore 6 /* foundPooledConnection */
        start local 6 // boolean foundPooledConnection
         1: .line 163
            aconst_null
            astore 7 /* result */
        start local 7 // okhttp3.internal.connection.RealConnection result
         2: .line 164
            aconst_null
            astore 8 /* selectedRoute */
        start local 8 // okhttp3.Route selectedRoute
         3: .line 167
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 11
            monitorenter
         4: .line 168
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.released:Z
            ifeq 5
            new java.lang.IllegalStateException
            dup
            ldc "released"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 169
      StackMap locals: okhttp3.internal.connection.StreamAllocation int int int int int int okhttp3.internal.connection.RealConnection okhttp3.Route top top okhttp3.ConnectionPool
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.codec:Lokhttp3/internal/http/HttpCodec;
            ifnull 6
            new java.lang.IllegalStateException
            dup
            ldc "codec != null"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 170
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.canceled:Z
            ifeq 7
            new java.io.IOException
            dup
            ldc "Canceled"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 174
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 9 /* releasedConnection */
        start local 9 // okhttp3.Connection releasedConnection
         8: .line 175
            aload 0 /* this */
            invokevirtual okhttp3.internal.connection.StreamAllocation.releaseIfNoNewStreams:()Ljava/net/Socket;
            astore 10 /* toClose */
        start local 10 // java.net.Socket toClose
         9: .line 176
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnull 12
        10: .line 178
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 7 /* result */
        11: .line 179
            aconst_null
            astore 9 /* releasedConnection */
        12: .line 181
      StackMap locals: okhttp3.internal.connection.StreamAllocation int int int int int int okhttp3.internal.connection.RealConnection okhttp3.Route okhttp3.Connection java.net.Socket okhttp3.ConnectionPool
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.reportedAcquired:Z
            ifne 14
        13: .line 183
            aconst_null
            astore 9 /* releasedConnection */
        14: .line 186
      StackMap locals:
      StackMap stack:
            aload 7 /* result */
            ifnonnull 21
        15: .line 188
            getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.address:Lokhttp3/Address;
            aload 0 /* this */
            aconst_null
            invokevirtual okhttp3.internal.Internal.get:(Lokhttp3/ConnectionPool;Lokhttp3/Address;Lokhttp3/internal/connection/StreamAllocation;Lokhttp3/Route;)Lokhttp3/internal/connection/RealConnection;
            pop
        16: .line 189
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnull 20
        17: .line 190
            iconst_1
            istore 6 /* foundPooledConnection */
        18: .line 191
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 7 /* result */
        19: .line 192
            goto 21
        20: .line 193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
            astore 8 /* selectedRoute */
        21: .line 167
      StackMap locals:
      StackMap stack:
            aload 11
            monitorexit
        22: goto 25
        end local 10 // java.net.Socket toClose
        end local 9 // okhttp3.Connection releasedConnection
      StackMap locals: okhttp3.internal.connection.StreamAllocation int int int int int int okhttp3.internal.connection.RealConnection okhttp3.Route top top okhttp3.ConnectionPool
      StackMap stack: java.lang.Throwable
        23: aload 11
            monitorexit
        24: athrow
        start local 9 // okhttp3.Connection releasedConnection
        start local 10 // java.net.Socket toClose
        25: .line 197
      StackMap locals: okhttp3.internal.connection.StreamAllocation int int int int int int okhttp3.internal.connection.RealConnection okhttp3.Route okhttp3.Connection java.net.Socket
      StackMap stack:
            aload 10 /* toClose */
            invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
        26: .line 199
            aload 9 /* releasedConnection */
            ifnull 28
        27: .line 200
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 9 /* releasedConnection */
            invokevirtual okhttp3.EventListener.connectionReleased:(Lokhttp3/Call;Lokhttp3/Connection;)V
        28: .line 202
      StackMap locals:
      StackMap stack:
            iload 6 /* foundPooledConnection */
            ifeq 30
        29: .line 203
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 7 /* result */
            invokevirtual okhttp3.EventListener.connectionAcquired:(Lokhttp3/Call;Lokhttp3/Connection;)V
        30: .line 205
      StackMap locals:
      StackMap stack:
            aload 7 /* result */
            ifnull 32
        31: .line 207
            aload 7 /* result */
            areturn
        32: .line 211
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 11 /* newRouteSelection */
        start local 11 // boolean newRouteSelection
        33: .line 212
            aload 8 /* selectedRoute */
            ifnonnull 36
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.routeSelection:Lokhttp3/internal/connection/RouteSelector$Selection;
            ifnull 34
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.routeSelection:Lokhttp3/internal/connection/RouteSelector$Selection;
            invokevirtual okhttp3.internal.connection.RouteSelector$Selection.hasNext:()Z
            ifne 36
        34: .line 213
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 11 /* newRouteSelection */
        35: .line 214
            aload 0 /* this */
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.routeSelector:Lokhttp3/internal/connection/RouteSelector;
            invokevirtual okhttp3.internal.connection.RouteSelector.next:()Lokhttp3/internal/connection/RouteSelector$Selection;
            putfield okhttp3.internal.connection.StreamAllocation.routeSelection:Lokhttp3/internal/connection/RouteSelector$Selection;
        36: .line 217
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 12
            monitorenter
        37: .line 218
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.canceled:Z
            ifeq 38
            new java.io.IOException
            dup
            ldc "Canceled"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        38: .line 220
      StackMap locals: okhttp3.ConnectionPool
      StackMap stack:
            iload 11 /* newRouteSelection */
            ifeq 52
        39: .line 223
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.routeSelection:Lokhttp3/internal/connection/RouteSelector$Selection;
            invokevirtual okhttp3.internal.connection.RouteSelector$Selection.getAll:()Ljava/util/List;
            astore 13 /* routes */
        start local 13 // java.util.List routes
        40: .line 224
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        41: aload 13 /* routes */
            invokeinterface java.util.List.size:()I
            istore 15 /* size */
        start local 15 // int size
        42: goto 51
        43: .line 225
      StackMap locals: java.util.List int int
      StackMap stack:
            aload 13 /* routes */
            iload 14 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast okhttp3.Route
            astore 16 /* route */
        start local 16 // okhttp3.Route route
        44: .line 226
            getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.address:Lokhttp3/Address;
            aload 0 /* this */
            aload 16 /* route */
            invokevirtual okhttp3.internal.Internal.get:(Lokhttp3/ConnectionPool;Lokhttp3/Address;Lokhttp3/internal/connection/StreamAllocation;Lokhttp3/Route;)Lokhttp3/internal/connection/RealConnection;
            pop
        45: .line 227
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnull 50
        46: .line 228
            iconst_1
            istore 6 /* foundPooledConnection */
        47: .line 229
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 7 /* result */
        48: .line 230
            aload 0 /* this */
            aload 16 /* route */
            putfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
        49: .line 231
            goto 52
        end local 16 // okhttp3.Route route
        50: .line 224
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        51: iload 14 /* i */
            iload 15 /* size */
            if_icmplt 43
        end local 15 // int size
        end local 14 // int i
        end local 13 // java.util.List routes
        52: .line 236
      StackMap locals:
      StackMap stack:
            iload 6 /* foundPooledConnection */
            ifne 59
        53: .line 237
            aload 8 /* selectedRoute */
            ifnonnull 55
        54: .line 238
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.routeSelection:Lokhttp3/internal/connection/RouteSelector$Selection;
            invokevirtual okhttp3.internal.connection.RouteSelector$Selection.next:()Lokhttp3/Route;
            astore 8 /* selectedRoute */
        55: .line 243
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* selectedRoute */
            putfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
        56: .line 244
            aload 0 /* this */
            iconst_0
            putfield okhttp3.internal.connection.StreamAllocation.refusedStreamCount:I
        57: .line 245
            new okhttp3.internal.connection.RealConnection
            dup
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            aload 8 /* selectedRoute */
            invokespecial okhttp3.internal.connection.RealConnection.<init>:(Lokhttp3/ConnectionPool;Lokhttp3/Route;)V
            astore 7 /* result */
        58: .line 246
            aload 0 /* this */
            aload 7 /* result */
            iconst_0
            invokevirtual okhttp3.internal.connection.StreamAllocation.acquire:(Lokhttp3/internal/connection/RealConnection;Z)V
        59: .line 217
      StackMap locals:
      StackMap stack:
            aload 12
            monitorexit
        60: goto 63
      StackMap locals:
      StackMap stack: java.lang.Throwable
        61: aload 12
            monitorexit
        62: athrow
        63: .line 251
      StackMap locals:
      StackMap stack:
            iload 6 /* foundPooledConnection */
            ifeq 66
        64: .line 252
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 7 /* result */
            invokevirtual okhttp3.EventListener.connectionAcquired:(Lokhttp3/Call;Lokhttp3/Connection;)V
        65: .line 253
            aload 7 /* result */
            areturn
        66: .line 257
      StackMap locals:
      StackMap stack:
            aload 7 /* result */
            iload 1 /* connectTimeout */
            iload 2 /* readTimeout */
            iload 3 /* writeTimeout */
            iload 4 /* pingIntervalMillis */
        67: .line 258
            iload 5 /* connectionRetryEnabled */
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
        68: .line 257
            invokevirtual okhttp3.internal.connection.RealConnection.connect:(IIIIZLokhttp3/Call;Lokhttp3/EventListener;)V
        69: .line 259
            aload 0 /* this */
            invokevirtual okhttp3.internal.connection.StreamAllocation.routeDatabase:()Lokhttp3/internal/connection/RouteDatabase;
            aload 7 /* result */
            invokevirtual okhttp3.internal.connection.RealConnection.route:()Lokhttp3/Route;
            invokevirtual okhttp3.internal.connection.RouteDatabase.connected:(Lokhttp3/Route;)V
        70: .line 261
            aconst_null
            astore 12 /* socket */
        start local 12 // java.net.Socket socket
        71: .line 262
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 13
            monitorenter
        72: .line 263
            aload 0 /* this */
            iconst_1
            putfield okhttp3.internal.connection.StreamAllocation.reportedAcquired:Z
        73: .line 266
            getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            aload 7 /* result */
            invokevirtual okhttp3.internal.Internal.put:(Lokhttp3/ConnectionPool;Lokhttp3/internal/connection/RealConnection;)V
        74: .line 270
            aload 7 /* result */
            invokevirtual okhttp3.internal.connection.RealConnection.isMultiplexed:()Z
            ifeq 77
        75: .line 271
            getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.address:Lokhttp3/Address;
            aload 0 /* this */
            invokevirtual okhttp3.internal.Internal.deduplicate:(Lokhttp3/ConnectionPool;Lokhttp3/Address;Lokhttp3/internal/connection/StreamAllocation;)Ljava/net/Socket;
            astore 12 /* socket */
        76: .line 272
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 7 /* result */
        77: .line 262
      StackMap locals: java.net.Socket okhttp3.ConnectionPool
      StackMap stack:
            aload 13
            monitorexit
        78: goto 81
      StackMap locals:
      StackMap stack: java.lang.Throwable
        79: aload 13
            monitorexit
        80: athrow
        81: .line 275
      StackMap locals:
      StackMap stack:
            aload 12 /* socket */
            invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
        82: .line 277
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 7 /* result */
            invokevirtual okhttp3.EventListener.connectionAcquired:(Lokhttp3/Call;Lokhttp3/Connection;)V
        83: .line 278
            aload 7 /* result */
            areturn
        end local 12 // java.net.Socket socket
        end local 11 // boolean newRouteSelection
        end local 10 // java.net.Socket toClose
        end local 9 // okhttp3.Connection releasedConnection
        end local 8 // okhttp3.Route selectedRoute
        end local 7 // okhttp3.internal.connection.RealConnection result
        end local 6 // boolean foundPooledConnection
        end local 5 // boolean connectionRetryEnabled
        end local 4 // int pingIntervalMillis
        end local 3 // int writeTimeout
        end local 2 // int readTimeout
        end local 1 // int connectTimeout
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   84     0                    this  Lokhttp3/internal/connection/StreamAllocation;
            0   84     1          connectTimeout  I
            0   84     2             readTimeout  I
            0   84     3            writeTimeout  I
            0   84     4      pingIntervalMillis  I
            0   84     5  connectionRetryEnabled  Z
            1   84     6   foundPooledConnection  Z
            2   84     7                  result  Lokhttp3/internal/connection/RealConnection;
            3   84     8           selectedRoute  Lokhttp3/Route;
            8   23     9      releasedConnection  Lokhttp3/Connection;
           25   84     9      releasedConnection  Lokhttp3/Connection;
            9   23    10                 toClose  Ljava/net/Socket;
           25   84    10                 toClose  Ljava/net/Socket;
           33   84    11       newRouteSelection  Z
           40   52    13                  routes  Ljava/util/List<Lokhttp3/Route;>;
           41   52    14                       i  I
           42   52    15                    size  I
           44   50    16                   route  Lokhttp3/Route;
           71   84    12                  socket  Ljava/net/Socket;
      Exception table:
        from    to  target  type
           4    22      23  any
          23    24      23  any
          37    60      61  any
          61    62      61  any
          72    78      79  any
          79    80      79  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                        Name  Flags
      connectTimeout          
      readTimeout             
      writeTimeout            
      pingIntervalMillis      
      connectionRetryEnabled  

  private java.net.Socket releaseIfNoNewStreams();
    descriptor: ()Ljava/net/Socket;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 288
            getstatic okhttp3.internal.connection.StreamAllocation.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 289
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 1 /* allocatedConnection */
        start local 1 // okhttp3.internal.connection.RealConnection allocatedConnection
         2: .line 290
            aload 1 /* allocatedConnection */
            ifnull 4
            aload 1 /* allocatedConnection */
            getfield okhttp3.internal.connection.RealConnection.noNewStreams:Z
            ifeq 4
         3: .line 291
            aload 0 /* this */
            iconst_0
            iconst_0
            iconst_1
            invokevirtual okhttp3.internal.connection.StreamAllocation.deallocate:(ZZZ)Ljava/net/Socket;
            areturn
         4: .line 293
      StackMap locals: okhttp3.internal.connection.RealConnection
      StackMap stack:
            aconst_null
            areturn
        end local 1 // okhttp3.internal.connection.RealConnection allocatedConnection
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    5     0                 this  Lokhttp3/internal/connection/StreamAllocation;
            2    5     1  allocatedConnection  Lokhttp3/internal/connection/RealConnection;

  public void streamFinished(boolean, okhttp3.internal.http.HttpCodec, long, java.io.IOException);
    descriptor: (ZLokhttp3/internal/http/HttpCodec;JLjava/io/IOException;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=5
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // boolean noNewStreams
        start local 2 // okhttp3.internal.http.HttpCodec codec
        start local 3 // long bytesRead
        start local 5 // java.io.IOException e
         0: .line 297
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            lload 3 /* bytesRead */
            invokevirtual okhttp3.EventListener.responseBodyEnd:(Lokhttp3/Call;J)V
         1: .line 302
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 9
            monitorenter
         2: .line 303
            aload 2 /* codec */
            ifnull 3
            aload 2 /* codec */
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.codec:Lokhttp3/internal/http/HttpCodec;
            if_acmpeq 4
         3: .line 304
      StackMap locals: okhttp3.internal.connection.StreamAllocation int okhttp3.internal.http.HttpCodec long java.io.IOException top top top okhttp3.ConnectionPool
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "expected "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.codec:Lokhttp3/internal/http/HttpCodec;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " but was "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* codec */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 306
      StackMap locals:
      StackMap stack:
            iload 1 /* noNewStreams */
            ifne 6
         5: .line 307
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            dup
            getfield okhttp3.internal.connection.RealConnection.successCount:I
            iconst_1
            iadd
            putfield okhttp3.internal.connection.RealConnection.successCount:I
         6: .line 309
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 7 /* releasedConnection */
        start local 7 // okhttp3.Connection releasedConnection
         7: .line 310
            aload 0 /* this */
            iload 1 /* noNewStreams */
            iconst_0
            iconst_1
            invokevirtual okhttp3.internal.connection.StreamAllocation.deallocate:(ZZZ)Ljava/net/Socket;
            astore 6 /* socket */
        start local 6 // java.net.Socket socket
         8: .line 311
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnull 9
            aconst_null
            astore 7 /* releasedConnection */
         9: .line 312
      StackMap locals: okhttp3.internal.connection.StreamAllocation int okhttp3.internal.http.HttpCodec long java.io.IOException java.net.Socket okhttp3.Connection top okhttp3.ConnectionPool
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.released:Z
            istore 8 /* callEnd */
        start local 8 // boolean callEnd
        10: .line 302
            aload 9
            monitorexit
        11: goto 14
        end local 8 // boolean callEnd
        end local 7 // okhttp3.Connection releasedConnection
        end local 6 // java.net.Socket socket
      StackMap locals: okhttp3.internal.connection.StreamAllocation int okhttp3.internal.http.HttpCodec long java.io.IOException top top top okhttp3.ConnectionPool
      StackMap stack: java.lang.Throwable
        12: aload 9
            monitorexit
        13: athrow
        start local 6 // java.net.Socket socket
        start local 7 // okhttp3.Connection releasedConnection
        start local 8 // boolean callEnd
        14: .line 314
      StackMap locals: okhttp3.internal.connection.StreamAllocation int okhttp3.internal.http.HttpCodec long java.io.IOException java.net.Socket okhttp3.Connection int
      StackMap stack:
            aload 6 /* socket */
            invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
        15: .line 315
            aload 7 /* releasedConnection */
            ifnull 17
        16: .line 316
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 7 /* releasedConnection */
            invokevirtual okhttp3.EventListener.connectionReleased:(Lokhttp3/Call;Lokhttp3/Connection;)V
        17: .line 319
      StackMap locals:
      StackMap stack:
            aload 5 /* e */
            ifnull 21
        18: .line 320
            getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 5 /* e */
            invokevirtual okhttp3.internal.Internal.timeoutExit:(Lokhttp3/Call;Ljava/io/IOException;)Ljava/io/IOException;
            astore 5 /* e */
        19: .line 321
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 5 /* e */
            invokevirtual okhttp3.EventListener.callFailed:(Lokhttp3/Call;Ljava/io/IOException;)V
        20: .line 322
            goto 24
      StackMap locals:
      StackMap stack:
        21: iload 8 /* callEnd */
            ifeq 24
        22: .line 323
            getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aconst_null
            invokevirtual okhttp3.internal.Internal.timeoutExit:(Lokhttp3/Call;Ljava/io/IOException;)Ljava/io/IOException;
            pop
        23: .line 324
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            invokevirtual okhttp3.EventListener.callEnd:(Lokhttp3/Call;)V
        24: .line 326
      StackMap locals:
      StackMap stack:
            return
        end local 8 // boolean callEnd
        end local 7 // okhttp3.Connection releasedConnection
        end local 6 // java.net.Socket socket
        end local 5 // java.io.IOException e
        end local 3 // long bytesRead
        end local 2 // okhttp3.internal.http.HttpCodec codec
        end local 1 // boolean noNewStreams
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   25     0                this  Lokhttp3/internal/connection/StreamAllocation;
            0   25     1        noNewStreams  Z
            0   25     2               codec  Lokhttp3/internal/http/HttpCodec;
            0   25     3           bytesRead  J
            0   25     5                   e  Ljava/io/IOException;
            8   12     6              socket  Ljava/net/Socket;
           14   25     6              socket  Ljava/net/Socket;
            7   12     7  releasedConnection  Lokhttp3/Connection;
           14   25     7  releasedConnection  Lokhttp3/Connection;
           10   12     8             callEnd  Z
           14   25     8             callEnd  Z
      Exception table:
        from    to  target  type
           2    11      12  any
          12    13      12  any
    MethodParameters:
              Name  Flags
      noNewStreams  
      codec         
      bytesRead     
      e             

  public okhttp3.internal.http.HttpCodec codec();
    descriptor: ()Lokhttp3/internal/http/HttpCodec;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 329
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 1
            monitorenter
         1: .line 330
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.codec:Lokhttp3/internal/http/HttpCodec;
            aload 1
            monitorexit
         2: areturn
         3: .line 329
      StackMap locals: okhttp3.internal.connection.StreamAllocation okhttp3.ConnectionPool
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         4: athrow
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lokhttp3/internal/connection/StreamAllocation;
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any

  private okhttp3.internal.connection.RouteDatabase routeDatabase();
    descriptor: ()Lokhttp3/internal/connection/RouteDatabase;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 335
            getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            invokevirtual okhttp3.internal.Internal.routeDatabase:(Lokhttp3/ConnectionPool;)Lokhttp3/internal/connection/RouteDatabase;
            areturn
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lokhttp3/internal/connection/StreamAllocation;

  public okhttp3.Route route();
    descriptor: ()Lokhttp3/Route;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 339
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
            areturn
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lokhttp3/internal/connection/StreamAllocation;

  public synchronized okhttp3.internal.connection.RealConnection connection();
    descriptor: ()Lokhttp3/internal/connection/RealConnection;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 343
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            areturn
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lokhttp3/internal/connection/StreamAllocation;

  public void release();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 349
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 3
            monitorenter
         1: .line 350
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 2 /* releasedConnection */
        start local 2 // okhttp3.Connection releasedConnection
         2: .line 351
            aload 0 /* this */
            iconst_0
            iconst_1
            iconst_0
            invokevirtual okhttp3.internal.connection.StreamAllocation.deallocate:(ZZZ)Ljava/net/Socket;
            astore 1 /* socket */
        start local 1 // java.net.Socket socket
         3: .line 352
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnull 4
            aconst_null
            astore 2 /* releasedConnection */
         4: .line 349
      StackMap locals: java.net.Socket okhttp3.Connection okhttp3.ConnectionPool
      StackMap stack:
            aload 3
            monitorexit
         5: goto 8
        end local 2 // okhttp3.Connection releasedConnection
        end local 1 // java.net.Socket socket
      StackMap locals: okhttp3.internal.connection.StreamAllocation top top okhttp3.ConnectionPool
      StackMap stack: java.lang.Throwable
         6: aload 3
            monitorexit
         7: athrow
        start local 1 // java.net.Socket socket
        start local 2 // okhttp3.Connection releasedConnection
         8: .line 354
      StackMap locals: okhttp3.internal.connection.StreamAllocation java.net.Socket okhttp3.Connection
      StackMap stack:
            aload 1 /* socket */
            invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
         9: .line 355
            aload 2 /* releasedConnection */
            ifnull 13
        10: .line 356
            getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aconst_null
            invokevirtual okhttp3.internal.Internal.timeoutExit:(Lokhttp3/Call;Ljava/io/IOException;)Ljava/io/IOException;
            pop
        11: .line 357
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 2 /* releasedConnection */
            invokevirtual okhttp3.EventListener.connectionReleased:(Lokhttp3/Call;Lokhttp3/Connection;)V
        12: .line 358
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            invokevirtual okhttp3.EventListener.callEnd:(Lokhttp3/Call;)V
        13: .line 360
      StackMap locals:
      StackMap stack:
            return
        end local 2 // okhttp3.Connection releasedConnection
        end local 1 // java.net.Socket socket
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   14     0                this  Lokhttp3/internal/connection/StreamAllocation;
            3    6     1              socket  Ljava/net/Socket;
            8   14     1              socket  Ljava/net/Socket;
            2    6     2  releasedConnection  Lokhttp3/Connection;
            8   14     2  releasedConnection  Lokhttp3/Connection;
      Exception table:
        from    to  target  type
           1     5       6  any
           6     7       6  any

  public void noNewStreams();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 366
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 3
            monitorenter
         1: .line 367
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 2 /* releasedConnection */
        start local 2 // okhttp3.Connection releasedConnection
         2: .line 368
            aload 0 /* this */
            iconst_1
            iconst_0
            iconst_0
            invokevirtual okhttp3.internal.connection.StreamAllocation.deallocate:(ZZZ)Ljava/net/Socket;
            astore 1 /* socket */
        start local 1 // java.net.Socket socket
         3: .line 369
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnull 4
            aconst_null
            astore 2 /* releasedConnection */
         4: .line 366
      StackMap locals: java.net.Socket okhttp3.Connection okhttp3.ConnectionPool
      StackMap stack:
            aload 3
            monitorexit
         5: goto 8
        end local 2 // okhttp3.Connection releasedConnection
        end local 1 // java.net.Socket socket
      StackMap locals: okhttp3.internal.connection.StreamAllocation top top okhttp3.ConnectionPool
      StackMap stack: java.lang.Throwable
         6: aload 3
            monitorexit
         7: athrow
        start local 1 // java.net.Socket socket
        start local 2 // okhttp3.Connection releasedConnection
         8: .line 371
      StackMap locals: okhttp3.internal.connection.StreamAllocation java.net.Socket okhttp3.Connection
      StackMap stack:
            aload 1 /* socket */
            invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
         9: .line 372
            aload 2 /* releasedConnection */
            ifnull 11
        10: .line 373
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 2 /* releasedConnection */
            invokevirtual okhttp3.EventListener.connectionReleased:(Lokhttp3/Call;Lokhttp3/Connection;)V
        11: .line 375
      StackMap locals:
      StackMap stack:
            return
        end local 2 // okhttp3.Connection releasedConnection
        end local 1 // java.net.Socket socket
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   12     0                this  Lokhttp3/internal/connection/StreamAllocation;
            3    6     1              socket  Ljava/net/Socket;
            8   12     1              socket  Ljava/net/Socket;
            2    6     2  releasedConnection  Lokhttp3/Connection;
            8   12     2  releasedConnection  Lokhttp3/Connection;
      Exception table:
        from    to  target  type
           1     5       6  any
           6     7       6  any

  private java.net.Socket deallocate(boolean, boolean, boolean);
    descriptor: (ZZZ)Ljava/net/Socket;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // boolean noNewStreams
        start local 2 // boolean released
        start local 3 // boolean streamFinished
         0: .line 385
            getstatic okhttp3.internal.connection.StreamAllocation.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 387
      StackMap locals:
      StackMap stack:
            iload 3 /* streamFinished */
            ifeq 3
         2: .line 388
            aload 0 /* this */
            aconst_null
            putfield okhttp3.internal.connection.StreamAllocation.codec:Lokhttp3/internal/http/HttpCodec;
         3: .line 390
      StackMap locals:
      StackMap stack:
            iload 2 /* released */
            ifeq 5
         4: .line 391
            aload 0 /* this */
            iconst_1
            putfield okhttp3.internal.connection.StreamAllocation.released:Z
         5: .line 393
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* socket */
        start local 4 // java.net.Socket socket
         6: .line 394
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnull 16
         7: .line 395
            iload 1 /* noNewStreams */
            ifeq 9
         8: .line 396
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            iconst_1
            putfield okhttp3.internal.connection.RealConnection.noNewStreams:Z
         9: .line 398
      StackMap locals: java.net.Socket
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.codec:Lokhttp3/internal/http/HttpCodec;
            ifnonnull 16
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.released:Z
            ifne 10
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            getfield okhttp3.internal.connection.RealConnection.noNewStreams:Z
            ifeq 16
        10: .line 399
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            invokevirtual okhttp3.internal.connection.StreamAllocation.release:(Lokhttp3/internal/connection/RealConnection;)V
        11: .line 400
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            getfield okhttp3.internal.connection.RealConnection.allocations:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 15
        12: .line 401
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            invokestatic java.lang.System.nanoTime:()J
            putfield okhttp3.internal.connection.RealConnection.idleAtNanos:J
        13: .line 402
            getstatic okhttp3.internal.Internal.instance:Lokhttp3/internal/Internal;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            invokevirtual okhttp3.internal.Internal.connectionBecameIdle:(Lokhttp3/ConnectionPool;Lokhttp3/internal/connection/RealConnection;)Z
            ifeq 15
        14: .line 403
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            invokevirtual okhttp3.internal.connection.RealConnection.socket:()Ljava/net/Socket;
            astore 4 /* socket */
        15: .line 406
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
        16: .line 409
      StackMap locals:
      StackMap stack:
            aload 4 /* socket */
            areturn
        end local 4 // java.net.Socket socket
        end local 3 // boolean streamFinished
        end local 2 // boolean released
        end local 1 // boolean noNewStreams
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   17     0            this  Lokhttp3/internal/connection/StreamAllocation;
            0   17     1    noNewStreams  Z
            0   17     2        released  Z
            0   17     3  streamFinished  Z
            6   17     4          socket  Ljava/net/Socket;
    MethodParameters:
                Name  Flags
      noNewStreams    
      released        
      streamFinished  

  public void cancel();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 415
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 3
            monitorenter
         1: .line 416
            aload 0 /* this */
            iconst_1
            putfield okhttp3.internal.connection.StreamAllocation.canceled:Z
         2: .line 417
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.codec:Lokhttp3/internal/http/HttpCodec;
            astore 1 /* codecToCancel */
        start local 1 // okhttp3.internal.http.HttpCodec codecToCancel
         3: .line 418
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 2 /* connectionToCancel */
        start local 2 // okhttp3.internal.connection.RealConnection connectionToCancel
         4: .line 415
            aload 3
            monitorexit
         5: goto 8
        end local 2 // okhttp3.internal.connection.RealConnection connectionToCancel
        end local 1 // okhttp3.internal.http.HttpCodec codecToCancel
      StackMap locals: okhttp3.internal.connection.StreamAllocation top top okhttp3.ConnectionPool
      StackMap stack: java.lang.Throwable
         6: aload 3
            monitorexit
         7: athrow
        start local 1 // okhttp3.internal.http.HttpCodec codecToCancel
        start local 2 // okhttp3.internal.connection.RealConnection connectionToCancel
         8: .line 420
      StackMap locals: okhttp3.internal.connection.StreamAllocation okhttp3.internal.http.HttpCodec okhttp3.internal.connection.RealConnection
      StackMap stack:
            aload 1 /* codecToCancel */
            ifnull 11
         9: .line 421
            aload 1 /* codecToCancel */
            invokeinterface okhttp3.internal.http.HttpCodec.cancel:()V
        10: .line 422
            goto 13
      StackMap locals:
      StackMap stack:
        11: aload 2 /* connectionToCancel */
            ifnull 13
        12: .line 423
            aload 2 /* connectionToCancel */
            invokevirtual okhttp3.internal.connection.RealConnection.cancel:()V
        13: .line 425
      StackMap locals:
      StackMap stack:
            return
        end local 2 // okhttp3.internal.connection.RealConnection connectionToCancel
        end local 1 // okhttp3.internal.http.HttpCodec codecToCancel
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   14     0                this  Lokhttp3/internal/connection/StreamAllocation;
            3    6     1       codecToCancel  Lokhttp3/internal/http/HttpCodec;
            8   14     1       codecToCancel  Lokhttp3/internal/http/HttpCodec;
            4    6     2  connectionToCancel  Lokhttp3/internal/connection/RealConnection;
            8   14     2  connectionToCancel  Lokhttp3/internal/connection/RealConnection;
      Exception table:
        from    to  target  type
           1     5       6  any
           6     7       6  any

  public void streamFailed(java.io.IOException);
    descriptor: (Ljava/io/IOException;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // java.io.IOException e
         0: .line 430
            iconst_0
            istore 4 /* noNewStreams */
        start local 4 // boolean noNewStreams
         1: .line 432
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            dup
            astore 5
            monitorenter
         2: .line 433
            aload 1 /* e */
            instanceof okhttp3.internal.http2.StreamResetException
            ifeq 14
         3: .line 434
            aload 1 /* e */
            checkcast okhttp3.internal.http2.StreamResetException
            getfield okhttp3.internal.http2.StreamResetException.errorCode:Lokhttp3/internal/http2/ErrorCode;
            astore 6 /* errorCode */
        start local 6 // okhttp3.internal.http2.ErrorCode errorCode
         4: .line 435
            aload 6 /* errorCode */
            getstatic okhttp3.internal.http2.ErrorCode.REFUSED_STREAM:Lokhttp3/internal/http2/ErrorCode;
            if_acmpne 10
         5: .line 437
            aload 0 /* this */
            dup
            getfield okhttp3.internal.connection.StreamAllocation.refusedStreamCount:I
            iconst_1
            iadd
            putfield okhttp3.internal.connection.StreamAllocation.refusedStreamCount:I
         6: .line 438
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.refusedStreamCount:I
            iconst_1
            if_icmple 21
         7: .line 439
            iconst_1
            istore 4 /* noNewStreams */
         8: .line 440
            aload 0 /* this */
            aconst_null
            putfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
         9: .line 442
            goto 21
      StackMap locals: okhttp3.internal.connection.StreamAllocation java.io.IOException top top int okhttp3.ConnectionPool okhttp3.internal.http2.ErrorCode
      StackMap stack:
        10: aload 6 /* errorCode */
            getstatic okhttp3.internal.http2.ErrorCode.CANCEL:Lokhttp3/internal/http2/ErrorCode;
            if_acmpeq 21
        11: .line 444
            iconst_1
            istore 4 /* noNewStreams */
        12: .line 445
            aload 0 /* this */
            aconst_null
            putfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
        end local 6 // okhttp3.internal.http2.ErrorCode errorCode
        13: .line 447
            goto 21
      StackMap locals:
      StackMap stack:
        14: aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnull 21
        15: .line 448
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            invokevirtual okhttp3.internal.connection.RealConnection.isMultiplexed:()Z
            ifeq 16
            aload 1 /* e */
            instanceof okhttp3.internal.http2.ConnectionShutdownException
            ifeq 21
        16: .line 449
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 4 /* noNewStreams */
        17: .line 452
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            getfield okhttp3.internal.connection.RealConnection.successCount:I
            ifne 21
        18: .line 453
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
            ifnull 20
            aload 1 /* e */
            ifnull 20
        19: .line 454
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.routeSelector:Lokhttp3/internal/connection/RouteSelector;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
            aload 1 /* e */
            invokevirtual okhttp3.internal.connection.RouteSelector.connectFailed:(Lokhttp3/Route;Ljava/io/IOException;)V
        20: .line 456
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
        21: .line 459
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            astore 3 /* releasedConnection */
        start local 3 // okhttp3.Connection releasedConnection
        22: .line 460
            aload 0 /* this */
            iload 4 /* noNewStreams */
            iconst_0
            iconst_1
            invokevirtual okhttp3.internal.connection.StreamAllocation.deallocate:(ZZZ)Ljava/net/Socket;
            astore 2 /* socket */
        start local 2 // java.net.Socket socket
        23: .line 461
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnonnull 24
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.reportedAcquired:Z
            ifne 25
      StackMap locals: okhttp3.internal.connection.StreamAllocation java.io.IOException java.net.Socket okhttp3.Connection int okhttp3.ConnectionPool
      StackMap stack:
        24: aconst_null
            astore 3 /* releasedConnection */
        25: .line 432
      StackMap locals:
      StackMap stack:
            aload 5
            monitorexit
        26: goto 29
        end local 3 // okhttp3.Connection releasedConnection
        end local 2 // java.net.Socket socket
      StackMap locals: okhttp3.internal.connection.StreamAllocation java.io.IOException top top int okhttp3.ConnectionPool
      StackMap stack: java.lang.Throwable
        27: aload 5
            monitorexit
        28: athrow
        start local 2 // java.net.Socket socket
        start local 3 // okhttp3.Connection releasedConnection
        29: .line 464
      StackMap locals: okhttp3.internal.connection.StreamAllocation java.io.IOException java.net.Socket okhttp3.Connection int
      StackMap stack:
            aload 2 /* socket */
            invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/net/Socket;)V
        30: .line 465
            aload 3 /* releasedConnection */
            ifnull 32
        31: .line 466
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.eventListener:Lokhttp3/EventListener;
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.call:Lokhttp3/Call;
            aload 3 /* releasedConnection */
            invokevirtual okhttp3.EventListener.connectionReleased:(Lokhttp3/Call;Lokhttp3/Connection;)V
        32: .line 468
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean noNewStreams
        end local 3 // okhttp3.Connection releasedConnection
        end local 2 // java.net.Socket socket
        end local 1 // java.io.IOException e
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   33     0                this  Lokhttp3/internal/connection/StreamAllocation;
            0   33     1                   e  Ljava/io/IOException;
           23   27     2              socket  Ljava/net/Socket;
           29   33     2              socket  Ljava/net/Socket;
           22   27     3  releasedConnection  Lokhttp3/Connection;
           29   33     3  releasedConnection  Lokhttp3/Connection;
            1   33     4        noNewStreams  Z
            4   13     6           errorCode  Lokhttp3/internal/http2/ErrorCode;
      Exception table:
        from    to  target  type
           2    26      27  any
          27    28      27  any
    MethodParameters:
      Name  Flags
      e     

  public void acquire(okhttp3.internal.connection.RealConnection, boolean);
    descriptor: (Lokhttp3/internal/connection/RealConnection;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // okhttp3.internal.connection.RealConnection connection
        start local 2 // boolean reportedAcquired
         0: .line 475
            getstatic okhttp3.internal.connection.StreamAllocation.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 476
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            ifnull 2
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         2: .line 478
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* connection */
            putfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
         3: .line 479
            aload 0 /* this */
            iload 2 /* reportedAcquired */
            putfield okhttp3.internal.connection.StreamAllocation.reportedAcquired:Z
         4: .line 480
            aload 1 /* connection */
            getfield okhttp3.internal.connection.RealConnection.allocations:Ljava/util/List;
            new okhttp3.internal.connection.StreamAllocation$StreamAllocationReference
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.callStackTrace:Ljava/lang/Object;
            invokespecial okhttp3.internal.connection.StreamAllocation$StreamAllocationReference.<init>:(Lokhttp3/internal/connection/StreamAllocation;Ljava/lang/Object;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 481
            return
        end local 2 // boolean reportedAcquired
        end local 1 // okhttp3.internal.connection.RealConnection connection
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0              this  Lokhttp3/internal/connection/StreamAllocation;
            0    6     1        connection  Lokhttp3/internal/connection/RealConnection;
            0    6     2  reportedAcquired  Z
    MethodParameters:
                  Name  Flags
      connection        
      reportedAcquired  

  private void release(okhttp3.internal.connection.RealConnection);
    descriptor: (Lokhttp3/internal/connection/RealConnection;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // okhttp3.internal.connection.RealConnection connection
         0: .line 485
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: aload 1 /* connection */
            getfield okhttp3.internal.connection.RealConnection.allocations:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 3 /* size */
        start local 3 // int size
         2: goto 8
         3: .line 486
      StackMap locals: int int
      StackMap stack:
            aload 1 /* connection */
            getfield okhttp3.internal.connection.RealConnection.allocations:Ljava/util/List;
            iload 2 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.ref.Reference
            astore 4 /* reference */
        start local 4 // java.lang.ref.Reference reference
         4: .line 487
            aload 4 /* reference */
            invokevirtual java.lang.ref.Reference.get:()Ljava/lang/Object;
            aload 0 /* this */
            if_acmpne 7
         5: .line 488
            aload 1 /* connection */
            getfield okhttp3.internal.connection.RealConnection.allocations:Ljava/util/List;
            iload 2 /* i */
            invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
            pop
         6: .line 489
            return
        end local 4 // java.lang.ref.Reference reference
         7: .line 485
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            iload 3 /* size */
            if_icmplt 3
        end local 3 // int size
        end local 2 // int i
         9: .line 492
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
        end local 1 // okhttp3.internal.connection.RealConnection connection
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lokhttp3/internal/connection/StreamAllocation;
            0   10     1  connection  Lokhttp3/internal/connection/RealConnection;
            1    9     2           i  I
            2    9     3        size  I
            4    7     4   reference  Ljava/lang/ref/Reference<Lokhttp3/internal/connection/StreamAllocation;>;
    MethodParameters:
            Name  Flags
      connection  

  public java.net.Socket releaseAndAcquire(okhttp3.internal.connection.RealConnection);
    descriptor: (Lokhttp3/internal/connection/RealConnection;)Ljava/net/Socket;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // okhttp3.internal.connection.StreamAllocation this
        start local 1 // okhttp3.internal.connection.RealConnection newConnection
         0: .line 504
            getstatic okhttp3.internal.connection.StreamAllocation.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connectionPool:Lokhttp3/ConnectionPool;
            invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 505
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.codec:Lokhttp3/internal/http/HttpCodec;
            ifnonnull 2
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            getfield okhttp3.internal.connection.RealConnection.allocations:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpeq 3
      StackMap locals:
      StackMap stack:
         2: new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         3: .line 508
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
            getfield okhttp3.internal.connection.RealConnection.allocations:Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.ref.Reference
            astore 2 /* onlyAllocation */
        start local 2 // java.lang.ref.Reference onlyAllocation
         4: .line 509
            aload 0 /* this */
            iconst_1
            iconst_0
            iconst_0
            invokevirtual okhttp3.internal.connection.StreamAllocation.deallocate:(ZZZ)Ljava/net/Socket;
            astore 3 /* socket */
        start local 3 // java.net.Socket socket
         5: .line 512
            aload 0 /* this */
            aload 1 /* newConnection */
            putfield okhttp3.internal.connection.StreamAllocation.connection:Lokhttp3/internal/connection/RealConnection;
         6: .line 513
            aload 1 /* newConnection */
            getfield okhttp3.internal.connection.RealConnection.allocations:Ljava/util/List;
            aload 2 /* onlyAllocation */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         7: .line 515
            aload 3 /* socket */
            areturn
        end local 3 // java.net.Socket socket
        end local 2 // java.lang.ref.Reference onlyAllocation
        end local 1 // okhttp3.internal.connection.RealConnection newConnection
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0            this  Lokhttp3/internal/connection/StreamAllocation;
            0    8     1   newConnection  Lokhttp3/internal/connection/RealConnection;
            4    8     2  onlyAllocation  Ljava/lang/ref/Reference<Lokhttp3/internal/connection/StreamAllocation;>;
            5    8     3          socket  Ljava/net/Socket;
    MethodParameters:
               Name  Flags
      newConnection  

  public boolean hasMoreRoutes();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 519
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.route:Lokhttp3/Route;
            ifnonnull 4
         1: .line 520
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.routeSelection:Lokhttp3/internal/connection/RouteSelector$Selection;
            ifnull 2
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.routeSelection:Lokhttp3/internal/connection/RouteSelector$Selection;
            invokevirtual okhttp3.internal.connection.RouteSelector$Selection.hasNext:()Z
            ifne 4
         2: .line 521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.routeSelector:Lokhttp3/internal/connection/RouteSelector;
            invokevirtual okhttp3.internal.connection.RouteSelector.hasNext:()Z
            ifne 4
         3: .line 519
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lokhttp3/internal/connection/StreamAllocation;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // okhttp3.internal.connection.StreamAllocation this
         0: .line 525
            aload 0 /* this */
            invokevirtual okhttp3.internal.connection.StreamAllocation.connection:()Lokhttp3/internal/connection/RealConnection;
            astore 1 /* connection */
        start local 1 // okhttp3.internal.connection.RealConnection connection
         1: .line 526
            aload 1 /* connection */
            ifnull 2
            aload 1 /* connection */
            invokevirtual okhttp3.internal.connection.RealConnection.toString:()Ljava/lang/String;
            goto 3
      StackMap locals: okhttp3.internal.connection.RealConnection
      StackMap stack:
         2: aload 0 /* this */
            getfield okhttp3.internal.connection.StreamAllocation.address:Lokhttp3/Address;
            invokevirtual okhttp3.Address.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         3: areturn
        end local 1 // okhttp3.internal.connection.RealConnection connection
        end local 0 // okhttp3.internal.connection.StreamAllocation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lokhttp3/internal/connection/StreamAllocation;
            1    4     1  connection  Lokhttp3/internal/connection/RealConnection;
}
SourceFile: "StreamAllocation.java"
NestMembers:
  okhttp3.internal.connection.StreamAllocation$StreamAllocationReference
InnerClasses:
  public abstract Chain = okhttp3.Interceptor$Chain of okhttp3.Interceptor
  public final Selection = okhttp3.internal.connection.RouteSelector$Selection of okhttp3.internal.connection.RouteSelector
  public final StreamAllocationReference = okhttp3.internal.connection.StreamAllocation$StreamAllocationReference of okhttp3.internal.connection.StreamAllocation