class org.apache.commons.collections.ReferenceMap$EntryIterator implements java.util.Iterator
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.commons.collections.ReferenceMap$EntryIterator
  super_class: java.lang.Object
{
  int index;
    descriptor: I
    flags: (0x0000) 

  org.apache.commons.collections.ReferenceMap$Entry entry;
    descriptor: Lorg/apache/commons/collections/ReferenceMap$Entry;
    flags: (0x0000) 

  org.apache.commons.collections.ReferenceMap$Entry previous;
    descriptor: Lorg/apache/commons/collections/ReferenceMap$Entry;
    flags: (0x0000) 

  java.lang.Object nextKey;
    descriptor: Ljava/lang/Object;
    flags: (0x0000) 

  java.lang.Object nextValue;
    descriptor: Ljava/lang/Object;
    flags: (0x0000) 

  java.lang.Object currentKey;
    descriptor: Ljava/lang/Object;
    flags: (0x0000) 

  java.lang.Object currentValue;
    descriptor: Ljava/lang/Object;
    flags: (0x0000) 

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

  final org.apache.commons.collections.ReferenceMap this$0;
    descriptor: Lorg/apache/commons/collections/ReferenceMap;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(org.apache.commons.collections.ReferenceMap);
    descriptor: (Lorg/apache/commons/collections/ReferenceMap;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
         0: .line 832
            aload 0 /* this */
            aload 1
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.this$0:Lorg/apache/commons/collections/ReferenceMap;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 833
            aload 0 /* this */
            aload 1
            invokevirtual org.apache.commons.collections.ReferenceMap.size:()I
            ifeq 2
            aload 1
            getfield org.apache.commons.collections.ReferenceMap.table:[Lorg/apache/commons/collections/ReferenceMap$Entry;
            arraylength
            goto 3
      StackMap locals: org.apache.commons.collections.ReferenceMap$EntryIterator org.apache.commons.collections.ReferenceMap
      StackMap stack: org.apache.commons.collections.ReferenceMap$EntryIterator
         2: iconst_0
      StackMap locals: org.apache.commons.collections.ReferenceMap$EntryIterator org.apache.commons.collections.ReferenceMap
      StackMap stack: org.apache.commons.collections.ReferenceMap$EntryIterator int
         3: putfield org.apache.commons.collections.ReferenceMap$EntryIterator.index:I
         4: .line 836
            aload 0 /* this */
            aload 1
            getfield org.apache.commons.collections.ReferenceMap.modCount:I
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.expectedModCount:I
         5: .line 837
            return
        end local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/apache/commons/collections/ReferenceMap$EntryIterator;
    MethodParameters:
        Name  Flags
      this$0  final

  public boolean hasNext();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
         0: .line 841
            aload 0 /* this */
            invokevirtual org.apache.commons.collections.ReferenceMap$EntryIterator.checkMod:()V
         1: .line 842
            goto 17
         2: .line 843
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.entry:Lorg/apache/commons/collections/ReferenceMap$Entry;
            astore 1 /* e */
        start local 1 // org.apache.commons.collections.ReferenceMap$Entry e
         3: .line 844
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.index:I
            istore 2 /* i */
        start local 2 // int i
         4: .line 845
            goto 7
         5: .line 846
      StackMap locals: org.apache.commons.collections.ReferenceMap$Entry int
      StackMap stack:
            iinc 2 /* i */ -1
         6: .line 847
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.this$0:Lorg/apache/commons/collections/ReferenceMap;
            getfield org.apache.commons.collections.ReferenceMap.table:[Lorg/apache/commons/collections/ReferenceMap$Entry;
            iload 2 /* i */
            aaload
            astore 1 /* e */
         7: .line 845
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            ifnonnull 8
            iload 2 /* i */
            ifgt 5
         8: .line 849
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* e */
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.entry:Lorg/apache/commons/collections/ReferenceMap$Entry;
         9: .line 850
            aload 0 /* this */
            iload 2 /* i */
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.index:I
        10: .line 851
            aload 1 /* e */
            ifnonnull 14
        11: .line 852
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.currentKey:Ljava/lang/Object;
        12: .line 853
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.currentValue:Ljava/lang/Object;
        13: .line 854
            iconst_0
            ireturn
        14: .line 856
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual org.apache.commons.collections.ReferenceMap$Entry.getKey:()Ljava/lang/Object;
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.nextKey:Ljava/lang/Object;
        15: .line 857
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual org.apache.commons.collections.ReferenceMap$Entry.getValue:()Ljava/lang/Object;
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.nextValue:Ljava/lang/Object;
        16: .line 858
            aload 0 /* this */
            invokevirtual org.apache.commons.collections.ReferenceMap$EntryIterator.nextNull:()Z
            ifeq 17
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.entry:Lorg/apache/commons/collections/ReferenceMap$Entry;
            getfield org.apache.commons.collections.ReferenceMap$Entry.next:Lorg/apache/commons/collections/ReferenceMap$Entry;
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.entry:Lorg/apache/commons/collections/ReferenceMap$Entry;
        end local 2 // int i
        end local 1 // org.apache.commons.collections.ReferenceMap$Entry e
        17: .line 842
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.commons.collections.ReferenceMap$EntryIterator.nextNull:()Z
            ifne 2
        18: .line 860
            iconst_1
            ireturn
        end local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  this  Lorg/apache/commons/collections/ReferenceMap$EntryIterator;
            3   17     1     e  Lorg/apache/commons/collections/ReferenceMap$Entry;
            4   17     2     i  I

  private void checkMod();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
         0: .line 865
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.this$0:Lorg/apache/commons/collections/ReferenceMap;
            getfield org.apache.commons.collections.ReferenceMap.modCount:I
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.expectedModCount:I
            if_icmpeq 2
         1: .line 866
            new java.util.ConcurrentModificationException
            dup
            invokespecial java.util.ConcurrentModificationException.<init>:()V
            athrow
         2: .line 868
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/collections/ReferenceMap$EntryIterator;

  private boolean nextNull();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
         0: .line 872
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.nextKey:Ljava/lang/Object;
            ifnull 1
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.nextValue:Ljava/lang/Object;
            ifnull 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/collections/ReferenceMap$EntryIterator;

  protected org.apache.commons.collections.ReferenceMap$Entry nextEntry();
    descriptor: ()Lorg/apache/commons/collections/ReferenceMap$Entry;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
         0: .line 876
            aload 0 /* this */
            invokevirtual org.apache.commons.collections.ReferenceMap$EntryIterator.checkMod:()V
         1: .line 877
            aload 0 /* this */
            invokevirtual org.apache.commons.collections.ReferenceMap$EntryIterator.nextNull:()Z
            ifeq 2
            aload 0 /* this */
            invokevirtual org.apache.commons.collections.ReferenceMap$EntryIterator.hasNext:()Z
            ifne 2
            new java.util.NoSuchElementException
            dup
            invokespecial java.util.NoSuchElementException.<init>:()V
            athrow
         2: .line 878
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.entry:Lorg/apache/commons/collections/ReferenceMap$Entry;
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.previous:Lorg/apache/commons/collections/ReferenceMap$Entry;
         3: .line 879
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.entry:Lorg/apache/commons/collections/ReferenceMap$Entry;
            getfield org.apache.commons.collections.ReferenceMap$Entry.next:Lorg/apache/commons/collections/ReferenceMap$Entry;
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.entry:Lorg/apache/commons/collections/ReferenceMap$Entry;
         4: .line 880
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.nextKey:Ljava/lang/Object;
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.currentKey:Ljava/lang/Object;
         5: .line 881
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.nextValue:Ljava/lang/Object;
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.currentValue:Ljava/lang/Object;
         6: .line 882
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.nextKey:Ljava/lang/Object;
         7: .line 883
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.nextValue:Ljava/lang/Object;
         8: .line 884
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.previous:Lorg/apache/commons/collections/ReferenceMap$Entry;
            areturn
        end local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/apache/commons/collections/ReferenceMap$EntryIterator;

  public java.lang.Object next();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
         0: .line 889
            aload 0 /* this */
            invokevirtual org.apache.commons.collections.ReferenceMap$EntryIterator.nextEntry:()Lorg/apache/commons/collections/ReferenceMap$Entry;
            areturn
        end local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/collections/ReferenceMap$EntryIterator;

  public void remove();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
         0: .line 894
            aload 0 /* this */
            invokevirtual org.apache.commons.collections.ReferenceMap$EntryIterator.checkMod:()V
         1: .line 895
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.previous:Lorg/apache/commons/collections/ReferenceMap$Entry;
            ifnonnull 2
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         2: .line 896
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.this$0:Lorg/apache/commons/collections/ReferenceMap;
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.currentKey:Ljava/lang/Object;
            invokevirtual org.apache.commons.collections.ReferenceMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 897
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.previous:Lorg/apache/commons/collections/ReferenceMap$Entry;
         4: .line 898
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.currentKey:Ljava/lang/Object;
         5: .line 899
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.currentValue:Ljava/lang/Object;
         6: .line 900
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.collections.ReferenceMap$EntryIterator.this$0:Lorg/apache/commons/collections/ReferenceMap;
            getfield org.apache.commons.collections.ReferenceMap.modCount:I
            putfield org.apache.commons.collections.ReferenceMap$EntryIterator.expectedModCount:I
         7: .line 901
            return
        end local 0 // org.apache.commons.collections.ReferenceMap$EntryIterator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/apache/commons/collections/ReferenceMap$EntryIterator;
}
SourceFile: "ReferenceMap.java"
NestHost: org.apache.commons.collections.ReferenceMap
InnerClasses:
  private Entry = org.apache.commons.collections.ReferenceMap$Entry of org.apache.commons.collections.ReferenceMap
  private EntryIterator = org.apache.commons.collections.ReferenceMap$EntryIterator of org.apache.commons.collections.ReferenceMap