class jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue
  super_class: java.lang.Object
{
  private final jdk.nashorn.internal.runtime.PropertyHashMap$Element qhead;
    descriptor: Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.nashorn.internal.runtime.PropertyHashMap$Element[] qbins;
    descriptor: [Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  int searchCount;
    descriptor: I
    flags: (0x0000) 

  final jdk.nashorn.internal.runtime.PropertyHashMap this$0;
    descriptor: Ljdk/nashorn/internal/runtime/PropertyHashMap;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 659
            ldc Ljdk/nashorn/internal/runtime/PropertyHashMap;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(jdk.nashorn.internal.runtime.PropertyHashMap, jdk.nashorn.internal.runtime.PropertyHashMap$Element, jdk.nashorn.internal.runtime.PropertyHashMap$Element[]);
    descriptor: (Ljdk/nashorn/internal/runtime/PropertyHashMap;Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue this
        start local 2 // jdk.nashorn.internal.runtime.PropertyHashMap$Element qhead
        start local 3 // jdk.nashorn.internal.runtime.PropertyHashMap$Element[] qbins
         0: .line 670
            aload 0 /* this */
            aload 1
            putfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.this$0:Ljdk/nashorn/internal/runtime/PropertyHashMap;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 668
            aload 0 /* this */
            iconst_0
            putfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.searchCount:I
         2: .line 671
            aload 0 /* this */
            aload 2 /* qhead */
            putfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qhead:Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
         3: .line 672
            aload 0 /* this */
            aload 3 /* qbins */
            putfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qbins:[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
         4: .line 673
            return
        end local 3 // jdk.nashorn.internal.runtime.PropertyHashMap$Element[] qbins
        end local 2 // jdk.nashorn.internal.runtime.PropertyHashMap$Element qhead
        end local 0 // jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Ljdk/nashorn/internal/runtime/PropertyHashMap$ElementQueue;
            0    5     2  qhead  Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            0    5     3  qbins  [Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
    MethodParameters:
        Name  Flags
      this$0  final
      qhead   final
      qbins   final

  jdk.nashorn.internal.runtime.PropertyHashMap$Element find(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
    flags: (0x0000) 
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue this
        start local 1 // java.lang.Object key
         0: .line 676
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qbins:[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            aload 1 /* key */
            invokestatic jdk.nashorn.internal.runtime.PropertyHashMap.binIndex:([Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;Ljava/lang/Object;)I
            istore 2 /* binIndex */
        start local 2 // int binIndex
         1: .line 677
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qbins:[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            iload 2 /* binIndex */
            aaload
            aload 1 /* key */
            invokestatic jdk.nashorn.internal.runtime.PropertyHashMap.findElement:(Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            astore 3 /* element */
        start local 3 // jdk.nashorn.internal.runtime.PropertyHashMap$Element element
         2: .line 678
            aload 3 /* element */
            ifnull 4
         3: .line 679
            aload 3 /* element */
            areturn
         4: .line 681
      StackMap locals: int jdk.nashorn.internal.runtime.PropertyHashMap$Element
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qhead:Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            ifnull 11
         5: .line 682
            aload 0 /* this */
            dup
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.searchCount:I
            iconst_1
            iadd
            dup_x1
            putfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.searchCount:I
            iconst_2
            if_icmple 10
         6: .line 684
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.cloneAndMergeBins:()[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            astore 4 /* newBins */
        start local 4 // jdk.nashorn.internal.runtime.PropertyHashMap$Element[] newBins
         7: .line 685
            getstatic jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.$assertionsDisabled:Z
            ifne 8
            aload 4 /* newBins */
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qbins:[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            if_acmpne 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 686
      StackMap locals: jdk.nashorn.internal.runtime.PropertyHashMap$Element[]
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.this$0:Ljdk/nashorn/internal/runtime/PropertyHashMap;
            new jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.this$0:Ljdk/nashorn/internal/runtime/PropertyHashMap;
            aconst_null
            aload 4 /* newBins */
            invokespecial jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.<init>:(Ljdk/nashorn/internal/runtime/PropertyHashMap;Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;)V
            putfield jdk.nashorn.internal.runtime.PropertyHashMap.queue:Ljdk/nashorn/internal/runtime/PropertyHashMap$ElementQueue;
         9: .line 687
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.this$0:Ljdk/nashorn/internal/runtime/PropertyHashMap;
            getfield jdk.nashorn.internal.runtime.PropertyHashMap.queue:Ljdk/nashorn/internal/runtime/PropertyHashMap$ElementQueue;
            aload 1 /* key */
            invokevirtual jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.find:(Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            areturn
        end local 4 // jdk.nashorn.internal.runtime.PropertyHashMap$Element[] newBins
        10: .line 689
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qhead:Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            aload 1 /* key */
            invokestatic jdk.nashorn.internal.runtime.PropertyHashMap.findElement:(Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            areturn
        11: .line 691
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // jdk.nashorn.internal.runtime.PropertyHashMap$Element element
        end local 2 // int binIndex
        end local 1 // java.lang.Object key
        end local 0 // jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Ljdk/nashorn/internal/runtime/PropertyHashMap$ElementQueue;
            0   12     1       key  Ljava/lang/Object;
            1   12     2  binIndex  I
            2   12     3   element  Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            7   10     4   newBins  [Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
    MethodParameters:
      Name  Flags
      key   final

  private jdk.nashorn.internal.runtime.PropertyHashMap$Element[] cloneAndMergeBins();
    descriptor: ()[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue this
         0: .line 700
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qhead:Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            ifnonnull 2
         1: .line 701
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qbins:[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            areturn
         2: .line 704
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qbins:[Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            invokevirtual jdk.nashorn.internal.runtime.PropertyHashMap$Element[].clone:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.runtime.PropertyHashMap$Element[]
            astore 1 /* newBins */
        start local 1 // jdk.nashorn.internal.runtime.PropertyHashMap$Element[] newBins
         3: .line 706
            aload 0 /* this */
            getfield jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue.qhead:Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            astore 2 /* element */
        start local 2 // jdk.nashorn.internal.runtime.PropertyHashMap$Element element
         4: goto 10
         5: .line 707
      StackMap locals: jdk.nashorn.internal.runtime.PropertyHashMap$Element[] jdk.nashorn.internal.runtime.PropertyHashMap$Element
      StackMap stack:
            aload 2 /* element */
            invokevirtual jdk.nashorn.internal.runtime.PropertyHashMap$Element.getProperty:()Ljdk/nashorn/internal/runtime/Property;
            astore 3 /* property */
        start local 3 // jdk.nashorn.internal.runtime.Property property
         6: .line 708
            aload 3 /* property */
            invokevirtual jdk.nashorn.internal.runtime.Property.getKey:()Ljava/lang/Object;
            astore 4 /* key */
        start local 4 // java.lang.Object key
         7: .line 709
            aload 1 /* newBins */
            aload 4 /* key */
            invokestatic jdk.nashorn.internal.runtime.PropertyHashMap.binIndex:([Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;Ljava/lang/Object;)I
            istore 5 /* binIndex */
        start local 5 // int binIndex
         8: .line 711
            aload 1 /* newBins */
            iload 5 /* binIndex */
            new jdk.nashorn.internal.runtime.PropertyHashMap$Element
            dup
            aload 1 /* newBins */
            iload 5 /* binIndex */
            aaload
            aload 3 /* property */
            invokespecial jdk.nashorn.internal.runtime.PropertyHashMap$Element.<init>:(Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;Ljdk/nashorn/internal/runtime/Property;)V
            aastore
        end local 5 // int binIndex
        end local 4 // java.lang.Object key
        end local 3 // jdk.nashorn.internal.runtime.Property property
         9: .line 706
            aload 2 /* element */
            invokevirtual jdk.nashorn.internal.runtime.PropertyHashMap$Element.getLink:()Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            astore 2 /* element */
      StackMap locals:
      StackMap stack:
        10: aload 2 /* element */
            ifnonnull 5
        end local 2 // jdk.nashorn.internal.runtime.PropertyHashMap$Element element
        11: .line 714
            aload 1 /* newBins */
            areturn
        end local 1 // jdk.nashorn.internal.runtime.PropertyHashMap$Element[] newBins
        end local 0 // jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Ljdk/nashorn/internal/runtime/PropertyHashMap$ElementQueue;
            3   12     1   newBins  [Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            4   11     2   element  Ljdk/nashorn/internal/runtime/PropertyHashMap$Element;
            6    9     3  property  Ljdk/nashorn/internal/runtime/Property;
            7    9     4       key  Ljava/lang/Object;
            8    9     5  binIndex  I
}
SourceFile: "PropertyHashMap.java"
NestHost: jdk.nashorn.internal.runtime.PropertyHashMap
InnerClasses:
  final Element = jdk.nashorn.internal.runtime.PropertyHashMap$Element of jdk.nashorn.internal.runtime.PropertyHashMap
  private ElementQueue = jdk.nashorn.internal.runtime.PropertyHashMap$ElementQueue of jdk.nashorn.internal.runtime.PropertyHashMap