public class org.apache.commons.pool.impl.GenericObjectPool<T> extends org.apache.commons.pool.BaseObjectPool<T> implements org.apache.commons.pool.ObjectPool<T>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.pool.impl.GenericObjectPool
  super_class: org.apache.commons.pool.BaseObjectPool
{
  public static final byte WHEN_EXHAUSTED_FAIL;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final byte WHEN_EXHAUSTED_BLOCK;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final byte WHEN_EXHAUSTED_GROW;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int DEFAULT_MAX_IDLE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public static final int DEFAULT_MIN_IDLE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int DEFAULT_MAX_ACTIVE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public static final byte DEFAULT_WHEN_EXHAUSTED_ACTION;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final boolean DEFAULT_LIFO;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final long DEFAULT_MAX_WAIT;
    descriptor: J
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  public static final boolean DEFAULT_TEST_ON_BORROW;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final boolean DEFAULT_TEST_ON_RETURN;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final boolean DEFAULT_TEST_WHILE_IDLE;
    descriptor: Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final long DEFAULT_TIME_BETWEEN_EVICTION_RUNS_MILLIS;
    descriptor: J
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  public static final int DEFAULT_NUM_TESTS_PER_EVICTION_RUN;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final long DEFAULT_MIN_EVICTABLE_IDLE_TIME_MILLIS;
    descriptor: J
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1800000

  public static final long DEFAULT_SOFT_MIN_EVICTABLE_IDLE_TIME_MILLIS;
    descriptor: J
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

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

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

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

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

  private byte _whenExhaustedAction;
    descriptor: B
    flags: (0x0002) ACC_PRIVATE

  private volatile boolean _testOnBorrow;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile boolean _testOnReturn;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

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

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

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

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

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

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

  private org.apache.commons.pool.impl.CursorableLinkedList<org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair<T>> _pool;
    descriptor: Lorg/apache/commons/pool/impl/CursorableLinkedList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lorg/apache/commons/pool/impl/CursorableLinkedList<Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;>;

  private org.apache.commons.pool.impl.CursorableLinkedList<org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair<T>>.Cursor _evictionCursor;
    descriptor: Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lorg/apache/commons/pool/impl/CursorableLinkedList<Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;>.Cursor;

  private org.apache.commons.pool.PoolableObjectFactory<T> _factory;
    descriptor: Lorg/apache/commons/pool/PoolableObjectFactory;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;

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

  private org.apache.commons.pool.impl.GenericObjectPool<T>.Evictor _evictor;
    descriptor: Lorg/apache/commons/pool/impl/GenericObjectPool$Evictor;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>.Evictor;

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

  private final java.util.LinkedList<org.apache.commons.pool.impl.GenericObjectPool$Latch<T>> _allocationQueue;
    descriptor: Ljava/util/LinkedList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/LinkedList<Lorg/apache/commons/pool/impl/GenericObjectPool$Latch<TT;>;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 344
            aload 0 /* this */
            aconst_null
            bipush 8
            iconst_1
            ldc -1
            bipush 8
         1: .line 345
            iconst_0
            iconst_0
            iconst_0
            ldc -1
         2: .line 346
            iconst_3
            ldc 1800000
            iconst_0
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZ)V
         3: .line 347
            return
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>);
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=2, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
         0: .line 354
            aload 0 /* this */
            aload 1 /* factory */
            bipush 8
            iconst_1
            ldc -1
            bipush 8
         1: .line 355
            iconst_0
            iconst_0
            iconst_0
            ldc -1
         2: .line 356
            iconst_3
            ldc 1800000
            iconst_0
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZ)V
         3: .line 357
            return
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    4     1  factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;)V
    MethodParameters:
         Name  Flags
      factory  

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, org.apache.commons.pool.impl.GenericObjectPool$Config);
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;Lorg/apache/commons/pool/impl/GenericObjectPool$Config;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=19, locals=3, args_size=3
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // org.apache.commons.pool.impl.GenericObjectPool$Config config
         0: .line 365
            aload 0 /* this */
            aload 1 /* factory */
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.maxActive:I
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.whenExhaustedAction:B
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.maxWait:J
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.maxIdle:I
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.minIdle:I
         1: .line 366
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.testOnBorrow:Z
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.testOnReturn:Z
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.timeBetweenEvictionRunsMillis:J
         2: .line 367
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.numTestsPerEvictionRun:I
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.minEvictableIdleTimeMillis:J
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.testWhileIdle:Z
         3: .line 368
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.softMinEvictableIdleTimeMillis:J
            aload 2 /* config */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.lifo:Z
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZJZ)V
         4: .line 369
            return
        end local 2 // org.apache.commons.pool.impl.GenericObjectPool$Config config
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    5     1  factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0    5     2   config  Lorg/apache/commons/pool/impl/GenericObjectPool$Config;
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;Lorg/apache/commons/pool/impl/GenericObjectPool$Config;)V
    MethodParameters:
         Name  Flags
      factory  
      config   

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, );
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=3, args_size=3
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // int maxActive
         0: .line 377
            aload 0 /* this */
            aload 1 /* factory */
            iload 2 /* maxActive */
            iconst_1
            ldc -1
            bipush 8
            iconst_0
         1: .line 378
            iconst_0
            iconst_0
            ldc -1
         2: .line 379
            iconst_3
            ldc 1800000
            iconst_0
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZ)V
         3: .line 380
            return
        end local 2 // int maxActive
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    4     1    factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0    4     2  maxActive  I
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;I)V
    MethodParameters:
           Name  Flags
      factory    
      maxActive  

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, int, byte, );
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;IBJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=6, args_size=5
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // int maxActive
        start local 3 // byte whenExhaustedAction
        start local 4 // long maxWait
         0: .line 391
            aload 0 /* this */
            aload 1 /* factory */
            iload 2 /* maxActive */
            iload 3 /* whenExhaustedAction */
            lload 4 /* maxWait */
            bipush 8
            iconst_0
            iconst_0
         1: .line 392
            iconst_0
            ldc -1
            iconst_3
         2: .line 393
            ldc 1800000
            iconst_0
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZ)V
         3: .line 394
            return
        end local 4 // long maxWait
        end local 3 // byte whenExhaustedAction
        end local 2 // int maxActive
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    4     0                 this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    4     1              factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0    4     2            maxActive  I
            0    4     3  whenExhaustedAction  B
            0    4     4              maxWait  J
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;IBJ)V
    MethodParameters:
                     Name  Flags
      factory              
      maxActive            
      whenExhaustedAction  
      maxWait              

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, int, byte, long, boolean, );
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;IBJZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=8, args_size=7
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // int maxActive
        start local 3 // byte whenExhaustedAction
        start local 4 // long maxWait
        start local 6 // boolean testOnBorrow
        start local 7 // boolean testOnReturn
         0: .line 410
            aload 0 /* this */
            aload 1 /* factory */
            iload 2 /* maxActive */
            iload 3 /* whenExhaustedAction */
            lload 4 /* maxWait */
            bipush 8
            iconst_0
            iload 6 /* testOnBorrow */
         1: .line 411
            iload 7 /* testOnReturn */
            ldc -1
            iconst_3
         2: .line 412
            ldc 1800000
            iconst_0
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZ)V
         3: .line 413
            return
        end local 7 // boolean testOnReturn
        end local 6 // boolean testOnBorrow
        end local 4 // long maxWait
        end local 3 // byte whenExhaustedAction
        end local 2 // int maxActive
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    4     0                 this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    4     1              factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0    4     2            maxActive  I
            0    4     3  whenExhaustedAction  B
            0    4     4              maxWait  J
            0    4     6         testOnBorrow  Z
            0    4     7         testOnReturn  Z
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;IBJZZ)V
    MethodParameters:
                     Name  Flags
      factory              
      maxActive            
      whenExhaustedAction  
      maxWait              
      testOnBorrow         
      testOnReturn         

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, int, byte, long, );
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;IBJI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=7, args_size=6
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // int maxActive
        start local 3 // byte whenExhaustedAction
        start local 4 // long maxWait
        start local 6 // int maxIdle
         0: .line 425
            aload 0 /* this */
            aload 1 /* factory */
            iload 2 /* maxActive */
            iload 3 /* whenExhaustedAction */
            lload 4 /* maxWait */
            iload 6 /* maxIdle */
            iconst_0
            iconst_0
         1: .line 426
            iconst_0
            ldc -1
            iconst_3
         2: .line 427
            ldc 1800000
            iconst_0
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZ)V
         3: .line 428
            return
        end local 6 // int maxIdle
        end local 4 // long maxWait
        end local 3 // byte whenExhaustedAction
        end local 2 // int maxActive
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    4     0                 this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    4     1              factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0    4     2            maxActive  I
            0    4     3  whenExhaustedAction  B
            0    4     4              maxWait  J
            0    4     6              maxIdle  I
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;IBJI)V
    MethodParameters:
                     Name  Flags
      factory              
      maxActive            
      whenExhaustedAction  
      maxWait              
      maxIdle              

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, int, byte, long, int, boolean, );
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;IBJIZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=9, args_size=8
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // int maxActive
        start local 3 // byte whenExhaustedAction
        start local 4 // long maxWait
        start local 6 // int maxIdle
        start local 7 // boolean testOnBorrow
        start local 8 // boolean testOnReturn
         0: .line 445
            aload 0 /* this */
            aload 1 /* factory */
            iload 2 /* maxActive */
            iload 3 /* whenExhaustedAction */
            lload 4 /* maxWait */
            iload 6 /* maxIdle */
            iconst_0
            iload 7 /* testOnBorrow */
            iload 8 /* testOnReturn */
         1: .line 446
            ldc -1
            iconst_3
         2: .line 447
            ldc 1800000
            iconst_0
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZ)V
         3: .line 448
            return
        end local 8 // boolean testOnReturn
        end local 7 // boolean testOnBorrow
        end local 6 // int maxIdle
        end local 4 // long maxWait
        end local 3 // byte whenExhaustedAction
        end local 2 // int maxActive
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    4     0                 this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    4     1              factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0    4     2            maxActive  I
            0    4     3  whenExhaustedAction  B
            0    4     4              maxWait  J
            0    4     6              maxIdle  I
            0    4     7         testOnBorrow  Z
            0    4     8         testOnReturn  Z
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;IBJIZZ)V
    MethodParameters:
                     Name  Flags
      factory              
      maxActive            
      whenExhaustedAction  
      maxWait              
      maxIdle              
      testOnBorrow         
      testOnReturn         

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, int, byte, long, int, boolean, boolean, long, int, long, );
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;IBJIZZJIJZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=15, args_size=12
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // int maxActive
        start local 3 // byte whenExhaustedAction
        start local 4 // long maxWait
        start local 6 // int maxIdle
        start local 7 // boolean testOnBorrow
        start local 8 // boolean testOnReturn
        start local 9 // long timeBetweenEvictionRunsMillis
        start local 11 // int numTestsPerEvictionRun
        start local 12 // long minEvictableIdleTimeMillis
        start local 14 // boolean testWhileIdle
         0: .line 474
            aload 0 /* this */
            aload 1 /* factory */
            iload 2 /* maxActive */
            iload 3 /* whenExhaustedAction */
            lload 4 /* maxWait */
            iload 6 /* maxIdle */
            iconst_0
            iload 7 /* testOnBorrow */
            iload 8 /* testOnReturn */
         1: .line 475
            lload 9 /* timeBetweenEvictionRunsMillis */
            iload 11 /* numTestsPerEvictionRun */
            lload 12 /* minEvictableIdleTimeMillis */
            iload 14 /* testWhileIdle */
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZ)V
         2: .line 476
            return
        end local 14 // boolean testWhileIdle
        end local 12 // long minEvictableIdleTimeMillis
        end local 11 // int numTestsPerEvictionRun
        end local 9 // long timeBetweenEvictionRunsMillis
        end local 8 // boolean testOnReturn
        end local 7 // boolean testOnBorrow
        end local 6 // int maxIdle
        end local 4 // long maxWait
        end local 3 // byte whenExhaustedAction
        end local 2 // int maxActive
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0    3     0                           this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    3     1                        factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0    3     2                      maxActive  I
            0    3     3            whenExhaustedAction  B
            0    3     4                        maxWait  J
            0    3     6                        maxIdle  I
            0    3     7                   testOnBorrow  Z
            0    3     8                   testOnReturn  Z
            0    3     9  timeBetweenEvictionRunsMillis  J
            0    3    11         numTestsPerEvictionRun  I
            0    3    12     minEvictableIdleTimeMillis  J
            0    3    14                  testWhileIdle  Z
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;IBJIZZJIJZ)V
    MethodParameters:
                               Name  Flags
      factory                        
      maxActive                      
      whenExhaustedAction            
      maxWait                        
      maxIdle                        
      testOnBorrow                   
      testOnReturn                   
      timeBetweenEvictionRunsMillis  
      numTestsPerEvictionRun         
      minEvictableIdleTimeMillis     
      testWhileIdle                  

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, int, byte, long, int, int, boolean, boolean, long, int, long, );
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=18, locals=16, args_size=13
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // int maxActive
        start local 3 // byte whenExhaustedAction
        start local 4 // long maxWait
        start local 6 // int maxIdle
        start local 7 // int minIdle
        start local 8 // boolean testOnBorrow
        start local 9 // boolean testOnReturn
        start local 10 // long timeBetweenEvictionRunsMillis
        start local 12 // int numTestsPerEvictionRun
        start local 13 // long minEvictableIdleTimeMillis
        start local 15 // boolean testWhileIdle
         0: .line 503
            aload 0 /* this */
            aload 1 /* factory */
            iload 2 /* maxActive */
            iload 3 /* whenExhaustedAction */
            lload 4 /* maxWait */
            iload 6 /* maxIdle */
            iload 7 /* minIdle */
            iload 8 /* testOnBorrow */
            iload 9 /* testOnReturn */
         1: .line 504
            lload 10 /* timeBetweenEvictionRunsMillis */
            iload 12 /* numTestsPerEvictionRun */
            lload 13 /* minEvictableIdleTimeMillis */
            iload 15 /* testWhileIdle */
         2: .line 505
            ldc -1
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZJ)V
         3: .line 506
            return
        end local 15 // boolean testWhileIdle
        end local 13 // long minEvictableIdleTimeMillis
        end local 12 // int numTestsPerEvictionRun
        end local 10 // long timeBetweenEvictionRunsMillis
        end local 9 // boolean testOnReturn
        end local 8 // boolean testOnBorrow
        end local 7 // int minIdle
        end local 6 // int maxIdle
        end local 4 // long maxWait
        end local 3 // byte whenExhaustedAction
        end local 2 // int maxActive
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0    4     0                           this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    4     1                        factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0    4     2                      maxActive  I
            0    4     3            whenExhaustedAction  B
            0    4     4                        maxWait  J
            0    4     6                        maxIdle  I
            0    4     7                        minIdle  I
            0    4     8                   testOnBorrow  Z
            0    4     9                   testOnReturn  Z
            0    4    10  timeBetweenEvictionRunsMillis  J
            0    4    12         numTestsPerEvictionRun  I
            0    4    13     minEvictableIdleTimeMillis  J
            0    4    15                  testWhileIdle  Z
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;IBJIIZZJIJZ)V
    MethodParameters:
                               Name  Flags
      factory                        
      maxActive                      
      whenExhaustedAction            
      maxWait                        
      maxIdle                        
      minIdle                        
      testOnBorrow                   
      testOnReturn                   
      timeBetweenEvictionRunsMillis  
      numTestsPerEvictionRun         
      minEvictableIdleTimeMillis     
      testWhileIdle                  

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, int, byte, long, int, int, boolean, boolean, long, int, long, boolean, );
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=19, locals=18, args_size=14
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // int maxActive
        start local 3 // byte whenExhaustedAction
        start local 4 // long maxWait
        start local 6 // int maxIdle
        start local 7 // int minIdle
        start local 8 // boolean testOnBorrow
        start local 9 // boolean testOnReturn
        start local 10 // long timeBetweenEvictionRunsMillis
        start local 12 // int numTestsPerEvictionRun
        start local 13 // long minEvictableIdleTimeMillis
        start local 15 // boolean testWhileIdle
        start local 16 // long softMinEvictableIdleTimeMillis
         0: .line 538
            aload 0 /* this */
            aload 1 /* factory */
            iload 2 /* maxActive */
            iload 3 /* whenExhaustedAction */
            lload 4 /* maxWait */
            iload 6 /* maxIdle */
            iload 7 /* minIdle */
            iload 8 /* testOnBorrow */
            iload 9 /* testOnReturn */
         1: .line 539
            lload 10 /* timeBetweenEvictionRunsMillis */
            iload 12 /* numTestsPerEvictionRun */
            lload 13 /* minEvictableIdleTimeMillis */
            iload 15 /* testWhileIdle */
         2: .line 540
            lload 16 /* softMinEvictableIdleTimeMillis */
            iconst_1
            invokespecial org.apache.commons.pool.impl.GenericObjectPool.<init>:(Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZJZ)V
         3: .line 541
            return
        end local 16 // long softMinEvictableIdleTimeMillis
        end local 15 // boolean testWhileIdle
        end local 13 // long minEvictableIdleTimeMillis
        end local 12 // int numTestsPerEvictionRun
        end local 10 // long timeBetweenEvictionRunsMillis
        end local 9 // boolean testOnReturn
        end local 8 // boolean testOnBorrow
        end local 7 // int minIdle
        end local 6 // int maxIdle
        end local 4 // long maxWait
        end local 3 // byte whenExhaustedAction
        end local 2 // int maxActive
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0    4     0                            this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    4     1                         factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0    4     2                       maxActive  I
            0    4     3             whenExhaustedAction  B
            0    4     4                         maxWait  J
            0    4     6                         maxIdle  I
            0    4     7                         minIdle  I
            0    4     8                    testOnBorrow  Z
            0    4     9                    testOnReturn  Z
            0    4    10   timeBetweenEvictionRunsMillis  J
            0    4    12          numTestsPerEvictionRun  I
            0    4    13      minEvictableIdleTimeMillis  J
            0    4    15                   testWhileIdle  Z
            0    4    16  softMinEvictableIdleTimeMillis  J
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;IBJIIZZJIJZJ)V
    MethodParameters:
                                Name  Flags
      factory                         
      maxActive                       
      whenExhaustedAction             
      maxWait                         
      maxIdle                         
      minIdle                         
      testOnBorrow                    
      testOnReturn                    
      timeBetweenEvictionRunsMillis   
      numTestsPerEvictionRun          
      minEvictableIdleTimeMillis      
      testWhileIdle                   
      softMinEvictableIdleTimeMillis  

  public void <init>(org.apache.commons.pool.PoolableObjectFactory<T>, int, byte, long, int, int, boolean, boolean, long, int, long, boolean, long, );
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;IBJIIZZJIJZJZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=19, args_size=15
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        start local 2 // int maxActive
        start local 3 // byte whenExhaustedAction
        start local 4 // long maxWait
        start local 6 // int maxIdle
        start local 7 // int minIdle
        start local 8 // boolean testOnBorrow
        start local 9 // boolean testOnReturn
        start local 10 // long timeBetweenEvictionRunsMillis
        start local 12 // int numTestsPerEvictionRun
        start local 13 // long minEvictableIdleTimeMillis
        start local 15 // boolean testWhileIdle
        start local 16 // long softMinEvictableIdleTimeMillis
        start local 18 // boolean lifo
         0: .line 571
            aload 0 /* this */
            invokespecial org.apache.commons.pool.BaseObjectPool.<init>:()V
         1: .line 1918
            aload 0 /* this */
            bipush 8
            putfield org.apache.commons.pool.impl.GenericObjectPool._maxIdle:I
         2: .line 1925
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.pool.impl.GenericObjectPool._minIdle:I
         3: .line 1932
            aload 0 /* this */
            bipush 8
            putfield org.apache.commons.pool.impl.GenericObjectPool._maxActive:I
         4: .line 1950
            aload 0 /* this */
            ldc -1
            putfield org.apache.commons.pool.impl.GenericObjectPool._maxWait:J
         5: .line 1964
            aload 0 /* this */
            iconst_1
            putfield org.apache.commons.pool.impl.GenericObjectPool._whenExhaustedAction:B
         6: .line 1977
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.pool.impl.GenericObjectPool._testOnBorrow:Z
         7: .line 1988
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.pool.impl.GenericObjectPool._testOnReturn:Z
         8: .line 2001
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.pool.impl.GenericObjectPool._testWhileIdle:Z
         9: .line 2012
            aload 0 /* this */
            ldc -1
            putfield org.apache.commons.pool.impl.GenericObjectPool._timeBetweenEvictionRunsMillis:J
        10: .line 2027
            aload 0 /* this */
            iconst_3
            putfield org.apache.commons.pool.impl.GenericObjectPool._numTestsPerEvictionRun:I
        11: .line 2041
            aload 0 /* this */
            ldc 1800000
            putfield org.apache.commons.pool.impl.GenericObjectPool._minEvictableIdleTimeMillis:J
        12: .line 2054
            aload 0 /* this */
            ldc -1
            putfield org.apache.commons.pool.impl.GenericObjectPool._softMinEvictableIdleTimeMillis:J
        13: .line 2057
            aload 0 /* this */
            iconst_1
            putfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
        14: .line 2060
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
        15: .line 2063
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
        16: .line 2066
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
        17: .line 2072
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
        18: .line 2077
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.pool.impl.GenericObjectPool._evictor:Lorg/apache/commons/pool/impl/GenericObjectPool$Evictor;
        19: .line 2084
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        20: .line 2091
            aload 0 /* this */
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            putfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
        21: .line 575
            aload 0 /* this */
            aload 1 /* factory */
            putfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
        22: .line 576
            aload 0 /* this */
            iload 2 /* maxActive */
            putfield org.apache.commons.pool.impl.GenericObjectPool._maxActive:I
        23: .line 577
            aload 0 /* this */
            iload 18 /* lifo */
            putfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
        24: .line 578
            iload 3 /* whenExhaustedAction */
            tableswitch { // 0 - 2
                    0: 25
                    1: 25
                    2: 25
              default: 27
          }
        25: .line 582
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.PoolableObjectFactory int int long int int int int long int long int long int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* whenExhaustedAction */
            putfield org.apache.commons.pool.impl.GenericObjectPool._whenExhaustedAction:B
        26: .line 583
            goto 28
        27: .line 585
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "whenExhaustedAction "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* whenExhaustedAction */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " not recognized."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        28: .line 587
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 4 /* maxWait */
            putfield org.apache.commons.pool.impl.GenericObjectPool._maxWait:J
        29: .line 588
            aload 0 /* this */
            iload 6 /* maxIdle */
            putfield org.apache.commons.pool.impl.GenericObjectPool._maxIdle:I
        30: .line 589
            aload 0 /* this */
            iload 7 /* minIdle */
            putfield org.apache.commons.pool.impl.GenericObjectPool._minIdle:I
        31: .line 590
            aload 0 /* this */
            iload 8 /* testOnBorrow */
            putfield org.apache.commons.pool.impl.GenericObjectPool._testOnBorrow:Z
        32: .line 591
            aload 0 /* this */
            iload 9 /* testOnReturn */
            putfield org.apache.commons.pool.impl.GenericObjectPool._testOnReturn:Z
        33: .line 592
            aload 0 /* this */
            lload 10 /* timeBetweenEvictionRunsMillis */
            putfield org.apache.commons.pool.impl.GenericObjectPool._timeBetweenEvictionRunsMillis:J
        34: .line 593
            aload 0 /* this */
            iload 12 /* numTestsPerEvictionRun */
            putfield org.apache.commons.pool.impl.GenericObjectPool._numTestsPerEvictionRun:I
        35: .line 594
            aload 0 /* this */
            lload 13 /* minEvictableIdleTimeMillis */
            putfield org.apache.commons.pool.impl.GenericObjectPool._minEvictableIdleTimeMillis:J
        36: .line 595
            aload 0 /* this */
            lload 16 /* softMinEvictableIdleTimeMillis */
            putfield org.apache.commons.pool.impl.GenericObjectPool._softMinEvictableIdleTimeMillis:J
        37: .line 596
            aload 0 /* this */
            iload 15 /* testWhileIdle */
            putfield org.apache.commons.pool.impl.GenericObjectPool._testWhileIdle:Z
        38: .line 598
            aload 0 /* this */
            new org.apache.commons.pool.impl.CursorableLinkedList
            dup
            invokespecial org.apache.commons.pool.impl.CursorableLinkedList.<init>:()V
            putfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
        39: .line 599
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._timeBetweenEvictionRunsMillis:J
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.startEvictor:(J)V
        40: .line 600
            return
        end local 18 // boolean lifo
        end local 16 // long softMinEvictableIdleTimeMillis
        end local 15 // boolean testWhileIdle
        end local 13 // long minEvictableIdleTimeMillis
        end local 12 // int numTestsPerEvictionRun
        end local 10 // long timeBetweenEvictionRunsMillis
        end local 9 // boolean testOnReturn
        end local 8 // boolean testOnBorrow
        end local 7 // int minIdle
        end local 6 // int maxIdle
        end local 4 // long maxWait
        end local 3 // byte whenExhaustedAction
        end local 2 // int maxActive
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0   41     0                            this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0   41     1                         factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            0   41     2                       maxActive  I
            0   41     3             whenExhaustedAction  B
            0   41     4                         maxWait  J
            0   41     6                         maxIdle  I
            0   41     7                         minIdle  I
            0   41     8                    testOnBorrow  Z
            0   41     9                    testOnReturn  Z
            0   41    10   timeBetweenEvictionRunsMillis  J
            0   41    12          numTestsPerEvictionRun  I
            0   41    13      minEvictableIdleTimeMillis  J
            0   41    15                   testWhileIdle  Z
            0   41    16  softMinEvictableIdleTimeMillis  J
            0   41    18                            lifo  Z
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;IBJIIZZJIJZJZ)V
    MethodParameters:
                                Name  Flags
      factory                         
      maxActive                       
      whenExhaustedAction             
      maxWait                         
      maxIdle                         
      minIdle                         
      testOnBorrow                    
      testOnReturn                    
      timeBetweenEvictionRunsMillis   
      numTestsPerEvictionRun          
      minEvictableIdleTimeMillis      
      testWhileIdle                   
      softMinEvictableIdleTimeMillis  
      lifo                            

  public synchronized int getMaxActive();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 616
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._maxActive:I
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public void setMaxActive(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // int maxActive
         0: .line 630
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 631
            aload 0 /* this */
            iload 1 /* maxActive */
            putfield org.apache.commons.pool.impl.GenericObjectPool._maxActive:I
         2: .line 630
            aload 2
            monitorexit
         3: goto 6
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
         4: aload 2
            monitorexit
         5: athrow
         6: .line 633
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
         7: .line 634
            return
        end local 1 // int maxActive
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    8     1  maxActive  I
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
    MethodParameters:
           Name  Flags
      maxActive  

  public synchronized byte getWhenExhaustedAction();
    descriptor: ()B
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 645
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._whenExhaustedAction:B
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public void setWhenExhaustedAction(byte);
    descriptor: (B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // byte whenExhaustedAction
         0: .line 659
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 660
            iload 1 /* whenExhaustedAction */
            tableswitch { // 0 - 2
                    0: 2
                    1: 2
                    2: 2
              default: 4
          }
         2: .line 664
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 0 /* this */
            iload 1 /* whenExhaustedAction */
            putfield org.apache.commons.pool.impl.GenericObjectPool._whenExhaustedAction:B
         3: .line 665
            goto 5
         4: .line 667
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "whenExhaustedAction "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* whenExhaustedAction */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " not recognized."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 659
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
         6: goto 9
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: aload 2
            monitorexit
         8: athrow
         9: .line 670
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        10: .line 671
            return
        end local 1 // byte whenExhaustedAction
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   11     0                 this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0   11     1  whenExhaustedAction  B
      Exception table:
        from    to  target  type
           1     6       7  any
           7     8       7  any
    MethodParameters:
                     Name  Flags
      whenExhaustedAction  

  public synchronized long getMaxWait();
    descriptor: ()J
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 690
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._maxWait:J
            lreturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public void setMaxWait(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // long maxWait
         0: .line 709
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         1: .line 710
            aload 0 /* this */
            lload 1 /* maxWait */
            putfield org.apache.commons.pool.impl.GenericObjectPool._maxWait:J
         2: .line 709
            aload 3
            monitorexit
         3: goto 6
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
         4: aload 3
            monitorexit
         5: athrow
         6: .line 712
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
         7: .line 713
            return
        end local 1 // long maxWait
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    8     1  maxWait  J
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
    MethodParameters:
         Name  Flags
      maxWait  

  public synchronized int getMaxIdle();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 721
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._maxIdle:I
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public void setMaxIdle(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // int maxIdle
         0: .line 738
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 739
            aload 0 /* this */
            iload 1 /* maxIdle */
            putfield org.apache.commons.pool.impl.GenericObjectPool._maxIdle:I
         2: .line 738
            aload 2
            monitorexit
         3: goto 6
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
         4: aload 2
            monitorexit
         5: athrow
         6: .line 741
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
         7: .line 742
            return
        end local 1 // int maxIdle
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    8     1  maxIdle  I
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
    MethodParameters:
         Name  Flags
      maxIdle  

  public void setMinIdle(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // int minIdle
         0: .line 757
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 758
            aload 0 /* this */
            iload 1 /* minIdle */
            putfield org.apache.commons.pool.impl.GenericObjectPool._minIdle:I
         2: .line 757
            aload 2
            monitorexit
         3: goto 6
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
         4: aload 2
            monitorexit
         5: athrow
         6: .line 760
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
         7: .line 761
            return
        end local 1 // int minIdle
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    8     1  minIdle  I
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
    MethodParameters:
         Name  Flags
      minIdle  

  public synchronized int getMinIdle();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 772
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._minIdle:I
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public boolean getTestOnBorrow();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 787
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._testOnBorrow:Z
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public void setTestOnBorrow(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // boolean testOnBorrow
         0: .line 802
            aload 0 /* this */
            iload 1 /* testOnBorrow */
            putfield org.apache.commons.pool.impl.GenericObjectPool._testOnBorrow:Z
         1: .line 803
            return
        end local 1 // boolean testOnBorrow
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    2     1  testOnBorrow  Z
    MethodParameters:
              Name  Flags
      testOnBorrow  

  public boolean getTestOnReturn();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 815
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._testOnReturn:Z
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public void setTestOnReturn(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // boolean testOnReturn
         0: .line 828
            aload 0 /* this */
            iload 1 /* testOnReturn */
            putfield org.apache.commons.pool.impl.GenericObjectPool._testOnReturn:Z
         1: .line 829
            return
        end local 1 // boolean testOnReturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    2     1  testOnReturn  Z
    MethodParameters:
              Name  Flags
      testOnReturn  

  public synchronized long getTimeBetweenEvictionRunsMillis();
    descriptor: ()J
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 841
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._timeBetweenEvictionRunsMillis:J
            lreturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public synchronized void setTimeBetweenEvictionRunsMillis(long);
    descriptor: (J)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // long timeBetweenEvictionRunsMillis
         0: .line 854
            aload 0 /* this */
            lload 1 /* timeBetweenEvictionRunsMillis */
            putfield org.apache.commons.pool.impl.GenericObjectPool._timeBetweenEvictionRunsMillis:J
         1: .line 855
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._timeBetweenEvictionRunsMillis:J
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.startEvictor:(J)V
         2: .line 856
            return
        end local 1 // long timeBetweenEvictionRunsMillis
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0    3     0                           this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    3     1  timeBetweenEvictionRunsMillis  J
    MethodParameters:
                               Name  Flags
      timeBetweenEvictionRunsMillis  

  public synchronized int getNumTestsPerEvictionRun();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 867
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._numTestsPerEvictionRun:I
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public synchronized void setNumTestsPerEvictionRun(int);
    descriptor: (I)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // int numTestsPerEvictionRun
         0: .line 885
            aload 0 /* this */
            iload 1 /* numTestsPerEvictionRun */
            putfield org.apache.commons.pool.impl.GenericObjectPool._numTestsPerEvictionRun:I
         1: .line 886
            return
        end local 1 // int numTestsPerEvictionRun
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    2     0                    this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    2     1  numTestsPerEvictionRun  I
    MethodParameters:
                        Name  Flags
      numTestsPerEvictionRun  

  public synchronized long getMinEvictableIdleTimeMillis();
    descriptor: ()J
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 898
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._minEvictableIdleTimeMillis:J
            lreturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public synchronized void setMinEvictableIdleTimeMillis(long);
    descriptor: (J)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // long minEvictableIdleTimeMillis
         0: .line 913
            aload 0 /* this */
            lload 1 /* minEvictableIdleTimeMillis */
            putfield org.apache.commons.pool.impl.GenericObjectPool._minEvictableIdleTimeMillis:J
         1: .line 914
            return
        end local 1 // long minEvictableIdleTimeMillis
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0    2     0                        this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    2     1  minEvictableIdleTimeMillis  J
    MethodParameters:
                            Name  Flags
      minEvictableIdleTimeMillis  

  public synchronized long getSoftMinEvictableIdleTimeMillis();
    descriptor: ()J
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 927
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._softMinEvictableIdleTimeMillis:J
            lreturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public synchronized void setSoftMinEvictableIdleTimeMillis(long);
    descriptor: (J)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // long softMinEvictableIdleTimeMillis
         0: .line 944
            aload 0 /* this */
            lload 1 /* softMinEvictableIdleTimeMillis */
            putfield org.apache.commons.pool.impl.GenericObjectPool._softMinEvictableIdleTimeMillis:J
         1: .line 945
            return
        end local 1 // long softMinEvictableIdleTimeMillis
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0    2     0                            this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    2     1  softMinEvictableIdleTimeMillis  J
    MethodParameters:
                                Name  Flags
      softMinEvictableIdleTimeMillis  

  public synchronized boolean getTestWhileIdle();
    descriptor: ()Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 958
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._testWhileIdle:Z
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public synchronized void setTestWhileIdle(boolean);
    descriptor: (Z)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // boolean testWhileIdle
         0: .line 972
            aload 0 /* this */
            iload 1 /* testWhileIdle */
            putfield org.apache.commons.pool.impl.GenericObjectPool._testWhileIdle:Z
         1: .line 973
            return
        end local 1 // boolean testWhileIdle
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    2     1  testWhileIdle  Z
    MethodParameters:
               Name  Flags
      testWhileIdle  

  public synchronized boolean getLifo();
    descriptor: ()Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 986
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public synchronized void setLifo(boolean);
    descriptor: (Z)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // boolean lifo
         0: .line 1000
            aload 0 /* this */
            iload 1 /* lifo */
            putfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
         1: .line 1001
            return
        end local 1 // boolean lifo
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    2     1  lifo  Z
    MethodParameters:
      Name  Flags
      lifo  

  public void setConfig(org.apache.commons.pool.impl.GenericObjectPool$Config);
    descriptor: (Lorg/apache/commons/pool/impl/GenericObjectPool$Config;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.impl.GenericObjectPool$Config conf
         0: .line 1010
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 1011
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.maxIdle:I
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setMaxIdle:(I)V
         2: .line 1012
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.minIdle:I
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setMinIdle:(I)V
         3: .line 1013
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.maxActive:I
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setMaxActive:(I)V
         4: .line 1014
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.maxWait:J
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setMaxWait:(J)V
         5: .line 1015
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.whenExhaustedAction:B
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setWhenExhaustedAction:(B)V
         6: .line 1016
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.testOnBorrow:Z
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setTestOnBorrow:(Z)V
         7: .line 1017
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.testOnReturn:Z
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setTestOnReturn:(Z)V
         8: .line 1018
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.testWhileIdle:Z
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setTestWhileIdle:(Z)V
         9: .line 1019
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.numTestsPerEvictionRun:I
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setNumTestsPerEvictionRun:(I)V
        10: .line 1020
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.minEvictableIdleTimeMillis:J
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setMinEvictableIdleTimeMillis:(J)V
        11: .line 1021
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.timeBetweenEvictionRunsMillis:J
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setTimeBetweenEvictionRunsMillis:(J)V
        12: .line 1022
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.softMinEvictableIdleTimeMillis:J
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setSoftMinEvictableIdleTimeMillis:(J)V
        13: .line 1023
            aload 0 /* this */
            aload 1 /* conf */
            getfield org.apache.commons.pool.impl.GenericObjectPool$Config.lifo:Z
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.setLifo:(Z)V
        14: .line 1010
            aload 2
            monitorexit
        15: goto 18
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.GenericObjectPool$Config org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
        16: aload 2
            monitorexit
        17: athrow
        18: .line 1025
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        19: .line 1026
            return
        end local 1 // org.apache.commons.pool.impl.GenericObjectPool$Config conf
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0   20     1  conf  Lorg/apache/commons/pool/impl/GenericObjectPool$Config;
      Exception table:
        from    to  target  type
           1    15      16  any
          16    17      16  any
    MethodParameters:
      Name  Flags
      conf  

  public T borrowObject();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1059
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 1 /* starttime */
        start local 1 // long starttime
         1: .line 1060
            new org.apache.commons.pool.impl.GenericObjectPool$Latch
            dup
            invokespecial org.apache.commons.pool.impl.GenericObjectPool$Latch.<init>:()V
            astore 3 /* latch */
        start local 3 // org.apache.commons.pool.impl.GenericObjectPool$Latch latch
         2: .line 1063
            aload 0 /* this */
            dup
            astore 7
            monitorenter
         3: .line 1067
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._whenExhaustedAction:B
            istore 4 /* whenExhaustedAction */
        start local 4 // byte whenExhaustedAction
         4: .line 1068
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._maxWait:J
            lstore 5 /* maxWait */
        start local 5 // long maxWait
         5: .line 1071
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            aload 3 /* latch */
            invokevirtual java.util.LinkedList.add:(Ljava/lang/Object;)Z
            pop
         6: .line 1063
            aload 7
            monitorexit
         7: goto 10
        end local 5 // long maxWait
        end local 4 // byte whenExhaustedAction
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch top top top org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
         8: aload 7
            monitorexit
         9: athrow
        start local 4 // byte whenExhaustedAction
        start local 5 // long maxWait
        10: .line 1075
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch int long
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        11: .line 1078
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 7
            monitorenter
        12: .line 1079
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.assertOpen:()V
        13: .line 1078
            aload 7
            monitorexit
        14: goto 17
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch int long org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
        15: aload 7
            monitorexit
        16: athrow
        17: .line 1083
      StackMap locals:
      StackMap stack:
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            ifnonnull 92
        18: .line 1085
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.mayCreate:()Z
            ifne 92
        19: .line 1089
            iload 4 /* whenExhaustedAction */
            tableswitch { // 0 - 2
                    0: 28
                    1: 38
                    2: 20
              default: 89
          }
        20: .line 1092
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 7
            monitorenter
        21: .line 1095
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            ifnonnull 24
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.mayCreate:()Z
            ifne 24
        22: .line 1096
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            aload 3 /* latch */
            invokevirtual java.util.LinkedList.remove:(Ljava/lang/Object;)Z
            pop
        23: .line 1097
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            iadd
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        24: .line 1092
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 7
            monitorexit
        25: goto 92
      StackMap locals:
      StackMap stack: java.lang.Throwable
        26: aload 7
            monitorexit
        27: athrow
        28: .line 1102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 7
            monitorenter
        29: .line 1105
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            ifnonnull 30
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.mayCreate:()Z
            ifeq 32
        30: .line 1106
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 7
            monitorexit
        31: goto 92
        32: .line 1108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            aload 3 /* latch */
            invokevirtual java.util.LinkedList.remove:(Ljava/lang/Object;)Z
            pop
        33: .line 1102
            aload 7
            monitorexit
        34: goto 37
      StackMap locals:
      StackMap stack: java.lang.Throwable
        35: aload 7
            monitorexit
        36: athrow
        37: .line 1110
      StackMap locals:
      StackMap stack:
            new java.util.NoSuchElementException
            dup
            ldc "Pool exhausted"
            invokespecial java.util.NoSuchElementException.<init>:(Ljava/lang/String;)V
            athrow
        38: .line 1113
      StackMap locals:
      StackMap stack:
            aload 3 /* latch */
            dup
            astore 7
            monitorenter
        39: .line 1116
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            ifnonnull 48
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.mayCreate:()Z
            ifne 48
        40: .line 1117
            lload 5 /* maxWait */
            lconst_0
            lcmp
            ifgt 43
        41: .line 1118
            aload 3 /* latch */
            invokevirtual java.lang.Object.wait:()V
        42: .line 1119
            goto 50
        43: .line 1122
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool$Latch
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 1 /* starttime */
            lsub
            lstore 8 /* elapsed */
        start local 8 // long elapsed
        44: .line 1123
            lload 5 /* maxWait */
            lload 8 /* elapsed */
            lsub
            lstore 10 /* waitTime */
        start local 10 // long waitTime
        45: .line 1124
            lload 10 /* waitTime */
            lconst_0
            lcmp
            ifle 50
        46: .line 1126
            aload 3 /* latch */
            lload 10 /* waitTime */
            invokevirtual java.lang.Object.wait:(J)V
        end local 10 // long waitTime
        end local 8 // long elapsed
        47: .line 1129
            goto 50
        48: .line 1130
      StackMap locals:
      StackMap stack:
            aload 7
            monitorexit
        49: goto 92
        50: .line 1113
      StackMap locals:
      StackMap stack:
            aload 7
            monitorexit
        51: goto 54
      StackMap locals:
      StackMap stack: java.lang.Throwable
        52: aload 7
            monitorexit
        53: athrow
        54: .line 1134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.isClosed:()Z
            ifeq 77
        55: .line 1135
            new java.lang.IllegalStateException
            dup
            ldc "Pool closed"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        56: .line 1137
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            astore 7 /* e */
        start local 7 // java.lang.InterruptedException e
        57: .line 1138
            iconst_0
            istore 8 /* doAllocate */
        start local 8 // boolean doAllocate
        58: .line 1139
            aload 0 /* this */
            dup
            astore 9
            monitorenter
        59: .line 1141
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            ifnonnull 62
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.mayCreate:()Z
            ifne 62
        60: .line 1144
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            aload 3 /* latch */
            invokevirtual java.util.LinkedList.remove:(Ljava/lang/Object;)Z
            pop
        61: .line 1145
            goto 69
      StackMap locals: java.lang.InterruptedException int org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
        62: aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            ifnonnull 66
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.mayCreate:()Z
            ifeq 66
        63: .line 1148
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        64: .line 1149
            iconst_1
            istore 8 /* doAllocate */
        65: .line 1150
            goto 69
        66: .line 1152
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        67: .line 1153
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
            iconst_1
            iadd
            putfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
        68: .line 1154
            aload 0 /* this */
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            invokevirtual org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.getValue:()Ljava/lang/Object;
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.returnObject:(Ljava/lang/Object;)V
        69: .line 1139
      StackMap locals:
      StackMap stack:
            aload 9
            monitorexit
        70: goto 73
      StackMap locals:
      StackMap stack: java.lang.Throwable
        71: aload 9
            monitorexit
        72: athrow
        73: .line 1157
      StackMap locals:
      StackMap stack:
            iload 8 /* doAllocate */
            ifeq 75
        74: .line 1158
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        75: .line 1160
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        76: .line 1161
            aload 7 /* e */
            athrow
        end local 8 // boolean doAllocate
        end local 7 // java.lang.InterruptedException e
        77: .line 1163
      StackMap locals:
      StackMap stack:
            lload 5 /* maxWait */
            lconst_0
            lcmp
            ifle 11
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 1 /* starttime */
            lsub
            lload 5 /* maxWait */
            lcmp
            iflt 11
        78: .line 1164
            aload 0 /* this */
            dup
            astore 7
            monitorenter
        79: .line 1167
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            ifnonnull 82
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.mayCreate:()Z
            ifne 82
        80: .line 1169
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            aload 3 /* latch */
            invokevirtual java.util.LinkedList.remove:(Ljava/lang/Object;)Z
            pop
        81: .line 1170
            goto 84
        82: .line 1171
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 7
            monitorexit
        83: goto 92
        84: .line 1164
      StackMap locals:
      StackMap stack:
            aload 7
            monitorexit
        85: goto 88
      StackMap locals:
      StackMap stack: java.lang.Throwable
        86: aload 7
            monitorexit
        87: athrow
        88: .line 1174
      StackMap locals:
      StackMap stack:
            new java.util.NoSuchElementException
            dup
            ldc "Timeout waiting for idle object"
            invokespecial java.util.NoSuchElementException.<init>:(Ljava/lang/String;)V
            athrow
        89: .line 1179
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "WhenExhaustedAction property "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* whenExhaustedAction */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        90: .line 1180
            ldc " not recognized."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        91: .line 1179
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        92: .line 1185
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* newlyCreated */
        start local 7 // boolean newlyCreated
        93: .line 1186
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            ifnonnull 116
        94: .line 1188
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.makeObject:()Ljava/lang/Object;
            astore 8 /* obj */
        start local 8 // java.lang.Object obj
        95: .line 1189
            aload 3 /* latch */
            new org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
            dup
            aload 8 /* obj */
            invokespecial org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.<init>:(Ljava/lang/Object;)V
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.setPair:(Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;)V
        96: .line 1190
            iconst_1
            istore 7 /* newlyCreated */
        end local 8 // java.lang.Object obj
        97: .line 1191
            goto 108
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch int long int
      StackMap stack: java.lang.Throwable
        98: astore 9
        99: .line 1192
            iload 7 /* newlyCreated */
            ifne 107
       100: .line 1194
            aload 0 /* this */
            dup
            astore 10
            monitorenter
       101: .line 1195
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
       102: .line 1194
            aload 10
            monitorexit
       103: goto 106
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch int long int top java.lang.Throwable org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
       104: aload 10
            monitorexit
       105: athrow
       106: .line 1198
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
       107: .line 1200
      StackMap locals:
      StackMap stack:
            aload 9
            athrow
       108: .line 1192
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch int long int
      StackMap stack:
            iload 7 /* newlyCreated */
            ifne 116
       109: .line 1194
            aload 0 /* this */
            dup
            astore 10
            monitorenter
       110: .line 1195
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
       111: .line 1194
            aload 10
            monitorexit
       112: goto 115
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch int long int top top org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
       113: aload 10
            monitorexit
       114: athrow
       115: .line 1198
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch int long int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
       116: .line 1204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.activateObject:(Ljava/lang/Object;)V
       117: .line 1205
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._testOnBorrow:Z
            ifeq 120
       118: .line 1206
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.validateObject:(Ljava/lang/Object;)Z
            ifne 120
       119: .line 1207
            new java.lang.Exception
            dup
            ldc "ValidateObject failed"
            invokespecial java.lang.Exception.<init>:(Ljava/lang/String;)V
            athrow
       120: .line 1209
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 8
            monitorenter
       121: .line 1210
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
       122: .line 1211
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
            iconst_1
            iadd
            putfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
       123: .line 1209
            aload 8
            monitorexit
       124: goto 127
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch int long int org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
       125: aload 8
            monitorexit
       126: athrow
       127: .line 1213
      StackMap locals:
      StackMap stack:
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
       128: areturn
       129: .line 1215
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 8 /* e */
        start local 8 // java.lang.Throwable e
       130: .line 1216
            aload 8 /* e */
            invokestatic org.apache.commons.pool.PoolUtils.checkRethrow:(Ljava/lang/Throwable;)V
       131: .line 1219
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.getPair:()Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.destroyObject:(Ljava/lang/Object;)V
       132: .line 1220
            goto 135
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool long org.apache.commons.pool.impl.GenericObjectPool$Latch int long int java.lang.Throwable
      StackMap stack: java.lang.Throwable
       133: astore 9 /* e2 */
        start local 9 // java.lang.Throwable e2
       134: .line 1221
            aload 9 /* e2 */
            invokestatic org.apache.commons.pool.PoolUtils.checkRethrow:(Ljava/lang/Throwable;)V
        end local 9 // java.lang.Throwable e2
       135: .line 1224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 9
            monitorenter
       136: .line 1225
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
       137: .line 1226
            iload 7 /* newlyCreated */
            ifne 140
       138: .line 1227
            aload 3 /* latch */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.reset:()V
       139: .line 1228
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            iconst_0
            aload 3 /* latch */
            invokevirtual java.util.LinkedList.add:(ILjava/lang/Object;)V
       140: .line 1224
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 9
            monitorexit
       141: goto 144
      StackMap locals:
      StackMap stack: java.lang.Throwable
       142: aload 9
            monitorexit
       143: athrow
       144: .line 1231
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
       145: .line 1232
            iload 7 /* newlyCreated */
            ifeq 11
       146: .line 1233
            new java.util.NoSuchElementException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Could not create a validated object, cause: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* e */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.util.NoSuchElementException.<init>:(Ljava/lang/String;)V
            athrow
        end local 8 // java.lang.Throwable e
        end local 7 // boolean newlyCreated
        end local 5 // long maxWait
        end local 4 // byte whenExhaustedAction
        end local 3 // org.apache.commons.pool.impl.GenericObjectPool$Latch latch
        end local 1 // long starttime
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0  147     0                 this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            1  147     1            starttime  J
            2  147     3                latch  Lorg/apache/commons/pool/impl/GenericObjectPool$Latch<TT;>;
            4    8     4  whenExhaustedAction  B
           10  147     4  whenExhaustedAction  B
            5    8     5              maxWait  J
           10  147     5              maxWait  J
           44   47     8              elapsed  J
           45   47    10             waitTime  J
           57   77     7                    e  Ljava/lang/InterruptedException;
           58   77     8           doAllocate  Z
           93  147     7         newlyCreated  Z
           95   97     8                  obj  TT;
          130  147     8                    e  Ljava/lang/Throwable;
          134  135     9                   e2  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           3     7       8  any
           8     9       8  any
          12    14      15  any
          15    16      15  any
          21    25      26  any
          26    27      26  any
          29    31      35  any
          32    34      35  any
          35    36      35  any
          39    49      52  any
          50    51      52  any
          52    53      52  any
          38    49      56  Class java.lang.InterruptedException
          50    56      56  Class java.lang.InterruptedException
          59    70      71  any
          71    72      71  any
          79    83      86  any
          84    85      86  any
          86    87      86  any
          94    98      98  any
         101   103     104  any
         104   105     104  any
         110   112     113  any
         113   114     113  any
         121   124     125  any
         125   126     125  any
         116   128     129  Class java.lang.Throwable
         131   132     133  Class java.lang.Throwable
         136   141     142  any
         142   143     142  any
    Exceptions:
      throws java.lang.Exception
    Signature: ()TT;

  private synchronized void allocate();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1249
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.isClosed:()Z
            ifeq 1
            return
         1: .line 1253
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.isEmpty:()Z
            ifne 11
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.isEmpty:()Z
            ifne 11
         2: .line 1254
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.removeFirst:()Ljava/lang/Object;
            checkcast org.apache.commons.pool.impl.GenericObjectPool$Latch
            astore 1 /* latch */
        start local 1 // org.apache.commons.pool.impl.GenericObjectPool$Latch latch
         3: .line 1255
            aload 1 /* latch */
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.removeFirst:()Ljava/lang/Object;
            checkcast org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.setPair:(Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair;)V
         4: .line 1256
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            iadd
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
         5: .line 1257
            aload 1 /* latch */
            dup
            astore 2
            monitorenter
         6: .line 1258
            aload 1 /* latch */
            invokevirtual java.lang.Object.notify:()V
         7: .line 1257
            aload 2
            monitorexit
         8: goto 1
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.GenericObjectPool$Latch org.apache.commons.pool.impl.GenericObjectPool$Latch
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        end local 1 // org.apache.commons.pool.impl.GenericObjectPool$Latch latch
        11: .line 1267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.isEmpty:()Z
            ifne 21
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._maxActive:I
            iflt 12
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iadd
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._maxActive:I
            if_icmpge 21
        12: .line 1268
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.removeFirst:()Ljava/lang/Object;
            checkcast org.apache.commons.pool.impl.GenericObjectPool$Latch
            astore 1 /* latch */
        start local 1 // org.apache.commons.pool.impl.GenericObjectPool$Latch latch
        13: .line 1269
            aload 1 /* latch */
            iconst_1
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool$Latch.setMayCreate:(Z)V
        14: .line 1270
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            iadd
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        15: .line 1271
            aload 1 /* latch */
            dup
            astore 2
            monitorenter
        16: .line 1272
            aload 1 /* latch */
            invokevirtual java.lang.Object.notify:()V
        17: .line 1271
            aload 2
            monitorexit
        18: goto 11
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.GenericObjectPool$Latch org.apache.commons.pool.impl.GenericObjectPool$Latch
      StackMap stack: java.lang.Throwable
        19: aload 2
            monitorexit
        20: athrow
        end local 1 // org.apache.commons.pool.impl.GenericObjectPool$Latch latch
        21: .line 1278
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   22     0   this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            3   11     1  latch  Lorg/apache/commons/pool/impl/GenericObjectPool$Latch<TT;>;
           13   21     1  latch  Lorg/apache/commons/pool/impl/GenericObjectPool$Latch<TT;>;
      Exception table:
        from    to  target  type
           6     8       9  any
           9    10       9  any
          16    18      19  any
          19    20      19  any

  public void invalidateObject();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // java.lang.Object obj
         0: .line 1289
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            ifnull 12
         1: .line 1290
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 1 /* obj */
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.destroyObject:(Ljava/lang/Object;)V
         2: .line 1292
            goto 12
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 2
         4: .line 1293
            aload 0 /* this */
            dup
            astore 3
            monitorenter
         5: .line 1294
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
         6: .line 1293
            aload 3
            monitorexit
         7: goto 10
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.lang.Object java.lang.Throwable org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
         8: aload 3
            monitorexit
         9: athrow
        10: .line 1296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        11: .line 1297
            aload 2
            athrow
        12: .line 1293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 3
            monitorenter
        13: .line 1294
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
        14: .line 1293
            aload 3
            monitorexit
        15: goto 18
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.lang.Object top org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
        16: aload 3
            monitorexit
        17: athrow
        18: .line 1296
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.lang.Object
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        19: .line 1298
            return
        end local 1 // java.lang.Object obj
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0   20     1   obj  TT;
      Exception table:
        from    to  target  type
           0     3       3  any
           5     7       8  any
           8     9       8  any
          13    15      16  any
          16    17      16  any
    Exceptions:
      throws java.lang.Exception
    Signature: (TT;)V
    MethodParameters:
      Name  Flags
      obj   

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1317
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* toDestroy */
        start local 1 // java.util.List toDestroy
         1: .line 1319
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         2: .line 1320
            aload 1 /* toDestroy */
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         3: .line 1321
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            getfield org.apache.commons.pool.impl.CursorableLinkedList._size:I
            iadd
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
         4: .line 1322
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.clear:()V
         5: .line 1319
            aload 2
            monitorexit
         6: goto 9
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.util.List org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
         7: aload 2
            monitorexit
         8: athrow
         9: .line 1324
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* toDestroy */
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.destroy:(Ljava/util/Collection;Lorg/apache/commons/pool/PoolableObjectFactory;)V
        10: .line 1325
            return
        end local 1 // java.util.List toDestroy
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            1   11     1  toDestroy  Ljava/util/List<Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;>;
      Exception table:
        from    to  target  type
           2     6       7  any
           7     8       7  any

  private void destroy(java.util.Collection<org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair<T>>, org.apache.commons.pool.PoolableObjectFactory<T>);
    descriptor: (Ljava/util/Collection;Lorg/apache/commons/pool/PoolableObjectFactory;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // java.util.Collection c
        start local 2 // org.apache.commons.pool.PoolableObjectFactory factory
         0: .line 1337
            aload 1 /* c */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3 /* it */
        start local 3 // java.util.Iterator it
         1: goto 28
         2: .line 1339
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 2 /* factory */
            aload 3 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.destroyObject:(Ljava/lang/Object;)V
         3: .line 1340
            goto 21
      StackMap locals:
      StackMap stack: java.lang.Exception
         4: pop
         5: .line 1343
            aload 0 /* this */
            dup
            astore 5
            monitorenter
         6: .line 1344
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
         7: .line 1343
            aload 5
            monitorexit
         8: goto 11
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.util.Collection org.apache.commons.pool.PoolableObjectFactory java.util.Iterator top org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
         9: aload 5
            monitorexit
        10: athrow
        11: .line 1346
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.util.Collection org.apache.commons.pool.PoolableObjectFactory java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
            goto 28
        12: .line 1342
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
        13: .line 1343
            aload 0 /* this */
            dup
            astore 5
            monitorenter
        14: .line 1344
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        15: .line 1343
            aload 5
            monitorexit
        16: goto 19
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.util.Collection org.apache.commons.pool.PoolableObjectFactory java.util.Iterator java.lang.Throwable org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
        17: aload 5
            monitorexit
        18: athrow
        19: .line 1346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        20: .line 1347
            aload 4
            athrow
        21: .line 1343
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 5
            monitorenter
        22: .line 1344
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        23: .line 1343
            aload 5
            monitorexit
        24: goto 27
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.util.Collection org.apache.commons.pool.PoolableObjectFactory java.util.Iterator top org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
        25: aload 5
            monitorexit
        26: athrow
        27: .line 1346
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.util.Collection org.apache.commons.pool.PoolableObjectFactory java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        28: .line 1337
      StackMap locals:
      StackMap stack:
            aload 3 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        end local 3 // java.util.Iterator it
        29: .line 1349
            return
        end local 2 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 1 // java.util.Collection c
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   30     0     this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0   30     1        c  Ljava/util/Collection<Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;>;
            0   30     2  factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            1   29     3       it  Ljava/util/Iterator<Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;>;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Exception
           6     8       9  any
           9    10       9  any
           2     5      12  any
          14    16      17  any
          17    18      17  any
          22    24      25  any
          25    26      25  any
    Signature: (Ljava/util/Collection<Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;>;Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;)V
    MethodParameters:
         Name  Flags
      c        
      factory  

  public synchronized int getNumActive();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1358
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public synchronized int getNumIdle();
    descriptor: ()I
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1368
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.size:()I
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;

  public void returnObject();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // java.lang.Object obj
         0: .line 1393
            aload 0 /* this */
            aload 1 /* obj */
            iconst_1
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.addObjectToPool:(Ljava/lang/Object;Z)V
         1: .line 1394
            goto 14
      StackMap locals:
      StackMap stack: java.lang.Exception
         2: pop
         3: .line 1395
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            ifnull 14
         4: .line 1397
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 1 /* obj */
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.destroyObject:(Ljava/lang/Object;)V
         5: .line 1398
            goto 7
      StackMap locals:
      StackMap stack: java.lang.Exception
         6: pop
         7: .line 1404
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         8: .line 1405
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
         9: .line 1404
            aload 2
            monitorexit
        10: goto 13
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.lang.Object org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
        11: aload 2
            monitorexit
        12: athrow
        13: .line 1407
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        14: .line 1410
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object obj
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0   15     1   obj  TT;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception
           4     5       6  Class java.lang.Exception
           8    10      11  any
          11    12      11  any
    Exceptions:
      throws java.lang.Exception
    Signature: (TT;)V
    MethodParameters:
      Name  Flags
      obj   

  private void addObjectToPool(T, );
    descriptor: (Ljava/lang/Object;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // java.lang.Object obj
        start local 2 // boolean decrementNumActive
         0: .line 1426
            iconst_1
            istore 3 /* success */
        start local 3 // boolean success
         1: .line 1427
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._testOnReturn:Z
            ifeq 4
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 1 /* obj */
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.validateObject:(Ljava/lang/Object;)Z
            ifne 4
         2: .line 1428
            iconst_0
            istore 3 /* success */
         3: .line 1429
            goto 5
         4: .line 1430
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 1 /* obj */
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.passivateObject:(Ljava/lang/Object;)V
         5: .line 1433
      StackMap locals:
      StackMap stack:
            iload 3 /* success */
            ifeq 6
            iconst_0
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_1
      StackMap locals:
      StackMap stack: int
         7: istore 4 /* shouldDestroy */
        start local 4 // boolean shouldDestroy
         8: .line 1437
            iconst_0
            istore 5 /* doAllocate */
        start local 5 // boolean doAllocate
         9: .line 1438
            aload 0 /* this */
            dup
            astore 6
            monitorenter
        10: .line 1439
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.isClosed:()Z
            ifeq 13
        11: .line 1440
            iconst_1
            istore 4 /* shouldDestroy */
        12: .line 1441
            goto 24
        13: .line 1442
      StackMap locals: int int org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._maxIdle:I
            iflt 16
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.size:()I
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._maxIdle:I
            if_icmplt 16
        14: .line 1443
            iconst_1
            istore 4 /* shouldDestroy */
        15: .line 1444
            goto 24
      StackMap locals:
      StackMap stack:
        16: iload 3 /* success */
            ifeq 24
        17: .line 1447
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
            ifeq 20
        18: .line 1448
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            new org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
            dup
            aload 1 /* obj */
            invokespecial org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.<init>:(Ljava/lang/Object;)V
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.addFirst:(Ljava/lang/Object;)Z
            pop
        19: .line 1449
            goto 21
        20: .line 1450
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            new org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
            dup
            aload 1 /* obj */
            invokespecial org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.<init>:(Ljava/lang/Object;)V
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.addLast:(Ljava/lang/Object;)Z
            pop
        21: .line 1452
      StackMap locals:
      StackMap stack:
            iload 2 /* decrementNumActive */
            ifeq 23
        22: .line 1453
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
        23: .line 1455
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* doAllocate */
        24: .line 1438
      StackMap locals:
      StackMap stack:
            aload 6
            monitorexit
        25: goto 28
      StackMap locals:
      StackMap stack: java.lang.Throwable
        26: aload 6
            monitorexit
        27: athrow
        28: .line 1459
      StackMap locals:
      StackMap stack:
            iload 5 /* doAllocate */
            ifeq 30
        29: .line 1460
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        30: .line 1464
      StackMap locals:
      StackMap stack:
            iload 4 /* shouldDestroy */
            ifeq 42
        31: .line 1466
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 1 /* obj */
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.destroyObject:(Ljava/lang/Object;)V
        32: .line 1467
            goto 34
      StackMap locals:
      StackMap stack: java.lang.Exception
        33: pop
        34: .line 1471
      StackMap locals:
      StackMap stack:
            iload 2 /* decrementNumActive */
            ifeq 42
        35: .line 1472
            aload 0 /* this */
            dup
            astore 6
            monitorenter
        36: .line 1473
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numActive:I
        37: .line 1472
            aload 6
            monitorexit
        38: goto 41
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.lang.Object int int int int org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
        39: aload 6
            monitorexit
        40: athrow
        41: .line 1475
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        42: .line 1479
      StackMap locals:
      StackMap stack:
            return
        end local 5 // boolean doAllocate
        end local 4 // boolean shouldDestroy
        end local 3 // boolean success
        end local 2 // boolean decrementNumActive
        end local 1 // java.lang.Object obj
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   43     0                this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0   43     1                 obj  TT;
            0   43     2  decrementNumActive  Z
            1   43     3             success  Z
            8   43     4       shouldDestroy  Z
            9   43     5          doAllocate  Z
      Exception table:
        from    to  target  type
          10    25      26  any
          26    27      26  any
          31    32      33  Class java.lang.Exception
          36    38      39  any
          39    40      39  any
    Exceptions:
      throws java.lang.Exception
    Signature: (TT;Z)V
    MethodParameters:
                    Name  Flags
      obj                 
      decrementNumActive  

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1493
            aload 0 /* this */
            invokespecial org.apache.commons.pool.BaseObjectPool.close:()V
         1: .line 1494
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         2: .line 1495
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.clear:()V
         3: .line 1496
            aload 0 /* this */
            ldc -1
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.startEvictor:(J)V
         4: .line 1498
            goto 12
         5: .line 1499
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.removeFirst:()Ljava/lang/Object;
            checkcast org.apache.commons.pool.impl.GenericObjectPool$Latch
            astore 2 /* l */
        start local 2 // org.apache.commons.pool.impl.GenericObjectPool$Latch l
         6: .line 1501
            aload 2 /* l */
            dup
            astore 3
            monitorenter
         7: .line 1503
            aload 2 /* l */
            invokevirtual java.lang.Object.notify:()V
         8: .line 1501
            aload 3
            monitorexit
         9: goto 12
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.GenericObjectPool$Latch org.apache.commons.pool.impl.GenericObjectPool$Latch
      StackMap stack: java.lang.Throwable
        10: aload 3
            monitorexit
        11: athrow
        end local 2 // org.apache.commons.pool.impl.GenericObjectPool$Latch l
        12: .line 1498
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._allocationQueue:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.size:()I
            ifgt 5
        13: .line 1494
            aload 1
            monitorexit
        14: goto 17
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: aload 1
            monitorexit
        16: athrow
        17: .line 1507
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            6   12     2     l  Lorg/apache/commons/pool/impl/GenericObjectPool$Latch<TT;>;
      Exception table:
        from    to  target  type
           7     9      10  any
          10    11      10  any
           2    14      15  any
          15    16      15  any
    Exceptions:
      throws java.lang.Exception

  public void setFactory(org.apache.commons.pool.PoolableObjectFactory<T>);
    descriptor: (Lorg/apache/commons/pool/PoolableObjectFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // org.apache.commons.pool.PoolableObjectFactory factory
         0: .line 1524
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* toDestroy */
        start local 2 // java.util.List toDestroy
         1: .line 1525
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            astore 3 /* oldFactory */
        start local 3 // org.apache.commons.pool.PoolableObjectFactory oldFactory
         2: .line 1526
            aload 0 /* this */
            dup
            astore 4
            monitorenter
         3: .line 1527
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.assertOpen:()V
         4: .line 1528
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getNumActive:()I
            ifle 6
         5: .line 1529
            new java.lang.IllegalStateException
            dup
            ldc "Objects are already active"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 1531
      StackMap locals: java.util.List org.apache.commons.pool.PoolableObjectFactory org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 2 /* toDestroy */
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
         7: .line 1532
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            getfield org.apache.commons.pool.impl.CursorableLinkedList._size:I
            iadd
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
         8: .line 1533
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.clear:()V
         9: .line 1535
            aload 0 /* this */
            aload 1 /* factory */
            putfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
        10: .line 1526
            aload 4
            monitorexit
        11: goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: aload 4
            monitorexit
        13: athrow
        14: .line 1537
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* toDestroy */
            aload 3 /* oldFactory */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.destroy:(Ljava/util/Collection;Lorg/apache/commons/pool/PoolableObjectFactory;)V
        15: .line 1538
            return
        end local 3 // org.apache.commons.pool.PoolableObjectFactory oldFactory
        end local 2 // java.util.List toDestroy
        end local 1 // org.apache.commons.pool.PoolableObjectFactory factory
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0        this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0   16     1     factory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
            1   16     2   toDestroy  Ljava/util/List<Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;>;
            2   16     3  oldFactory  Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;
      Exception table:
        from    to  target  type
           3    11      12  any
          12    13      12  any
    Exceptions:
      throws java.lang.IllegalStateException
    Signature: (Lorg/apache/commons/pool/PoolableObjectFactory<TT;>;)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      factory  

  public void evict();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1554
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.assertOpen:()V
         1: .line 1555
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         2: .line 1556
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.isEmpty:()Z
            ifeq 5
         3: .line 1557
            aload 1
            monitorexit
         4: return
         5: .line 1559
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            ifnonnull 9
         6: .line 1560
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
            ifeq 7
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.size:()I
            goto 8
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.CursorableLinkedList
         7: iconst_0
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.CursorableLinkedList int
         8: invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.cursor:(I)Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            putfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
         9: .line 1555
      StackMap locals:
      StackMap stack:
            aload 1
            monitorexit
        10: goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: aload 1
            monitorexit
        12: athrow
        13: .line 1564
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
        14: aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getNumTests:()I
            istore 2 /* m */
        start local 2 // int m
        15: goto 73
        16: .line 1566
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            dup
            astore 4
            monitorenter
        17: .line 1567
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
            ifeq 18
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList$Cursor.hasPrevious:()Z
            ifeq 19
        18: .line 1568
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int int top org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
            ifne 23
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList$Cursor.hasNext:()Z
            ifne 23
        19: .line 1569
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList$Cursor.close:()V
        20: .line 1570
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
            ifeq 21
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.size:()I
            goto 22
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int int top org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.CursorableLinkedList
        21: iconst_0
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int int top org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: org.apache.commons.pool.impl.GenericObjectPool org.apache.commons.pool.impl.CursorableLinkedList int
        22: invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.cursor:(I)Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            putfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
        23: .line 1573
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
            ifeq 25
        24: .line 1574
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList$Cursor.previous:()Ljava/lang/Object;
            checkcast org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
            goto 26
        25: .line 1575
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList$Cursor.next:()Ljava/lang/Object;
            checkcast org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
        26: .line 1573
      StackMap locals:
      StackMap stack: org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
            astore 3 /* pair */
        start local 3 // org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair pair
        27: .line 1577
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList$Cursor.remove:()V
        28: .line 1578
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            iadd
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        29: .line 1566
            aload 4
            monitorexit
        30: goto 33
        end local 3 // org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair pair
      StackMap locals:
      StackMap stack: java.lang.Throwable
        31: aload 4
            monitorexit
        32: athrow
        start local 3 // org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair pair
        33: .line 1581
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int int org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
      StackMap stack:
            iconst_0
            istore 4 /* removeObject */
        start local 4 // boolean removeObject
        34: .line 1582
            invokestatic java.lang.System.currentTimeMillis:()J
            aload 3 /* pair */
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.tstamp:J
            lsub
            lstore 5 /* idleTimeMilis */
        start local 5 // long idleTimeMilis
        35: .line 1583
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getMinEvictableIdleTimeMillis:()J
            lconst_0
            lcmp
            ifle 39
        36: .line 1584
            lload 5 /* idleTimeMilis */
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getMinEvictableIdleTimeMillis:()J
            lcmp
            ifle 39
        37: .line 1585
            iconst_1
            istore 4 /* removeObject */
        38: .line 1586
            goto 43
      StackMap locals: int long
      StackMap stack:
        39: aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getSoftMinEvictableIdleTimeMillis:()J
            lconst_0
            lcmp
            ifle 43
        40: .line 1587
            lload 5 /* idleTimeMilis */
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getSoftMinEvictableIdleTimeMillis:()J
            lcmp
            ifle 43
        41: .line 1588
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getNumIdle:()I
            iconst_1
            iadd
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getMinIdle:()I
            if_icmple 43
        42: .line 1589
            iconst_1
            istore 4 /* removeObject */
        43: .line 1591
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getTestWhileIdle:()Z
            ifeq 58
            iload 4 /* removeObject */
            ifne 58
        44: .line 1592
            iconst_0
            istore 7 /* active */
        start local 7 // boolean active
        45: .line 1594
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 3 /* pair */
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.activateObject:(Ljava/lang/Object;)V
        46: .line 1595
            iconst_1
            istore 7 /* active */
        47: .line 1596
            goto 50
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int int org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair int long int
      StackMap stack: java.lang.Exception
        48: pop
        49: .line 1597
            iconst_1
            istore 4 /* removeObject */
        50: .line 1599
      StackMap locals:
      StackMap stack:
            iload 7 /* active */
            ifeq 58
        51: .line 1600
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 3 /* pair */
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.validateObject:(Ljava/lang/Object;)Z
            ifne 54
        52: .line 1601
            iconst_1
            istore 4 /* removeObject */
        53: .line 1602
            goto 58
        54: .line 1604
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 3 /* pair */
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.passivateObject:(Ljava/lang/Object;)V
        55: .line 1605
            goto 58
      StackMap locals:
      StackMap stack: java.lang.Exception
        56: pop
        57: .line 1606
            iconst_1
            istore 4 /* removeObject */
        end local 7 // boolean active
        58: .line 1612
      StackMap locals:
      StackMap stack:
            iload 4 /* removeObject */
            ifeq 62
        59: .line 1614
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 3 /* pair */
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.destroyObject:(Ljava/lang/Object;)V
        60: .line 1615
            goto 62
      StackMap locals:
      StackMap stack: java.lang.Exception
        61: pop
        62: .line 1619
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 7
            monitorenter
        63: .line 1620
            iload 4 /* removeObject */
            ifne 67
        64: .line 1621
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            aload 3 /* pair */
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList$Cursor.add:(Ljava/lang/Object;)V
        65: .line 1622
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._lifo:Z
            ifeq 67
        66: .line 1624
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictionCursor:Lorg/apache/commons/pool/impl/CursorableLinkedList$Cursor;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList$Cursor.previous:()Ljava/lang/Object;
            pop
        67: .line 1627
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack:
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        68: .line 1619
            aload 7
            monitorexit
        69: goto 72
      StackMap locals:
      StackMap stack: java.lang.Throwable
        70: aload 7
            monitorexit
        71: athrow
        end local 5 // long idleTimeMilis
        end local 4 // boolean removeObject
        end local 3 // org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair pair
        72: .line 1564
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int int
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        73: iload 1 /* i */
            iload 2 /* m */
            if_icmplt 16
        end local 2 // int m
        end local 1 // int i
        74: .line 1630
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        75: .line 1631
            return
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   76     0           this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
           14   74     1              i  I
           15   74     2              m  I
           27   31     3           pair  Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;
           33   72     3           pair  Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;
           34   72     4   removeObject  Z
           35   72     5  idleTimeMilis  J
           45   58     7         active  Z
      Exception table:
        from    to  target  type
           2     4      11  any
           5    10      11  any
          11    12      11  any
          17    30      31  any
          31    32      31  any
          45    47      48  Class java.lang.Exception
          54    55      56  Class java.lang.Exception
          59    60      61  Class java.lang.Exception
          63    69      70  any
          70    71      70  any
    Exceptions:
      throws java.lang.Exception

  private void ensureMinIdle();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1645
            aload 0 /* this */
            iconst_0
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.calculateDeficit:(Z)I
            istore 1 /* objectDeficit */
        start local 1 // int objectDeficit
         1: .line 1646
            iconst_0
            istore 2 /* j */
        start local 2 // int j
         2: goto 22
         3: .line 1648
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.addObject:()V
         4: .line 1649
            goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
         5: astore 3
         6: .line 1650
            aload 0 /* this */
            dup
            astore 4
            monitorenter
         7: .line 1651
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
         8: .line 1650
            aload 4
            monitorexit
         9: goto 12
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int int java.lang.Throwable org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
        10: aload 4
            monitorexit
        11: athrow
        12: .line 1653
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        13: .line 1654
            aload 3
            athrow
        14: .line 1650
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 4
            monitorenter
        15: .line 1651
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            isub
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
        16: .line 1650
            aload 4
            monitorexit
        17: goto 20
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int int top org.apache.commons.pool.impl.GenericObjectPool
      StackMap stack: java.lang.Throwable
        18: aload 4
            monitorexit
        19: athrow
        20: .line 1653
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool int int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.allocate:()V
        21: .line 1646
            iinc 2 /* j */ 1
      StackMap locals:
      StackMap stack:
        22: iload 2 /* j */
            iload 1 /* objectDeficit */
            if_icmpge 23
            aload 0 /* this */
            iconst_1
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.calculateDeficit:(Z)I
            ifgt 3
        end local 2 // int j
        23: .line 1656
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int objectDeficit
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   24     0           this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            1   24     1  objectDeficit  I
            2   23     2              j  I
      Exception table:
        from    to  target  type
           3     5       5  any
           7     9      10  any
          10    11      10  any
          15    17      18  any
          18    19      18  any
    Exceptions:
      throws java.lang.Exception

  private synchronized int calculateDeficit(boolean);
    descriptor: (Z)I
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // boolean incrementInternal
         0: .line 1669
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getMinIdle:()I
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getNumIdle:()I
            isub
            istore 2 /* objectDeficit */
        start local 2 // int objectDeficit
         1: .line 1670
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._maxActive:I
            ifle 6
         2: .line 1671
            iconst_0
         3: .line 1672
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getMaxActive:()I
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getNumActive:()I
            isub
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getNumIdle:()I
            isub
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            isub
         4: .line 1671
            invokestatic java.lang.Math.max:(II)I
            istore 3 /* growLimit */
        start local 3 // int growLimit
         5: .line 1673
            iload 2 /* objectDeficit */
            iload 3 /* growLimit */
            invokestatic java.lang.Math.min:(II)I
            istore 2 /* objectDeficit */
        end local 3 // int growLimit
         6: .line 1675
      StackMap locals: int
      StackMap stack:
            iload 1 /* incrementInternal */
            ifeq 8
            iload 2 /* objectDeficit */
            ifle 8
         7: .line 1676
            aload 0 /* this */
            dup
            getfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
            iconst_1
            iadd
            putfield org.apache.commons.pool.impl.GenericObjectPool._numInternalProcessing:I
         8: .line 1678
      StackMap locals:
      StackMap stack:
            iload 2 /* objectDeficit */
            ireturn
        end local 2 // int objectDeficit
        end local 1 // boolean incrementInternal
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    9     0               this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    9     1  incrementInternal  Z
            1    9     2      objectDeficit  I
            5    6     3          growLimit  I
    MethodParameters:
                   Name  Flags
      incrementInternal  

  public void addObject();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1687
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.assertOpen:()V
         1: .line 1688
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            ifnonnull 3
         2: .line 1689
            new java.lang.IllegalStateException
            dup
            ldc "Cannot add objects without a factory."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 1691
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.makeObject:()Ljava/lang/Object;
            astore 1 /* obj */
        start local 1 // java.lang.Object obj
         4: .line 1693
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.assertOpen:()V
         5: .line 1694
            aload 0 /* this */
            aload 1 /* obj */
            iconst_0
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.addObjectToPool:(Ljava/lang/Object;Z)V
         6: .line 1695
            goto 12
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.lang.Object
      StackMap stack: java.lang.IllegalStateException
         7: astore 2 /* ex */
        start local 2 // java.lang.IllegalStateException ex
         8: .line 1697
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._factory:Lorg/apache/commons/pool/PoolableObjectFactory;
            aload 1 /* obj */
            invokeinterface org.apache.commons.pool.PoolableObjectFactory.destroyObject:(Ljava/lang/Object;)V
         9: .line 1698
            goto 11
      StackMap locals: org.apache.commons.pool.impl.GenericObjectPool java.lang.Object java.lang.IllegalStateException
      StackMap stack: java.lang.Exception
        10: pop
        11: .line 1701
      StackMap locals:
      StackMap stack:
            aload 2 /* ex */
            athrow
        end local 2 // java.lang.IllegalStateException ex
        12: .line 1703
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object obj
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            4   13     1   obj  TT;
            8   12     2    ex  Ljava/lang/IllegalStateException;
      Exception table:
        from    to  target  type
           4     6       7  Class java.lang.IllegalStateException
           8     9      10  Class java.lang.Exception
    Exceptions:
      throws java.lang.Exception

  protected synchronized void startEvictor(long);
    descriptor: (J)V
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
        start local 1 // long delay
         0: .line 1715
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictor:Lorg/apache/commons/pool/impl/GenericObjectPool$Evictor;
            ifnull 3
         1: .line 1716
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictor:Lorg/apache/commons/pool/impl/GenericObjectPool$Evictor;
            invokestatic org.apache.commons.pool.impl.EvictionTimer.cancel:(Ljava/util/TimerTask;)V
         2: .line 1717
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.pool.impl.GenericObjectPool._evictor:Lorg/apache/commons/pool/impl/GenericObjectPool$Evictor;
         3: .line 1719
      StackMap locals:
      StackMap stack:
            lload 1 /* delay */
            lconst_0
            lcmp
            ifle 6
         4: .line 1720
            aload 0 /* this */
            new org.apache.commons.pool.impl.GenericObjectPool$Evictor
            dup
            aload 0 /* this */
            invokespecial org.apache.commons.pool.impl.GenericObjectPool$Evictor.<init>:(Lorg/apache/commons/pool/impl/GenericObjectPool;)V
            putfield org.apache.commons.pool.impl.GenericObjectPool._evictor:Lorg/apache/commons/pool/impl/GenericObjectPool$Evictor;
         5: .line 1721
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._evictor:Lorg/apache/commons/pool/impl/GenericObjectPool$Evictor;
            lload 1 /* delay */
            lload 1 /* delay */
            invokestatic org.apache.commons.pool.impl.EvictionTimer.schedule:(Ljava/util/TimerTask;JJ)V
         6: .line 1723
      StackMap locals:
      StackMap stack:
            return
        end local 1 // long delay
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            0    7     1  delay  J
    MethodParameters:
       Name  Flags
      delay  

  synchronized java.lang.String debugInfo();
    descriptor: ()Ljava/lang/String;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1732
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* buf */
        start local 1 // java.lang.StringBuffer buf
         1: .line 1733
            aload 1 /* buf */
            ldc "Active: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getNumActive:()I
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         2: .line 1734
            aload 1 /* buf */
            ldc "Idle: "
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 0 /* this */
            invokevirtual org.apache.commons.pool.impl.GenericObjectPool.getNumIdle:()I
            invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         3: .line 1735
            aload 1 /* buf */
            ldc "Idle Objects:\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         4: .line 1736
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.iterator:()Ljava/util/Iterator;
            astore 2 /* it */
        start local 2 // java.util.Iterator it
         5: .line 1737
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 3 /* time */
        start local 3 // long time
         6: .line 1738
            goto 9
         7: .line 1739
      StackMap locals: java.lang.StringBuffer java.util.Iterator long
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair
            astore 5 /* pair */
        start local 5 // org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair pair
         8: .line 1740
            aload 1 /* buf */
            ldc "\t"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            aload 5 /* pair */
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.value:Ljava/lang/Object;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            ldc "\t"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            lload 3 /* time */
            aload 5 /* pair */
            getfield org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair.tstamp:J
            lsub
            invokevirtual java.lang.StringBuffer.append:(J)Ljava/lang/StringBuffer;
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 5 // org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair pair
         9: .line 1738
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        10: .line 1742
            aload 1 /* buf */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 3 // long time
        end local 2 // java.util.Iterator it
        end local 1 // java.lang.StringBuffer buf
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
            1   11     1   buf  Ljava/lang/StringBuffer;
            5   11     2    it  Ljava/util/Iterator<Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;>;
            6   11     3  time  J
            8    9     5  pair  Lorg/apache/commons/pool/impl/GenericKeyedObjectPool$ObjectTimestampPair<TT;>;

  private int getNumTests();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.commons.pool.impl.GenericObjectPool this
         0: .line 1754
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._numTestsPerEvictionRun:I
            iflt 2
         1: .line 1755
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._numTestsPerEvictionRun:I
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.size:()I
            invokestatic java.lang.Math.min:(II)I
            ireturn
         2: .line 1757
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._pool:Lorg/apache/commons/pool/impl/CursorableLinkedList;
            invokevirtual org.apache.commons.pool.impl.CursorableLinkedList.size:()I
            i2d
            aload 0 /* this */
            getfield org.apache.commons.pool.impl.GenericObjectPool._numTestsPerEvictionRun:I
            i2d
            invokestatic java.lang.Math.abs:(D)D
            ddiv
            invokestatic java.lang.Math.ceil:(D)D
            d2i
            ireturn
        end local 0 // org.apache.commons.pool.impl.GenericObjectPool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/pool/impl/GenericObjectPool<TT;>;
}
Signature: <T:Ljava/lang/Object;>Lorg/apache/commons/pool/BaseObjectPool<TT;>;Lorg/apache/commons/pool/ObjectPool<TT;>;
SourceFile: "GenericObjectPool.java"
NestMembers:
  org.apache.commons.pool.impl.GenericObjectPool$Config  org.apache.commons.pool.impl.GenericObjectPool$Evictor  org.apache.commons.pool.impl.GenericObjectPool$Latch
InnerClasses:
  public Cursor = org.apache.commons.pool.impl.CursorableLinkedList$Cursor of org.apache.commons.pool.impl.CursorableLinkedList
  ObjectTimestampPair = org.apache.commons.pool.impl.GenericKeyedObjectPool$ObjectTimestampPair of org.apache.commons.pool.impl.GenericKeyedObjectPool
  public Config = org.apache.commons.pool.impl.GenericObjectPool$Config of org.apache.commons.pool.impl.GenericObjectPool
  private Evictor = org.apache.commons.pool.impl.GenericObjectPool$Evictor of org.apache.commons.pool.impl.GenericObjectPool
  private final Latch = org.apache.commons.pool.impl.GenericObjectPool$Latch of org.apache.commons.pool.impl.GenericObjectPool