public final class mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap<K, V> extends java.util.AbstractMap<K, V> implements java.util.concurrent.ConcurrentMap<K, V>, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  super_class: java.util.AbstractMap
{
  static final int NCPU;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final long MAXIMUM_CAPACITY;
    descriptor: J
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 9223372034707292160

  static final int NUMBER_OF_READ_BUFFERS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final int READ_BUFFERS_MASK;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final int READ_BUFFER_THRESHOLD;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 32

  static final int READ_BUFFER_DRAIN_THRESHOLD;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 64

  static final int READ_BUFFER_SIZE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 128

  static final int READ_BUFFER_INDEX_MASK;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 127

  static final int WRITE_BUFFER_DRAIN_THRESHOLD;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  static final java.util.Queue<?> DISCARDING_QUEUE;
    descriptor: Ljava/util/Queue;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Queue<*>;

  final java.util.concurrent.ConcurrentMap<K, mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>> data;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<TK;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;>;

  final int concurrencyLevel;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final long[] readBufferReadCount;
    descriptor: [J
    flags: (0x0010) ACC_FINAL

  final mssql.googlecode.concurrentlinkedhashmap.LinkedDeque<mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>> evictionDeque;
    descriptor: Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
    flags: (0x0010) ACC_FINAL
    Signature: Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque<Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;>;

  final java.util.concurrent.atomic.AtomicLong weightedSize;
    descriptor: Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x0010) ACC_FINAL

  final java.util.concurrent.atomic.AtomicLong capacity;
    descriptor: Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x0010) ACC_FINAL

  final java.util.concurrent.locks.Lock evictionLock;
    descriptor: Ljava/util/concurrent/locks/Lock;
    flags: (0x0010) ACC_FINAL

  final java.util.Queue<java.lang.Runnable> writeBuffer;
    descriptor: Ljava/util/Queue;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/Queue<Ljava/lang/Runnable;>;

  final java.util.concurrent.atomic.AtomicLong[] readBufferWriteCount;
    descriptor: [Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x0010) ACC_FINAL

  final java.util.concurrent.atomic.AtomicLong[] readBufferDrainAtWriteCount;
    descriptor: [Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x0010) ACC_FINAL

  final java.util.concurrent.atomic.AtomicReference<mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>>[][] readBuffers;
    descriptor: [[Ljava/util/concurrent/atomic/AtomicReference;
    flags: (0x0010) ACC_FINAL
    Signature: [[Ljava/util/concurrent/atomic/AtomicReference<Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;>;

  final java.util.concurrent.atomic.AtomicReference<mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus> drainStatus;
    descriptor: Ljava/util/concurrent/atomic/AtomicReference;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReference<Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DrainStatus;>;

  final mssql.googlecode.concurrentlinkedhashmap.EntryWeigher<? super K, ? super V> weigher;
    descriptor: Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
    flags: (0x0010) ACC_FINAL
    Signature: Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher<-TK;-TV;>;

  final java.util.Queue<mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>> pendingNotifications;
    descriptor: Ljava/util/Queue;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/Queue<Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;>;

  final mssql.googlecode.concurrentlinkedhashmap.EvictionListener<K, V> listener;
    descriptor: Lmssql/googlecode/concurrentlinkedhashmap/EvictionListener;
    flags: (0x0010) ACC_FINAL
    Signature: Lmssql/googlecode/concurrentlinkedhashmap/EvictionListener<TK;TV;>;

  transient java.util.Set<K> keySet;
    descriptor: Ljava/util/Set;
    flags: (0x0080) ACC_TRANSIENT
    Signature: Ljava/util/Set<TK;>;

  transient java.util.Collection<V> values;
    descriptor: Ljava/util/Collection;
    flags: (0x0080) ACC_TRANSIENT
    Signature: Ljava/util/Collection<TV;>;

  transient java.util.Set<java.util.Map$Entry<K, V>> entrySet;
    descriptor: Ljava/util/Set;
    flags: (0x0080) ACC_TRANSIENT
    Signature: Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;

  static final long serialVersionUID;
    descriptor: J
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 142
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            invokevirtual java.lang.Runtime.availableProcessors:()I
            putstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NCPU:I
         1: .line 148
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NCPU:I
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.ceilingNextPowerOfTwo:(I)I
            putstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NUMBER_OF_READ_BUFFERS:I
         2: .line 151
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NUMBER_OF_READ_BUFFERS:I
            iconst_1
            isub
            putstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.READ_BUFFERS_MASK:I
         3: .line 169
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DiscardingQueue
            dup
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DiscardingQueue.<init>:()V
            putstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.DISCARDING_QUEUE:Ljava/util/Queue;
         4: .line 1396
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int ceilingNextPowerOfTwo(int);
    descriptor: (I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // int x
         0: .line 173
            iconst_1
            bipush 32
            iload 0 /* x */
            iconst_1
            isub
            invokestatic java.lang.Integer.numberOfLeadingZeros:(I)I
            isub
            ishl
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
    MethodParameters:
      Name  Flags
      x     

  private void <init>(mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder<K, V>);
    descriptor: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Builder;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder builder
         0: .line 208
            aload 0 /* this */
            invokespecial java.util.AbstractMap.<init>:()V
         1: .line 210
            aload 0 /* this */
            aload 1 /* builder */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder.concurrencyLevel:I
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.concurrencyLevel:I
         2: .line 211
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicLong
            dup
            aload 1 /* builder */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder.capacity:J
            ldc 9223372034707292160
            invokestatic java.lang.Math.min:(JJ)J
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.capacity:Ljava/util/concurrent/atomic/AtomicLong;
         3: .line 212
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            aload 1 /* builder */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder.initialCapacity:I
            ldc 0.75
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.concurrencyLevel:I
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(IFI)V
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
         4: .line 215
            aload 0 /* this */
            aload 1 /* builder */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder.weigher:Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weigher:Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
         5: .line 216
            aload 0 /* this */
            new java.util.concurrent.locks.ReentrantLock
            dup
            invokespecial java.util.concurrent.locks.ReentrantLock.<init>:()V
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
         6: .line 217
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicLong
            dup
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weightedSize:Ljava/util/concurrent/atomic/AtomicLong;
         7: .line 218
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.LinkedDeque
            dup
            invokespecial mssql.googlecode.concurrentlinkedhashmap.LinkedDeque.<init>:()V
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionDeque:Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
         8: .line 219
            aload 0 /* this */
            new java.util.concurrent.ConcurrentLinkedQueue
            dup
            invokespecial java.util.concurrent.ConcurrentLinkedQueue.<init>:()V
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.writeBuffer:Ljava/util/Queue;
         9: .line 220
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus.IDLE:Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DrainStatus;
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:(Ljava/lang/Object;)V
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainStatus:Ljava/util/concurrent/atomic/AtomicReference;
        10: .line 222
            aload 0 /* this */
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NUMBER_OF_READ_BUFFERS:I
            newarray 11
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferReadCount:[J
        11: .line 223
            aload 0 /* this */
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NUMBER_OF_READ_BUFFERS:I
            anewarray java.util.concurrent.atomic.AtomicLong
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferWriteCount:[Ljava/util/concurrent/atomic/AtomicLong;
        12: .line 224
            aload 0 /* this */
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NUMBER_OF_READ_BUFFERS:I
            anewarray java.util.concurrent.atomic.AtomicLong
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferDrainAtWriteCount:[Ljava/util/concurrent/atomic/AtomicLong;
        13: .line 225
            aload 0 /* this */
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NUMBER_OF_READ_BUFFERS:I
            sipush 128
            multianewarray [[Ljava/util/concurrent/atomic/AtomicReference; 2
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBuffers:[[Ljava/util/concurrent/atomic/AtomicReference;
        14: .line 226
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        15: goto 25
        16: .line 227
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder int
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferWriteCount:[Ljava/util/concurrent/atomic/AtomicLong;
            iload 2 /* i */
            new java.util.concurrent.atomic.AtomicLong
            dup
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
            aastore
        17: .line 228
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferDrainAtWriteCount:[Ljava/util/concurrent/atomic/AtomicLong;
            iload 2 /* i */
            new java.util.concurrent.atomic.AtomicLong
            dup
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
            aastore
        18: .line 229
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBuffers:[[Ljava/util/concurrent/atomic/AtomicReference;
            iload 2 /* i */
            sipush 128
            anewarray java.util.concurrent.atomic.AtomicReference
            aastore
        19: .line 230
            iconst_0
            istore 3 /* j */
        start local 3 // int j
        20: goto 23
        21: .line 231
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBuffers:[[Ljava/util/concurrent/atomic/AtomicReference;
            iload 2 /* i */
            aaload
            iload 3 /* j */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            aastore
        22: .line 230
            iinc 3 /* j */ 1
      StackMap locals:
      StackMap stack:
        23: iload 3 /* j */
            sipush 128
            if_icmplt 21
        end local 3 // int j
        24: .line 226
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 2 /* i */
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NUMBER_OF_READ_BUFFERS:I
            if_icmplt 16
        end local 2 // int i
        26: .line 236
            aload 0 /* this */
            aload 1 /* builder */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder.listener:Lmssql/googlecode/concurrentlinkedhashmap/EvictionListener;
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.listener:Lmssql/googlecode/concurrentlinkedhashmap/EvictionListener;
        27: .line 237
            aload 0 /* this */
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.listener:Lmssql/googlecode/concurrentlinkedhashmap/EvictionListener;
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DiscardingListener.INSTANCE:Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DiscardingListener;
            if_acmpne 29
        28: .line 238
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.DISCARDING_QUEUE:Ljava/util/Queue;
            goto 30
        29: .line 239
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder
      StackMap stack: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
            new java.util.concurrent.ConcurrentLinkedQueue
            dup
            invokespecial java.util.concurrent.ConcurrentLinkedQueue.<init>:()V
        30: .line 237
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder
      StackMap stack: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap java.util.Queue
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.pendingNotifications:Ljava/util/Queue;
        31: .line 240
            return
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder builder
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   32     0     this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0   32     1  builder  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Builder<TK;TV;>;
           15   26     2        i  I
           20   24     3        j  I
    Signature: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Builder<TK;TV;>;)V
    MethodParameters:
         Name  Flags
      builder  

  static void checkNotNull(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Object o
         0: .line 244
            aload 0 /* o */
            ifnonnull 2
         1: .line 245
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 247
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.lang.Object o
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      o     

  static void checkArgument(boolean);
    descriptor: (Z)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // boolean expression
         0: .line 251
            iload 0 /* expression */
            ifne 2
         1: .line 252
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 254
      StackMap locals:
      StackMap stack:
            return
        end local 0 // boolean expression
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  expression  Z
    MethodParameters:
            Name  Flags
      expression  

  static void checkState(boolean);
    descriptor: (Z)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // boolean expression
         0: .line 258
            iload 0 /* expression */
            ifne 2
         1: .line 259
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         2: .line 261
      StackMap locals:
      StackMap stack:
            return
        end local 0 // boolean expression
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  expression  Z
    MethodParameters:
            Name  Flags
      expression  

  public long capacity();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 271
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.capacity:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            lreturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;

  public void setCapacity(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // long capacity
         0: .line 282
            lload 1 /* capacity */
            lconst_0
            lcmp
            iflt 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkArgument:(Z)V
         3: .line 283
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         4: .line 285
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.capacity:Ljava/util/concurrent/atomic/AtomicLong;
            lload 1 /* capacity */
            ldc 9223372034707292160
            invokestatic java.lang.Math.min:(JJ)J
            invokevirtual java.util.concurrent.atomic.AtomicLong.lazySet:(J)V
         5: .line 286
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainBuffers:()V
         6: .line 287
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evict:()V
         7: .line 288
            goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: astore 3
         9: .line 289
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        10: .line 290
            aload 3
            athrow
        11: .line 289
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        12: .line 291
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.notifyListener:()V
        13: .line 292
            return
        end local 1 // long capacity
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0   14     1  capacity  J
      Exception table:
        from    to  target  type
           4     8       8  any
    MethodParameters:
          Name  Flags
      capacity  

  boolean hasOverflowed();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 296
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weightedSize:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.capacity:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            lcmp
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;

  void evict();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 310
            goto 7
         1: .line 311
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionDeque:Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.LinkedDeque.poll:()Lmssql/googlecode/concurrentlinkedhashmap/Linked;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 1 /* node */
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         2: .line 315
            aload 1 /* node */
            ifnonnull 4
         3: .line 316
            return
         4: .line 320
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* node */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.key:Ljava/lang/Object;
            aload 1 /* node */
            invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 6
         5: .line 321
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.pendingNotifications:Ljava/util/Queue;
            aload 1 /* node */
            invokeinterface java.util.Queue.add:(Ljava/lang/Object;)Z
            pop
         6: .line 324
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.makeDead:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         7: .line 310
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.hasOverflowed:()Z
            ifne 1
         8: .line 326
            return
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            2    7     1  node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;

  void afterRead(mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>);
    descriptor: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         0: .line 334
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferIndex:()I
            istore 2 /* bufferIndex */
        start local 2 // int bufferIndex
         1: .line 335
            aload 0 /* this */
            iload 2 /* bufferIndex */
            aload 1 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.recordRead:(ILmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)J
            lstore 3 /* writeCount */
        start local 3 // long writeCount
         2: .line 336
            aload 0 /* this */
            iload 2 /* bufferIndex */
            lload 3 /* writeCount */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainOnReadIfNeeded:(IJ)V
         3: .line 337
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.notifyListener:()V
         4: .line 338
            return
        end local 3 // long writeCount
        end local 2 // int bufferIndex
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    5     1         node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            1    5     2  bufferIndex  I
            2    5     3   writeCount  J
    Signature: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;)V
    MethodParameters:
      Name  Flags
      node  

  static int readBufferIndex();
    descriptor: ()I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 345
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getId:()J
            l2i
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.READ_BUFFERS_MASK:I
            iand
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  long recordRead(int, mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>);
    descriptor: (ILmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)J
    flags: (0x0000) 
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // int bufferIndex
        start local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         0: .line 359
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferWriteCount:[Ljava/util/concurrent/atomic/AtomicLong;
            iload 1 /* bufferIndex */
            aaload
            astore 3 /* counter */
        start local 3 // java.util.concurrent.atomic.AtomicLong counter
         1: .line 360
            aload 3 /* counter */
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            lstore 4 /* writeCount */
        start local 4 // long writeCount
         2: .line 361
            aload 3 /* counter */
            lload 4 /* writeCount */
            lconst_1
            ladd
            invokevirtual java.util.concurrent.atomic.AtomicLong.lazySet:(J)V
         3: .line 363
            lload 4 /* writeCount */
            ldc 127
            land
            l2i
            istore 6 /* index */
        start local 6 // int index
         4: .line 364
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBuffers:[[Ljava/util/concurrent/atomic/AtomicReference;
            iload 1 /* bufferIndex */
            aaload
            iload 6 /* index */
            aaload
            aload 2 /* node */
            invokevirtual java.util.concurrent.atomic.AtomicReference.lazySet:(Ljava/lang/Object;)V
         5: .line 366
            lload 4 /* writeCount */
            lreturn
        end local 6 // int index
        end local 4 // long writeCount
        end local 3 // java.util.concurrent.atomic.AtomicLong counter
        end local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 1 // int bufferIndex
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    6     1  bufferIndex  I
            0    6     2         node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            1    6     3      counter  Ljava/util/concurrent/atomic/AtomicLong;
            2    6     4   writeCount  J
            4    6     6        index  I
    Signature: (ILmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;)J
    MethodParameters:
             Name  Flags
      bufferIndex  
      node         

  void drainOnReadIfNeeded(int, long);
    descriptor: (IJ)V
    flags: (0x0000) 
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // int bufferIndex
        start local 2 // long writeCount
         0: .line 377
            lload 2 /* writeCount */
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferDrainAtWriteCount:[Ljava/util/concurrent/atomic/AtomicLong;
            iload 1 /* bufferIndex */
            aaload
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            lsub
            lstore 4 /* pending */
        start local 4 // long pending
         1: .line 378
            lload 4 /* pending */
            ldc 32
            lcmp
            ifge 2
            iconst_1
            goto 3
      StackMap locals: long
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 6 /* delayable */
        start local 6 // boolean delayable
         4: .line 379
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainStatus:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus
            astore 7 /* status */
        start local 7 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus status
         5: .line 380
            aload 7 /* status */
            iload 6 /* delayable */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus.shouldDrainBuffers:(Z)Z
            ifeq 7
         6: .line 381
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.tryToDrainBuffers:()V
         7: .line 383
      StackMap locals: int mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus
      StackMap stack:
            return
        end local 7 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus status
        end local 6 // boolean delayable
        end local 4 // long pending
        end local 2 // long writeCount
        end local 1 // int bufferIndex
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    8     1  bufferIndex  I
            0    8     2   writeCount  J
            1    8     4      pending  J
            4    8     6    delayable  Z
            5    8     7       status  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DrainStatus;
    MethodParameters:
             Name  Flags
      bufferIndex  
      writeCount   

  void afterWrite(java.lang.Runnable);
    descriptor: (Ljava/lang/Runnable;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Runnable task
         0: .line 391
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.writeBuffer:Ljava/util/Queue;
            aload 1 /* task */
            invokeinterface java.util.Queue.add:(Ljava/lang/Object;)Z
            pop
         1: .line 392
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainStatus:Ljava/util/concurrent/atomic/AtomicReference;
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus.REQUIRED:Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DrainStatus;
            invokevirtual java.util.concurrent.atomic.AtomicReference.lazySet:(Ljava/lang/Object;)V
         2: .line 393
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.tryToDrainBuffers:()V
         3: .line 394
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.notifyListener:()V
         4: .line 395
            return
        end local 1 // java.lang.Runnable task
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    5     1  task  Ljava/lang/Runnable;
    MethodParameters:
      Name  Flags
      task  

  void tryToDrainBuffers();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 402
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.tryLock:()Z
            ifeq 10
         1: .line 404
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainStatus:Ljava/util/concurrent/atomic/AtomicReference;
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus.PROCESSING:Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DrainStatus;
            invokevirtual java.util.concurrent.atomic.AtomicReference.lazySet:(Ljava/lang/Object;)V
         2: .line 405
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainBuffers:()V
         3: .line 406
            goto 8
      StackMap locals:
      StackMap stack: java.lang.Throwable
         4: astore 1
         5: .line 407
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainStatus:Ljava/util/concurrent/atomic/AtomicReference;
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus.PROCESSING:Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DrainStatus;
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus.IDLE:Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DrainStatus;
            invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
         6: .line 408
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
         7: .line 409
            aload 1
            athrow
         8: .line 407
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainStatus:Ljava/util/concurrent/atomic/AtomicReference;
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus.PROCESSING:Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DrainStatus;
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus.IDLE:Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$DrainStatus;
            invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
         9: .line 408
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        10: .line 411
      StackMap locals:
      StackMap stack:
            return
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
      Exception table:
        from    to  target  type
           1     4       4  any

  void drainBuffers();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 415
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainReadBuffers:()V
         1: .line 416
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainWriteBuffer:()V
         2: .line 417
            return
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;

  void drainReadBuffers();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 421
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getId:()J
            l2i
            istore 1 /* start */
        start local 1 // int start
         1: .line 422
            iload 1 /* start */
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.NUMBER_OF_READ_BUFFERS:I
            iadd
            istore 2 /* end */
        start local 2 // int end
         2: .line 423
            iload 1 /* start */
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 424
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* i */
            getstatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.READ_BUFFERS_MASK:I
            iand
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainReadBuffer:(I)V
         5: .line 423
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            iload 2 /* end */
            if_icmplt 4
        end local 3 // int i
         7: .line 426
            return
        end local 2 // int end
        end local 1 // int start
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            1    8     1  start  I
            2    8     2    end  I
            3    7     3      i  I

  void drainReadBuffer(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=6, locals=8, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // int bufferIndex
         0: .line 430
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferWriteCount:[Ljava/util/concurrent/atomic/AtomicLong;
            iload 1 /* bufferIndex */
            aaload
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            lstore 2 /* writeCount */
        start local 2 // long writeCount
         1: .line 431
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 12
         3: .line 432
      StackMap locals: long int
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferReadCount:[J
            iload 1 /* bufferIndex */
            laload
            ldc 127
            land
            l2i
            istore 5 /* index */
        start local 5 // int index
         4: .line 433
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBuffers:[[Ljava/util/concurrent/atomic/AtomicReference;
            iload 1 /* bufferIndex */
            aaload
            iload 5 /* index */
            aaload
            astore 6 /* slot */
        start local 6 // java.util.concurrent.atomic.AtomicReference slot
         5: .line 434
            aload 6 /* slot */
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 7 /* node */
        start local 7 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         6: .line 435
            aload 7 /* node */
            ifnonnull 8
         7: .line 436
            goto 13
         8: .line 439
      StackMap locals: int java.util.concurrent.atomic.AtomicReference mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            aload 6 /* slot */
            aconst_null
            invokevirtual java.util.concurrent.atomic.AtomicReference.lazySet:(Ljava/lang/Object;)V
         9: .line 440
            aload 0 /* this */
            aload 7 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.applyRead:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
        10: .line 441
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferReadCount:[J
            iload 1 /* bufferIndex */
            dup2
            laload
            lconst_1
            ladd
            lastore
        end local 7 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 6 // java.util.concurrent.atomic.AtomicReference slot
        end local 5 // int index
        11: .line 431
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 4 /* i */
            bipush 64
            if_icmplt 3
        end local 4 // int i
        13: .line 443
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBufferDrainAtWriteCount:[Ljava/util/concurrent/atomic/AtomicLong;
            iload 1 /* bufferIndex */
            aaload
            lload 2 /* writeCount */
            invokevirtual java.util.concurrent.atomic.AtomicLong.lazySet:(J)V
        14: .line 444
            return
        end local 2 // long writeCount
        end local 1 // int bufferIndex
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   15     0         this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0   15     1  bufferIndex  I
            1   15     2   writeCount  J
            2   13     4            i  I
            4   11     5        index  I
            5   11     6         slot  Ljava/util/concurrent/atomic/AtomicReference<Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;>;
            6   11     7         node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
    MethodParameters:
             Name  Flags
      bufferIndex  

  void applyRead(mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>);
    descriptor: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         0: .line 452
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionDeque:Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
            aload 1 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.LinkedDeque.contains:(Lmssql/googlecode/concurrentlinkedhashmap/Linked;)Z
            ifeq 2
         1: .line 453
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionDeque:Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
            aload 1 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.LinkedDeque.moveToBack:(Lmssql/googlecode/concurrentlinkedhashmap/Linked;)V
         2: .line 455
      StackMap locals:
      StackMap stack:
            return
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    3     1  node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
    Signature: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;)V
    MethodParameters:
      Name  Flags
      node  

  void drainWriteBuffer();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 459
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 7
         2: .line 460
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.writeBuffer:Ljava/util/Queue;
            invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
            checkcast java.lang.Runnable
            astore 2 /* task */
        start local 2 // java.lang.Runnable task
         3: .line 461
            aload 2 /* task */
            ifnonnull 5
         4: .line 462
            goto 8
         5: .line 464
      StackMap locals: java.lang.Runnable
      StackMap stack:
            aload 2 /* task */
            invokeinterface java.lang.Runnable.run:()V
        end local 2 // java.lang.Runnable task
         6: .line 459
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            bipush 16
            if_icmplt 2
        end local 1 // int i
         8: .line 466
      StackMap locals:
      StackMap stack:
            return
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            1    8     1     i  I
            3    6     2  task  Ljava/lang/Runnable;

  boolean tryToRetire(mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>, mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue<V>);
    descriptor: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue;)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        start local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue expect
         0: .line 477
            aload 2 /* expect */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.isAlive:()Z
            ifeq 3
         1: .line 478
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            dup
            aload 2 /* expect */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.value:Ljava/lang/Object;
            aload 2 /* expect */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.weight:I
            ineg
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.<init>:(Ljava/lang/Object;I)V
            astore 3 /* retired */
        start local 3 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue retired
         2: .line 479
            aload 1 /* node */
            aload 2 /* expect */
            aload 3 /* retired */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ireturn
        end local 3 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue retired
         3: .line 481
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue expect
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    4     1     node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            0    4     2   expect  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
            2    3     3  retired  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
    Signature: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;)Z
    MethodParameters:
        Name  Flags
      node    
      expect  

  void makeRetired(mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>);
    descriptor: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         0: .line 492
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.get:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            astore 2 /* current */
        start local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue current
         1: .line 493
            aload 2 /* current */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.isAlive:()Z
            ifne 3
         2: .line 494
            return
         3: .line 496
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
      StackMap stack:
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            dup
            aload 2 /* current */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.value:Ljava/lang/Object;
            aload 2 /* current */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.weight:I
            ineg
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.<init>:(Ljava/lang/Object;I)V
            astore 3 /* retired */
        start local 3 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue retired
         4: .line 497
            aload 1 /* node */
            aload 2 /* current */
            aload 3 /* retired */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 0
         5: .line 498
            return
        end local 3 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue retired
        end local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue current
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    6     1     node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            1    6     2  current  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
            4    6     3  retired  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
    Signature: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;)V
    MethodParameters:
      Name  Flags
      node  

  void makeDead(mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node<K, V>);
    descriptor: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         0: .line 511
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.get:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            astore 2 /* current */
        start local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue current
         1: .line 512
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            dup
            aload 2 /* current */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.value:Ljava/lang/Object;
            iconst_0
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.<init>:(Ljava/lang/Object;I)V
            astore 3 /* dead */
        start local 3 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue dead
         2: .line 513
            aload 1 /* node */
            aload 2 /* current */
            aload 3 /* dead */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 0
         3: .line 514
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weightedSize:Ljava/util/concurrent/atomic/AtomicLong;
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weightedSize:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            aload 2 /* current */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.weight:I
            invokestatic java.lang.Math.abs:(I)I
            i2l
            lsub
            invokevirtual java.util.concurrent.atomic.AtomicLong.lazySet:(J)V
         4: .line 515
            return
        end local 3 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue dead
        end local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue current
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    5     1     node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            1    5     2  current  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
            2    5     3     dead  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
    Signature: (Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;)V
    MethodParameters:
      Name  Flags
      node  

  void notifyListener();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 523
            goto 2
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         1: .line 524
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.listener:Lmssql/googlecode/concurrentlinkedhashmap/EvictionListener;
            aload 1 /* node */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.key:Ljava/lang/Object;
            aload 1 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.getValue:()Ljava/lang/Object;
            invokeinterface mssql.googlecode.concurrentlinkedhashmap.EvictionListener.onEviction:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         2: .line 523
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.pendingNotifications:Ljava/util/Queue;
            invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            dup
            astore 1 /* node */
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         3: ifnonnull 1
         4: .line 526
            return
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            1    2     1  node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            3    5     1  node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 588
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.isEmpty:()Z
            ireturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 593
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.size:()I
            ireturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;

  public long weightedSize();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 602
            lconst_0
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weightedSize:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.get:()J
            invokestatic java.lang.Math.max:(JJ)J
            lreturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=11, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 607
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         1: .line 611
            goto 4
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         2: .line 612
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* node */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.key:Ljava/lang/Object;
            aload 1 /* node */
            invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
         3: .line 613
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.makeDead:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         4: .line 611
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionDeque:Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.LinkedDeque.poll:()Lmssql/googlecode/concurrentlinkedhashmap/Linked;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            dup
            astore 1 /* node */
        start local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         5: ifnonnull 2
         6: .line 617
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.readBuffers:[[Ljava/util/concurrent/atomic/AtomicReference;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 14
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node top int int java.util.concurrent.atomic.AtomicReference[][]
      StackMap stack:
         7: aload 5
            iload 3
            aaload
            astore 2 /* buffer */
        start local 2 // java.util.concurrent.atomic.AtomicReference[] buffer
         8: .line 618
            aload 2 /* buffer */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 12
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node java.util.concurrent.atomic.AtomicReference[] int int java.util.concurrent.atomic.AtomicReference[][] top int int java.util.concurrent.atomic.AtomicReference[]
      StackMap stack:
         9: aload 9
            iload 7
            aaload
            astore 6 /* slot */
        start local 6 // java.util.concurrent.atomic.AtomicReference slot
        10: .line 619
            aload 6 /* slot */
            aconst_null
            invokevirtual java.util.concurrent.atomic.AtomicReference.lazySet:(Ljava/lang/Object;)V
        end local 6 // java.util.concurrent.atomic.AtomicReference slot
        11: .line 618
            iinc 7 1
      StackMap locals:
      StackMap stack:
        12: iload 7
            iload 8
            if_icmplt 9
        end local 2 // java.util.concurrent.atomic.AtomicReference[] buffer
        13: .line 617
            iinc 3 1
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node top int int java.util.concurrent.atomic.AtomicReference[][]
      StackMap stack:
        14: iload 3
            iload 4
            if_icmplt 7
        15: .line 625
            goto 17
        start local 2 // java.lang.Runnable task
        16: .line 626
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node java.lang.Runnable
      StackMap stack:
            aload 2 /* task */
            invokeinterface java.lang.Runnable.run:()V
        end local 2 // java.lang.Runnable task
        17: .line 625
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.writeBuffer:Ljava/util/Queue;
            invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
            checkcast java.lang.Runnable
            dup
            astore 2 /* task */
        start local 2 // java.lang.Runnable task
        18: ifnonnull 16
        end local 2 // java.lang.Runnable task
        end local 1 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        19: .line 628
            goto 23
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
      StackMap stack: java.lang.Throwable
        20: astore 10
        21: .line 629
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        22: .line 630
            aload 10
            athrow
        23: .line 629
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        24: .line 631
            return
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   25     0    this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            2    4     1    node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            5   19     1    node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            8   13     2  buffer  [Ljava/util/concurrent/atomic/AtomicReference;
           10   11     6    slot  Ljava/util/concurrent/atomic/AtomicReference<Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;>;
           16   17     2    task  Ljava/lang/Runnable;
           18   19     2    task  Ljava/lang/Runnable;
      Exception table:
        from    to  target  type
           1    20      20  any

  public boolean containsKey(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
         0: .line 635
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* key */
            invokeinterface java.util.concurrent.ConcurrentMap.containsKey:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    1     1   key  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   

  public boolean containsValue(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object value
         0: .line 640
            aload 1 /* value */
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkNotNull:(Ljava/lang/Object;)V
         1: .line 642
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap java.lang.Object top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 2 /* node */
        start local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         3: .line 643
            aload 2 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.getValue:()Ljava/lang/Object;
            aload 1 /* value */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 644
            iconst_1
            ireturn
        end local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         5: .line 642
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 647
            iconst_0
            ireturn
        end local 1 // java.lang.Object value
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    7     1  value  Ljava/lang/Object;
            3    5     2   node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
    MethodParameters:
       Name  Flags
      value  

  public V get();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
         0: .line 652
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* key */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 2 /* node */
        start local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         1: .line 653
            aload 2 /* node */
            ifnonnull 3
         2: .line 654
            aconst_null
            areturn
         3: .line 656
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterRead:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
         4: .line 657
            aload 2 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.getValue:()Ljava/lang/Object;
            areturn
        end local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    5     1   key  Ljava/lang/Object;
            1    5     2  node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
    Signature: (Ljava/lang/Object;)TV;
    MethodParameters:
      Name  Flags
      key   

  public V getQuietly();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
         0: .line 672
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* key */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 2 /* node */
        start local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         1: .line 673
            aload 2 /* node */
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
         2: aload 2 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.getValue:()Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         3: areturn
        end local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    4     1   key  Ljava/lang/Object;
            1    4     2  node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
    Signature: (Ljava/lang/Object;)TV;
    MethodParameters:
      Name  Flags
      key   

  public V put(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 678
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            iconst_0
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    1     1    key  TK;
            0    1     2  value  TV;
    Signature: (TK;TV;)TV;
    MethodParameters:
       Name  Flags
      key    
      value  

  public V putIfAbsent(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 683
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            iconst_1
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    1     1    key  TK;
            0    1     2  value  TV;
    Signature: (TK;TV;)TV;
    MethodParameters:
       Name  Flags
      key    
      value  

  V put(K, V, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
        start local 3 // boolean onlyIfAbsent
         0: .line 697
            aload 1 /* key */
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkNotNull:(Ljava/lang/Object;)V
         1: .line 698
            aload 2 /* value */
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkNotNull:(Ljava/lang/Object;)V
         2: .line 700
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weigher:Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
            aload 1 /* key */
            aload 2 /* value */
            invokeinterface mssql.googlecode.concurrentlinkedhashmap.EntryWeigher.weightOf:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 4 /* weight */
        start local 4 // int weight
         3: .line 701
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            dup
            aload 2 /* value */
            iload 4 /* weight */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.<init>:(Ljava/lang/Object;I)V
            astore 5 /* weightedValue */
        start local 5 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue weightedValue
         4: .line 702
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            dup
            aload 1 /* key */
            aload 5 /* weightedValue */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.<init>:(Ljava/lang/Object;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue;)V
            astore 6 /* node */
        start local 6 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         5: .line 705
      StackMap locals: int mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 6 /* node */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.key:Ljava/lang/Object;
            aload 6 /* node */
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 7 /* prior */
        start local 7 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node prior
         6: .line 706
            aload 7 /* prior */
            ifnonnull 9
         7: .line 707
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$AddTask
            dup
            aload 0 /* this */
            aload 6 /* node */
            iload 4 /* weight */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$AddTask.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;I)V
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterWrite:(Ljava/lang/Runnable;)V
         8: .line 708
            aconst_null
            areturn
         9: .line 709
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            iload 3 /* onlyIfAbsent */
            ifeq 12
        10: .line 710
            aload 0 /* this */
            aload 7 /* prior */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterRead:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
        11: .line 711
            aload 7 /* prior */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.getValue:()Ljava/lang/Object;
            areturn
        12: .line 714
      StackMap locals:
      StackMap stack:
            aload 7 /* prior */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.get:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            astore 8 /* oldWeightedValue */
        start local 8 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue oldWeightedValue
        13: .line 715
            aload 8 /* oldWeightedValue */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.isAlive:()Z
            ifne 15
        14: .line 716
            goto 5
        15: .line 719
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
      StackMap stack:
            aload 7 /* prior */
            aload 8 /* oldWeightedValue */
            aload 5 /* weightedValue */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 12
        16: .line 720
            iload 4 /* weight */
            aload 8 /* oldWeightedValue */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.weight:I
            isub
            istore 9 /* weightedDifference */
        start local 9 // int weightedDifference
        17: .line 721
            iload 9 /* weightedDifference */
            ifne 20
        18: .line 722
            aload 0 /* this */
            aload 7 /* prior */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterRead:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
        19: .line 723
            goto 21
        20: .line 724
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$UpdateTask
            dup
            aload 0 /* this */
            aload 7 /* prior */
            iload 9 /* weightedDifference */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$UpdateTask.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;I)V
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterWrite:(Ljava/lang/Runnable;)V
        21: .line 726
      StackMap locals:
      StackMap stack:
            aload 8 /* oldWeightedValue */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.value:Ljava/lang/Object;
            areturn
        end local 9 // int weightedDifference
        end local 8 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue oldWeightedValue
        end local 7 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node prior
        end local 6 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 5 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue weightedValue
        end local 4 // int weight
        end local 3 // boolean onlyIfAbsent
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   22     0                this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0   22     1                 key  TK;
            0   22     2               value  TV;
            0   22     3        onlyIfAbsent  Z
            3   22     4              weight  I
            4   22     5       weightedValue  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
            5   22     6                node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            6   22     7               prior  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
           13   22     8    oldWeightedValue  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
           17   22     9  weightedDifference  I
    Signature: (TK;TV;Z)TV;
    MethodParameters:
              Name  Flags
      key           
      value         
      onlyIfAbsent  

  public V remove();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
         0: .line 734
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* key */
            invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 2 /* node */
        start local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         1: .line 735
            aload 2 /* node */
            ifnonnull 3
         2: .line 736
            aconst_null
            areturn
         3: .line 739
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            aload 0 /* this */
            aload 2 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.makeRetired:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
         4: .line 740
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$RemovalTask
            dup
            aload 0 /* this */
            aload 2 /* node */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$RemovalTask.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterWrite:(Ljava/lang/Runnable;)V
         5: .line 741
            aload 2 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.getValue:()Ljava/lang/Object;
            areturn
        end local 2 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    6     1   key  Ljava/lang/Object;
            1    6     2  node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
    Signature: (Ljava/lang/Object;)TV;
    MethodParameters:
      Name  Flags
      key   

  public boolean remove(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 746
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* key */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 3 /* node */
        start local 3 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         1: .line 747
            aload 3 /* node */
            ifnull 2
            aload 2 /* value */
            ifnonnull 3
         2: .line 748
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            iconst_0
            ireturn
         3: .line 751
      StackMap locals:
      StackMap stack:
            aload 3 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.get:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            astore 4 /* weightedValue */
        start local 4 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue weightedValue
         4: .line 753
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
      StackMap stack:
            aload 4 /* weightedValue */
            aload 2 /* value */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.contains:(Ljava/lang/Object;)Z
            ifeq 12
         5: .line 754
            aload 0 /* this */
            aload 3 /* node */
            aload 4 /* weightedValue */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.tryToRetire:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue;)Z
            ifeq 9
         6: .line 755
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* key */
            aload 3 /* node */
            invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 12
         7: .line 756
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$RemovalTask
            dup
            aload 0 /* this */
            aload 3 /* node */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$RemovalTask.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterWrite:(Ljava/lang/Runnable;)V
         8: .line 757
            iconst_1
            ireturn
         9: .line 760
      StackMap locals:
      StackMap stack:
            aload 3 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.get:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            astore 4 /* weightedValue */
        10: .line 761
            aload 4 /* weightedValue */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.isAlive:()Z
            ifeq 12
        11: .line 764
            goto 4
        12: .line 768
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue weightedValue
        end local 3 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0   13     1            key  Ljava/lang/Object;
            0   13     2          value  Ljava/lang/Object;
            1   13     3           node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            4   13     4  weightedValue  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
    MethodParameters:
       Name  Flags
      key    
      value  

  public V replace(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=3
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 774
            aload 1 /* key */
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkNotNull:(Ljava/lang/Object;)V
         1: .line 775
            aload 2 /* value */
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkNotNull:(Ljava/lang/Object;)V
         2: .line 777
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weigher:Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
            aload 1 /* key */
            aload 2 /* value */
            invokeinterface mssql.googlecode.concurrentlinkedhashmap.EntryWeigher.weightOf:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 3 /* weight */
        start local 3 // int weight
         3: .line 778
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            dup
            aload 2 /* value */
            iload 3 /* weight */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.<init>:(Ljava/lang/Object;I)V
            astore 4 /* weightedValue */
        start local 4 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue weightedValue
         4: .line 780
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* key */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 5 /* node */
        start local 5 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         5: .line 781
            aload 5 /* node */
            ifnonnull 7
         6: .line 782
            aconst_null
            areturn
         7: .line 785
      StackMap locals: int mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            aload 5 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.get:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            astore 6 /* oldWeightedValue */
        start local 6 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue oldWeightedValue
         8: .line 786
            aload 6 /* oldWeightedValue */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.isAlive:()Z
            ifne 10
         9: .line 787
            aconst_null
            areturn
        10: .line 789
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
      StackMap stack:
            aload 5 /* node */
            aload 6 /* oldWeightedValue */
            aload 4 /* weightedValue */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 7
        11: .line 790
            iload 3 /* weight */
            aload 6 /* oldWeightedValue */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.weight:I
            isub
            istore 7 /* weightedDifference */
        start local 7 // int weightedDifference
        12: .line 791
            iload 7 /* weightedDifference */
            ifne 15
        13: .line 792
            aload 0 /* this */
            aload 5 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterRead:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
        14: .line 793
            goto 16
        15: .line 794
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$UpdateTask
            dup
            aload 0 /* this */
            aload 5 /* node */
            iload 7 /* weightedDifference */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$UpdateTask.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;I)V
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterWrite:(Ljava/lang/Runnable;)V
        16: .line 796
      StackMap locals:
      StackMap stack:
            aload 6 /* oldWeightedValue */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.value:Ljava/lang/Object;
            areturn
        end local 7 // int weightedDifference
        end local 6 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue oldWeightedValue
        end local 5 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 4 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue weightedValue
        end local 3 // int weight
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   17     0                this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0   17     1                 key  TK;
            0   17     2               value  TV;
            3   17     3              weight  I
            4   17     4       weightedValue  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
            5   17     5                node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            8   17     6    oldWeightedValue  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
           12   17     7  weightedDifference  I
    Signature: (TK;TV;)TV;
    MethodParameters:
       Name  Flags
      key    
      value  

  public boolean replace(K, V, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=4
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object oldValue
        start local 3 // java.lang.Object newValue
         0: .line 803
            aload 1 /* key */
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkNotNull:(Ljava/lang/Object;)V
         1: .line 804
            aload 2 /* oldValue */
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkNotNull:(Ljava/lang/Object;)V
         2: .line 805
            aload 3 /* newValue */
            invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkNotNull:(Ljava/lang/Object;)V
         3: .line 807
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weigher:Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
            aload 1 /* key */
            aload 3 /* newValue */
            invokeinterface mssql.googlecode.concurrentlinkedhashmap.EntryWeigher.weightOf:(Ljava/lang/Object;Ljava/lang/Object;)I
            istore 4 /* weight */
        start local 4 // int weight
         4: .line 808
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            dup
            aload 3 /* newValue */
            iload 4 /* weight */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.<init>:(Ljava/lang/Object;I)V
            astore 5 /* newWeightedValue */
        start local 5 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue newWeightedValue
         5: .line 810
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.data:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* key */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 6 /* node */
        start local 6 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
         6: .line 811
            aload 6 /* node */
            ifnonnull 8
         7: .line 812
            iconst_0
            ireturn
         8: .line 815
      StackMap locals: int mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
      StackMap stack:
            aload 6 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.get:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
            astore 7 /* weightedValue */
        start local 7 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue weightedValue
         9: .line 816
            aload 7 /* weightedValue */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.isAlive:()Z
            ifeq 10
            aload 7 /* weightedValue */
            aload 2 /* oldValue */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.contains:(Ljava/lang/Object;)Z
            ifne 11
        10: .line 817
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue
      StackMap stack:
            iconst_0
            ireturn
        11: .line 819
      StackMap locals:
      StackMap stack:
            aload 6 /* node */
            aload 7 /* weightedValue */
            aload 5 /* newWeightedValue */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 8
        12: .line 820
            iload 4 /* weight */
            aload 7 /* weightedValue */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue.weight:I
            isub
            istore 8 /* weightedDifference */
        start local 8 // int weightedDifference
        13: .line 821
            iload 8 /* weightedDifference */
            ifne 16
        14: .line 822
            aload 0 /* this */
            aload 6 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterRead:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;)V
        15: .line 823
            goto 17
        16: .line 824
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$UpdateTask
            dup
            aload 0 /* this */
            aload 6 /* node */
            iload 8 /* weightedDifference */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$UpdateTask.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node;I)V
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.afterWrite:(Ljava/lang/Runnable;)V
        17: .line 826
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 8 // int weightedDifference
        end local 7 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue weightedValue
        end local 6 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        end local 5 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue newWeightedValue
        end local 4 // int weight
        end local 3 // java.lang.Object newValue
        end local 2 // java.lang.Object oldValue
        end local 1 // java.lang.Object key
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   18     0                this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0   18     1                 key  TK;
            0   18     2            oldValue  TV;
            0   18     3            newValue  TV;
            4   18     4              weight  I
            5   18     5    newWeightedValue  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
            6   18     6                node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
            9   18     7       weightedValue  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$WeightedValue<TV;>;
           13   18     8  weightedDifference  I
    Signature: (TK;TV;TV;)Z
    MethodParameters:
          Name  Flags
      key       
      oldValue  
      newValue  

  public java.util.Set<K> keySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 833
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.keySet:Ljava/util/Set;
            astore 1 /* ks */
        start local 1 // java.util.Set ks
         1: .line 834
            aload 1 /* ks */
            ifnonnull 2
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$KeySet
            dup
            aload 0 /* this */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$KeySet.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;)V
            dup_x1
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.keySet:Ljava/util/Set;
            goto 3
      StackMap locals: java.util.Set
      StackMap stack:
         2: aload 1 /* ks */
      StackMap locals:
      StackMap stack: java.util.Set
         3: areturn
        end local 1 // java.util.Set ks
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            1    4     1    ks  Ljava/util/Set<TK;>;
    Signature: ()Ljava/util/Set<TK;>;

  public java.util.Set<K> ascendingKeySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 851
            aload 0 /* this */
            ldc 2147483647
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.ascendingKeySetWithLimit:(I)Ljava/util/Set;
            areturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
    Signature: ()Ljava/util/Set<TK;>;

  public java.util.Set<K> ascendingKeySetWithLimit(int);
    descriptor: (I)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // int limit
         0: .line 870
            aload 0 /* this */
            iconst_1
            iload 1 /* limit */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.orderedKeySet:(ZI)Ljava/util/Set;
            areturn
        end local 1 // int limit
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    1     1  limit  I
    Signature: (I)Ljava/util/Set<TK;>;
    MethodParameters:
       Name  Flags
      limit  

  public java.util.Set<K> descendingKeySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 887
            aload 0 /* this */
            ldc 2147483647
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.descendingKeySetWithLimit:(I)Ljava/util/Set;
            areturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
    Signature: ()Ljava/util/Set<TK;>;

  public java.util.Set<K> descendingKeySetWithLimit(int);
    descriptor: (I)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // int limit
         0: .line 906
            aload 0 /* this */
            iconst_0
            iload 1 /* limit */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.orderedKeySet:(ZI)Ljava/util/Set;
            areturn
        end local 1 // int limit
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    1     1  limit  I
    Signature: (I)Ljava/util/Set<TK;>;
    MethodParameters:
       Name  Flags
      limit  

  java.util.Set<K> orderedKeySet(boolean, int);
    descriptor: (ZI)Ljava/util/Set;
    flags: (0x0000) 
    Code:
      stack=3, locals=8, args_size=3
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // boolean ascending
        start local 2 // int limit
         0: .line 910
            iload 2 /* limit */
            iflt 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkArgument:(Z)V
         3: .line 911
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         4: .line 913
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainBuffers:()V
         5: .line 915
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weigher:Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
            invokestatic mssql.googlecode.concurrentlinkedhashmap.Weighers.entrySingleton:()Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
            if_acmpne 7
         6: .line 916
            iload 2 /* limit */
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weightedSize:()J
            l2i
            invokestatic java.lang.Math.min:(II)I
            goto 8
         7: .line 917
      StackMap locals:
      StackMap stack:
            bipush 16
         8: .line 915
      StackMap locals:
      StackMap stack: int
            istore 3 /* initialCapacity */
        start local 3 // int initialCapacity
         9: .line 918
            new java.util.LinkedHashSet
            dup
            iload 3 /* initialCapacity */
            invokespecial java.util.LinkedHashSet.<init>:(I)V
            astore 4 /* keys */
        start local 4 // java.util.Set keys
        10: .line 919
            iload 1 /* ascending */
            ifeq 12
        11: .line 920
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionDeque:Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.LinkedDeque.iterator:()Ljava/util/Iterator;
            goto 13
        12: .line 921
      StackMap locals: int java.util.Set
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionDeque:Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.LinkedDeque.descendingIterator:()Ljava/util/Iterator;
        13: .line 919
      StackMap locals:
      StackMap stack: java.util.Iterator
            astore 5 /* iterator */
        start local 5 // java.util.Iterator iterator
        14: .line 922
            goto 16
        15: .line 923
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 4 /* keys */
            aload 5 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.key:Ljava/lang/Object;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        16: .line 922
      StackMap locals:
      StackMap stack:
            aload 5 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 17
            iload 2 /* limit */
            aload 4 /* keys */
            invokeinterface java.util.Set.size:()I
            if_icmpgt 15
        17: .line 925
      StackMap locals:
      StackMap stack:
            aload 4 /* keys */
            invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
            astore 7
        18: .line 927
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        19: .line 925
            aload 7
            areturn
        end local 5 // java.util.Iterator iterator
        end local 4 // java.util.Set keys
        end local 3 // int initialCapacity
        20: .line 926
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap int int
      StackMap stack: java.lang.Throwable
            astore 6
        21: .line 927
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        22: .line 928
            aload 6
            athrow
        end local 2 // int limit
        end local 1 // boolean ascending
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   23     0             this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0   23     1        ascending  Z
            0   23     2            limit  I
            9   20     3  initialCapacity  I
           10   20     4             keys  Ljava/util/Set<TK;>;
           14   20     5         iterator  Ljava/util/Iterator<Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;>;
      Exception table:
        from    to  target  type
           4    18      20  any
    Signature: (ZI)Ljava/util/Set<TK;>;
    MethodParameters:
           Name  Flags
      ascending  
      limit      

  public java.util.Collection<V> values();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 933
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.values:Ljava/util/Collection;
            astore 1 /* vs */
        start local 1 // java.util.Collection vs
         1: .line 934
            aload 1 /* vs */
            ifnonnull 2
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Values
            dup
            aload 0 /* this */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Values.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;)V
            dup_x1
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.values:Ljava/util/Collection;
            goto 3
      StackMap locals: java.util.Collection
      StackMap stack:
         2: aload 1 /* vs */
      StackMap locals:
      StackMap stack: java.util.Collection
         3: areturn
        end local 1 // java.util.Collection vs
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            1    4     1    vs  Ljava/util/Collection<TV;>;
    Signature: ()Ljava/util/Collection<TV;>;

  public java.util.Set<java.util.Map$Entry<K, V>> entrySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 939
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.entrySet:Ljava/util/Set;
            astore 1 /* es */
        start local 1 // java.util.Set es
         1: .line 940
            aload 1 /* es */
            ifnonnull 2
            aload 0 /* this */
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$EntrySet
            dup
            aload 0 /* this */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$EntrySet.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;)V
            dup_x1
            putfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.entrySet:Ljava/util/Set;
            goto 3
      StackMap locals: java.util.Set
      StackMap stack:
         2: aload 1 /* es */
      StackMap locals:
      StackMap stack: java.util.Set
         3: areturn
        end local 1 // java.util.Set es
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            1    4     1    es  Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;
    Signature: ()Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;

  public java.util.Map<K, V> ascendingMap();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 958
            aload 0 /* this */
            ldc 2147483647
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.ascendingMapWithLimit:(I)Ljava/util/Map;
            areturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
    Signature: ()Ljava/util/Map<TK;TV;>;

  public java.util.Map<K, V> ascendingMapWithLimit(int);
    descriptor: (I)Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // int limit
         0: .line 978
            aload 0 /* this */
            iconst_1
            iload 1 /* limit */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.orderedMap:(ZI)Ljava/util/Map;
            areturn
        end local 1 // int limit
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    1     1  limit  I
    Signature: (I)Ljava/util/Map<TK;TV;>;
    MethodParameters:
       Name  Flags
      limit  

  public java.util.Map<K, V> descendingMap();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 996
            aload 0 /* this */
            ldc 2147483647
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.descendingMapWithLimit:(I)Ljava/util/Map;
            areturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
    Signature: ()Ljava/util/Map<TK;TV;>;

  public java.util.Map<K, V> descendingMapWithLimit(int);
    descriptor: (I)Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // int limit
         0: .line 1016
            aload 0 /* this */
            iconst_0
            iload 1 /* limit */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.orderedMap:(ZI)Ljava/util/Map;
            areturn
        end local 1 // int limit
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    1     1  limit  I
    Signature: (I)Ljava/util/Map<TK;TV;>;
    MethodParameters:
       Name  Flags
      limit  

  java.util.Map<K, V> orderedMap(boolean, int);
    descriptor: (ZI)Ljava/util/Map;
    flags: (0x0000) 
    Code:
      stack=3, locals=9, args_size=3
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // boolean ascending
        start local 2 // int limit
         0: .line 1020
            iload 2 /* limit */
            iflt 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: invokestatic mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.checkArgument:(Z)V
         3: .line 1021
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         4: .line 1023
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.drainBuffers:()V
         5: .line 1025
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weigher:Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
            invokestatic mssql.googlecode.concurrentlinkedhashmap.Weighers.entrySingleton:()Lmssql/googlecode/concurrentlinkedhashmap/EntryWeigher;
            if_acmpne 7
         6: .line 1026
            iload 2 /* limit */
            aload 0 /* this */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.weightedSize:()J
            l2i
            invokestatic java.lang.Math.min:(II)I
            goto 8
         7: .line 1027
      StackMap locals:
      StackMap stack:
            bipush 16
         8: .line 1025
      StackMap locals:
      StackMap stack: int
            istore 3 /* initialCapacity */
        start local 3 // int initialCapacity
         9: .line 1028
            new java.util.LinkedHashMap
            dup
            iload 3 /* initialCapacity */
            invokespecial java.util.LinkedHashMap.<init>:(I)V
            astore 4 /* map */
        start local 4 // java.util.Map map
        10: .line 1029
            iload 1 /* ascending */
            ifeq 12
        11: .line 1030
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionDeque:Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.LinkedDeque.iterator:()Ljava/util/Iterator;
            goto 13
        12: .line 1031
      StackMap locals: int java.util.Map
      StackMap stack:
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionDeque:Lmssql/googlecode/concurrentlinkedhashmap/LinkedDeque;
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.LinkedDeque.descendingIterator:()Ljava/util/Iterator;
        13: .line 1029
      StackMap locals:
      StackMap stack: java.util.Iterator
            astore 5 /* iterator */
        start local 5 // java.util.Iterator iterator
        14: .line 1032
            goto 17
        15: .line 1033
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 5 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node
            astore 6 /* node */
        start local 6 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        16: .line 1034
            aload 4 /* map */
            aload 6 /* node */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.key:Ljava/lang/Object;
            aload 6 /* node */
            invokevirtual mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node.getValue:()Ljava/lang/Object;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node node
        17: .line 1032
      StackMap locals:
      StackMap stack:
            aload 5 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 18
            iload 2 /* limit */
            aload 4 /* map */
            invokeinterface java.util.Map.size:()I
            if_icmpgt 15
        18: .line 1036
      StackMap locals:
      StackMap stack:
            aload 4 /* map */
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            astore 8
        19: .line 1038
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        20: .line 1036
            aload 8
            areturn
        end local 5 // java.util.Iterator iterator
        end local 4 // java.util.Map map
        end local 3 // int initialCapacity
        21: .line 1037
      StackMap locals: mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap int int
      StackMap stack: java.lang.Throwable
            astore 7
        22: .line 1038
            aload 0 /* this */
            getfield mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap.evictionLock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        23: .line 1039
            aload 7
            athrow
        end local 2 // int limit
        end local 1 // boolean ascending
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   24     0             this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0   24     1        ascending  Z
            0   24     2            limit  I
            9   21     3  initialCapacity  I
           10   21     4              map  Ljava/util/Map<TK;TV;>;
           14   21     5         iterator  Ljava/util/Iterator<Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;>;
           16   17     6             node  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap$Node<TK;TV;>;
      Exception table:
        from    to  target  type
           4    19      21  any
    Signature: (ZI)Ljava/util/Map<TK;TV;>;
    MethodParameters:
           Name  Flags
      ascending  
      limit      

  java.lang.Object writeReplace();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
         0: .line 1399
            new mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$SerializationProxy
            dup
            aload 0 /* this */
            invokespecial mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$SerializationProxy.<init>:(Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap;)V
            areturn
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
        start local 1 // java.io.ObjectInputStream stream
         0: .line 1403
            new java.io.InvalidObjectException
            dup
            ldc "Proxy required"
            invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.io.ObjectInputStream stream
        end local 0 // mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lmssql/googlecode/concurrentlinkedhashmap/ConcurrentLinkedHashMap<TK;TV;>;
            0    1     1  stream  Ljava/io/ObjectInputStream;
    Exceptions:
      throws java.io.InvalidObjectException
    MethodParameters:
        Name  Flags
      stream  
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/util/AbstractMap<TK;TV;>;Ljava/util/concurrent/ConcurrentMap<TK;TV;>;Ljava/io/Serializable;
SourceFile: "ConcurrentLinkedHashMap.java"
NestMembers:
  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$AddTask  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$BoundedEntryWeigher  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DiscardingListener  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DiscardingQueue  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus$1  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus$2  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus$3  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$EntryIterator  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$EntrySet  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$KeyIterator  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$KeySet  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$RemovalTask  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$SerializationProxy  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$UpdateTask  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$ValueIterator  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Values  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue  mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WriteThroughEntry
InnerClasses:
  public abstract Entry = java.util.Map$Entry of java.util.Map
  final AddTask = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$AddTask of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final BoundedEntryWeigher = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$BoundedEntryWeigher of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  public final Builder = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Builder of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final DiscardingListener = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DiscardingListener of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final DiscardingQueue = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DiscardingQueue of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  abstract DrainStatus = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$DrainStatus of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final EntryIterator = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$EntryIterator of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final EntrySet = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$EntrySet of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final KeyIterator = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$KeyIterator of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final KeySet = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$KeySet of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final Node = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Node of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final RemovalTask = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$RemovalTask of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final SerializationProxy = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$SerializationProxy of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final UpdateTask = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$UpdateTask of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final ValueIterator = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$ValueIterator of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final Values = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$Values of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final WeightedValue = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WeightedValue of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap
  final WriteThroughEntry = mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap$WriteThroughEntry of mssql.googlecode.concurrentlinkedhashmap.ConcurrentLinkedHashMap