public class java.util.concurrent.ConcurrentHashMap<K, V> extends java.util.AbstractMap<K, V> implements java.util.concurrent.ConcurrentMap<K, V>, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.util.concurrent.ConcurrentHashMap
  super_class: java.util.AbstractMap
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 7249069246763182397

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

  static final float DEFAULT_LOAD_FACTOR;
    descriptor: F
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0.75

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

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

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

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

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

  private final transient int hashSeed;
    descriptor: I
    flags: (0x0092) ACC_PRIVATE, ACC_FINAL, ACC_TRANSIENT

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

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

  final java.util.concurrent.ConcurrentHashMap$Segment<K, V>[] segments;
    descriptor: [Ljava/util/concurrent/ConcurrentHashMap$Segment;
    flags: (0x0010) ACC_FINAL
    Signature: [Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;

  transient java.util.Set<K> keySet;
    descriptor: Ljava/util/Set;
    flags: (0x0080) ACC_TRANSIENT
    Signature: Ljava/util/Set<TK;>;

  transient java.util.Set<java.util.Map$Entry<K, V>> entrySet;
    descriptor: Ljava/util/Set;
    flags: (0x0080) ACC_TRANSIENT
    Signature: Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;

  transient java.util.Collection<V> values;
    descriptor: Ljava/util/Collection;
    flags: (0x0080) ACC_TRANSIENT
    Signature: Ljava/util/Collection<TV;>;

  private static final sun.misc.Unsafe UNSAFE;
    descriptor: Lsun/misc/Unsafe;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final long SBASE;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int SSHIFT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final long TBASE;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int TSHIFT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final long HASHSEED_OFFSET;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final long SEGSHIFT_OFFSET;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final long SEGMASK_OFFSET;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final long SEGMENTS_OFFSET;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=4, args_size=0
         0: .line 1595
            invokestatic sun.misc.Unsafe.getUnsafe:()Lsun/misc/Unsafe;
            putstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
         1: .line 1596
            ldc [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            astore 2 /* tc */
        start local 2 // java.lang.Class tc
         2: .line 1597
            ldc [Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 3 /* sc */
        start local 3 // java.lang.Class sc
         3: .line 1598
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 2 /* tc */
            invokevirtual sun.misc.Unsafe.arrayBaseOffset:(Ljava/lang/Class;)I
            i2l
            putstatic java.util.concurrent.ConcurrentHashMap.TBASE:J
         4: .line 1599
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 3 /* sc */
            invokevirtual sun.misc.Unsafe.arrayBaseOffset:(Ljava/lang/Class;)I
            i2l
            putstatic java.util.concurrent.ConcurrentHashMap.SBASE:J
         5: .line 1600
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 2 /* tc */
            invokevirtual sun.misc.Unsafe.arrayIndexScale:(Ljava/lang/Class;)I
            istore 1 /* ts */
        start local 1 // int ts
         6: .line 1601
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 3 /* sc */
            invokevirtual sun.misc.Unsafe.arrayIndexScale:(Ljava/lang/Class;)I
            istore 0 /* ss */
        start local 0 // int ss
         7: .line 1602
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
         8: .line 1603
            ldc Ljava/util/concurrent/ConcurrentHashMap;
            ldc "hashSeed"
            invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
         9: .line 1602
            invokevirtual sun.misc.Unsafe.objectFieldOffset:(Ljava/lang/reflect/Field;)J
            putstatic java.util.concurrent.ConcurrentHashMap.HASHSEED_OFFSET:J
        10: .line 1604
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
        11: .line 1605
            ldc Ljava/util/concurrent/ConcurrentHashMap;
            ldc "segmentShift"
            invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
        12: .line 1604
            invokevirtual sun.misc.Unsafe.objectFieldOffset:(Ljava/lang/reflect/Field;)J
            putstatic java.util.concurrent.ConcurrentHashMap.SEGSHIFT_OFFSET:J
        13: .line 1606
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
        14: .line 1607
            ldc Ljava/util/concurrent/ConcurrentHashMap;
            ldc "segmentMask"
            invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
        15: .line 1606
            invokevirtual sun.misc.Unsafe.objectFieldOffset:(Ljava/lang/reflect/Field;)J
            putstatic java.util.concurrent.ConcurrentHashMap.SEGMASK_OFFSET:J
        16: .line 1608
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
        17: .line 1609
            ldc Ljava/util/concurrent/ConcurrentHashMap;
            ldc "segments"
            invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
        18: .line 1608
            invokevirtual sun.misc.Unsafe.objectFieldOffset:(Ljava/lang/reflect/Field;)J
            putstatic java.util.concurrent.ConcurrentHashMap.SEGMENTS_OFFSET:J
        end local 3 // java.lang.Class sc
        end local 2 // java.lang.Class tc
        19: .line 1610
            goto 22
        end local 1 // int ts
        end local 0 // int ss
      StackMap locals:
      StackMap stack: java.lang.Exception
        20: astore 2 /* e */
        start local 2 // java.lang.Exception e
        21: .line 1611
            new java.lang.Error
            dup
            aload 2 /* e */
            invokespecial java.lang.Error.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.Exception e
        start local 0 // int ss
        start local 1 // int ts
        22: .line 1613
      StackMap locals: int int
      StackMap stack:
            iload 0 /* ss */
            iload 0 /* ss */
            iconst_1
            isub
            iand
            ifne 23
            iload 1 /* ts */
            iload 1 /* ts */
            iconst_1
            isub
            iand
            ifeq 24
        23: .line 1614
      StackMap locals:
      StackMap stack:
            new java.lang.Error
            dup
            ldc "data type scale not a power of two"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        24: .line 1615
      StackMap locals:
      StackMap stack:
            bipush 31
            iload 0 /* ss */
            invokestatic java.lang.Integer.numberOfLeadingZeros:(I)I
            isub
            putstatic java.util.concurrent.ConcurrentHashMap.SSHIFT:I
        25: .line 1616
            bipush 31
            iload 1 /* ts */
            invokestatic java.lang.Integer.numberOfLeadingZeros:(I)I
            isub
            putstatic java.util.concurrent.ConcurrentHashMap.TSHIFT:I
        end local 1 // int ts
        end local 0 // int ss
        26: .line 1617
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            7   20     0    ss  I
           22   26     0    ss  I
            6   20     1    ts  I
           22   26     1    ts  I
            2   19     2    tc  Ljava/lang/Class;
            3   19     3    sc  Ljava/lang/Class;
           21   22     2     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0    19      20  Class java.lang.Exception

  private static int randomHashSeed(java.util.concurrent.ConcurrentHashMap);
    descriptor: (Ljava/util/concurrent/ConcurrentHashMap;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap instance
         0: .line 231
            invokestatic sun.misc.VM.isBooted:()Z
            ifeq 2
            getstatic java.util.concurrent.ConcurrentHashMap$Holder.ALTERNATIVE_HASHING:Z
            ifeq 2
         1: .line 232
            aload 0 /* instance */
            invokestatic sun.misc.Hashing.randomHashSeed:(Ljava/lang/Object;)I
            ireturn
         2: .line 235
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.util.concurrent.ConcurrentHashMap instance
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0  instance  Ljava/util/concurrent/ConcurrentHashMap;
    MethodParameters:
          Name  Flags
      instance  

  static final <K, V> java.util.concurrent.ConcurrentHashMap$HashEntry<K, V> entryAt(java.util.concurrent.ConcurrentHashMap$HashEntry<K, V>[], int);
    descriptor: ([Ljava/util/concurrent/ConcurrentHashMap$HashEntry;I)Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
        start local 1 // int i
         0: .line 305
            aload 0 /* tab */
            ifnonnull 1
            aconst_null
            goto 4
         1: .line 306
      StackMap locals:
      StackMap stack:
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
         2: .line 307
            aload 0 /* tab */
            iload 1 /* i */
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.TSHIFT:I
            lshl
            getstatic java.util.concurrent.ConcurrentHashMap.TBASE:J
            ladd
         3: .line 306
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$HashEntry
         4: .line 305
      StackMap locals:
      StackMap stack: java.util.concurrent.ConcurrentHashMap$HashEntry
            areturn
        end local 1 // int i
        end local 0 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0   tab  [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            0    5     1     i  I
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>([Ljava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;I)Ljava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;
    MethodParameters:
      Name  Flags
      tab   
      i     

  static final <K, V> void setEntryAt(java.util.concurrent.ConcurrentHashMap$HashEntry<K, V>[], int, java.util.concurrent.ConcurrentHashMap$HashEntry<K, V>);
    descriptor: ([Ljava/util/concurrent/ConcurrentHashMap$HashEntry;ILjava/util/concurrent/ConcurrentHashMap$HashEntry;)V
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
        start local 1 // int i
        start local 2 // java.util.concurrent.ConcurrentHashMap$HashEntry e
         0: .line 316
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 0 /* tab */
            iload 1 /* i */
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.TSHIFT:I
            lshl
            getstatic java.util.concurrent.ConcurrentHashMap.TBASE:J
            ladd
            aload 2 /* e */
            invokevirtual sun.misc.Unsafe.putOrderedObject:(Ljava/lang/Object;JLjava/lang/Object;)V
         1: .line 317
            return
        end local 2 // java.util.concurrent.ConcurrentHashMap$HashEntry e
        end local 1 // int i
        end local 0 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   tab  [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            0    2     1     i  I
            0    2     2     e  Ljava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>([Ljava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;ILjava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;)V
    MethodParameters:
      Name  Flags
      tab   
      i     
      e     

  private int hash(java.lang.Object);
    descriptor: (Ljava/lang/Object;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object k
         0: .line 327
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.hashSeed:I
            istore 2 /* h */
        start local 2 // int h
         1: .line 329
            iload 2 /* h */
            ifeq 3
            aload 1 /* k */
            instanceof java.lang.String
            ifeq 3
         2: .line 330
            aload 1 /* k */
            checkcast java.lang.String
            invokestatic sun.misc.Hashing.stringHash32:(Ljava/lang/String;)I
            ireturn
         3: .line 333
      StackMap locals: int
      StackMap stack:
            iload 2 /* h */
            aload 1 /* k */
            invokevirtual java.lang.Object.hashCode:()I
            ixor
            istore 2 /* h */
         4: .line 337
            iload 2 /* h */
            iload 2 /* h */
            bipush 15
            ishl
            sipush -12931
            ixor
            iadd
            istore 2 /* h */
         5: .line 338
            iload 2 /* h */
            iload 2 /* h */
            bipush 10
            iushr
            ixor
            istore 2 /* h */
         6: .line 339
            iload 2 /* h */
            iload 2 /* h */
            iconst_3
            ishl
            iadd
            istore 2 /* h */
         7: .line 340
            iload 2 /* h */
            iload 2 /* h */
            bipush 6
            iushr
            ixor
            istore 2 /* h */
         8: .line 341
            iload 2 /* h */
            iload 2 /* h */
            iconst_2
            ishl
            iload 2 /* h */
            bipush 14
            ishl
            iadd
            iadd
            istore 2 /* h */
         9: .line 342
            iload 2 /* h */
            iload 2 /* h */
            bipush 16
            iushr
            ixor
            ireturn
        end local 2 // int h
        end local 1 // java.lang.Object k
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   10     1     k  Ljava/lang/Object;
            1   10     2     h  I
    MethodParameters:
      Name  Flags
      k     

  static final <K, V> java.util.concurrent.ConcurrentHashMap$Segment<K, V> segmentAt(java.util.concurrent.ConcurrentHashMap$Segment<K, V>[], int);
    descriptor: ([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap$Segment[] ss
        start local 1 // int j
         0: .line 724
            iload 1 /* j */
            getstatic java.util.concurrent.ConcurrentHashMap.SSHIFT:I
            ishl
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.SBASE:J
            ladd
            lstore 2 /* u */
        start local 2 // long u
         1: .line 725
            aload 0 /* ss */
            ifnonnull 2
            aconst_null
            goto 3
         2: .line 726
      StackMap locals: long
      StackMap stack:
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 0 /* ss */
            lload 2 /* u */
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment
         3: .line 725
      StackMap locals:
      StackMap stack: java.util.concurrent.ConcurrentHashMap$Segment
            areturn
        end local 2 // long u
        end local 1 // int j
        end local 0 // java.util.concurrent.ConcurrentHashMap$Segment[] ss
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0    ss  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
            0    4     1     j  I
            1    4     2     u  J
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>([Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;I)Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
    MethodParameters:
      Name  Flags
      ss    
      j     

  private java.util.concurrent.ConcurrentHashMap$Segment<K, V> ensureSegment(int);
    descriptor: (I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=12, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // int k
         0: .line 738
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 2 /* ss */
        start local 2 // java.util.concurrent.ConcurrentHashMap$Segment[] ss
         1: .line 739
            iload 1 /* k */
            getstatic java.util.concurrent.ConcurrentHashMap.SSHIFT:I
            ishl
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.SBASE:J
            ladd
            lstore 3 /* u */
        start local 3 // long u
         2: .line 741
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 2 /* ss */
            lload 3 /* u */
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment
            dup
            astore 5 /* seg */
        start local 5 // java.util.concurrent.ConcurrentHashMap$Segment seg
         3: ifnonnull 15
         4: .line 742
            aload 2 /* ss */
            iconst_0
            aaload
            astore 6 /* proto */
        start local 6 // java.util.concurrent.ConcurrentHashMap$Segment proto
         5: .line 743
            aload 6 /* proto */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.table:[Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            arraylength
            istore 7 /* cap */
        start local 7 // int cap
         6: .line 744
            aload 6 /* proto */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.loadFactor:F
            fstore 8 /* lf */
        start local 8 // float lf
         7: .line 745
            iload 7 /* cap */
            i2f
            fload 8 /* lf */
            fmul
            f2i
            istore 9 /* threshold */
        start local 9 // int threshold
         8: .line 746
            iload 7 /* cap */
            anewarray java.util.concurrent.ConcurrentHashMap$HashEntry
            astore 10 /* tab */
        start local 10 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
         9: .line 747
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 2 /* ss */
            lload 3 /* u */
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment
            dup
            astore 5 /* seg */
            ifnonnull 15
        10: .line 749
            new java.util.concurrent.ConcurrentHashMap$Segment
            dup
            fload 8 /* lf */
            iload 9 /* threshold */
            aload 10 /* tab */
            invokespecial java.util.concurrent.ConcurrentHashMap$Segment.<init>:(FI[Ljava/util/concurrent/ConcurrentHashMap$HashEntry;)V
            astore 11 /* s */
        start local 11 // java.util.concurrent.ConcurrentHashMap$Segment s
        11: .line 750
            goto 14
        12: .line 752
      StackMap locals: java.util.concurrent.ConcurrentHashMap int java.util.concurrent.ConcurrentHashMap$Segment[] long java.util.concurrent.ConcurrentHashMap$Segment java.util.concurrent.ConcurrentHashMap$Segment int float int java.util.concurrent.ConcurrentHashMap$HashEntry[] java.util.concurrent.ConcurrentHashMap$Segment
      StackMap stack:
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 2 /* ss */
            lload 3 /* u */
            aconst_null
            aload 11 /* s */
            dup
            astore 5 /* seg */
            invokevirtual sun.misc.Unsafe.compareAndSwapObject:(Ljava/lang/Object;JLjava/lang/Object;Ljava/lang/Object;)Z
            ifeq 14
        13: .line 753
            goto 15
        14: .line 750
      StackMap locals:
      StackMap stack:
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 2 /* ss */
            lload 3 /* u */
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment
            dup
            astore 5 /* seg */
            ifnull 12
        end local 11 // java.util.concurrent.ConcurrentHashMap$Segment s
        end local 10 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
        end local 9 // int threshold
        end local 8 // float lf
        end local 7 // int cap
        end local 6 // java.util.concurrent.ConcurrentHashMap$Segment proto
        15: .line 757
      StackMap locals: java.util.concurrent.ConcurrentHashMap int java.util.concurrent.ConcurrentHashMap$Segment[] long java.util.concurrent.ConcurrentHashMap$Segment
      StackMap stack:
            aload 5 /* seg */
            areturn
        end local 5 // java.util.concurrent.ConcurrentHashMap$Segment seg
        end local 3 // long u
        end local 2 // java.util.concurrent.ConcurrentHashMap$Segment[] ss
        end local 1 // int k
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   16     1          k  I
            1   16     2         ss  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
            2   16     3          u  J
            3   16     5        seg  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
            5   15     6      proto  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
            6   15     7        cap  I
            7   15     8         lf  F
            8   15     9  threshold  I
            9   15    10        tab  [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
           11   15    11          s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
    Signature: (I)Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
    MethodParameters:
      Name  Flags
      k     

  private java.util.concurrent.ConcurrentHashMap$Segment<K, V> segmentForHash(int);
    descriptor: (I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // int h
         0: .line 767
            iload 1 /* h */
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentShift:I
            iushr
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentMask:I
            iand
            getstatic java.util.concurrent.ConcurrentHashMap.SSHIFT:I
            ishl
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.SBASE:J
            ladd
            lstore 2 /* u */
        start local 2 // long u
         1: .line 768
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            lload 2 /* u */
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment
            areturn
        end local 2 // long u
        end local 1 // int h
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0    2     1     h  I
            1    2     2     u  J
    Signature: (I)Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
    MethodParameters:
      Name  Flags
      h     

  static final <K, V> java.util.concurrent.ConcurrentHashMap$HashEntry<K, V> entryForHash(java.util.concurrent.ConcurrentHashMap$Segment<K, V>, int);
    descriptor: (Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap$Segment seg
        start local 1 // int h
         0: .line 777
            aload 0 /* seg */
            ifnull 2
            aload 0 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.table:[Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            dup
            astore 2 /* tab */
        start local 2 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
         1: ifnonnull 3
        end local 2 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
      StackMap locals:
      StackMap stack:
         2: aconst_null
            goto 6
        start local 2 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
         3: .line 778
      StackMap locals: java.util.concurrent.ConcurrentHashMap$HashEntry[]
      StackMap stack:
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
         4: .line 779
            aload 2 /* tab */
            aload 2 /* tab */
            arraylength
            iconst_1
            isub
            iload 1 /* h */
            iand
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.TSHIFT:I
            lshl
            getstatic java.util.concurrent.ConcurrentHashMap.TBASE:J
            ladd
         5: .line 778
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$HashEntry
        end local 2 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
         6: .line 777
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment int
      StackMap stack: java.util.concurrent.ConcurrentHashMap$HashEntry
            areturn
        end local 1 // int h
        end local 0 // java.util.concurrent.ConcurrentHashMap$Segment seg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0   seg  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
            0    7     1     h  I
            1    2     2   tab  [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            3    6     2   tab  [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;I)Ljava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;
    MethodParameters:
      Name  Flags
      seg   
      h     

  public void <init>(int, float, int);
    descriptor: (IFI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // int initialCapacity
        start local 2 // float loadFactor
        start local 3 // int concurrencyLevel
         0: .line 801
            aload 0 /* this */
            invokespecial java.util.AbstractMap.<init>:()V
         1: .line 228
            aload 0 /* this */
            aload 0 /* this */
            invokestatic java.util.concurrent.ConcurrentHashMap.randomHashSeed:(Ljava/util/concurrent/ConcurrentHashMap;)I
            putfield java.util.concurrent.ConcurrentHashMap.hashSeed:I
         2: .line 803
            fload 2 /* loadFactor */
            fconst_0
            fcmpl
            ifle 3
            iload 1 /* initialCapacity */
            iflt 3
            iload 3 /* concurrencyLevel */
            ifgt 4
         3: .line 804
      StackMap locals: java.util.concurrent.ConcurrentHashMap int float int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         4: .line 805
      StackMap locals:
      StackMap stack:
            iload 3 /* concurrencyLevel */
            ldc 65536
            if_icmple 6
         5: .line 806
            ldc 65536
            istore 3 /* concurrencyLevel */
         6: .line 808
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* sshift */
        start local 4 // int sshift
         7: .line 809
            iconst_1
            istore 5 /* ssize */
        start local 5 // int ssize
         8: .line 810
            goto 11
         9: .line 811
      StackMap locals: int int
      StackMap stack:
            iinc 4 /* sshift */ 1
        10: .line 812
            iload 5 /* ssize */
            iconst_1
            ishl
            istore 5 /* ssize */
        11: .line 810
      StackMap locals:
      StackMap stack:
            iload 5 /* ssize */
            iload 3 /* concurrencyLevel */
            if_icmplt 9
        12: .line 814
            aload 0 /* this */
            bipush 32
            iload 4 /* sshift */
            isub
            putfield java.util.concurrent.ConcurrentHashMap.segmentShift:I
        13: .line 815
            aload 0 /* this */
            iload 5 /* ssize */
            iconst_1
            isub
            putfield java.util.concurrent.ConcurrentHashMap.segmentMask:I
        14: .line 816
            iload 1 /* initialCapacity */
            ldc 1073741824
            if_icmple 16
        15: .line 817
            ldc 1073741824
            istore 1 /* initialCapacity */
        16: .line 818
      StackMap locals:
      StackMap stack:
            iload 1 /* initialCapacity */
            iload 5 /* ssize */
            idiv
            istore 6 /* c */
        start local 6 // int c
        17: .line 819
            iload 6 /* c */
            iload 5 /* ssize */
            imul
            iload 1 /* initialCapacity */
            if_icmpge 19
        18: .line 820
            iinc 6 /* c */ 1
        19: .line 821
      StackMap locals: int
      StackMap stack:
            iconst_2
            istore 7 /* cap */
        start local 7 // int cap
        20: .line 822
            goto 22
        21: .line 823
      StackMap locals: int
      StackMap stack:
            iload 7 /* cap */
            iconst_1
            ishl
            istore 7 /* cap */
        22: .line 822
      StackMap locals:
      StackMap stack:
            iload 7 /* cap */
            iload 6 /* c */
            if_icmplt 21
        23: .line 826
            new java.util.concurrent.ConcurrentHashMap$Segment
            dup
            fload 2 /* loadFactor */
            iload 7 /* cap */
            i2f
            fload 2 /* loadFactor */
            fmul
            f2i
        24: .line 827
            iload 7 /* cap */
            anewarray java.util.concurrent.ConcurrentHashMap$HashEntry
        25: .line 826
            invokespecial java.util.concurrent.ConcurrentHashMap$Segment.<init>:(FI[Ljava/util/concurrent/ConcurrentHashMap$HashEntry;)V
        26: .line 825
            astore 8 /* s0 */
        start local 8 // java.util.concurrent.ConcurrentHashMap$Segment s0
        27: .line 828
            iload 5 /* ssize */
            anewarray java.util.concurrent.ConcurrentHashMap$Segment
            astore 9 /* ss */
        start local 9 // java.util.concurrent.ConcurrentHashMap$Segment[] ss
        28: .line 829
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 9 /* ss */
            getstatic java.util.concurrent.ConcurrentHashMap.SBASE:J
            aload 8 /* s0 */
            invokevirtual sun.misc.Unsafe.putOrderedObject:(Ljava/lang/Object;JLjava/lang/Object;)V
        29: .line 830
            aload 0 /* this */
            aload 9 /* ss */
            putfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
        30: .line 831
            return
        end local 9 // java.util.concurrent.ConcurrentHashMap$Segment[] ss
        end local 8 // java.util.concurrent.ConcurrentHashMap$Segment s0
        end local 7 // int cap
        end local 6 // int c
        end local 5 // int ssize
        end local 4 // int sshift
        end local 3 // int concurrencyLevel
        end local 2 // float loadFactor
        end local 1 // int initialCapacity
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   31     0              this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   31     1   initialCapacity  I
            0   31     2        loadFactor  F
            0   31     3  concurrencyLevel  I
            7   31     4            sshift  I
            8   31     5             ssize  I
           17   31     6                 c  I
           20   31     7               cap  I
           27   31     8                s0  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
           28   31     9                ss  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
    MethodParameters:
                  Name  Flags
      initialCapacity   
      loadFactor        
      concurrencyLevel  

  public void <init>(int, float);
    descriptor: (IF)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // int initialCapacity
        start local 2 // float loadFactor
         0: .line 848
            aload 0 /* this */
            iload 1 /* initialCapacity */
            fload 2 /* loadFactor */
            bipush 16
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(IFI)V
         1: .line 849
            return
        end local 2 // float loadFactor
        end local 1 // int initialCapacity
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0    2     1  initialCapacity  I
            0    2     2       loadFactor  F
    MethodParameters:
                 Name  Flags
      initialCapacity  
      loadFactor       

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // int initialCapacity
         0: .line 861
            aload 0 /* this */
            iload 1 /* initialCapacity */
            ldc 0.75
            bipush 16
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(IFI)V
         1: .line 862
            return
        end local 1 // int initialCapacity
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0    2     1  initialCapacity  I
    MethodParameters:
                 Name  Flags
      initialCapacity  

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap this
         0: .line 869
            aload 0 /* this */
            bipush 16
            ldc 0.75
            bipush 16
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(IFI)V
         1: .line 870
            return
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;

  public void <init>(java.util.Map<? extends K, ? extends V>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.util.Map m
         0: .line 881
            aload 0 /* this */
            aload 1 /* m */
            invokeinterface java.util.Map.size:()I
            i2f
            ldc 0.75
            fdiv
            f2i
            iconst_1
            iadd
         1: .line 882
            bipush 16
         2: .line 881
            invokestatic java.lang.Math.max:(II)I
         3: .line 883
            ldc 0.75
            bipush 16
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(IFI)V
         4: .line 884
            aload 0 /* this */
            aload 1 /* m */
            invokevirtual java.util.concurrent.ConcurrentHashMap.putAll:(Ljava/util/Map;)V
         5: .line 885
            return
        end local 1 // java.util.Map m
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0    6     1     m  Ljava/util/Map<+TK;+TV;>;
    Signature: (Ljava/util/Map<+TK;+TV;>;)V
    MethodParameters:
      Name  Flags
      m     

  public boolean isEmpty();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap this
         0: .line 902
            lconst_0
            lstore 1 /* sum */
        start local 1 // long sum
         1: .line 903
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 3 /* segments */
        start local 3 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
         2: .line 904
            iconst_0
            istore 4 /* j */
        start local 4 // int j
         3: goto 10
         4: .line 905
      StackMap locals: long java.util.concurrent.ConcurrentHashMap$Segment[] int
      StackMap stack:
            aload 3 /* segments */
            iload 4 /* j */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 5 /* seg */
        start local 5 // java.util.concurrent.ConcurrentHashMap$Segment seg
         5: .line 906
            aload 5 /* seg */
            ifnull 9
         6: .line 907
            aload 5 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.count:I
            ifeq 8
         7: .line 908
            iconst_0
            ireturn
         8: .line 909
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment
      StackMap stack:
            lload 1 /* sum */
            aload 5 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.modCount:I
            i2l
            ladd
            lstore 1 /* sum */
        end local 5 // java.util.concurrent.ConcurrentHashMap$Segment seg
         9: .line 904
      StackMap locals:
      StackMap stack:
            iinc 4 /* j */ 1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* j */
            aload 3 /* segments */
            arraylength
            if_icmplt 4
        end local 4 // int j
        11: .line 912
            lload 1 /* sum */
            lconst_0
            lcmp
            ifeq 23
        12: .line 913
            iconst_0
            istore 4 /* j */
        start local 4 // int j
        13: goto 20
        14: .line 914
      StackMap locals:
      StackMap stack:
            aload 3 /* segments */
            iload 4 /* j */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 5 /* seg */
        start local 5 // java.util.concurrent.ConcurrentHashMap$Segment seg
        15: .line 915
            aload 5 /* seg */
            ifnull 19
        16: .line 916
            aload 5 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.count:I
            ifeq 18
        17: .line 917
            iconst_0
            ireturn
        18: .line 918
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment
      StackMap stack:
            lload 1 /* sum */
            aload 5 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.modCount:I
            i2l
            lsub
            lstore 1 /* sum */
        end local 5 // java.util.concurrent.ConcurrentHashMap$Segment seg
        19: .line 913
      StackMap locals:
      StackMap stack:
            iinc 4 /* j */ 1
      StackMap locals:
      StackMap stack:
        20: iload 4 /* j */
            aload 3 /* segments */
            arraylength
            if_icmplt 14
        end local 4 // int j
        21: .line 921
            lload 1 /* sum */
            lconst_0
            lcmp
            ifeq 23
        22: .line 922
            iconst_0
            ireturn
        23: .line 924
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
        end local 1 // long sum
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   24     0      this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            1   24     1       sum  J
            2   24     3  segments  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
            3   11     4         j  I
            5    9     5       seg  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
           13   21     4         j  I
           15   19     5       seg  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=14, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap this
         0: .line 937
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 1 /* segments */
        start local 1 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
         1: .line 941
            lconst_0
            lstore 6 /* last */
        start local 6 // long last
         2: .line 942
            iconst_m1
            istore 8 /* retries */
        start local 8 // int retries
         3: .line 945
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.util.concurrent.ConcurrentHashMap$Segment[] top top top top long int
      StackMap stack:
            iload 8 /* retries */
            iinc 8 /* retries */ 1
            iconst_2
            if_icmpne 9
         4: .line 946
            iconst_0
            istore 9 /* j */
        start local 9 // int j
         5: goto 8
         6: .line 947
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 9 /* j */
            invokevirtual java.util.concurrent.ConcurrentHashMap.ensureSegment:(I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.lock:()V
         7: .line 946
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
         8: iload 9 /* j */
            aload 1 /* segments */
            arraylength
            if_icmplt 6
        end local 9 // int j
         9: .line 949
      StackMap locals:
      StackMap stack:
            lconst_0
            lstore 4 /* sum */
        start local 4 // long sum
        10: .line 950
            iconst_0
            istore 2 /* size */
        start local 2 // int size
        11: .line 951
            iconst_0
            istore 3 /* overflow */
        start local 3 // boolean overflow
        12: .line 952
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        13: goto 21
        14: .line 953
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.util.concurrent.ConcurrentHashMap$Segment[] int int long long int int
      StackMap stack:
            aload 1 /* segments */
            iload 9 /* j */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 10 /* seg */
        start local 10 // java.util.concurrent.ConcurrentHashMap$Segment seg
        15: .line 954
            aload 10 /* seg */
            ifnull 20
        16: .line 955
            lload 4 /* sum */
            aload 10 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.modCount:I
            i2l
            ladd
            lstore 4 /* sum */
        17: .line 956
            aload 10 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.count:I
            istore 11 /* c */
        start local 11 // int c
        18: .line 957
            iload 11 /* c */
            iflt 19
            iload 2 /* size */
            iload 11 /* c */
            iadd
            dup
            istore 2 /* size */
            ifge 20
        19: .line 958
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment int
      StackMap stack:
            iconst_1
            istore 3 /* overflow */
        end local 11 // int c
        end local 10 // java.util.concurrent.ConcurrentHashMap$Segment seg
        20: .line 952
      StackMap locals:
      StackMap stack:
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        21: iload 9 /* j */
            aload 1 /* segments */
            arraylength
            if_icmplt 14
        end local 9 // int j
        22: .line 961
            lload 4 /* sum */
            lload 6 /* last */
            lcmp
            ifne 24
        23: .line 962
            goto 34
        24: .line 963
      StackMap locals:
      StackMap stack:
            lload 4 /* sum */
            lstore 6 /* last */
        end local 4 // long sum
        end local 3 // boolean overflow
        end local 2 // int size
        25: .line 944
            goto 3
        26: .line 965
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.util.concurrent.ConcurrentHashMap$Segment[] top top top top long int
      StackMap stack: java.lang.Throwable
            astore 12
        27: .line 966
            iload 8 /* retries */
            iconst_2
            if_icmple 33
        28: .line 967
            iconst_0
            istore 13 /* j */
        start local 13 // int j
        29: goto 32
        30: .line 968
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.util.concurrent.ConcurrentHashMap$Segment[] top top top top long int top top top java.lang.Throwable int
      StackMap stack:
            aload 1 /* segments */
            iload 13 /* j */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.unlock:()V
        31: .line 967
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
        32: iload 13 /* j */
            aload 1 /* segments */
            arraylength
            if_icmplt 30
        end local 13 // int j
        33: .line 970
      StackMap locals:
      StackMap stack:
            aload 12
            athrow
        start local 2 // int size
        start local 3 // boolean overflow
        start local 4 // long sum
        34: .line 966
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.util.concurrent.ConcurrentHashMap$Segment[] int int long long int
      StackMap stack:
            iload 8 /* retries */
            iconst_2
            if_icmple 40
        35: .line 967
            iconst_0
            istore 13 /* j */
        start local 13 // int j
        36: goto 39
        37: .line 968
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.util.concurrent.ConcurrentHashMap$Segment[] int int long long int top top top top int
      StackMap stack:
            aload 1 /* segments */
            iload 13 /* j */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.unlock:()V
        38: .line 967
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
        39: iload 13 /* j */
            aload 1 /* segments */
            arraylength
            if_icmplt 37
        end local 13 // int j
        40: .line 971
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.util.concurrent.ConcurrentHashMap$Segment[] int int long long int
      StackMap stack:
            iload 3 /* overflow */
            ifeq 41
            ldc 2147483647
            goto 42
      StackMap locals:
      StackMap stack:
        41: iload 2 /* size */
      StackMap locals:
      StackMap stack: int
        42: ireturn
        end local 8 // int retries
        end local 6 // long last
        end local 4 // long sum
        end local 3 // boolean overflow
        end local 2 // int size
        end local 1 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   43     0      this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            1   43     1  segments  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
           11   25     2      size  I
           34   43     2      size  I
           12   25     3  overflow  Z
           34   43     3  overflow  Z
           10   25     4       sum  J
           34   43     4       sum  J
            2   43     6      last  J
            3   43     8   retries  I
            5    9     9         j  I
           13   22     9         j  I
           15   20    10       seg  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
           18   20    11         c  I
           29   33    13         j  I
           36   40    13         j  I
      Exception table:
        from    to  target  type
           3    26      26  any

  public V get();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object key
         0: .line 988
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.concurrent.ConcurrentHashMap.hash:(Ljava/lang/Object;)I
            istore 4 /* h */
        start local 4 // int h
         1: .line 989
            iload 4 /* h */
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentShift:I
            iushr
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentMask:I
            iand
            getstatic java.util.concurrent.ConcurrentHashMap.SSHIFT:I
            ishl
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.SBASE:J
            ladd
            lstore 5 /* u */
        start local 5 // long u
         2: .line 990
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            lload 5 /* u */
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment
            dup
            astore 2 /* s */
        start local 2 // java.util.concurrent.ConcurrentHashMap$Segment s
         3: ifnull 15
         4: .line 991
            aload 2 /* s */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.table:[Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            dup
            astore 3 /* tab */
        start local 3 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
         5: ifnull 15
         6: .line 992
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
         7: .line 993
            aload 3 /* tab */
            aload 3 /* tab */
            arraylength
            iconst_1
            isub
            iload 4 /* h */
            iand
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.TSHIFT:I
            lshl
            getstatic java.util.concurrent.ConcurrentHashMap.TBASE:J
            ladd
         8: .line 992
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$HashEntry
            astore 7 /* e */
        start local 7 // java.util.concurrent.ConcurrentHashMap$HashEntry e
         9: .line 994
            goto 14
        10: .line 996
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment java.util.concurrent.ConcurrentHashMap$HashEntry[] int long java.util.concurrent.ConcurrentHashMap$HashEntry
      StackMap stack:
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.key:Ljava/lang/Object;
            dup
            astore 8 /* k */
        start local 8 // java.lang.Object k
        11: aload 1 /* key */
            if_acmpeq 12
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.hash:I
            iload 4 /* h */
            if_icmpne 13
            aload 1 /* key */
            aload 8 /* k */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 997
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.value:Ljava/lang/Object;
            areturn
        end local 8 // java.lang.Object k
        13: .line 994
      StackMap locals:
      StackMap stack:
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.next:Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            astore 7 /* e */
      StackMap locals:
      StackMap stack:
        14: aload 7 /* e */
            ifnonnull 10
        end local 7 // java.util.concurrent.ConcurrentHashMap$HashEntry e
        end local 3 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
        15: .line 1000
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment top int long
      StackMap stack:
            aconst_null
            areturn
        end local 5 // long u
        end local 4 // int h
        end local 2 // java.util.concurrent.ConcurrentHashMap$Segment s
        end local 1 // java.lang.Object key
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   16     1   key  Ljava/lang/Object;
            3   16     2     s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
            5   15     3   tab  [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            1   16     4     h  I
            2   16     5     u  J
            9   15     7     e  Ljava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;
           11   13     8     k  TK;
    Signature: (Ljava/lang/Object;)TV;
    MethodParameters:
      Name  Flags
      key   

  public boolean containsKey(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object key
         0: .line 1016
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.concurrent.ConcurrentHashMap.hash:(Ljava/lang/Object;)I
            istore 4 /* h */
        start local 4 // int h
         1: .line 1017
            iload 4 /* h */
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentShift:I
            iushr
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentMask:I
            iand
            getstatic java.util.concurrent.ConcurrentHashMap.SSHIFT:I
            ishl
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.SBASE:J
            ladd
            lstore 5 /* u */
        start local 5 // long u
         2: .line 1018
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            lload 5 /* u */
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment
            dup
            astore 2 /* s */
        start local 2 // java.util.concurrent.ConcurrentHashMap$Segment s
         3: ifnull 15
         4: .line 1019
            aload 2 /* s */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.table:[Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            dup
            astore 3 /* tab */
        start local 3 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
         5: ifnull 15
         6: .line 1020
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
         7: .line 1021
            aload 3 /* tab */
            aload 3 /* tab */
            arraylength
            iconst_1
            isub
            iload 4 /* h */
            iand
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.TSHIFT:I
            lshl
            getstatic java.util.concurrent.ConcurrentHashMap.TBASE:J
            ladd
         8: .line 1020
            invokevirtual sun.misc.Unsafe.getObjectVolatile:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$HashEntry
            astore 7 /* e */
        start local 7 // java.util.concurrent.ConcurrentHashMap$HashEntry e
         9: .line 1022
            goto 14
        10: .line 1024
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment java.util.concurrent.ConcurrentHashMap$HashEntry[] int long java.util.concurrent.ConcurrentHashMap$HashEntry
      StackMap stack:
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.key:Ljava/lang/Object;
            dup
            astore 8 /* k */
        start local 8 // java.lang.Object k
        11: aload 1 /* key */
            if_acmpeq 12
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.hash:I
            iload 4 /* h */
            if_icmpne 13
            aload 1 /* key */
            aload 8 /* k */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 1025
      StackMap locals: java.lang.Object
      StackMap stack:
            iconst_1
            ireturn
        end local 8 // java.lang.Object k
        13: .line 1022
      StackMap locals:
      StackMap stack:
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.next:Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            astore 7 /* e */
      StackMap locals:
      StackMap stack:
        14: aload 7 /* e */
            ifnonnull 10
        end local 7 // java.util.concurrent.ConcurrentHashMap$HashEntry e
        end local 3 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
        15: .line 1028
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment top int long
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // long u
        end local 4 // int h
        end local 2 // java.util.concurrent.ConcurrentHashMap$Segment s
        end local 1 // java.lang.Object key
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   16     1   key  Ljava/lang/Object;
            3   16     2     s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
            5   15     3   tab  [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            1   16     4     h  I
            2   16     5     u  J
            9   15     7     e  Ljava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;
           11   13     8     k  TK;
    MethodParameters:
      Name  Flags
      key   

  public boolean containsValue(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=16, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object value
         0: .line 1044
            aload 1 /* value */
            ifnonnull 2
         1: .line 1045
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 1046
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 2 /* segments */
        start local 2 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
         3: .line 1047
            iconst_0
            istore 3 /* found */
        start local 3 // boolean found
         4: .line 1048
            lconst_0
            lstore 4 /* last */
        start local 4 // long last
         5: .line 1049
            iconst_m1
            istore 6 /* retries */
        start local 6 // int retries
         6: .line 1052
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment[] int long int
      StackMap stack:
            iload 6 /* retries */
            iinc 6 /* retries */ 1
            iconst_2
            if_icmpne 12
         7: .line 1053
            iconst_0
            istore 7 /* j */
        start local 7 // int j
         8: goto 11
         9: .line 1054
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 7 /* j */
            invokevirtual java.util.concurrent.ConcurrentHashMap.ensureSegment:(I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.lock:()V
        10: .line 1053
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        11: iload 7 /* j */
            aload 2 /* segments */
            arraylength
            if_icmplt 9
        end local 7 // int j
        12: .line 1057
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* sum */
        start local 7 // int sum
        13: .line 1058
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        14: goto 32
        15: .line 1060
      StackMap locals: int int
      StackMap stack:
            aload 2 /* segments */
            iload 8 /* j */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 10 /* seg */
        start local 10 // java.util.concurrent.ConcurrentHashMap$Segment seg
        16: .line 1061
            aload 10 /* seg */
            ifnull 31
            aload 10 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.table:[Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            dup
            astore 9 /* tab */
        start local 9 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
        17: ifnull 31
        18: .line 1062
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        19: goto 29
        20: .line 1064
      StackMap locals: java.util.concurrent.ConcurrentHashMap$HashEntry[] java.util.concurrent.ConcurrentHashMap$Segment int
      StackMap stack:
            aload 9 /* tab */
            iload 11 /* i */
            invokestatic java.util.concurrent.ConcurrentHashMap.entryAt:([Ljava/util/concurrent/ConcurrentHashMap$HashEntry;I)Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            astore 12 /* e */
        start local 12 // java.util.concurrent.ConcurrentHashMap$HashEntry e
        21: goto 27
        22: .line 1065
      StackMap locals: java.util.concurrent.ConcurrentHashMap$HashEntry
      StackMap stack:
            aload 12 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.value:Ljava/lang/Object;
            astore 13 /* v */
        start local 13 // java.lang.Object v
        23: .line 1066
            aload 13 /* v */
            ifnull 26
            aload 1 /* value */
            aload 13 /* v */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 26
        24: .line 1067
            iconst_1
            istore 3 /* found */
        25: .line 1068
            goto 45
        end local 13 // java.lang.Object v
        26: .line 1064
      StackMap locals:
      StackMap stack:
            aload 12 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.next:Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            astore 12 /* e */
      StackMap locals:
      StackMap stack:
        27: aload 12 /* e */
            ifnonnull 22
        end local 12 // java.util.concurrent.ConcurrentHashMap$HashEntry e
        28: .line 1062
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 11 /* i */
            aload 9 /* tab */
            arraylength
            if_icmplt 20
        end local 11 // int i
        30: .line 1072
            iload 7 /* sum */
            aload 10 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.modCount:I
            iadd
            istore 7 /* sum */
        end local 10 // java.util.concurrent.ConcurrentHashMap$Segment seg
        end local 9 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
        31: .line 1058
      StackMap locals:
      StackMap stack:
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        32: iload 8 /* j */
            aload 2 /* segments */
            arraylength
            if_icmplt 15
        end local 8 // int j
        33: .line 1075
            iload 6 /* retries */
            ifle 35
            iload 7 /* sum */
            i2l
            lload 4 /* last */
            lcmp
            ifne 35
        34: .line 1076
            goto 45
        35: .line 1077
      StackMap locals:
      StackMap stack:
            iload 7 /* sum */
            i2l
            lstore 4 /* last */
        end local 7 // int sum
        36: .line 1051
            goto 6
        37: .line 1079
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment[] int long int
      StackMap stack: java.lang.Throwable
            astore 14
        38: .line 1080
            iload 6 /* retries */
            iconst_2
            if_icmple 44
        39: .line 1081
            iconst_0
            istore 15 /* j */
        start local 15 // int j
        40: goto 43
        41: .line 1082
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment[] int long int top top top top top top top java.lang.Throwable int
      StackMap stack:
            aload 2 /* segments */
            iload 15 /* j */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.unlock:()V
        42: .line 1081
            iinc 15 /* j */ 1
      StackMap locals:
      StackMap stack:
        43: iload 15 /* j */
            aload 2 /* segments */
            arraylength
            if_icmplt 41
        end local 15 // int j
        44: .line 1084
      StackMap locals:
      StackMap stack:
            aload 14
            athrow
        45: .line 1080
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment[] int long int
      StackMap stack:
            iload 6 /* retries */
            iconst_2
            if_icmple 51
        46: .line 1081
            iconst_0
            istore 15 /* j */
        start local 15 // int j
        47: goto 50
        48: .line 1082
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment[] int long int top top top top top top top top int
      StackMap stack:
            aload 2 /* segments */
            iload 15 /* j */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.unlock:()V
        49: .line 1081
            iinc 15 /* j */ 1
      StackMap locals:
      StackMap stack:
        50: iload 15 /* j */
            aload 2 /* segments */
            arraylength
            if_icmplt 48
        end local 15 // int j
        51: .line 1085
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.lang.Object java.util.concurrent.ConcurrentHashMap$Segment[] int long int
      StackMap stack:
            iload 3 /* found */
            ireturn
        end local 6 // int retries
        end local 4 // long last
        end local 3 // boolean found
        end local 2 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
        end local 1 // java.lang.Object value
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   52     0      this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   52     1     value  Ljava/lang/Object;
            3   52     2  segments  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
            4   52     3     found  Z
            5   52     4      last  J
            6   52     6   retries  I
            8   12     7         j  I
           13   36     7       sum  I
           14   33     8         j  I
           17   31     9       tab  [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
           16   31    10       seg  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
           19   30    11         i  I
           21   28    12         e  Ljava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;
           23   26    13         v  TV;
           40   44    15         j  I
           47   51    15         j  I
      Exception table:
        from    to  target  type
           6    37      37  any
    MethodParameters:
       Name  Flags
      value  

  public boolean contains(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object value
         0: .line 1104
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual java.util.concurrent.ConcurrentHashMap.containsValue:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object value
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0    1     1  value  Ljava/lang/Object;
    MethodParameters:
       Name  Flags
      value  

  public V put(K, );
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 1123
            aload 2 /* value */
            ifnonnull 2
         1: .line 1124
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 1125
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.concurrent.ConcurrentHashMap.hash:(Ljava/lang/Object;)I
            istore 4 /* hash */
        start local 4 // int hash
         3: .line 1126
            iload 4 /* hash */
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentShift:I
            iushr
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentMask:I
            iand
            istore 5 /* j */
        start local 5 // int j
         4: .line 1127
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
         5: .line 1128
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            iload 5 /* j */
            getstatic java.util.concurrent.ConcurrentHashMap.SSHIFT:I
            ishl
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.SBASE:J
            ladd
         6: .line 1127
            invokevirtual sun.misc.Unsafe.getObject:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment
            dup
            astore 3 /* s */
        start local 3 // java.util.concurrent.ConcurrentHashMap$Segment s
         7: ifnonnull 9
         8: .line 1129
            aload 0 /* this */
            iload 5 /* j */
            invokevirtual java.util.concurrent.ConcurrentHashMap.ensureSegment:(I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 3 /* s */
         9: .line 1130
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment int int
      StackMap stack:
            aload 3 /* s */
            aload 1 /* key */
            iload 4 /* hash */
            aload 2 /* value */
            iconst_0
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.put:(Ljava/lang/Object;ILjava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 5 // int j
        end local 4 // int hash
        end local 3 // java.util.concurrent.ConcurrentHashMap$Segment s
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   10     1    key  TK;
            0   10     2  value  TV;
            7   10     3      s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
            3   10     4   hash  I
            4   10     5      j  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=6, locals=6, args_size=3
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 1143
            aload 2 /* value */
            ifnonnull 2
         1: .line 1144
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 1145
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.concurrent.ConcurrentHashMap.hash:(Ljava/lang/Object;)I
            istore 4 /* hash */
        start local 4 // int hash
         3: .line 1146
            iload 4 /* hash */
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentShift:I
            iushr
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segmentMask:I
            iand
            istore 5 /* j */
        start local 5 // int j
         4: .line 1147
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
         5: .line 1148
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            iload 5 /* j */
            getstatic java.util.concurrent.ConcurrentHashMap.SSHIFT:I
            ishl
            i2l
            getstatic java.util.concurrent.ConcurrentHashMap.SBASE:J
            ladd
         6: .line 1147
            invokevirtual sun.misc.Unsafe.getObject:(Ljava/lang/Object;J)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment
            dup
            astore 3 /* s */
        start local 3 // java.util.concurrent.ConcurrentHashMap$Segment s
         7: ifnonnull 9
         8: .line 1149
            aload 0 /* this */
            iload 5 /* j */
            invokevirtual java.util.concurrent.ConcurrentHashMap.ensureSegment:(I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 3 /* s */
         9: .line 1150
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment int int
      StackMap stack:
            aload 3 /* s */
            aload 1 /* key */
            iload 4 /* hash */
            aload 2 /* value */
            iconst_1
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.put:(Ljava/lang/Object;ILjava/lang/Object;Z)Ljava/lang/Object;
            areturn
        end local 5 // int j
        end local 4 // int hash
        end local 3 // java.util.concurrent.ConcurrentHashMap$Segment s
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   10     1    key  TK;
            0   10     2  value  TV;
            7   10     3      s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
            3   10     4   hash  I
            4   10     5      j  I
    Signature: (TK;TV;)TV;
    MethodParameters:
       Name  Flags
      key    
      value  

  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 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.util.Map m
         0: .line 1161
            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: java.util.concurrent.ConcurrentHashMap 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 1162
            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 java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 2 // java.util.Map$Entry e
         3: .line 1161
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 1163
            return
        end local 1 // java.util.Map m
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/concurrent/ConcurrentHashMap<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=4, locals=4, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object key
         0: .line 1175
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.concurrent.ConcurrentHashMap.hash:(Ljava/lang/Object;)I
            istore 2 /* hash */
        start local 2 // int hash
         1: .line 1176
            aload 0 /* this */
            iload 2 /* hash */
            invokevirtual java.util.concurrent.ConcurrentHashMap.segmentForHash:(I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 3 /* s */
        start local 3 // java.util.concurrent.ConcurrentHashMap$Segment s
         2: .line 1177
            aload 3 /* s */
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals: int java.util.concurrent.ConcurrentHashMap$Segment
      StackMap stack:
         3: aload 3 /* s */
            aload 1 /* key */
            iload 2 /* hash */
            aconst_null
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.remove:(Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         4: areturn
        end local 3 // java.util.concurrent.ConcurrentHashMap$Segment s
        end local 2 // int hash
        end local 1 // java.lang.Object key
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0    5     1   key  Ljava/lang/Object;
            1    5     2  hash  I
            2    5     3     s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
    Signature: (Ljava/lang/Object;)TV;
    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=5, args_size=3
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 1186
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.concurrent.ConcurrentHashMap.hash:(Ljava/lang/Object;)I
            istore 3 /* hash */
        start local 3 // int hash
         1: .line 1188
            aload 2 /* value */
            ifnull 5
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual java.util.concurrent.ConcurrentHashMap.segmentForHash:(I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            dup
            astore 4 /* s */
        start local 4 // java.util.concurrent.ConcurrentHashMap$Segment s
         2: ifnull 5
         3: .line 1189
            aload 4 /* s */
            aload 1 /* key */
            iload 3 /* hash */
            aload 2 /* value */
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.remove:(Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
            ifnull 5
        end local 4 // java.util.concurrent.ConcurrentHashMap$Segment s
         4: .line 1188
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
         5: iconst_0
            ireturn
        end local 3 // int hash
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0    6     1    key  Ljava/lang/Object;
            0    6     2  value  Ljava/lang/Object;
            1    6     3   hash  I
            2    4     4      s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
    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=6, args_size=4
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object oldValue
        start local 3 // java.lang.Object newValue
         0: .line 1198
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.concurrent.ConcurrentHashMap.hash:(Ljava/lang/Object;)I
            istore 4 /* hash */
        start local 4 // int hash
         1: .line 1199
            aload 2 /* oldValue */
            ifnull 2
            aload 3 /* newValue */
            ifnonnull 3
         2: .line 1200
      StackMap locals: int
      StackMap stack:
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         3: .line 1201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* hash */
            invokevirtual java.util.concurrent.ConcurrentHashMap.segmentForHash:(I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 5 /* s */
        start local 5 // java.util.concurrent.ConcurrentHashMap$Segment s
         4: .line 1202
            aload 5 /* s */
            ifnull 5
            aload 5 /* s */
            aload 1 /* key */
            iload 4 /* hash */
            aload 2 /* oldValue */
            aload 3 /* newValue */
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.replace:(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)Z
            ifeq 5
            iconst_1
            ireturn
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment
      StackMap stack:
         5: iconst_0
            ireturn
        end local 5 // java.util.concurrent.ConcurrentHashMap$Segment s
        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 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0    6     1       key  TK;
            0    6     2  oldValue  TV;
            0    6     3  newValue  TV;
            1    6     4      hash  I
            4    6     5         s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
    Signature: (TK;TV;TV;)Z
    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=5, args_size=3
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.lang.Object key
        start local 2 // java.lang.Object value
         0: .line 1213
            aload 0 /* this */
            aload 1 /* key */
            invokevirtual java.util.concurrent.ConcurrentHashMap.hash:(Ljava/lang/Object;)I
            istore 3 /* hash */
        start local 3 // int hash
         1: .line 1214
            aload 2 /* value */
            ifnonnull 3
         2: .line 1215
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         3: .line 1216
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* hash */
            invokevirtual java.util.concurrent.ConcurrentHashMap.segmentForHash:(I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 4 /* s */
        start local 4 // java.util.concurrent.ConcurrentHashMap$Segment s
         4: .line 1217
            aload 4 /* s */
            ifnonnull 5
            aconst_null
            goto 6
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment
      StackMap stack:
         5: aload 4 /* s */
            aload 1 /* key */
            iload 3 /* hash */
            aload 2 /* value */
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.replace:(Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object;
      StackMap locals:
      StackMap stack: java.lang.Object
         6: areturn
        end local 4 // java.util.concurrent.ConcurrentHashMap$Segment s
        end local 3 // int hash
        end local 2 // java.lang.Object value
        end local 1 // java.lang.Object key
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0    7     1    key  TK;
            0    7     2  value  TV;
            1    7     3   hash  I
            4    7     4      s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
    Signature: (TK;TV;)TV;
    MethodParameters:
       Name  Flags
      key    
      value  

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap this
         0: .line 1224
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 1 /* segments */
        start local 1 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
         1: .line 1225
            iconst_0
            istore 2 /* j */
        start local 2 // int j
         2: goto 7
         3: .line 1226
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment[] int
      StackMap stack:
            aload 1 /* segments */
            iload 2 /* j */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 3 /* s */
        start local 3 // java.util.concurrent.ConcurrentHashMap$Segment s
         4: .line 1227
            aload 3 /* s */
            ifnull 6
         5: .line 1228
            aload 3 /* s */
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.clear:()V
        end local 3 // java.util.concurrent.ConcurrentHashMap$Segment s
         6: .line 1225
      StackMap locals:
      StackMap stack:
            iinc 2 /* j */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* j */
            aload 1 /* segments */
            arraylength
            if_icmplt 3
        end local 2 // int j
         8: .line 1230
            return
        end local 1 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            1    9     1  segments  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
            2    8     2         j  I
            4    6     3         s  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;

  public java.util.Set<K> keySet();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap this
         0: .line 1249
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.keySet:Ljava/util/Set;
            astore 1 /* ks */
        start local 1 // java.util.Set ks
         1: .line 1250
            aload 1 /* ks */
            ifnull 2
            aload 1 /* ks */
            goto 3
      StackMap locals: java.util.Set
      StackMap stack:
         2: aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap$KeySet
            dup
            aload 0 /* this */
            invokespecial java.util.concurrent.ConcurrentHashMap$KeySet.<init>:(Ljava/util/concurrent/ConcurrentHashMap;)V
            dup_x1
            putfield java.util.concurrent.ConcurrentHashMap.keySet:Ljava/util/Set;
      StackMap locals:
      StackMap stack: java.util.Set
         3: areturn
        end local 1 // java.util.Set ks
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/concurrent/ConcurrentHashMap<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=4, locals=2, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap this
         0: .line 1270
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.values:Ljava/util/Collection;
            astore 1 /* vs */
        start local 1 // java.util.Collection vs
         1: .line 1271
            aload 1 /* vs */
            ifnull 2
            aload 1 /* vs */
            goto 3
      StackMap locals: java.util.Collection
      StackMap stack:
         2: aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap$Values
            dup
            aload 0 /* this */
            invokespecial java.util.concurrent.ConcurrentHashMap$Values.<init>:(Ljava/util/concurrent/ConcurrentHashMap;)V
            dup_x1
            putfield java.util.concurrent.ConcurrentHashMap.values:Ljava/util/Collection;
      StackMap locals:
      StackMap stack: java.util.Collection
         3: areturn
        end local 1 // java.util.Collection vs
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/concurrent/ConcurrentHashMap<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=4, locals=2, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap this
         0: .line 1291
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.entrySet:Ljava/util/Set;
            astore 1 /* es */
        start local 1 // java.util.Set es
         1: .line 1292
            aload 1 /* es */
            ifnull 2
            aload 1 /* es */
            goto 3
      StackMap locals: java.util.Set
      StackMap stack:
         2: aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap$EntrySet
            dup
            aload 0 /* this */
            invokespecial java.util.concurrent.ConcurrentHashMap$EntrySet.<init>:(Ljava/util/concurrent/ConcurrentHashMap;)V
            dup_x1
            putfield java.util.concurrent.ConcurrentHashMap.entrySet:Ljava/util/Set;
      StackMap locals:
      StackMap stack: java.util.Set
         3: areturn
        end local 1 // java.util.Set es
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/util/concurrent/ConcurrentHashMap<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;>;>;

  public java.util.Enumeration<K> keys();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap this
         0: .line 1302
            new java.util.concurrent.ConcurrentHashMap$KeyIterator
            dup
            aload 0 /* this */
            invokespecial java.util.concurrent.ConcurrentHashMap$KeyIterator.<init>:(Ljava/util/concurrent/ConcurrentHashMap;)V
            areturn
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
    Signature: ()Ljava/util/Enumeration<TK;>;

  public java.util.Enumeration<V> elements();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.util.concurrent.ConcurrentHashMap this
         0: .line 1312
            new java.util.concurrent.ConcurrentHashMap$ValueIterator
            dup
            aload 0 /* this */
            invokespecial java.util.concurrent.ConcurrentHashMap$ValueIterator.<init>:(Ljava/util/concurrent/ConcurrentHashMap;)V
            areturn
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
    Signature: ()Ljava/util/Enumeration<TV;>;

  private void writeObject(java.io.ObjectOutputStream);
    descriptor: (Ljava/io/ObjectOutputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=9, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.io.ObjectOutputStream s
         0: .line 1506
            iconst_0
            istore 2 /* k */
        start local 2 // int k
         1: goto 4
         2: .line 1507
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* k */
            invokevirtual java.util.concurrent.ConcurrentHashMap.ensureSegment:(I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            pop
         3: .line 1506
            iinc 2 /* k */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* k */
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            arraylength
            if_icmplt 2
        end local 2 // int k
         5: .line 1508
            aload 1 /* s */
            invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
         6: .line 1510
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 2 /* segments */
        start local 2 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
         7: .line 1511
            iconst_0
            istore 3 /* k */
        start local 3 // int k
         8: goto 28
         9: .line 1512
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.io.ObjectOutputStream java.util.concurrent.ConcurrentHashMap$Segment[] int
      StackMap stack:
            aload 2 /* segments */
            iload 3 /* k */
            invokestatic java.util.concurrent.ConcurrentHashMap.segmentAt:([Ljava/util/concurrent/ConcurrentHashMap$Segment;I)Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 4 /* seg */
        start local 4 // java.util.concurrent.ConcurrentHashMap$Segment seg
        10: .line 1513
            aload 4 /* seg */
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.lock:()V
        11: .line 1515
            aload 4 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.table:[Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            astore 5 /* tab */
        start local 5 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
        12: .line 1516
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        13: goto 21
        14: .line 1518
      StackMap locals: java.util.concurrent.ConcurrentHashMap$Segment java.util.concurrent.ConcurrentHashMap$HashEntry[] int
      StackMap stack:
            aload 5 /* tab */
            iload 6 /* i */
            invokestatic java.util.concurrent.ConcurrentHashMap.entryAt:([Ljava/util/concurrent/ConcurrentHashMap$HashEntry;I)Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            astore 7 /* e */
        start local 7 // java.util.concurrent.ConcurrentHashMap$HashEntry e
        15: goto 19
        16: .line 1519
      StackMap locals: java.util.concurrent.ConcurrentHashMap$HashEntry
      StackMap stack:
            aload 1 /* s */
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.key:Ljava/lang/Object;
            invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
        17: .line 1520
            aload 1 /* s */
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.value:Ljava/lang/Object;
            invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
        18: .line 1518
            aload 7 /* e */
            getfield java.util.concurrent.ConcurrentHashMap$HashEntry.next:Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
            astore 7 /* e */
      StackMap locals:
      StackMap stack:
        19: aload 7 /* e */
            ifnonnull 16
        end local 7 // java.util.concurrent.ConcurrentHashMap$HashEntry e
        20: .line 1516
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 6 /* i */
            aload 5 /* tab */
            arraylength
            if_icmplt 14
        end local 6 // int i
        end local 5 // java.util.concurrent.ConcurrentHashMap$HashEntry[] tab
        22: .line 1523
            goto 26
      StackMap locals: java.util.concurrent.ConcurrentHashMap java.io.ObjectOutputStream java.util.concurrent.ConcurrentHashMap$Segment[] int java.util.concurrent.ConcurrentHashMap$Segment
      StackMap stack: java.lang.Throwable
        23: astore 8
        24: .line 1524
            aload 4 /* seg */
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.unlock:()V
        25: .line 1525
            aload 8
            athrow
        26: .line 1524
      StackMap locals:
      StackMap stack:
            aload 4 /* seg */
            invokevirtual java.util.concurrent.ConcurrentHashMap$Segment.unlock:()V
        end local 4 // java.util.concurrent.ConcurrentHashMap$Segment seg
        27: .line 1511
            iinc 3 /* k */ 1
      StackMap locals:
      StackMap stack:
        28: iload 3 /* k */
            aload 2 /* segments */
            arraylength
            if_icmplt 9
        end local 3 // int k
        29: .line 1527
            aload 1 /* s */
            aconst_null
            invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
        30: .line 1528
            aload 1 /* s */
            aconst_null
            invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
        31: .line 1529
            return
        end local 2 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
        end local 1 // java.io.ObjectOutputStream s
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   32     0      this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   32     1         s  Ljava/io/ObjectOutputStream;
            1    5     2         k  I
            7   32     2  segments  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
            8   29     3         k  I
           10   27     4       seg  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
           12   22     5       tab  [Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
           13   22     6         i  I
           15   20     7         e  Ljava/util/concurrent/ConcurrentHashMap$HashEntry<TK;TV;>;
      Exception table:
        from    to  target  type
          11    23      23  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      s     

  private void readObject(java.io.ObjectInputStream);
    descriptor: (Ljava/io/ObjectInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=11, args_size=2
        start local 0 // java.util.concurrent.ConcurrentHashMap this
        start local 1 // java.io.ObjectInputStream s
         0: .line 1540
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readFields:()Ljava/io/ObjectInputStream$GetField;
            astore 2 /* oisFields */
        start local 2 // java.io.ObjectInputStream$GetField oisFields
         1: .line 1541
            aload 2 /* oisFields */
            ldc "segments"
            aconst_null
            invokevirtual java.io.ObjectInputStream$GetField.get:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.concurrent.ConcurrentHashMap$Segment[]
            astore 3 /* oisSegments */
        start local 3 // java.util.concurrent.ConcurrentHashMap$Segment[] oisSegments
         2: .line 1543
            aload 3 /* oisSegments */
            arraylength
            istore 4 /* ssize */
        start local 4 // int ssize
         3: .line 1544
            iload 4 /* ssize */
            iconst_1
            if_icmplt 5
            iload 4 /* ssize */
            ldc 65536
            if_icmpgt 5
         4: .line 1545
            iload 4 /* ssize */
            iload 4 /* ssize */
            iconst_1
            isub
            iand
            ifeq 8
         5: .line 1546
      StackMap locals: java.io.ObjectInputStream$GetField java.util.concurrent.ConcurrentHashMap$Segment[] int
      StackMap stack:
            new java.io.InvalidObjectException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Bad number of segments:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 1547
            iload 4 /* ssize */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 1546
            invokespecial java.io.InvalidObjectException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 1548
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* sshift */
        start local 5 // int sshift
         9: iload 4 /* ssize */
            istore 6 /* ssizeTmp */
        start local 6 // int ssizeTmp
        10: .line 1549
            goto 13
        11: .line 1550
      StackMap locals: int int
      StackMap stack:
            iinc 5 /* sshift */ 1
        12: .line 1551
            iload 6 /* ssizeTmp */
            iconst_1
            iushr
            istore 6 /* ssizeTmp */
        13: .line 1549
      StackMap locals:
      StackMap stack:
            iload 6 /* ssizeTmp */
            iconst_1
            if_icmpgt 11
        14: .line 1553
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 0 /* this */
            getstatic java.util.concurrent.ConcurrentHashMap.SEGSHIFT_OFFSET:J
            bipush 32
            iload 5 /* sshift */
            isub
            invokevirtual sun.misc.Unsafe.putIntVolatile:(Ljava/lang/Object;JI)V
        15: .line 1554
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 0 /* this */
            getstatic java.util.concurrent.ConcurrentHashMap.SEGMASK_OFFSET:J
            iload 4 /* ssize */
            iconst_1
            isub
            invokevirtual sun.misc.Unsafe.putIntVolatile:(Ljava/lang/Object;JI)V
        16: .line 1555
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 0 /* this */
            getstatic java.util.concurrent.ConcurrentHashMap.SEGMENTS_OFFSET:J
            aload 3 /* oisSegments */
            invokevirtual sun.misc.Unsafe.putObjectVolatile:(Ljava/lang/Object;JLjava/lang/Object;)V
        17: .line 1558
            getstatic java.util.concurrent.ConcurrentHashMap.UNSAFE:Lsun/misc/Unsafe;
            aload 0 /* this */
            getstatic java.util.concurrent.ConcurrentHashMap.HASHSEED_OFFSET:J
            aload 0 /* this */
            invokestatic java.util.concurrent.ConcurrentHashMap.randomHashSeed:(Ljava/util/concurrent/ConcurrentHashMap;)I
            invokevirtual sun.misc.Unsafe.putIntVolatile:(Ljava/lang/Object;JI)V
        18: .line 1561
            iconst_2
            istore 7 /* cap */
        start local 7 // int cap
        19: .line 1562
            aload 0 /* this */
            getfield java.util.concurrent.ConcurrentHashMap.segments:[Ljava/util/concurrent/ConcurrentHashMap$Segment;
            astore 8 /* segments */
        start local 8 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
        20: .line 1563
            iconst_0
            istore 9 /* k */
        start local 9 // int k
        21: goto 27
        22: .line 1564
      StackMap locals: int java.util.concurrent.ConcurrentHashMap$Segment[] int
      StackMap stack:
            aload 8 /* segments */
            iload 9 /* k */
            aaload
            astore 10 /* seg */
        start local 10 // java.util.concurrent.ConcurrentHashMap$Segment seg
        23: .line 1565
            aload 10 /* seg */
            ifnull 26
        24: .line 1566
            aload 10 /* seg */
            iload 7 /* cap */
            i2f
            aload 10 /* seg */
            getfield java.util.concurrent.ConcurrentHashMap$Segment.loadFactor:F
            fmul
            f2i
            putfield java.util.concurrent.ConcurrentHashMap$Segment.threshold:I
        25: .line 1567
            aload 10 /* seg */
            iload 7 /* cap */
            anewarray java.util.concurrent.ConcurrentHashMap$HashEntry
            putfield java.util.concurrent.ConcurrentHashMap$Segment.table:[Ljava/util/concurrent/ConcurrentHashMap$HashEntry;
        end local 10 // java.util.concurrent.ConcurrentHashMap$Segment seg
        26: .line 1563
      StackMap locals:
      StackMap stack:
            iinc 9 /* k */ 1
      StackMap locals:
      StackMap stack:
        27: iload 9 /* k */
            aload 8 /* segments */
            arraylength
            if_icmplt 22
        end local 9 // int k
        28: .line 1573
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
            astore 9 /* key */
        start local 9 // java.lang.Object key
        29: .line 1574
            aload 1 /* s */
            invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
            astore 10 /* value */
        start local 10 // java.lang.Object value
        30: .line 1575
            aload 9 /* key */
            ifnonnull 32
        31: .line 1576
            goto 34
        32: .line 1577
      StackMap locals: java.lang.Object java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 9 /* key */
            aload 10 /* value */
            invokevirtual java.util.concurrent.ConcurrentHashMap.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
        33: .line 1572
            goto 28
        34: .line 1579
      StackMap locals:
      StackMap stack:
            return
        end local 8 // java.util.concurrent.ConcurrentHashMap$Segment[] segments
        end local 7 // int cap
        end local 6 // int ssizeTmp
        end local 5 // int sshift
        end local 4 // int ssize
        end local 3 // java.util.concurrent.ConcurrentHashMap$Segment[] oisSegments
        end local 2 // java.io.ObjectInputStream$GetField oisFields
        end local 1 // java.io.ObjectInputStream s
        end local 0 // java.util.concurrent.ConcurrentHashMap this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   35     0         this  Ljava/util/concurrent/ConcurrentHashMap<TK;TV;>;
            0   35     1            s  Ljava/io/ObjectInputStream;
            1   35     2    oisFields  Ljava/io/ObjectInputStream$GetField;
            2   35     3  oisSegments  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
            3   35     4        ssize  I
            9   35     5       sshift  I
           10   35     6     ssizeTmp  I
           19   35     7          cap  I
           20   35     8     segments  [Ljava/util/concurrent/ConcurrentHashMap$Segment;
           21   28     9            k  I
           23   26    10          seg  Ljava/util/concurrent/ConcurrentHashMap$Segment<TK;TV;>;
           29   33     9          key  TK;
           30   33    10        value  TV;
    Exceptions:
      throws java.io.IOException, java.lang.ClassNotFoundException
    MethodParameters:
      Name  Flags
      s     
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/util/AbstractMap<TK;TV;>;Ljava/util/concurrent/ConcurrentMap<TK;TV;>;Ljava/io/Serializable;
SourceFile: "ConcurrentHashMap.java"
NestMembers:
  java.util.concurrent.ConcurrentHashMap$EntryIterator  java.util.concurrent.ConcurrentHashMap$EntrySet  java.util.concurrent.ConcurrentHashMap$HashEntry  java.util.concurrent.ConcurrentHashMap$HashIterator  java.util.concurrent.ConcurrentHashMap$Holder  java.util.concurrent.ConcurrentHashMap$KeyIterator  java.util.concurrent.ConcurrentHashMap$KeySet  java.util.concurrent.ConcurrentHashMap$Segment  java.util.concurrent.ConcurrentHashMap$ValueIterator  java.util.concurrent.ConcurrentHashMap$Values  java.util.concurrent.ConcurrentHashMap$WriteThroughEntry
InnerClasses:
  public abstract GetField = java.io.ObjectInputStream$GetField of java.io.ObjectInputStream
  public abstract Entry = java.util.Map$Entry of java.util.Map
  final EntryIterator = java.util.concurrent.ConcurrentHashMap$EntryIterator of java.util.concurrent.ConcurrentHashMap
  final EntrySet = java.util.concurrent.ConcurrentHashMap$EntrySet of java.util.concurrent.ConcurrentHashMap
  final HashEntry = java.util.concurrent.ConcurrentHashMap$HashEntry of java.util.concurrent.ConcurrentHashMap
  abstract HashIterator = java.util.concurrent.ConcurrentHashMap$HashIterator of java.util.concurrent.ConcurrentHashMap
  private Holder = java.util.concurrent.ConcurrentHashMap$Holder of java.util.concurrent.ConcurrentHashMap
  final KeyIterator = java.util.concurrent.ConcurrentHashMap$KeyIterator of java.util.concurrent.ConcurrentHashMap
  final KeySet = java.util.concurrent.ConcurrentHashMap$KeySet of java.util.concurrent.ConcurrentHashMap
  final Segment = java.util.concurrent.ConcurrentHashMap$Segment of java.util.concurrent.ConcurrentHashMap
  final ValueIterator = java.util.concurrent.ConcurrentHashMap$ValueIterator of java.util.concurrent.ConcurrentHashMap
  final Values = java.util.concurrent.ConcurrentHashMap$Values of java.util.concurrent.ConcurrentHashMap
  final WriteThroughEntry = java.util.concurrent.ConcurrentHashMap$WriteThroughEntry of java.util.concurrent.ConcurrentHashMap