public class org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache<K, V> extends org.terracotta.offheapstore.disk.persistent.AbstractPersistentConcurrentOffHeapCache<K, V> implements org.ehcache.impl.internal.store.offheap.EhcacheOffHeapBackingMap<K, V>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache
  super_class: org.terracotta.offheapstore.disk.persistent.AbstractPersistentConcurrentOffHeapCache
{
  private final org.ehcache.config.EvictionAdvisor<? super K, ? super V> evictionAdvisor;
    descriptor: Lorg/ehcache/config/EvictionAdvisor;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/ehcache/config/EvictionAdvisor<-TK;-TV;>;

  private final java.util.concurrent.atomic.AtomicLong[] counters;
    descriptor: [Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(java.io.ObjectInput, org.ehcache.config.EvictionAdvisor<? super K, ? super V>, org.ehcache.impl.internal.store.disk.factories.EhcachePersistentSegmentFactory<K, V>);
    descriptor: (Ljava/io/ObjectInput;Lorg/ehcache/config/EvictionAdvisor;Lorg/ehcache/impl/internal/store/disk/factories/EhcachePersistentSegmentFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 1 // java.io.ObjectInput input
        start local 2 // org.ehcache.config.EvictionAdvisor evictionAdvisor
        start local 3 // org.ehcache.impl.internal.store.disk.factories.EhcachePersistentSegmentFactory segmentFactory
         0: .line 48
            aload 0 /* this */
            aload 2 /* evictionAdvisor */
            aload 3 /* segmentFactory */
            aload 1 /* input */
            invokestatic org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.readSegmentCount:(Ljava/io/ObjectInput;)I
            invokespecial org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.<init>:(Lorg/ehcache/config/EvictionAdvisor;Lorg/ehcache/impl/internal/store/disk/factories/EhcachePersistentSegmentFactory;I)V
         1: .line 49
            return
        end local 3 // org.ehcache.impl.internal.store.disk.factories.EhcachePersistentSegmentFactory segmentFactory
        end local 2 // org.ehcache.config.EvictionAdvisor evictionAdvisor
        end local 1 // java.io.ObjectInput input
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0    2     1            input  Ljava/io/ObjectInput;
            0    2     2  evictionAdvisor  Lorg/ehcache/config/EvictionAdvisor<-TK;-TV;>;
            0    2     3   segmentFactory  Lorg/ehcache/impl/internal/store/disk/factories/EhcachePersistentSegmentFactory<TK;TV;>;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/io/ObjectInput;Lorg/ehcache/config/EvictionAdvisor<-TK;-TV;>;Lorg/ehcache/impl/internal/store/disk/factories/EhcachePersistentSegmentFactory<TK;TV;>;)V
    MethodParameters:
                 Name  Flags
      input            
      evictionAdvisor  
      segmentFactory   

  public void <init>(org.ehcache.config.EvictionAdvisor<? super K, ? super V>, org.ehcache.impl.internal.store.disk.factories.EhcachePersistentSegmentFactory<K, V>, );
    descriptor: (Lorg/ehcache/config/EvictionAdvisor;Lorg/ehcache/impl/internal/store/disk/factories/EhcachePersistentSegmentFactory;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 1 // org.ehcache.config.EvictionAdvisor evictionAdvisor
        start local 2 // org.ehcache.impl.internal.store.disk.factories.EhcachePersistentSegmentFactory segmentFactory
        start local 3 // int concurrency
         0: .line 52
            aload 0 /* this */
            aload 2 /* segmentFactory */
            iload 3 /* concurrency */
            invokespecial org.terracotta.offheapstore.disk.persistent.AbstractPersistentConcurrentOffHeapCache.<init>:(Lorg/terracotta/offheapstore/util/Factory;I)V
         1: .line 53
            aload 0 /* this */
            aload 1 /* evictionAdvisor */
            putfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.evictionAdvisor:Lorg/ehcache/config/EvictionAdvisor;
         2: .line 54
            aload 0 /* this */
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            arraylength
            anewarray java.util.concurrent.atomic.AtomicLong
            putfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.counters:[Ljava/util/concurrent/atomic/AtomicLong;
         3: .line 55
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: goto 7
         5: .line 56
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache org.ehcache.config.EvictionAdvisor org.ehcache.impl.internal.store.disk.factories.EhcachePersistentSegmentFactory int int
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.counters:[Ljava/util/concurrent/atomic/AtomicLong;
            iload 4 /* i */
            new java.util.concurrent.atomic.AtomicLong
            dup
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
            aastore
         6: .line 55
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 4 /* i */
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            arraylength
            if_icmplt 5
        end local 4 // int i
         8: .line 58
            return
        end local 3 // int concurrency
        end local 2 // org.ehcache.impl.internal.store.disk.factories.EhcachePersistentSegmentFactory segmentFactory
        end local 1 // org.ehcache.config.EvictionAdvisor evictionAdvisor
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    9     0             this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0    9     1  evictionAdvisor  Lorg/ehcache/config/EvictionAdvisor<-TK;-TV;>;
            0    9     2   segmentFactory  Lorg/ehcache/impl/internal/store/disk/factories/EhcachePersistentSegmentFactory<TK;TV;>;
            0    9     3      concurrency  I
            4    8     4                i  I
    Signature: (Lorg/ehcache/config/EvictionAdvisor<-TK;-TV;>;Lorg/ehcache/impl/internal/store/disk/factories/EhcachePersistentSegmentFactory<TK;TV;>;I)V
    MethodParameters:
                 Name  Flags
      evictionAdvisor  
      segmentFactory   
      concurrency      

  public long allocatedMemory();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 61
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 62
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 63
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getAllocatedMemory:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 62
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 65
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long occupiedMemory();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 69
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 70
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 71
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getOccupiedMemory:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 70
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 73
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long dataAllocatedMemory();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 77
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 78
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 79
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getDataAllocatedMemory:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 78
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 81
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long dataOccupiedMemory();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 85
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 86
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 87
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getDataOccupiedMemory:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 86
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 89
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long dataSize();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 93
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 94
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 95
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getDataSize:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 94
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 97
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long longSize();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 101
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 102
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 103
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getSize:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 102
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 105
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long tableCapacity();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 109
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 110
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 111
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getTableCapacity:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 110
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 113
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long usedSlotCount();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 117
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 118
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 119
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getUsedSlotCount:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 118
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 121
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long removedSlotCount();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 125
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 126
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 127
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getRemovedSlotCount:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 126
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 129
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long reprobeLength();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 133
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 134
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 135
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getReprobeLength:()I
            i2l
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 134
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 137
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long vitalMemory();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 141
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 142
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 143
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getVitalMemory:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 142
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 145
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public long dataVitalMemory();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
         0: .line 149
            lconst_0
            lstore 1 /* total */
        start local 1 // long total
         1: .line 150
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.segments:[Lorg/terracotta/offheapstore/Segment;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache long top int int org.terracotta.offheapstore.Segment[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* segment */
        start local 3 // org.terracotta.offheapstore.Segment segment
         3: .line 151
            lload 1 /* total */
            aload 3 /* segment */
            invokeinterface org.terracotta.offheapstore.Segment.getDataVitalMemory:()J
            ladd
            lstore 1 /* total */
        end local 3 // org.terracotta.offheapstore.Segment segment
         4: .line 150
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 153
            lload 1 /* total */
            lreturn
        end local 1 // long total
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            1    7     1    total  J
            3    4     3  segment  Lorg/terracotta/offheapstore/Segment<TK;TV;>;

  public V compute(K, java.util.function.BiFunction<K, V, V>, );
    descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;Z)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 1 // java.lang.Object key
        start local 2 // java.util.function.BiFunction mappingFunction
        start local 3 // boolean pin
         0: .line 158
            aload 0 /* this */
            aload 1 /* key */
            aload 0 /* this */
            aload 2 /* mappingFunction */
            iload 3 /* pin */
            invokedynamic apply(Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache;Ljava/util/function/BiFunction;Z)Ljava/util/function/BiFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  org/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache.lambda$0(Ljava/util/function/BiFunction;ZLjava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple; (7)
                  (Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple;
            invokevirtual org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.computeWithMetadata:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Lorg/terracotta/offheapstore/MetadataTuple;
            astore 4 /* result */
        start local 4 // org.terracotta.offheapstore.MetadataTuple result
         1: .line 170
            aload 4 /* result */
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals: org.terracotta.offheapstore.MetadataTuple
      StackMap stack:
         2: aload 4 /* result */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.value:()Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         3: areturn
        end local 4 // org.terracotta.offheapstore.MetadataTuple result
        end local 3 // boolean pin
        end local 2 // java.util.function.BiFunction mappingFunction
        end local 1 // java.lang.Object key
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0    4     1              key  TK;
            0    4     2  mappingFunction  Ljava/util/function/BiFunction<TK;TV;TV;>;
            0    4     3              pin  Z
            1    4     4           result  Lorg/terracotta/offheapstore/MetadataTuple<TV;>;
    Signature: (TK;Ljava/util/function/BiFunction<TK;TV;TV;>;Z)TV;
    MethodParameters:
                 Name  Flags
      key              
      mappingFunction  final
      pin              final

  public V computeIfPresent(K, java.util.function.BiFunction<? super K, ? super V, ? extends V>);
    descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 1 // java.lang.Object key
        start local 2 // java.util.function.BiFunction mappingFunction
         0: .line 175
            aload 0 /* this */
            aload 1 /* key */
            aload 0 /* this */
            aload 2 /* mappingFunction */
            invokedynamic apply(Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache;Ljava/util/function/BiFunction;)Ljava/util/function/BiFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  org/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache.lambda$1(Ljava/util/function/BiFunction;Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple; (7)
                  (Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple;
            invokevirtual org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.computeIfPresentWithMetadata:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Lorg/terracotta/offheapstore/MetadataTuple;
            astore 3 /* result */
        start local 3 // org.terracotta.offheapstore.MetadataTuple result
         1: .line 187
            aload 3 /* result */
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals: org.terracotta.offheapstore.MetadataTuple
      StackMap stack:
         2: aload 3 /* result */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.value:()Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         3: areturn
        end local 3 // org.terracotta.offheapstore.MetadataTuple result
        end local 2 // java.util.function.BiFunction mappingFunction
        end local 1 // java.lang.Object key
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0    4     1              key  TK;
            0    4     2  mappingFunction  Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
            1    4     3           result  Lorg/terracotta/offheapstore/MetadataTuple<TV;>;
    Signature: (TK;Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)TV;
    MethodParameters:
                 Name  Flags
      key              
      mappingFunction  final

  public V computeIfPresentAndPin(K, java.util.function.BiFunction<K, V, V>);
    descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 1 // java.lang.Object key
        start local 2 // java.util.function.BiFunction mappingFunction
         0: .line 192
            aload 0 /* this */
            aload 1 /* key */
            aload 0 /* this */
            aload 2 /* mappingFunction */
            invokedynamic apply(Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache;Ljava/util/function/BiFunction;)Ljava/util/function/BiFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  org/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache.lambda$2(Ljava/util/function/BiFunction;Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple; (7)
                  (Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple;
            invokevirtual org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.computeIfPresentWithMetadata:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Lorg/terracotta/offheapstore/MetadataTuple;
            astore 3 /* result */
        start local 3 // org.terracotta.offheapstore.MetadataTuple result
         1: .line 204
            aload 3 /* result */
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals: org.terracotta.offheapstore.MetadataTuple
      StackMap stack:
         2: aload 3 /* result */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.value:()Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         3: areturn
        end local 3 // org.terracotta.offheapstore.MetadataTuple result
        end local 2 // java.util.function.BiFunction mappingFunction
        end local 1 // java.lang.Object key
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0    4     1              key  TK;
            0    4     2  mappingFunction  Ljava/util/function/BiFunction<TK;TV;TV;>;
            1    4     3           result  Lorg/terracotta/offheapstore/MetadataTuple<TV;>;
    Signature: (TK;Ljava/util/function/BiFunction<TK;TV;TV;>;)TV;
    MethodParameters:
                 Name  Flags
      key              final
      mappingFunction  final

  public boolean computeIfPinned(K, java.util.function.BiFunction<K, V, V>, java.util.function.Function<V, java.lang.Boolean>);
    descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/Function;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 1 // java.lang.Object key
        start local 2 // java.util.function.BiFunction remappingFunction
        start local 3 // java.util.function.Function unpinFunction
         0: .line 209
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
            astore 4 /* unpin */
        start local 4 // java.util.concurrent.atomic.AtomicBoolean unpin
         1: .line 210
            aload 0 /* this */
            aload 1 /* key */
            aload 0 /* this */
            aload 2 /* remappingFunction */
            aload 3 /* unpinFunction */
            aload 4 /* unpin */
            invokedynamic apply(Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache;Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/concurrent/atomic/AtomicBoolean;)Ljava/util/function/BiFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
                  org/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache.lambda$3(Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple; (7)
                  (Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple;
            invokevirtual org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.computeIfPresentWithMetadata:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Lorg/terracotta/offheapstore/MetadataTuple;
            pop
         2: .line 230
            aload 4 /* unpin */
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
            ireturn
        end local 4 // java.util.concurrent.atomic.AtomicBoolean unpin
        end local 3 // java.util.function.Function unpinFunction
        end local 2 // java.util.function.BiFunction remappingFunction
        end local 1 // java.lang.Object key
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0    3     1                key  TK;
            0    3     2  remappingFunction  Ljava/util/function/BiFunction<TK;TV;TV;>;
            0    3     3      unpinFunction  Ljava/util/function/Function<TV;Ljava/lang/Boolean;>;
            1    3     4              unpin  Ljava/util/concurrent/atomic/AtomicBoolean;
    Signature: (TK;Ljava/util/function/BiFunction<TK;TV;TV;>;Ljava/util/function/Function<TV;Ljava/lang/Boolean;>;)Z
    MethodParameters:
                   Name  Flags
      key                final
      remappingFunction  final
      unpinFunction      final

  public long nextIdFor();
    descriptor: (Ljava/lang/Object;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 1 // java.lang.Object key
         0: .line 235
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.counters:[Ljava/util/concurrent/atomic/AtomicLong;
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.lang.Object.hashCode:()I
            invokevirtual org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.getIndexFor:(I)I
            aaload
            invokevirtual java.util.concurrent.atomic.AtomicLong.getAndIncrement:()J
            lreturn
        end local 1 // java.lang.Object key
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0    1     1   key  TK;
    Signature: (TK;)J
    MethodParameters:
      Name  Flags
      key   final

  private org.terracotta.offheapstore.MetadataTuple lambda$0(java.util.function.BiFunction, boolean, java.lang.Object, org.terracotta.offheapstore.MetadataTuple);
    descriptor: (Ljava/util/function/BiFunction;ZLjava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 3 // java.lang.Object k
        start local 4 // org.terracotta.offheapstore.MetadataTuple current
         0: .line 159
            aload 4 /* current */
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 4 /* current */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.value:()Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         2: astore 5 /* oldValue */
        start local 5 // java.lang.Object oldValue
         3: .line 160
            aload 1
            aload 3 /* k */
            aload 5 /* oldValue */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 6 /* newValue */
        start local 6 // java.lang.Object newValue
         4: .line 162
            aload 6 /* newValue */
            ifnonnull 6
         5: .line 163
            aconst_null
            areturn
         6: .line 164
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
            aload 5 /* oldValue */
            aload 6 /* newValue */
            if_acmpne 10
         7: .line 165
            aload 6 /* newValue */
            iload 2
            ifeq 8
            ldc 1073741824
            goto 9
      StackMap locals:
      StackMap stack: java.lang.Object
         8: iconst_0
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction int java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object
      StackMap stack: java.lang.Object int
         9: aload 4 /* current */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.metadata:()I
            ior
            invokestatic org.terracotta.offheapstore.MetadataTuple.metadataTuple:(Ljava/lang/Object;I)Lorg/terracotta/offheapstore/MetadataTuple;
            areturn
        10: .line 167
      StackMap locals:
      StackMap stack:
            aload 6 /* newValue */
            iload 2
            ifeq 11
            ldc 1073741824
            goto 12
      StackMap locals:
      StackMap stack: java.lang.Object
        11: iconst_0
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction int java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object
      StackMap stack: java.lang.Object int
        12: aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.evictionAdvisor:Lorg/ehcache/config/EvictionAdvisor;
            aload 3 /* k */
            aload 6 /* newValue */
            invokeinterface org.ehcache.config.EvictionAdvisor.adviseAgainstEviction:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 13
            ldc 536870912
            goto 14
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction int java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object
      StackMap stack: java.lang.Object int
        13: iconst_0
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction int java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object
      StackMap stack: java.lang.Object int int
        14: ior
            invokestatic org.terracotta.offheapstore.MetadataTuple.metadataTuple:(Ljava/lang/Object;I)Lorg/terracotta/offheapstore/MetadataTuple;
            areturn
        end local 6 // java.lang.Object newValue
        end local 5 // java.lang.Object oldValue
        end local 4 // org.terracotta.offheapstore.MetadataTuple current
        end local 3 // java.lang.Object k
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0   15     3         k  TK;
            0   15     4   current  Lorg/terracotta/offheapstore/MetadataTuple<TV;>;
            3   15     5  oldValue  TV;
            4   15     6  newValue  TV;

  private org.terracotta.offheapstore.MetadataTuple lambda$1(java.util.function.BiFunction, java.lang.Object, org.terracotta.offheapstore.MetadataTuple);
    descriptor: (Ljava/util/function/BiFunction;Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 2 // java.lang.Object k
        start local 3 // org.terracotta.offheapstore.MetadataTuple current
         0: .line 176
            aload 3 /* current */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.value:()Ljava/lang/Object;
            astore 4 /* oldValue */
        start local 4 // java.lang.Object oldValue
         1: .line 177
            aload 1
            aload 2 /* k */
            aload 4 /* oldValue */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 5 /* newValue */
        start local 5 // java.lang.Object newValue
         2: .line 179
            aload 5 /* newValue */
            ifnonnull 4
         3: .line 180
            aconst_null
            areturn
         4: .line 181
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
            aload 4 /* oldValue */
            aload 5 /* newValue */
            if_acmpne 6
         5: .line 182
            aload 3 /* current */
            areturn
         6: .line 184
      StackMap locals:
      StackMap stack:
            aload 5 /* newValue */
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.evictionAdvisor:Lorg/ehcache/config/EvictionAdvisor;
            aload 2 /* k */
            aload 5 /* newValue */
            invokeinterface org.ehcache.config.EvictionAdvisor.adviseAgainstEviction:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 7
            ldc 536870912
            goto 8
      StackMap locals:
      StackMap stack: java.lang.Object
         7: iconst_0
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object
      StackMap stack: java.lang.Object int
         8: invokestatic org.terracotta.offheapstore.MetadataTuple.metadataTuple:(Ljava/lang/Object;I)Lorg/terracotta/offheapstore/MetadataTuple;
            areturn
        end local 5 // java.lang.Object newValue
        end local 4 // java.lang.Object oldValue
        end local 3 // org.terracotta.offheapstore.MetadataTuple current
        end local 2 // java.lang.Object k
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0    9     2         k  TK;
            0    9     3   current  Lorg/terracotta/offheapstore/MetadataTuple<TV;>;
            1    9     4  oldValue  TV;
            2    9     5  newValue  TV;

  private org.terracotta.offheapstore.MetadataTuple lambda$2(java.util.function.BiFunction, java.lang.Object, org.terracotta.offheapstore.MetadataTuple);
    descriptor: (Ljava/util/function/BiFunction;Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 2 // java.lang.Object k
        start local 3 // org.terracotta.offheapstore.MetadataTuple current
         0: .line 193
            aload 3 /* current */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.value:()Ljava/lang/Object;
            astore 4 /* oldValue */
        start local 4 // java.lang.Object oldValue
         1: .line 194
            aload 1
            aload 2 /* k */
            aload 4 /* oldValue */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 5 /* newValue */
        start local 5 // java.lang.Object newValue
         2: .line 196
            aload 5 /* newValue */
            ifnonnull 4
         3: .line 197
            aconst_null
            areturn
         4: .line 198
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
            aload 4 /* oldValue */
            aload 5 /* newValue */
            if_acmpne 6
         5: .line 199
            aload 5 /* newValue */
            ldc 1073741824
            aload 3 /* current */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.metadata:()I
            ior
            invokestatic org.terracotta.offheapstore.MetadataTuple.metadataTuple:(Ljava/lang/Object;I)Lorg/terracotta/offheapstore/MetadataTuple;
            areturn
         6: .line 201
      StackMap locals:
      StackMap stack:
            aload 5 /* newValue */
            ldc 1073741824
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.evictionAdvisor:Lorg/ehcache/config/EvictionAdvisor;
            aload 2 /* k */
            aload 5 /* newValue */
            invokeinterface org.ehcache.config.EvictionAdvisor.adviseAgainstEviction:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 7
            ldc 536870912
            goto 8
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object
      StackMap stack: java.lang.Object int
         7: iconst_0
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object
      StackMap stack: java.lang.Object int int
         8: ior
            invokestatic org.terracotta.offheapstore.MetadataTuple.metadataTuple:(Ljava/lang/Object;I)Lorg/terracotta/offheapstore/MetadataTuple;
            areturn
        end local 5 // java.lang.Object newValue
        end local 4 // java.lang.Object oldValue
        end local 3 // org.terracotta.offheapstore.MetadataTuple current
        end local 2 // java.lang.Object k
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0    9     2         k  TK;
            0    9     3   current  Lorg/terracotta/offheapstore/MetadataTuple<TV;>;
            1    9     4  oldValue  TV;
            2    9     5  newValue  TV;

  private org.terracotta.offheapstore.MetadataTuple lambda$3(java.util.function.BiFunction, java.util.function.Function, java.util.concurrent.atomic.AtomicBoolean, java.lang.Object, org.terracotta.offheapstore.MetadataTuple);
    descriptor: (Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/lang/Object;Lorg/terracotta/offheapstore/MetadataTuple;)Lorg/terracotta/offheapstore/MetadataTuple;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=9, args_size=6
        start local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
        start local 4 // java.lang.Object k
        start local 5 // org.terracotta.offheapstore.MetadataTuple current
         0: .line 211
            aload 5 /* current */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.metadata:()I
            ldc 1073741824
            iand
            ifeq 16
         1: .line 212
            aload 5 /* current */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.value:()Ljava/lang/Object;
            astore 6 /* oldValue */
        start local 6 // java.lang.Object oldValue
         2: .line 213
            aload 1
            aload 4 /* k */
            aload 6 /* oldValue */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 7 /* newValue */
        start local 7 // java.lang.Object newValue
         3: .line 214
            aload 2
            aload 6 /* oldValue */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            astore 8 /* unpinLocal */
        start local 8 // java.lang.Boolean unpinLocal
         4: .line 216
            aload 7 /* newValue */
            ifnonnull 7
         5: .line 217
            aload 3
            iconst_1
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
         6: .line 218
            aconst_null
            areturn
         7: .line 219
      StackMap locals: java.lang.Object java.lang.Object java.lang.Boolean
      StackMap stack:
            aload 6 /* oldValue */
            aload 7 /* newValue */
            if_acmpne 12
         8: .line 220
            aload 3
            aload 8 /* unpinLocal */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
         9: .line 221
            aload 6 /* oldValue */
            aload 5 /* current */
            invokevirtual org.terracotta.offheapstore.MetadataTuple.metadata:()I
            aload 8 /* unpinLocal */
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 10
            ldc -1073741825
            goto 11
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction java.util.function.Function java.util.concurrent.atomic.AtomicBoolean java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object java.lang.Boolean
      StackMap stack: java.lang.Object int
        10: iconst_m1
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction java.util.function.Function java.util.concurrent.atomic.AtomicBoolean java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object java.lang.Boolean
      StackMap stack: java.lang.Object int int
        11: iand
            invokestatic org.terracotta.offheapstore.MetadataTuple.metadataTuple:(Ljava/lang/Object;I)Lorg/terracotta/offheapstore/MetadataTuple;
            areturn
        12: .line 223
      StackMap locals:
      StackMap stack:
            aload 3
            iconst_0
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
        13: .line 224
            aload 7 /* newValue */
            aload 0 /* this */
            getfield org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache.evictionAdvisor:Lorg/ehcache/config/EvictionAdvisor;
            aload 4 /* k */
            aload 7 /* newValue */
            invokeinterface org.ehcache.config.EvictionAdvisor.adviseAgainstEviction:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 14
            ldc 536870912
            goto 15
      StackMap locals:
      StackMap stack: java.lang.Object
        14: iconst_0
      StackMap locals: org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache java.util.function.BiFunction java.util.function.Function java.util.concurrent.atomic.AtomicBoolean java.lang.Object org.terracotta.offheapstore.MetadataTuple java.lang.Object java.lang.Object java.lang.Boolean
      StackMap stack: java.lang.Object int
        15: invokestatic org.terracotta.offheapstore.MetadataTuple.metadataTuple:(Ljava/lang/Object;I)Lorg/terracotta/offheapstore/MetadataTuple;
            areturn
        end local 8 // java.lang.Boolean unpinLocal
        end local 7 // java.lang.Object newValue
        end local 6 // java.lang.Object oldValue
        16: .line 227
      StackMap locals:
      StackMap stack:
            aload 5 /* current */
            areturn
        end local 5 // org.terracotta.offheapstore.MetadataTuple current
        end local 4 // java.lang.Object k
        end local 0 // org.ehcache.impl.internal.store.disk.EhcachePersistentConcurrentOffHeapClockCache this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0        this  Lorg/ehcache/impl/internal/store/disk/EhcachePersistentConcurrentOffHeapClockCache<TK;TV;>;
            0   17     4           k  TK;
            0   17     5     current  Lorg/terracotta/offheapstore/MetadataTuple<TV;>;
            2   16     6    oldValue  TV;
            3   16     7    newValue  TV;
            4   16     8  unpinLocal  Ljava/lang/Boolean;
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Lorg/terracotta/offheapstore/disk/persistent/AbstractPersistentConcurrentOffHeapCache<TK;TV;>;Lorg/ehcache/impl/internal/store/offheap/EhcacheOffHeapBackingMap<TK;TV;>;
SourceFile: "EhcachePersistentConcurrentOffHeapClockCache.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles