class com.google.common.cache.LocalCache$StrongEntry<K, V> extends com.google.common.cache.LocalCache$AbstractReferenceEntry<K, V>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.google.common.cache.LocalCache$StrongEntry
  super_class: com.google.common.cache.LocalCache$AbstractReferenceEntry
{
  final K key;
    descriptor: Ljava/lang/Object;
    flags: (0x0010) ACC_FINAL
    Signature: TK;

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

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

  volatile com.google.common.cache.LocalCache$ValueReference<K, V> valueReference;
    descriptor: Lcom/google/common/cache/LocalCache$ValueReference;
    flags: (0x0040) ACC_VOLATILE
    Signature: Lcom/google/common/cache/LocalCache$ValueReference<TK;TV;>;

  void <init>(K, int, com.google.common.cache.ReferenceEntry<K, V>);
    descriptor: (Ljava/lang/Object;ILcom/google/common/cache/ReferenceEntry;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // com.google.common.cache.LocalCache$StrongEntry this
        start local 1 // java.lang.Object key
        start local 2 // int hash
        start local 3 // com.google.common.cache.ReferenceEntry next
         0: .line 942
            aload 0 /* this */
            invokespecial com.google.common.cache.LocalCache$AbstractReferenceEntry.<init>:()V
         1: .line 957
            aload 0 /* this */
            invokestatic com.google.common.cache.LocalCache.unset:()Lcom/google/common/cache/LocalCache$ValueReference;
            putfield com.google.common.cache.LocalCache$StrongEntry.valueReference:Lcom/google/common/cache/LocalCache$ValueReference;
         2: .line 943
            aload 0 /* this */
            aload 1 /* key */
            putfield com.google.common.cache.LocalCache$StrongEntry.key:Ljava/lang/Object;
         3: .line 944
            aload 0 /* this */
            iload 2 /* hash */
            putfield com.google.common.cache.LocalCache$StrongEntry.hash:I
         4: .line 945
            aload 0 /* this */
            aload 3 /* next */
            putfield com.google.common.cache.LocalCache$StrongEntry.next:Lcom/google/common/cache/ReferenceEntry;
         5: .line 946
            return
        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$StrongEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/google/common/cache/LocalCache$StrongEntry<TK;TV;>;
            0    6     1   key  TK;
            0    6     2  hash  I
            0    6     3  next  Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
    Signature: (TK;ILcom/google/common/cache/ReferenceEntry<TK;TV;>;)V
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      key   
      hash  
      next  

  public K getKey();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache$StrongEntry this
         0: .line 950
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache$StrongEntry.key:Ljava/lang/Object;
            areturn
        end local 0 // com.google.common.cache.LocalCache$StrongEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache$StrongEntry<TK;TV;>;
    Signature: ()TK;

  public com.google.common.cache.LocalCache$ValueReference<K, V> getValueReference();
    descriptor: ()Lcom/google/common/cache/LocalCache$ValueReference;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache$StrongEntry this
         0: .line 961
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache$StrongEntry.valueReference:Lcom/google/common/cache/LocalCache$ValueReference;
            areturn
        end local 0 // com.google.common.cache.LocalCache$StrongEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache$StrongEntry<TK;TV;>;
    Signature: ()Lcom/google/common/cache/LocalCache$ValueReference<TK;TV;>;

  public void setValueReference(com.google.common.cache.LocalCache$ValueReference<K, V>);
    descriptor: (Lcom/google/common/cache/LocalCache$ValueReference;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.cache.LocalCache$StrongEntry this
        start local 1 // com.google.common.cache.LocalCache$ValueReference valueReference
         0: .line 966
            aload 0 /* this */
            aload 1 /* valueReference */
            putfield com.google.common.cache.LocalCache$StrongEntry.valueReference:Lcom/google/common/cache/LocalCache$ValueReference;
         1: .line 967
            return
        end local 1 // com.google.common.cache.LocalCache$ValueReference valueReference
        end local 0 // com.google.common.cache.LocalCache$StrongEntry this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lcom/google/common/cache/LocalCache$StrongEntry<TK;TV;>;
            0    2     1  valueReference  Lcom/google/common/cache/LocalCache$ValueReference<TK;TV;>;
    Signature: (Lcom/google/common/cache/LocalCache$ValueReference<TK;TV;>;)V
    MethodParameters:
                Name  Flags
      valueReference  

  public int getHash();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache$StrongEntry this
         0: .line 971
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache$StrongEntry.hash:I
            ireturn
        end local 0 // com.google.common.cache.LocalCache$StrongEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache$StrongEntry<TK;TV;>;

  public com.google.common.cache.ReferenceEntry<K, V> getNext();
    descriptor: ()Lcom/google/common/cache/ReferenceEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.cache.LocalCache$StrongEntry this
         0: .line 976
            aload 0 /* this */
            getfield com.google.common.cache.LocalCache$StrongEntry.next:Lcom/google/common/cache/ReferenceEntry;
            areturn
        end local 0 // com.google.common.cache.LocalCache$StrongEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/cache/LocalCache$StrongEntry<TK;TV;>;
    Signature: ()Lcom/google/common/cache/ReferenceEntry<TK;TV;>;
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Lcom/google/common/cache/LocalCache$AbstractReferenceEntry<TK;TV;>;
SourceFile: "LocalCache.java"
NestHost: com.google.common.cache.LocalCache
InnerClasses:
  abstract AbstractReferenceEntry = com.google.common.cache.LocalCache$AbstractReferenceEntry of com.google.common.cache.LocalCache
  StrongEntry = com.google.common.cache.LocalCache$StrongEntry of com.google.common.cache.LocalCache
  abstract ValueReference = com.google.common.cache.LocalCache$ValueReference of com.google.common.cache.LocalCache