class com.google.common.cache.LocalCache<K, V> extends java.util.AbstractMap<K, V> implements java.util.concurrent.ConcurrentMap<K, V>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.google.common.cache.LocalCache
  super_class: java.util.AbstractMap
{
  static final int MAXIMUM_CAPACITY;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1073741824

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

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

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

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

  static final java.util.logging.Logger logger;
    descriptor: Ljava/util/logging/Logger;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

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

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

  final com.google.common.cache.LocalCache$Segment<K, V>[] segments;
    descriptor: [Lcom/google/common/cache/LocalCache$Segment;
    flags: (0x0010) ACC_FINAL
    Signature: [Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;

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

  final com.google.common.base.Equivalence<java.lang.Object> keyEquivalence;
    descriptor: Lcom/google/common/base/Equivalence;
    flags: (0x0010) ACC_FINAL
    Signature: Lcom/google/common/base/Equivalence<Ljava/lang/Object;>;

  final com.google.common.base.Equivalence<java.lang.Object> valueEquivalence;
    descriptor: Lcom/google/common/base/Equivalence;
    flags: (0x0010) ACC_FINAL
    Signature: Lcom/google/common/base/Equivalence<Ljava/lang/Object;>;

  final com.google.common.cache.LocalCache$Strength keyStrength;
    descriptor: Lcom/google/common/cache/LocalCache$Strength;
    flags: (0x0010) ACC_FINAL
    Signature: Lcom/google/common/cache/LocalCache$Strength;

  final com.google.common.cache.LocalCache$Strength valueStrength;
    descriptor: Lcom/google/common/cache/LocalCache$Strength;
    flags: (0x0010) ACC_FINAL
    Signature: Lcom/google/common/cache/LocalCache$Strength;

  final long maxWeight;
    descriptor: J
    flags: (0x0010) ACC_FINAL

  final com.google.common.cache.Weigher<K, V> weigher;
    descriptor: Lcom/google/common/cache/Weigher;
    flags: (0x0010) ACC_FINAL
    Signature: Lcom/google/common/cache/Weigher<TK;TV;>;

  final long expireAfterAccessNanos;
    descriptor: J
    flags: (0x0010) ACC_FINAL

  final long expireAfterWriteNanos;
    descriptor: J
    flags: (0x0010) ACC_FINAL

  final long refreshNanos;
    descriptor: J
    flags: (0x0010) ACC_FINAL

  final java.util.Queue<com.google.common.cache.RemovalNotification<K, V>> removalNotificationQueue;
    descriptor: Ljava/util/Queue;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/Queue<Lcom/google/common/cache/RemovalNotification<TK;TV;>;>;

  final com.google.common.cache.RemovalListener<K, V> removalListener;
    descriptor: Lcom/google/common/cache/RemovalListener;
    flags: (0x0010) ACC_FINAL
    Signature: Lcom/google/common/cache/RemovalListener<TK;TV;>;

  final com.google.common.base.Ticker ticker;
    descriptor: Lcom/google/common/base/Ticker;
    flags: (0x0010) ACC_FINAL

  final com.google.common.cache.LocalCache$EntryFactory entryFactory;
    descriptor: Lcom/google/common/cache/LocalCache$EntryFactory;
    flags: (0x0010) ACC_FINAL
    Signature: Lcom/google/common/cache/LocalCache$EntryFactory;

  final com.google.common.cache.AbstractCache$StatsCounter globalStatsCounter;
    descriptor: Lcom/google/common/cache/AbstractCache$StatsCounter;
    flags: (0x0010) ACC_FINAL

  final com.google.common.cache.CacheLoader<? super K, V> defaultLoader;
    descriptor: Lcom/google/common/cache/CacheLoader;
    flags: (0x0010) ACC_FINAL
    Signature: Lcom/google/common/cache/CacheLoader<-TK;TV;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.Nullable()

  static final com.google.common.cache.LocalCache$ValueReference<java.lang.Object, java.lang.Object> UNSET;
    descriptor: Lcom/google/common/cache/LocalCache$ValueReference;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Lcom/google/common/cache/LocalCache$ValueReference<Ljava/lang/Object;Ljava/lang/Object;>;

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

  java.util.Set<K> keySet;
    descriptor: Ljava/util/Set;
    flags: (0x0000) 
    Signature: Ljava/util/Set<TK;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.MonotonicNonNull()

  java.util.Collection<V> values;
    descriptor: Ljava/util/Collection;
    flags: (0x0000) 
    Signature: Ljava/util/Collection<TV;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.MonotonicNonNull()

  java.util.Set<java.util.Map$Entry<K, V>> entrySet;
    descriptor: Ljava/util/Set;
    flags: (0x0000) 
    Signature: Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.MonotonicNonNull()

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 163
            ldc Lcom/google/common/cache/LocalCache;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.util.logging.Logger.getLogger:(Ljava/lang/String;)Ljava/util/logging/Logger;
            putstatic com.google.common.cache.LocalCache.logger:Ljava/util/logging/Logger;
         1: .line 680
            new com.google.common.cache.LocalCache$1
            dup
            invokespecial com.google.common.cache.LocalCache$1.<init>:()V
         2: .line 679
            putstatic com.google.common.cache.LocalCache.UNSET:Lcom/google/common/cache/LocalCache$ValueReference;
         3: .line 897
            new com.google.common.cache.LocalCache$2
            dup
            invokespecial com.google.common.cache.LocalCache$2.<init>:()V
         4: .line 896
            putstatic com.google.common.cache.LocalCache.DISCARDING_QUEUE:Ljava/util/Queue;
         5: .line 922
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(com.google.common.cache.CacheBuilder<? super K, ? super V>, com.google.common.cache.CacheLoader<? super K, V>);
    descriptor: (Lcom/google/common/cache/CacheBuilder;Lcom/google/common/cache/CacheLoader;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=13, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // com.google.common.cache.CacheBuilder builder
        start local 2 // com.google.common.cache.CacheLoader loader
         0: .line 238
            aload 0 /* this */
            invokespecial java.util.AbstractMap.<init>:()V
         1: .line 240
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getConcurrencyLevel:()I
            ldc 65536
            invokestatic java.lang.Math.min:(II)I
            putfield com.google.common.cache.LocalCache.concurrencyLevel:I
         2: .line 242
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getKeyStrength:()Lcom/google/common/cache/LocalCache$Strength;
            putfield com.google.common.cache.LocalCache.keyStrength:Lcom/google/common/cache/LocalCache$Strength;
         3: .line 243
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getValueStrength:()Lcom/google/common/cache/LocalCache$Strength;
            putfield com.google.common.cache.LocalCache.valueStrength:Lcom/google/common/cache/LocalCache$Strength;
         4: .line 245
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getKeyEquivalence:()Lcom/google/common/base/Equivalence;
            putfield com.google.common.cache.LocalCache.keyEquivalence:Lcom/google/common/base/Equivalence;
         5: .line 246
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getValueEquivalence:()Lcom/google/common/base/Equivalence;
            putfield com.google.common.cache.LocalCache.valueEquivalence:Lcom/google/common/base/Equivalence;
         6: .line 248
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getMaximumWeight:()J
            putfield com.google.common.cache.LocalCache.maxWeight:J
         7: .line 249
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getWeigher:()Lcom/google/common/cache/Weigher;
            putfield com.google.common.cache.LocalCache.weigher:Lcom/google/common/cache/Weigher;
         8: .line 250
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getExpireAfterAccessNanos:()J
            putfield com.google.common.cache.LocalCache.expireAfterAccessNanos:J
         9: .line 251
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getExpireAfterWriteNanos:()J
            putfield com.google.common.cache.LocalCache.expireAfterWriteNanos:J
        10: .line 252
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getRefreshNanos:()J
            putfield com.google.common.cache.LocalCache.refreshNanos:J
        11: .line 254
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getRemovalListener:()Lcom/google/common/cache/RemovalListener;
            putfield com.google.common.cache.LocalCache.removalListener:Lcom/google/common/cache/RemovalListener;
        12: .line 255
            aload 0 /* this */
        13: .line 256
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.removalListener:Lcom/google/common/cache/RemovalListener;
            getstatic com.google.common.cache.CacheBuilder$NullListener.INSTANCE:Lcom/google/common/cache/CacheBuilder$NullListener;
            if_acmpne 15
        14: .line 257
            invokestatic com.google.common.cache.LocalCache.discardingQueue:()Ljava/util/Queue;
            goto 16
        15: .line 258
      StackMap locals: com.google.common.cache.LocalCache com.google.common.cache.CacheBuilder com.google.common.cache.CacheLoader
      StackMap stack: com.google.common.cache.LocalCache
            new java.util.concurrent.ConcurrentLinkedQueue
            dup
            invokespecial java.util.concurrent.ConcurrentLinkedQueue.<init>:()V
        16: .line 255
      StackMap locals: com.google.common.cache.LocalCache com.google.common.cache.CacheBuilder com.google.common.cache.CacheLoader
      StackMap stack: com.google.common.cache.LocalCache java.util.Queue
            putfield com.google.common.cache.LocalCache.removalNotificationQueue:Ljava/util/Queue;
        17: .line 260
            aload 0 /* this */
            aload 1 /* builder */
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.recordsTime:()Z
            invokevirtual com.google.common.cache.CacheBuilder.getTicker:(Z)Lcom/google/common/base/Ticker;
            putfield com.google.common.cache.LocalCache.ticker:Lcom/google/common/base/Ticker;
        18: .line 261
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.keyStrength:Lcom/google/common/cache/LocalCache$Strength;
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.usesAccessEntries:()Z
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.usesWriteEntries:()Z
            invokestatic com.google.common.cache.LocalCache$EntryFactory.getFactory:(Lcom/google/common/cache/LocalCache$Strength;ZZ)Lcom/google/common/cache/LocalCache$EntryFactory;
            putfield com.google.common.cache.LocalCache.entryFactory:Lcom/google/common/cache/LocalCache$EntryFactory;
        19: .line 262
            aload 0 /* this */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getStatsCounterSupplier:()Lcom/google/common/base/Supplier;
            invokeinterface com.google.common.base.Supplier.get:()Ljava/lang/Object;
            checkcast com.google.common.cache.AbstractCache$StatsCounter
            putfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
        20: .line 263
            aload 0 /* this */
            aload 2 /* loader */
            putfield com.google.common.cache.LocalCache.defaultLoader:Lcom/google/common/cache/CacheLoader;
        21: .line 265
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getInitialCapacity:()I
            ldc 1073741824
            invokestatic java.lang.Math.min:(II)I
            istore 3 /* initialCapacity */
        start local 3 // int initialCapacity
        22: .line 266
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.evictsBySize:()Z
            ifeq 24
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.customWeigher:()Z
            ifne 24
        23: .line 267
            iload 3 /* initialCapacity */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.maxWeight:J
            l2i
            invokestatic java.lang.Math.min:(II)I
            istore 3 /* initialCapacity */
        24: .line 275
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 4 /* segmentShift */
        start local 4 // int segmentShift
        25: .line 276
            iconst_1
            istore 5 /* segmentCount */
        start local 5 // int segmentCount
        26: .line 277
            goto 29
        27: .line 278
      StackMap locals: int int
      StackMap stack:
            iinc 4 /* segmentShift */ 1
        28: .line 279
            iload 5 /* segmentCount */
            iconst_1
            ishl
            istore 5 /* segmentCount */
        29: .line 277
      StackMap locals:
      StackMap stack:
            iload 5 /* segmentCount */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.concurrencyLevel:I
            if_icmpge 30
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.evictsBySize:()Z
            ifeq 27
            iload 5 /* segmentCount */
            bipush 20
            imul
            i2l
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.maxWeight:J
            lcmp
            ifle 27
        30: .line 281
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 32
            iload 4 /* segmentShift */
            isub
            putfield com.google.common.cache.LocalCache.segmentShift:I
        31: .line 282
            aload 0 /* this */
            iload 5 /* segmentCount */
            iconst_1
            isub
            putfield com.google.common.cache.LocalCache.segmentMask:I
        32: .line 284
            aload 0 /* this */
            aload 0 /* this */
            iload 5 /* segmentCount */
            invokevirtual com.google.common.cache.LocalCache.newSegmentArray:(I)[Lcom/google/common/cache/LocalCache$Segment;
            putfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
        33: .line 286
            iload 3 /* initialCapacity */
            iload 5 /* segmentCount */
            idiv
            istore 6 /* segmentCapacity */
        start local 6 // int segmentCapacity
        34: .line 287
            iload 6 /* segmentCapacity */
            iload 5 /* segmentCount */
            imul
            iload 3 /* initialCapacity */
            if_icmpge 36
        35: .line 288
            iinc 6 /* segmentCapacity */ 1
        36: .line 291
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 7 /* segmentSize */
        start local 7 // int segmentSize
        37: .line 292
            goto 39
        38: .line 293
      StackMap locals: int
      StackMap stack:
            iload 7 /* segmentSize */
            iconst_1
            ishl
            istore 7 /* segmentSize */
        39: .line 292
      StackMap locals:
      StackMap stack:
            iload 7 /* segmentSize */
            iload 6 /* segmentCapacity */
            if_icmplt 38
        40: .line 296
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.evictsBySize:()Z
            ifeq 53
        41: .line 298
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.maxWeight:J
            iload 5 /* segmentCount */
            i2l
            ldiv
            lconst_1
            ladd
            lstore 8 /* maxSegmentWeight */
        start local 8 // long maxSegmentWeight
        42: .line 299
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.maxWeight:J
            iload 5 /* segmentCount */
            i2l
            lrem
            lstore 10 /* remainder */
        start local 10 // long remainder
        43: .line 300
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        44: goto 51
        45: .line 301
      StackMap locals: long long int
      StackMap stack:
            iload 12 /* i */
            i2l
            lload 10 /* remainder */
            lcmp
            ifne 47
        46: .line 302
            lload 8 /* maxSegmentWeight */
            lconst_1
            lsub
            lstore 8 /* maxSegmentWeight */
        47: .line 304
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            iload 12 /* i */
        48: .line 305
            aload 0 /* this */
            iload 7 /* segmentSize */
            lload 8 /* maxSegmentWeight */
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getStatsCounterSupplier:()Lcom/google/common/base/Supplier;
            invokeinterface com.google.common.base.Supplier.get:()Ljava/lang/Object;
            checkcast com.google.common.cache.AbstractCache$StatsCounter
            invokevirtual com.google.common.cache.LocalCache.createSegment:(IJLcom/google/common/cache/AbstractCache$StatsCounter;)Lcom/google/common/cache/LocalCache$Segment;
        49: .line 304
            aastore
        50: .line 300
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        51: iload 12 /* i */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            arraylength
            if_icmplt 45
        end local 12 // int i
        end local 10 // long remainder
        end local 8 // long maxSegmentWeight
        52: .line 307
            goto 60
        53: .line 308
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        54: goto 59
        55: .line 309
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            iload 8 /* i */
        56: .line 310
            aload 0 /* this */
            iload 7 /* segmentSize */
            ldc -1
            aload 1 /* builder */
            invokevirtual com.google.common.cache.CacheBuilder.getStatsCounterSupplier:()Lcom/google/common/base/Supplier;
            invokeinterface com.google.common.base.Supplier.get:()Ljava/lang/Object;
            checkcast com.google.common.cache.AbstractCache$StatsCounter
            invokevirtual com.google.common.cache.LocalCache.createSegment:(IJLcom/google/common/cache/AbstractCache$StatsCounter;)Lcom/google/common/cache/LocalCache$Segment;
        57: .line 309
            aastore
        58: .line 308
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        59: iload 8 /* i */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            arraylength
            if_icmplt 55
        end local 8 // int i
        60: .line 313
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int segmentSize
        end local 6 // int segmentCapacity
        end local 5 // int segmentCount
        end local 4 // int segmentShift
        end local 3 // int initialCapacity
        end local 2 // com.google.common.cache.CacheLoader loader
        end local 1 // com.google.common.cache.CacheBuilder builder
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   61     0              this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0   61     1           builder  Lcom/google/common/cache/CacheBuilder<-TK;-TV;>;
            0   61     2            loader  Lcom/google/common/cache/CacheLoader<-TK;TV;>;
           22   61     3   initialCapacity  I
           25   61     4      segmentShift  I
           26   61     5      segmentCount  I
           34   61     6   segmentCapacity  I
           37   61     7       segmentSize  I
           42   52     8  maxSegmentWeight  J
           43   52    10         remainder  J
           44   52    12                 i  I
           54   60     8                 i  I
    Signature: (Lcom/google/common/cache/CacheBuilder<-TK;-TV;>;Lcom/google/common/cache/CacheLoader<-TK;TV;>;)V
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
         Name  Flags
      builder  
      loader   

  boolean evictsBySize();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 316
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.maxWeight:J
            lconst_0
            lcmp
            iflt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean customWeigher();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 320
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.weigher:Lcom/google/common/cache/Weigher;
            getstatic com.google.common.cache.CacheBuilder$OneWeigher.INSTANCE:Lcom/google/common/cache/CacheBuilder$OneWeigher;
            if_acmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean expires();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 324
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.expiresAfterWrite:()Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.expiresAfterAccess:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean expiresAfterWrite();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 328
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.expireAfterWriteNanos:J
            lconst_0
            lcmp
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean expiresAfterAccess();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 332
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.expireAfterAccessNanos:J
            lconst_0
            lcmp
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean refreshes();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 336
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.refreshNanos:J
            lconst_0
            lcmp
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean usesAccessQueue();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 340
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.expiresAfterAccess:()Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.evictsBySize:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean usesWriteQueue();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 344
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.expiresAfterWrite:()Z
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean recordsWrite();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 348
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.expiresAfterWrite:()Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.refreshes:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean recordsAccess();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 352
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.expiresAfterAccess:()Z
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean recordsTime();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 356
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.recordsWrite:()Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.recordsAccess:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean usesWriteEntries();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 360
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.usesWriteQueue:()Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.recordsWrite:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean usesAccessEntries();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 364
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.usesAccessQueue:()Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.recordsAccess:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean usesKeyReferences();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 368
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.keyStrength:Lcom/google/common/cache/LocalCache$Strength;
            getstatic com.google.common.cache.LocalCache$Strength.STRONG:Lcom/google/common/cache/LocalCache$Strength;
            if_acmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  boolean usesValueReferences();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 372
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.valueStrength:Lcom/google/common/cache/LocalCache$Strength;
            getstatic com.google.common.cache.LocalCache$Strength.STRONG:Lcom/google/common/cache/LocalCache$Strength;
            if_acmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  static <K, V> com.google.common.cache.LocalCache$ValueReference<K, V> unset();
    descriptor: ()Lcom/google/common/cache/LocalCache$ValueReference;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 726
            getstatic com.google.common.cache.LocalCache.UNSET:Lcom/google/common/cache/LocalCache$ValueReference;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>()Lcom/google/common/cache/LocalCache$ValueReference<TK;TV;>;

  static <K, V> com.google.common.cache.ReferenceEntry<K, V> nullEntry();
    descriptor: ()Lcom/google/common/cache/ReferenceEntry;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 893
            getstatic com.google.common.cache.LocalCache$NullEntry.INSTANCE:Lcom/google/common/cache/LocalCache$NullEntry;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>()Lcom/google/common/cache/ReferenceEntry<TK;TV;>;

  static <E> java.util.Queue<E> discardingQueue();
    descriptor: ()Ljava/util/Queue;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 927
            getstatic com.google.common.cache.LocalCache.DISCARDING_QUEUE:Ljava/util/Queue;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <E:Ljava/lang/Object;>()Ljava/util/Queue<TE;>;

  static int rehash(int);
    descriptor: (I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // int h
         0: .line 1653
            iload 0 /* h */
            iload 0 /* h */
            bipush 15
            ishl
            sipush -12931
            ixor
            iadd
            istore 0 /* h */
         1: .line 1654
            iload 0 /* h */
            iload 0 /* h */
            bipush 10
            iushr
            ixor
            istore 0 /* h */
         2: .line 1655
            iload 0 /* h */
            iload 0 /* h */
            iconst_3
            ishl
            iadd
            istore 0 /* h */
         3: .line 1656
            iload 0 /* h */
            iload 0 /* h */
            bipush 6
            iushr
            ixor
            istore 0 /* h */
         4: .line 1657
            iload 0 /* h */
            iload 0 /* h */
            iconst_2
            ishl
            iload 0 /* h */
            bipush 14
            ishl
            iadd
            iadd
            istore 0 /* h */
         5: .line 1658
            iload 0 /* h */
            iload 0 /* h */
            bipush 16
            iushr
            ixor
            ireturn
        end local 0 // int h
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     h  I
    MethodParameters:
      Name  Flags
      h     

  com.google.common.cache.ReferenceEntry<K, V> newEntry(K, int, com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Ljava/lang/Object;ILcom/google/common/cache/ReferenceEntry;)Lcom/google/common/cache/ReferenceEntry;
    flags: (0x0000) 
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // int hash
        start local 3 // com.google.common.cache.ReferenceEntry next
         0: .line 1666
            aload 0 /* this */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            astore 4 /* segment */
        start local 4 // com.google.common.cache.LocalCache$Segment segment
         1: .line 1667
            aload 4 /* segment */
            invokevirtual com.google.common.cache.LocalCache$Segment.lock:()V
         2: .line 1669
            aload 4 /* segment */
            aload 1 /* key */
            iload 2 /* hash */
            aload 3 /* next */
            invokevirtual com.google.common.cache.LocalCache$Segment.newEntry:(Ljava/lang/Object;ILcom/google/common/cache/ReferenceEntry;)Lcom/google/common/cache/ReferenceEntry;
            astore 6
         3: .line 1671
            aload 4 /* segment */
            invokevirtual com.google.common.cache.LocalCache$Segment.unlock:()V
         4: .line 1669
            aload 6
            areturn
         5: .line 1670
      StackMap locals: com.google.common.cache.LocalCache java.lang.Object int com.google.common.cache.ReferenceEntry com.google.common.cache.LocalCache$Segment
      StackMap stack: java.lang.Throwable
            astore 5
         6: .line 1671
            aload 4 /* segment */
            invokevirtual com.google.common.cache.LocalCache$Segment.unlock:()V
         7: .line 1672
            aload 5
            athrow
        end local 4 // com.google.common.cache.LocalCache$Segment segment
        end local 3 // com.google.common.cache.ReferenceEntry next
        end local 2 // int hash
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    8     1      key  TK;
            0    8     2     hash  I
            0    8     3     next  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            1    8     4  segment  Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;
      Exception table:
        from    to  target  type
           2     3       5  any
    Signature: (TK;ILcom/google/common/cache/ReferenceEntry<TK;TV;>;)Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.VisibleForTesting()
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        com.google.common.annotations.VisibleForTesting()
    MethodParameters:
      Name  Flags
      key   
      hash  
      next  

  com.google.common.cache.ReferenceEntry<K, V> copyEntry(com.google.common.cache.ReferenceEntry<K, V>, com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Lcom/google/common/cache/ReferenceEntry;Lcom/google/common/cache/ReferenceEntry;)Lcom/google/common/cache/ReferenceEntry;
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // com.google.common.cache.ReferenceEntry original
        start local 2 // com.google.common.cache.ReferenceEntry newNext
         0: .line 1681
            aload 1 /* original */
            invokeinterface com.google.common.cache.ReferenceEntry.getHash:()I
            istore 3 /* hash */
        start local 3 // int hash
         1: .line 1682
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* original */
            aload 2 /* newNext */
            invokevirtual com.google.common.cache.LocalCache$Segment.copyEntry:(Lcom/google/common/cache/ReferenceEntry;Lcom/google/common/cache/ReferenceEntry;)Lcom/google/common/cache/ReferenceEntry;
            areturn
        end local 3 // int hash
        end local 2 // com.google.common.cache.ReferenceEntry newNext
        end local 1 // com.google.common.cache.ReferenceEntry original
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    2     1  original  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            0    2     2   newNext  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            1    2     3      hash  I
    Signature: (Lcom/google/common/cache/ReferenceEntry<TK;TV;>;Lcom/google/common/cache/ReferenceEntry<TK;TV;>;)Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.VisibleForTesting()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        com.google.common.annotations.VisibleForTesting()
    MethodParameters:
          Name  Flags
      original  
      newNext   

  com.google.common.cache.LocalCache$ValueReference<K, V> newValueReference(com.google.common.cache.ReferenceEntry<K, V>, V, int);
    descriptor: (Lcom/google/common/cache/ReferenceEntry;Ljava/lang/Object;I)Lcom/google/common/cache/LocalCache$ValueReference;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // com.google.common.cache.ReferenceEntry entry
        start local 2 // java.lang.Object value
        start local 3 // int weight
         0: .line 1691
            aload 1 /* entry */
            invokeinterface com.google.common.cache.ReferenceEntry.getHash:()I
            istore 4 /* hash */
        start local 4 // int hash
         1: .line 1692
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.valueStrength:Lcom/google/common/cache/LocalCache$Strength;
            aload 0 /* this */
            iload 4 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* entry */
            aload 2 /* value */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            iload 3 /* weight */
            invokevirtual com.google.common.cache.LocalCache$Strength.referenceValue:(Lcom/google/common/cache/LocalCache$Segment;Lcom/google/common/cache/ReferenceEntry;Ljava/lang/Object;I)Lcom/google/common/cache/LocalCache$ValueReference;
            areturn
        end local 4 // int hash
        end local 3 // int weight
        end local 2 // java.lang.Object value
        end local 1 // com.google.common.cache.ReferenceEntry entry
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    2     1   entry  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            0    2     2   value  TV;
            0    2     3  weight  I
            1    2     4    hash  I
    Signature: (Lcom/google/common/cache/ReferenceEntry<TK;TV;>;TV;I)Lcom/google/common/cache/LocalCache$ValueReference<TK;TV;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.VisibleForTesting()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        com.google.common.annotations.VisibleForTesting()
    MethodParameters:
        Name  Flags
      entry   
      value   
      weight  

  int hash(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
         0: .line 1696
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.keyEquivalence:Lcom/google/common/base/Equivalence;
            aload 1 /* key */
            invokevirtual com.google.common.base.Equivalence.hash:(Ljava/lang/Object;)I
            istore 2 /* h */
        start local 2 // int h
         1: .line 1697
            iload 2 /* h */
            invokestatic com.google.common.cache.LocalCache.rehash:(I)I
            ireturn
        end local 2 // int h
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    2     1   key  Ljava/lang/Object;
            1    2     2     h  I
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      key   

  void reclaimValue(com.google.common.cache.LocalCache$ValueReference<K, V>);
    descriptor: (Lcom/google/common/cache/LocalCache$ValueReference;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // com.google.common.cache.LocalCache$ValueReference valueReference
         0: .line 1701
            aload 1 /* valueReference */
            invokeinterface com.google.common.cache.LocalCache$ValueReference.getEntry:()Lcom/google/common/cache/ReferenceEntry;
            astore 2 /* entry */
        start local 2 // com.google.common.cache.ReferenceEntry entry
         1: .line 1702
            aload 2 /* entry */
            invokeinterface com.google.common.cache.ReferenceEntry.getHash:()I
            istore 3 /* hash */
        start local 3 // int hash
         2: .line 1703
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 2 /* entry */
            invokeinterface com.google.common.cache.ReferenceEntry.getKey:()Ljava/lang/Object;
            iload 3 /* hash */
            aload 1 /* valueReference */
            invokevirtual com.google.common.cache.LocalCache$Segment.reclaimValue:(Ljava/lang/Object;ILcom/google/common/cache/LocalCache$ValueReference;)Z
            pop
         3: .line 1704
            return
        end local 3 // int hash
        end local 2 // com.google.common.cache.ReferenceEntry entry
        end local 1 // com.google.common.cache.LocalCache$ValueReference valueReference
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1  valueReference  Lcom/google/common/cache/LocalCache$ValueReference<TK;TV;>;
            1    4     2           entry  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            2    4     3            hash  I
    Signature: (Lcom/google/common/cache/LocalCache$ValueReference<TK;TV;>;)V
    MethodParameters:
                Name  Flags
      valueReference  

  void reclaimKey(com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Lcom/google/common/cache/ReferenceEntry;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // com.google.common.cache.ReferenceEntry entry
         0: .line 1707
            aload 1 /* entry */
            invokeinterface com.google.common.cache.ReferenceEntry.getHash:()I
            istore 2 /* hash */
        start local 2 // int hash
         1: .line 1708
            aload 0 /* this */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* entry */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache$Segment.reclaimKey:(Lcom/google/common/cache/ReferenceEntry;I)Z
            pop
         2: .line 1709
            return
        end local 2 // int hash
        end local 1 // com.google.common.cache.ReferenceEntry entry
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    3     1  entry  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            1    3     2   hash  I
    Signature: (Lcom/google/common/cache/ReferenceEntry<TK;TV;>;)V
    MethodParameters:
       Name  Flags
      entry  

  boolean isLive(com.google.common.cache.ReferenceEntry<K, V>, );
    descriptor: (Lcom/google/common/cache/ReferenceEntry;J)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // com.google.common.cache.ReferenceEntry entry
        start local 2 // long now
         0: .line 1717
            aload 0 /* this */
            aload 1 /* entry */
            invokeinterface com.google.common.cache.ReferenceEntry.getHash:()I
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* entry */
            lload 2 /* now */
            invokevirtual com.google.common.cache.LocalCache$Segment.getLiveValue:(Lcom/google/common/cache/ReferenceEntry;J)Ljava/lang/Object;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // long now
        end local 1 // com.google.common.cache.ReferenceEntry entry
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    2     1  entry  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            0    2     2    now  J
    Signature: (Lcom/google/common/cache/ReferenceEntry<TK;TV;>;J)Z
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.VisibleForTesting()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        com.google.common.annotations.VisibleForTesting()
    MethodParameters:
       Name  Flags
      entry  
      now    

  com.google.common.cache.LocalCache$Segment<K, V> segmentFor(int);
    descriptor: (I)Lcom/google/common/cache/LocalCache$Segment;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // int hash
         0: .line 1728
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            iload 1 /* hash */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segmentShift:I
            iushr
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segmentMask:I
            iand
            aaload
            areturn
        end local 1 // int hash
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    1     1  hash  I
    Signature: (I)Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;
    MethodParameters:
      Name  Flags
      hash  

  com.google.common.cache.LocalCache$Segment<K, V> createSegment(int, long, com.google.common.cache.AbstractCache$StatsCounter);
    descriptor: (IJLcom/google/common/cache/AbstractCache$StatsCounter;)Lcom/google/common/cache/LocalCache$Segment;
    flags: (0x0000) 
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // int initialCapacity
        start local 2 // long maxSegmentWeight
        start local 4 // com.google.common.cache.AbstractCache$StatsCounter statsCounter
         0: .line 1733
            new com.google.common.cache.LocalCache$Segment
            dup
            aload 0 /* this */
            iload 1 /* initialCapacity */
            lload 2 /* maxSegmentWeight */
            aload 4 /* statsCounter */
            invokespecial com.google.common.cache.LocalCache$Segment.<init>:(Lcom/google/common/cache/LocalCache;IJLcom/google/common/cache/AbstractCache$StatsCounter;)V
            areturn
        end local 4 // com.google.common.cache.AbstractCache$StatsCounter statsCounter
        end local 2 // long maxSegmentWeight
        end local 1 // int initialCapacity
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    1     0              this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    1     1   initialCapacity  I
            0    1     2  maxSegmentWeight  J
            0    1     4      statsCounter  Lcom/google/common/cache/AbstractCache$StatsCounter;
    Signature: (IJLcom/google/common/cache/AbstractCache$StatsCounter;)Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;
    MethodParameters:
                  Name  Flags
      initialCapacity   
      maxSegmentWeight  
      statsCounter      

  V getLiveValue(com.google.common.cache.ReferenceEntry<K, V>, );
    descriptor: (Lcom/google/common/cache/ReferenceEntry;J)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // com.google.common.cache.ReferenceEntry entry
        start local 2 // long now
         0: .line 1744
            aload 1 /* entry */
            invokeinterface com.google.common.cache.ReferenceEntry.getKey:()Ljava/lang/Object;
            ifnonnull 2
         1: .line 1745
            aconst_null
            areturn
         2: .line 1747
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            invokeinterface com.google.common.cache.ReferenceEntry.getValueReference:()Lcom/google/common/cache/LocalCache$ValueReference;
            invokeinterface com.google.common.cache.LocalCache$ValueReference.get:()Ljava/lang/Object;
            astore 4 /* value */
        start local 4 // java.lang.Object value
         3: .line 1748
            aload 4 /* value */
            ifnonnull 5
         4: .line 1749
            aconst_null
            areturn
         5: .line 1752
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 1 /* entry */
            lload 2 /* now */
            invokevirtual com.google.common.cache.LocalCache.isExpired:(Lcom/google/common/cache/ReferenceEntry;J)Z
            ifeq 7
         6: .line 1753
            aconst_null
            areturn
         7: .line 1755
      StackMap locals:
      StackMap stack:
            aload 4 /* value */
            areturn
        end local 4 // java.lang.Object value
        end local 2 // long now
        end local 1 // com.google.common.cache.ReferenceEntry entry
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    8     1  entry  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            0    8     2    now  J
            3    8     4  value  TV;
    Signature: (Lcom/google/common/cache/ReferenceEntry<TK;TV;>;J)TV;
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      entry  
      now    

  boolean isExpired(com.google.common.cache.ReferenceEntry<K, V>, );
    descriptor: (Lcom/google/common/cache/ReferenceEntry;J)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // com.google.common.cache.ReferenceEntry entry
        start local 2 // long now
         0: .line 1762
            aload 1 /* entry */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 1763
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.expiresAfterAccess:()Z
            ifeq 3
            lload 2 /* now */
            aload 1 /* entry */
            invokeinterface com.google.common.cache.ReferenceEntry.getAccessTime:()J
            lsub
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.expireAfterAccessNanos:J
            lcmp
            iflt 3
         2: .line 1764
            iconst_1
            ireturn
         3: .line 1766
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.expiresAfterWrite:()Z
            ifeq 5
            lload 2 /* now */
            aload 1 /* entry */
            invokeinterface com.google.common.cache.ReferenceEntry.getWriteTime:()J
            lsub
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.expireAfterWriteNanos:J
            lcmp
            iflt 5
         4: .line 1767
            iconst_1
            ireturn
         5: .line 1769
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // long now
        end local 1 // com.google.common.cache.ReferenceEntry entry
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    6     1  entry  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            0    6     2    now  J
    Signature: (Lcom/google/common/cache/ReferenceEntry<TK;TV;>;J)Z
    MethodParameters:
       Name  Flags
      entry  
      now    

  static <K, V> void connectAccessOrder(com.google.common.cache.ReferenceEntry<K, V>, com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Lcom/google/common/cache/ReferenceEntry;Lcom/google/common/cache/ReferenceEntry;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.cache.ReferenceEntry previous
        start local 1 // com.google.common.cache.ReferenceEntry next
         0: .line 1776
            aload 0 /* previous */
            aload 1 /* next */
            invokeinterface com.google.common.cache.ReferenceEntry.setNextInAccessQueue:(Lcom/google/common/cache/ReferenceEntry;)V
         1: .line 1777
            aload 1 /* next */
            aload 0 /* previous */
            invokeinterface com.google.common.cache.ReferenceEntry.setPreviousInAccessQueue:(Lcom/google/common/cache/ReferenceEntry;)V
         2: .line 1778
            return
        end local 1 // com.google.common.cache.ReferenceEntry next
        end local 0 // com.google.common.cache.ReferenceEntry previous
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  previous  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            0    3     1      next  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/cache/ReferenceEntry<TK;TV;>;Lcom/google/common/cache/ReferenceEntry<TK;TV;>;)V
    MethodParameters:
          Name  Flags
      previous  
      next      

  static <K, V> void nullifyAccessOrder(com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Lcom/google/common/cache/ReferenceEntry;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.google.common.cache.ReferenceEntry nulled
         0: .line 1782
            invokestatic com.google.common.cache.LocalCache.nullEntry:()Lcom/google/common/cache/ReferenceEntry;
            astore 1 /* nullEntry */
        start local 1 // com.google.common.cache.ReferenceEntry nullEntry
         1: .line 1783
            aload 0 /* nulled */
            aload 1 /* nullEntry */
            invokeinterface com.google.common.cache.ReferenceEntry.setNextInAccessQueue:(Lcom/google/common/cache/ReferenceEntry;)V
         2: .line 1784
            aload 0 /* nulled */
            aload 1 /* nullEntry */
            invokeinterface com.google.common.cache.ReferenceEntry.setPreviousInAccessQueue:(Lcom/google/common/cache/ReferenceEntry;)V
         3: .line 1785
            return
        end local 1 // com.google.common.cache.ReferenceEntry nullEntry
        end local 0 // com.google.common.cache.ReferenceEntry nulled
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0     nulled  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            1    4     1  nullEntry  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/cache/ReferenceEntry<TK;TV;>;)V
    MethodParameters:
        Name  Flags
      nulled  

  static <K, V> void connectWriteOrder(com.google.common.cache.ReferenceEntry<K, V>, com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Lcom/google/common/cache/ReferenceEntry;Lcom/google/common/cache/ReferenceEntry;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.cache.ReferenceEntry previous
        start local 1 // com.google.common.cache.ReferenceEntry next
         0: .line 1789
            aload 0 /* previous */
            aload 1 /* next */
            invokeinterface com.google.common.cache.ReferenceEntry.setNextInWriteQueue:(Lcom/google/common/cache/ReferenceEntry;)V
         1: .line 1790
            aload 1 /* next */
            aload 0 /* previous */
            invokeinterface com.google.common.cache.ReferenceEntry.setPreviousInWriteQueue:(Lcom/google/common/cache/ReferenceEntry;)V
         2: .line 1791
            return
        end local 1 // com.google.common.cache.ReferenceEntry next
        end local 0 // com.google.common.cache.ReferenceEntry previous
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  previous  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            0    3     1      next  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/cache/ReferenceEntry<TK;TV;>;Lcom/google/common/cache/ReferenceEntry<TK;TV;>;)V
    MethodParameters:
          Name  Flags
      previous  
      next      

  static <K, V> void nullifyWriteOrder(com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Lcom/google/common/cache/ReferenceEntry;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.google.common.cache.ReferenceEntry nulled
         0: .line 1795
            invokestatic com.google.common.cache.LocalCache.nullEntry:()Lcom/google/common/cache/ReferenceEntry;
            astore 1 /* nullEntry */
        start local 1 // com.google.common.cache.ReferenceEntry nullEntry
         1: .line 1796
            aload 0 /* nulled */
            aload 1 /* nullEntry */
            invokeinterface com.google.common.cache.ReferenceEntry.setNextInWriteQueue:(Lcom/google/common/cache/ReferenceEntry;)V
         2: .line 1797
            aload 0 /* nulled */
            aload 1 /* nullEntry */
            invokeinterface com.google.common.cache.ReferenceEntry.setPreviousInWriteQueue:(Lcom/google/common/cache/ReferenceEntry;)V
         3: .line 1798
            return
        end local 1 // com.google.common.cache.ReferenceEntry nullEntry
        end local 0 // com.google.common.cache.ReferenceEntry nulled
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0     nulled  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
            1    4     1  nullEntry  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Lcom/google/common/cache/ReferenceEntry<TK;TV;>;)V
    MethodParameters:
        Name  Flags
      nulled  

  void processPendingNotifications();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 1807
            goto 5
        start local 1 // com.google.common.cache.RemovalNotification notification
         1: .line 1809
      StackMap locals: com.google.common.cache.RemovalNotification
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.removalListener:Lcom/google/common/cache/RemovalListener;
            aload 1 /* notification */
            invokeinterface com.google.common.cache.RemovalListener.onRemoval:(Lcom/google/common/cache/RemovalNotification;)V
         2: .line 1810
            goto 5
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 2 /* e */
        start local 2 // java.lang.Throwable e
         4: .line 1811
            getstatic com.google.common.cache.LocalCache.logger:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.WARNING:Ljava/util/logging/Level;
            ldc "Exception thrown by removal listener"
            aload 2 /* e */
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 2 // java.lang.Throwable e
        end local 1 // com.google.common.cache.RemovalNotification notification
         5: .line 1807
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.removalNotificationQueue:Ljava/util/Queue;
            invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
            checkcast com.google.common.cache.RemovalNotification
            dup
            astore 1 /* notification */
        start local 1 // com.google.common.cache.RemovalNotification notification
         6: ifnonnull 1
         7: .line 1814
            return
        end local 1 // com.google.common.cache.RemovalNotification notification
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            1    5     1  notification  Lcom/google/common/cache/RemovalNotification<TK;TV;>;
            6    8     1  notification  Lcom/google/common/cache/RemovalNotification<TK;TV;>;
            4    5     2             e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.Throwable

  final com.google.common.cache.LocalCache$Segment<K, V>[] newSegmentArray(int);
    descriptor: (I)[Lcom/google/common/cache/LocalCache$Segment;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // int ssize
         0: .line 1818
            iload 1 /* ssize */
            anewarray com.google.common.cache.LocalCache$Segment
            areturn
        end local 1 // int ssize
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    1     1  ssize  I
    Signature: (I)[Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;
    MethodParameters:
       Name  Flags
      ssize  

  public void cleanUp();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 3887
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 4
      StackMap locals: com.google.common.cache.LocalCache top int int com.google.common.cache.LocalCache$Segment[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* segment */
        start local 1 // com.google.common.cache.LocalCache$Segment segment
         2: .line 3888
            aload 1 /* segment */
            invokevirtual com.google.common.cache.LocalCache$Segment.cleanUp:()V
        end local 1 // com.google.common.cache.LocalCache$Segment segment
         3: .line 3887
            iinc 2 1
      StackMap locals:
      StackMap stack:
         4: iload 2
            iload 3
            if_icmplt 1
         5: .line 3890
            return
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            2    3     1  segment  Lcom/google/common/cache/LocalCache$Segment<**>;

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 3903
            lconst_0
            lstore 1 /* sum */
        start local 1 // long sum
         1: .line 3904
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            astore 3 /* segments */
        start local 3 // com.google.common.cache.LocalCache$Segment[] segments
         2: .line 3905
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 8
         4: .line 3906
      StackMap locals: long com.google.common.cache.LocalCache$Segment[] int
      StackMap stack:
            aload 3 /* segments */
            iload 4 /* i */
            aaload
            getfield com.google.common.cache.LocalCache$Segment.count:I
            ifeq 6
         5: .line 3907
            iconst_0
            ireturn
         6: .line 3909
      StackMap locals:
      StackMap stack:
            lload 1 /* sum */
            aload 3 /* segments */
            iload 4 /* i */
            aaload
            getfield com.google.common.cache.LocalCache$Segment.modCount:I
            i2l
            ladd
            lstore 1 /* sum */
         7: .line 3905
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            aload 3 /* segments */
            arraylength
            if_icmplt 4
        end local 4 // int i
         9: .line 3912
            lload 1 /* sum */
            lconst_0
            lcmp
            ifeq 19
        10: .line 3913
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        11: goto 16
        12: .line 3914
      StackMap locals:
      StackMap stack:
            aload 3 /* segments */
            iload 4 /* i */
            aaload
            getfield com.google.common.cache.LocalCache$Segment.count:I
            ifeq 14
        13: .line 3915
            iconst_0
            ireturn
        14: .line 3917
      StackMap locals:
      StackMap stack:
            lload 1 /* sum */
            aload 3 /* segments */
            iload 4 /* i */
            aaload
            getfield com.google.common.cache.LocalCache$Segment.modCount:I
            i2l
            lsub
            lstore 1 /* sum */
        15: .line 3913
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 4 /* i */
            aload 3 /* segments */
            arraylength
            if_icmplt 12
        end local 4 // int i
        17: .line 3919
            lload 1 /* sum */
            lconst_0
            lcmp
            ifeq 19
        18: .line 3920
            iconst_0
            ireturn
        19: .line 3923
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // com.google.common.cache.LocalCache$Segment[] segments
        end local 1 // long sum
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   20     0      this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            1   20     1       sum  J
            2   20     3  segments  [Lcom/google/common/cache/LocalCache$Segment;
            3    9     4         i  I
           11   17     4         i  I

  long longSize();
    descriptor: ()J
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 3927
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            astore 1 /* segments */
        start local 1 // com.google.common.cache.LocalCache$Segment[] segments
         1: .line 3928
            lconst_0
            lstore 2 /* sum */
        start local 2 // long sum
         2: .line 3929
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 6
         4: .line 3930
      StackMap locals: com.google.common.cache.LocalCache$Segment[] long int
      StackMap stack:
            lload 2 /* sum */
            iconst_0
            aload 1 /* segments */
            iload 4 /* i */
            aaload
            getfield com.google.common.cache.LocalCache$Segment.count:I
            invokestatic java.lang.Math.max:(II)I
            i2l
            ladd
            lstore 2 /* sum */
         5: .line 3929
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            aload 1 /* segments */
            arraylength
            if_icmplt 4
        end local 4 // int i
         7: .line 3932
            lload 2 /* sum */
            lreturn
        end local 2 // long sum
        end local 1 // com.google.common.cache.LocalCache$Segment[] segments
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            1    8     1  segments  [Lcom/google/common/cache/LocalCache$Segment;
            2    8     2       sum  J
            3    7     4         i  I

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 3937
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.longSize:()J
            invokestatic com.google.common.primitives.Ints.saturatedCast:(J)I
            ireturn
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;

  public V get();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
         0: .line 3942
            aload 1 /* key */
            ifnonnull 2
         1: .line 3943
            aconst_null
            areturn
         2: .line 3945
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 2 /* hash */
        start local 2 // int hash
         3: .line 3946
            aload 0 /* this */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache$Segment.get:(Ljava/lang/Object;I)Ljava/lang/Object;
            areturn
        end local 2 // int hash
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1   key  Ljava/lang/Object;
            3    4     2  hash  I
    Signature: (Ljava/lang/Object;)TV;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
      METHOD_RETURN
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      key   

  V get(K, com.google.common.cache.CacheLoader<? super K, V>);
    descriptor: (Ljava/lang/Object;Lcom/google/common/cache/CacheLoader;)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // com.google.common.cache.CacheLoader loader
         0: .line 3950
            aload 0 /* this */
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 3 /* hash */
        start local 3 // int hash
         1: .line 3951
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 3 /* hash */
            aload 2 /* loader */
            invokevirtual com.google.common.cache.LocalCache$Segment.get:(Ljava/lang/Object;ILcom/google/common/cache/CacheLoader;)Ljava/lang/Object;
            areturn
        end local 3 // int hash
        end local 2 // com.google.common.cache.CacheLoader loader
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    2     1     key  TK;
            0    2     2  loader  Lcom/google/common/cache/CacheLoader<-TK;TV;>;
            1    2     3    hash  I
    Exceptions:
      throws java.util.concurrent.ExecutionException
    Signature: (TK;Lcom/google/common/cache/CacheLoader<-TK;TV;>;)TV;
    MethodParameters:
        Name  Flags
      key     
      loader  

  public V getIfPresent();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
         0: .line 3955
            aload 0 /* this */
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 2 /* hash */
        start local 2 // int hash
         1: .line 3956
            aload 0 /* this */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache$Segment.get:(Ljava/lang/Object;I)Ljava/lang/Object;
            astore 3 /* value */
        start local 3 // java.lang.Object value
         2: .line 3957
            aload 3 /* value */
            ifnonnull 5
         3: .line 3958
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            iconst_1
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordMisses:(I)V
         4: .line 3959
            goto 6
         5: .line 3960
      StackMap locals: int java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            iconst_1
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordHits:(I)V
         6: .line 3962
      StackMap locals:
      StackMap stack:
            aload 3 /* value */
            areturn
        end local 3 // java.lang.Object value
        end local 2 // int hash
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    7     1    key  Ljava/lang/Object;
            1    7     2   hash  I
            2    7     3  value  TV;
    Signature: (Ljava/lang/Object;)TV;
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      key   

  public V getOrDefault(, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object defaultValue
         0: .line 3968
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* result */
        start local 3 // java.lang.Object result
         1: .line 3969
            aload 3 /* result */
            ifnull 2
            aload 3 /* result */
            goto 3
      StackMap locals: java.lang.Object
      StackMap stack:
         2: aload 2 /* defaultValue */
      StackMap locals:
      StackMap stack: java.lang.Object
         3: areturn
        end local 3 // java.lang.Object result
        end local 2 // java.lang.Object defaultValue
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1           key  Ljava/lang/Object;
            0    4     2  defaultValue  TV;
            1    4     3        result  TV;
    Signature: (Ljava/lang/Object;TV;)TV;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
      METHOD_RETURN
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
              Name  Flags
      key           
      defaultValue  

  V getOrLoad();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
         0: .line 3973
            aload 0 /* this */
            aload 1 /* key */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.defaultLoader:Lcom/google/common/cache/CacheLoader;
            invokevirtual com.google.common.cache.LocalCache.get:(Ljava/lang/Object;Lcom/google/common/cache/CacheLoader;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    1     1   key  TK;
    Exceptions:
      throws java.util.concurrent.ExecutionException
    Signature: (TK;)TV;
    MethodParameters:
      Name  Flags
      key   

  com.google.common.collect.ImmutableMap<K, V> getAllPresent(java.lang.Iterable<?>);
    descriptor: (Ljava/lang/Iterable;)Lcom/google/common/collect/ImmutableMap;
    flags: (0x0000) 
    Code:
      stack=3, locals=9, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Iterable keys
         0: .line 3977
            iconst_0
            istore 2 /* hits */
        start local 2 // int hits
         1: .line 3978
            iconst_0
            istore 3 /* misses */
        start local 3 // int misses
         2: .line 3980
            invokestatic com.google.common.collect.Maps.newLinkedHashMap:()Ljava/util/LinkedHashMap;
            astore 4 /* result */
        start local 4 // java.util.Map result
         3: .line 3981
            aload 1 /* keys */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 6
            goto 12
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 5 /* key */
        start local 5 // java.lang.Object key
         5: .line 3982
            aload 0 /* this */
            aload 5 /* key */
            invokevirtual com.google.common.cache.LocalCache.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 7 /* value */
        start local 7 // java.lang.Object value
         6: .line 3983
            aload 7 /* value */
            ifnonnull 9
         7: .line 3984
            iinc 3 /* misses */ 1
         8: .line 3985
            goto 12
         9: .line 3988
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.lang.Object java.util.Iterator java.lang.Object
      StackMap stack:
            aload 5 /* key */
            astore 8 /* castKey */
        start local 8 // java.lang.Object castKey
        10: .line 3989
            aload 4 /* result */
            aload 8 /* castKey */
            aload 7 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 3990
            iinc 2 /* hits */ 1
        end local 8 // java.lang.Object castKey
        end local 7 // java.lang.Object value
        end local 5 // java.lang.Object key
        12: .line 3981
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        13: .line 3993
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            iload 2 /* hits */
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordHits:(I)V
        14: .line 3994
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            iload 3 /* misses */
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordMisses:(I)V
        15: .line 3995
            aload 4 /* result */
            invokestatic com.google.common.collect.ImmutableMap.copyOf:(Ljava/util/Map;)Lcom/google/common/collect/ImmutableMap;
            areturn
        end local 4 // java.util.Map result
        end local 3 // int misses
        end local 2 // int hits
        end local 1 // java.lang.Iterable keys
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0   16     1     keys  Ljava/lang/Iterable<*>;
            1   16     2     hits  I
            2   16     3   misses  I
            3   16     4   result  Ljava/util/Map<TK;TV;>;
            5   12     5      key  Ljava/lang/Object;
            6   12     7    value  TV;
           10   12     8  castKey  TK;
    Signature: (Ljava/lang/Iterable<*>;)Lcom/google/common/collect/ImmutableMap<TK;TV;>;
    MethodParameters:
      Name  Flags
      keys  

  com.google.common.collect.ImmutableMap<K, V> getAll(java.lang.Iterable<? extends K>);
    descriptor: (Ljava/lang/Iterable;)Lcom/google/common/collect/ImmutableMap;
    flags: (0x0000) 
    Code:
      stack=5, locals=12, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Iterable keys
         0: .line 3999
            iconst_0
            istore 2 /* hits */
        start local 2 // int hits
         1: .line 4000
            iconst_0
            istore 3 /* misses */
        start local 3 // int misses
         2: .line 4002
            invokestatic com.google.common.collect.Maps.newLinkedHashMap:()Ljava/util/LinkedHashMap;
            astore 4 /* result */
        start local 4 // java.util.Map result
         3: .line 4003
            invokestatic com.google.common.collect.Sets.newLinkedHashSet:()Ljava/util/LinkedHashSet;
            astore 5 /* keysToLoad */
        start local 5 // java.util.Set keysToLoad
         4: .line 4004
            aload 1 /* keys */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 7
            goto 14
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.util.Set top java.util.Iterator
      StackMap stack:
         5: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 6 /* key */
        start local 6 // java.lang.Object key
         6: .line 4005
            aload 0 /* this */
            aload 6 /* key */
            invokevirtual com.google.common.cache.LocalCache.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 8 /* value */
        start local 8 // java.lang.Object value
         7: .line 4006
            aload 4 /* result */
            aload 6 /* key */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 14
         8: .line 4007
            aload 4 /* result */
            aload 6 /* key */
            aload 8 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 4008
            aload 8 /* value */
            ifnonnull 13
        10: .line 4009
            iinc 3 /* misses */ 1
        11: .line 4010
            aload 5 /* keysToLoad */
            aload 6 /* key */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        12: .line 4011
            goto 14
        13: .line 4012
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.util.Set java.lang.Object java.util.Iterator java.lang.Object
      StackMap stack:
            iinc 2 /* hits */ 1
        end local 8 // java.lang.Object value
        end local 6 // java.lang.Object key
        14: .line 4004
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.util.Set top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        15: .line 4018
            aload 5 /* keysToLoad */
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 31
        16: .line 4020
            aload 0 /* this */
            aload 5 /* keysToLoad */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.defaultLoader:Lcom/google/common/cache/CacheLoader;
            invokevirtual com.google.common.cache.LocalCache.loadAll:(Ljava/util/Set;Lcom/google/common/cache/CacheLoader;)Ljava/util/Map;
            astore 6 /* newEntries */
        start local 6 // java.util.Map newEntries
        17: .line 4021
            aload 5 /* keysToLoad */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 23
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.util.Set java.util.Map top java.util.Iterator
      StackMap stack:
        18: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 7 /* key */
        start local 7 // java.lang.Object key
        19: .line 4022
            aload 6 /* newEntries */
            aload 7 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 9 /* value */
        start local 9 // java.lang.Object value
        20: .line 4023
            aload 9 /* value */
            ifnonnull 22
        21: .line 4024
            new com.google.common.cache.CacheLoader$InvalidCacheLoadException
            dup
            new java.lang.StringBuilder
            dup
            ldc "loadAll failed to return a value for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.google.common.cache.CacheLoader$InvalidCacheLoadException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 4026
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.util.Set java.util.Map java.lang.Object java.util.Iterator java.lang.Object
      StackMap stack:
            aload 4 /* result */
            aload 7 /* key */
            aload 9 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 9 // java.lang.Object value
        end local 7 // java.lang.Object key
        23: .line 4021
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.util.Set java.util.Map top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        end local 6 // java.util.Map newEntries
        24: .line 4028
            goto 31
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.util.Set
      StackMap stack: com.google.common.cache.CacheLoader$UnsupportedLoadingOperationException
        25: pop
        26: .line 4030
            aload 5 /* keysToLoad */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 30
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.util.Set top java.util.Iterator
      StackMap stack:
        27: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 6 /* key */
        start local 6 // java.lang.Object key
        28: .line 4031
            iinc 3 /* misses */ -1
        29: .line 4032
            aload 4 /* result */
            aload 6 /* key */
            aload 0 /* this */
            aload 6 /* key */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.defaultLoader:Lcom/google/common/cache/CacheLoader;
            invokevirtual com.google.common.cache.LocalCache.get:(Ljava/lang/Object;Lcom/google/common/cache/CacheLoader;)Ljava/lang/Object;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.lang.Object key
        30: .line 4030
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 27
        31: .line 4036
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable int int java.util.Map java.util.Set
      StackMap stack:
            aload 4 /* result */
            invokestatic com.google.common.collect.ImmutableMap.copyOf:(Ljava/util/Map;)Lcom/google/common/collect/ImmutableMap;
            astore 11
        32: .line 4038
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            iload 2 /* hits */
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordHits:(I)V
        33: .line 4039
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            iload 3 /* misses */
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordMisses:(I)V
        34: .line 4036
            aload 11
            areturn
        35: .line 4037
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 10
        36: .line 4038
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            iload 2 /* hits */
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordHits:(I)V
        37: .line 4039
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            iload 3 /* misses */
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordMisses:(I)V
        38: .line 4040
            aload 10
            athrow
        end local 5 // java.util.Set keysToLoad
        end local 4 // java.util.Map result
        end local 3 // int misses
        end local 2 // int hits
        end local 1 // java.lang.Iterable keys
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   39     0        this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0   39     1        keys  Ljava/lang/Iterable<+TK;>;
            1   39     2        hits  I
            2   39     3      misses  I
            3   39     4      result  Ljava/util/Map<TK;TV;>;
            4   39     5  keysToLoad  Ljava/util/Set<TK;>;
            6   14     6         key  TK;
            7   14     8       value  TV;
           17   24     6  newEntries  Ljava/util/Map<TK;TV;>;
           19   23     7         key  TK;
           20   23     9       value  TV;
           28   30     6         key  TK;
      Exception table:
        from    to  target  type
          16    24      25  Class com.google.common.cache.CacheLoader$UnsupportedLoadingOperationException
          15    32      35  any
    Exceptions:
      throws java.util.concurrent.ExecutionException
    Signature: (Ljava/lang/Iterable<+TK;>;)Lcom/google/common/collect/ImmutableMap<TK;TV;>;
    MethodParameters:
      Name  Flags
      keys  

  java.util.Map<K, V> loadAll(java.util.Set<? extends K>, com.google.common.cache.CacheLoader<? super K, V>);
    descriptor: (Ljava/util/Set;Lcom/google/common/cache/CacheLoader;)Ljava/util/Map;
    flags: (0x0000) 
    Code:
      stack=4, locals=11, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.util.Set keys
        start local 2 // com.google.common.cache.CacheLoader loader
         0: .line 4050
            aload 2 /* loader */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4051
            aload 1 /* keys */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 4052
            invokestatic com.google.common.base.Stopwatch.createStarted:()Lcom/google/common/base/Stopwatch;
            astore 3 /* stopwatch */
        start local 3 // com.google.common.base.Stopwatch stopwatch
         3: .line 4054
            iconst_0
            istore 5 /* success */
        start local 5 // boolean success
         4: .line 4057
            aload 2 /* loader */
            aload 1 /* keys */
            invokevirtual com.google.common.cache.CacheLoader.loadAll:(Ljava/lang/Iterable;)Ljava/util/Map;
            astore 6 /* map */
        start local 6 // java.util.Map map
         5: .line 4058
            aload 6 /* map */
            astore 4 /* result */
        start local 4 // java.util.Map result
         6: .line 4059
            iconst_1
            istore 5 /* success */
        end local 6 // java.util.Map map
         7: .line 4060
            goto 24
        end local 4 // java.util.Map result
      StackMap locals: com.google.common.cache.LocalCache java.util.Set com.google.common.cache.CacheLoader com.google.common.base.Stopwatch top int
      StackMap stack: com.google.common.cache.CacheLoader$UnsupportedLoadingOperationException
         8: astore 6 /* e */
        start local 6 // com.google.common.cache.CacheLoader$UnsupportedLoadingOperationException e
         9: .line 4061
            iconst_1
            istore 5 /* success */
        10: .line 4062
            aload 6 /* e */
            athrow
        end local 6 // com.google.common.cache.CacheLoader$UnsupportedLoadingOperationException e
        11: .line 4063
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            astore 6 /* e */
        start local 6 // java.lang.InterruptedException e
        12: .line 4064
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        13: .line 4065
            new java.util.concurrent.ExecutionException
            dup
            aload 6 /* e */
            invokespecial java.util.concurrent.ExecutionException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.lang.InterruptedException e
        14: .line 4066
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 6 /* e */
        start local 6 // java.lang.RuntimeException e
        15: .line 4067
            new com.google.common.util.concurrent.UncheckedExecutionException
            dup
            aload 6 /* e */
            invokespecial com.google.common.util.concurrent.UncheckedExecutionException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.lang.RuntimeException e
        16: .line 4068
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 6 /* e */
        start local 6 // java.lang.Exception e
        17: .line 4069
            new java.util.concurrent.ExecutionException
            dup
            aload 6 /* e */
            invokespecial java.util.concurrent.ExecutionException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.lang.Exception e
        18: .line 4070
      StackMap locals:
      StackMap stack: java.lang.Error
            astore 6 /* e */
        start local 6 // java.lang.Error e
        19: .line 4071
            new com.google.common.util.concurrent.ExecutionError
            dup
            aload 6 /* e */
            invokespecial com.google.common.util.concurrent.ExecutionError.<init>:(Ljava/lang/Error;)V
            athrow
        end local 6 // java.lang.Error e
        20: .line 4072
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 7
        21: .line 4073
            iload 5 /* success */
            ifne 23
        22: .line 4074
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            aload 3 /* stopwatch */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual com.google.common.base.Stopwatch.elapsed:(Ljava/util/concurrent/TimeUnit;)J
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordLoadException:(J)V
        23: .line 4076
      StackMap locals: com.google.common.cache.LocalCache java.util.Set com.google.common.cache.CacheLoader com.google.common.base.Stopwatch top int top java.lang.Throwable
      StackMap stack:
            aload 7
            athrow
        start local 4 // java.util.Map result
        24: .line 4073
      StackMap locals: com.google.common.cache.LocalCache java.util.Set com.google.common.cache.CacheLoader com.google.common.base.Stopwatch java.util.Map int
      StackMap stack:
            iload 5 /* success */
            ifne 26
        25: .line 4074
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            aload 3 /* stopwatch */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual com.google.common.base.Stopwatch.elapsed:(Ljava/util/concurrent/TimeUnit;)J
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordLoadException:(J)V
        26: .line 4078
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            ifnonnull 29
        27: .line 4079
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            aload 3 /* stopwatch */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual com.google.common.base.Stopwatch.elapsed:(Ljava/util/concurrent/TimeUnit;)J
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordLoadException:(J)V
        28: .line 4080
            new com.google.common.cache.CacheLoader$InvalidCacheLoadException
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 2 /* loader */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " returned null map from loadAll"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.google.common.cache.CacheLoader$InvalidCacheLoadException.<init>:(Ljava/lang/String;)V
            athrow
        29: .line 4083
      StackMap locals:
      StackMap stack:
            aload 3 /* stopwatch */
            invokevirtual com.google.common.base.Stopwatch.stop:()Lcom/google/common/base/Stopwatch;
            pop
        30: .line 4085
            iconst_0
            istore 6 /* nullsPresent */
        start local 6 // boolean nullsPresent
        31: .line 4086
            aload 4 /* result */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 39
      StackMap locals: com.google.common.cache.LocalCache java.util.Set com.google.common.cache.CacheLoader com.google.common.base.Stopwatch java.util.Map int int top java.util.Iterator
      StackMap stack:
        32: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 7 /* entry */
        start local 7 // java.util.Map$Entry entry
        33: .line 4087
            aload 7 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            astore 9 /* key */
        start local 9 // java.lang.Object key
        34: .line 4088
            aload 7 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            astore 10 /* value */
        start local 10 // java.lang.Object value
        35: .line 4089
            aload 9 /* key */
            ifnull 36
            aload 10 /* value */
            ifnonnull 38
        36: .line 4091
      StackMap locals: com.google.common.cache.LocalCache java.util.Set com.google.common.cache.CacheLoader com.google.common.base.Stopwatch java.util.Map int int java.util.Map$Entry java.util.Iterator java.lang.Object java.lang.Object
      StackMap stack:
            iconst_1
            istore 6 /* nullsPresent */
        37: .line 4092
            goto 39
        38: .line 4093
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 9 /* key */
            aload 10 /* value */
            invokevirtual com.google.common.cache.LocalCache.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 10 // java.lang.Object value
        end local 9 // java.lang.Object key
        end local 7 // java.util.Map$Entry entry
        39: .line 4086
      StackMap locals: com.google.common.cache.LocalCache java.util.Set com.google.common.cache.CacheLoader com.google.common.base.Stopwatch java.util.Map int int top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 32
        40: .line 4097
            iload 6 /* nullsPresent */
            ifeq 43
        41: .line 4098
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            aload 3 /* stopwatch */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual com.google.common.base.Stopwatch.elapsed:(Ljava/util/concurrent/TimeUnit;)J
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordLoadException:(J)V
        42: .line 4099
            new com.google.common.cache.CacheLoader$InvalidCacheLoadException
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 2 /* loader */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " returned null keys or values from loadAll"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.google.common.cache.CacheLoader$InvalidCacheLoadException.<init>:(Ljava/lang/String;)V
            athrow
        43: .line 4103
      StackMap locals: com.google.common.cache.LocalCache java.util.Set com.google.common.cache.CacheLoader com.google.common.base.Stopwatch java.util.Map int int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.globalStatsCounter:Lcom/google/common/cache/AbstractCache$StatsCounter;
            aload 3 /* stopwatch */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual com.google.common.base.Stopwatch.elapsed:(Ljava/util/concurrent/TimeUnit;)J
            invokeinterface com.google.common.cache.AbstractCache$StatsCounter.recordLoadSuccess:(J)V
        44: .line 4104
            aload 4 /* result */
            areturn
        end local 6 // boolean nullsPresent
        end local 5 // boolean success
        end local 4 // java.util.Map result
        end local 3 // com.google.common.base.Stopwatch stopwatch
        end local 2 // com.google.common.cache.CacheLoader loader
        end local 1 // java.util.Set keys
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   45     0          this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0   45     1          keys  Ljava/util/Set<+TK;>;
            0   45     2        loader  Lcom/google/common/cache/CacheLoader<-TK;TV;>;
            3   45     3     stopwatch  Lcom/google/common/base/Stopwatch;
            6    8     4        result  Ljava/util/Map<TK;TV;>;
           24   45     4        result  Ljava/util/Map<TK;TV;>;
            4   45     5       success  Z
            5    7     6           map  Ljava/util/Map<TK;TV;>;
            9   11     6             e  Lcom/google/common/cache/CacheLoader$UnsupportedLoadingOperationException;
           12   14     6             e  Ljava/lang/InterruptedException;
           15   16     6             e  Ljava/lang/RuntimeException;
           17   18     6             e  Ljava/lang/Exception;
           19   20     6             e  Ljava/lang/Error;
           31   45     6  nullsPresent  Z
           33   39     7         entry  Ljava/util/Map$Entry<TK;TV;>;
           34   39     9           key  TK;
           35   39    10         value  TV;
      Exception table:
        from    to  target  type
           4     7       8  Class com.google.common.cache.CacheLoader$UnsupportedLoadingOperationException
           4     7      11  Class java.lang.InterruptedException
           4     7      14  Class java.lang.RuntimeException
           4     7      16  Class java.lang.Exception
           4     7      18  Class java.lang.Error
           4    20      20  any
    Exceptions:
      throws java.util.concurrent.ExecutionException
    Signature: (Ljava/util/Set<+TK;>;Lcom/google/common/cache/CacheLoader<-TK;TV;>;)Ljava/util/Map<TK;TV;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
        Name  Flags
      keys    
      loader  

  com.google.common.cache.ReferenceEntry<K, V> getEntry();
    descriptor: (Ljava/lang/Object;)Lcom/google/common/cache/ReferenceEntry;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
         0: .line 4113
            aload 1 /* key */
            ifnonnull 2
         1: .line 4114
            aconst_null
            areturn
         2: .line 4116
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 2 /* hash */
        start local 2 // int hash
         3: .line 4117
            aload 0 /* this */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache$Segment.getEntry:(Ljava/lang/Object;I)Lcom/google/common/cache/ReferenceEntry;
            areturn
        end local 2 // int hash
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1   key  Ljava/lang/Object;
            3    4     2  hash  I
    Signature: (Ljava/lang/Object;)Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      key   

  void refresh();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
         0: .line 4121
            aload 0 /* this */
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 2 /* hash */
        start local 2 // int hash
         1: .line 4122
            aload 0 /* this */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 2 /* hash */
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.defaultLoader:Lcom/google/common/cache/CacheLoader;
            iconst_0
            invokevirtual com.google.common.cache.LocalCache$Segment.refresh:(Ljava/lang/Object;ILcom/google/common/cache/CacheLoader;Z)Ljava/lang/Object;
            pop
         2: .line 4123
            return
        end local 2 // int hash
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    3     1   key  TK;
            1    3     2  hash  I
    Signature: (TK;)V
    MethodParameters:
      Name  Flags
      key   

  public boolean containsKey(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
         0: .line 4128
            aload 1 /* key */
            ifnonnull 2
         1: .line 4129
            iconst_0
            ireturn
         2: .line 4131
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 2 /* hash */
        start local 2 // int hash
         3: .line 4132
            aload 0 /* this */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache$Segment.containsKey:(Ljava/lang/Object;I)Z
            ireturn
        end local 2 // int hash
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1   key  Ljava/lang/Object;
            3    4     2  hash  I
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      key   

  public boolean containsValue(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=18, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object value
         0: .line 4138
            aload 1 /* value */
            ifnonnull 2
         1: .line 4139
            iconst_0
            ireturn
         2: .line 4147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.ticker:Lcom/google/common/base/Ticker;
            invokevirtual com.google.common.base.Ticker.read:()J
            lstore 2 /* now */
        start local 2 // long now
         3: .line 4148
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            astore 4 /* segments */
        start local 4 // com.google.common.cache.LocalCache$Segment[] segments
         4: .line 4149
            ldc -1
            lstore 5 /* last */
        start local 5 // long last
         5: .line 4150
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         6: goto 30
         7: .line 4151
      StackMap locals: com.google.common.cache.LocalCache java.lang.Object long com.google.common.cache.LocalCache$Segment[] long int
      StackMap stack:
            lconst_0
            lstore 8 /* sum */
        start local 8 // long sum
         8: .line 4152
            aload 4 /* segments */
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 25
      StackMap locals: com.google.common.cache.LocalCache java.lang.Object long com.google.common.cache.LocalCache$Segment[] long int long top int int com.google.common.cache.LocalCache$Segment[]
      StackMap stack:
         9: aload 13
            iload 11
            aaload
            astore 10 /* segment */
        start local 10 // com.google.common.cache.LocalCache$Segment segment
        10: .line 4154
            aload 10 /* segment */
            getfield com.google.common.cache.LocalCache$Segment.count:I
            pop
        11: .line 4156
            aload 10 /* segment */
            getfield com.google.common.cache.LocalCache$Segment.table:Ljava/util/concurrent/atomic/AtomicReferenceArray;
            astore 14 /* table */
        start local 14 // java.util.concurrent.atomic.AtomicReferenceArray table
        12: .line 4157
            iconst_0
            istore 15 /* j */
        start local 15 // int j
        13: goto 22
        14: .line 4158
      StackMap locals: com.google.common.cache.LocalCache java.lang.Object long com.google.common.cache.LocalCache$Segment[] long int long com.google.common.cache.LocalCache$Segment int int com.google.common.cache.LocalCache$Segment[] java.util.concurrent.atomic.AtomicReferenceArray int
      StackMap stack:
            aload 14 /* table */
            iload 15 /* j */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceArray.get:(I)Ljava/lang/Object;
            checkcast com.google.common.cache.ReferenceEntry
            astore 16 /* e */
        start local 16 // com.google.common.cache.ReferenceEntry e
        15: goto 20
        16: .line 4159
      StackMap locals: com.google.common.cache.ReferenceEntry
      StackMap stack:
            aload 10 /* segment */
            aload 16 /* e */
            lload 2 /* now */
            invokevirtual com.google.common.cache.LocalCache$Segment.getLiveValue:(Lcom/google/common/cache/ReferenceEntry;J)Ljava/lang/Object;
            astore 17 /* v */
        start local 17 // java.lang.Object v
        17: .line 4160
            aload 17 /* v */
            ifnull 19
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.valueEquivalence:Lcom/google/common/base/Equivalence;
            aload 1 /* value */
            aload 17 /* v */
            invokevirtual com.google.common.base.Equivalence.equivalent:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 19
        18: .line 4161
            iconst_1
            ireturn
        end local 17 // java.lang.Object v
        19: .line 4158
      StackMap locals:
      StackMap stack:
            aload 16 /* e */
            invokeinterface com.google.common.cache.ReferenceEntry.getNext:()Lcom/google/common/cache/ReferenceEntry;
            astore 16 /* e */
      StackMap locals:
      StackMap stack:
        20: aload 16 /* e */
            ifnonnull 16
        end local 16 // com.google.common.cache.ReferenceEntry e
        21: .line 4157
            iinc 15 /* j */ 1
      StackMap locals:
      StackMap stack:
        22: iload 15 /* j */
            aload 14 /* table */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceArray.length:()I
            if_icmplt 14
        end local 15 // int j
        23: .line 4165
            lload 8 /* sum */
            aload 10 /* segment */
            getfield com.google.common.cache.LocalCache$Segment.modCount:I
            i2l
            ladd
            lstore 8 /* sum */
        end local 14 // java.util.concurrent.atomic.AtomicReferenceArray table
        end local 10 // com.google.common.cache.LocalCache$Segment segment
        24: .line 4152
            iinc 11 1
      StackMap locals: com.google.common.cache.LocalCache java.lang.Object long com.google.common.cache.LocalCache$Segment[] long int long top int int com.google.common.cache.LocalCache$Segment[]
      StackMap stack:
        25: iload 11
            iload 12
            if_icmplt 9
        26: .line 4167
            lload 8 /* sum */
            lload 5 /* last */
            lcmp
            ifne 28
        27: .line 4168
            goto 31
        28: .line 4170
      StackMap locals: com.google.common.cache.LocalCache java.lang.Object long com.google.common.cache.LocalCache$Segment[] long int long
      StackMap stack:
            lload 8 /* sum */
            lstore 5 /* last */
        end local 8 // long sum
        29: .line 4150
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 7 /* i */
            iconst_3
            if_icmplt 7
        end local 7 // int i
        31: .line 4172
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // long last
        end local 4 // com.google.common.cache.LocalCache$Segment[] segments
        end local 2 // long now
        end local 1 // java.lang.Object value
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   32     0      this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0   32     1     value  Ljava/lang/Object;
            3   32     2       now  J
            4   32     4  segments  [Lcom/google/common/cache/LocalCache$Segment;
            5   32     5      last  J
            6   31     7         i  I
            8   29     8       sum  J
           10   24    10   segment  Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;
           12   24    14     table  Ljava/util/concurrent/atomic/AtomicReferenceArray<Lcom/google/common/cache/ReferenceEntry<TK;TV;>;>;
           13   23    15         j  I
           15   21    16         e  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
           17   19    17         v  TV;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      value  

  public V put(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 4177
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4178
            aload 2 /* value */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 4179
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 3 /* hash */
        start local 3 // int hash
         3: .line 4180
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 3 /* hash */
            aload 2 /* value */
            iconst_0
            invokevirtual com.google.common.cache.LocalCache$Segment.put:(Ljava/lang/Object;ILjava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 3 // int hash
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1    key  TK;
            0    4     2  value  TV;
            3    4     3   hash  I
    Signature: (TK;TV;)TV;
    MethodParameters:
       Name  Flags
      key    
      value  

  public V putIfAbsent(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 4185
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4186
            aload 2 /* value */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 4187
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 3 /* hash */
        start local 3 // int hash
         3: .line 4188
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 3 /* hash */
            aload 2 /* value */
            iconst_1
            invokevirtual com.google.common.cache.LocalCache$Segment.put:(Ljava/lang/Object;ILjava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 3 // int hash
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1    key  TK;
            0    4     2  value  TV;
            3    4     3   hash  I
    Signature: (TK;TV;)TV;
    MethodParameters:
       Name  Flags
      key    
      value  

  public V compute(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 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.util.function.BiFunction function
         0: .line 4193
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4194
            aload 2 /* function */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 4195
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 3 /* hash */
        start local 3 // int hash
         3: .line 4196
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 3 /* hash */
            aload 2 /* function */
            invokevirtual com.google.common.cache.LocalCache$Segment.compute:(Ljava/lang/Object;ILjava/util/function/BiFunction;)Ljava/lang/Object;
            areturn
        end local 3 // int hash
        end local 2 // java.util.function.BiFunction function
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1       key  TK;
            0    4     2  function  Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
            3    4     3      hash  I
    Signature: (TK;Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)TV;
    MethodParameters:
          Name  Flags
      key       
      function  

  public V computeIfAbsent(K, java.util.function.Function<? super K, ? extends V>);
    descriptor: (Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.util.function.Function function
         0: .line 4201
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4202
            aload 2 /* function */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 4203
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* function */
            aload 1 /* key */
            invokedynamic apply(Ljava/util/function/Function;Ljava/lang/Object;)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;
                  com/google/common/cache/LocalCache.lambda$0(Ljava/util/function/Function;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; (6)
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.google.common.cache.LocalCache.compute:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
            areturn
        end local 2 // java.util.function.Function function
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    3     1       key  TK;
            0    3     2  function  Ljava/util/function/Function<-TK;+TV;>;
    Signature: (TK;Ljava/util/function/Function<-TK;+TV;>;)TV;
    MethodParameters:
          Name  Flags
      key       
      function  

  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=3, locals=3, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.util.function.BiFunction function
         0: .line 4208
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4209
            aload 2 /* function */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 4210
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* function */
            invokedynamic apply(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;
                  com/google/common/cache/LocalCache.lambda$1(Ljava/util/function/BiFunction;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; (6)
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.google.common.cache.LocalCache.compute:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
            areturn
        end local 2 // java.util.function.BiFunction function
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    3     1       key  TK;
            0    3     2  function  Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
    Signature: (TK;Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)TV;
    MethodParameters:
          Name  Flags
      key       
      function  

  public V merge(K, V, java.util.function.BiFunction<? super V, ? super V, ? extends V>);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object newValue
        start local 3 // java.util.function.BiFunction function
         0: .line 4215
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4216
            aload 2 /* newValue */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 4217
            aload 3 /* function */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 4218
            aload 0 /* this */
         4: .line 4219
            aload 1 /* key */
            aload 2 /* newValue */
            aload 3 /* function */
            invokedynamic apply(Ljava/lang/Object;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;
                  com/google/common/cache/LocalCache.lambda$2(Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; (6)
                  (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
         5: .line 4218
            invokevirtual com.google.common.cache.LocalCache.compute:(Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
            areturn
        end local 3 // java.util.function.BiFunction function
        end local 2 // java.lang.Object newValue
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    6     1       key  TK;
            0    6     2  newValue  TV;
            0    6     3  function  Ljava/util/function/BiFunction<-TV;-TV;+TV;>;
    Signature: (TK;TV;Ljava/util/function/BiFunction<-TV;-TV;+TV;>;)TV;
    MethodParameters:
          Name  Flags
      key       
      newValue  
      function  

  public void putAll(java.util.Map<? extends K, ? extends V>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.util.Map m
         0: .line 4224
            aload 1 /* m */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 3
      StackMap locals: com.google.common.cache.LocalCache java.util.Map top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 2 /* e */
        start local 2 // java.util.Map$Entry e
         2: .line 4225
            aload 0 /* this */
            aload 2 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            aload 2 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            invokevirtual com.google.common.cache.LocalCache.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 2 // java.util.Map$Entry e
         3: .line 4224
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 4227
            return
        end local 1 // java.util.Map m
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    5     1     m  Ljava/util/Map<+TK;+TV;>;
            2    3     2     e  Ljava/util/Map$Entry<+TK;+TV;>;
    Signature: (Ljava/util/Map<+TK;+TV;>;)V
    MethodParameters:
      Name  Flags
      m     

  public V remove();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
         0: .line 4231
            aload 1 /* key */
            ifnonnull 2
         1: .line 4232
            aconst_null
            areturn
         2: .line 4234
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 2 /* hash */
        start local 2 // int hash
         3: .line 4235
            aload 0 /* this */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 2 /* hash */
            invokevirtual com.google.common.cache.LocalCache$Segment.remove:(Ljava/lang/Object;I)Ljava/lang/Object;
            areturn
        end local 2 // int hash
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1   key  Ljava/lang/Object;
            3    4     2  hash  I
    Signature: (Ljava/lang/Object;)TV;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      key   

  public boolean remove(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 4240
            aload 1 /* key */
            ifnull 1
            aload 2 /* value */
            ifnonnull 2
         1: .line 4241
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 4243
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 3 /* hash */
        start local 3 // int hash
         3: .line 4244
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 3 /* hash */
            aload 2 /* value */
            invokevirtual com.google.common.cache.LocalCache$Segment.remove:(Ljava/lang/Object;ILjava/lang/Object;)Z
            ireturn
        end local 3 // int hash
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1    key  Ljava/lang/Object;
            0    4     2  value  Ljava/lang/Object;
            3    4     3   hash  I
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      key    
      value  

  public boolean replace(K, V, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object oldValue
        start local 3 // java.lang.Object newValue
         0: .line 4249
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4250
            aload 3 /* newValue */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 4251
            aload 2 /* oldValue */
            ifnonnull 4
         3: .line 4252
            iconst_0
            ireturn
         4: .line 4254
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 4 /* hash */
        start local 4 // int hash
         5: .line 4255
            aload 0 /* this */
            iload 4 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 4 /* hash */
            aload 2 /* oldValue */
            aload 3 /* newValue */
            invokevirtual com.google.common.cache.LocalCache$Segment.replace:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)Z
            ireturn
        end local 4 // int hash
        end local 3 // java.lang.Object newValue
        end local 2 // java.lang.Object oldValue
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    6     1       key  TK;
            0    6     2  oldValue  TV;
            0    6     3  newValue  TV;
            5    6     4      hash  I
    Signature: (TK;TV;TV;)Z
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
          Name  Flags
      key       
      oldValue  
      newValue  

  public V replace(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 4260
            aload 1 /* key */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4261
            aload 2 /* value */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 4262
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual com.google.common.cache.LocalCache.hash:(Ljava/lang/Object;)I
            istore 3 /* hash */
        start local 3 // int hash
         3: .line 4263
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual com.google.common.cache.LocalCache.segmentFor:(I)Lcom/google/common/cache/LocalCache$Segment;
            aload 1 /* key */
            iload 3 /* hash */
            aload 2 /* value */
            invokevirtual com.google.common.cache.LocalCache$Segment.replace:(Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 3 // int hash
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    4     1    key  TK;
            0    4     2  value  TV;
            3    4     3   hash  I
    Signature: (TK;TV;)TV;
    MethodParameters:
       Name  Flags
      key    
      value  

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 4268
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.segments:[Lcom/google/common/cache/LocalCache$Segment;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 4
      StackMap locals: com.google.common.cache.LocalCache top int int com.google.common.cache.LocalCache$Segment[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* segment */
        start local 1 // com.google.common.cache.LocalCache$Segment segment
         2: .line 4269
            aload 1 /* segment */
            invokevirtual com.google.common.cache.LocalCache$Segment.clear:()V
        end local 1 // com.google.common.cache.LocalCache$Segment segment
         3: .line 4268
            iinc 2 1
      StackMap locals:
      StackMap stack:
         4: iload 2
            iload 3
            if_icmplt 1
         5: .line 4271
            return
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            2    3     1  segment  Lcom/google/common/cache/LocalCache$Segment<TK;TV;>;

  void invalidateAll(java.lang.Iterable<?>);
    descriptor: (Ljava/lang/Iterable;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.lang.Iterable keys
         0: .line 4275
            aload 1 /* keys */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 3
            goto 3
      StackMap locals: com.google.common.cache.LocalCache java.lang.Iterable top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 2 /* key */
        start local 2 // java.lang.Object key
         2: .line 4276
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual com.google.common.cache.LocalCache.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 2 // java.lang.Object key
         3: .line 4275
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 4278
            return
        end local 1 // java.lang.Iterable keys
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0    5     1  keys  Ljava/lang/Iterable<*>;
            2    3     2   key  Ljava/lang/Object;
    Signature: (Ljava/lang/Iterable<*>;)V
    MethodParameters:
      Name  Flags
      keys  

  public java.util.Set<K> keySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 4285
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.keySet:Ljava/util/Set;
            astore 1 /* ks */
        start local 1 // java.util.Set ks
         1: .line 4286
            aload 1 /* ks */
            ifnull 2
            aload 1 /* ks */
            goto 3
      StackMap locals: java.util.Set
      StackMap stack:
         2: aload 0 /* this */
            new com.google.common.cache.LocalCache$KeySet
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokespecial com.google.common.cache.LocalCache$KeySet.<init>:(Lcom/google/common/cache/LocalCache;Ljava/util/concurrent/ConcurrentMap;)V
            dup_x1
            putfield com.google.common.cache.LocalCache.keySet:Ljava/util/Set;
      StackMap locals:
      StackMap stack: java.util.Set
         3: areturn
        end local 1 // java.util.Set ks
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            1    4     1    ks  Ljava/util/Set<TK;>;
    Signature: ()Ljava/util/Set<TK;>;

  public java.util.Collection<V> values();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 4294
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.values:Ljava/util/Collection;
            astore 1 /* vs */
        start local 1 // java.util.Collection vs
         1: .line 4295
            aload 1 /* vs */
            ifnull 2
            aload 1 /* vs */
            goto 3
      StackMap locals: java.util.Collection
      StackMap stack:
         2: aload 0 /* this */
            new com.google.common.cache.LocalCache$Values
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokespecial com.google.common.cache.LocalCache$Values.<init>:(Lcom/google/common/cache/LocalCache;Ljava/util/concurrent/ConcurrentMap;)V
            dup_x1
            putfield com.google.common.cache.LocalCache.values:Ljava/util/Collection;
      StackMap locals:
      StackMap stack: java.util.Collection
         3: areturn
        end local 1 // java.util.Collection vs
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            1    4     1    vs  Ljava/util/Collection<TV;>;
    Signature: ()Ljava/util/Collection<TV;>;

  public java.util.Set<java.util.Map$Entry<K, V>> entrySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.google.common.cache.LocalCache this
         0: .line 4304
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache.entrySet:Ljava/util/Set;
            astore 1 /* es */
        start local 1 // java.util.Set es
         1: .line 4305
            aload 1 /* es */
            ifnull 2
            aload 1 /* es */
            goto 3
      StackMap locals: java.util.Set
      StackMap stack:
         2: aload 0 /* this */
            new com.google.common.cache.LocalCache$EntrySet
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokespecial com.google.common.cache.LocalCache$EntrySet.<init>:(Lcom/google/common/cache/LocalCache;Ljava/util/concurrent/ConcurrentMap;)V
            dup_x1
            putfield com.google.common.cache.LocalCache.entrySet:Ljava/util/Set;
      StackMap locals:
      StackMap stack: java.util.Set
         3: areturn
        end local 1 // java.util.Set es
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            1    4     1    es  Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;
    Signature: ()Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtIncompatible()

  private static <E> java.util.ArrayList<E> toArrayList(java.util.Collection<E>);
    descriptor: (Ljava/util/Collection;)Ljava/util/ArrayList;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.util.Collection c
         0: .line 4533
            new java.util.ArrayList
            dup
            aload 0 /* c */
            invokeinterface java.util.Collection.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* result */
        start local 1 // java.util.ArrayList result
         1: .line 4534
            aload 1 /* result */
            aload 0 /* c */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            invokestatic com.google.common.collect.Iterators.addAll:(Ljava/util/Collection;Ljava/util/Iterator;)Z
            pop
         2: .line 4535
            aload 1 /* result */
            areturn
        end local 1 // java.util.ArrayList result
        end local 0 // java.util.Collection c
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0       c  Ljava/util/Collection<TE;>;
            1    3     1  result  Ljava/util/ArrayList<TE;>;
    Signature: <E:Ljava/lang/Object;>(Ljava/util/Collection<TE;>;)Ljava/util/ArrayList<TE;>;
    MethodParameters:
      Name  Flags
      c     

  boolean removeIf(java.util.function.BiPredicate<? super K, ? super V>);
    descriptor: (Ljava/util/function/BiPredicate;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.google.common.cache.LocalCache this
        start local 1 // java.util.function.BiPredicate filter
         0: .line 4539
            aload 1 /* filter */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 4540
            iconst_0
            istore 2 /* changed */
        start local 2 // boolean changed
         2: .line 4541
            aload 0 /* this */
            invokevirtual com.google.common.cache.LocalCache.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 9
      StackMap locals: com.google.common.cache.LocalCache java.util.function.BiPredicate int top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Object
            astore 3 /* key */
        start local 3 // java.lang.Object key
         4: .line 4543
      StackMap locals: com.google.common.cache.LocalCache java.util.function.BiPredicate int java.lang.Object java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            aload 3 /* key */
            invokevirtual com.google.common.cache.LocalCache.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 5 /* value */
        start local 5 // java.lang.Object value
         5: .line 4544
            aload 5 /* value */
            ifnull 9
            aload 1 /* filter */
            aload 3 /* key */
            aload 5 /* value */
            invokeinterface java.util.function.BiPredicate.test:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 7
         6: .line 4545
            goto 9
         7: .line 4546
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 3 /* key */
            aload 5 /* value */
            invokevirtual com.google.common.cache.LocalCache.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         8: .line 4547
            iconst_1
            istore 2 /* changed */
        end local 5 // java.lang.Object value
        end local 3 // java.lang.Object key
         9: .line 4541
      StackMap locals: com.google.common.cache.LocalCache java.util.function.BiPredicate int top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        10: .line 4552
            iload 2 /* changed */
            ireturn
        end local 2 // boolean changed
        end local 1 // java.util.function.BiPredicate filter
        end local 0 // com.google.common.cache.LocalCache this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lcom/google/common/cache/LocalCache<TK;TV;>;
            0   11     1   filter  Ljava/util/function/BiPredicate<-TK;-TV;>;
            2   11     2  changed  Z
            4    9     3      key  TK;
            5    9     5    value  TV;
    Signature: (Ljava/util/function/BiPredicate<-TK;-TV;>;)Z
    MethodParameters:
        Name  Flags
      filter  

  private static java.lang.Object lambda$0(java.util.function.Function, java.lang.Object, java.lang.Object, java.lang.Object);
    descriptor: (Ljava/util/function/Function;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=4, args_size=4
        start local 2 // java.lang.Object k
        start local 3 // java.lang.Object oldValue
         0: .line 4203
            aload 3 /* oldValue */
            ifnonnull 1
            aload 0
            aload 1
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 3 /* oldValue */
      StackMap locals:
      StackMap stack: java.lang.Object
         2: areturn
        end local 3 // java.lang.Object oldValue
        end local 2 // java.lang.Object k
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     2         k  TK;
            0    3     3  oldValue  TV;

  private static java.lang.Object lambda$1(java.util.function.BiFunction, java.lang.Object, java.lang.Object);
    descriptor: (Ljava/util/function/BiFunction;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 1 // java.lang.Object k
        start local 2 // java.lang.Object oldValue
         0: .line 4210
            aload 2 /* oldValue */
            ifnonnull 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0
            aload 1 /* k */
            aload 2 /* oldValue */
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         2: areturn
        end local 2 // java.lang.Object oldValue
        end local 1 // java.lang.Object k
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     1         k  TK;
            0    3     2  oldValue  TV;

  private static java.lang.Object lambda$2(java.lang.Object, java.util.function.BiFunction, java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 2 // java.lang.Object k
        start local 3 // java.lang.Object oldValue
         0: .line 4219
            aload 3 /* oldValue */
            ifnonnull 1
            aload 0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1
            aload 3 /* oldValue */
            aload 0
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         2: areturn
        end local 3 // java.lang.Object oldValue
        end local 2 // java.lang.Object k
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     2         k  TK;
            0    3     3  oldValue  TV;
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/util/AbstractMap<TK;TV;>;Ljava/util/concurrent/ConcurrentMap<TK;TV;>;
SourceFile: "LocalCache.java"
NestMembers:
  com.google.common.cache.LocalCache$1  com.google.common.cache.LocalCache$2  com.google.common.cache.LocalCache$AbstractCacheSet  com.google.common.cache.LocalCache$AbstractReferenceEntry  com.google.common.cache.LocalCache$AccessQueue  com.google.common.cache.LocalCache$AccessQueue$1  com.google.common.cache.LocalCache$AccessQueue$2  com.google.common.cache.LocalCache$EntryFactory  com.google.common.cache.LocalCache$EntryFactory$1  com.google.common.cache.LocalCache$EntryFactory$2  com.google.common.cache.LocalCache$EntryFactory$3  com.google.common.cache.LocalCache$EntryFactory$4  com.google.common.cache.LocalCache$EntryFactory$5  com.google.common.cache.LocalCache$EntryFactory$6  com.google.common.cache.LocalCache$EntryFactory$7  com.google.common.cache.LocalCache$EntryFactory$8  com.google.common.cache.LocalCache$EntryIterator  com.google.common.cache.LocalCache$EntrySet  com.google.common.cache.LocalCache$HashIterator  com.google.common.cache.LocalCache$KeyIterator  com.google.common.cache.LocalCache$KeySet  com.google.common.cache.LocalCache$LoadingSerializationProxy  com.google.common.cache.LocalCache$LoadingValueReference  com.google.common.cache.LocalCache$LoadingValueReference$1  com.google.common.cache.LocalCache$LocalLoadingCache  com.google.common.cache.LocalCache$LocalManualCache  com.google.common.cache.LocalCache$LocalManualCache$1  com.google.common.cache.LocalCache$ManualSerializationProxy  com.google.common.cache.LocalCache$NullEntry  com.google.common.cache.LocalCache$Segment  com.google.common.cache.LocalCache$Segment$1  com.google.common.cache.LocalCache$SoftValueReference  com.google.common.cache.LocalCache$Strength  com.google.common.cache.LocalCache$Strength$1  com.google.common.cache.LocalCache$Strength$2  com.google.common.cache.LocalCache$Strength$3  com.google.common.cache.LocalCache$StrongAccessEntry  com.google.common.cache.LocalCache$StrongAccessWriteEntry  com.google.common.cache.LocalCache$StrongEntry  com.google.common.cache.LocalCache$StrongValueReference  com.google.common.cache.LocalCache$StrongWriteEntry  com.google.common.cache.LocalCache$ValueIterator  com.google.common.cache.LocalCache$ValueReference  com.google.common.cache.LocalCache$Values  com.google.common.cache.LocalCache$WeakAccessEntry  com.google.common.cache.LocalCache$WeakAccessWriteEntry  com.google.common.cache.LocalCache$WeakEntry  com.google.common.cache.LocalCache$WeakValueReference  com.google.common.cache.LocalCache$WeakWriteEntry  com.google.common.cache.LocalCache$WeightedSoftValueReference  com.google.common.cache.LocalCache$WeightedStrongValueReference  com.google.common.cache.LocalCache$WeightedWeakValueReference  com.google.common.cache.LocalCache$WriteQueue  com.google.common.cache.LocalCache$WriteQueue$1  com.google.common.cache.LocalCache$WriteQueue$2  com.google.common.cache.LocalCache$WriteThroughEntry
InnerClasses:
  public abstract StatsCounter = com.google.common.cache.AbstractCache$StatsCounter of com.google.common.cache.AbstractCache
  final NullListener = com.google.common.cache.CacheBuilder$NullListener of com.google.common.cache.CacheBuilder
  final OneWeigher = com.google.common.cache.CacheBuilder$OneWeigher of com.google.common.cache.CacheBuilder
  public final InvalidCacheLoadException = com.google.common.cache.CacheLoader$InvalidCacheLoadException of com.google.common.cache.CacheLoader
  public final UnsupportedLoadingOperationException = com.google.common.cache.CacheLoader$UnsupportedLoadingOperationException of com.google.common.cache.CacheLoader
  com.google.common.cache.LocalCache$1
  com.google.common.cache.LocalCache$2
  abstract AbstractCacheSet = com.google.common.cache.LocalCache$AbstractCacheSet of com.google.common.cache.LocalCache
  abstract AbstractReferenceEntry = com.google.common.cache.LocalCache$AbstractReferenceEntry of com.google.common.cache.LocalCache
  final AccessQueue = com.google.common.cache.LocalCache$AccessQueue of com.google.common.cache.LocalCache
  abstract EntryFactory = com.google.common.cache.LocalCache$EntryFactory of com.google.common.cache.LocalCache
  final EntryIterator = com.google.common.cache.LocalCache$EntryIterator of com.google.common.cache.LocalCache
  final EntrySet = com.google.common.cache.LocalCache$EntrySet of com.google.common.cache.LocalCache
  abstract HashIterator = com.google.common.cache.LocalCache$HashIterator of com.google.common.cache.LocalCache
  final KeyIterator = com.google.common.cache.LocalCache$KeyIterator of com.google.common.cache.LocalCache
  final KeySet = com.google.common.cache.LocalCache$KeySet of com.google.common.cache.LocalCache
  final LoadingSerializationProxy = com.google.common.cache.LocalCache$LoadingSerializationProxy of com.google.common.cache.LocalCache
  LoadingValueReference = com.google.common.cache.LocalCache$LoadingValueReference of com.google.common.cache.LocalCache
  LocalLoadingCache = com.google.common.cache.LocalCache$LocalLoadingCache of com.google.common.cache.LocalCache
  LocalManualCache = com.google.common.cache.LocalCache$LocalManualCache of com.google.common.cache.LocalCache
  ManualSerializationProxy = com.google.common.cache.LocalCache$ManualSerializationProxy of com.google.common.cache.LocalCache
  private final NullEntry = com.google.common.cache.LocalCache$NullEntry of com.google.common.cache.LocalCache
  Segment = com.google.common.cache.LocalCache$Segment of com.google.common.cache.LocalCache
  SoftValueReference = com.google.common.cache.LocalCache$SoftValueReference of com.google.common.cache.LocalCache
  abstract Strength = com.google.common.cache.LocalCache$Strength of com.google.common.cache.LocalCache
  final StrongAccessEntry = com.google.common.cache.LocalCache$StrongAccessEntry of com.google.common.cache.LocalCache
  final StrongAccessWriteEntry = com.google.common.cache.LocalCache$StrongAccessWriteEntry of com.google.common.cache.LocalCache
  StrongEntry = com.google.common.cache.LocalCache$StrongEntry of com.google.common.cache.LocalCache
  StrongValueReference = com.google.common.cache.LocalCache$StrongValueReference of com.google.common.cache.LocalCache
  final StrongWriteEntry = com.google.common.cache.LocalCache$StrongWriteEntry of com.google.common.cache.LocalCache
  final ValueIterator = com.google.common.cache.LocalCache$ValueIterator of com.google.common.cache.LocalCache
  abstract ValueReference = com.google.common.cache.LocalCache$ValueReference of com.google.common.cache.LocalCache
  final Values = com.google.common.cache.LocalCache$Values of com.google.common.cache.LocalCache
  final WeakAccessEntry = com.google.common.cache.LocalCache$WeakAccessEntry of com.google.common.cache.LocalCache
  final WeakAccessWriteEntry = com.google.common.cache.LocalCache$WeakAccessWriteEntry of com.google.common.cache.LocalCache
  WeakEntry = com.google.common.cache.LocalCache$WeakEntry of com.google.common.cache.LocalCache
  WeakValueReference = com.google.common.cache.LocalCache$WeakValueReference of com.google.common.cache.LocalCache
  final WeakWriteEntry = com.google.common.cache.LocalCache$WeakWriteEntry of com.google.common.cache.LocalCache
  final WeightedSoftValueReference = com.google.common.cache.LocalCache$WeightedSoftValueReference of com.google.common.cache.LocalCache
  final WeightedStrongValueReference = com.google.common.cache.LocalCache$WeightedStrongValueReference of com.google.common.cache.LocalCache
  final WeightedWeakValueReference = com.google.common.cache.LocalCache$WeightedWeakValueReference of com.google.common.cache.LocalCache
  final WriteQueue = com.google.common.cache.LocalCache$WriteQueue of com.google.common.cache.LocalCache
  final WriteThroughEntry = com.google.common.cache.LocalCache$WriteThroughEntry of com.google.common.cache.LocalCache
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtCompatible(emulated = true)