public class org.eclipse.jdt.internal.core.ClasspathChange
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.ClasspathChange
  super_class: java.lang.Object
{
  public static final int NO_DELTA;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int HAS_DELTA;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int HAS_PROJECT_CHANGE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int HAS_LIBRARY_CHANGE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  org.eclipse.jdt.internal.core.JavaProject project;
    descriptor: Lorg/eclipse/jdt/internal/core/JavaProject;
    flags: (0x0000) 

  org.eclipse.jdt.core.IClasspathEntry[] oldRawClasspath;
    descriptor: [Lorg/eclipse/jdt/core/IClasspathEntry;
    flags: (0x0000) 

  org.eclipse.core.runtime.IPath oldOutputLocation;
    descriptor: Lorg/eclipse/core/runtime/IPath;
    flags: (0x0000) 

  org.eclipse.jdt.core.IClasspathEntry[] oldResolvedClasspath;
    descriptor: [Lorg/eclipse/jdt/core/IClasspathEntry;
    flags: (0x0000) 

  public void <init>(org.eclipse.jdt.internal.core.JavaProject, org.eclipse.jdt.core.IClasspathEntry[], org.eclipse.core.runtime.IPath, org.eclipse.jdt.core.IClasspathEntry[]);
    descriptor: (Lorg/eclipse/jdt/internal/core/JavaProject;[Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/jdt/core/IClasspathEntry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
        start local 1 // org.eclipse.jdt.internal.core.JavaProject project
        start local 2 // org.eclipse.jdt.core.IClasspathEntry[] oldRawClasspath
        start local 3 // org.eclipse.core.runtime.IPath oldOutputLocation
        start local 4 // org.eclipse.jdt.core.IClasspathEntry[] oldResolvedClasspath
         0: .line 55
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 56
            aload 0 /* this */
            aload 1 /* project */
            putfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
         2: .line 57
            aload 0 /* this */
            aload 2 /* oldRawClasspath */
            putfield org.eclipse.jdt.internal.core.ClasspathChange.oldRawClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
         3: .line 58
            aload 0 /* this */
            aload 3 /* oldOutputLocation */
            putfield org.eclipse.jdt.internal.core.ClasspathChange.oldOutputLocation:Lorg/eclipse/core/runtime/IPath;
         4: .line 59
            aload 0 /* this */
            aload 4 /* oldResolvedClasspath */
            putfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
         5: .line 60
            return
        end local 4 // org.eclipse.jdt.core.IClasspathEntry[] oldResolvedClasspath
        end local 3 // org.eclipse.core.runtime.IPath oldOutputLocation
        end local 2 // org.eclipse.jdt.core.IClasspathEntry[] oldRawClasspath
        end local 1 // org.eclipse.jdt.internal.core.JavaProject project
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    6     0                  this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
            0    6     1               project  Lorg/eclipse/jdt/internal/core/JavaProject;
            0    6     2       oldRawClasspath  [Lorg/eclipse/jdt/core/IClasspathEntry;
            0    6     3     oldOutputLocation  Lorg/eclipse/core/runtime/IPath;
            0    6     4  oldResolvedClasspath  [Lorg/eclipse/jdt/core/IClasspathEntry;
    MethodParameters:
                      Name  Flags
      project               
      oldRawClasspath       
      oldOutputLocation     
      oldResolvedClasspath  

  private void addClasspathDeltas(org.eclipse.jdt.internal.core.JavaElementDelta, org.eclipse.jdt.core.IPackageFragmentRoot[], int);
    descriptor: (Lorg/eclipse/jdt/internal/core/JavaElementDelta;[Lorg/eclipse/jdt/core/IPackageFragmentRoot;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
        start local 1 // org.eclipse.jdt.internal.core.JavaElementDelta delta
        start local 2 // org.eclipse.jdt.core.IPackageFragmentRoot[] roots
        start local 3 // int flag
         0: .line 63
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 11
         2: .line 64
      StackMap locals: int
      StackMap stack:
            aload 2 /* roots */
            iload 4 /* i */
            aaload
            astore 5 /* root */
        start local 5 // org.eclipse.jdt.core.IPackageFragmentRoot root
         3: .line 65
            aload 1 /* delta */
            aload 5 /* root */
            iload 3 /* flag */
            invokevirtual org.eclipse.jdt.internal.core.JavaElementDelta.changed:(Lorg/eclipse/jdt/core/IJavaElement;I)Lorg/eclipse/jdt/internal/core/JavaElementDelta;
            pop
         4: .line 66
            iload 3 /* flag */
            sipush 128
            iand
            ifne 7
         5: .line 67
            iload 3 /* flag */
            sipush 4096
            iand
            ifne 7
         6: .line 68
            iload 3 /* flag */
            sipush 8192
            iand
            ifeq 10
         7: .line 70
      StackMap locals: org.eclipse.jdt.core.IPackageFragmentRoot
      StackMap stack:
            aload 5 /* root */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.close:()V
         8: .line 71
            goto 10
      StackMap locals:
      StackMap stack: org.eclipse.jdt.core.JavaModelException
         9: pop
        end local 5 // org.eclipse.jdt.core.IPackageFragmentRoot root
        10: .line 63
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 4 /* i */
            aload 2 /* roots */
            arraylength
            if_icmplt 2
        end local 4 // int i
        12: .line 76
            return
        end local 3 // int flag
        end local 2 // org.eclipse.jdt.core.IPackageFragmentRoot[] roots
        end local 1 // org.eclipse.jdt.internal.core.JavaElementDelta delta
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
            0   13     1  delta  Lorg/eclipse/jdt/internal/core/JavaElementDelta;
            0   13     2  roots  [Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            0   13     3   flag  I
            1   12     4      i  I
            3   10     5   root  Lorg/eclipse/jdt/core/IPackageFragmentRoot;
      Exception table:
        from    to  target  type
           7     8       9  Class org.eclipse.jdt.core.JavaModelException
    MethodParameters:
       Name  Flags
      delta  
      roots  
      flag   

  private int classpathContains(org.eclipse.jdt.core.IClasspathEntry[], org.eclipse.jdt.core.IClasspathEntry);
    descriptor: ([Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathEntry;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=14, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
        start local 1 // org.eclipse.jdt.core.IClasspathEntry[] list
        start local 2 // org.eclipse.jdt.core.IClasspathEntry entry
         0: .line 83
            aload 2 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getExclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            astore 3 /* exclusionPatterns */
        start local 3 // org.eclipse.core.runtime.IPath[] exclusionPatterns
         1: .line 84
            aload 2 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getInclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            astore 4 /* inclusionPatterns */
        start local 4 // org.eclipse.core.runtime.IPath[] inclusionPatterns
         2: .line 85
            aload 1 /* list */
            ifnonnull 3
            iconst_0
            goto 4
      StackMap locals: org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[]
      StackMap stack:
         3: aload 1 /* list */
            arraylength
      StackMap locals:
      StackMap stack: int
         4: istore 5 /* listLen */
        start local 5 // int listLen
         5: .line 86
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         6: goto 56
         7: .line 87
      StackMap locals: int int
      StackMap stack:
            aload 1 /* list */
            iload 6 /* i */
            aaload
            astore 7 /* other */
        start local 7 // org.eclipse.jdt.core.IClasspathEntry other
         8: .line 88
            aload 7 /* other */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getContentKind:()I
            aload 2 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getContentKind:()I
            if_icmpne 55
         9: .line 89
            aload 7 /* other */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            aload 2 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            if_icmpne 55
        10: .line 90
            aload 7 /* other */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.isExported:()Z
            aload 2 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.isExported:()Z
            if_icmpne 55
        11: .line 91
            aload 7 /* other */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            aload 2 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifeq 55
        12: .line 93
            aload 2 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
            astore 8 /* entryOutput */
        start local 8 // org.eclipse.core.runtime.IPath entryOutput
        13: .line 94
            aload 7 /* other */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
            astore 9 /* otherOutput */
        start local 9 // org.eclipse.core.runtime.IPath otherOutput
        14: .line 95
            aload 8 /* entryOutput */
            ifnonnull 17
        15: .line 96
            aload 9 /* otherOutput */
            ifnull 19
        16: .line 97
            goto 55
        17: .line 99
      StackMap locals: org.eclipse.jdt.core.IClasspathEntry org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 8 /* entryOutput */
            aload 9 /* otherOutput */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifne 19
        18: .line 100
            goto 55
        19: .line 104
      StackMap locals:
      StackMap stack:
            aload 7 /* other */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getInclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            astore 10 /* otherIncludes */
        start local 10 // org.eclipse.core.runtime.IPath[] otherIncludes
        20: .line 105
            aload 4 /* inclusionPatterns */
            aload 10 /* otherIncludes */
            if_acmpeq 31
        21: .line 106
            aload 4 /* inclusionPatterns */
            ifnonnull 22
            goto 55
        22: .line 107
      StackMap locals: org.eclipse.core.runtime.IPath[]
      StackMap stack:
            aload 4 /* inclusionPatterns */
            arraylength
            istore 11 /* includeLength */
        start local 11 // int includeLength
        23: .line 108
            aload 10 /* otherIncludes */
            ifnull 55
            aload 10 /* otherIncludes */
            arraylength
            iload 11 /* includeLength */
            if_icmpeq 25
        24: .line 109
            goto 55
        25: .line 110
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 12 /* j */
        start local 12 // int j
        26: goto 30
        27: .line 113
      StackMap locals: int
      StackMap stack:
            aload 4 /* inclusionPatterns */
            iload 12 /* j */
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aload 10 /* otherIncludes */
            iload 12 /* j */
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
        28: .line 114
            goto 55
        29: .line 110
      StackMap locals:
      StackMap stack:
            iinc 12 /* j */ 1
      StackMap locals:
      StackMap stack:
        30: iload 12 /* j */
            iload 11 /* includeLength */
            if_icmplt 27
        end local 12 // int j
        end local 11 // int includeLength
        31: .line 118
      StackMap locals:
      StackMap stack:
            aload 7 /* other */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getExclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            astore 11 /* otherExcludes */
        start local 11 // org.eclipse.core.runtime.IPath[] otherExcludes
        32: .line 119
            aload 3 /* exclusionPatterns */
            aload 11 /* otherExcludes */
            if_acmpeq 43
        33: .line 120
            aload 3 /* exclusionPatterns */
            ifnonnull 34
            goto 55
        34: .line 121
      StackMap locals: org.eclipse.core.runtime.IPath[]
      StackMap stack:
            aload 3 /* exclusionPatterns */
            arraylength
            istore 12 /* excludeLength */
        start local 12 // int excludeLength
        35: .line 122
            aload 11 /* otherExcludes */
            ifnull 55
            aload 11 /* otherExcludes */
            arraylength
            iload 12 /* excludeLength */
            if_icmpeq 37
        36: .line 123
            goto 55
        37: .line 124
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 13 /* j */
        start local 13 // int j
        38: goto 42
        39: .line 127
      StackMap locals: int
      StackMap stack:
            aload 3 /* exclusionPatterns */
            iload 13 /* j */
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aload 11 /* otherExcludes */
            iload 13 /* j */
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 41
        40: .line 128
            goto 55
        41: .line 124
      StackMap locals:
      StackMap stack:
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
        42: iload 13 /* j */
            iload 12 /* excludeLength */
            if_icmplt 39
        end local 13 // int j
        end local 12 // int excludeLength
        43: .line 131
      StackMap locals:
      StackMap stack:
            ldc "enabled"
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            ldc "org.eclipse.jdt.core.compiler.annotation.nullanalysis"
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 51
        44: .line 133
            aload 2 /* entry */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.getRawExternalAnnotationPath:(Lorg/eclipse/jdt/core/IClasspathEntry;)Ljava/lang/String;
            astore 12 /* annotationPath */
        start local 12 // java.lang.String annotationPath
        45: .line 134
            aload 7 /* other */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.getRawExternalAnnotationPath:(Lorg/eclipse/jdt/core/IClasspathEntry;)Ljava/lang/String;
            astore 13 /* otherAnnotationPath */
        start local 13 // java.lang.String otherAnnotationPath
        46: .line 135
            aload 12 /* annotationPath */
            ifnull 49
            aload 13 /* otherAnnotationPath */
            ifnull 49
        47: .line 136
            aload 12 /* annotationPath */
            aload 13 /* otherAnnotationPath */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 51
        48: .line 137
            goto 55
        49: .line 138
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 12 /* annotationPath */
            aload 13 /* otherAnnotationPath */
            if_acmpeq 51
        50: .line 139
            goto 55
        end local 13 // java.lang.String otherAnnotationPath
        end local 12 // java.lang.String annotationPath
        51: .line 142
      StackMap locals:
      StackMap stack:
            aload 2 /* entry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.isModular:()Z
        52: .line 143
            aload 7 /* other */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.isModular:()Z
            if_icmpeq 54
        53: .line 144
            goto 55
        54: .line 146
      StackMap locals:
      StackMap stack:
            iload 6 /* i */
            ireturn
        end local 11 // org.eclipse.core.runtime.IPath[] otherExcludes
        end local 10 // org.eclipse.core.runtime.IPath[] otherIncludes
        end local 9 // org.eclipse.core.runtime.IPath otherOutput
        end local 8 // org.eclipse.core.runtime.IPath entryOutput
        end local 7 // org.eclipse.jdt.core.IClasspathEntry other
        55: .line 86
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.jdt.core.IClasspathEntry org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[] int int
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        56: iload 6 /* i */
            iload 5 /* listLen */
            if_icmplt 7
        end local 6 // int i
        57: .line 149
            iconst_m1
            ireturn
        end local 5 // int listLen
        end local 4 // org.eclipse.core.runtime.IPath[] inclusionPatterns
        end local 3 // org.eclipse.core.runtime.IPath[] exclusionPatterns
        end local 2 // org.eclipse.jdt.core.IClasspathEntry entry
        end local 1 // org.eclipse.jdt.core.IClasspathEntry[] list
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   58     0                 this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
            0   58     1                 list  [Lorg/eclipse/jdt/core/IClasspathEntry;
            0   58     2                entry  Lorg/eclipse/jdt/core/IClasspathEntry;
            1   58     3    exclusionPatterns  [Lorg/eclipse/core/runtime/IPath;
            2   58     4    inclusionPatterns  [Lorg/eclipse/core/runtime/IPath;
            5   58     5              listLen  I
            6   57     6                    i  I
            8   55     7                other  Lorg/eclipse/jdt/core/IClasspathEntry;
           13   55     8          entryOutput  Lorg/eclipse/core/runtime/IPath;
           14   55     9          otherOutput  Lorg/eclipse/core/runtime/IPath;
           20   55    10        otherIncludes  [Lorg/eclipse/core/runtime/IPath;
           23   31    11        includeLength  I
           26   31    12                    j  I
           32   55    11        otherExcludes  [Lorg/eclipse/core/runtime/IPath;
           35   43    12        excludeLength  I
           38   43    13                    j  I
           45   51    12       annotationPath  Ljava/lang/String;
           46   51    13  otherAnnotationPath  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      list   
      entry  

  private void collectAllSubfolders(org.eclipse.core.resources.IFolder, java.util.ArrayList);
    descriptor: (Lorg/eclipse/core/resources/IFolder;Ljava/util/ArrayList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
        start local 1 // org.eclipse.core.resources.IFolder folder
        start local 2 // java.util.ArrayList collection
         0: .line 157
            aload 1 /* folder */
            invokeinterface org.eclipse.core.resources.IFolder.members:()[Lorg/eclipse/core/resources/IResource;
            astore 3 /* members */
        start local 3 // org.eclipse.core.resources.IResource[] members
         1: .line 158
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: aload 3 /* members */
            arraylength
            istore 5 /* max */
        start local 5 // int max
         3: goto 9
         4: .line 159
      StackMap locals: org.eclipse.core.resources.IResource[] int int
      StackMap stack:
            aload 3 /* members */
            iload 4 /* i */
            aaload
            astore 6 /* r */
        start local 6 // org.eclipse.core.resources.IResource r
         5: .line 160
            aload 6 /* r */
            invokeinterface org.eclipse.core.resources.IResource.getType:()I
            iconst_2
            if_icmpne 8
         6: .line 161
            aload 2 /* collection */
            aload 6 /* r */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         7: .line 162
            aload 0 /* this */
            aload 6 /* r */
            checkcast org.eclipse.core.resources.IFolder
            aload 2 /* collection */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.collectAllSubfolders:(Lorg/eclipse/core/resources/IFolder;Ljava/util/ArrayList;)V
        end local 6 // org.eclipse.core.resources.IResource r
         8: .line 158
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iload 5 /* max */
            if_icmplt 4
        end local 5 // int max
        end local 4 // int i
        end local 3 // org.eclipse.core.resources.IResource[] members
        10: .line 165
            goto 13
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.core.resources.IFolder java.util.ArrayList
      StackMap stack: org.eclipse.core.runtime.CoreException
        11: astore 3 /* e */
        start local 3 // org.eclipse.core.runtime.CoreException e
        12: .line 166
            new org.eclipse.jdt.core.JavaModelException
            dup
            aload 3 /* e */
            invokespecial org.eclipse.jdt.core.JavaModelException.<init>:(Lorg/eclipse/core/runtime/CoreException;)V
            athrow
        end local 3 // org.eclipse.core.runtime.CoreException e
        13: .line 168
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.util.ArrayList collection
        end local 1 // org.eclipse.core.resources.IFolder folder
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
            0   14     1      folder  Lorg/eclipse/core/resources/IFolder;
            0   14     2  collection  Ljava/util/ArrayList;
            1   10     3     members  [Lorg/eclipse/core/resources/IResource;
            2   10     4           i  I
            3   10     5         max  I
            5    8     6           r  Lorg/eclipse/core/resources/IResource;
           12   13     3           e  Lorg/eclipse/core/runtime/CoreException;
      Exception table:
        from    to  target  type
           0    10      11  Class org.eclipse.core.runtime.CoreException
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
            Name  Flags
      folder      
      collection  

  private java.util.ArrayList determineAffectedPackageFragments(org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/core/runtime/IPath;)Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=19, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
        start local 1 // org.eclipse.core.runtime.IPath location
         0: .line 177
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* fragments */
        start local 2 // java.util.ArrayList fragments
         1: .line 180
            invokestatic org.eclipse.core.resources.ResourcesPlugin.getWorkspace:()Lorg/eclipse/core/resources/IWorkspace;
            astore 3 /* workspace */
        start local 3 // org.eclipse.core.resources.IWorkspace workspace
         2: .line 181
            aconst_null
            astore 4 /* resource */
        start local 4 // org.eclipse.core.resources.IResource resource
         3: .line 182
            aload 1 /* location */
            ifnull 5
         4: .line 183
            aload 3 /* workspace */
            invokeinterface org.eclipse.core.resources.IWorkspace.getRoot:()Lorg/eclipse/core/resources/IWorkspaceRoot;
            aload 1 /* location */
            invokeinterface org.eclipse.core.resources.IWorkspaceRoot.findMember:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/resources/IResource;
            astore 4 /* resource */
         5: .line 185
      StackMap locals: java.util.ArrayList org.eclipse.core.resources.IWorkspace org.eclipse.core.resources.IResource
      StackMap stack:
            aload 4 /* resource */
            ifnull 30
            aload 4 /* resource */
            invokeinterface org.eclipse.core.resources.IResource.getType:()I
            iconst_2
            if_icmpne 30
         6: .line 186
            aload 4 /* resource */
            checkcast org.eclipse.core.resources.IFolder
            astore 5 /* folder */
        start local 5 // org.eclipse.core.resources.IFolder folder
         7: .line 188
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.getExpandedClasspath:()[Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 6 /* classpath */
        start local 6 // org.eclipse.jdt.core.IClasspathEntry[] classpath
         8: .line 189
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         9: goto 29
        10: .line 190
      StackMap locals: org.eclipse.core.resources.IFolder org.eclipse.jdt.core.IClasspathEntry[] int
      StackMap stack:
            aload 6 /* classpath */
            iload 7 /* i */
            aaload
            astore 8 /* entry */
        start local 8 // org.eclipse.jdt.core.IClasspathEntry entry
        11: .line 191
            aload 6 /* classpath */
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 9 /* path */
        start local 9 // org.eclipse.core.runtime.IPath path
        12: .line 192
            aload 8 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            iconst_2
            if_icmpeq 28
            aload 9 /* path */
            aload 1 /* location */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 28
            aload 9 /* path */
            aload 1 /* location */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifne 28
        13: .line 193
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 6 /* classpath */
            iload 7 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots:(Lorg/eclipse/jdt/core/IClasspathEntry;)[Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            astore 10 /* roots */
        start local 10 // org.eclipse.jdt.core.IPackageFragmentRoot[] roots
        14: .line 194
            aload 10 /* roots */
            iconst_0
            aaload
            checkcast org.eclipse.jdt.internal.core.PackageFragmentRoot
            astore 11 /* root */
        start local 11 // org.eclipse.jdt.internal.core.PackageFragmentRoot root
        15: .line 196
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 12 /* folders */
        start local 12 // java.util.ArrayList folders
        16: .line 197
            aload 12 /* folders */
            aload 5 /* folder */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        17: .line 198
            aload 0 /* this */
            aload 5 /* folder */
            aload 12 /* folders */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.collectAllSubfolders:(Lorg/eclipse/core/resources/IFolder;Ljava/util/ArrayList;)V
        18: .line 199
            aload 12 /* folders */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 13 /* elements */
        start local 13 // java.util.Iterator elements
        19: .line 200
            aload 9 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            istore 14 /* segments */
        start local 14 // int segments
        20: .line 201
            goto 27
        21: .line 202
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.core.runtime.IPath java.util.ArrayList org.eclipse.core.resources.IWorkspace org.eclipse.core.resources.IResource org.eclipse.core.resources.IFolder org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.jdt.core.IClasspathEntry org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IPackageFragmentRoot[] org.eclipse.jdt.internal.core.PackageFragmentRoot java.util.ArrayList java.util.Iterator int
      StackMap stack:
            aload 13 /* elements */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.core.resources.IFolder
            astore 15 /* f */
        start local 15 // org.eclipse.core.resources.IFolder f
        22: .line 203
            aload 15 /* f */
            invokeinterface org.eclipse.core.resources.IFolder.getFullPath:()Lorg/eclipse/core/runtime/IPath;
            iload 14 /* segments */
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            astore 16 /* relativePath */
        start local 16 // org.eclipse.core.runtime.IPath relativePath
        23: .line 204
            aload 16 /* relativePath */
            invokeinterface org.eclipse.core.runtime.IPath.segments:()[Ljava/lang/String;
            astore 17 /* pkgName */
        start local 17 // java.lang.String[] pkgName
        24: .line 205
            aload 11 /* root */
            aload 17 /* pkgName */
            invokevirtual org.eclipse.jdt.internal.core.PackageFragmentRoot.getPackageFragment:([Ljava/lang/String;)Lorg/eclipse/jdt/internal/core/PackageFragment;
            astore 18 /* pkg */
        start local 18 // org.eclipse.jdt.core.IPackageFragment pkg
        25: .line 206
            aload 18 /* pkg */
            invokestatic org.eclipse.jdt.internal.core.util.Util.isExcluded:(Lorg/eclipse/jdt/core/IJavaElement;)Z
            ifne 27
        26: .line 207
            aload 2 /* fragments */
            aload 18 /* pkg */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 18 // org.eclipse.jdt.core.IPackageFragment pkg
        end local 17 // java.lang.String[] pkgName
        end local 16 // org.eclipse.core.runtime.IPath relativePath
        end local 15 // org.eclipse.core.resources.IFolder f
        27: .line 201
      StackMap locals:
      StackMap stack:
            aload 13 /* elements */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        end local 14 // int segments
        end local 13 // java.util.Iterator elements
        end local 12 // java.util.ArrayList folders
        end local 11 // org.eclipse.jdt.internal.core.PackageFragmentRoot root
        end local 10 // org.eclipse.jdt.core.IPackageFragmentRoot[] roots
        end local 9 // org.eclipse.core.runtime.IPath path
        end local 8 // org.eclipse.jdt.core.IClasspathEntry entry
        28: .line 189
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.core.runtime.IPath java.util.ArrayList org.eclipse.core.resources.IWorkspace org.eclipse.core.resources.IResource org.eclipse.core.resources.IFolder org.eclipse.jdt.core.IClasspathEntry[] int
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 7 /* i */
            aload 6 /* classpath */
            arraylength
            if_icmplt 10
        end local 7 // int i
        end local 6 // org.eclipse.jdt.core.IClasspathEntry[] classpath
        end local 5 // org.eclipse.core.resources.IFolder folder
        30: .line 212
      StackMap locals:
      StackMap stack:
            aload 2 /* fragments */
            areturn
        end local 4 // org.eclipse.core.resources.IResource resource
        end local 3 // org.eclipse.core.resources.IWorkspace workspace
        end local 2 // java.util.ArrayList fragments
        end local 1 // org.eclipse.core.runtime.IPath location
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   31     0          this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
            0   31     1      location  Lorg/eclipse/core/runtime/IPath;
            1   31     2     fragments  Ljava/util/ArrayList;
            2   31     3     workspace  Lorg/eclipse/core/resources/IWorkspace;
            3   31     4      resource  Lorg/eclipse/core/resources/IResource;
            7   30     5        folder  Lorg/eclipse/core/resources/IFolder;
            8   30     6     classpath  [Lorg/eclipse/jdt/core/IClasspathEntry;
            9   30     7             i  I
           11   28     8         entry  Lorg/eclipse/jdt/core/IClasspathEntry;
           12   28     9          path  Lorg/eclipse/core/runtime/IPath;
           14   28    10         roots  [Lorg/eclipse/jdt/core/IPackageFragmentRoot;
           15   28    11          root  Lorg/eclipse/jdt/internal/core/PackageFragmentRoot;
           16   28    12       folders  Ljava/util/ArrayList;
           19   28    13      elements  Ljava/util/Iterator;
           20   28    14      segments  I
           22   27    15             f  Lorg/eclipse/core/resources/IFolder;
           23   27    16  relativePath  Lorg/eclipse/core/runtime/IPath;
           24   27    17       pkgName  [Ljava/lang/String;
           25   27    18           pkg  Lorg/eclipse/jdt/core/IPackageFragment;
    Exceptions:
      throws org.eclipse.jdt.core.JavaModelException
    MethodParameters:
          Name  Flags
      location  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
        start local 1 // java.lang.Object obj
         0: .line 217
            aload 1 /* obj */
            instanceof org.eclipse.jdt.internal.core.ClasspathChange
            ifne 2
         1: .line 218
            iconst_0
            ireturn
         2: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 1 /* obj */
            checkcast org.eclipse.jdt.internal.core.ClasspathChange
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
            0    3     1   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   

  public int generateDelta(org.eclipse.jdt.internal.core.JavaElementDelta, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/core/JavaElementDelta;Z)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=26, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
        start local 1 // org.eclipse.jdt.internal.core.JavaElementDelta delta
        start local 2 // boolean addClasspathChange
         0: .line 227
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            astore 3 /* manager */
        start local 3 // org.eclipse.jdt.internal.core.JavaModelManager manager
         1: .line 228
            aload 3 /* manager */
            getfield org.eclipse.jdt.internal.core.JavaModelManager.deltaState:Lorg/eclipse/jdt/internal/core/DeltaProcessingState;
            astore 4 /* state */
        start local 4 // org.eclipse.jdt.internal.core.DeltaProcessingState state
         2: .line 229
            aload 4 /* state */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.getElementName:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.internal.core.DeltaProcessingState.findJavaProject:(Ljava/lang/String;)Lorg/eclipse/jdt/core/IJavaProject;
            ifnonnull 4
         3: .line 233
            iconst_0
            ireturn
         4: .line 235
      StackMap locals: org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState
      StackMap stack:
            aload 4 /* state */
            invokevirtual org.eclipse.jdt.internal.core.DeltaProcessingState.getDeltaProcessor:()Lorg/eclipse/jdt/internal/core/DeltaProcessor;
            astore 5 /* deltaProcessor */
        start local 5 // org.eclipse.jdt.internal.core.DeltaProcessor deltaProcessor
         5: .line 236
            aconst_null
            astore 6 /* newResolvedClasspath */
        start local 6 // org.eclipse.jdt.core.IClasspathEntry[] newResolvedClasspath
         6: .line 237
            aconst_null
            astore 7 /* newOutputLocation */
        start local 7 // org.eclipse.core.runtime.IPath newOutputLocation
         7: .line 238
            iconst_0
            istore 8 /* result */
        start local 8 // int result
         8: .line 240
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.getPerProjectInfo:()Lorg/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo;
            astore 9 /* perProjectInfo */
        start local 9 // org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo perProjectInfo
         9: .line 243
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 9 /* perProjectInfo */
            iconst_0
            iload 2 /* addClasspathChange */
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.resolveClasspath:(Lorg/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo;ZZ)V
        10: .line 247
            aload 9 /* perProjectInfo */
            dup
            astore 11
            monitorenter
        11: .line 248
            aload 9 /* perProjectInfo */
            getfield org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo.rawClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 10 /* newRawClasspath */
        start local 10 // org.eclipse.jdt.core.IClasspathEntry[] newRawClasspath
        12: .line 249
            aload 9 /* perProjectInfo */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo.getResolvedClasspath:()[Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 6 /* newResolvedClasspath */
        13: .line 250
            aload 9 /* perProjectInfo */
            getfield org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo.outputLocation:Lorg/eclipse/core/runtime/IPath;
            astore 7 /* newOutputLocation */
        14: .line 247
            aload 11
            monitorexit
        15: goto 18
        end local 10 // org.eclipse.jdt.core.IClasspathEntry[] newRawClasspath
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.internal.core.JavaElementDelta int org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState org.eclipse.jdt.internal.core.DeltaProcessor org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo top org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo
      StackMap stack: java.lang.Throwable
        16: aload 11
            monitorexit
        17: athrow
        start local 10 // org.eclipse.jdt.core.IClasspathEntry[] newRawClasspath
        18: .line 253
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.internal.core.JavaElementDelta int org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState org.eclipse.jdt.internal.core.DeltaProcessor org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            aload 6 /* newResolvedClasspath */
            ifnonnull 24
        19: .line 255
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.newTemporaryInfo:()Lorg/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo;
            astore 11 /* temporaryInfo */
        start local 11 // org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo temporaryInfo
        20: .line 256
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 11 /* temporaryInfo */
            iconst_0
            iload 2 /* addClasspathChange */
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.resolveClasspath:(Lorg/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo;ZZ)V
        21: .line 257
            aload 11 /* temporaryInfo */
            getfield org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo.rawClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 10 /* newRawClasspath */
        22: .line 258
            aload 11 /* temporaryInfo */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo.getResolvedClasspath:()[Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 6 /* newResolvedClasspath */
        23: .line 259
            aload 11 /* temporaryInfo */
            getfield org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo.outputLocation:Lorg/eclipse/core/runtime/IPath;
            astore 7 /* newOutputLocation */
        end local 11 // org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo temporaryInfo
        24: .line 263
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldRawClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            ifnull 36
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldRawClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            aload 10 /* newRawClasspath */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldOutputLocation:Lorg/eclipse/core/runtime/IPath;
            aload 7 /* newOutputLocation */
            invokestatic org.eclipse.jdt.internal.core.JavaProject.areClasspathsEqual:([Lorg/eclipse/jdt/core/IClasspathEntry;[Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;)Z
            ifne 36
        25: .line 264
            aload 1 /* delta */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            ldc 131072
            invokevirtual org.eclipse.jdt.internal.core.JavaElementDelta.changed:(Lorg/eclipse/jdt/core/IJavaElement;I)Lorg/eclipse/jdt/internal/core/JavaElementDelta;
            pop
        26: .line 265
            iload 8 /* result */
            iconst_1
            ior
            istore 8 /* result */
        27: .line 269
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        28: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldRawClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            arraylength
            istore 12 /* length */
        start local 12 // int length
        29: goto 35
        30: .line 270
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldRawClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 11 /* i */
            aaload
            astore 13 /* entry */
        start local 13 // org.eclipse.jdt.core.IClasspathEntry entry
        31: .line 271
            aload 13 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            iconst_5
            if_icmpne 34
        32: .line 272
            aload 0 /* this */
            aload 10 /* newRawClasspath */
            aload 13 /* entry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.classpathContains:([Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathEntry;)I
            iconst_m1
            if_icmpne 34
        33: .line 273
            aload 3 /* manager */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 13 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            aconst_null
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.containerPut:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IClasspathContainer;)V
        end local 13 // org.eclipse.jdt.core.IClasspathEntry entry
        34: .line 269
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        35: iload 11 /* i */
            iload 12 /* length */
            if_icmplt 30
        end local 12 // int length
        end local 11 // int i
        36: .line 279
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            ifnull 39
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            aload 6 /* newResolvedClasspath */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldOutputLocation:Lorg/eclipse/core/runtime/IPath;
            aload 7 /* newOutputLocation */
            invokestatic org.eclipse.jdt.internal.core.JavaProject.areClasspathsEqual:([Lorg/eclipse/jdt/core/IClasspathEntry;[Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 39
        37: .line 280
            iload 8 /* result */
        38: ireturn
        39: .line 283
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.close:()V
        40: .line 286
            aload 5 /* deltaProcessor */
            getfield org.eclipse.jdt.internal.core.DeltaProcessor.projectCachesToReset:Ljava/util/Set;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // org.eclipse.jdt.core.IClasspathEntry[] newRawClasspath
        end local 9 // org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo perProjectInfo
        41: .line 287
            goto 46
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.internal.core.JavaElementDelta int org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState org.eclipse.jdt.internal.core.DeltaProcessor org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        42: astore 9 /* e */
        start local 9 // org.eclipse.jdt.core.JavaModelException e
        43: .line 288
            getstatic org.eclipse.jdt.internal.core.DeltaProcessor.VERBOSE:Z
            ifeq 45
        44: .line 289
            aload 9 /* e */
            invokevirtual org.eclipse.jdt.core.JavaModelException.printStackTrace:()V
        45: .line 292
      StackMap locals: org.eclipse.jdt.core.JavaModelException
      StackMap stack:
            iload 8 /* result */
            ireturn
        end local 9 // org.eclipse.jdt.core.JavaModelException e
        46: .line 295
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            ifnonnull 48
        47: .line 296
            iload 8 /* result */
            ireturn
        48: .line 298
      StackMap locals:
      StackMap stack:
            aload 1 /* delta */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            ldc 2097152
            invokevirtual org.eclipse.jdt.internal.core.JavaElementDelta.changed:(Lorg/eclipse/jdt/core/IJavaElement;I)Lorg/eclipse/jdt/internal/core/JavaElementDelta;
            pop
        49: .line 299
            iload 8 /* result */
            iconst_1
            ior
            istore 8 /* result */
        50: .line 301
            aload 4 /* state */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.DeltaProcessingState.addForRefresh:(Lorg/eclipse/jdt/core/IJavaElement;)V
        51: .line 303
            aconst_null
            astore 9 /* removedRoots */
        start local 9 // java.util.Map removedRoots
        52: .line 304
            aconst_null
            astore 10 /* roots */
        start local 10 // org.eclipse.jdt.core.IPackageFragmentRoot[] roots
        53: .line 306
            aload 5 /* deltaProcessor */
            getfield org.eclipse.jdt.internal.core.DeltaProcessor.oldRoots:Ljava/util/Map;
            dup
            astore 11 /* allOldRoots */
        start local 11 // java.util.Map allOldRoots
        54: ifnull 56
        55: .line 307
            aload 11 /* allOldRoots */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.IPackageFragmentRoot[]
            astore 10 /* roots */
        56: .line 309
      StackMap locals: java.util.Map org.eclipse.jdt.core.IPackageFragmentRoot[] java.util.Map
      StackMap stack:
            aload 10 /* roots */
            ifnull 64
        57: .line 310
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 9 /* removedRoots */
        58: .line 311
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        59: goto 63
        60: .line 312
      StackMap locals: int
      StackMap stack:
            aload 10 /* roots */
            iload 12 /* i */
            aaload
            astore 13 /* root */
        start local 13 // org.eclipse.jdt.core.IPackageFragmentRoot root
        61: .line 313
            aload 9 /* removedRoots */
            aload 13 /* root */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getPath:()Lorg/eclipse/core/runtime/IPath;
            aload 13 /* root */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 13 // org.eclipse.jdt.core.IPackageFragmentRoot root
        62: .line 311
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        63: iload 12 /* i */
            aload 10 /* roots */
            arraylength
            if_icmplt 60
        end local 12 // int i
        64: .line 317
      StackMap locals:
      StackMap stack:
            aload 6 /* newResolvedClasspath */
            arraylength
            istore 12 /* newLength */
        start local 12 // int newLength
        65: .line 318
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            arraylength
            istore 13 /* oldLength */
        start local 13 // int oldLength
        66: .line 319
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        67: goto 146
        68: .line 320
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            aload 6 /* newResolvedClasspath */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.classpathContains:([Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathEntry;)I
            istore 15 /* index */
        start local 15 // int index
        69: .line 321
            iload 15 /* index */
            iconst_m1
            if_icmpne 121
        70: .line 323
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            istore 16 /* entryKind */
        start local 16 // int entryKind
        71: .line 324
            iload 16 /* entryKind */
            iconst_2
            if_icmpne 74
        72: .line 325
            iload 8 /* result */
            iconst_2
            ior
            istore 8 /* result */
        73: .line 326
            goto 145
        74: .line 328
      StackMap locals: int int
      StackMap stack:
            iload 16 /* entryKind */
            iconst_1
            if_icmpne 76
        75: .line 329
            iload 8 /* result */
            iconst_4
            ior
            istore 8 /* result */
        76: .line 332
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 17 /* pkgFragmentRoots */
        start local 17 // org.eclipse.jdt.core.IPackageFragmentRoot[] pkgFragmentRoots
        77: .line 333
            aload 9 /* removedRoots */
            ifnull 81
        78: .line 334
            aload 9 /* removedRoots */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.core.PackageFragmentRoot
            astore 18 /* oldRoot */
        start local 18 // org.eclipse.jdt.internal.core.PackageFragmentRoot oldRoot
        79: .line 335
            aload 18 /* oldRoot */
            ifnull 81
        80: .line 336
            iconst_1
            anewarray org.eclipse.jdt.internal.core.PackageFragmentRoot
            dup
            iconst_0
            aload 18 /* oldRoot */
            aastore
            astore 17 /* pkgFragmentRoots */
        end local 18 // org.eclipse.jdt.internal.core.PackageFragmentRoot oldRoot
        81: .line 339
      StackMap locals: org.eclipse.jdt.core.IPackageFragmentRoot[]
      StackMap stack:
            aload 17 /* pkgFragmentRoots */
            ifnonnull 119
        82: .line 341
            new org.eclipse.jdt.internal.compiler.util.ObjectVector
            dup
            invokespecial org.eclipse.jdt.internal.compiler.util.ObjectVector.<init>:()V
            astore 18 /* accumulatedRoots */
        start local 18 // org.eclipse.jdt.internal.compiler.util.ObjectVector accumulatedRoots
        83: .line 342
            new java.util.HashSet
            dup
            iconst_5
            invokespecial java.util.HashSet.<init>:(I)V
            astore 19 /* rootIDs */
        start local 19 // java.util.HashSet rootIDs
        84: .line 343
            aload 19 /* rootIDs */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.rootID:()Ljava/lang/String;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        85: .line 344
            getstatic org.eclipse.jdt.internal.core.JrtPackageFragmentRoot.workingOnOldClasspath:Ljava/lang/ThreadLocal;
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
        86: .line 345
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
        87: .line 346
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
        88: .line 347
            aload 18 /* accumulatedRoots */
        89: .line 348
            aload 19 /* rootIDs */
        90: .line 349
            aconst_null
        91: .line 350
            iconst_0
        92: .line 351
            iconst_1
        93: .line 352
            aconst_null
        94: .line 345
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots:(Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/internal/compiler/util/ObjectVector;Ljava/util/HashSet;Lorg/eclipse/jdt/core/IClasspathEntry;ZZLjava/util/Map;)V
        95: .line 358
            aload 4 /* state */
            getfield org.eclipse.jdt.internal.core.DeltaProcessingState.oldRoots:Ljava/util/Map;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.core.DeltaProcessor$RootInfo
            astore 20 /* rootInfo */
        start local 20 // org.eclipse.jdt.internal.core.DeltaProcessor$RootInfo rootInfo
        96: .line 359
            aload 20 /* rootInfo */
            ifnull 109
            aload 20 /* rootInfo */
            getfield org.eclipse.jdt.internal.core.DeltaProcessor$RootInfo.cache:Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            ifnull 109
        97: .line 360
            aload 20 /* rootInfo */
            getfield org.eclipse.jdt.internal.core.DeltaProcessor$RootInfo.cache:Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            astore 21 /* oldRoot */
        start local 21 // org.eclipse.jdt.core.IPackageFragmentRoot oldRoot
        98: .line 361
            iconst_0
            istore 22 /* found */
        start local 22 // boolean found
        99: .line 362
            iconst_0
            istore 23 /* j */
        start local 23 // int j
       100: goto 106
       101: .line 363
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.internal.core.JavaElementDelta int org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState org.eclipse.jdt.internal.core.DeltaProcessor org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int java.util.Map org.eclipse.jdt.core.IPackageFragmentRoot[] java.util.Map int int int int int org.eclipse.jdt.core.IPackageFragmentRoot[] org.eclipse.jdt.internal.compiler.util.ObjectVector java.util.HashSet org.eclipse.jdt.internal.core.DeltaProcessor$RootInfo org.eclipse.jdt.core.IPackageFragmentRoot int int
      StackMap stack:
            aload 18 /* accumulatedRoots */
            iload 23 /* j */
            invokevirtual org.eclipse.jdt.internal.compiler.util.ObjectVector.elementAt:(I)Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.IPackageFragmentRoot
            astore 24 /* root */
        start local 24 // org.eclipse.jdt.core.IPackageFragmentRoot root
       102: .line 364
            aload 24 /* root */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getPath:()Lorg/eclipse/core/runtime/IPath;
            aload 21 /* oldRoot */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifeq 105
       103: .line 365
            iconst_1
            istore 22 /* found */
       104: .line 366
            goto 107
        end local 24 // org.eclipse.jdt.core.IPackageFragmentRoot root
       105: .line 362
      StackMap locals:
      StackMap stack:
            iinc 23 /* j */ 1
      StackMap locals:
      StackMap stack:
       106: iload 23 /* j */
            aload 18 /* accumulatedRoots */
            invokevirtual org.eclipse.jdt.internal.compiler.util.ObjectVector.size:()I
            if_icmplt 101
        end local 23 // int j
       107: .line 369
      StackMap locals:
      StackMap stack:
            iload 22 /* found */
            ifne 109
       108: .line 370
            aload 18 /* accumulatedRoots */
            aload 21 /* oldRoot */
            invokevirtual org.eclipse.jdt.internal.compiler.util.ObjectVector.add:(Ljava/lang/Object;)V
        end local 22 // boolean found
        end local 21 // org.eclipse.jdt.core.IPackageFragmentRoot oldRoot
       109: .line 373
      StackMap locals:
      StackMap stack:
            aload 18 /* accumulatedRoots */
            invokevirtual org.eclipse.jdt.internal.compiler.util.ObjectVector.size:()I
            anewarray org.eclipse.jdt.internal.core.PackageFragmentRoot
            astore 17 /* pkgFragmentRoots */
       110: .line 374
            aload 18 /* accumulatedRoots */
            aload 17 /* pkgFragmentRoots */
            invokevirtual org.eclipse.jdt.internal.compiler.util.ObjectVector.copyInto:([Ljava/lang/Object;)V
        end local 20 // org.eclipse.jdt.internal.core.DeltaProcessor$RootInfo rootInfo
        end local 19 // java.util.HashSet rootIDs
        end local 18 // org.eclipse.jdt.internal.compiler.util.ObjectVector accumulatedRoots
       111: .line 375
            goto 118
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.internal.core.JavaElementDelta int org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState org.eclipse.jdt.internal.core.DeltaProcessor org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int java.util.Map org.eclipse.jdt.core.IPackageFragmentRoot[] java.util.Map int int int int int org.eclipse.jdt.core.IPackageFragmentRoot[]
      StackMap stack: org.eclipse.jdt.core.JavaModelException
       112: pop
       113: .line 376
            iconst_0
            anewarray org.eclipse.jdt.internal.core.PackageFragmentRoot
            astore 17 /* pkgFragmentRoots */
       114: .line 378
            getstatic org.eclipse.jdt.internal.core.JrtPackageFragmentRoot.workingOnOldClasspath:Ljava/lang/ThreadLocal;
            aconst_null
            invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
            goto 119
       115: .line 377
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 25
       116: .line 378
            getstatic org.eclipse.jdt.internal.core.JrtPackageFragmentRoot.workingOnOldClasspath:Ljava/lang/ThreadLocal;
            aconst_null
            invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
       117: .line 379
            aload 25
            athrow
       118: .line 378
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.JrtPackageFragmentRoot.workingOnOldClasspath:Ljava/lang/ThreadLocal;
            aconst_null
            invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
       119: .line 381
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* delta */
            aload 17 /* pkgFragmentRoots */
            sipush 128
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.addClasspathDeltas:(Lorg/eclipse/jdt/internal/core/JavaElementDelta;[Lorg/eclipse/jdt/core/IPackageFragmentRoot;I)V
        end local 17 // org.eclipse.jdt.core.IPackageFragmentRoot[] pkgFragmentRoots
        end local 16 // int entryKind
       120: .line 382
            goto 145
       121: .line 384
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            iconst_2
            if_icmpne 124
       122: .line 385
            iload 8 /* result */
            iconst_2
            ior
            istore 8 /* result */
       123: .line 386
            goto 145
       124: .line 388
      StackMap locals:
      StackMap stack:
            iload 15 /* index */
            iload 14 /* i */
            if_icmpeq 126
       125: .line 389
            aload 0 /* this */
            aload 1 /* delta */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots:(Lorg/eclipse/jdt/core/IClasspathEntry;)[Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            sipush 256
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.addClasspathDeltas:(Lorg/eclipse/jdt/internal/core/JavaElementDelta;[Lorg/eclipse/jdt/core/IPackageFragmentRoot;I)V
       126: .line 393
      StackMap locals:
      StackMap stack:
            aload 6 /* newResolvedClasspath */
            iload 15 /* index */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
            astore 16 /* newSourcePath */
        start local 16 // org.eclipse.core.runtime.IPath newSourcePath
       127: .line 394
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
            aload 16 /* newSourcePath */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.getSourceAttachmentDeltaFlag:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;)I
            istore 17 /* sourceAttachmentFlags */
        start local 17 // int sourceAttachmentFlags
       128: .line 395
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getSourceAttachmentRootPath:()Lorg/eclipse/core/runtime/IPath;
            astore 18 /* oldRootPath */
        start local 18 // org.eclipse.core.runtime.IPath oldRootPath
       129: .line 396
            aload 6 /* newResolvedClasspath */
            iload 15 /* index */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getSourceAttachmentRootPath:()Lorg/eclipse/core/runtime/IPath;
            astore 19 /* newRootPath */
        start local 19 // org.eclipse.core.runtime.IPath newRootPath
       130: .line 397
            aload 0 /* this */
            aload 18 /* oldRootPath */
            aload 19 /* newRootPath */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.getSourceAttachmentDeltaFlag:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;)I
            istore 20 /* sourceAttachmentRootFlags */
        start local 20 // int sourceAttachmentRootFlags
       131: .line 398
            iload 17 /* sourceAttachmentFlags */
            iload 20 /* sourceAttachmentRootFlags */
            ior
            istore 21 /* flags */
        start local 21 // int flags
       132: .line 399
            iload 21 /* flags */
            ifeq 135
       133: .line 400
            aload 0 /* this */
            aload 1 /* delta */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots:(Lorg/eclipse/jdt/core/IClasspathEntry;)[Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            iload 21 /* flags */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.addClasspathDeltas:(Lorg/eclipse/jdt/internal/core/JavaElementDelta;[Lorg/eclipse/jdt/core/IPackageFragmentRoot;I)V
       134: .line 401
            goto 145
       135: .line 402
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.internal.core.JavaElementDelta int org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState org.eclipse.jdt.internal.core.DeltaProcessor org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int java.util.Map org.eclipse.jdt.core.IPackageFragmentRoot[] java.util.Map int int int int org.eclipse.core.runtime.IPath int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath int int
      StackMap stack:
            aload 18 /* oldRootPath */
            ifnonnull 145
            aload 19 /* newRootPath */
            ifnonnull 145
       136: .line 405
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 14 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots:(Lorg/eclipse/jdt/core/IClasspathEntry;)[Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            astore 22 /* computedRoots */
        start local 22 // org.eclipse.jdt.core.IPackageFragmentRoot[] computedRoots
       137: .line 406
            iconst_0
            istore 23 /* j */
        start local 23 // int j
       138: goto 144
       139: .line 407
      StackMap locals: org.eclipse.jdt.core.IPackageFragmentRoot[] int
      StackMap stack:
            aload 22 /* computedRoots */
            iload 23 /* j */
            aaload
            astore 24 /* root */
        start local 24 // org.eclipse.jdt.core.IPackageFragmentRoot root
       140: .line 410
            aload 24 /* root */
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.close:()V
       141: .line 411
            goto 143
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.internal.core.JavaElementDelta int org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState org.eclipse.jdt.internal.core.DeltaProcessor org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int java.util.Map org.eclipse.jdt.core.IPackageFragmentRoot[] java.util.Map int int int int org.eclipse.core.runtime.IPath int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath int int org.eclipse.jdt.core.IPackageFragmentRoot[] int org.eclipse.jdt.core.IPackageFragmentRoot
      StackMap stack: org.eclipse.jdt.core.JavaModelException
       142: pop
        end local 24 // org.eclipse.jdt.core.IPackageFragmentRoot root
       143: .line 406
      StackMap locals:
      StackMap stack:
            iinc 23 /* j */ 1
      StackMap locals:
      StackMap stack:
       144: iload 23 /* j */
            aload 22 /* computedRoots */
            arraylength
            if_icmplt 139
        end local 23 // int j
        end local 22 // org.eclipse.jdt.core.IPackageFragmentRoot[] computedRoots
        end local 21 // int flags
        end local 20 // int sourceAttachmentRootFlags
        end local 19 // org.eclipse.core.runtime.IPath newRootPath
        end local 18 // org.eclipse.core.runtime.IPath oldRootPath
        end local 17 // int sourceAttachmentFlags
        end local 16 // org.eclipse.core.runtime.IPath newSourcePath
        end local 15 // int index
       145: .line 319
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.internal.core.JavaElementDelta int org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState org.eclipse.jdt.internal.core.DeltaProcessor org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int java.util.Map org.eclipse.jdt.core.IPackageFragmentRoot[] java.util.Map int int int
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
       146: iload 14 /* i */
            iload 13 /* oldLength */
            if_icmplt 68
        end local 14 // int i
       147: .line 420
            iconst_0
            istore 14 /* i */
        start local 14 // int i
       148: goto 159
       149: .line 421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            aload 6 /* newResolvedClasspath */
            iload 14 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.classpathContains:([Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathEntry;)I
            istore 15 /* index */
        start local 15 // int index
       150: .line 422
            iload 15 /* index */
            iconst_m1
            if_icmpne 158
       151: .line 424
            aload 6 /* newResolvedClasspath */
            iload 14 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            istore 16 /* entryKind */
        start local 16 // int entryKind
       152: .line 425
            iload 16 /* entryKind */
            iconst_2
            if_icmpne 155
       153: .line 426
            iload 8 /* result */
            iconst_2
            ior
            istore 8 /* result */
       154: .line 427
            goto 158
       155: .line 429
      StackMap locals: int int
      StackMap stack:
            iload 16 /* entryKind */
            iconst_1
            if_icmpne 157
       156: .line 430
            iload 8 /* result */
            iconst_4
            ior
            istore 8 /* result */
       157: .line 432
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* delta */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 6 /* newResolvedClasspath */
            iload 14 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.computePackageFragmentRoots:(Lorg/eclipse/jdt/core/IClasspathEntry;)[Lorg/eclipse/jdt/core/IPackageFragmentRoot;
            bipush 64
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.addClasspathDeltas:(Lorg/eclipse/jdt/internal/core/JavaElementDelta;[Lorg/eclipse/jdt/core/IPackageFragmentRoot;I)V
        end local 16 // int entryKind
        end local 15 // int index
       158: .line 420
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
       159: iload 14 /* i */
            iload 12 /* newLength */
            if_icmplt 149
        end local 14 // int i
       160: .line 437
            aload 7 /* newOutputLocation */
            ifnonnull 161
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldOutputLocation:Lorg/eclipse/core/runtime/IPath;
            ifnonnull 162
       161: .line 438
      StackMap locals:
      StackMap stack:
            aload 7 /* newOutputLocation */
            ifnull 180
            aload 7 /* newOutputLocation */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldOutputLocation:Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifne 180
       162: .line 440
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldOutputLocation:Lorg/eclipse/core/runtime/IPath;
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.determineAffectedPackageFragments:(Lorg/eclipse/core/runtime/IPath;)Ljava/util/ArrayList;
            astore 14 /* added */
        start local 14 // java.util.ArrayList added
       163: .line 441
            aload 14 /* added */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 15 /* iter */
        start local 15 // java.util.Iterator iter
       164: .line 442
            goto 168
       165: .line 443
      StackMap locals: java.util.ArrayList java.util.Iterator
      StackMap stack:
            aload 15 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.IPackageFragment
            astore 16 /* frag */
        start local 16 // org.eclipse.jdt.core.IPackageFragment frag
       166: .line 444
            aload 16 /* frag */
            invokeinterface org.eclipse.jdt.core.IPackageFragment.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.IPackageFragmentRoot
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.close:()V
       167: .line 445
            aload 1 /* delta */
            aload 16 /* frag */
            invokevirtual org.eclipse.jdt.internal.core.JavaElementDelta.added:(Lorg/eclipse/jdt/core/IJavaElement;)V
        end local 16 // org.eclipse.jdt.core.IPackageFragment frag
       168: .line 442
      StackMap locals:
      StackMap stack:
            aload 15 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 165
       169: .line 449
            aload 0 /* this */
            aload 7 /* newOutputLocation */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.determineAffectedPackageFragments:(Lorg/eclipse/core/runtime/IPath;)Ljava/util/ArrayList;
            astore 16 /* removed */
        start local 16 // java.util.ArrayList removed
       170: .line 450
            aload 16 /* removed */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 15 /* iter */
       171: .line 451
            goto 175
       172: .line 452
      StackMap locals: java.util.ArrayList
      StackMap stack:
            aload 15 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.IPackageFragment
            astore 17 /* frag */
        start local 17 // org.eclipse.jdt.core.IPackageFragment frag
       173: .line 453
            aload 17 /* frag */
            invokeinterface org.eclipse.jdt.core.IPackageFragment.getParent:()Lorg/eclipse/jdt/core/IJavaElement;
            checkcast org.eclipse.jdt.core.IPackageFragmentRoot
            invokeinterface org.eclipse.jdt.core.IPackageFragmentRoot.close:()V
       174: .line 454
            aload 1 /* delta */
            aload 17 /* frag */
            invokevirtual org.eclipse.jdt.internal.core.JavaElementDelta.removed:(Lorg/eclipse/jdt/core/IJavaElement;)V
        end local 17 // org.eclipse.jdt.core.IPackageFragment frag
       175: .line 451
      StackMap locals:
      StackMap stack:
            aload 15 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 172
        end local 16 // java.util.ArrayList removed
        end local 15 // java.util.Iterator iter
        end local 14 // java.util.ArrayList added
       176: .line 456
            goto 180
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.internal.core.JavaElementDelta int org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.DeltaProcessingState org.eclipse.jdt.internal.core.DeltaProcessor org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int java.util.Map org.eclipse.jdt.core.IPackageFragmentRoot[] java.util.Map int int
      StackMap stack: org.eclipse.jdt.core.JavaModelException
       177: astore 14 /* e */
        start local 14 // org.eclipse.jdt.core.JavaModelException e
       178: .line 457
            getstatic org.eclipse.jdt.internal.core.DeltaProcessor.VERBOSE:Z
            ifeq 180
       179: .line 458
            aload 14 /* e */
            invokevirtual org.eclipse.jdt.core.JavaModelException.printStackTrace:()V
        end local 14 // org.eclipse.jdt.core.JavaModelException e
       180: .line 462
      StackMap locals:
      StackMap stack:
            iload 8 /* result */
            ireturn
        end local 13 // int oldLength
        end local 12 // int newLength
        end local 11 // java.util.Map allOldRoots
        end local 10 // org.eclipse.jdt.core.IPackageFragmentRoot[] roots
        end local 9 // java.util.Map removedRoots
        end local 8 // int result
        end local 7 // org.eclipse.core.runtime.IPath newOutputLocation
        end local 6 // org.eclipse.jdt.core.IClasspathEntry[] newResolvedClasspath
        end local 5 // org.eclipse.jdt.internal.core.DeltaProcessor deltaProcessor
        end local 4 // org.eclipse.jdt.internal.core.DeltaProcessingState state
        end local 3 // org.eclipse.jdt.internal.core.JavaModelManager manager
        end local 2 // boolean addClasspathChange
        end local 1 // org.eclipse.jdt.internal.core.JavaElementDelta delta
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0  181     0                       this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
            0  181     1                      delta  Lorg/eclipse/jdt/internal/core/JavaElementDelta;
            0  181     2         addClasspathChange  Z
            1  181     3                    manager  Lorg/eclipse/jdt/internal/core/JavaModelManager;
            2  181     4                      state  Lorg/eclipse/jdt/internal/core/DeltaProcessingState;
            5  181     5             deltaProcessor  Lorg/eclipse/jdt/internal/core/DeltaProcessor;
            6  181     6       newResolvedClasspath  [Lorg/eclipse/jdt/core/IClasspathEntry;
            7  181     7          newOutputLocation  Lorg/eclipse/core/runtime/IPath;
            8  181     8                     result  I
            9   41     9             perProjectInfo  Lorg/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo;
           12   16    10            newRawClasspath  [Lorg/eclipse/jdt/core/IClasspathEntry;
           18   41    10            newRawClasspath  [Lorg/eclipse/jdt/core/IClasspathEntry;
           20   24    11              temporaryInfo  Lorg/eclipse/jdt/internal/core/JavaModelManager$PerProjectInfo;
           28   36    11                          i  I
           29   36    12                     length  I
           31   34    13                      entry  Lorg/eclipse/jdt/core/IClasspathEntry;
           43   46     9                          e  Lorg/eclipse/jdt/core/JavaModelException;
           52  181     9               removedRoots  Ljava/util/Map;
           53  181    10                      roots  [Lorg/eclipse/jdt/core/IPackageFragmentRoot;
           54  181    11                allOldRoots  Ljava/util/Map;
           59   64    12                          i  I
           61   62    13                       root  Lorg/eclipse/jdt/core/IPackageFragmentRoot;
           65  181    12                  newLength  I
           66  181    13                  oldLength  I
           67  147    14                          i  I
           69  145    15                      index  I
           71  120    16                  entryKind  I
           77  120    17           pkgFragmentRoots  [Lorg/eclipse/jdt/core/IPackageFragmentRoot;
           79   81    18                    oldRoot  Lorg/eclipse/jdt/internal/core/PackageFragmentRoot;
           83  111    18           accumulatedRoots  Lorg/eclipse/jdt/internal/compiler/util/ObjectVector;
           84  111    19                    rootIDs  Ljava/util/HashSet;
           96  111    20                   rootInfo  Lorg/eclipse/jdt/internal/core/DeltaProcessor$RootInfo;
           98  109    21                    oldRoot  Lorg/eclipse/jdt/core/IPackageFragmentRoot;
           99  109    22                      found  Z
          100  107    23                          j  I
          102  105    24                       root  Lorg/eclipse/jdt/core/IPackageFragmentRoot;
          127  145    16              newSourcePath  Lorg/eclipse/core/runtime/IPath;
          128  145    17      sourceAttachmentFlags  I
          129  145    18                oldRootPath  Lorg/eclipse/core/runtime/IPath;
          130  145    19                newRootPath  Lorg/eclipse/core/runtime/IPath;
          131  145    20  sourceAttachmentRootFlags  I
          132  145    21                      flags  I
          137  145    22              computedRoots  [Lorg/eclipse/jdt/core/IPackageFragmentRoot;
          138  145    23                          j  I
          140  143    24                       root  Lorg/eclipse/jdt/core/IPackageFragmentRoot;
          148  160    14                          i  I
          150  158    15                      index  I
          152  158    16                  entryKind  I
          163  176    14                      added  Ljava/util/ArrayList;
          164  176    15                       iter  Ljava/util/Iterator;
          166  168    16                       frag  Lorg/eclipse/jdt/core/IPackageFragment;
          170  176    16                    removed  Ljava/util/ArrayList;
          173  175    17                       frag  Lorg/eclipse/jdt/core/IPackageFragment;
          178  180    14                          e  Lorg/eclipse/jdt/core/JavaModelException;
      Exception table:
        from    to  target  type
          11    15      16  any
          16    17      16  any
           8    38      42  Class org.eclipse.jdt.core.JavaModelException
          39    41      42  Class org.eclipse.jdt.core.JavaModelException
          82   111     112  Class org.eclipse.jdt.core.JavaModelException
          82   114     115  any
         140   141     142  Class org.eclipse.jdt.core.JavaModelException
         162   176     177  Class org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                    Name  Flags
      delta               
      addClasspathChange  

  private int getSourceAttachmentDeltaFlag(org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
        start local 1 // org.eclipse.core.runtime.IPath oldPath
        start local 2 // org.eclipse.core.runtime.IPath newPath
         0: .line 471
            aload 1 /* oldPath */
            ifnonnull 4
         1: .line 472
            aload 2 /* newPath */
            ifnull 3
         2: .line 473
            sipush 4096
            ireturn
         3: .line 475
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 477
      StackMap locals:
      StackMap stack:
            aload 2 /* newPath */
            ifnonnull 6
         5: .line 478
            sipush 8192
            ireturn
         6: .line 479
      StackMap locals:
      StackMap stack:
            aload 1 /* oldPath */
            aload 2 /* newPath */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifne 8
         7: .line 480
            sipush 12288
            ireturn
         8: .line 482
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.eclipse.core.runtime.IPath newPath
        end local 1 // org.eclipse.core.runtime.IPath oldPath
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
            0    9     1  oldPath  Lorg/eclipse/core/runtime/IPath;
            0    9     2  newPath  Lorg/eclipse/core/runtime/IPath;
    MethodParameters:
         Name  Flags
      oldPath  
      newPath  

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
         0: .line 488
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.hashCode:()I
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathChange;

  public void requestIndexing();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=17, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
         0: .line 495
            aconst_null
            astore 1 /* newResolvedClasspath */
        start local 1 // org.eclipse.jdt.core.IClasspathEntry[] newResolvedClasspath
         1: .line 497
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.getResolvedClasspath:()[Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 1 /* newResolvedClasspath */
         2: .line 498
            goto 5
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack: org.eclipse.jdt.core.JavaModelException
         3: pop
         4: .line 500
            return
         5: .line 503
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            astore 2 /* manager */
        start local 2 // org.eclipse.jdt.internal.core.JavaModelManager manager
         6: .line 504
            aload 2 /* manager */
            getfield org.eclipse.jdt.internal.core.JavaModelManager.indexManager:Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
            astore 3 /* indexManager */
        start local 3 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
         7: .line 505
            aload 3 /* indexManager */
            ifnonnull 9
         8: .line 506
            return
         9: .line 507
      StackMap locals: org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.search.indexing.IndexManager
      StackMap stack:
            aload 2 /* manager */
            getfield org.eclipse.jdt.internal.core.JavaModelManager.deltaState:Lorg/eclipse/jdt/internal/core/DeltaProcessingState;
            astore 4 /* state */
        start local 4 // org.eclipse.jdt.internal.core.DeltaProcessingState state
        10: .line 509
            aload 1 /* newResolvedClasspath */
            arraylength
            istore 5 /* newLength */
        start local 5 // int newLength
        11: .line 510
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            ifnonnull 12
            iconst_0
            goto 13
      StackMap locals: org.eclipse.jdt.internal.core.DeltaProcessingState int
      StackMap stack:
        12: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            arraylength
      StackMap locals:
      StackMap stack: int
        13: istore 6 /* oldLength */
        start local 6 // int oldLength
        14: .line 511
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        15: goto 32
        16: .line 512
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* newResolvedClasspath */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 7 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.classpathContains:([Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathEntry;)I
            istore 8 /* index */
        start local 8 // int index
        17: .line 513
            iload 8 /* index */
            iconst_m1
            if_icmpne 31
        18: .line 515
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            iconst_2
            if_icmpne 20
        19: .line 516
            goto 31
        20: .line 521
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 7 /* i */
            aaload
            astore 9 /* oldEntry */
        start local 9 // org.eclipse.jdt.core.IClasspathEntry oldEntry
        21: .line 522
            aload 9 /* oldEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 10 /* path */
        start local 10 // org.eclipse.core.runtime.IPath path
        22: .line 523
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            istore 11 /* changeKind */
        start local 11 // int changeKind
        23: .line 524
            iload 11 /* changeKind */
            tableswitch { // 1 - 3
                    1: 28
                    2: 31
                    3: 24
              default: 31
          }
        24: .line 526
      StackMap locals: org.eclipse.jdt.core.IClasspathEntry org.eclipse.core.runtime.IPath int
      StackMap stack:
            aload 9 /* oldEntry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.fullInclusionPatternChars:()[[C
            astore 12 /* inclusionPatterns */
        start local 12 // char[][] inclusionPatterns
        25: .line 527
            aload 9 /* oldEntry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.fullExclusionPatternChars:()[[C
            astore 13 /* exclusionPatterns */
        start local 13 // char[][] exclusionPatterns
        26: .line 528
            aload 3 /* indexManager */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 10 /* path */
            aload 12 /* inclusionPatterns */
            aload 13 /* exclusionPatterns */
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.removeSourceFolderFromIndex:(Lorg/eclipse/jdt/internal/core/JavaProject;Lorg/eclipse/core/runtime/IPath;[[C[[C)V
        27: .line 529
            goto 31
        end local 13 // char[][] exclusionPatterns
        end local 12 // char[][] inclusionPatterns
        28: .line 531
      StackMap locals:
      StackMap stack:
            aload 4 /* state */
            getfield org.eclipse.jdt.internal.core.DeltaProcessingState.otherRoots:Ljava/util/Map;
            aload 10 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnonnull 31
        29: .line 532
            aload 3 /* indexManager */
            aload 10 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.discardJobs:(Ljava/lang/String;)V
        30: .line 533
            aload 3 /* indexManager */
            aload 10 /* path */
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.removeIndex:(Lorg/eclipse/core/runtime/IPath;)V
        end local 11 // int changeKind
        end local 10 // org.eclipse.core.runtime.IPath path
        end local 9 // org.eclipse.jdt.core.IClasspathEntry oldEntry
        end local 8 // int index
        31: .line 511
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathChange org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.jdt.internal.core.JavaModelManager org.eclipse.jdt.internal.core.search.indexing.IndexManager org.eclipse.jdt.internal.core.DeltaProcessingState int int int
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 7 /* i */
            iload 6 /* oldLength */
            if_icmplt 16
        end local 7 // int i
        33: .line 541
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        34: goto 71
        35: .line 542
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            aload 1 /* newResolvedClasspath */
            iload 7 /* i */
            aaload
            invokevirtual org.eclipse.jdt.internal.core.ClasspathChange.classpathContains:([Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathEntry;)I
            istore 8 /* index */
        start local 8 // int index
        36: .line 543
            iload 8 /* index */
            iconst_m1
            if_icmpeq 37
            aload 1 /* newResolvedClasspath */
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            iconst_1
            if_icmpne 70
        37: .line 545
      StackMap locals: int
      StackMap stack:
            aload 1 /* newResolvedClasspath */
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            iconst_2
            if_icmpne 39
        38: .line 546
            goto 70
        39: .line 550
      StackMap locals:
      StackMap stack:
            aload 1 /* newResolvedClasspath */
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            istore 9 /* entryKind */
        start local 9 // int entryKind
        40: .line 551
            aload 1 /* newResolvedClasspath */
            iload 7 /* i */
            aaload
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getLibraryIndexLocation:()Ljava/net/URL;
            astore 10 /* newurl */
        start local 10 // java.net.URL newurl
        41: .line 552
            iload 9 /* entryKind */
            tableswitch { // 1 - 3
                    1: 42
                    2: 70
                    3: 65
              default: 70
          }
        42: .line 554
      StackMap locals: int java.net.URL
      StackMap stack:
            iconst_1
            istore 11 /* pathHasChanged */
        start local 11 // boolean pathHasChanged
        43: .line 555
            aload 1 /* newResolvedClasspath */
            iload 7 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 12 /* newPath */
        start local 12 // org.eclipse.core.runtime.IPath newPath
        44: .line 556
            iconst_0
            istore 13 /* j */
        start local 13 // int j
        45: goto 61
        46: .line 557
      StackMap locals: int org.eclipse.core.runtime.IPath int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.oldResolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            iload 13 /* j */
            aaload
            astore 14 /* oldEntry */
        start local 14 // org.eclipse.jdt.core.IClasspathEntry oldEntry
        47: .line 558
            aload 14 /* oldEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            aload 12 /* newPath */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifeq 60
        48: .line 559
            aload 14 /* oldEntry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getLibraryIndexLocation:()Ljava/net/URL;
            astore 15 /* oldurl */
        start local 15 // java.net.URL oldurl
        49: .line 560
            aload 15 /* oldurl */
            ifnonnull 52
            aload 10 /* newurl */
            ifnonnull 52
        50: .line 561
            iconst_0
            istore 11 /* pathHasChanged */
        51: .line 562
            goto 62
      StackMap locals: org.eclipse.jdt.core.IClasspathEntry java.net.URL
      StackMap stack:
        52: aload 15 /* oldurl */
            ifnull 57
            aload 10 /* newurl */
            ifnull 57
        53: .line 563
            aload 10 /* newurl */
            aload 15 /* oldurl */
            invokevirtual java.net.URL.equals:(Ljava/lang/Object;)Z
            ifeq 54
            iconst_0
            goto 55
      StackMap locals:
      StackMap stack:
        54: iconst_1
      StackMap locals:
      StackMap stack: int
        55: istore 11 /* pathHasChanged */
        56: .line 564
            goto 62
      StackMap locals:
      StackMap stack:
        57: aload 15 /* oldurl */
            ifnull 62
        58: .line 565
            aload 3 /* indexManager */
            aload 12 /* newPath */
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.removeIndex:(Lorg/eclipse/core/runtime/IPath;)V
        59: .line 567
            goto 62
        end local 15 // java.net.URL oldurl
        end local 14 // org.eclipse.jdt.core.IClasspathEntry oldEntry
        60: .line 556
      StackMap locals:
      StackMap stack:
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
        61: iload 13 /* j */
            iload 6 /* oldLength */
            if_icmplt 46
        end local 13 // int j
        62: .line 570
      StackMap locals:
      StackMap stack:
            iload 11 /* pathHasChanged */
            ifeq 70
        63: .line 571
            aload 3 /* indexManager */
            aload 12 /* newPath */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.getProject:()Lorg/eclipse/core/resources/IProject;
            aload 10 /* newurl */
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.indexLibrary:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/resources/IProject;Ljava/net/URL;)V
        64: .line 573
            goto 70
        end local 12 // org.eclipse.core.runtime.IPath newPath
        end local 11 // boolean pathHasChanged
        65: .line 575
      StackMap locals:
      StackMap stack:
            aload 1 /* newResolvedClasspath */
            iload 7 /* i */
            aaload
            astore 13 /* entry */
        start local 13 // org.eclipse.jdt.core.IClasspathEntry entry
        66: .line 576
            aload 13 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 14 /* path */
        start local 14 // org.eclipse.core.runtime.IPath path
        67: .line 577
            aload 13 /* entry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.fullInclusionPatternChars:()[[C
            astore 15 /* inclusionPatterns */
        start local 15 // char[][] inclusionPatterns
        68: .line 578
            aload 13 /* entry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.fullExclusionPatternChars:()[[C
            astore 16 /* exclusionPatterns */
        start local 16 // char[][] exclusionPatterns
        69: .line 579
            aload 3 /* indexManager */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            aload 14 /* path */
            aload 15 /* inclusionPatterns */
            aload 16 /* exclusionPatterns */
            invokevirtual org.eclipse.jdt.internal.core.search.indexing.IndexManager.indexSourceFolder:(Lorg/eclipse/jdt/internal/core/JavaProject;Lorg/eclipse/core/runtime/IPath;[[C[[C)V
        end local 16 // char[][] exclusionPatterns
        end local 15 // char[][] inclusionPatterns
        end local 14 // org.eclipse.core.runtime.IPath path
        end local 13 // org.eclipse.jdt.core.IClasspathEntry entry
        end local 10 // java.net.URL newurl
        end local 9 // int entryKind
        end local 8 // int index
        70: .line 541
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        71: iload 7 /* i */
            iload 5 /* newLength */
            if_icmplt 35
        end local 7 // int i
        72: .line 584
            return
        end local 6 // int oldLength
        end local 5 // int newLength
        end local 4 // org.eclipse.jdt.internal.core.DeltaProcessingState state
        end local 3 // org.eclipse.jdt.internal.core.search.indexing.IndexManager indexManager
        end local 2 // org.eclipse.jdt.internal.core.JavaModelManager manager
        end local 1 // org.eclipse.jdt.core.IClasspathEntry[] newResolvedClasspath
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   73     0                  this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
            1   73     1  newResolvedClasspath  [Lorg/eclipse/jdt/core/IClasspathEntry;
            6   73     2               manager  Lorg/eclipse/jdt/internal/core/JavaModelManager;
            7   73     3          indexManager  Lorg/eclipse/jdt/internal/core/search/indexing/IndexManager;
           10   73     4                 state  Lorg/eclipse/jdt/internal/core/DeltaProcessingState;
           11   73     5             newLength  I
           14   73     6             oldLength  I
           15   33     7                     i  I
           17   31     8                 index  I
           21   31     9              oldEntry  Lorg/eclipse/jdt/core/IClasspathEntry;
           22   31    10                  path  Lorg/eclipse/core/runtime/IPath;
           23   31    11            changeKind  I
           25   28    12     inclusionPatterns  [[C
           26   28    13     exclusionPatterns  [[C
           34   72     7                     i  I
           36   70     8                 index  I
           40   70     9             entryKind  I
           41   70    10                newurl  Ljava/net/URL;
           43   65    11        pathHasChanged  Z
           44   65    12               newPath  Lorg/eclipse/core/runtime/IPath;
           45   62    13                     j  I
           47   60    14              oldEntry  Lorg/eclipse/jdt/core/IClasspathEntry;
           49   60    15                oldurl  Ljava/net/URL;
           66   70    13                 entry  Lorg/eclipse/jdt/core/IClasspathEntry;
           67   70    14                  path  Lorg/eclipse/core/runtime/IPath;
           68   70    15     inclusionPatterns  [[C
           69   70    16     exclusionPatterns  [[C
      Exception table:
        from    to  target  type
           1     2       3  Class org.eclipse.jdt.core.JavaModelException

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
         0: .line 588
            new java.lang.StringBuilder
            dup
            ldc "ClasspathChange: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathChange.project:Lorg/eclipse/jdt/internal/core/JavaProject;
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathChange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathChange;
}
SourceFile: "ClasspathChange.java"
InnerClasses:
  public RootInfo = org.eclipse.jdt.internal.core.DeltaProcessor$RootInfo of org.eclipse.jdt.internal.core.DeltaProcessor
  public PerProjectInfo = org.eclipse.jdt.internal.core.JavaModelManager$PerProjectInfo of org.eclipse.jdt.internal.core.JavaModelManager