public final class com.google.common.collect.HashBiMap<K, V> extends com.google.common.collect.Maps$IteratorBasedAbstractMap<K, V> implements com.google.common.collect.BiMap<K, V>, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.google.common.collect.HashBiMap
  super_class: com.google.common.collect.Maps$IteratorBasedAbstractMap
{
  private static final double LOAD_FACTOR;
    descriptor: D
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1.0

  private transient com.google.common.collect.HashBiMap$BiEntry<K, V>[] hashTableKToV;
    descriptor: [Lcom/google/common/collect/HashBiMap$BiEntry;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: [Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;

  private transient com.google.common.collect.HashBiMap$BiEntry<K, V>[] hashTableVToK;
    descriptor: [Lcom/google/common/collect/HashBiMap$BiEntry;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: [Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;

  private transient com.google.common.collect.HashBiMap$BiEntry<K, V> firstInKeyInsertionOrder;
    descriptor: Lcom/google/common/collect/HashBiMap$BiEntry;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.Nullable()

  private transient com.google.common.collect.HashBiMap$BiEntry<K, V> lastInKeyInsertionOrder;
    descriptor: Lcom/google/common/collect/HashBiMap$BiEntry;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.Nullable()

  private transient int size;
    descriptor: I
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient int mask;
    descriptor: I
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient int modCount;
    descriptor: I
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT

  private transient com.google.common.collect.BiMap<V, K> inverse;
    descriptor: Lcom/google/common/collect/BiMap;
    flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
    Signature: Lcom/google/common/collect/BiMap<TV;TK;>;
    RuntimeInvisibleAnnotations: 
      com.google.j2objc.annotations.RetainedWith()
    RuntimeVisibleTypeAnnotations: 
      FIELD
        org.checkerframework.checker.nullness.qual.MonotonicNonNull()

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtIncompatible()

  public static <K, V> com.google.common.collect.HashBiMap<K, V> create();
    descriptor: ()Lcom/google/common/collect/HashBiMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 64
            bipush 16
            invokestatic com.google.common.collect.HashBiMap.create:(I)Lcom/google/common/collect/HashBiMap;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>()Lcom/google/common/collect/HashBiMap<TK;TV;>;

  public static <K, V> com.google.common.collect.HashBiMap<K, V> create(int);
    descriptor: (I)Lcom/google/common/collect/HashBiMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int expectedSize
         0: .line 74
            new com.google.common.collect.HashBiMap
            dup
            iload 0 /* expectedSize */
            invokespecial com.google.common.collect.HashBiMap.<init>:(I)V
            areturn
        end local 0 // int expectedSize
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0  expectedSize  I
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(I)Lcom/google/common/collect/HashBiMap<TK;TV;>;
    MethodParameters:
              Name  Flags
      expectedSize  

  public static <K, V> com.google.common.collect.HashBiMap<K, V> create(java.util.Map<? extends K, ? extends V>);
    descriptor: (Ljava/util/Map;)Lcom/google/common/collect/HashBiMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.util.Map map
         0: .line 82
            aload 0 /* map */
            invokeinterface java.util.Map.size:()I
            invokestatic com.google.common.collect.HashBiMap.create:(I)Lcom/google/common/collect/HashBiMap;
            astore 1 /* bimap */
        start local 1 // com.google.common.collect.HashBiMap bimap
         1: .line 83
            aload 1 /* bimap */
            aload 0 /* map */
            invokevirtual com.google.common.collect.HashBiMap.putAll:(Ljava/util/Map;)V
         2: .line 84
            aload 1 /* bimap */
            areturn
        end local 1 // com.google.common.collect.HashBiMap bimap
        end local 0 // java.util.Map map
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0    map  Ljava/util/Map<+TK;+TV;>;
            1    3     1  bimap  Lcom/google/common/collect/HashBiMap<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<+TK;+TV;>;)Lcom/google/common/collect/HashBiMap<TK;TV;>;
    MethodParameters:
      Name  Flags
      map   

  private void <init>(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // int expectedSize
         0: .line 114
            aload 0 /* this */
            invokespecial com.google.common.collect.Maps$IteratorBasedAbstractMap.<init>:()V
         1: .line 115
            aload 0 /* this */
            iload 1 /* expectedSize */
            invokevirtual com.google.common.collect.HashBiMap.init:(I)V
         2: .line 116
            return
        end local 1 // int expectedSize
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    3     1  expectedSize  I
    MethodParameters:
              Name  Flags
      expectedSize  

  private void init(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // int expectedSize
         0: .line 119
            iload 1 /* expectedSize */
            ldc "expectedSize"
            invokestatic com.google.common.collect.CollectPreconditions.checkNonnegative:(ILjava/lang/String;)I
            pop
         1: .line 120
            iload 1 /* expectedSize */
            dconst_1
            invokestatic com.google.common.collect.Hashing.closedTableSize:(ID)I
            istore 2 /* tableSize */
        start local 2 // int tableSize
         2: .line 121
            aload 0 /* this */
            aload 0 /* this */
            iload 2 /* tableSize */
            invokevirtual com.google.common.collect.HashBiMap.createTable:(I)[Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap.hashTableKToV:[Lcom/google/common/collect/HashBiMap$BiEntry;
         3: .line 122
            aload 0 /* this */
            aload 0 /* this */
            iload 2 /* tableSize */
            invokevirtual com.google.common.collect.HashBiMap.createTable:(I)[Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap.hashTableVToK:[Lcom/google/common/collect/HashBiMap$BiEntry;
         4: .line 123
            aload 0 /* this */
            aconst_null
            putfield com.google.common.collect.HashBiMap.firstInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
         5: .line 124
            aload 0 /* this */
            aconst_null
            putfield com.google.common.collect.HashBiMap.lastInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
         6: .line 125
            aload 0 /* this */
            iconst_0
            putfield com.google.common.collect.HashBiMap.size:I
         7: .line 126
            aload 0 /* this */
            iload 2 /* tableSize */
            iconst_1
            isub
            putfield com.google.common.collect.HashBiMap.mask:I
         8: .line 127
            aload 0 /* this */
            iconst_0
            putfield com.google.common.collect.HashBiMap.modCount:I
         9: .line 128
            return
        end local 2 // int tableSize
        end local 1 // int expectedSize
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0   10     1  expectedSize  I
            2   10     2     tableSize  I
    MethodParameters:
              Name  Flags
      expectedSize  

  private void delete(com.google.common.collect.HashBiMap$BiEntry<K, V>);
    descriptor: (Lcom/google/common/collect/HashBiMap$BiEntry;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // com.google.common.collect.HashBiMap$BiEntry entry
         0: .line 135
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.keyHash:I
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.mask:I
            iand
            istore 2 /* keyBucket */
        start local 2 // int keyBucket
         1: .line 136
            aconst_null
            astore 3 /* prevBucketEntry */
        start local 3 // com.google.common.collect.HashBiMap$BiEntry prevBucketEntry
         2: .line 137
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableKToV:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 2 /* keyBucket */
            aaload
            astore 4 /* bucketEntry */
        start local 4 // com.google.common.collect.HashBiMap$BiEntry bucketEntry
         3: .line 140
      StackMap locals: int com.google.common.collect.HashBiMap$BiEntry com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 4 /* bucketEntry */
            aload 1 /* entry */
            if_acmpne 9
         4: .line 141
            aload 3 /* prevBucketEntry */
            ifnonnull 7
         5: .line 142
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableKToV:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 2 /* keyBucket */
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKToVBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
            aastore
         6: .line 143
            goto 12
         7: .line 144
      StackMap locals:
      StackMap stack:
            aload 3 /* prevBucketEntry */
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKToVBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKToVBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
         8: .line 146
            goto 12
         9: .line 148
      StackMap locals:
      StackMap stack:
            aload 4 /* bucketEntry */
            astore 3 /* prevBucketEntry */
        10: .line 139
            aload 4 /* bucketEntry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKToVBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 4 /* bucketEntry */
        11: .line 137
            goto 3
        end local 4 // com.google.common.collect.HashBiMap$BiEntry bucketEntry
        12: .line 151
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.valueHash:I
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.mask:I
            iand
            istore 4 /* valueBucket */
        start local 4 // int valueBucket
        13: .line 152
            aconst_null
            astore 3 /* prevBucketEntry */
        14: .line 153
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableVToK:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 4 /* valueBucket */
            aaload
            astore 5 /* bucketEntry */
        start local 5 // com.google.common.collect.HashBiMap$BiEntry bucketEntry
        15: .line 156
      StackMap locals: int com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 5 /* bucketEntry */
            aload 1 /* entry */
            if_acmpne 21
        16: .line 157
            aload 3 /* prevBucketEntry */
            ifnonnull 19
        17: .line 158
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableVToK:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 4 /* valueBucket */
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInVToKBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
            aastore
        18: .line 159
            goto 24
        19: .line 160
      StackMap locals:
      StackMap stack:
            aload 3 /* prevBucketEntry */
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInVToKBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInVToKBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
        20: .line 162
            goto 24
        21: .line 164
      StackMap locals:
      StackMap stack:
            aload 5 /* bucketEntry */
            astore 3 /* prevBucketEntry */
        22: .line 155
            aload 5 /* bucketEntry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInVToKBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 5 /* bucketEntry */
        23: .line 153
            goto 15
        end local 5 // com.google.common.collect.HashBiMap$BiEntry bucketEntry
        24: .line 167
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            ifnonnull 27
        25: .line 168
            aload 0 /* this */
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap.firstInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        26: .line 169
            goto 28
        27: .line 170
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        28: .line 173
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            ifnonnull 31
        29: .line 174
            aload 0 /* this */
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap.lastInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        30: .line 175
            goto 32
        31: .line 176
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        32: .line 179
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.HashBiMap.size:I
            iconst_1
            isub
            putfield com.google.common.collect.HashBiMap.size:I
        33: .line 180
            aload 0 /* this */
            dup
            getfield com.google.common.collect.HashBiMap.modCount:I
            iconst_1
            iadd
            putfield com.google.common.collect.HashBiMap.modCount:I
        34: .line 181
            return
        end local 4 // int valueBucket
        end local 3 // com.google.common.collect.HashBiMap$BiEntry prevBucketEntry
        end local 2 // int keyBucket
        end local 1 // com.google.common.collect.HashBiMap$BiEntry entry
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   35     0             this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0   35     1            entry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
            1   35     2        keyBucket  I
            2   35     3  prevBucketEntry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
            3   12     4      bucketEntry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
           13   35     4      valueBucket  I
           15   24     5      bucketEntry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    Signature: (Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;)V
    MethodParameters:
       Name  Flags
      entry  

  private void insert(com.google.common.collect.HashBiMap$BiEntry<K, V>, com.google.common.collect.HashBiMap$BiEntry<K, V>);
    descriptor: (Lcom/google/common/collect/HashBiMap$BiEntry;Lcom/google/common/collect/HashBiMap$BiEntry;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // com.google.common.collect.HashBiMap$BiEntry entry
        start local 2 // com.google.common.collect.HashBiMap$BiEntry oldEntryForKey
         0: .line 184
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.keyHash:I
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.mask:I
            iand
            istore 3 /* keyBucket */
        start local 3 // int keyBucket
         1: .line 185
            aload 1 /* entry */
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableKToV:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 3 /* keyBucket */
            aaload
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKToVBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
         2: .line 186
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableKToV:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 3 /* keyBucket */
            aload 1 /* entry */
            aastore
         3: .line 188
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.valueHash:I
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.mask:I
            iand
            istore 4 /* valueBucket */
        start local 4 // int valueBucket
         4: .line 189
            aload 1 /* entry */
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableVToK:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 4 /* valueBucket */
            aaload
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInVToKBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
         5: .line 190
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableVToK:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 4 /* valueBucket */
            aload 1 /* entry */
            aastore
         6: .line 192
            aload 2 /* oldEntryForKey */
            ifnonnull 15
         7: .line 193
            aload 1 /* entry */
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.lastInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
         8: .line 194
            aload 1 /* entry */
            aconst_null
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
         9: .line 195
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.lastInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            ifnonnull 12
        10: .line 196
            aload 0 /* this */
            aload 1 /* entry */
            putfield com.google.common.collect.HashBiMap.firstInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        11: .line 197
            goto 13
        12: .line 198
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.lastInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            aload 1 /* entry */
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        13: .line 200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* entry */
            putfield com.google.common.collect.HashBiMap.lastInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        14: .line 201
            goto 25
        15: .line 202
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            aload 2 /* oldEntryForKey */
            getfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        16: .line 203
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            ifnonnull 19
        17: .line 204
            aload 0 /* this */
            aload 1 /* entry */
            putfield com.google.common.collect.HashBiMap.firstInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        18: .line 205
            goto 20
        19: .line 206
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            aload 1 /* entry */
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        20: .line 208
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            aload 2 /* oldEntryForKey */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        21: .line 209
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            ifnonnull 24
        22: .line 210
            aload 0 /* this */
            aload 1 /* entry */
            putfield com.google.common.collect.HashBiMap.lastInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        23: .line 211
            goto 25
        24: .line 212
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            aload 1 /* entry */
            putfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        25: .line 216
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.common.collect.HashBiMap.size:I
            iconst_1
            iadd
            putfield com.google.common.collect.HashBiMap.size:I
        26: .line 217
            aload 0 /* this */
            dup
            getfield com.google.common.collect.HashBiMap.modCount:I
            iconst_1
            iadd
            putfield com.google.common.collect.HashBiMap.modCount:I
        27: .line 218
            return
        end local 4 // int valueBucket
        end local 3 // int keyBucket
        end local 2 // com.google.common.collect.HashBiMap$BiEntry oldEntryForKey
        end local 1 // com.google.common.collect.HashBiMap$BiEntry entry
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   28     0            this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0   28     1           entry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
            0   28     2  oldEntryForKey  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
            1   28     3       keyBucket  I
            4   28     4     valueBucket  I
    Signature: (Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;)V
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
                Name  Flags
      entry           
      oldEntryForKey  

  private com.google.common.collect.HashBiMap$BiEntry<K, V> seekByKey(, int);
    descriptor: (Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.lang.Object key
        start local 2 // int keyHash
         0: .line 221
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableKToV:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 2 /* keyHash */
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.mask:I
            iand
            aaload
            astore 3 /* entry */
        start local 3 // com.google.common.collect.HashBiMap$BiEntry entry
         1: .line 222
            goto 5
         2: .line 224
      StackMap locals: com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            iload 2 /* keyHash */
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.keyHash:I
            if_icmpne 4
            aload 1 /* key */
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.key:Ljava/lang/Object;
            invokestatic com.google.common.base.Objects.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 225
            aload 3 /* entry */
            areturn
         4: .line 223
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKToVBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 3 /* entry */
         5: .line 222
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            ifnonnull 2
        end local 3 // com.google.common.collect.HashBiMap$BiEntry entry
         6: .line 228
            aconst_null
            areturn
        end local 2 // int keyHash
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    7     1      key  Ljava/lang/Object;
            0    7     2  keyHash  I
            1    6     3    entry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    Signature: (Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
         Name  Flags
      key      
      keyHash  

  private com.google.common.collect.HashBiMap$BiEntry<K, V> seekByValue(, int);
    descriptor: (Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.lang.Object value
        start local 2 // int valueHash
         0: .line 232
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableVToK:[Lcom/google/common/collect/HashBiMap$BiEntry;
            iload 2 /* valueHash */
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.mask:I
            iand
            aaload
            astore 3 /* entry */
        start local 3 // com.google.common.collect.HashBiMap$BiEntry entry
         1: .line 233
            goto 5
         2: .line 235
      StackMap locals: com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            iload 2 /* valueHash */
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.valueHash:I
            if_icmpne 4
            aload 1 /* value */
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.value:Ljava/lang/Object;
            invokestatic com.google.common.base.Objects.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 4
         3: .line 236
            aload 3 /* entry */
            areturn
         4: .line 234
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInVToKBucket:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 3 /* entry */
         5: .line 233
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            ifnonnull 2
        end local 3 // com.google.common.collect.HashBiMap$BiEntry entry
         6: .line 239
            aconst_null
            areturn
        end local 2 // int valueHash
        end local 1 // java.lang.Object value
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    7     1      value  Ljava/lang/Object;
            0    7     2  valueHash  I
            1    6     3      entry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    Signature: (Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
           Name  Flags
      value      
      valueHash  

  public boolean containsKey(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.lang.Object key
         0: .line 244
            aload 0 /* this */
            aload 1 /* key */
            aload 1 /* key */
            invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
            invokevirtual com.google.common.collect.HashBiMap.seekByKey:(Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    2     1   key  Ljava/lang/Object;
    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=3, locals=2, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.lang.Object value
         0: .line 249
            aload 0 /* this */
            aload 1 /* value */
            aload 1 /* value */
            invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
            invokevirtual com.google.common.collect.HashBiMap.seekByValue:(Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.Object value
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    2     1  value  Ljava/lang/Object;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      value  

  public V get();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.lang.Object key
         0: .line 254
            aload 0 /* this */
            aload 1 /* key */
            aload 1 /* key */
            invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
            invokevirtual com.google.common.collect.HashBiMap.seekByKey:(Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
            invokestatic com.google.common.collect.Maps.valueOrNull:(Ljava/util/Map$Entry;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    1     1   key  Ljava/lang/Object;
    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   

  public V put(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 260
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            iconst_0
            invokevirtual com.google.common.collect.HashBiMap.put:(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    1     1    key  TK;
            0    1     2  value  TV;
    Signature: (TK;TV;)TV;
    RuntimeInvisibleAnnotations: 
      com.google.errorprone.annotations.CanIgnoreReturnValue()
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      key    
      value  

  private V put(K, V, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=9, args_size=4
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
        start local 3 // boolean force
         0: .line 264
            aload 1 /* key */
            invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
            istore 4 /* keyHash */
        start local 4 // int keyHash
         1: .line 265
            aload 2 /* value */
            invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
            istore 5 /* valueHash */
        start local 5 // int valueHash
         2: .line 267
            aload 0 /* this */
            aload 1 /* key */
            iload 4 /* keyHash */
            invokevirtual com.google.common.collect.HashBiMap.seekByKey:(Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 6 /* oldEntryForKey */
        start local 6 // com.google.common.collect.HashBiMap$BiEntry oldEntryForKey
         3: .line 268
            aload 6 /* oldEntryForKey */
            ifnull 7
         4: .line 269
            iload 5 /* valueHash */
            aload 6 /* oldEntryForKey */
            getfield com.google.common.collect.HashBiMap$BiEntry.valueHash:I
            if_icmpne 7
         5: .line 270
            aload 2 /* value */
            aload 6 /* oldEntryForKey */
            getfield com.google.common.collect.HashBiMap$BiEntry.value:Ljava/lang/Object;
            invokestatic com.google.common.base.Objects.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 7
         6: .line 271
            aload 2 /* value */
            areturn
         7: .line 274
      StackMap locals: int int com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 0 /* this */
            aload 2 /* value */
            iload 5 /* valueHash */
            invokevirtual com.google.common.collect.HashBiMap.seekByValue:(Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 7 /* oldEntryForValue */
        start local 7 // com.google.common.collect.HashBiMap$BiEntry oldEntryForValue
         8: .line 275
            aload 7 /* oldEntryForValue */
            ifnull 13
         9: .line 276
            iload 3 /* force */
            ifeq 12
        10: .line 277
            aload 0 /* this */
            aload 7 /* oldEntryForValue */
            invokevirtual com.google.common.collect.HashBiMap.delete:(Lcom/google/common/collect/HashBiMap$BiEntry;)V
        11: .line 278
            goto 13
        12: .line 279
      StackMap locals: com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "value already present: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 283
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.HashBiMap$BiEntry
            dup
            aload 1 /* key */
            iload 4 /* keyHash */
            aload 2 /* value */
            iload 5 /* valueHash */
            invokespecial com.google.common.collect.HashBiMap$BiEntry.<init>:(Ljava/lang/Object;ILjava/lang/Object;I)V
            astore 8 /* newEntry */
        start local 8 // com.google.common.collect.HashBiMap$BiEntry newEntry
        14: .line 284
            aload 6 /* oldEntryForKey */
            ifnull 20
        15: .line 285
            aload 0 /* this */
            aload 6 /* oldEntryForKey */
            invokevirtual com.google.common.collect.HashBiMap.delete:(Lcom/google/common/collect/HashBiMap$BiEntry;)V
        16: .line 286
            aload 0 /* this */
            aload 8 /* newEntry */
            aload 6 /* oldEntryForKey */
            invokevirtual com.google.common.collect.HashBiMap.insert:(Lcom/google/common/collect/HashBiMap$BiEntry;Lcom/google/common/collect/HashBiMap$BiEntry;)V
        17: .line 287
            aload 6 /* oldEntryForKey */
            aconst_null
            putfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        18: .line 288
            aload 6 /* oldEntryForKey */
            aconst_null
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        19: .line 289
            aload 6 /* oldEntryForKey */
            getfield com.google.common.collect.HashBiMap$BiEntry.value:Ljava/lang/Object;
            areturn
        20: .line 291
      StackMap locals: com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 0 /* this */
            aload 8 /* newEntry */
            aconst_null
            invokevirtual com.google.common.collect.HashBiMap.insert:(Lcom/google/common/collect/HashBiMap$BiEntry;Lcom/google/common/collect/HashBiMap$BiEntry;)V
        21: .line 292
            aload 0 /* this */
            invokevirtual com.google.common.collect.HashBiMap.rehashIfNecessary:()V
        22: .line 293
            aconst_null
            areturn
        end local 8 // com.google.common.collect.HashBiMap$BiEntry newEntry
        end local 7 // com.google.common.collect.HashBiMap$BiEntry oldEntryForValue
        end local 6 // com.google.common.collect.HashBiMap$BiEntry oldEntryForKey
        end local 5 // int valueHash
        end local 4 // int keyHash
        end local 3 // boolean force
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   23     0              this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0   23     1               key  TK;
            0   23     2             value  TV;
            0   23     3             force  Z
            1   23     4           keyHash  I
            2   23     5         valueHash  I
            3   23     6    oldEntryForKey  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
            8   23     7  oldEntryForValue  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
           14   23     8          newEntry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    Signature: (TK;TV;Z)TV;
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
       Name  Flags
      key    
      value  
      force  

  public V forcePut(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 301
            aload 0 /* this */
            aload 1 /* key */
            aload 2 /* value */
            iconst_1
            invokevirtual com.google.common.collect.HashBiMap.put:(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    1     1    key  TK;
            0    1     2  value  TV;
    Signature: (TK;TV;)TV;
    RuntimeInvisibleAnnotations: 
      com.google.errorprone.annotations.CanIgnoreReturnValue()
    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    
      value  

  private K putInverse(V, K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=9, args_size=4
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.lang.Object value
        start local 2 // java.lang.Object key
        start local 3 // boolean force
         0: .line 305
            aload 1 /* value */
            invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
            istore 4 /* valueHash */
        start local 4 // int valueHash
         1: .line 306
            aload 2 /* key */
            invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
            istore 5 /* keyHash */
        start local 5 // int keyHash
         2: .line 308
            aload 0 /* this */
            aload 1 /* value */
            iload 4 /* valueHash */
            invokevirtual com.google.common.collect.HashBiMap.seekByValue:(Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 6 /* oldEntryForValue */
        start local 6 // com.google.common.collect.HashBiMap$BiEntry oldEntryForValue
         3: .line 309
            aload 0 /* this */
            aload 2 /* key */
            iload 5 /* keyHash */
            invokevirtual com.google.common.collect.HashBiMap.seekByKey:(Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 7 /* oldEntryForKey */
        start local 7 // com.google.common.collect.HashBiMap$BiEntry oldEntryForKey
         4: .line 310
            aload 6 /* oldEntryForValue */
            ifnull 8
         5: .line 311
            iload 5 /* keyHash */
            aload 6 /* oldEntryForValue */
            getfield com.google.common.collect.HashBiMap$BiEntry.keyHash:I
            if_icmpne 8
         6: .line 312
            aload 2 /* key */
            aload 6 /* oldEntryForValue */
            getfield com.google.common.collect.HashBiMap$BiEntry.key:Ljava/lang/Object;
            invokestatic com.google.common.base.Objects.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 8
         7: .line 313
            aload 2 /* key */
            areturn
         8: .line 314
      StackMap locals: com.google.common.collect.HashBiMap java.lang.Object java.lang.Object int int int com.google.common.collect.HashBiMap$BiEntry com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 7 /* oldEntryForKey */
            ifnull 10
            iload 3 /* force */
            ifne 10
         9: .line 315
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "key already present: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 325
      StackMap locals:
      StackMap stack:
            aload 6 /* oldEntryForValue */
            ifnull 12
        11: .line 326
            aload 0 /* this */
            aload 6 /* oldEntryForValue */
            invokevirtual com.google.common.collect.HashBiMap.delete:(Lcom/google/common/collect/HashBiMap$BiEntry;)V
        12: .line 329
      StackMap locals:
      StackMap stack:
            aload 7 /* oldEntryForKey */
            ifnull 14
        13: .line 330
            aload 0 /* this */
            aload 7 /* oldEntryForKey */
            invokevirtual com.google.common.collect.HashBiMap.delete:(Lcom/google/common/collect/HashBiMap$BiEntry;)V
        14: .line 333
      StackMap locals:
      StackMap stack:
            new com.google.common.collect.HashBiMap$BiEntry
            dup
            aload 2 /* key */
            iload 5 /* keyHash */
            aload 1 /* value */
            iload 4 /* valueHash */
            invokespecial com.google.common.collect.HashBiMap$BiEntry.<init>:(Ljava/lang/Object;ILjava/lang/Object;I)V
            astore 8 /* newEntry */
        start local 8 // com.google.common.collect.HashBiMap$BiEntry newEntry
        15: .line 334
            aload 0 /* this */
            aload 8 /* newEntry */
            aload 7 /* oldEntryForKey */
            invokevirtual com.google.common.collect.HashBiMap.insert:(Lcom/google/common/collect/HashBiMap$BiEntry;Lcom/google/common/collect/HashBiMap$BiEntry;)V
        16: .line 336
            aload 7 /* oldEntryForKey */
            ifnull 19
        17: .line 337
            aload 7 /* oldEntryForKey */
            aconst_null
            putfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        18: .line 338
            aload 7 /* oldEntryForKey */
            aconst_null
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        19: .line 340
      StackMap locals: com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 6 /* oldEntryForValue */
            ifnull 22
        20: .line 341
            aload 6 /* oldEntryForValue */
            aconst_null
            putfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        21: .line 342
            aload 6 /* oldEntryForValue */
            aconst_null
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
        22: .line 344
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.common.collect.HashBiMap.rehashIfNecessary:()V
        23: .line 345
            aload 6 /* oldEntryForValue */
            invokestatic com.google.common.collect.Maps.keyOrNull:(Ljava/util/Map$Entry;)Ljava/lang/Object;
            areturn
        end local 8 // com.google.common.collect.HashBiMap$BiEntry newEntry
        end local 7 // com.google.common.collect.HashBiMap$BiEntry oldEntryForKey
        end local 6 // com.google.common.collect.HashBiMap$BiEntry oldEntryForValue
        end local 5 // int keyHash
        end local 4 // int valueHash
        end local 3 // boolean force
        end local 2 // java.lang.Object key
        end local 1 // java.lang.Object value
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   24     0              this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0   24     1             value  TV;
            0   24     2               key  TK;
            0   24     3             force  Z
            1   24     4         valueHash  I
            2   24     5           keyHash  I
            3   24     6  oldEntryForValue  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
            4   24     7    oldEntryForKey  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
           15   24     8          newEntry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    Signature: (TV;TK;Z)TK;
    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
      value  
      key    
      force  

  private void rehashIfNecessary();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.google.common.collect.HashBiMap this
         0: .line 349
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableKToV:[Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 1 /* oldKToV */
        start local 1 // com.google.common.collect.HashBiMap$BiEntry[] oldKToV
         1: .line 350
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.size:I
            aload 1 /* oldKToV */
            arraylength
            dconst_1
            invokestatic com.google.common.collect.Hashing.needsResizing:(IID)Z
            ifeq 13
         2: .line 351
            aload 1 /* oldKToV */
            arraylength
            iconst_2
            imul
            istore 2 /* newTableSize */
        start local 2 // int newTableSize
         3: .line 353
            aload 0 /* this */
            aload 0 /* this */
            iload 2 /* newTableSize */
            invokevirtual com.google.common.collect.HashBiMap.createTable:(I)[Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap.hashTableKToV:[Lcom/google/common/collect/HashBiMap$BiEntry;
         4: .line 354
            aload 0 /* this */
            aload 0 /* this */
            iload 2 /* newTableSize */
            invokevirtual com.google.common.collect.HashBiMap.createTable:(I)[Lcom/google/common/collect/HashBiMap$BiEntry;
            putfield com.google.common.collect.HashBiMap.hashTableVToK:[Lcom/google/common/collect/HashBiMap$BiEntry;
         5: .line 355
            aload 0 /* this */
            iload 2 /* newTableSize */
            iconst_1
            isub
            putfield com.google.common.collect.HashBiMap.mask:I
         6: .line 356
            aload 0 /* this */
            iconst_0
            putfield com.google.common.collect.HashBiMap.size:I
         7: .line 358
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.firstInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 3 /* entry */
        start local 3 // com.google.common.collect.HashBiMap$BiEntry entry
         8: .line 359
            goto 11
         9: .line 361
      StackMap locals: com.google.common.collect.HashBiMap$BiEntry[] int com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 0 /* this */
            aload 3 /* entry */
            aload 3 /* entry */
            invokevirtual com.google.common.collect.HashBiMap.insert:(Lcom/google/common/collect/HashBiMap$BiEntry;Lcom/google/common/collect/HashBiMap$BiEntry;)V
        10: .line 360
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 3 /* entry */
        11: .line 359
      StackMap locals:
      StackMap stack:
            aload 3 /* entry */
            ifnonnull 9
        end local 3 // com.google.common.collect.HashBiMap$BiEntry entry
        12: .line 363
            aload 0 /* this */
            dup
            getfield com.google.common.collect.HashBiMap.modCount:I
            iconst_1
            iadd
            putfield com.google.common.collect.HashBiMap.modCount:I
        end local 2 // int newTableSize
        13: .line 365
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.google.common.collect.HashBiMap$BiEntry[] oldKToV
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            1   14     1       oldKToV  [Lcom/google/common/collect/HashBiMap$BiEntry;
            3   13     2  newTableSize  I
            8   12     3         entry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;

  private com.google.common.collect.HashBiMap$BiEntry<K, V>[] createTable(int);
    descriptor: (I)[Lcom/google/common/collect/HashBiMap$BiEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // int length
         0: .line 369
            iload 1 /* length */
            anewarray com.google.common.collect.HashBiMap$BiEntry
            areturn
        end local 1 // int length
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    1     1  length  I
    Signature: (I)[Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    MethodParameters:
        Name  Flags
      length  

  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.collect.HashBiMap this
        start local 1 // java.lang.Object key
         0: .line 376
            aload 0 /* this */
            aload 1 /* key */
            aload 1 /* key */
            invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
            invokevirtual com.google.common.collect.HashBiMap.seekByKey:(Ljava/lang/Object;I)Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 2 /* entry */
        start local 2 // com.google.common.collect.HashBiMap$BiEntry entry
         1: .line 377
            aload 2 /* entry */
            ifnonnull 3
         2: .line 378
            aconst_null
            areturn
         3: .line 380
      StackMap locals: com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 0 /* this */
            aload 2 /* entry */
            invokevirtual com.google.common.collect.HashBiMap.delete:(Lcom/google/common/collect/HashBiMap$BiEntry;)V
         4: .line 381
            aload 2 /* entry */
            aconst_null
            putfield com.google.common.collect.HashBiMap$BiEntry.prevInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
         5: .line 382
            aload 2 /* entry */
            aconst_null
            putfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
         6: .line 383
            aload 2 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.value:Ljava/lang/Object;
            areturn
        end local 2 // com.google.common.collect.HashBiMap$BiEntry entry
        end local 1 // java.lang.Object key
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    7     1    key  Ljava/lang/Object;
            1    7     2  entry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    Signature: (Ljava/lang/Object;)TV;
    RuntimeInvisibleAnnotations: 
      com.google.errorprone.annotations.CanIgnoreReturnValue()
    RuntimeVisibleTypeAnnotations: 
      METHOD_FORMAL_PARAMETER
        org.checkerframework.checker.nullness.qual.Nullable()
      METHOD_RETURN
        org.checkerframework.checker.nullness.qual.Nullable()
    MethodParameters:
      Name  Flags
      key   

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.HashBiMap this
         0: .line 389
            aload 0 /* this */
            iconst_0
            putfield com.google.common.collect.HashBiMap.size:I
         1: .line 390
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableKToV:[Lcom/google/common/collect/HashBiMap$BiEntry;
            aconst_null
            invokestatic java.util.Arrays.fill:([Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 391
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.hashTableVToK:[Lcom/google/common/collect/HashBiMap$BiEntry;
            aconst_null
            invokestatic java.util.Arrays.fill:([Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 392
            aload 0 /* this */
            aconst_null
            putfield com.google.common.collect.HashBiMap.firstInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
         4: .line 393
            aload 0 /* this */
            aconst_null
            putfield com.google.common.collect.HashBiMap.lastInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
         5: .line 394
            aload 0 /* this */
            dup
            getfield com.google.common.collect.HashBiMap.modCount:I
            iconst_1
            iadd
            putfield com.google.common.collect.HashBiMap.modCount:I
         6: .line 395
            return
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/google/common/collect/HashBiMap<TK;TV;>;

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

  public java.util.Set<K> keySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.collect.HashBiMap this
         0: .line 445
            new com.google.common.collect.HashBiMap$KeySet
            dup
            aload 0 /* this */
            invokespecial com.google.common.collect.HashBiMap$KeySet.<init>:(Lcom/google/common/collect/HashBiMap;)V
            areturn
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
    Signature: ()Ljava/util/Set<TK;>;

  public java.util.Set<V> values();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.collect.HashBiMap this
         0: .line 480
            aload 0 /* this */
            invokevirtual com.google.common.collect.HashBiMap.inverse:()Lcom/google/common/collect/BiMap;
            invokeinterface com.google.common.collect.BiMap.keySet:()Ljava/util/Set;
            areturn
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
    Signature: ()Ljava/util/Set<TV;>;

  java.util.Iterator<java.util.Map$Entry<K, V>> entryIterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.common.collect.HashBiMap this
         0: .line 485
            new com.google.common.collect.HashBiMap$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokespecial com.google.common.collect.HashBiMap$1.<init>:(Lcom/google/common/collect/HashBiMap;Lcom/google/common/collect/HashBiMap;)V
            areturn
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
    Signature: ()Ljava/util/Iterator<Ljava/util/Map$Entry<TK;TV;>;>;

  public void forEach(java.util.function.BiConsumer<? super K, ? super V>);
    descriptor: (Ljava/util/function/BiConsumer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.util.function.BiConsumer action
         0: .line 534
            aload 1 /* action */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 535
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.firstInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 2 /* entry */
        start local 2 // com.google.common.collect.HashBiMap$BiEntry entry
         2: .line 536
            goto 5
         3: .line 538
      StackMap locals: com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 1 /* action */
            aload 2 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.key:Ljava/lang/Object;
            aload 2 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.value:Ljava/lang/Object;
            invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 537
            aload 2 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 2 /* entry */
         5: .line 536
      StackMap locals:
      StackMap stack:
            aload 2 /* entry */
            ifnonnull 3
        end local 2 // com.google.common.collect.HashBiMap$BiEntry entry
         6: .line 540
            return
        end local 1 // java.util.function.BiConsumer action
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    7     1  action  Ljava/util/function/BiConsumer<-TK;-TV;>;
            2    6     2   entry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    Signature: (Ljava/util/function/BiConsumer<-TK;-TV;>;)V
    MethodParameters:
        Name  Flags
      action  

  public void replaceAll(java.util.function.BiFunction<? super K, ? super V, ? extends V>);
    descriptor: (Ljava/util/function/BiFunction;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.util.function.BiFunction function
         0: .line 544
            aload 1 /* function */
            invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 545
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.firstInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 2 /* oldFirst */
        start local 2 // com.google.common.collect.HashBiMap$BiEntry oldFirst
         2: .line 546
            aload 0 /* this */
            invokevirtual com.google.common.collect.HashBiMap.clear:()V
         3: .line 547
            aload 2 /* oldFirst */
            astore 3 /* entry */
        start local 3 // com.google.common.collect.HashBiMap$BiEntry entry
         4: goto 7
         5: .line 548
      StackMap locals: com.google.common.collect.HashBiMap$BiEntry com.google.common.collect.HashBiMap$BiEntry
      StackMap stack:
            aload 0 /* this */
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.key:Ljava/lang/Object;
            aload 1 /* function */
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.key:Ljava/lang/Object;
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.value:Ljava/lang/Object;
            invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.google.common.collect.HashBiMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 547
            aload 3 /* entry */
            getfield com.google.common.collect.HashBiMap$BiEntry.nextInKeyInsertionOrder:Lcom/google/common/collect/HashBiMap$BiEntry;
            astore 3 /* entry */
      StackMap locals:
      StackMap stack:
         7: aload 3 /* entry */
            ifnonnull 5
        end local 3 // com.google.common.collect.HashBiMap$BiEntry entry
         8: .line 550
            return
        end local 2 // com.google.common.collect.HashBiMap$BiEntry oldFirst
        end local 1 // java.util.function.BiFunction function
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    9     1  function  Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
            2    9     2  oldFirst  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
            4    8     3     entry  Lcom/google/common/collect/HashBiMap$BiEntry<TK;TV;>;
    Signature: (Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)V
    MethodParameters:
          Name  Flags
      function  

  public com.google.common.collect.BiMap<V, K> inverse();
    descriptor: ()Lcom/google/common/collect/BiMap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.google.common.collect.HashBiMap this
         0: .line 556
            aload 0 /* this */
            getfield com.google.common.collect.HashBiMap.inverse:Lcom/google/common/collect/BiMap;
            astore 1 /* result */
        start local 1 // com.google.common.collect.BiMap result
         1: .line 557
            aload 1 /* result */
            ifnonnull 2
            aload 0 /* this */
            new com.google.common.collect.HashBiMap$Inverse
            dup
            aload 0 /* this */
            invokespecial com.google.common.collect.HashBiMap$Inverse.<init>:(Lcom/google/common/collect/HashBiMap;)V
            dup_x1
            putfield com.google.common.collect.HashBiMap.inverse:Lcom/google/common/collect/BiMap;
            goto 3
      StackMap locals: com.google.common.collect.BiMap
      StackMap stack:
         2: aload 1 /* result */
      StackMap locals:
      StackMap stack: com.google.common.collect.BiMap
         3: areturn
        end local 1 // com.google.common.collect.BiMap result
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            1    4     1  result  Lcom/google/common/collect/BiMap<TV;TK;>;
    Signature: ()Lcom/google/common/collect/BiMap<TV;TK;>;

  private void writeObject(java.io.ObjectOutputStream);
    descriptor: (Ljava/io/ObjectOutputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.io.ObjectOutputStream stream
         0: .line 739
            aload 1 /* stream */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
         1: .line 740
            aload 0 /* this */
            aload 1 /* stream */
            invokestatic com.google.common.collect.Serialization.writeMap:(Ljava/util/Map;Ljava/io/ObjectOutputStream;)V
         2: .line 741
            return
        end local 1 // java.io.ObjectOutputStream stream
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    3     1  stream  Ljava/io/ObjectOutputStream;
    Exceptions:
      throws java.io.IOException
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtIncompatible()
    MethodParameters:
        Name  Flags
      stream  

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.common.collect.HashBiMap this
        start local 1 // java.io.ObjectInputStream stream
         0: .line 745
            aload 1 /* stream */
            invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
         1: .line 746
            aload 1 /* stream */
            invokestatic com.google.common.collect.Serialization.readCount:(Ljava/io/ObjectInputStream;)I
            istore 2 /* size */
        start local 2 // int size
         2: .line 747
            aload 0 /* this */
            bipush 16
            invokevirtual com.google.common.collect.HashBiMap.init:(I)V
         3: .line 748
            aload 0 /* this */
            aload 1 /* stream */
            iload 2 /* size */
            invokestatic com.google.common.collect.Serialization.populateMap:(Ljava/util/Map;Ljava/io/ObjectInputStream;I)V
         4: .line 749
            return
        end local 2 // int size
        end local 1 // java.io.ObjectInputStream stream
        end local 0 // com.google.common.collect.HashBiMap this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/google/common/collect/HashBiMap<TK;TV;>;
            0    5     1  stream  Ljava/io/ObjectInputStream;
            2    5     2    size  I
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtIncompatible()
    MethodParameters:
        Name  Flags
      stream  

  public java.util.Set entrySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokespecial com.google.common.collect.Maps$IteratorBasedAbstractMap.entrySet:()Ljava/util/Set;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public java.util.Collection values();
    descriptor: ()Ljava/util/Collection;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.google.common.collect.HashBiMap.values:()Ljava/util/Set;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Lcom/google/common/collect/Maps$IteratorBasedAbstractMap<TK;TV;>;Lcom/google/common/collect/BiMap<TK;TV;>;Ljava/io/Serializable;
SourceFile: "HashBiMap.java"
NestMembers:
  com.google.common.collect.HashBiMap$1  com.google.common.collect.HashBiMap$1$MapEntry  com.google.common.collect.HashBiMap$BiEntry  com.google.common.collect.HashBiMap$Inverse  com.google.common.collect.HashBiMap$Inverse$1  com.google.common.collect.HashBiMap$Inverse$1$InverseEntry  com.google.common.collect.HashBiMap$Inverse$InverseKeySet  com.google.common.collect.HashBiMap$Inverse$InverseKeySet$1  com.google.common.collect.HashBiMap$InverseSerializedForm  com.google.common.collect.HashBiMap$Itr  com.google.common.collect.HashBiMap$KeySet  com.google.common.collect.HashBiMap$KeySet$1
InnerClasses:
  com.google.common.collect.HashBiMap$1
  private final BiEntry = com.google.common.collect.HashBiMap$BiEntry of com.google.common.collect.HashBiMap
  private final Inverse = com.google.common.collect.HashBiMap$Inverse of com.google.common.collect.HashBiMap
  private final InverseSerializedForm = com.google.common.collect.HashBiMap$InverseSerializedForm of com.google.common.collect.HashBiMap
  abstract Itr = com.google.common.collect.HashBiMap$Itr of com.google.common.collect.HashBiMap
  private final KeySet = com.google.common.collect.HashBiMap$KeySet of com.google.common.collect.HashBiMap
  abstract IteratorBasedAbstractMap = com.google.common.collect.Maps$IteratorBasedAbstractMap of com.google.common.collect.Maps
  public abstract Entry = java.util.Map$Entry of java.util.Map
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtCompatible(emulated = true)