public class org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting implements java.util.Iterator<org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting
  super_class: java.lang.Object
{
  private final java.util.Set<org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable> varSet;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;>;

  private final org.eclipse.jdt.internal.compiler.lookup.Scope scope;
    descriptor: Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean atExit;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage stage;
    descriptor: Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Iterator<org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable> iterator;
    descriptor: Ljava/util/Iterator;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Iterator<Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;>;

  private org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable next;
    descriptor: Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
    flags: (0x0002) ACC_PRIVATE

  private static volatile int[] $SWITCH_TABLE$org$eclipse$jdt$internal$compiler$ast$FakedTrackingVariable$IteratorForReporting$Stage;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  public void <init>(java.util.List<org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable>, org.eclipse.jdt.internal.compiler.lookup.Scope, );
    descriptor: (Ljava/util/List;Lorg/eclipse/jdt/internal/compiler/lookup/Scope;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
        start local 1 // java.util.List variables
        start local 2 // org.eclipse.jdt.internal.compiler.lookup.Scope scope
        start local 3 // boolean atExit
         0: .line 817
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 818
            aload 0 /* this */
            new java.util.HashSet
            dup
            aload 1 /* variables */
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            putfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.varSet:Ljava/util/Set;
         2: .line 819
            aload 0 /* this */
            aload 2 /* scope */
            putfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.scope:Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
         3: .line 820
            aload 0 /* this */
            iload 3 /* atExit */
            putfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.atExit:Z
         4: .line 821
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.OuterLess:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.setUpForStage:(Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;)V
         5: .line 822
            return
        end local 3 // boolean atExit
        end local 2 // org.eclipse.jdt.internal.compiler.lookup.Scope scope
        end local 1 // java.util.List variables
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting;
            0    6     1  variables  Ljava/util/List<Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;>;
            0    6     2      scope  Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
            0    6     3     atExit  Z
    Signature: (Ljava/util/List<Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;>;Lorg/eclipse/jdt/internal/compiler/lookup/Scope;Z)V
    MethodParameters:
           Name  Flags
      variables  
      scope      
      atExit     

  public boolean hasNext();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
         0: .line 826
            invokestatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.$SWITCH_TABLE$org$eclipse$jdt$internal$compiler$ast$FakedTrackingVariable$IteratorForReporting$Stage:()[I
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.stage:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 1
                    2: 7
                    3: 14
                    4: 27
              default: 30
          }
         1: .line 828
      StackMap locals:
      StackMap stack:
            goto 5
         2: .line 829
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable
            astore 1 /* trackingVar */
        start local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable trackingVar
         3: .line 830
            aload 1 /* trackingVar */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable.outerTracker:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            ifnonnull 5
         4: .line 831
            aload 0 /* this */
            aload 1 /* trackingVar */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.found:(Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;)Z
            ireturn
        end local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable trackingVar
         5: .line 828
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 833
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.InnerOfProcessed:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.setUpForStage:(Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;)V
         7: .line 836
      StackMap locals:
      StackMap stack:
            goto 12
         8: .line 837
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable
            astore 1 /* trackingVar */
        start local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable trackingVar
         9: .line 838
            aload 1 /* trackingVar */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable.outerTracker:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            astore 2 /* outer */
        start local 2 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable outer
        10: .line 839
            aload 2 /* outer */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.declaringScope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.scope:Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
            if_acmpne 12
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.varSet:Ljava/util/Set;
            aload 2 /* outer */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 12
        11: .line 840
            aload 0 /* this */
            aload 1 /* trackingVar */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.found:(Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;)Z
            ireturn
        end local 2 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable outer
        end local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable trackingVar
        12: .line 836
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        13: .line 842
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.InnerOfNotEnclosing:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.setUpForStage:(Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;)V
        14: .line 845
      StackMap locals:
      StackMap stack:
            goto 25
        15: .line 846
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable
            astore 1 /* trackingVar */
        start local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable trackingVar
        16: .line 847
            aload 1 /* trackingVar */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable.outerTracker:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            astore 2 /* outer */
        start local 2 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable outer
        17: .line 848
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.varSet:Ljava/util/Set;
            aload 2 /* outer */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 25
        18: .line 849
            aload 2 /* outer */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable.binding:Lorg/eclipse/jdt/internal/compiler/lookup/LocalVariableBinding;
            getfield org.eclipse.jdt.internal.compiler.lookup.LocalVariableBinding.declaringScope:Lorg/eclipse/jdt/internal/compiler/lookup/BlockScope;
            astore 3 /* outerTrackerScope */
        start local 3 // org.eclipse.jdt.internal.compiler.lookup.Scope outerTrackerScope
        19: .line 850
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.scope:Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
            astore 4 /* currentScope */
        start local 4 // org.eclipse.jdt.internal.compiler.lookup.Scope currentScope
        20: .line 851
            goto 23
        21: .line 852
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable org.eclipse.jdt.internal.compiler.lookup.Scope org.eclipse.jdt.internal.compiler.lookup.Scope
      StackMap stack:
            aload 3 /* outerTrackerScope */
            aload 4 /* currentScope */
            if_acmpne 23
        22: .line 853
            goto 26
        23: .line 851
      StackMap locals:
      StackMap stack:
            aload 4 /* currentScope */
            getfield org.eclipse.jdt.internal.compiler.lookup.Scope.parent:Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
            dup
            astore 4 /* currentScope */
            instanceof org.eclipse.jdt.internal.compiler.lookup.BlockScope
            ifne 21
        24: .line 855
            aload 0 /* this */
            aload 1 /* trackingVar */
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.found:(Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;)Z
            ireturn
        end local 4 // org.eclipse.jdt.internal.compiler.lookup.Scope currentScope
        end local 3 // org.eclipse.jdt.internal.compiler.lookup.Scope outerTrackerScope
        end local 2 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable outer
        end local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable trackingVar
        25: .line 845
      StackMap locals: org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        26: .line 858
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.AtExit:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.setUpForStage:(Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;)V
        27: .line 861
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.atExit:Z
            ifeq 29
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 29
        28: .line 862
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.found:(Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;)Z
            ireturn
        29: .line 863
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        30: .line 864
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unexpected Stage "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.stage:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   31     0               this  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting;
            3    5     1        trackingVar  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            9   12     1        trackingVar  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
           16   25     1        trackingVar  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
           10   12     2              outer  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
           17   25     2              outer  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
           19   25     3  outerTrackerScope  Lorg/eclipse/jdt/internal/compiler/lookup/Scope;
           20   25     4       currentScope  Lorg/eclipse/jdt/internal/compiler/lookup/Scope;

  private boolean found(org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable trackingVar
         0: .line 868
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.remove:()V
         1: .line 869
            aload 0 /* this */
            aload 1 /* trackingVar */
            putfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.next:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
         2: .line 870
            iconst_1
            ireturn
        end local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable trackingVar
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting;
            0    3     1  trackingVar  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
    MethodParameters:
             Name  Flags
      trackingVar  

  private void setUpForStage(org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
        start local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage nextStage
         0: .line 873
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.varSet:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            putfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.iterator:Ljava/util/Iterator;
         1: .line 874
            aload 0 /* this */
            aload 1 /* nextStage */
            putfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.stage:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
         2: .line 875
            return
        end local 1 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage nextStage
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting;
            0    3     1  nextStage  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
    MethodParameters:
           Name  Flags
      nextStage  

  public org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable next();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
         0: .line 878
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.next:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            areturn
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting;

  public void remove();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
         0: .line 882
            new java.lang.UnsupportedOperationException
            dup
            invokespecial java.lang.UnsupportedOperationException.<init>:()V
            athrow
        end local 0 // org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting;

  public java.lang.Object next();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.next:()Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$org$eclipse$jdt$internal$compiler$ast$FakedTrackingVariable$IteratorForReporting$Stage();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 796
            getstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.$SWITCH_TABLE$org$eclipse$jdt$internal$compiler$ast$FakedTrackingVariable$IteratorForReporting$Stage:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.values:()[Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.AtExit:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.ordinal:()I
            iconst_4
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.InnerOfNotEnclosing:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.ordinal:()I
            iconst_3
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.InnerOfProcessed:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.OuterLess:Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable$IteratorForReporting$Stage;
            invokevirtual org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage.ordinal:()I
            iconst_1
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting.$SWITCH_TABLE$org$eclipse$jdt$internal$compiler$ast$FakedTrackingVariable$IteratorForReporting$Stage:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
}
Signature: Ljava/lang/Object;Ljava/util/Iterator<Lorg/eclipse/jdt/internal/compiler/ast/FakedTrackingVariable;>;
SourceFile: "FakedTrackingVariable.java"
NestHost: org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable
InnerClasses:
  public IteratorForReporting = org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting of org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable
  final Stage = org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting$Stage of org.eclipse.jdt.internal.compiler.ast.FakedTrackingVariable$IteratorForReporting