final class org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS<K, V> implements org.hibernate.internal.util.collections.BoundedConcurrentHashMap$EvictionPolicy<K, V>
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS
  super_class: java.lang.Object
{
  private static final float L_LIRS;
    descriptor: F
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0.95

  private final org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Segment<K, V> segment;
    descriptor: Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Segment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Segment<TK;TV;>;

  private final java.util.concurrent.ConcurrentLinkedQueue<org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry<K, V>> accessQueue;
    descriptor: Ljava/util/concurrent/ConcurrentLinkedQueue;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentLinkedQueue<Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;>;

  private final int maxBatchQueueSize;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final float batchThresholdFactor;
    descriptor: F
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry<K, V> header;
    descriptor: Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;

  private final int maximumHotSize;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int maximumSize;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  public void <init>(org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Segment<K, V>, int, int, );
    descriptor: (Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Segment;IIF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
        start local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Segment s
        start local 2 // int capacity
        start local 3 // int maxBatchSize
        start local 4 // float batchThresholdFactor
         0: .line 1000
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 987
            aload 0 /* this */
            new org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
            dup
            aconst_null
            aconst_null
            iconst_0
            aconst_null
            aconst_null
            invokespecial org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.<init>:(Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS;Ljava/lang/Object;ILorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry;Ljava/lang/Object;)V
            putfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.header:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
         2: .line 1001
            aload 0 /* this */
            aload 1 /* s */
            putfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.segment:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Segment;
         3: .line 1002
            aload 0 /* this */
            iload 2 /* capacity */
            putfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.maximumSize:I
         4: .line 1003
            aload 0 /* this */
            iload 2 /* capacity */
            invokestatic org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.calculateLIRSize:(I)I
            putfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.maximumHotSize:I
         5: .line 1004
            aload 0 /* this */
            iload 3 /* maxBatchSize */
            bipush 64
            if_icmple 6
            bipush 64
            goto 7
      StackMap locals: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Segment int int float
      StackMap stack: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS
         6: iload 3 /* maxBatchSize */
      StackMap locals: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Segment int int float
      StackMap stack: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS int
         7: putfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.maxBatchQueueSize:I
         8: .line 1005
            aload 0 /* this */
            fload 4 /* batchThresholdFactor */
            putfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.batchThresholdFactor:F
         9: .line 1006
            aload 0 /* this */
            new java.util.concurrent.ConcurrentLinkedQueue
            dup
            invokespecial java.util.concurrent.ConcurrentLinkedQueue.<init>:()V
            putfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.accessQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
        10: .line 1007
            return
        end local 4 // float batchThresholdFactor
        end local 3 // int maxBatchSize
        end local 2 // int capacity
        end local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Segment s
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   11     0                  this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            0   11     1                     s  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Segment<TK;TV;>;
            0   11     2              capacity  I
            0   11     3          maxBatchSize  I
            0   11     4  batchThresholdFactor  F
    Signature: (Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Segment<TK;TV;>;IIF)V
    MethodParameters:
                      Name  Flags
      s                     
      capacity              
      maxBatchSize          
      batchThresholdFactor  

  private static int calculateLIRSize(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // int maximumSize
         0: .line 1010
            ldc 0.95
            iload 0 /* maximumSize */
            i2f
            fmul
            f2i
            istore 1 /* result */
        start local 1 // int result
         1: .line 1011
            iload 1 /* result */
            iload 0 /* maximumSize */
            if_icmpne 2
            iload 0 /* maximumSize */
            iconst_1
            isub
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iload 1 /* result */
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 1 // int result
        end local 0 // int maximumSize
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0  maximumSize  I
            1    4     1       result  I
    MethodParameters:
             Name  Flags
      maximumSize  

  public java.util.Set<org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry<K, V>> execute();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
         0: .line 1016
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* evicted */
        start local 1 // java.util.Set evicted
         1: .line 1018
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.accessQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
            invokevirtual java.util.concurrent.ConcurrentLinkedQueue.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
            astore 2 /* e */
        start local 2 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry e
         3: .line 1019
            aload 2 /* e */
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.isResident:()Z
            ifeq 5
         4: .line 1020
            aload 2 /* e */
            aload 1 /* evicted */
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.hit:(Ljava/util/Set;)V
        end local 2 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry e
         5: .line 1018
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 1023
            aload 0 /* this */
            aload 1 /* evicted */
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.removeFromSegment:(Ljava/util/Set;)V
         7: .line 1024
            goto 11
      StackMap locals: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS java.util.Set
      StackMap stack: java.lang.Throwable
         8: astore 4
         9: .line 1025
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.accessQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
            invokevirtual java.util.concurrent.ConcurrentLinkedQueue.clear:()V
        10: .line 1026
            aload 4
            athrow
        11: .line 1025
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.accessQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
            invokevirtual java.util.concurrent.ConcurrentLinkedQueue.clear:()V
        12: .line 1027
            aload 1 /* evicted */
            areturn
        end local 1 // java.util.Set evicted
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            1   13     1  evicted  Ljava/util/Set<Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;>;
            3    5     2        e  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;
      Exception table:
        from    to  target  type
           1     8       8  any
    Signature: ()Ljava/util/Set<Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;>;

  private void pruneStack(java.util.Set<org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry<K, V>>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
        start local 1 // java.util.Set evicted
         0: .line 1047
            aload 0 /* this */
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.stackBottom:()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            astore 2 /* bottom */
        start local 2 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry bottom
         1: .line 1048
            goto 6
         2: .line 1049
      StackMap locals: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
      StackMap stack:
            aload 2 /* bottom */
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.removeFromStack:()V
         3: .line 1050
            aload 2 /* bottom */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.state:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Recency;
            getstatic org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Recency.HIR_NONRESIDENT:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Recency;
            if_acmpne 5
         4: .line 1051
            aload 1 /* evicted */
            aload 2 /* bottom */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         5: .line 1053
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.stackBottom:()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            astore 2 /* bottom */
         6: .line 1048
      StackMap locals:
      StackMap stack:
            aload 2 /* bottom */
            ifnull 7
            aload 2 /* bottom */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.state:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Recency;
            getstatic org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Recency.LIR_RESIDENT:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Recency;
            if_acmpne 2
         7: .line 1055
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry bottom
        end local 1 // java.util.Set evicted
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            0    8     1  evicted  Ljava/util/Set<Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;>;
            1    8     2   bottom  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;
    Signature: (Ljava/util/Set<Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;>;)V
    MethodParameters:
         Name  Flags
      evicted  

  public java.util.Set<org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry<K, V>> onEntryMiss(org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry<K, V>);
    descriptor: (Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
        start local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry en
         0: .line 1059
            aload 1 /* en */
            checkcast org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
            astore 2 /* e */
        start local 2 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry e
         1: .line 1060
            aload 2 /* e */
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.miss:()Ljava/util/Set;
            astore 3 /* evicted */
        start local 3 // java.util.Set evicted
         2: .line 1061
            aload 0 /* this */
            aload 3 /* evicted */
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.removeFromSegment:(Ljava/util/Set;)V
         3: .line 1062
            aload 3 /* evicted */
            areturn
        end local 3 // java.util.Set evicted
        end local 2 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry e
        end local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry en
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            0    4     1       en  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;
            1    4     2        e  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;
            2    4     3  evicted  Ljava/util/Set<Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;>;
    Signature: (Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;)Ljava/util/Set<Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;>;
    MethodParameters:
      Name  Flags
      en    

  private void removeFromSegment(java.util.Set<org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry<K, V>>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
        start local 1 // java.util.Set evicted
         0: .line 1066
            aload 1 /* evicted */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS java.util.Set top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry
            astore 2 /* e */
        start local 2 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry e
         2: .line 1067
            aload 2 /* e */
            checkcast org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.evict:()V
         3: .line 1068
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.segment:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Segment;
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Segment.evictionListener:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$EvictionListener;
            aload 2 /* e */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry.value:Ljava/lang/Object;
            invokeinterface org.hibernate.internal.util.collections.BoundedConcurrentHashMap$EvictionListener.onEntryChosenForEviction:(Ljava/lang/Object;)V
         4: .line 1069
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.segment:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Segment;
            aload 2 /* e */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry.key:Ljava/lang/Object;
            aload 2 /* e */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry.hash:I
            aconst_null
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Segment.remove:(Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
            pop
        end local 2 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry e
         5: .line 1066
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         6: .line 1071
            return
        end local 1 // java.util.Set evicted
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            0    7     1  evicted  Ljava/util/Set<Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;>;
            2    5     2        e  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;
    Signature: (Ljava/util/Set<Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;>;)V
    MethodParameters:
         Name  Flags
      evicted  

  public boolean onEntryHit(org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry<K, V>);
    descriptor: (Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
        start local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry e
         0: .line 1078
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.accessQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
            aload 1 /* e */
            checkcast org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
            invokevirtual java.util.concurrent.ConcurrentLinkedQueue.add:(Ljava/lang/Object;)Z
            pop
         1: .line 1079
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.accessQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
            invokevirtual java.util.concurrent.ConcurrentLinkedQueue.size:()I
            i2f
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.maxBatchQueueSize:I
            i2f
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.batchThresholdFactor:F
            fmul
            fcmpl
            iflt 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
        end local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry e
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            0    3     1     e  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;
    Signature: (Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;)Z
    MethodParameters:
      Name  Flags
      e     

  public boolean thresholdExpired();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
         0: .line 1087
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.accessQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
            invokevirtual java.util.concurrent.ConcurrentLinkedQueue.size:()I
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.maxBatchQueueSize:I
            if_icmplt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;

  public void onEntryRemove(org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry<K, V>);
    descriptor: (Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
        start local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry e
         0: .line 1093
            aload 1 /* e */
            checkcast org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
            invokevirtual org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.remove:()Ljava/lang/Object;
            pop
         1: .line 1095
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.accessQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
            aload 1 /* e */
            invokevirtual java.util.concurrent.ConcurrentLinkedQueue.remove:(Ljava/lang/Object;)Z
            ifne 1
         2: .line 1097
            return
        end local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry e
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            0    3     1     e  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;
    Signature: (Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;)V
    MethodParameters:
      Name  Flags
      e     

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
         0: .line 1101
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.accessQueue:Ljava/util/concurrent/ConcurrentLinkedQueue;
            invokevirtual java.util.concurrent.ConcurrentLinkedQueue.clear:()V
         1: .line 1102
            return
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;

  public org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Eviction strategy();
    descriptor: ()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Eviction;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
         0: .line 1106
            getstatic org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Eviction.LIRS:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Eviction;
            areturn
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
    Signature: ()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$Eviction;

  private org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry<K, V> stackBottom();
    descriptor: ()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
         0: .line 1113
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.header:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.previousInStack:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            astore 1 /* bottom */
        start local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry bottom
         1: .line 1114
            aload 1 /* bottom */
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.header:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            if_acmpne 2
            aconst_null
            goto 3
      StackMap locals: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
      StackMap stack:
         2: aload 1 /* bottom */
      StackMap locals:
      StackMap stack: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
         3: areturn
        end local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry bottom
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            1    4     1  bottom  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;
    Signature: ()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;

  private org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry<K, V> queueFront();
    descriptor: ()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
         0: .line 1121
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.header:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.nextInQueue:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            astore 1 /* front */
        start local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry front
         1: .line 1122
            aload 1 /* front */
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.header:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            if_acmpne 2
            aconst_null
            goto 3
      StackMap locals: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
      StackMap stack:
         2: aload 1 /* front */
      StackMap locals:
      StackMap stack: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
         3: areturn
        end local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry front
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            1    4     1  front  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;
    Signature: ()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;

  private org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry<K, V> queueEnd();
    descriptor: ()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
         0: .line 1129
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.header:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.previousInQueue:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            astore 1 /* end */
        start local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry end
         1: .line 1130
            aload 1 /* end */
            aload 0 /* this */
            getfield org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS.header:Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry;
            if_acmpne 2
            aconst_null
            goto 3
      StackMap locals: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
      StackMap stack:
         2: aload 1 /* end */
      StackMap locals:
      StackMap stack: org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
         3: areturn
        end local 1 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry end
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            1    4     1   end  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;
    Signature: ()Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRSHashEntry<TK;TV;>;

  public org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry<K, V> createNewEntry(K, int, org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry<K, V>, V);
    descriptor: (Ljava/lang/Object;ILorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry;Ljava/lang/Object;)Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
        start local 1 // java.lang.Object key
        start local 2 // int hash
        start local 3 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry next
        start local 4 // java.lang.Object value
         0: .line 1136
            new org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry
            dup
            aload 0 /* this */
            aload 1 /* key */
            iload 2 /* hash */
            aload 3 /* next */
            aload 4 /* value */
            invokespecial org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry.<init>:(Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS;Ljava/lang/Object;ILorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry;Ljava/lang/Object;)V
            areturn
        end local 4 // java.lang.Object value
        end local 3 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry next
        end local 2 // int hash
        end local 1 // java.lang.Object key
        end local 0 // org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$LIRS<TK;TV;>;
            0    1     1    key  TK;
            0    1     2   hash  I
            0    1     3   next  Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;
            0    1     4  value  TV;
    Signature: (TK;ILorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;TV;)Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$HashEntry<TK;TV;>;
    MethodParameters:
       Name  Flags
      key    
      hash   
      next   
      value  
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/lang/Object;Lorg/hibernate/internal/util/collections/BoundedConcurrentHashMap$EvictionPolicy<TK;TV;>;
SourceFile: "BoundedConcurrentHashMap.java"
NestHost: org.hibernate.internal.util.collections.BoundedConcurrentHashMap
InnerClasses:
  public abstract Eviction = org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Eviction of org.hibernate.internal.util.collections.BoundedConcurrentHashMap
  public abstract EvictionListener = org.hibernate.internal.util.collections.BoundedConcurrentHashMap$EvictionListener of org.hibernate.internal.util.collections.BoundedConcurrentHashMap
  public abstract EvictionPolicy = org.hibernate.internal.util.collections.BoundedConcurrentHashMap$EvictionPolicy of org.hibernate.internal.util.collections.BoundedConcurrentHashMap
  private HashEntry = org.hibernate.internal.util.collections.BoundedConcurrentHashMap$HashEntry of org.hibernate.internal.util.collections.BoundedConcurrentHashMap
  final LIRS = org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRS of org.hibernate.internal.util.collections.BoundedConcurrentHashMap
  private final LIRSHashEntry = org.hibernate.internal.util.collections.BoundedConcurrentHashMap$LIRSHashEntry of org.hibernate.internal.util.collections.BoundedConcurrentHashMap
  private final Recency = org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Recency of org.hibernate.internal.util.collections.BoundedConcurrentHashMap
  final Segment = org.hibernate.internal.util.collections.BoundedConcurrentHashMap$Segment of org.hibernate.internal.util.collections.BoundedConcurrentHashMap