public class org.eclipse.jdt.internal.core.ClasspathEntry implements org.eclipse.jdt.core.IClasspathEntry
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.ClasspathEntry
  super_class: java.lang.Object
{
  public static final java.lang.String TAG_CLASSPATH;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "classpath"

  public static final java.lang.String TAG_CLASSPATHENTRY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "classpathentry"

  public static final java.lang.String TAG_REFERENCED_ENTRY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "referencedentry"

  public static final java.lang.String TAG_OUTPUT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "output"

  public static final java.lang.String TAG_KIND;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "kind"

  public static final java.lang.String TAG_PATH;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "path"

  public static final java.lang.String TAG_SOURCEPATH;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "sourcepath"

  public static final java.lang.String TAG_ROOTPATH;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "rootpath"

  public static final java.lang.String TAG_EXPORTED;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "exported"

  public static final java.lang.String TAG_INCLUDING;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "including"

  public static final java.lang.String TAG_EXCLUDING;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "excluding"

  public static final java.lang.String TAG_ATTRIBUTES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "attributes"

  public static final java.lang.String TAG_ATTRIBUTE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "attribute"

  public static final java.lang.String TAG_ATTRIBUTE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "name"

  public static final java.lang.String TAG_ATTRIBUTE_VALUE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "value"

  public static final java.lang.String TAG_COMBINE_ACCESS_RULES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "combineaccessrules"

  public static final java.lang.String TAG_ACCESS_RULES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "accessrules"

  public static final java.lang.String TAG_ACCESS_RULE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "accessrule"

  public static final java.lang.String TAG_PATTERN;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "pattern"

  public static final java.lang.String TAG_ACCESSIBLE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "accessible"

  public static final java.lang.String TAG_NON_ACCESSIBLE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "nonaccessible"

  public static final java.lang.String TAG_DISCOURAGED;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "discouraged"

  public static final java.lang.String TAG_IGNORE_IF_BETTER;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "ignoreifbetter"

  private static java.lang.String SHARED_INDEX_LOCATION;
    descriptor: Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  public int entryKind;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  public int contentKind;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  public org.eclipse.core.runtime.IPath path;
    descriptor: Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC

  private org.eclipse.core.runtime.IPath[] inclusionPatterns;
    descriptor: [Lorg/eclipse/core/runtime/IPath;
    flags: (0x0002) ACC_PRIVATE

  private char[][] fullInclusionPatternChars;
    descriptor: [[C
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.core.runtime.IPath[] exclusionPatterns;
    descriptor: [Lorg/eclipse/core/runtime/IPath;
    flags: (0x0002) ACC_PRIVATE

  private char[][] fullExclusionPatternChars;
    descriptor: [[C
    flags: (0x0002) ACC_PRIVATE

  private static final char[][] UNINIT_PATTERNS;
    descriptor: [[C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final org.eclipse.jdt.internal.core.ClasspathEntry[] NO_ENTRIES;
    descriptor: [Lorg/eclipse/jdt/internal/core/ClasspathEntry;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final org.eclipse.core.runtime.IPath[] NO_PATHS;
    descriptor: [Lorg/eclipse/core/runtime/IPath;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.eclipse.core.resources.IWorkspaceRoot workspaceRoot;
    descriptor: Lorg/eclipse/core/resources/IWorkspaceRoot;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private boolean combineAccessRules;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String rootID;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jdt.internal.compiler.env.AccessRuleSet accessRuleSet;
    descriptor: Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
    flags: (0x0002) ACC_PRIVATE

  public static final org.eclipse.core.runtime.IPath[] INCLUDE_ALL;
    descriptor: [Lorg/eclipse/core/runtime/IPath;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.eclipse.core.runtime.IPath[] EXCLUDE_NONE;
    descriptor: [Lorg/eclipse/core/runtime/IPath;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.eclipse.jdt.core.IClasspathAttribute[] NO_EXTRA_ATTRIBUTES;
    descriptor: [Lorg/eclipse/jdt/core/IClasspathAttribute;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.eclipse.jdt.core.IAccessRule[] NO_ACCESS_RULES;
    descriptor: [Lorg/eclipse/jdt/core/IAccessRule;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public org.eclipse.core.runtime.IPath sourceAttachmentPath;
    descriptor: Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC

  public org.eclipse.core.runtime.IPath sourceAttachmentRootPath;
    descriptor: Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC

  public org.eclipse.jdt.core.IClasspathEntry referencingEntry;
    descriptor: Lorg/eclipse/jdt/core/IClasspathEntry;
    flags: (0x0001) ACC_PUBLIC

  public org.eclipse.core.runtime.IPath specificOutputLocation;
    descriptor: Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC

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

  public static final java.lang.String DOT_DOT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: ".."

  public boolean isExported;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  public org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes;
    descriptor: [Lorg/eclipse/jdt/core/IClasspathAttribute;
    flags: (0x0001) ACC_PUBLIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 128
            ldc "jdt.core.sharedIndexLocation"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.SHARED_INDEX_LOCATION:Ljava/lang/String;
         1: .line 172
            iconst_1
            anewarray char[]
            dup
            iconst_0
            ldc "Non-initialized yet"
            invokevirtual java.lang.String.toCharArray:()[C
            aastore
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.UNINIT_PATTERNS:[[C
         2: .line 173
            iconst_0
            anewarray org.eclipse.jdt.internal.core.ClasspathEntry
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_ENTRIES:[Lorg/eclipse/jdt/internal/core/ClasspathEntry;
         3: .line 174
            iconst_0
            anewarray org.eclipse.core.runtime.IPath
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_PATHS:[Lorg/eclipse/core/runtime/IPath;
         4: .line 175
            invokestatic org.eclipse.core.resources.ResourcesPlugin.getWorkspace:()Lorg/eclipse/core/resources/IWorkspace;
            invokeinterface org.eclipse.core.resources.IWorkspace.getRoot:()Lorg/eclipse/core/resources/IWorkspaceRoot;
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.workspaceRoot:Lorg/eclipse/core/resources/IWorkspaceRoot;
         5: .line 191
            iconst_0
            anewarray org.eclipse.core.runtime.IPath
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.INCLUDE_ALL:[Lorg/eclipse/core/runtime/IPath;
         6: .line 196
            iconst_0
            anewarray org.eclipse.core.runtime.IPath
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.EXCLUDE_NONE:[Lorg/eclipse/core/runtime/IPath;
         7: .line 201
            iconst_0
            anewarray org.eclipse.jdt.core.IClasspathAttribute
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_EXTRA_ATTRIBUTES:[Lorg/eclipse/jdt/core/IClasspathAttribute;
         8: .line 206
            iconst_0
            anewarray org.eclipse.jdt.core.IAccessRule
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_ACCESS_RULES:[Lorg/eclipse/jdt/core/IAccessRule;
         9: .line 245
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(int, int, org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath[], org.eclipse.core.runtime.IPath[], org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath, boolean, org.eclipse.jdt.core.IAccessRule[], boolean, org.eclipse.jdt.core.IClasspathAttribute[]);
    descriptor: (IILorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Z[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=14, locals=13, args_size=13
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // int contentKind
        start local 2 // int entryKind
        start local 3 // org.eclipse.core.runtime.IPath path
        start local 4 // org.eclipse.core.runtime.IPath[] inclusionPatterns
        start local 5 // org.eclipse.core.runtime.IPath[] exclusionPatterns
        start local 6 // org.eclipse.core.runtime.IPath sourceAttachmentPath
        start local 7 // org.eclipse.core.runtime.IPath sourceAttachmentRootPath
        start local 8 // org.eclipse.core.runtime.IPath specificOutputLocation
        start local 9 // boolean isExported
        start local 10 // org.eclipse.jdt.core.IAccessRule[] accessRules
        start local 11 // boolean combineAccessRules
        start local 12 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
         0: .line 271
            aload 0 /* this */
            iload 1 /* contentKind */
         1: .line 272
            iload 2 /* entryKind */
         2: .line 273
            aload 3 /* path */
         3: .line 274
            aload 4 /* inclusionPatterns */
         4: .line 275
            aload 5 /* exclusionPatterns */
         5: .line 276
            aload 6 /* sourceAttachmentPath */
         6: .line 277
            aload 7 /* sourceAttachmentRootPath */
         7: .line 278
            aload 8 /* specificOutputLocation */
         8: .line 279
            aconst_null
         9: .line 280
            iload 9 /* isExported */
        10: .line 281
            aload 10 /* accessRules */
        11: .line 282
            iload 11 /* combineAccessRules */
        12: .line 283
            aload 12 /* extraAttributes */
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry.<init>:(IILorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IClasspathEntry;Z[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;)V
        13: .line 284
            return
        end local 12 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
        end local 11 // boolean combineAccessRules
        end local 10 // org.eclipse.jdt.core.IAccessRule[] accessRules
        end local 9 // boolean isExported
        end local 8 // org.eclipse.core.runtime.IPath specificOutputLocation
        end local 7 // org.eclipse.core.runtime.IPath sourceAttachmentRootPath
        end local 6 // org.eclipse.core.runtime.IPath sourceAttachmentPath
        end local 5 // org.eclipse.core.runtime.IPath[] exclusionPatterns
        end local 4 // org.eclipse.core.runtime.IPath[] inclusionPatterns
        end local 3 // org.eclipse.core.runtime.IPath path
        end local 2 // int entryKind
        end local 1 // int contentKind
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   14     0                      this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   14     1               contentKind  I
            0   14     2                 entryKind  I
            0   14     3                      path  Lorg/eclipse/core/runtime/IPath;
            0   14     4         inclusionPatterns  [Lorg/eclipse/core/runtime/IPath;
            0   14     5         exclusionPatterns  [Lorg/eclipse/core/runtime/IPath;
            0   14     6      sourceAttachmentPath  Lorg/eclipse/core/runtime/IPath;
            0   14     7  sourceAttachmentRootPath  Lorg/eclipse/core/runtime/IPath;
            0   14     8    specificOutputLocation  Lorg/eclipse/core/runtime/IPath;
            0   14     9                isExported  Z
            0   14    10               accessRules  [Lorg/eclipse/jdt/core/IAccessRule;
            0   14    11        combineAccessRules  Z
            0   14    12           extraAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
    MethodParameters:
                          Name  Flags
      contentKind               
      entryKind                 
      path                      
      inclusionPatterns         
      exclusionPatterns         
      sourceAttachmentPath      
      sourceAttachmentRootPath  
      specificOutputLocation    
      isExported                
      accessRules               
      combineAccessRules        
      extraAttributes           

  public void <init>(int, int, org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath[], org.eclipse.core.runtime.IPath[], org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath, org.eclipse.jdt.core.IClasspathEntry, boolean, org.eclipse.jdt.core.IAccessRule[], boolean, org.eclipse.jdt.core.IClasspathAttribute[]);
    descriptor: (IILorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IClasspathEntry;Z[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=20, args_size=14
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // int contentKind
        start local 2 // int entryKind
        start local 3 // org.eclipse.core.runtime.IPath path
        start local 4 // org.eclipse.core.runtime.IPath[] inclusionPatterns
        start local 5 // org.eclipse.core.runtime.IPath[] exclusionPatterns
        start local 6 // org.eclipse.core.runtime.IPath sourceAttachmentPath
        start local 7 // org.eclipse.core.runtime.IPath sourceAttachmentRootPath
        start local 8 // org.eclipse.core.runtime.IPath specificOutputLocation
        start local 9 // org.eclipse.jdt.core.IClasspathEntry referencingEntry
        start local 10 // boolean isExported
        start local 11 // org.eclipse.jdt.core.IAccessRule[] accessRules
        start local 12 // boolean combineAccessRules
        start local 13 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
         0: .line 289
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 304
            aload 0 /* this */
            iload 1 /* contentKind */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.contentKind:I
         2: .line 305
            aload 0 /* this */
            iload 2 /* entryKind */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
         3: .line 306
            aload 0 /* this */
            aload 3 /* path */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
         4: .line 307
            aload 0 /* this */
            aload 4 /* inclusionPatterns */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
         5: .line 308
            aload 0 /* this */
            aload 5 /* exclusionPatterns */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
         6: .line 309
            aload 0 /* this */
            aload 9 /* referencingEntry */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.referencingEntry:Lorg/eclipse/jdt/core/IClasspathEntry;
         7: .line 312
            aload 11 /* accessRules */
            ifnull 23
            aload 11 /* accessRules */
            arraylength
            dup
            istore 14 /* length */
        start local 14 // int length
         8: ifle 23
         9: .line 313
            iload 14 /* length */
            anewarray org.eclipse.jdt.internal.compiler.env.AccessRule
            astore 15 /* rules */
        start local 15 // org.eclipse.jdt.internal.compiler.env.AccessRule[] rules
        10: .line 314
            aload 11 /* accessRules */
            iconst_0
            aload 15 /* rules */
            iconst_0
            iload 14 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        11: .line 317
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            astore 18 /* manager */
        start local 18 // org.eclipse.jdt.internal.core.JavaModelManager manager
        12: .line 318
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            iconst_2
            if_icmpeq 13
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            iconst_3
            if_icmpne 16
        13: .line 319
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry int int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IClasspathEntry int org.eclipse.jdt.core.IAccessRule[] int org.eclipse.jdt.core.IClasspathAttribute[] int org.eclipse.jdt.internal.compiler.env.AccessRule[] top top org.eclipse.jdt.internal.core.JavaModelManager
      StackMap stack:
            iconst_1
            istore 16 /* classpathEntryType */
        start local 16 // byte classpathEntryType
        14: .line 320
            aload 18 /* manager */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.intern:(Ljava/lang/String;)Ljava/lang/String;
            astore 17 /* classpathEntryName */
        start local 17 // java.lang.String classpathEntryName
        15: .line 321
            goto 22
        end local 17 // java.lang.String classpathEntryName
        end local 16 // byte classpathEntryType
        16: .line 322
      StackMap locals:
      StackMap stack:
            iconst_2
            istore 16 /* classpathEntryType */
        start local 16 // byte classpathEntryType
        17: .line 323
            aload 3 /* path */
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getWorkspaceTarget:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/resources/IResource;
            astore 19 /* target */
        start local 19 // java.lang.Object target
        18: .line 324
            aload 19 /* target */
            ifnonnull 21
        19: .line 325
            aload 18 /* manager */
            aload 3 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.intern:(Ljava/lang/String;)Ljava/lang/String;
            astore 17 /* classpathEntryName */
        start local 17 // java.lang.String classpathEntryName
        20: .line 326
            goto 22
        end local 17 // java.lang.String classpathEntryName
        21: .line 327
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry int int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IClasspathEntry int org.eclipse.jdt.core.IAccessRule[] int org.eclipse.jdt.core.IClasspathAttribute[] int org.eclipse.jdt.internal.compiler.env.AccessRule[] int top org.eclipse.jdt.internal.core.JavaModelManager java.lang.Object
      StackMap stack:
            aload 18 /* manager */
            aload 3 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.intern:(Ljava/lang/String;)Ljava/lang/String;
            astore 17 /* classpathEntryName */
        end local 19 // java.lang.Object target
        start local 17 // java.lang.String classpathEntryName
        22: .line 330
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry int int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IClasspathEntry int org.eclipse.jdt.core.IAccessRule[] int org.eclipse.jdt.core.IClasspathAttribute[] int org.eclipse.jdt.internal.compiler.env.AccessRule[] int java.lang.String org.eclipse.jdt.internal.core.JavaModelManager
      StackMap stack:
            aload 0 /* this */
            new org.eclipse.jdt.internal.compiler.env.AccessRuleSet
            dup
            aload 15 /* rules */
            iload 16 /* classpathEntryType */
            aload 17 /* classpathEntryName */
            invokespecial org.eclipse.jdt.internal.compiler.env.AccessRuleSet.<init>:([Lorg/eclipse/jdt/internal/compiler/env/AccessRule;BLjava/lang/String;)V
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.accessRuleSet:Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
        end local 18 // org.eclipse.jdt.internal.core.JavaModelManager manager
        end local 17 // java.lang.String classpathEntryName
        end local 16 // byte classpathEntryType
        end local 15 // org.eclipse.jdt.internal.compiler.env.AccessRule[] rules
        end local 14 // int length
        23: .line 336
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry int int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IClasspathEntry int org.eclipse.jdt.core.IAccessRule[] int org.eclipse.jdt.core.IClasspathAttribute[]
      StackMap stack:
            aload 0 /* this */
            iload 12 /* combineAccessRules */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:Z
        24: .line 337
            aload 0 /* this */
            aload 13 /* extraAttributes */
            arraylength
            ifle 25
            aload 13 /* extraAttributes */
            goto 26
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.core.ClasspathEntry
        25: getstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_EXTRA_ATTRIBUTES:[Lorg/eclipse/jdt/core/IClasspathAttribute;
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry int int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IClasspathEntry int org.eclipse.jdt.core.IAccessRule[] int org.eclipse.jdt.core.IClasspathAttribute[]
      StackMap stack: org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.core.IClasspathAttribute[]
        26: putfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
        27: .line 339
            aload 4 /* inclusionPatterns */
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.INCLUDE_ALL:[Lorg/eclipse/core/runtime/IPath;
            if_acmpeq 29
            aload 4 /* inclusionPatterns */
            arraylength
            ifle 29
        28: .line 340
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.UNINIT_PATTERNS:[[C
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.fullInclusionPatternChars:[[C
        29: .line 342
      StackMap locals:
      StackMap stack:
            aload 5 /* exclusionPatterns */
            arraylength
            ifle 31
        30: .line 343
            aload 0 /* this */
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.UNINIT_PATTERNS:[[C
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.fullExclusionPatternChars:[[C
        31: .line 345
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* sourceAttachmentPath */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentPath:Lorg/eclipse/core/runtime/IPath;
        32: .line 346
            aload 0 /* this */
            aload 7 /* sourceAttachmentRootPath */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentRootPath:Lorg/eclipse/core/runtime/IPath;
        33: .line 347
            aload 0 /* this */
            aload 8 /* specificOutputLocation */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.specificOutputLocation:Lorg/eclipse/core/runtime/IPath;
        34: .line 348
            aload 0 /* this */
            iload 10 /* isExported */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.isExported:Z
        35: .line 349
            return
        end local 13 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
        end local 12 // boolean combineAccessRules
        end local 11 // org.eclipse.jdt.core.IAccessRule[] accessRules
        end local 10 // boolean isExported
        end local 9 // org.eclipse.jdt.core.IClasspathEntry referencingEntry
        end local 8 // org.eclipse.core.runtime.IPath specificOutputLocation
        end local 7 // org.eclipse.core.runtime.IPath sourceAttachmentRootPath
        end local 6 // org.eclipse.core.runtime.IPath sourceAttachmentPath
        end local 5 // org.eclipse.core.runtime.IPath[] exclusionPatterns
        end local 4 // org.eclipse.core.runtime.IPath[] inclusionPatterns
        end local 3 // org.eclipse.core.runtime.IPath path
        end local 2 // int entryKind
        end local 1 // int contentKind
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   36     0                      this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   36     1               contentKind  I
            0   36     2                 entryKind  I
            0   36     3                      path  Lorg/eclipse/core/runtime/IPath;
            0   36     4         inclusionPatterns  [Lorg/eclipse/core/runtime/IPath;
            0   36     5         exclusionPatterns  [Lorg/eclipse/core/runtime/IPath;
            0   36     6      sourceAttachmentPath  Lorg/eclipse/core/runtime/IPath;
            0   36     7  sourceAttachmentRootPath  Lorg/eclipse/core/runtime/IPath;
            0   36     8    specificOutputLocation  Lorg/eclipse/core/runtime/IPath;
            0   36     9          referencingEntry  Lorg/eclipse/jdt/core/IClasspathEntry;
            0   36    10                isExported  Z
            0   36    11               accessRules  [Lorg/eclipse/jdt/core/IAccessRule;
            0   36    12        combineAccessRules  Z
            0   36    13           extraAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
            8   23    14                    length  I
           10   23    15                     rules  [Lorg/eclipse/jdt/internal/compiler/env/AccessRule;
           14   16    16        classpathEntryType  B
           17   23    16        classpathEntryType  B
           15   16    17        classpathEntryName  Ljava/lang/String;
           20   21    17        classpathEntryName  Ljava/lang/String;
           22   23    17        classpathEntryName  Ljava/lang/String;
           12   23    18                   manager  Lorg/eclipse/jdt/internal/core/JavaModelManager;
           18   22    19                    target  Ljava/lang/Object;
    MethodParameters:
                          Name  Flags
      contentKind               
      entryKind                 
      path                      
      inclusionPatterns         
      exclusionPatterns         
      sourceAttachmentPath      
      sourceAttachmentRootPath  
      specificOutputLocation    
      referencingEntry          
      isExported                
      accessRules               
      combineAccessRules        
      extraAttributes           

  public boolean combineAccessRules();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 353
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:Z
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public org.eclipse.jdt.internal.core.ClasspathEntry combineWith(org.eclipse.jdt.internal.core.ClasspathEntry);
    descriptor: (Lorg/eclipse/jdt/internal/core/ClasspathEntry;)Lorg/eclipse/jdt/internal/core/ClasspathEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=15, locals=7, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // org.eclipse.jdt.internal.core.ClasspathEntry referringEntry
         0: .line 361
            aload 1 /* referringEntry */
            ifnonnull 1
            aload 0 /* this */
            areturn
         1: .line 362
      StackMap locals:
      StackMap stack:
            aload 1 /* referringEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getExtraAttributes:()[Lorg/eclipse/jdt/core/IClasspathAttribute;
            astore 2 /* referringExtraAttributes */
        start local 2 // org.eclipse.jdt.core.IClasspathAttribute[] referringExtraAttributes
         2: .line 363
            aload 1 /* referringEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.isExported:()Z
            ifne 3
            aload 1 /* referringEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRuleSet:()Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            ifnonnull 3
            aload 2 /* referringExtraAttributes */
            arraylength
            ifle 31
         3: .line 364
      StackMap locals: org.eclipse.jdt.core.IClasspathAttribute[]
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            iconst_3
            if_icmpeq 4
            aload 1 /* referringEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:()Z
            ifne 4
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: istore 3 /* combine */
        start local 3 // boolean combine
         6: .line 365
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            astore 4 /* combinedAttributes */
        start local 4 // org.eclipse.jdt.core.IClasspathAttribute[] combinedAttributes
         7: .line 366
            aload 2 /* referringExtraAttributes */
            arraylength
            istore 5 /* lenRefer */
        start local 5 // int lenRefer
         8: .line 367
            iload 5 /* lenRefer */
            ifle 16
         9: .line 368
            aload 4 /* combinedAttributes */
            arraylength
            istore 6 /* lenEntry */
        start local 6 // int lenEntry
        10: .line 369
            aload 1 /* referringEntry */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 14
        11: .line 371
            aload 4 /* combinedAttributes */
            iconst_0
            iload 6 /* lenEntry */
            iload 5 /* lenRefer */
            iadd
            anewarray org.eclipse.jdt.core.IClasspathAttribute
            dup
            astore 4 /* combinedAttributes */
            iconst_0
            iload 6 /* lenEntry */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        12: .line 372
            aload 2 /* referringExtraAttributes */
            iconst_0
            aload 4 /* combinedAttributes */
            iload 6 /* lenEntry */
            iload 5 /* lenRefer */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        13: .line 373
            goto 16
        14: .line 375
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.core.IClasspathAttribute[] int org.eclipse.jdt.core.IClasspathAttribute[] int int
      StackMap stack:
            aload 4 /* combinedAttributes */
            iconst_0
            iload 6 /* lenEntry */
            iload 5 /* lenRefer */
            iadd
            anewarray org.eclipse.jdt.core.IClasspathAttribute
            dup
            astore 4 /* combinedAttributes */
            iload 5 /* lenRefer */
            iload 6 /* lenEntry */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        15: .line 376
            aload 2 /* referringExtraAttributes */
            iconst_0
            aload 4 /* combinedAttributes */
            iconst_0
            iload 5 /* lenRefer */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 6 // int lenEntry
        16: .line 379
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.ClasspathEntry
            dup
        17: .line 380
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getContentKind:()I
        18: .line 381
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getEntryKind:()I
        19: .line 382
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
        20: .line 383
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
        21: .line 384
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
        22: .line 385
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
        23: .line 386
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentRootPath:()Lorg/eclipse/core/runtime/IPath;
        24: .line 387
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
        25: .line 388
            aload 1 /* referringEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.isExported:()Z
            ifne 26
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.isExported:Z
            ifne 26
            iconst_0
            goto 27
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.core.IClasspathAttribute[] int org.eclipse.jdt.core.IClasspathAttribute[] int
      StackMap stack: new 16 new 16 int int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath
        26: iconst_1
        27: .line 389
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.core.IClasspathAttribute[] int org.eclipse.jdt.core.IClasspathAttribute[] int
      StackMap stack: new 16 new 16 int int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath int
            aload 0 /* this */
            aload 1 /* referringEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRules:()[Lorg/eclipse/jdt/core/IAccessRule;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRules:()[Lorg/eclipse/jdt/core/IAccessRule;
            iload 3 /* combine */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.combine:([Lorg/eclipse/jdt/core/IAccessRule;[Lorg/eclipse/jdt/core/IAccessRule;Z)[Lorg/eclipse/jdt/core/IAccessRule;
        28: .line 390
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:Z
        29: .line 391
            aload 4 /* combinedAttributes */
        30: .line 379
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry.<init>:(IILorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Z[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;)V
            areturn
        end local 5 // int lenRefer
        end local 4 // org.eclipse.jdt.core.IClasspathAttribute[] combinedAttributes
        end local 3 // boolean combine
        31: .line 394
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // org.eclipse.jdt.core.IClasspathAttribute[] referringExtraAttributes
        end local 1 // org.eclipse.jdt.internal.core.ClasspathEntry referringEntry
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   32     0                      this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   32     1            referringEntry  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            2   32     2  referringExtraAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
            6   31     3                   combine  Z
            7   31     4        combinedAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
            8   31     5                  lenRefer  I
           10   16     6                  lenEntry  I
    MethodParameters:
                Name  Flags
      referringEntry  

  public org.eclipse.jdt.internal.core.ClasspathEntry withExtraAttributeRemoved(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/eclipse/jdt/internal/core/ClasspathEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=15, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // java.lang.String attrName
         0: .line 399
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getExtraAttributes:()[Lorg/eclipse/jdt/core/IClasspathAttribute;
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
         1: .line 400
            aload 1 /* attrName */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/eclipse/jdt/internal/core/ClasspathEntry.lambda$0(Ljava/lang/String;Lorg/eclipse/jdt/core/IClasspathAttribute;)Z (6)
                  (Lorg/eclipse/jdt/core/IClasspathAttribute;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/IntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Ljava/lang/Object;
                  org/eclipse/jdt/internal/core/ClasspathEntry.lambda$1(I)[Lorg/eclipse/jdt/core/IClasspathAttribute; (6)
                  (I)[Lorg/eclipse/jdt/core/IClasspathAttribute;
            invokeinterface java.util.stream.Stream.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.IClasspathAttribute[]
         2: .line 399
            astore 2 /* changedAttributes */
        start local 2 // org.eclipse.jdt.core.IClasspathAttribute[] changedAttributes
         3: .line 401
            new org.eclipse.jdt.internal.core.ClasspathEntry
            dup
         4: .line 402
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getContentKind:()I
         5: .line 403
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getEntryKind:()I
         6: .line 404
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
         7: .line 405
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getInclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
         8: .line 406
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getExclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
         9: .line 407
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
        10: .line 408
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentRootPath:()Lorg/eclipse/core/runtime/IPath;
        11: .line 409
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
        12: .line 410
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getReferencingEntry:()Lorg/eclipse/jdt/core/IClasspathEntry;
        13: .line 411
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.isExported:()Z
        14: .line 412
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRules:()[Lorg/eclipse/jdt/core/IAccessRule;
        15: .line 413
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:()Z
        16: .line 414
            aload 2 /* changedAttributes */
        17: .line 401
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry.<init>:(IILorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IClasspathEntry;Z[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;)V
            areturn
        end local 2 // org.eclipse.jdt.core.IClasspathAttribute[] changedAttributes
        end local 1 // java.lang.String attrName
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   18     0               this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   18     1           attrName  Ljava/lang/String;
            3   18     2  changedAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
    MethodParameters:
          Name  Flags
      attrName  

  private org.eclipse.jdt.core.IAccessRule[] combine(org.eclipse.jdt.core.IAccessRule[], org.eclipse.jdt.core.IAccessRule[], boolean);
    descriptor: ([Lorg/eclipse/jdt/core/IAccessRule;[Lorg/eclipse/jdt/core/IAccessRule;Z)[Lorg/eclipse/jdt/core/IAccessRule;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // org.eclipse.jdt.core.IAccessRule[] referringRules
        start local 2 // org.eclipse.jdt.core.IAccessRule[] rules
        start local 3 // boolean combine
         0: .line 419
            iload 3 /* combine */
            ifne 1
            aload 2 /* rules */
            areturn
         1: .line 420
      StackMap locals:
      StackMap stack:
            aload 2 /* rules */
            ifnull 2
            aload 2 /* rules */
            arraylength
            ifne 3
      StackMap locals:
      StackMap stack:
         2: aload 1 /* referringRules */
            areturn
         3: .line 423
      StackMap locals:
      StackMap stack:
            aload 1 /* referringRules */
            arraylength
            istore 4 /* referringRulesLength */
        start local 4 // int referringRulesLength
         4: .line 424
            aload 2 /* rules */
            arraylength
            istore 5 /* accessRulesLength */
        start local 5 // int accessRulesLength
         5: .line 425
            iload 4 /* referringRulesLength */
            iload 5 /* accessRulesLength */
            iadd
            istore 6 /* rulesLength */
        start local 6 // int rulesLength
         6: .line 426
            iload 6 /* rulesLength */
            anewarray org.eclipse.jdt.core.IAccessRule
            astore 7 /* result */
        start local 7 // org.eclipse.jdt.core.IAccessRule[] result
         7: .line 427
            aload 1 /* referringRules */
            iconst_0
            aload 7 /* result */
            iconst_0
            iload 4 /* referringRulesLength */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 428
            aload 2 /* rules */
            iconst_0
            aload 7 /* result */
            iload 4 /* referringRulesLength */
            iload 5 /* accessRulesLength */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         9: .line 430
            aload 7 /* result */
            areturn
        end local 7 // org.eclipse.jdt.core.IAccessRule[] result
        end local 6 // int rulesLength
        end local 5 // int accessRulesLength
        end local 4 // int referringRulesLength
        end local 3 // boolean combine
        end local 2 // org.eclipse.jdt.core.IAccessRule[] rules
        end local 1 // org.eclipse.jdt.core.IAccessRule[] referringRules
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   10     0                  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   10     1        referringRules  [Lorg/eclipse/jdt/core/IAccessRule;
            0   10     2                 rules  [Lorg/eclipse/jdt/core/IAccessRule;
            0   10     3               combine  Z
            4   10     4  referringRulesLength  I
            5   10     5     accessRulesLength  I
            6   10     6           rulesLength  I
            7   10     7                result  [Lorg/eclipse/jdt/core/IAccessRule;
    MethodParameters:
                Name  Flags
      referringRules  
      rules           
      combine         

  static org.eclipse.jdt.core.IClasspathAttribute[] decodeExtraAttributes(org.w3c.dom.NodeList);
    descriptor: (Lorg/w3c/dom/NodeList;)[Lorg/eclipse/jdt/core/IClasspathAttribute;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=9, args_size=1
        start local 0 // org.w3c.dom.NodeList attributes
         0: .line 434
            aload 0 /* attributes */
            ifnonnull 1
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_EXTRA_ATTRIBUTES:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            areturn
         1: .line 435
      StackMap locals:
      StackMap stack:
            aload 0 /* attributes */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            istore 1 /* length */
        start local 1 // int length
         2: .line 436
            iload 1 /* length */
            ifne 3
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_EXTRA_ATTRIBUTES:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            areturn
         3: .line 437
      StackMap locals: int
      StackMap stack:
            iload 1 /* length */
            anewarray org.eclipse.jdt.core.IClasspathAttribute
            astore 2 /* result */
        start local 2 // org.eclipse.jdt.core.IClasspathAttribute[] result
         4: .line 438
            iconst_0
            istore 3 /* index */
        start local 3 // int index
         5: .line 439
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 16
         7: .line 440
      StackMap locals: org.eclipse.jdt.core.IClasspathAttribute[] int int
      StackMap stack:
            aload 0 /* attributes */
            iload 4 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 5 /* node */
        start local 5 // org.w3c.dom.Node node
         8: .line 441
            aload 5 /* node */
            invokeinterface org.w3c.dom.Node.getNodeType:()S
            iconst_1
            if_icmpne 15
         9: .line 442
            aload 5 /* node */
            checkcast org.w3c.dom.Element
            astore 6 /* attribute */
        start local 6 // org.w3c.dom.Element attribute
        10: .line 443
            aload 6 /* attribute */
            ldc "name"
            invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* name */
        start local 7 // java.lang.String name
        11: .line 444
            aload 7 /* name */
            ifnonnull 12
            goto 15
        12: .line 445
      StackMap locals: org.w3c.dom.Node org.w3c.dom.Element java.lang.String
      StackMap stack:
            aload 6 /* attribute */
            ldc "value"
            invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* value */
        start local 8 // java.lang.String value
        13: .line 446
            aload 8 /* value */
            ifnonnull 14
            goto 15
        14: .line 447
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* result */
            iload 3 /* index */
            iinc 3 /* index */ 1
            new org.eclipse.jdt.internal.core.ClasspathAttribute
            dup
            aload 7 /* name */
            aload 8 /* value */
            invokespecial org.eclipse.jdt.internal.core.ClasspathAttribute.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            aastore
        end local 8 // java.lang.String value
        end local 7 // java.lang.String name
        end local 6 // org.w3c.dom.Element attribute
        end local 5 // org.w3c.dom.Node node
        15: .line 439
      StackMap locals: org.w3c.dom.NodeList int org.eclipse.jdt.core.IClasspathAttribute[] int int
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 4 /* i */
            iload 1 /* length */
            if_icmplt 7
        end local 4 // int i
        17: .line 450
            iload 3 /* index */
            iload 1 /* length */
            if_icmpeq 19
        18: .line 451
            aload 2 /* result */
            iconst_0
            iload 3 /* index */
            anewarray org.eclipse.jdt.core.IClasspathAttribute
            dup
            astore 2 /* result */
            iconst_0
            iload 3 /* index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        19: .line 452
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 3 // int index
        end local 2 // org.eclipse.jdt.core.IClasspathAttribute[] result
        end local 1 // int length
        end local 0 // org.w3c.dom.NodeList attributes
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0  attributes  Lorg/w3c/dom/NodeList;
            2   20     1      length  I
            4   20     2      result  [Lorg/eclipse/jdt/core/IClasspathAttribute;
            5   20     3       index  I
            6   17     4           i  I
            8   15     5        node  Lorg/w3c/dom/Node;
           10   15     6   attribute  Lorg/w3c/dom/Element;
           11   15     7        name  Ljava/lang/String;
           13   15     8       value  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      attributes  

  static org.eclipse.jdt.core.IAccessRule[] decodeAccessRules(org.w3c.dom.NodeList);
    descriptor: (Lorg/w3c/dom/NodeList;)[Lorg/eclipse/jdt/core/IAccessRule;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=11, args_size=1
        start local 0 // org.w3c.dom.NodeList list
         0: .line 456
            aload 0 /* list */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 457
      StackMap locals:
      StackMap stack:
            aload 0 /* list */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            istore 1 /* length */
        start local 1 // int length
         2: .line 458
            iload 1 /* length */
            ifne 3
            aconst_null
            areturn
         3: .line 459
      StackMap locals: int
      StackMap stack:
            iload 1 /* length */
            anewarray org.eclipse.jdt.core.IAccessRule
            astore 2 /* result */
        start local 2 // org.eclipse.jdt.core.IAccessRule[] result
         4: .line 460
            iconst_0
            istore 3 /* index */
        start local 3 // int index
         5: .line 461
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 26
         7: .line 462
      StackMap locals: org.eclipse.jdt.core.IAccessRule[] int int
      StackMap stack:
            aload 0 /* list */
            iload 4 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 5 /* accessRule */
        start local 5 // org.w3c.dom.Node accessRule
         8: .line 463
            aload 5 /* accessRule */
            invokeinterface org.w3c.dom.Node.getNodeType:()S
            iconst_1
            if_icmpne 25
         9: .line 464
            aload 5 /* accessRule */
            checkcast org.w3c.dom.Element
            astore 6 /* elementAccessRule */
        start local 6 // org.w3c.dom.Element elementAccessRule
        10: .line 465
            aload 6 /* elementAccessRule */
            ldc "pattern"
            invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* pattern */
        start local 7 // java.lang.String pattern
        11: .line 466
            aload 7 /* pattern */
            ifnonnull 12
            goto 25
        12: .line 467
      StackMap locals: org.w3c.dom.Node org.w3c.dom.Element java.lang.String
      StackMap stack:
            aload 6 /* elementAccessRule */
            ldc "kind"
            invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* tagKind */
        start local 8 // java.lang.String tagKind
        13: .line 469
            ldc "accessible"
            aload 8 /* tagKind */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
        14: .line 470
            iconst_0
            istore 9 /* kind */
        start local 9 // int kind
        15: goto 21
        end local 9 // int kind
        16: .line 471
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "nonaccessible"
            aload 8 /* tagKind */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 19
        17: .line 472
            iconst_1
            istore 9 /* kind */
        start local 9 // int kind
        18: goto 21
        end local 9 // int kind
        19: .line 473
      StackMap locals:
      StackMap stack:
            ldc "discouraged"
            aload 8 /* tagKind */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 25
        20: .line 474
            iconst_2
            istore 9 /* kind */
        start local 9 // int kind
        21: .line 477
      StackMap locals: int
      StackMap stack:
            ldc "true"
            aload 6 /* elementAccessRule */
            ldc "ignoreifbetter"
            invokeinterface org.w3c.dom.Element.getAttribute:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 10 /* ignoreIfBetter */
        start local 10 // boolean ignoreIfBetter
        22: .line 478
            aload 2 /* result */
            iload 3 /* index */
            iinc 3 /* index */ 1
            new org.eclipse.core.runtime.Path
            dup
            aload 7 /* pattern */
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            iload 10 /* ignoreIfBetter */
            ifeq 23
            iload 9 /* kind */
            sipush 256
            ior
            goto 24
      StackMap locals: org.w3c.dom.NodeList int org.eclipse.jdt.core.IAccessRule[] int int org.w3c.dom.Node org.w3c.dom.Element java.lang.String java.lang.String int int
      StackMap stack: org.eclipse.jdt.core.IAccessRule[] int org.eclipse.core.runtime.Path
        23: iload 9 /* kind */
      StackMap locals: org.w3c.dom.NodeList int org.eclipse.jdt.core.IAccessRule[] int int org.w3c.dom.Node org.w3c.dom.Element java.lang.String java.lang.String int int
      StackMap stack: org.eclipse.jdt.core.IAccessRule[] int org.eclipse.core.runtime.Path int
        24: invokestatic org.eclipse.jdt.core.JavaCore.newAccessRule:(Lorg/eclipse/core/runtime/IPath;I)Lorg/eclipse/jdt/core/IAccessRule;
            aastore
        end local 10 // boolean ignoreIfBetter
        end local 9 // int kind
        end local 8 // java.lang.String tagKind
        end local 7 // java.lang.String pattern
        end local 6 // org.w3c.dom.Element elementAccessRule
        end local 5 // org.w3c.dom.Node accessRule
        25: .line 461
      StackMap locals: org.w3c.dom.NodeList int org.eclipse.jdt.core.IAccessRule[] int int
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        26: iload 4 /* i */
            iload 1 /* length */
            if_icmplt 7
        end local 4 // int i
        27: .line 481
            iload 3 /* index */
            iload 1 /* length */
            if_icmpeq 29
        28: .line 482
            aload 2 /* result */
            iconst_0
            iload 3 /* index */
            anewarray org.eclipse.jdt.core.IAccessRule
            dup
            astore 2 /* result */
            iconst_0
            iload 3 /* index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        29: .line 483
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 3 // int index
        end local 2 // org.eclipse.jdt.core.IAccessRule[] result
        end local 1 // int length
        end local 0 // org.w3c.dom.NodeList list
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   30     0               list  Lorg/w3c/dom/NodeList;
            2   30     1             length  I
            4   30     2             result  [Lorg/eclipse/jdt/core/IAccessRule;
            5   30     3              index  I
            6   27     4                  i  I
            8   25     5         accessRule  Lorg/w3c/dom/Node;
           10   25     6  elementAccessRule  Lorg/w3c/dom/Element;
           11   25     7            pattern  Ljava/lang/String;
           13   25     8            tagKind  Ljava/lang/String;
           15   16     9               kind  I
           18   19     9               kind  I
           21   25     9               kind  I
           22   25    10     ignoreIfBetter  Z
    MethodParameters:
      Name  Flags
      list  

  private static org.eclipse.core.runtime.IPath[] decodePatterns(org.w3c.dom.NamedNodeMap, java.lang.String);
    descriptor: (Lorg/w3c/dom/NamedNodeMap;Ljava/lang/String;)[Lorg/eclipse/core/runtime/IPath;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=9, args_size=2
        start local 0 // org.w3c.dom.NamedNodeMap nodeMap
        start local 1 // java.lang.String tag
         0: .line 490
            aload 1 /* tag */
            aload 0 /* nodeMap */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.removeAttribute:(Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Ljava/lang/String;
            astore 2 /* sequence */
        start local 2 // java.lang.String sequence
         1: .line 491
            aload 2 /* sequence */
            ldc ""
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 17
         2: .line 492
            bipush 124
            aload 2 /* sequence */
            invokevirtual java.lang.String.toCharArray:()[C
            invokestatic org.eclipse.jdt.core.compiler.CharOperation.splitOn:(C[C)[[C
            astore 3 /* patterns */
        start local 3 // char[][] patterns
         3: .line 494
            aload 3 /* patterns */
            arraylength
            dup
            istore 4 /* patternCount */
        start local 4 // int patternCount
         4: ifle 17
         5: .line 495
            iload 4 /* patternCount */
            anewarray org.eclipse.core.runtime.IPath
            astore 5 /* paths */
        start local 5 // org.eclipse.core.runtime.IPath[] paths
         6: .line 496
            iconst_0
            istore 6 /* index */
        start local 6 // int index
         7: .line 497
            iconst_0
            istore 7 /* j */
        start local 7 // int j
         8: goto 13
         9: .line 498
      StackMap locals: org.w3c.dom.NamedNodeMap java.lang.String java.lang.String char[][] int org.eclipse.core.runtime.IPath[] int int
      StackMap stack:
            aload 3 /* patterns */
            iload 7 /* j */
            aaload
            astore 8 /* pattern */
        start local 8 // char[] pattern
        10: .line 499
            aload 8 /* pattern */
            arraylength
            ifne 11
            goto 12
        11: .line 500
      StackMap locals: char[]
      StackMap stack:
            aload 5 /* paths */
            iload 6 /* index */
            iinc 6 /* index */ 1
            new org.eclipse.core.runtime.Path
            dup
            new java.lang.String
            dup
            aload 8 /* pattern */
            invokespecial java.lang.String.<init>:([C)V
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            aastore
        end local 8 // char[] pattern
        12: .line 497
      StackMap locals:
      StackMap stack:
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        13: iload 7 /* j */
            iload 4 /* patternCount */
            if_icmplt 9
        end local 7 // int j
        14: .line 502
            iload 6 /* index */
            iload 4 /* patternCount */
            if_icmpge 16
        15: .line 503
            aload 5 /* paths */
            iconst_0
            iload 6 /* index */
            anewarray org.eclipse.core.runtime.IPath
            dup
            astore 5 /* paths */
            iconst_0
            iload 6 /* index */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        16: .line 504
      StackMap locals:
      StackMap stack:
            aload 5 /* paths */
            areturn
        end local 6 // int index
        end local 5 // org.eclipse.core.runtime.IPath[] paths
        end local 4 // int patternCount
        end local 3 // char[][] patterns
        17: .line 507
      StackMap locals: org.w3c.dom.NamedNodeMap java.lang.String java.lang.String
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.String sequence
        end local 1 // java.lang.String tag
        end local 0 // org.w3c.dom.NamedNodeMap nodeMap
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0       nodeMap  Lorg/w3c/dom/NamedNodeMap;
            0   18     1           tag  Ljava/lang/String;
            1   18     2      sequence  Ljava/lang/String;
            3   17     3      patterns  [[C
            4   17     4  patternCount  I
            6   17     5         paths  [Lorg/eclipse/core/runtime/IPath;
            7   17     6         index  I
            8   14     7             j  I
           10   12     8       pattern  [C
    MethodParameters:
         Name  Flags
      nodeMap  
      tag      

  private static void decodeUnknownNode(org.w3c.dom.Node, java.lang.StringBuffer, org.eclipse.jdt.core.IJavaProject);
    descriptor: (Lorg/w3c/dom/Node;Ljava/lang/StringBuffer;Lorg/eclipse/jdt/core/IJavaProject;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.w3c.dom.Node node
        start local 1 // java.lang.StringBuffer buffer
        start local 2 // org.eclipse.jdt.core.IJavaProject project
         0: .line 511
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 3 /* s */
        start local 3 // java.io.ByteArrayOutputStream s
         1: .line 514
            new java.io.OutputStreamWriter
            dup
            aload 3 /* s */
            ldc "UTF8"
            invokespecial java.io.OutputStreamWriter.<init>:(Ljava/io/OutputStream;Ljava/lang/String;)V
            astore 4 /* writer */
        start local 4 // java.io.OutputStreamWriter writer
         2: .line 515
            new org.eclipse.jdt.internal.core.XMLWriter
            dup
            aload 4 /* writer */
            aload 2 /* project */
            iconst_0
            invokespecial org.eclipse.jdt.internal.core.XMLWriter.<init>:(Ljava/io/Writer;Lorg/eclipse/jdt/core/IJavaProject;Z)V
            astore 5 /* xmlWriter */
        start local 5 // org.eclipse.jdt.internal.core.XMLWriter xmlWriter
         3: .line 516
            aload 0 /* node */
            aload 5 /* xmlWriter */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.decodeUnknownNode:(Lorg/w3c/dom/Node;Lorg/eclipse/jdt/internal/core/XMLWriter;Z)V
         4: .line 517
            aload 5 /* xmlWriter */
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.flush:()V
         5: .line 518
            aload 5 /* xmlWriter */
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.close:()V
         6: .line 519
            aload 1 /* buffer */
            aload 3 /* s */
            ldc "UTF8"
            invokevirtual java.io.ByteArrayOutputStream.toString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 5 // org.eclipse.jdt.internal.core.XMLWriter xmlWriter
         7: .line 520
            goto 9
        end local 4 // java.io.OutputStreamWriter writer
      StackMap locals: org.w3c.dom.Node java.lang.StringBuffer org.eclipse.jdt.core.IJavaProject java.io.ByteArrayOutputStream
      StackMap stack: java.io.UnsupportedEncodingException
         8: pop
         9: .line 523
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.io.ByteArrayOutputStream s
        end local 2 // org.eclipse.jdt.core.IJavaProject project
        end local 1 // java.lang.StringBuffer buffer
        end local 0 // org.w3c.dom.Node node
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       node  Lorg/w3c/dom/Node;
            0   10     1     buffer  Ljava/lang/StringBuffer;
            0   10     2    project  Lorg/eclipse/jdt/core/IJavaProject;
            1   10     3          s  Ljava/io/ByteArrayOutputStream;
            2    8     4     writer  Ljava/io/OutputStreamWriter;
            3    7     5  xmlWriter  Lorg/eclipse/jdt/internal/core/XMLWriter;
      Exception table:
        from    to  target  type
           1     7       8  Class java.io.UnsupportedEncodingException
    MethodParameters:
         Name  Flags
      node     
      buffer   
      project  

  private static void decodeUnknownNode(org.w3c.dom.Node, org.eclipse.jdt.internal.core.XMLWriter, boolean);
    descriptor: (Lorg/w3c/dom/Node;Lorg/eclipse/jdt/internal/core/XMLWriter;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=9, args_size=3
        start local 0 // org.w3c.dom.Node node
        start local 1 // org.eclipse.jdt.internal.core.XMLWriter xmlWriter
        start local 2 // boolean insertNewLine
         0: .line 526
            aload 0 /* node */
            invokeinterface org.w3c.dom.Node.getNodeType:()S
            tableswitch { // 1 - 3
                    1: 1
                    2: 29
                    3: 27
              default: 29
          }
         1: .line 529
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* parameters */
        start local 4 // java.util.HashMap parameters
         2: .line 530
            aload 0 /* node */
            invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
            dup
            astore 3 /* attributes */
        start local 3 // org.w3c.dom.NamedNodeMap attributes
         3: ifnull 13
         4: .line 531
            aload 3 /* attributes */
            invokeinterface org.w3c.dom.NamedNodeMap.getLength:()I
            istore 5 /* length */
        start local 5 // int length
         5: .line 532
            iload 5 /* length */
            ifle 13
         6: .line 533
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 4 /* parameters */
         7: .line 534
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         8: goto 12
         9: .line 535
      StackMap locals: org.w3c.dom.Node org.eclipse.jdt.internal.core.XMLWriter int org.w3c.dom.NamedNodeMap java.util.HashMap int int
      StackMap stack:
            aload 3 /* attributes */
            iload 6 /* i */
            invokeinterface org.w3c.dom.NamedNodeMap.item:(I)Lorg/w3c/dom/Node;
            astore 7 /* attribute */
        start local 7 // org.w3c.dom.Node attribute
        10: .line 536
            aload 4 /* parameters */
            aload 7 /* attribute */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            aload 7 /* attribute */
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // org.w3c.dom.Node attribute
        11: .line 534
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 6 /* i */
            iload 5 /* length */
            if_icmplt 9
        end local 6 // int i
        end local 5 // int length
        13: .line 540
      StackMap locals:
      StackMap stack:
            aload 0 /* node */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 5 /* children */
        start local 5 // org.w3c.dom.NodeList children
        14: .line 541
            aload 5 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            istore 6 /* childrenLength */
        start local 6 // int childrenLength
        15: .line 542
            aload 0 /* node */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            astore 7 /* nodeName */
        start local 7 // java.lang.String nodeName
        16: .line 543
            aload 1 /* xmlWriter */
            aload 7 /* nodeName */
            aload 4 /* parameters */
            iconst_0
            iconst_0
            iload 6 /* childrenLength */
            ifne 17
            iconst_1
            goto 18
      StackMap locals: org.w3c.dom.Node org.eclipse.jdt.internal.core.XMLWriter int org.w3c.dom.NamedNodeMap java.util.HashMap org.w3c.dom.NodeList int java.lang.String
      StackMap stack: org.eclipse.jdt.internal.core.XMLWriter java.lang.String java.util.HashMap int int
        17: iconst_0
      StackMap locals: org.w3c.dom.Node org.eclipse.jdt.internal.core.XMLWriter int org.w3c.dom.NamedNodeMap java.util.HashMap org.w3c.dom.NodeList int java.lang.String
      StackMap stack: org.eclipse.jdt.internal.core.XMLWriter java.lang.String java.util.HashMap int int int
        18: invokevirtual org.eclipse.jdt.internal.core.XMLWriter.printTag:(Ljava/lang/String;Ljava/util/HashMap;ZZZ)V
        19: .line 544
            iload 6 /* childrenLength */
            ifle 29
        20: .line 545
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        21: goto 24
        22: .line 546
      StackMap locals: int
      StackMap stack:
            aload 5 /* children */
            iload 8 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            aload 1 /* xmlWriter */
            iconst_0
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.decodeUnknownNode:(Lorg/w3c/dom/Node;Lorg/eclipse/jdt/internal/core/XMLWriter;Z)V
        23: .line 545
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 8 /* i */
            iload 6 /* childrenLength */
            if_icmplt 22
        end local 8 // int i
        25: .line 548
            aload 1 /* xmlWriter */
            aload 7 /* nodeName */
            iconst_0
            iload 2 /* insertNewLine */
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.endTag:(Ljava/lang/String;ZZ)V
        26: .line 550
            goto 29
        end local 7 // java.lang.String nodeName
        end local 6 // int childrenLength
        end local 5 // org.w3c.dom.NodeList children
        end local 4 // java.util.HashMap parameters
        end local 3 // org.w3c.dom.NamedNodeMap attributes
        27: .line 552
      StackMap locals: org.w3c.dom.Node org.eclipse.jdt.internal.core.XMLWriter int
      StackMap stack:
            aload 0 /* node */
            checkcast org.w3c.dom.Text
            invokeinterface org.w3c.dom.Text.getData:()Ljava/lang/String;
            astore 8 /* data */
        start local 8 // java.lang.String data
        28: .line 553
            aload 1 /* xmlWriter */
            aload 8 /* data */
            iconst_0
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.printString:(Ljava/lang/String;ZZ)V
        end local 8 // java.lang.String data
        29: .line 556
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean insertNewLine
        end local 1 // org.eclipse.jdt.internal.core.XMLWriter xmlWriter
        end local 0 // org.w3c.dom.Node node
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   30     0            node  Lorg/w3c/dom/Node;
            0   30     1       xmlWriter  Lorg/eclipse/jdt/internal/core/XMLWriter;
            0   30     2   insertNewLine  Z
            3   27     3      attributes  Lorg/w3c/dom/NamedNodeMap;
            2   27     4      parameters  Ljava/util/HashMap;
            5   13     5          length  I
            8   13     6               i  I
           10   11     7       attribute  Lorg/w3c/dom/Node;
           14   27     5        children  Lorg/w3c/dom/NodeList;
           15   27     6  childrenLength  I
           16   27     7        nodeName  Ljava/lang/String;
           21   25     8               i  I
           28   29     8            data  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      node           
      xmlWriter      
      insertNewLine  

  public char[][] fullExclusionPatternChars();
    descriptor: ()[[C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 563
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.fullExclusionPatternChars:[[C
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.UNINIT_PATTERNS:[[C
            if_acmpne 11
         1: .line 564
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            arraylength
            istore 1 /* length */
        start local 1 // int length
         2: .line 565
            aload 0 /* this */
            iload 1 /* length */
            anewarray char[]
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.fullExclusionPatternChars:[[C
         3: .line 566
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.removeTrailingSeparator:()Lorg/eclipse/core/runtime/IPath;
            astore 2 /* prefixPath */
        start local 2 // org.eclipse.core.runtime.IPath prefixPath
         4: .line 567
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 10
         6: .line 568
      StackMap locals: int org.eclipse.core.runtime.IPath int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.fullExclusionPatternChars:[[C
            iload 3 /* i */
         7: .line 569
            aload 2 /* prefixPath */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            iload 3 /* i */
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.append:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
         8: .line 568
            aastore
         9: .line 567
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            iload 1 /* length */
            if_icmplt 6
        end local 3 // int i
        end local 2 // org.eclipse.core.runtime.IPath prefixPath
        end local 1 // int length
        11: .line 572
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.fullExclusionPatternChars:[[C
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            2   11     1      length  I
            4   11     2  prefixPath  Lorg/eclipse/core/runtime/IPath;
            5   11     3           i  I

  public char[][] fullInclusionPatternChars();
    descriptor: ()[[C
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 580
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.fullInclusionPatternChars:[[C
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.UNINIT_PATTERNS:[[C
            if_acmpne 11
         1: .line 581
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            arraylength
            istore 1 /* length */
        start local 1 // int length
         2: .line 582
            aload 0 /* this */
            iload 1 /* length */
            anewarray char[]
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.fullInclusionPatternChars:[[C
         3: .line 583
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.removeTrailingSeparator:()Lorg/eclipse/core/runtime/IPath;
            astore 2 /* prefixPath */
        start local 2 // org.eclipse.core.runtime.IPath prefixPath
         4: .line 584
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 10
         6: .line 585
      StackMap locals: int org.eclipse.core.runtime.IPath int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.fullInclusionPatternChars:[[C
            iload 3 /* i */
         7: .line 586
            aload 2 /* prefixPath */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            iload 3 /* i */
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.append:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.toCharArray:()[C
         8: .line 585
            aastore
         9: .line 584
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            iload 1 /* length */
            if_icmplt 6
        end local 3 // int i
        end local 2 // org.eclipse.core.runtime.IPath prefixPath
        end local 1 // int length
        11: .line 589
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.fullInclusionPatternChars:[[C
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            2   11     1      length  I
            4   11     2  prefixPath  Lorg/eclipse/core/runtime/IPath;
            5   11     3           i  I

  public void elementEncode(org.eclipse.jdt.internal.core.XMLWriter, org.eclipse.core.runtime.IPath, boolean, boolean, java.util.Map, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/core/XMLWriter;Lorg/eclipse/core/runtime/IPath;ZZLjava/util/Map;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=16, args_size=7
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // org.eclipse.jdt.internal.core.XMLWriter writer
        start local 2 // org.eclipse.core.runtime.IPath projectPath
        start local 3 // boolean indent
        start local 4 // boolean newLine
        start local 5 // java.util.Map unknownElements
        start local 6 // boolean isReferencedEntry
         0: .line 596
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 7 /* parameters */
        start local 7 // java.util.HashMap parameters
         1: .line 598
            aload 7 /* parameters */
            ldc "kind"
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.kindToString:(I)Ljava/lang/String;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 600
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            astore 8 /* xmlPath */
        start local 8 // org.eclipse.core.runtime.IPath xmlPath
         3: .line 601
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            iconst_4
            if_icmpeq 11
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            iconst_5
            if_icmpeq 11
         4: .line 603
            aload 8 /* xmlPath */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifeq 11
         5: .line 604
            aload 2 /* projectPath */
            ifnull 11
            aload 2 /* projectPath */
            aload 8 /* xmlPath */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 11
         6: .line 605
            aload 8 /* xmlPath */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            aload 2 /* projectPath */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         7: .line 606
            aload 8 /* xmlPath */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            astore 8 /* xmlPath */
         8: .line 607
            aload 8 /* xmlPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            astore 8 /* xmlPath */
         9: .line 608
            goto 11
        10: .line 609
      StackMap locals: java.util.HashMap org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 8 /* xmlPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeAbsolute:()Lorg/eclipse/core/runtime/IPath;
            astore 8 /* xmlPath */
        11: .line 614
      StackMap locals:
      StackMap stack:
            aload 7 /* parameters */
            ldc "path"
            aload 8 /* xmlPath */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 616
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentPath:Lorg/eclipse/core/runtime/IPath;
            ifnull 19
        13: .line 617
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentPath:Lorg/eclipse/core/runtime/IPath;
            astore 8 /* xmlPath */
        14: .line 619
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            iconst_4
            if_icmpeq 18
            aload 2 /* projectPath */
            ifnull 18
            aload 2 /* projectPath */
            aload 8 /* xmlPath */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 18
        15: .line 620
            aload 8 /* xmlPath */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            aload 2 /* projectPath */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        16: .line 621
            aload 8 /* xmlPath */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            astore 8 /* xmlPath */
        17: .line 622
            aload 8 /* xmlPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            astore 8 /* xmlPath */
        18: .line 625
      StackMap locals:
      StackMap stack:
            aload 7 /* parameters */
            ldc "sourcepath"
            aload 8 /* xmlPath */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 627
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentRootPath:Lorg/eclipse/core/runtime/IPath;
            ifnull 21
        20: .line 628
            aload 7 /* parameters */
            ldc "rootpath"
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentRootPath:Lorg/eclipse/core/runtime/IPath;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        21: .line 630
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.isExported:Z
            ifeq 23
        22: .line 631
            aload 7 /* parameters */
            ldc "exported"
            ldc "true"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        23: .line 633
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            ldc "including"
            aload 7 /* parameters */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.encodePatterns:([Lorg/eclipse/core/runtime/IPath;Ljava/lang/String;Ljava/util/Map;)V
        24: .line 634
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            ldc "excluding"
            aload 7 /* parameters */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.encodePatterns:([Lorg/eclipse/core/runtime/IPath;Ljava/lang/String;Ljava/util/Map;)V
        25: .line 635
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            iconst_2
            if_icmpne 27
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:Z
            ifne 27
        26: .line 636
            aload 7 /* parameters */
            ldc "combineaccessrules"
            ldc "false"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        27: .line 640
      StackMap locals:
      StackMap stack:
            aload 5 /* unknownElements */
            ifnonnull 28
            aconst_null
            goto 29
      StackMap locals:
      StackMap stack:
        28: aload 5 /* unknownElements */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements
        29: astore 9 /* unknownXmlElements */
        start local 9 // org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements unknownXmlElements
        30: .line 642
            aload 9 /* unknownXmlElements */
            ifnull 40
            aload 9 /* unknownXmlElements */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements.attributes:[Ljava/lang/String;
            dup
            astore 10 /* unknownAttributes */
        start local 10 // java.lang.String[] unknownAttributes
        31: ifnull 40
        32: .line 643
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        33: aload 10 /* unknownAttributes */
            arraylength
            istore 12 /* length */
        start local 12 // int length
        34: goto 39
        35: .line 644
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.internal.core.XMLWriter org.eclipse.core.runtime.IPath int int java.util.Map int java.util.HashMap org.eclipse.core.runtime.IPath org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements java.lang.String[] int int
      StackMap stack:
            aload 10 /* unknownAttributes */
            iload 11 /* i */
            aaload
            astore 13 /* tagName */
        start local 13 // java.lang.String tagName
        36: .line 645
            aload 10 /* unknownAttributes */
            iload 11 /* i */
            iconst_1
            iadd
            aaload
            astore 14 /* tagValue */
        start local 14 // java.lang.String tagValue
        37: .line 646
            aload 7 /* parameters */
            aload 13 /* tagName */
            aload 14 /* tagValue */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 14 // java.lang.String tagValue
        end local 13 // java.lang.String tagName
        38: .line 643
            iinc 11 /* i */ 2
      StackMap locals:
      StackMap stack:
        39: iload 11 /* i */
            iload 12 /* length */
            if_icmplt 35
        end local 12 // int length
        end local 11 // int i
        end local 10 // java.lang.String[] unknownAttributes
        40: .line 649
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.specificOutputLocation:Lorg/eclipse/core/runtime/IPath;
            ifnull 44
        41: .line 650
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.specificOutputLocation:Lorg/eclipse/core/runtime/IPath;
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            astore 11 /* outputLocation */
        start local 11 // org.eclipse.core.runtime.IPath outputLocation
        42: .line 651
            aload 11 /* outputLocation */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            astore 11 /* outputLocation */
        43: .line 652
            aload 7 /* parameters */
            ldc "output"
            aload 11 /* outputLocation */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 11 // org.eclipse.core.runtime.IPath outputLocation
        44: .line 655
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            arraylength
            ifeq 45
            iconst_1
            goto 46
      StackMap locals:
      StackMap stack:
        45: iconst_0
      StackMap locals:
      StackMap stack: int
        46: istore 11 /* hasExtraAttributes */
        start local 11 // boolean hasExtraAttributes
        47: .line 656
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRuleSet:()Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            ifnull 48
            iconst_1
            goto 49
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.internal.core.XMLWriter org.eclipse.core.runtime.IPath int int java.util.Map int java.util.HashMap org.eclipse.core.runtime.IPath org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements top int
      StackMap stack:
        48: iconst_0
      StackMap locals:
      StackMap stack: int
        49: istore 12 /* hasRestrictions */
        start local 12 // boolean hasRestrictions
        50: .line 657
            aload 9 /* unknownXmlElements */
            ifnull 51
            aload 9 /* unknownXmlElements */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements.children:Ljava/util/ArrayList;
            goto 52
      StackMap locals: int
      StackMap stack:
        51: aconst_null
      StackMap locals:
      StackMap stack: java.util.ArrayList
        52: astore 13 /* unknownChildren */
        start local 13 // java.util.ArrayList unknownChildren
        53: .line 658
            aload 13 /* unknownChildren */
            ifnull 54
            iconst_1
            goto 55
      StackMap locals: java.util.ArrayList
      StackMap stack:
        54: iconst_0
      StackMap locals:
      StackMap stack: int
        55: istore 14 /* hasUnknownChildren */
        start local 14 // boolean hasUnknownChildren
        56: .line 661
            iload 6 /* isReferencedEntry */
            ifeq 57
            ldc "referencedentry"
            goto 58
      StackMap locals: int
      StackMap stack:
        57: ldc "classpathentry"
      StackMap locals:
      StackMap stack: java.lang.String
        58: astore 15 /* tagName */
        start local 15 // java.lang.String tagName
        59: .line 662
            aload 1 /* writer */
        60: .line 663
            aload 15 /* tagName */
        61: .line 664
            aload 7 /* parameters */
        62: .line 665
            iload 3 /* indent */
        63: .line 666
            iload 4 /* newLine */
        64: .line 667
            iload 11 /* hasExtraAttributes */
            ifne 65
            iload 12 /* hasRestrictions */
            ifne 65
            iload 14 /* hasUnknownChildren */
            ifne 65
            iconst_1
            goto 66
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.internal.core.XMLWriter org.eclipse.core.runtime.IPath int int java.util.Map int java.util.HashMap org.eclipse.core.runtime.IPath org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements top int int java.util.ArrayList int java.lang.String
      StackMap stack: org.eclipse.jdt.internal.core.XMLWriter java.lang.String java.util.HashMap int int
        65: iconst_0
        66: .line 662
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry org.eclipse.jdt.internal.core.XMLWriter org.eclipse.core.runtime.IPath int int java.util.Map int java.util.HashMap org.eclipse.core.runtime.IPath org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements top int int java.util.ArrayList int java.lang.String
      StackMap stack: org.eclipse.jdt.internal.core.XMLWriter java.lang.String java.util.HashMap int int int
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.printTag:(Ljava/lang/String;Ljava/util/HashMap;ZZZ)V
        67: .line 669
            iload 11 /* hasExtraAttributes */
            ifeq 69
        68: .line 670
            aload 0 /* this */
            aload 1 /* writer */
            iload 3 /* indent */
            iload 4 /* newLine */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.encodeExtraAttributes:(Lorg/eclipse/jdt/internal/core/XMLWriter;ZZ)V
        69: .line 672
      StackMap locals:
      StackMap stack:
            iload 12 /* hasRestrictions */
            ifeq 71
        70: .line 673
            aload 0 /* this */
            aload 1 /* writer */
            iload 3 /* indent */
            iload 4 /* newLine */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.encodeAccessRules:(Lorg/eclipse/jdt/internal/core/XMLWriter;ZZ)V
        71: .line 675
      StackMap locals:
      StackMap stack:
            iload 14 /* hasUnknownChildren */
            ifeq 73
        72: .line 676
            aload 0 /* this */
            aload 1 /* writer */
            iload 3 /* indent */
            iload 4 /* newLine */
            aload 13 /* unknownChildren */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.encodeUnknownChildren:(Lorg/eclipse/jdt/internal/core/XMLWriter;ZZLjava/util/ArrayList;)V
        73: .line 678
      StackMap locals:
      StackMap stack:
            iload 11 /* hasExtraAttributes */
            ifne 74
            iload 12 /* hasRestrictions */
            ifne 74
            iload 14 /* hasUnknownChildren */
            ifeq 75
        74: .line 679
      StackMap locals:
      StackMap stack:
            aload 1 /* writer */
            aload 15 /* tagName */
            iload 3 /* indent */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.endTag:(Ljava/lang/String;ZZ)V
        75: .line 680
      StackMap locals:
      StackMap stack:
            return
        end local 15 // java.lang.String tagName
        end local 14 // boolean hasUnknownChildren
        end local 13 // java.util.ArrayList unknownChildren
        end local 12 // boolean hasRestrictions
        end local 11 // boolean hasExtraAttributes
        end local 9 // org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements unknownXmlElements
        end local 8 // org.eclipse.core.runtime.IPath xmlPath
        end local 7 // java.util.HashMap parameters
        end local 6 // boolean isReferencedEntry
        end local 5 // java.util.Map unknownElements
        end local 4 // boolean newLine
        end local 3 // boolean indent
        end local 2 // org.eclipse.core.runtime.IPath projectPath
        end local 1 // org.eclipse.jdt.internal.core.XMLWriter writer
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   76     0                this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   76     1              writer  Lorg/eclipse/jdt/internal/core/XMLWriter;
            0   76     2         projectPath  Lorg/eclipse/core/runtime/IPath;
            0   76     3              indent  Z
            0   76     4             newLine  Z
            0   76     5     unknownElements  Ljava/util/Map;
            0   76     6   isReferencedEntry  Z
            1   76     7          parameters  Ljava/util/HashMap;
            3   76     8             xmlPath  Lorg/eclipse/core/runtime/IPath;
           30   76     9  unknownXmlElements  Lorg/eclipse/jdt/internal/core/ClasspathEntry$UnknownXmlElements;
           31   40    10   unknownAttributes  [Ljava/lang/String;
           33   40    11                   i  I
           34   40    12              length  I
           36   38    13             tagName  Ljava/lang/String;
           37   38    14            tagValue  Ljava/lang/String;
           42   44    11      outputLocation  Lorg/eclipse/core/runtime/IPath;
           47   76    11  hasExtraAttributes  Z
           50   76    12     hasRestrictions  Z
           53   76    13     unknownChildren  Ljava/util/ArrayList;
           56   76    14  hasUnknownChildren  Z
           59   76    15             tagName  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      writer             
      projectPath        
      indent             
      newLine            
      unknownElements    
      isReferencedEntry  

  void encodeExtraAttributes(org.eclipse.jdt.internal.core.XMLWriter, boolean, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/core/XMLWriter;ZZ)V
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // org.eclipse.jdt.internal.core.XMLWriter writer
        start local 2 // boolean indent
        start local 3 // boolean newLine
         0: .line 683
            aload 1 /* writer */
            ldc "attributes"
            iload 2 /* indent */
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.startTag:(Ljava/lang/String;Z)V
         1: .line 684
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 9
         3: .line 685
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            iload 4 /* i */
            aaload
            astore 5 /* attribute */
        start local 5 // org.eclipse.jdt.core.IClasspathAttribute attribute
         4: .line 686
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 6 /* parameters */
        start local 6 // java.util.HashMap parameters
         5: .line 687
            aload 6 /* parameters */
            ldc "name"
            aload 5 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 688
            aload 6 /* parameters */
            ldc "value"
            aload 5 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getValue:()Ljava/lang/String;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 689
            aload 1 /* writer */
            ldc "attribute"
            aload 6 /* parameters */
            iload 2 /* indent */
            iload 3 /* newLine */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.printTag:(Ljava/lang/String;Ljava/util/HashMap;ZZZ)V
        end local 6 // java.util.HashMap parameters
        end local 5 // org.eclipse.jdt.core.IClasspathAttribute attribute
         8: .line 684
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            arraylength
            if_icmplt 3
        end local 4 // int i
        10: .line 691
            aload 1 /* writer */
            ldc "attributes"
            iload 2 /* indent */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.endTag:(Ljava/lang/String;ZZ)V
        11: .line 692
            return
        end local 3 // boolean newLine
        end local 2 // boolean indent
        end local 1 // org.eclipse.jdt.internal.core.XMLWriter writer
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   12     1      writer  Lorg/eclipse/jdt/internal/core/XMLWriter;
            0   12     2      indent  Z
            0   12     3     newLine  Z
            2   10     4           i  I
            4    8     5   attribute  Lorg/eclipse/jdt/core/IClasspathAttribute;
            5    8     6  parameters  Ljava/util/HashMap;
    MethodParameters:
         Name  Flags
      writer   
      indent   
      newLine  

  void encodeAccessRules(org.eclipse.jdt.internal.core.XMLWriter, boolean, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/core/XMLWriter;ZZ)V
    flags: (0x0000) 
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // org.eclipse.jdt.internal.core.XMLWriter writer
        start local 2 // boolean indent
        start local 3 // boolean newLine
         0: .line 696
            aload 1 /* writer */
            ldc "accessrules"
            iload 2 /* indent */
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.startTag:(Ljava/lang/String;Z)V
         1: .line 697
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRuleSet:()Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            invokevirtual org.eclipse.jdt.internal.compiler.env.AccessRuleSet.getAccessRules:()[Lorg/eclipse/jdt/internal/compiler/env/AccessRule;
            astore 4 /* rules */
        start local 4 // org.eclipse.jdt.internal.compiler.env.AccessRule[] rules
         2: .line 698
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: aload 4 /* rules */
            arraylength
            istore 6 /* length */
        start local 6 // int length
         4: goto 7
         5: .line 699
      StackMap locals: org.eclipse.jdt.internal.compiler.env.AccessRule[] int int
      StackMap stack:
            aload 0 /* this */
            aload 4 /* rules */
            iload 5 /* i */
            aaload
            aload 1 /* writer */
            iload 2 /* indent */
            iload 3 /* newLine */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.encodeAccessRule:(Lorg/eclipse/jdt/internal/compiler/env/AccessRule;Lorg/eclipse/jdt/internal/core/XMLWriter;ZZ)V
         6: .line 698
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 5 /* i */
            iload 6 /* length */
            if_icmplt 5
        end local 6 // int length
        end local 5 // int i
         8: .line 701
            aload 1 /* writer */
            ldc "accessrules"
            iload 2 /* indent */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.endTag:(Ljava/lang/String;ZZ)V
         9: .line 702
            return
        end local 4 // org.eclipse.jdt.internal.compiler.env.AccessRule[] rules
        end local 3 // boolean newLine
        end local 2 // boolean indent
        end local 1 // org.eclipse.jdt.internal.core.XMLWriter writer
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   10     1   writer  Lorg/eclipse/jdt/internal/core/XMLWriter;
            0   10     2   indent  Z
            0   10     3  newLine  Z
            2   10     4    rules  [Lorg/eclipse/jdt/internal/compiler/env/AccessRule;
            3    8     5        i  I
            4    8     6   length  I
    MethodParameters:
         Name  Flags
      writer   
      indent   
      newLine  

  private void encodeAccessRule(org.eclipse.jdt.internal.compiler.env.AccessRule, org.eclipse.jdt.internal.core.XMLWriter, boolean, boolean);
    descriptor: (Lorg/eclipse/jdt/internal/compiler/env/AccessRule;Lorg/eclipse/jdt/internal/core/XMLWriter;ZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // org.eclipse.jdt.internal.compiler.env.AccessRule accessRule
        start local 2 // org.eclipse.jdt.internal.core.XMLWriter writer
        start local 3 // boolean indent
        start local 4 // boolean newLine
         0: .line 706
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 5 /* parameters */
        start local 5 // java.util.HashMap parameters
         1: .line 707
            aload 5 /* parameters */
            ldc "pattern"
            new java.lang.String
            dup
            aload 1 /* accessRule */
            getfield org.eclipse.jdt.internal.compiler.env.AccessRule.pattern:[C
            invokespecial java.lang.String.<init>:([C)V
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 709
            aload 1 /* accessRule */
            invokevirtual org.eclipse.jdt.internal.compiler.env.AccessRule.getProblemId:()I
            lookupswitch { // 2
             16777496: 5
             16777523: 3
              default: 7
          }
         3: .line 711
      StackMap locals: java.util.HashMap
      StackMap stack:
            aload 5 /* parameters */
            ldc "kind"
            ldc "nonaccessible"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 712
            goto 8
         5: .line 714
      StackMap locals:
      StackMap stack:
            aload 5 /* parameters */
            ldc "kind"
            ldc "discouraged"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 715
            goto 8
         7: .line 717
      StackMap locals:
      StackMap stack:
            aload 5 /* parameters */
            ldc "kind"
            ldc "accessible"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 720
      StackMap locals:
      StackMap stack:
            aload 1 /* accessRule */
            invokevirtual org.eclipse.jdt.internal.compiler.env.AccessRule.ignoreIfBetter:()Z
            ifeq 10
         9: .line 721
            aload 5 /* parameters */
            ldc "ignoreifbetter"
            ldc "true"
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 723
      StackMap locals:
      StackMap stack:
            aload 2 /* writer */
            ldc "accessrule"
            aload 5 /* parameters */
            iload 3 /* indent */
            iload 4 /* newLine */
            iconst_1
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.printTag:(Ljava/lang/String;Ljava/util/HashMap;ZZZ)V
        11: .line 725
            return
        end local 5 // java.util.HashMap parameters
        end local 4 // boolean newLine
        end local 3 // boolean indent
        end local 2 // org.eclipse.jdt.internal.core.XMLWriter writer
        end local 1 // org.eclipse.jdt.internal.compiler.env.AccessRule accessRule
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   12     1  accessRule  Lorg/eclipse/jdt/internal/compiler/env/AccessRule;
            0   12     2      writer  Lorg/eclipse/jdt/internal/core/XMLWriter;
            0   12     3      indent  Z
            0   12     4     newLine  Z
            1   12     5  parameters  Ljava/util/HashMap;
    MethodParameters:
            Name  Flags
      accessRule  
      writer      
      indent      
      newLine     

  private void encodeUnknownChildren(org.eclipse.jdt.internal.core.XMLWriter, boolean, boolean, java.util.ArrayList);
    descriptor: (Lorg/eclipse/jdt/internal/core/XMLWriter;ZZLjava/util/ArrayList;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=5
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // org.eclipse.jdt.internal.core.XMLWriter writer
        start local 2 // boolean indent
        start local 3 // boolean newLine
        start local 4 // java.util.ArrayList unknownChildren
         0: .line 728
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         1: aload 4 /* unknownChildren */
            invokevirtual java.util.ArrayList.size:()I
            istore 6 /* length */
        start local 6 // int length
         2: goto 6
         3: .line 729
      StackMap locals: int int
      StackMap stack:
            aload 4 /* unknownChildren */
            iload 5 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* child */
        start local 7 // java.lang.String child
         4: .line 730
            aload 1 /* writer */
            aload 7 /* child */
            iload 2 /* indent */
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.XMLWriter.printString:(Ljava/lang/String;ZZ)V
        end local 7 // java.lang.String child
         5: .line 728
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* i */
            iload 6 /* length */
            if_icmplt 3
        end local 6 // int length
        end local 5 // int i
         7: .line 732
            return
        end local 4 // java.util.ArrayList unknownChildren
        end local 3 // boolean newLine
        end local 2 // boolean indent
        end local 1 // org.eclipse.jdt.internal.core.XMLWriter writer
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0    8     1           writer  Lorg/eclipse/jdt/internal/core/XMLWriter;
            0    8     2           indent  Z
            0    8     3          newLine  Z
            0    8     4  unknownChildren  Ljava/util/ArrayList;
            1    7     5                i  I
            2    7     6           length  I
            4    5     7            child  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      writer           
      indent           
      newLine          
      unknownChildren  

  public static org.eclipse.jdt.core.IClasspathEntry elementDecode(org.w3c.dom.Element, org.eclipse.jdt.core.IJavaProject, java.util.Map);
    descriptor: (Lorg/w3c/dom/Element;Lorg/eclipse/jdt/core/IJavaProject;Ljava/util/Map;)Lorg/eclipse/jdt/core/IClasspathEntry;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=14, locals=28, args_size=3
        start local 0 // org.w3c.dom.Element element
        start local 1 // org.eclipse.jdt.core.IJavaProject project
        start local 2 // java.util.Map unknownElements
         0: .line 736
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getProject:()Lorg/eclipse/core/resources/IProject;
            invokeinterface org.eclipse.core.resources.IProject.getFullPath:()Lorg/eclipse/core/runtime/IPath;
            astore 3 /* projectPath */
        start local 3 // org.eclipse.core.runtime.IPath projectPath
         1: .line 737
            aload 0 /* element */
            invokeinterface org.w3c.dom.Element.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
            astore 4 /* attributes */
        start local 4 // org.w3c.dom.NamedNodeMap attributes
         2: .line 738
            aload 0 /* element */
            invokeinterface org.w3c.dom.Element.getChildNodes:()Lorg/w3c/dom/NodeList;
            astore 5 /* children */
        start local 5 // org.w3c.dom.NodeList children
         3: .line 739
            aload 5 /* children */
            invokeinterface org.w3c.dom.NodeList.getLength:()I
            newarray 4
            astore 6 /* foundChildren */
        start local 6 // boolean[] foundChildren
         4: .line 740
            ldc "kind"
            aload 4 /* attributes */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.removeAttribute:(Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Ljava/lang/String;
            astore 7 /* kindAttr */
        start local 7 // java.lang.String kindAttr
         5: .line 741
            ldc "path"
            aload 4 /* attributes */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.removeAttribute:(Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Ljava/lang/String;
            astore 8 /* pathAttr */
        start local 8 // java.lang.String pathAttr
         6: .line 744
            new org.eclipse.core.runtime.Path
            dup
            aload 8 /* pathAttr */
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            astore 9 /* path */
        start local 9 // org.eclipse.core.runtime.IPath path
         7: .line 745
            aload 7 /* kindAttr */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.kindFromString:(Ljava/lang/String;)I
            istore 10 /* kind */
        start local 10 // int kind
         8: .line 746
            iload 10 /* kind */
            iconst_4
            if_icmpeq 11
            iload 10 /* kind */
            iconst_5
            if_icmpeq 11
            aload 9 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifne 11
         9: .line 747
            aload 9 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            ifle 10
            aload 9 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            ldc ".."
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
        10: .line 748
      StackMap locals: org.w3c.dom.Element org.eclipse.jdt.core.IJavaProject java.util.Map org.eclipse.core.runtime.IPath org.w3c.dom.NamedNodeMap org.w3c.dom.NodeList boolean[] java.lang.String java.lang.String org.eclipse.core.runtime.IPath int
      StackMap stack:
            aload 3 /* projectPath */
            aload 9 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.append:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            astore 9 /* path */
        11: .line 753
      StackMap locals:
      StackMap stack:
            aload 0 /* element */
            ldc "sourcepath"
            invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
            ifeq 13
        12: .line 754
            new org.eclipse.core.runtime.Path
            dup
            ldc "sourcepath"
            aload 4 /* attributes */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.removeAttribute:(Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Ljava/lang/String;
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            goto 14
        13: .line 755
      StackMap locals:
      StackMap stack:
            aconst_null
        14: .line 752
      StackMap locals:
      StackMap stack: org.eclipse.core.runtime.Path
            astore 11 /* sourceAttachmentPath */
        start local 11 // org.eclipse.core.runtime.IPath sourceAttachmentPath
        15: .line 756
            iload 10 /* kind */
            iconst_4
            if_icmpeq 17
            aload 11 /* sourceAttachmentPath */
            ifnull 17
            aload 11 /* sourceAttachmentPath */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifne 17
        16: .line 757
            aload 3 /* projectPath */
            aload 11 /* sourceAttachmentPath */
            invokeinterface org.eclipse.core.runtime.IPath.append:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            astore 11 /* sourceAttachmentPath */
        17: .line 760
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 0 /* element */
            ldc "rootpath"
            invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
            ifeq 19
        18: .line 761
            new org.eclipse.core.runtime.Path
            dup
            ldc "rootpath"
            aload 4 /* attributes */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.removeAttribute:(Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Ljava/lang/String;
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            goto 20
        19: .line 762
      StackMap locals:
      StackMap stack:
            aconst_null
        20: .line 759
      StackMap locals:
      StackMap stack: org.eclipse.core.runtime.Path
            astore 12 /* sourceAttachmentRootPath */
        start local 12 // org.eclipse.core.runtime.IPath sourceAttachmentRootPath
        21: .line 765
            ldc "exported"
            aload 4 /* attributes */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.removeAttribute:(Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Ljava/lang/String;
            ldc "true"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 13 /* isExported */
        start local 13 // boolean isExported
        22: .line 768
            aload 4 /* attributes */
            ldc "including"
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.decodePatterns:(Lorg/w3c/dom/NamedNodeMap;Ljava/lang/String;)[Lorg/eclipse/core/runtime/IPath;
            astore 14 /* inclusionPatterns */
        start local 14 // org.eclipse.core.runtime.IPath[] inclusionPatterns
        23: .line 769
            aload 14 /* inclusionPatterns */
            ifnonnull 24
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.INCLUDE_ALL:[Lorg/eclipse/core/runtime/IPath;
            astore 14 /* inclusionPatterns */
        24: .line 772
      StackMap locals: org.eclipse.core.runtime.IPath int org.eclipse.core.runtime.IPath[]
      StackMap stack:
            aload 4 /* attributes */
            ldc "excluding"
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.decodePatterns:(Lorg/w3c/dom/NamedNodeMap;Ljava/lang/String;)[Lorg/eclipse/core/runtime/IPath;
            astore 15 /* exclusionPatterns */
        start local 15 // org.eclipse.core.runtime.IPath[] exclusionPatterns
        25: .line 773
            aload 15 /* exclusionPatterns */
            ifnonnull 26
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.EXCLUDE_NONE:[Lorg/eclipse/core/runtime/IPath;
            astore 15 /* exclusionPatterns */
        26: .line 776
      StackMap locals: org.eclipse.core.runtime.IPath[]
      StackMap stack:
            ldc "accessrules"
            aload 5 /* children */
            aload 6 /* foundChildren */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.getChildAttributes:(Ljava/lang/String;Lorg/w3c/dom/NodeList;[Z)Lorg/w3c/dom/NodeList;
            astore 16 /* attributeList */
        start local 16 // org.w3c.dom.NodeList attributeList
        27: .line 777
            aload 16 /* attributeList */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.decodeAccessRules:(Lorg/w3c/dom/NodeList;)[Lorg/eclipse/jdt/core/IAccessRule;
            astore 17 /* accessRules */
        start local 17 // org.eclipse.jdt.core.IAccessRule[] accessRules
        28: .line 780
            aload 17 /* accessRules */
            ifnonnull 30
        29: .line 781
            aload 14 /* inclusionPatterns */
            aload 15 /* exclusionPatterns */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRules:([Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;)[Lorg/eclipse/jdt/core/IAccessRule;
            astore 17 /* accessRules */
        30: .line 785
      StackMap locals: org.w3c.dom.NodeList org.eclipse.jdt.core.IAccessRule[]
      StackMap stack:
            ldc "combineaccessrules"
            aload 4 /* attributes */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.removeAttribute:(Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Ljava/lang/String;
            ldc "false"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 31
            iconst_0
            goto 32
      StackMap locals:
      StackMap stack:
        31: iconst_1
      StackMap locals:
      StackMap stack: int
        32: istore 18 /* combineAccessRestrictions */
        start local 18 // boolean combineAccessRestrictions
        33: .line 788
            ldc "attributes"
            aload 5 /* children */
            aload 6 /* foundChildren */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.getChildAttributes:(Ljava/lang/String;Lorg/w3c/dom/NodeList;[Z)Lorg/w3c/dom/NodeList;
            astore 16 /* attributeList */
        34: .line 789
            aload 16 /* attributeList */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.decodeExtraAttributes:(Lorg/w3c/dom/NodeList;)[Lorg/eclipse/jdt/core/IClasspathAttribute;
            astore 19 /* extraAttributes */
        start local 19 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
        35: .line 792
            aload 0 /* element */
            ldc "output"
            invokeinterface org.w3c.dom.Element.hasAttribute:(Ljava/lang/String;)Z
            ifeq 36
            aload 3 /* projectPath */
            ldc "output"
            aload 4 /* attributes */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.removeAttribute:(Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Ljava/lang/String;
            invokeinterface org.eclipse.core.runtime.IPath.append:(Ljava/lang/String;)Lorg/eclipse/core/runtime/IPath;
            goto 37
      StackMap locals: int org.eclipse.jdt.core.IClasspathAttribute[]
      StackMap stack:
        36: aconst_null
      StackMap locals:
      StackMap stack: org.eclipse.core.runtime.IPath
        37: astore 20 /* outputLocation */
        start local 20 // org.eclipse.core.runtime.IPath outputLocation
        38: .line 794
            aconst_null
            astore 21 /* unknownAttributes */
        start local 21 // java.lang.String[] unknownAttributes
        39: .line 795
            aconst_null
            astore 22 /* unknownChildren */
        start local 22 // java.util.ArrayList unknownChildren
        40: .line 797
            aload 2 /* unknownElements */
            ifnull 64
        41: .line 799
            aload 4 /* attributes */
            invokeinterface org.w3c.dom.NamedNodeMap.getLength:()I
            istore 23 /* unknownAttributeLength */
        start local 23 // int unknownAttributeLength
        42: .line 800
            iload 23 /* unknownAttributeLength */
            ifeq 51
        43: .line 801
            iload 23 /* unknownAttributeLength */
            iconst_2
            imul
            anewarray java.lang.String
            astore 21 /* unknownAttributes */
        44: .line 802
            iconst_0
            istore 24 /* i */
        start local 24 // int i
        45: goto 50
        46: .line 803
      StackMap locals: org.w3c.dom.Element org.eclipse.jdt.core.IJavaProject java.util.Map org.eclipse.core.runtime.IPath org.w3c.dom.NamedNodeMap org.w3c.dom.NodeList boolean[] java.lang.String java.lang.String org.eclipse.core.runtime.IPath int org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath int org.eclipse.core.runtime.IPath[] org.eclipse.core.runtime.IPath[] org.w3c.dom.NodeList org.eclipse.jdt.core.IAccessRule[] int org.eclipse.jdt.core.IClasspathAttribute[] org.eclipse.core.runtime.IPath java.lang.String[] java.util.ArrayList int int
      StackMap stack:
            aload 4 /* attributes */
            iload 24 /* i */
            invokeinterface org.w3c.dom.NamedNodeMap.item:(I)Lorg/w3c/dom/Node;
            astore 25 /* attribute */
        start local 25 // org.w3c.dom.Node attribute
        47: .line 804
            aload 21 /* unknownAttributes */
            iload 24 /* i */
            iconst_2
            imul
            aload 25 /* attribute */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            aastore
        48: .line 805
            aload 21 /* unknownAttributes */
            iload 24 /* i */
            iconst_2
            imul
            iconst_1
            iadd
            aload 25 /* attribute */
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            aastore
        end local 25 // org.w3c.dom.Node attribute
        49: .line 802
            iinc 24 /* i */ 1
      StackMap locals:
      StackMap stack:
        50: iload 24 /* i */
            iload 23 /* unknownAttributeLength */
            if_icmplt 46
        end local 24 // int i
        51: .line 810
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 24 /* i */
        start local 24 // int i
        52: aload 6 /* foundChildren */
            arraylength
            istore 25 /* length */
        start local 25 // int length
        53: goto 63
        54: .line 811
      StackMap locals: int int
      StackMap stack:
            aload 6 /* foundChildren */
            iload 24 /* i */
            baload
            ifne 62
        55: .line 812
            aload 5 /* children */
            iload 24 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 26 /* node */
        start local 26 // org.w3c.dom.Node node
        56: .line 813
            aload 26 /* node */
            invokeinterface org.w3c.dom.Node.getNodeType:()S
            iconst_1
            if_icmpeq 57
            goto 62
        57: .line 814
      StackMap locals: org.w3c.dom.Node
      StackMap stack:
            aload 22 /* unknownChildren */
            ifnonnull 59
        58: .line 815
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 22 /* unknownChildren */
        59: .line 816
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 27 /* buffer */
        start local 27 // java.lang.StringBuffer buffer
        60: .line 817
            aload 26 /* node */
            aload 27 /* buffer */
            aload 1 /* project */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.decodeUnknownNode:(Lorg/w3c/dom/Node;Ljava/lang/StringBuffer;Lorg/eclipse/jdt/core/IJavaProject;)V
        61: .line 818
            aload 22 /* unknownChildren */
            aload 27 /* buffer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 27 // java.lang.StringBuffer buffer
        end local 26 // org.w3c.dom.Node node
        62: .line 810
      StackMap locals:
      StackMap stack:
            iinc 24 /* i */ 1
      StackMap locals:
      StackMap stack:
        63: iload 24 /* i */
            iload 25 /* length */
            if_icmplt 54
        end local 25 // int length
        end local 24 // int i
        end local 23 // int unknownAttributeLength
        64: .line 824
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 23 /* entry */
        start local 23 // org.eclipse.jdt.core.IClasspathEntry entry
        65: .line 825
            iload 10 /* kind */
            tableswitch { // 1 - 10
                    1: 81
                    2: 66
                    3: 89
                    4: 113
                    5: 121
                    6: 143
                    7: 143
                    8: 143
                    9: 143
                   10: 127
              default: 143
          }
        66: .line 828
      StackMap locals: org.eclipse.jdt.core.IClasspathEntry
      StackMap stack:
            new org.eclipse.jdt.internal.core.ClasspathEntry
            dup
        67: .line 829
            iconst_1
        68: .line 830
            iconst_2
        69: .line 831
            aload 9 /* path */
        70: .line 832
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.INCLUDE_ALL:[Lorg/eclipse/core/runtime/IPath;
        71: .line 833
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.EXCLUDE_NONE:[Lorg/eclipse/core/runtime/IPath;
        72: .line 834
            aconst_null
        73: .line 835
            aconst_null
        74: .line 836
            aconst_null
        75: .line 837
            iload 13 /* isExported */
        76: .line 838
            aload 17 /* accessRules */
        77: .line 839
            iload 18 /* combineAccessRestrictions */
        78: .line 840
            aload 19 /* extraAttributes */
        79: .line 828
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry.<init>:(IILorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Z[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;)V
            astore 23 /* entry */
        80: .line 841
            goto 144
        81: .line 844
      StackMap locals:
      StackMap stack:
            aload 9 /* path */
        82: .line 845
            aload 11 /* sourceAttachmentPath */
        83: .line 846
            aload 12 /* sourceAttachmentRootPath */
        84: .line 847
            aload 17 /* accessRules */
        85: .line 848
            aload 19 /* extraAttributes */
        86: .line 849
            iload 13 /* isExported */
        87: .line 843
            invokestatic org.eclipse.jdt.core.JavaCore.newLibraryEntry:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/jdt/core/IAccessRule;[Lorg/eclipse/jdt/core/IClasspathAttribute;Z)Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 23 /* entry */
        88: .line 850
            goto 144
        89: .line 853
      StackMap locals:
      StackMap stack:
            aload 9 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            astore 24 /* projSegment */
        start local 24 // java.lang.String projSegment
        90: .line 854
            aload 24 /* projSegment */
            ifnull 98
            aload 24 /* projSegment */
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 98
        91: .line 856
            aload 9 /* path */
        92: .line 857
            aload 14 /* inclusionPatterns */
        93: .line 858
            aload 15 /* exclusionPatterns */
        94: .line 859
            aload 20 /* outputLocation */
        95: .line 860
            aload 19 /* extraAttributes */
        96: .line 855
            invokestatic org.eclipse.jdt.core.JavaCore.newSourceEntry:(Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/jdt/core/IClasspathAttribute;)Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 23 /* entry */
        97: .line 861
            goto 144
        98: .line 862
      StackMap locals: java.lang.String
      StackMap stack:
            aload 9 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            iconst_1
            if_icmpne 106
        99: .line 865
            aload 9 /* path */
       100: .line 866
            aload 17 /* accessRules */
       101: .line 867
            iload 18 /* combineAccessRestrictions */
       102: .line 868
            aload 19 /* extraAttributes */
       103: .line 869
            iload 13 /* isExported */
       104: .line 864
            invokestatic org.eclipse.jdt.core.JavaCore.newProjectEntry:(Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;Z)Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 23 /* entry */
       105: .line 870
            goto 144
       106: .line 873
      StackMap locals:
      StackMap stack:
            aload 9 /* path */
       107: .line 874
            aload 14 /* inclusionPatterns */
       108: .line 875
            aload 15 /* exclusionPatterns */
       109: .line 876
            aload 20 /* outputLocation */
       110: .line 877
            aload 19 /* extraAttributes */
       111: .line 872
            invokestatic org.eclipse.jdt.core.JavaCore.newSourceEntry:(Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/jdt/core/IClasspathAttribute;)Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 23 /* entry */
       112: .line 880
            goto 144
        end local 24 // java.lang.String projSegment
       113: .line 883
      StackMap locals:
      StackMap stack:
            aload 9 /* path */
       114: .line 884
            aload 11 /* sourceAttachmentPath */
       115: .line 885
            aload 12 /* sourceAttachmentRootPath */
       116: .line 886
            aload 17 /* accessRules */
       117: .line 887
            aload 19 /* extraAttributes */
       118: .line 888
            iload 13 /* isExported */
       119: .line 882
            invokestatic org.eclipse.jdt.core.JavaCore.newVariableEntry:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/jdt/core/IAccessRule;[Lorg/eclipse/jdt/core/IClasspathAttribute;Z)Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 23 /* entry */
       120: .line 889
            goto 144
       121: .line 892
      StackMap locals:
      StackMap stack:
            aload 9 /* path */
       122: .line 893
            aload 17 /* accessRules */
       123: .line 894
            aload 19 /* extraAttributes */
       124: .line 895
            iload 13 /* isExported */
       125: .line 891
            invokestatic org.eclipse.jdt.core.JavaCore.newContainerEntry:(Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/jdt/core/IAccessRule;[Lorg/eclipse/jdt/core/IClasspathAttribute;Z)Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 23 /* entry */
       126: .line 896
            goto 144
       127: .line 898
      StackMap locals:
      StackMap stack:
            aload 9 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifne 128
            aconst_null
            areturn
       128: .line 899
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.ClasspathEntry
            dup
       129: .line 900
            bipush 10
       130: .line 901
            iconst_1
       131: .line 902
            aload 9 /* path */
       132: .line 903
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.INCLUDE_ALL:[Lorg/eclipse/core/runtime/IPath;
       133: .line 904
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.EXCLUDE_NONE:[Lorg/eclipse/core/runtime/IPath;
       134: .line 905
            aconst_null
       135: .line 906
            aconst_null
       136: .line 907
            aconst_null
       137: .line 908
            iconst_0
       138: .line 909
            aconst_null
       139: .line 910
            iconst_0
       140: .line 911
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_EXTRA_ATTRIBUTES:[Lorg/eclipse/jdt/core/IClasspathAttribute;
       141: .line 899
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry.<init>:(IILorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Z[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;)V
            astore 23 /* entry */
       142: .line 912
            goto 144
       143: .line 914
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException
            dup
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unknownKind:Ljava/lang/String;
            aload 7 /* kindAttr */
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException.<init>:(Ljava/lang/String;)V
            athrow
       144: .line 917
      StackMap locals:
      StackMap stack:
            aload 21 /* unknownAttributes */
            ifnonnull 145
            aload 22 /* unknownChildren */
            ifnull 149
       145: .line 918
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements
            dup
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements.<init>:()V
            astore 24 /* unknownXmlElements */
        start local 24 // org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements unknownXmlElements
       146: .line 919
            aload 24 /* unknownXmlElements */
            aload 21 /* unknownAttributes */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements.attributes:[Ljava/lang/String;
       147: .line 920
            aload 24 /* unknownXmlElements */
            aload 22 /* unknownChildren */
            putfield org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements.children:Ljava/util/ArrayList;
       148: .line 921
            aload 2 /* unknownElements */
            aload 9 /* path */
            aload 24 /* unknownXmlElements */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 24 // org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements unknownXmlElements
       149: .line 924
      StackMap locals:
      StackMap stack:
            aload 23 /* entry */
            areturn
        end local 23 // org.eclipse.jdt.core.IClasspathEntry entry
        end local 22 // java.util.ArrayList unknownChildren
        end local 21 // java.lang.String[] unknownAttributes
        end local 20 // org.eclipse.core.runtime.IPath outputLocation
        end local 19 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
        end local 18 // boolean combineAccessRestrictions
        end local 17 // org.eclipse.jdt.core.IAccessRule[] accessRules
        end local 16 // org.w3c.dom.NodeList attributeList
        end local 15 // org.eclipse.core.runtime.IPath[] exclusionPatterns
        end local 14 // org.eclipse.core.runtime.IPath[] inclusionPatterns
        end local 13 // boolean isExported
        end local 12 // org.eclipse.core.runtime.IPath sourceAttachmentRootPath
        end local 11 // org.eclipse.core.runtime.IPath sourceAttachmentPath
        end local 10 // int kind
        end local 9 // org.eclipse.core.runtime.IPath path
        end local 8 // java.lang.String pathAttr
        end local 7 // java.lang.String kindAttr
        end local 6 // boolean[] foundChildren
        end local 5 // org.w3c.dom.NodeList children
        end local 4 // org.w3c.dom.NamedNodeMap attributes
        end local 3 // org.eclipse.core.runtime.IPath projectPath
        end local 2 // java.util.Map unknownElements
        end local 1 // org.eclipse.jdt.core.IJavaProject project
        end local 0 // org.w3c.dom.Element element
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0  150     0                    element  Lorg/w3c/dom/Element;
            0  150     1                    project  Lorg/eclipse/jdt/core/IJavaProject;
            0  150     2            unknownElements  Ljava/util/Map;
            1  150     3                projectPath  Lorg/eclipse/core/runtime/IPath;
            2  150     4                 attributes  Lorg/w3c/dom/NamedNodeMap;
            3  150     5                   children  Lorg/w3c/dom/NodeList;
            4  150     6              foundChildren  [Z
            5  150     7                   kindAttr  Ljava/lang/String;
            6  150     8                   pathAttr  Ljava/lang/String;
            7  150     9                       path  Lorg/eclipse/core/runtime/IPath;
            8  150    10                       kind  I
           15  150    11       sourceAttachmentPath  Lorg/eclipse/core/runtime/IPath;
           21  150    12   sourceAttachmentRootPath  Lorg/eclipse/core/runtime/IPath;
           22  150    13                 isExported  Z
           23  150    14          inclusionPatterns  [Lorg/eclipse/core/runtime/IPath;
           25  150    15          exclusionPatterns  [Lorg/eclipse/core/runtime/IPath;
           27  150    16              attributeList  Lorg/w3c/dom/NodeList;
           28  150    17                accessRules  [Lorg/eclipse/jdt/core/IAccessRule;
           33  150    18  combineAccessRestrictions  Z
           35  150    19            extraAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
           38  150    20             outputLocation  Lorg/eclipse/core/runtime/IPath;
           39  150    21          unknownAttributes  [Ljava/lang/String;
           40  150    22            unknownChildren  Ljava/util/ArrayList;
           42   64    23     unknownAttributeLength  I
           45   51    24                          i  I
           47   49    25                  attribute  Lorg/w3c/dom/Node;
           52   64    24                          i  I
           53   64    25                     length  I
           56   62    26                       node  Lorg/w3c/dom/Node;
           60   62    27                     buffer  Ljava/lang/StringBuffer;
           65  150    23                      entry  Lorg/eclipse/jdt/core/IClasspathEntry;
           90  113    24                projSegment  Ljava/lang/String;
          146  149    24         unknownXmlElements  Lorg/eclipse/jdt/internal/core/ClasspathEntry$UnknownXmlElements;
    MethodParameters:
                 Name  Flags
      element          
      project          
      unknownElements  

  public static boolean hasDotDot(org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/core/runtime/IPath;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.eclipse.core.runtime.IPath path
         0: .line 931
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            istore 2 /* length */
        start local 2 // int length
         2: goto 6
         3: .line 932
      StackMap locals: int int
      StackMap stack:
            ldc ".."
            aload 0 /* path */
            iload 1 /* i */
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 933
            iconst_1
            ireturn
         5: .line 931
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 1 /* i */
            iload 2 /* length */
            if_icmplt 3
        end local 2 // int length
        end local 1 // int i
         7: .line 935
            iconst_0
            ireturn
        end local 0 // org.eclipse.core.runtime.IPath path
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    path  Lorg/eclipse/core/runtime/IPath;
            1    7     1       i  I
            2    7     2  length  I
    MethodParameters:
      Name  Flags
      path  

  public static org.w3c.dom.NodeList getChildAttributes(java.lang.String, org.w3c.dom.NodeList, boolean[]);
    descriptor: (Ljava/lang/String;Lorg/w3c/dom/NodeList;[Z)Lorg/w3c/dom/NodeList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.String childName
        start local 1 // org.w3c.dom.NodeList children
        start local 2 // boolean[] foundChildren
         0: .line 939
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: aload 2 /* foundChildren */
            arraylength
            istore 4 /* length */
        start local 4 // int length
         2: goto 8
         3: .line 940
      StackMap locals: int int
      StackMap stack:
            aload 1 /* children */
            iload 3 /* i */
            invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
            astore 5 /* node */
        start local 5 // org.w3c.dom.Node node
         4: .line 941
            aload 0 /* childName */
            aload 5 /* node */
            invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         5: .line 942
            aload 2 /* foundChildren */
            iload 3 /* i */
            iconst_1
            bastore
         6: .line 943
            aload 5 /* node */
            invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
            areturn
        end local 5 // org.w3c.dom.Node node
         7: .line 939
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            iload 4 /* length */
            if_icmplt 3
        end local 4 // int length
        end local 3 // int i
         9: .line 946
            aconst_null
            areturn
        end local 2 // boolean[] foundChildren
        end local 1 // org.w3c.dom.NodeList children
        end local 0 // java.lang.String childName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0      childName  Ljava/lang/String;
            0   10     1       children  Lorg/w3c/dom/NodeList;
            0   10     2  foundChildren  [Z
            1    9     3              i  I
            2    9     4         length  I
            4    7     5           node  Lorg/w3c/dom/Node;
    MethodParameters:
               Name  Flags
      childName      
      children       
      foundChildren  

  private static java.lang.String removeAttribute(java.lang.String, org.w3c.dom.NamedNodeMap);
    descriptor: (Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.String nodeName
        start local 1 // org.w3c.dom.NamedNodeMap nodeMap
         0: .line 951
            aload 0 /* nodeName */
            aload 1 /* nodeMap */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.removeNode:(Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Lorg/w3c/dom/Node;
            astore 2 /* node */
        start local 2 // org.w3c.dom.Node node
         1: .line 952
            aload 2 /* node */
            ifnonnull 3
         2: .line 953
            ldc ""
            areturn
         3: .line 954
      StackMap locals: org.w3c.dom.Node
      StackMap stack:
            aload 2 /* node */
            invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
            areturn
        end local 2 // org.w3c.dom.Node node
        end local 1 // org.w3c.dom.NamedNodeMap nodeMap
        end local 0 // java.lang.String nodeName
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0  nodeName  Ljava/lang/String;
            0    4     1   nodeMap  Lorg/w3c/dom/NamedNodeMap;
            1    4     2      node  Lorg/w3c/dom/Node;
    MethodParameters:
          Name  Flags
      nodeName  
      nodeMap   

  private static org.w3c.dom.Node removeNode(java.lang.String, org.w3c.dom.NamedNodeMap);
    descriptor: (Ljava/lang/String;Lorg/w3c/dom/NamedNodeMap;)Lorg/w3c/dom/Node;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.String nodeName
        start local 1 // org.w3c.dom.NamedNodeMap nodeMap
         0: .line 959
            aload 1 /* nodeMap */
            aload 0 /* nodeName */
            invokeinterface org.w3c.dom.NamedNodeMap.removeNamedItem:(Ljava/lang/String;)Lorg/w3c/dom/Node;
         1: areturn
         2: .line 960
      StackMap locals:
      StackMap stack: org.w3c.dom.DOMException
            astore 2 /* e */
        start local 2 // org.w3c.dom.DOMException e
         3: .line 961
            aload 2 /* e */
            getfield org.w3c.dom.DOMException.code:S
            bipush 8
            if_icmpeq 5
         4: .line 962
            aload 2 /* e */
            athrow
         5: .line 963
      StackMap locals: org.w3c.dom.DOMException
      StackMap stack:
            aconst_null
            areturn
        end local 2 // org.w3c.dom.DOMException e
        end local 1 // org.w3c.dom.NamedNodeMap nodeMap
        end local 0 // java.lang.String nodeName
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0  nodeName  Ljava/lang/String;
            0    6     1   nodeMap  Lorg/w3c/dom/NamedNodeMap;
            3    6     2         e  Lorg/w3c/dom/DOMException;
      Exception table:
        from    to  target  type
           0     1       2  Class org.w3c.dom.DOMException
    MethodParameters:
          Name  Flags
      nodeName  
      nodeMap   

  public static org.eclipse.core.runtime.IPath[] resolvedChainedLibraries(org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/core/runtime/IPath;)[Lorg/eclipse/core/runtime/IPath;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.eclipse.core.runtime.IPath jarPath
         0: .line 972
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* result */
        start local 1 // java.util.ArrayList result
         1: .line 973
            aload 0 /* jarPath */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            aload 1 /* result */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.resolvedChainedLibraries:(Lorg/eclipse/core/runtime/IPath;Ljava/util/HashSet;Ljava/util/ArrayList;)V
         2: .line 974
            aload 1 /* result */
            invokevirtual java.util.ArrayList.size:()I
            ifne 4
         3: .line 975
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_PATHS:[Lorg/eclipse/core/runtime/IPath;
            areturn
         4: .line 976
      StackMap locals: java.util.ArrayList
      StackMap stack:
            aload 1 /* result */
            aload 1 /* result */
            invokevirtual java.util.ArrayList.size:()I
            anewarray org.eclipse.core.runtime.IPath
            invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.eclipse.core.runtime.IPath[]
            areturn
        end local 1 // java.util.ArrayList result
        end local 0 // org.eclipse.core.runtime.IPath jarPath
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0  jarPath  Lorg/eclipse/core/runtime/IPath;
            1    5     1   result  Ljava/util/ArrayList;
    MethodParameters:
         Name  Flags
      jarPath  

  private static void resolvedChainedLibraries(org.eclipse.core.runtime.IPath, java.util.HashSet, java.util.ArrayList);
    descriptor: (Lorg/eclipse/core/runtime/IPath;Ljava/util/HashSet;Ljava/util/ArrayList;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // org.eclipse.core.runtime.IPath jarPath
        start local 1 // java.util.HashSet visited
        start local 2 // java.util.ArrayList result
         0: .line 980
            aload 1 /* visited */
            aload 0 /* jarPath */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 981
            return
         2: .line 982
      StackMap locals:
      StackMap stack:
            aload 1 /* visited */
            aload 0 /* jarPath */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 983
            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
         4: .line 984
            aload 3 /* manager */
            aload 0 /* jarPath */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.isNonChainingJar:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 6
         5: .line 985
            return
         6: .line 986
      StackMap locals: org.eclipse.jdt.internal.core.JavaModelManager
      StackMap stack:
            aload 0 /* jarPath */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.getCalledFileNames:(Lorg/eclipse/core/runtime/IPath;)Ljava/util/List;
            astore 4 /* calledFileNames */
        start local 4 // java.util.List calledFileNames
         7: .line 987
            aload 4 /* calledFileNames */
            ifnonnull 10
         8: .line 988
            aload 3 /* manager */
            aload 0 /* jarPath */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.addNonChainingJar:(Lorg/eclipse/core/runtime/IPath;)V
         9: .line 989
            goto 26
        10: .line 990
      StackMap locals: java.util.List
      StackMap stack:
            aload 4 /* calledFileNames */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5 /* calledFilesIterator */
        start local 5 // java.util.Iterator calledFilesIterator
        11: .line 991
            aload 0 /* jarPath */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeLastSegments:(I)Lorg/eclipse/core/runtime/IPath;
            astore 6 /* directoryPath */
        start local 6 // org.eclipse.core.runtime.IPath directoryPath
        12: .line 992
            goto 25
        13: .line 993
      StackMap locals: java.util.Iterator org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 5 /* calledFilesIterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* calledFileName */
        start local 7 // java.lang.String calledFileName
        14: .line 994
            aload 6 /* directoryPath */
            aload 7 /* calledFileName */
            invokeinterface org.eclipse.core.runtime.IPath.isValidPath:(Ljava/lang/String;)Z
            ifne 18
        15: .line 995
            getstatic org.eclipse.jdt.internal.core.JavaModelManager.CP_RESOLVE_VERBOSE_FAILURE:Z
            ifeq 25
        16: .line 996
            new java.lang.StringBuilder
            dup
            ldc "Invalid Class-Path entry "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* calledFileName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in manifest of jar file: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* jarPath */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        17: .line 998
            goto 25
        18: .line 999
      StackMap locals: java.lang.String
      StackMap stack:
            aload 6 /* directoryPath */
            new org.eclipse.core.runtime.Path
            dup
            aload 7 /* calledFileName */
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            invokeinterface org.eclipse.core.runtime.IPath.append:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            astore 8 /* calledJar */
        start local 8 // org.eclipse.core.runtime.IPath calledJar
        19: .line 1001
            aload 8 /* calledJar */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            ifne 23
        20: .line 1002
            getstatic org.eclipse.jdt.internal.core.JavaModelManager.CP_RESOLVE_VERBOSE_FAILURE:Z
            ifeq 25
        21: .line 1003
            new java.lang.StringBuilder
            dup
            ldc "Invalid Class-Path entry "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* calledFileName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in manifest of jar file: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* jarPath */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        22: .line 1005
            goto 25
        23: .line 1007
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 8 /* calledJar */
            aload 1 /* visited */
            aload 2 /* result */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.resolvedChainedLibraries:(Lorg/eclipse/core/runtime/IPath;Ljava/util/HashSet;Ljava/util/ArrayList;)V
        24: .line 1008
            aload 2 /* result */
            aload 8 /* calledJar */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // org.eclipse.core.runtime.IPath calledJar
        end local 7 // java.lang.String calledFileName
        25: .line 992
      StackMap locals:
      StackMap stack:
            aload 5 /* calledFilesIterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        end local 6 // org.eclipse.core.runtime.IPath directoryPath
        end local 5 // java.util.Iterator calledFilesIterator
        26: .line 1012
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.util.List calledFileNames
        end local 3 // org.eclipse.jdt.internal.core.JavaModelManager manager
        end local 2 // java.util.ArrayList result
        end local 1 // java.util.HashSet visited
        end local 0 // org.eclipse.core.runtime.IPath jarPath
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   27     0              jarPath  Lorg/eclipse/core/runtime/IPath;
            0   27     1              visited  Ljava/util/HashSet;
            0   27     2               result  Ljava/util/ArrayList;
            4   27     3              manager  Lorg/eclipse/jdt/internal/core/JavaModelManager;
            7   27     4      calledFileNames  Ljava/util/List;
           11   26     5  calledFilesIterator  Ljava/util/Iterator;
           12   26     6        directoryPath  Lorg/eclipse/core/runtime/IPath;
           14   25     7       calledFileName  Ljava/lang/String;
           19   25     8            calledJar  Lorg/eclipse/core/runtime/IPath;
    MethodParameters:
         Name  Flags
      jarPath  
      visited  
      result   

  private static char[] getManifestContents(org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/core/runtime/IPath;)[C
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=1
        start local 0 // org.eclipse.core.runtime.IPath jarPath
         0: .line 1016
            invokestatic org.eclipse.jdt.internal.core.nd.java.JavaIndex.isEnabled:()Z
            ifeq 20
         1: .line 1017
            invokestatic org.eclipse.jdt.internal.core.nd.java.JavaIndex.getIndex:()Lorg/eclipse/jdt/internal/core/nd/java/JavaIndex;
            astore 1 /* index */
        start local 1 // org.eclipse.jdt.internal.core.nd.java.JavaIndex index
         2: .line 1018
            aload 0 /* jarPath */
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getLocalFile:(Lorg/eclipse/core/runtime/IPath;)Ljava/io/File;
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            astore 2 /* location */
        start local 2 // java.lang.String location
         3: .line 1019
            aconst_null
            astore 3
            aconst_null
            astore 4
         4: aload 1 /* index */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.JavaIndex.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            invokevirtual org.eclipse.jdt.internal.core.nd.Nd.acquireReadLock:()Lorg/eclipse/jdt/internal/core/nd/IReader;
            astore 5 /* reader */
        start local 5 // org.eclipse.jdt.internal.core.nd.IReader reader
         5: .line 1020
            aload 1 /* index */
            aload 2 /* location */
            invokevirtual java.lang.String.toCharArray:()[C
            invokevirtual org.eclipse.jdt.internal.core.nd.java.JavaIndex.getResourceFile:([C)Lorg/eclipse/jdt/internal/core/nd/java/NdResourceFile;
            astore 6 /* resourceFile */
        start local 6 // org.eclipse.jdt.internal.core.nd.java.NdResourceFile resourceFile
         6: .line 1021
            aload 1 /* index */
            aload 6 /* resourceFile */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.JavaIndex.isUpToDate:(Lorg/eclipse/jdt/internal/core/nd/java/NdResourceFile;)Z
            ifeq 14
         7: .line 1022
            aload 6 /* resourceFile */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdResourceFile.getManifestContent:()Lorg/eclipse/jdt/internal/core/nd/db/IString;
            invokeinterface org.eclipse.jdt.internal.core.nd.db.IString.getChars:()[C
            astore 7 /* manifestContent */
        start local 7 // char[] manifestContent
         8: .line 1023
            aload 7 /* manifestContent */
            arraylength
            ifne 11
         9: .line 1028
            aload 5 /* reader */
            ifnull 10
            aload 5 /* reader */
            invokeinterface org.eclipse.jdt.internal.core.nd.IReader.close:()V
        10: .line 1024
      StackMap locals: org.eclipse.core.runtime.IPath org.eclipse.jdt.internal.core.nd.java.JavaIndex java.lang.String java.lang.Throwable java.lang.Throwable org.eclipse.jdt.internal.core.nd.IReader org.eclipse.jdt.internal.core.nd.java.NdResourceFile char[]
      StackMap stack:
            aconst_null
            areturn
        11: .line 1026
      StackMap locals:
      StackMap stack:
            aload 7 /* manifestContent */
        12: .line 1028
            aload 5 /* reader */
            ifnull 13
            aload 5 /* reader */
            invokeinterface org.eclipse.jdt.internal.core.nd.IReader.close:()V
        13: .line 1026
      StackMap locals:
      StackMap stack: char[]
            areturn
        end local 7 // char[] manifestContent
        end local 6 // org.eclipse.jdt.internal.core.nd.java.NdResourceFile resourceFile
        14: .line 1028
      StackMap locals:
      StackMap stack:
            aload 5 /* reader */
            ifnull 20
            aload 5 /* reader */
            invokeinterface org.eclipse.jdt.internal.core.nd.IReader.close:()V
            goto 20
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 3
            aload 5 /* reader */
            ifnull 16
            aload 5 /* reader */
            invokeinterface org.eclipse.jdt.internal.core.nd.IReader.close:()V
        end local 5 // org.eclipse.jdt.internal.core.nd.IReader reader
      StackMap locals:
      StackMap stack:
        16: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 4
            aload 3
            ifnonnull 18
            aload 4
            astore 3
            goto 19
      StackMap locals:
      StackMap stack:
        18: aload 3
            aload 4
            if_acmpeq 19
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        19: aload 3
            athrow
        end local 2 // java.lang.String location
        end local 1 // org.eclipse.jdt.internal.core.nd.java.JavaIndex index
        20: .line 1031
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
            aconst_null
            astore 1 /* zip */
        start local 1 // java.util.zip.ZipFile zip
        21: .line 1032
            aconst_null
            astore 2 /* inputStream */
        start local 2 // java.io.InputStream inputStream
        22: .line 1033
            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
        23: .line 1035
            aload 3 /* manager */
            aload 0 /* jarPath */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.getZipFile:(Lorg/eclipse/core/runtime/IPath;)Ljava/util/zip/ZipFile;
            astore 1 /* zip */
        24: .line 1036
            aload 1 /* zip */
            ldc "META-INF/MANIFEST.MF"
            invokevirtual java.util.zip.ZipFile.getEntry:(Ljava/lang/String;)Ljava/util/zip/ZipEntry;
            astore 4 /* manifest */
        start local 4 // java.util.zip.ZipEntry manifest
        25: .line 1037
            aload 4 /* manifest */
            ifnonnull 32
        26: .line 1044
            aload 2 /* inputStream */
            ifnull 30
        27: .line 1046
            aload 2 /* inputStream */
            invokevirtual java.io.InputStream.close:()V
        28: .line 1047
            goto 30
      StackMap locals: org.eclipse.core.runtime.IPath java.util.zip.ZipFile java.io.InputStream org.eclipse.jdt.internal.core.JavaModelManager java.util.zip.ZipEntry
      StackMap stack: java.io.IOException
        29: pop
        30: .line 1051
      StackMap locals:
      StackMap stack:
            aload 3 /* manager */
            aload 1 /* zip */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.closeZipFile:(Ljava/util/zip/ZipFile;)V
        31: .line 1038
            aconst_null
            areturn
        32: .line 1040
      StackMap locals:
      StackMap stack:
            aload 1 /* zip */
            aload 4 /* manifest */
            invokevirtual java.util.zip.ZipFile.getInputStream:(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream;
            astore 2 /* inputStream */
        33: .line 1041
            aload 2 /* inputStream */
            iconst_m1
            ldc "UTF-8"
            invokestatic org.eclipse.jdt.internal.compiler.util.Util.getInputStreamAsCharArray:(Ljava/io/InputStream;ILjava/lang/String;)[C
            astore 5 /* chars */
        start local 5 // char[] chars
        34: .line 1042
            aload 5 /* chars */
            astore 7
        35: .line 1044
            aload 2 /* inputStream */
            ifnull 39
        36: .line 1046
            aload 2 /* inputStream */
            invokevirtual java.io.InputStream.close:()V
        37: .line 1047
            goto 39
      StackMap locals: org.eclipse.core.runtime.IPath java.util.zip.ZipFile java.io.InputStream org.eclipse.jdt.internal.core.JavaModelManager java.util.zip.ZipEntry char[] top char[]
      StackMap stack: java.io.IOException
        38: pop
        39: .line 1051
      StackMap locals:
      StackMap stack:
            aload 3 /* manager */
            aload 1 /* zip */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.closeZipFile:(Ljava/util/zip/ZipFile;)V
        40: .line 1042
            aload 7
            areturn
        end local 5 // char[] chars
        end local 4 // java.util.zip.ZipEntry manifest
        41: .line 1043
      StackMap locals: org.eclipse.core.runtime.IPath java.util.zip.ZipFile java.io.InputStream org.eclipse.jdt.internal.core.JavaModelManager
      StackMap stack: java.lang.Throwable
            astore 6
        42: .line 1044
            aload 2 /* inputStream */
            ifnull 46
        43: .line 1046
            aload 2 /* inputStream */
            invokevirtual java.io.InputStream.close:()V
        44: .line 1047
            goto 46
      StackMap locals: org.eclipse.core.runtime.IPath java.util.zip.ZipFile java.io.InputStream org.eclipse.jdt.internal.core.JavaModelManager top top java.lang.Throwable
      StackMap stack: java.io.IOException
        45: pop
        46: .line 1051
      StackMap locals:
      StackMap stack:
            aload 3 /* manager */
            aload 1 /* zip */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.closeZipFile:(Ljava/util/zip/ZipFile;)V
        47: .line 1052
            aload 6
            athrow
        end local 3 // org.eclipse.jdt.internal.core.JavaModelManager manager
        end local 2 // java.io.InputStream inputStream
        end local 1 // java.util.zip.ZipFile zip
        end local 0 // org.eclipse.core.runtime.IPath jarPath
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   48     0          jarPath  Lorg/eclipse/core/runtime/IPath;
            2   20     1            index  Lorg/eclipse/jdt/internal/core/nd/java/JavaIndex;
            3   20     2         location  Ljava/lang/String;
            5   16     5           reader  Lorg/eclipse/jdt/internal/core/nd/IReader;
            6   14     6     resourceFile  Lorg/eclipse/jdt/internal/core/nd/java/NdResourceFile;
            8   14     7  manifestContent  [C
           21   48     1              zip  Ljava/util/zip/ZipFile;
           22   48     2      inputStream  Ljava/io/InputStream;
           23   48     3          manager  Lorg/eclipse/jdt/internal/core/JavaModelManager;
           25   41     4         manifest  Ljava/util/zip/ZipEntry;
           34   41     5            chars  [C
      Exception table:
        from    to  target  type
           5     9      15  any
          11    12      15  any
           4    10      17  any
          11    13      17  any
          14    17      17  any
          27    28      29  Class java.io.IOException
          36    37      38  Class java.io.IOException
          23    26      41  any
          32    35      41  any
          43    44      45  Class java.io.IOException
    Exceptions:
      throws org.eclipse.core.runtime.CoreException, java.io.IOException
    MethodParameters:
         Name  Flags
      jarPath  

  private static java.util.List getCalledFileNames(org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/core/runtime/IPath;)Ljava/util/List;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.eclipse.core.runtime.IPath jarPath
         0: .line 1056
            aload 0 /* jarPath */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            astore 1 /* target */
        start local 1 // java.lang.Object target
         1: .line 1057
            aload 1 /* target */
            instanceof org.eclipse.core.resources.IFile
            ifne 3
            aload 1 /* target */
            instanceof java.io.File
            ifne 3
         2: .line 1058
            aconst_null
            areturn
         3: .line 1060
      StackMap locals: java.lang.Object
      StackMap stack:
            aconst_null
            astore 2 /* calledFileNames */
        start local 2 // java.util.List calledFileNames
         4: .line 1062
            aload 0 /* jarPath */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.getManifestContents:(Lorg/eclipse/core/runtime/IPath;)[C
            astore 3 /* manifestContents */
        start local 3 // char[] manifestContents
         5: .line 1063
            aload 3 /* manifestContents */
            ifnonnull 7
         6: .line 1064
            aconst_null
            areturn
         7: .line 1066
      StackMap locals: java.util.List char[]
      StackMap stack:
            new org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer
            dup
            invokespecial org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer.<init>:()V
            astore 4 /* analyzer */
        start local 4 // org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer analyzer
         8: .line 1067
            aload 4 /* analyzer */
            aload 3 /* manifestContents */
            invokevirtual org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer.analyzeManifestContents:([C)Z
            istore 5 /* success */
        start local 5 // boolean success
         9: .line 1068
            aload 4 /* analyzer */
            invokevirtual org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer.getCalledFileNames:()Ljava/util/List;
            astore 2 /* calledFileNames */
        10: .line 1069
            iload 5 /* success */
            ifeq 11
            aload 4 /* analyzer */
            invokevirtual org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer.getClasspathSectionsCount:()I
            iconst_1
            if_icmpne 14
            aload 2 /* calledFileNames */
            ifnonnull 14
        11: .line 1070
      StackMap locals: org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer int
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.JavaModelManager.CP_RESOLVE_VERBOSE_FAILURE:Z
            ifeq 13
        12: .line 1071
            new java.lang.StringBuilder
            dup
            ldc "Invalid Class-Path header in manifest of jar file: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* jarPath */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        13: .line 1073
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        14: .line 1074
      StackMap locals:
      StackMap stack:
            aload 4 /* analyzer */
            invokevirtual org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer.getClasspathSectionsCount:()I
            iconst_1
            if_icmple 22
        15: .line 1075
            getstatic org.eclipse.jdt.internal.core.JavaModelManager.CP_RESOLVE_VERBOSE_FAILURE:Z
            ifeq 17
        16: .line 1076
            new java.lang.StringBuilder
            dup
            ldc "Multiple Class-Path headers in manifest of jar file: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* jarPath */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        17: .line 1078
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 5 // boolean success
        end local 4 // org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer analyzer
        end local 3 // char[] manifestContents
        18: .line 1080
      StackMap locals: org.eclipse.core.runtime.IPath java.lang.Object java.util.List
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
        19: .line 1082
            getstatic org.eclipse.jdt.internal.core.JavaModelManager.CP_RESOLVE_VERBOSE_FAILURE:Z
            ifeq 22
        20: .line 1083
            new java.lang.StringBuilder
            dup
            ldc "Could not read Class-Path header in manifest of jar file: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* jarPath */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Util.verbose:(Ljava/lang/String;)V
        21: .line 1084
            aload 3 /* e */
            invokevirtual java.lang.Exception.printStackTrace:()V
        end local 3 // java.lang.Exception e
        22: .line 1087
      StackMap locals:
      StackMap stack:
            aload 2 /* calledFileNames */
            areturn
        end local 2 // java.util.List calledFileNames
        end local 1 // java.lang.Object target
        end local 0 // org.eclipse.core.runtime.IPath jarPath
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   23     0           jarPath  Lorg/eclipse/core/runtime/IPath;
            1   23     1            target  Ljava/lang/Object;
            4   23     2   calledFileNames  Ljava/util/List;
            5   18     3  manifestContents  [C
            8   18     4          analyzer  Lorg/eclipse/jdt/internal/compiler/util/ManifestAnalyzer;
            9   18     5           success  Z
           19   22     3                 e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           4     6      18  Class org.eclipse.core.runtime.CoreException
           7    13      18  Class org.eclipse.core.runtime.CoreException
          14    17      18  Class org.eclipse.core.runtime.CoreException
           4     6      18  Class java.io.IOException
           7    13      18  Class java.io.IOException
          14    17      18  Class java.io.IOException
    MethodParameters:
         Name  Flags
      jarPath  

  public static org.eclipse.core.runtime.IPath resolveDotDot(org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.eclipse.core.runtime.IPath reference
        start local 1 // org.eclipse.core.runtime.IPath path
         0: .line 1094
            aconst_null
            astore 2 /* newPath */
        start local 2 // org.eclipse.core.runtime.IPath newPath
         1: .line 1095
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.workspaceRoot:Lorg/eclipse/core/resources/IWorkspaceRoot;
            invokeinterface org.eclipse.core.resources.IWorkspaceRoot.getLocation:()Lorg/eclipse/core/runtime/IPath;
            astore 3 /* workspaceLocation */
        start local 3 // org.eclipse.core.runtime.IPath workspaceLocation
         2: .line 1096
            aload 0 /* reference */
            ifnull 3
            aload 3 /* workspaceLocation */
            aload 0 /* reference */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 27
         3: .line 1097
      StackMap locals: org.eclipse.core.runtime.IPath org.eclipse.core.runtime.IPath
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         4: aload 1 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            istore 5 /* length */
        start local 5 // int length
         5: goto 25
         6: .line 1098
      StackMap locals: int int
      StackMap stack:
            aload 1 /* path */
            iload 4 /* i */
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            astore 6 /* segment */
        start local 6 // java.lang.String segment
         7: .line 1099
            ldc ".."
            aload 6 /* segment */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 19
         8: .line 1100
            aload 2 /* newPath */
            ifnonnull 14
         9: .line 1101
            iload 4 /* i */
            ifne 12
        10: .line 1102
            aload 3 /* workspaceLocation */
            astore 2 /* newPath */
        11: .line 1103
            goto 24
        12: .line 1104
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* path */
            iload 4 /* i */
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            astore 2 /* newPath */
        13: .line 1106
            goto 24
        14: .line 1107
      StackMap locals:
      StackMap stack:
            aload 2 /* newPath */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            ifle 17
        15: .line 1108
            aload 2 /* newPath */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeLastSegments:(I)Lorg/eclipse/core/runtime/IPath;
            astore 2 /* newPath */
        16: .line 1109
            goto 24
        17: .line 1110
      StackMap locals:
      StackMap stack:
            aload 3 /* workspaceLocation */
            astore 2 /* newPath */
        18: .line 1113
            goto 24
      StackMap locals:
      StackMap stack:
        19: aload 2 /* newPath */
            ifnull 24
        20: .line 1114
            aload 2 /* newPath */
            aload 3 /* workspaceLocation */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifeq 23
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.workspaceRoot:Lorg/eclipse/core/resources/IWorkspaceRoot;
            aload 6 /* segment */
            invokeinterface org.eclipse.core.resources.IWorkspaceRoot.getProject:(Ljava/lang/String;)Lorg/eclipse/core/resources/IProject;
            invokeinterface org.eclipse.core.resources.IProject.isAccessible:()Z
            ifeq 23
        21: .line 1115
            new org.eclipse.core.runtime.Path
            dup
            aload 6 /* segment */
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            invokevirtual org.eclipse.core.runtime.Path.makeAbsolute:()Lorg/eclipse/core/runtime/IPath;
            astore 2 /* newPath */
        22: .line 1116
            goto 24
        23: .line 1117
      StackMap locals:
      StackMap stack:
            aload 2 /* newPath */
            aload 6 /* segment */
            invokeinterface org.eclipse.core.runtime.IPath.append:(Ljava/lang/String;)Lorg/eclipse/core/runtime/IPath;
            astore 2 /* newPath */
        end local 6 // java.lang.String segment
        24: .line 1097
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 4 /* i */
            iload 5 /* length */
            if_icmplt 6
        end local 5 // int length
        end local 4 // int i
        26: .line 1121
            goto 41
        27: .line 1123
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        28: aload 1 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            istore 5 /* length */
        start local 5 // int length
        29: goto 40
        30: .line 1124
      StackMap locals: int int
      StackMap stack:
            aload 1 /* path */
            iload 4 /* i */
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            astore 6 /* segment */
        start local 6 // java.lang.String segment
        31: .line 1125
            ldc ".."
            aload 6 /* segment */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 37
        32: .line 1126
            aload 2 /* newPath */
            ifnonnull 34
        33: .line 1127
            aload 0 /* reference */
            astore 2 /* newPath */
        34: .line 1129
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* newPath */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            ifle 39
        35: .line 1130
            aload 2 /* newPath */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeLastSegments:(I)Lorg/eclipse/core/runtime/IPath;
            astore 2 /* newPath */
        36: .line 1132
            goto 39
      StackMap locals:
      StackMap stack:
        37: aload 2 /* newPath */
            ifnull 39
        38: .line 1133
            aload 2 /* newPath */
            aload 6 /* segment */
            invokeinterface org.eclipse.core.runtime.IPath.append:(Ljava/lang/String;)Lorg/eclipse/core/runtime/IPath;
            astore 2 /* newPath */
        end local 6 // java.lang.String segment
        39: .line 1123
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 4 /* i */
            iload 5 /* length */
            if_icmplt 30
        end local 5 // int length
        end local 4 // int i
        41: .line 1137
      StackMap locals:
      StackMap stack:
            aload 2 /* newPath */
            ifnonnull 43
        42: .line 1138
            aload 1 /* path */
            areturn
        43: .line 1139
      StackMap locals:
      StackMap stack:
            aload 2 /* newPath */
            areturn
        end local 3 // org.eclipse.core.runtime.IPath workspaceLocation
        end local 2 // org.eclipse.core.runtime.IPath newPath
        end local 1 // org.eclipse.core.runtime.IPath path
        end local 0 // org.eclipse.core.runtime.IPath reference
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   44     0          reference  Lorg/eclipse/core/runtime/IPath;
            0   44     1               path  Lorg/eclipse/core/runtime/IPath;
            1   44     2            newPath  Lorg/eclipse/core/runtime/IPath;
            2   44     3  workspaceLocation  Lorg/eclipse/core/runtime/IPath;
            4   26     4                  i  I
            5   26     5             length  I
            7   24     6            segment  Ljava/lang/String;
           28   41     4                  i  I
           29   41     5             length  I
           31   39     6            segment  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      reference  
      path       

  private static void encodePatterns(org.eclipse.core.runtime.IPath[], java.lang.String, java.util.Map);
    descriptor: ([Lorg/eclipse/core/runtime/IPath;Ljava/lang/String;Ljava/util/Map;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.eclipse.core.runtime.IPath[] patterns
        start local 1 // java.lang.String tag
        start local 2 // java.util.Map parameters
         0: .line 1146
            aload 0 /* patterns */
            ifnull 10
            aload 0 /* patterns */
            arraylength
            ifle 10
         1: .line 1147
            new java.lang.StringBuffer
            dup
            bipush 10
            invokespecial java.lang.StringBuffer.<init>:(I)V
            astore 3 /* rule */
        start local 3 // java.lang.StringBuffer rule
         2: .line 1148
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: aload 0 /* patterns */
            arraylength
            istore 5 /* max */
        start local 5 // int max
         4: goto 8
         5: .line 1149
      StackMap locals: java.lang.StringBuffer int int
      StackMap stack:
            iload 4 /* i */
            ifle 6
            aload 3 /* rule */
            bipush 124
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         6: .line 1150
      StackMap locals:
      StackMap stack:
            aload 3 /* rule */
            aload 0 /* patterns */
            iload 4 /* i */
            aaload
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
         7: .line 1148
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* i */
            iload 5 /* max */
            if_icmplt 5
        end local 5 // int max
        end local 4 // int i
         9: .line 1152
            aload 2 /* parameters */
            aload 1 /* tag */
            aload 3 /* rule */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 3 // java.lang.StringBuffer rule
        10: .line 1154
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.util.Map parameters
        end local 1 // java.lang.String tag
        end local 0 // org.eclipse.core.runtime.IPath[] patterns
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0    patterns  [Lorg/eclipse/core/runtime/IPath;
            0   11     1         tag  Ljava/lang/String;
            0   11     2  parameters  Ljava/util/Map;
            2   10     3        rule  Ljava/lang/StringBuffer;
            3    9     4           i  I
            4    9     5         max  I
    MethodParameters:
            Name  Flags
      patterns    
      tag         
      parameters  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // java.lang.Object object
         0: .line 1162
            aload 0 /* this */
            aload 1 /* object */
            if_acmpne 2
         1: .line 1163
            iconst_1
            ireturn
         2: .line 1164
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            instanceof org.eclipse.jdt.internal.core.ClasspathEntry
            ifeq 45
         3: .line 1165
            aload 1 /* object */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            astore 2 /* otherEntry */
        start local 2 // org.eclipse.jdt.internal.core.ClasspathEntry otherEntry
         4: .line 1167
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.contentKind:I
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getContentKind:()I
            if_icmpeq 6
         5: .line 1168
            iconst_0
            ireturn
         6: .line 1170
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getEntryKind:()I
            if_icmpeq 8
         7: .line 1171
            iconst_0
            ireturn
         8: .line 1173
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.isExported:Z
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.isExported:()Z
            if_icmpeq 10
         9: .line 1174
            iconst_0
            ireturn
        10: .line 1176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifne 12
        11: .line 1177
            iconst_0
            ireturn
        12: .line 1179
      StackMap locals:
      StackMap stack:
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
            astore 3 /* otherPath */
        start local 3 // org.eclipse.core.runtime.IPath otherPath
        13: .line 1180
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentPath:Lorg/eclipse/core/runtime/IPath;
            ifnonnull 16
        14: .line 1181
            aload 3 /* otherPath */
            ifnull 18
        15: .line 1182
            iconst_0
            ireturn
        16: .line 1184
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentPath:Lorg/eclipse/core/runtime/IPath;
            aload 3 /* otherPath */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifne 18
        17: .line 1185
            iconst_0
            ireturn
        18: .line 1188
      StackMap locals:
      StackMap stack:
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentRootPath:()Lorg/eclipse/core/runtime/IPath;
            astore 3 /* otherPath */
        19: .line 1189
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentRootPath:Lorg/eclipse/core/runtime/IPath;
            ifnonnull 22
        20: .line 1190
            aload 3 /* otherPath */
            ifnull 24
        21: .line 1191
            iconst_0
            ireturn
        22: .line 1193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentRootPath:Lorg/eclipse/core/runtime/IPath;
            aload 3 /* otherPath */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifne 24
        23: .line 1194
            iconst_0
            ireturn
        24: .line 1197
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getInclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.equalPatterns:([Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;)Z
            ifne 26
        25: .line 1198
            iconst_0
            ireturn
        26: .line 1199
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getExclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.equalPatterns:([Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;)Z
            ifne 28
        27: .line 1200
            iconst_0
            ireturn
        28: .line 1201
      StackMap locals:
      StackMap stack:
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRuleSet:()Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            astore 4 /* otherRuleSet */
        start local 4 // org.eclipse.jdt.internal.compiler.env.AccessRuleSet otherRuleSet
        29: .line 1202
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRuleSet:()Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            ifnull 32
        30: .line 1203
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRuleSet:()Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            aload 4 /* otherRuleSet */
            invokevirtual org.eclipse.jdt.internal.compiler.env.AccessRuleSet.equals:(Ljava/lang/Object;)Z
            ifne 34
        31: .line 1204
            iconst_0
            ireturn
        32: .line 1205
      StackMap locals: org.eclipse.jdt.internal.compiler.env.AccessRuleSet
      StackMap stack:
            aload 4 /* otherRuleSet */
            ifnull 34
        33: .line 1206
            iconst_0
            ireturn
        34: .line 1207
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:Z
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:()Z
            if_icmpeq 36
        35: .line 1208
            iconst_0
            ireturn
        36: .line 1209
      StackMap locals:
      StackMap stack:
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
            astore 3 /* otherPath */
        37: .line 1210
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.specificOutputLocation:Lorg/eclipse/core/runtime/IPath;
            ifnonnull 40
        38: .line 1211
            aload 3 /* otherPath */
            ifnull 42
        39: .line 1212
            iconst_0
            ireturn
        40: .line 1214
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.specificOutputLocation:Lorg/eclipse/core/runtime/IPath;
            aload 3 /* otherPath */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifne 42
        41: .line 1215
            iconst_0
            ireturn
        42: .line 1217
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            aload 2 /* otherEntry */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getExtraAttributes:()[Lorg/eclipse/jdt/core/IClasspathAttribute;
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.equalAttributes:([Lorg/eclipse/jdt/core/IClasspathAttribute;[Lorg/eclipse/jdt/core/IClasspathAttribute;)Z
            ifne 44
        43: .line 1218
            iconst_0
            ireturn
        44: .line 1219
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 4 // org.eclipse.jdt.internal.compiler.env.AccessRuleSet otherRuleSet
        end local 3 // org.eclipse.core.runtime.IPath otherPath
        end local 2 // org.eclipse.jdt.internal.core.ClasspathEntry otherEntry
        45: .line 1221
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object object
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   46     0          this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   46     1        object  Ljava/lang/Object;
            4   45     2    otherEntry  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
           13   45     3     otherPath  Lorg/eclipse/core/runtime/IPath;
           29   45     4  otherRuleSet  Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
    MethodParameters:
        Name  Flags
      object  

  private static boolean equalAttributes(org.eclipse.jdt.core.IClasspathAttribute[], org.eclipse.jdt.core.IClasspathAttribute[]);
    descriptor: ([Lorg/eclipse/jdt/core/IClasspathAttribute;[Lorg/eclipse/jdt/core/IClasspathAttribute;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.eclipse.jdt.core.IClasspathAttribute[] firstAttributes
        start local 1 // org.eclipse.jdt.core.IClasspathAttribute[] secondAttributes
         0: .line 1226
            aload 0 /* firstAttributes */
            aload 1 /* secondAttributes */
            if_acmpeq 11
         1: .line 1227
            aload 0 /* firstAttributes */
            ifnonnull 2
            iconst_0
            ireturn
         2: .line 1228
      StackMap locals:
      StackMap stack:
            aload 0 /* firstAttributes */
            arraylength
            istore 2 /* length */
        start local 2 // int length
         3: .line 1229
            aload 1 /* secondAttributes */
            ifnull 4
            aload 1 /* secondAttributes */
            arraylength
            iload 2 /* length */
            if_icmpeq 5
         4: .line 1230
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
         5: .line 1231
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 10
         7: .line 1232
      StackMap locals: int
      StackMap stack:
            aload 0 /* firstAttributes */
            iload 3 /* i */
            aaload
            aload 1 /* secondAttributes */
            iload 3 /* i */
            aaload
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 9
         8: .line 1233
            iconst_0
            ireturn
         9: .line 1231
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            iload 2 /* length */
            if_icmplt 7
        end local 3 // int i
        end local 2 // int length
        11: .line 1236
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // org.eclipse.jdt.core.IClasspathAttribute[] secondAttributes
        end local 0 // org.eclipse.jdt.core.IClasspathAttribute[] firstAttributes
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   12     0   firstAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
            0   12     1  secondAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
            3   11     2            length  I
            6   11     3                 i  I
    MethodParameters:
                  Name  Flags
      firstAttributes   
      secondAttributes  

  private static boolean equalPatterns(org.eclipse.core.runtime.IPath[], org.eclipse.core.runtime.IPath[]);
    descriptor: ([Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.eclipse.core.runtime.IPath[] firstPatterns
        start local 1 // org.eclipse.core.runtime.IPath[] secondPatterns
         0: .line 1240
            aload 0 /* firstPatterns */
            aload 1 /* secondPatterns */
            if_acmpeq 11
         1: .line 1241
            aload 0 /* firstPatterns */
            ifnonnull 2
            iconst_0
            ireturn
         2: .line 1242
      StackMap locals:
      StackMap stack:
            aload 0 /* firstPatterns */
            arraylength
            istore 2 /* length */
        start local 2 // int length
         3: .line 1243
            aload 1 /* secondPatterns */
            ifnull 4
            aload 1 /* secondPatterns */
            arraylength
            iload 2 /* length */
            if_icmpeq 5
         4: .line 1244
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
         5: .line 1245
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 10
         7: .line 1248
      StackMap locals: int
      StackMap stack:
            aload 0 /* firstPatterns */
            iload 3 /* i */
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aload 1 /* secondPatterns */
            iload 3 /* i */
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
         8: .line 1249
            iconst_0
            ireturn
         9: .line 1245
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            iload 2 /* length */
            if_icmplt 7
        end local 3 // int i
        end local 2 // int length
        11: .line 1252
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // org.eclipse.core.runtime.IPath[] secondPatterns
        end local 0 // org.eclipse.core.runtime.IPath[] firstPatterns
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0   firstPatterns  [Lorg/eclipse/core/runtime/IPath;
            0   12     1  secondPatterns  [Lorg/eclipse/core/runtime/IPath;
            3   11     2          length  I
            6   11     3               i  I
    MethodParameters:
                Name  Flags
      firstPatterns   
      secondPatterns  

  public org.eclipse.jdt.core.IAccessRule[] getAccessRules();
    descriptor: ()[Lorg/eclipse/jdt/core/IAccessRule;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1260
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.accessRuleSet:Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            ifnonnull 1
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_ACCESS_RULES:[Lorg/eclipse/jdt/core/IAccessRule;
            areturn
         1: .line 1261
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.accessRuleSet:Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            invokevirtual org.eclipse.jdt.internal.compiler.env.AccessRuleSet.getAccessRules:()[Lorg/eclipse/jdt/internal/compiler/env/AccessRule;
            astore 1 /* rules */
        start local 1 // org.eclipse.jdt.internal.compiler.env.AccessRule[] rules
         2: .line 1262
            aload 1 /* rules */
            arraylength
            istore 2 /* length */
        start local 2 // int length
         3: .line 1263
            iload 2 /* length */
            ifne 4
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_ACCESS_RULES:[Lorg/eclipse/jdt/core/IAccessRule;
            areturn
         4: .line 1264
      StackMap locals: org.eclipse.jdt.internal.compiler.env.AccessRule[] int
      StackMap stack:
            iload 2 /* length */
            anewarray org.eclipse.jdt.core.IAccessRule
            astore 3 /* result */
        start local 3 // org.eclipse.jdt.core.IAccessRule[] result
         5: .line 1265
            aload 1 /* rules */
            iconst_0
            aload 3 /* result */
            iconst_0
            iload 2 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         6: .line 1266
            aload 3 /* result */
            areturn
        end local 3 // org.eclipse.jdt.core.IAccessRule[] result
        end local 2 // int length
        end local 1 // org.eclipse.jdt.internal.compiler.env.AccessRule[] rules
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            2    7     1   rules  [Lorg/eclipse/jdt/internal/compiler/env/AccessRule;
            3    7     2  length  I
            5    7     3  result  [Lorg/eclipse/jdt/core/IAccessRule;

  public org.eclipse.jdt.internal.compiler.env.AccessRuleSet getAccessRuleSet();
    descriptor: ()Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1270
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.accessRuleSet:Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

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

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

  public org.eclipse.core.runtime.IPath[] getExclusionPatterns();
    descriptor: ()[Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1294
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public org.eclipse.jdt.core.IClasspathAttribute[] getExtraAttributes();
    descriptor: ()[Lorg/eclipse/jdt/core/IClasspathAttribute;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1299
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public org.eclipse.core.runtime.IPath[] getInclusionPatterns();
    descriptor: ()[Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1307
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public org.eclipse.core.runtime.IPath getOutputLocation();
    descriptor: ()Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1315
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.specificOutputLocation:Lorg/eclipse/core/runtime/IPath;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public org.eclipse.core.runtime.IPath getPath();
    descriptor: ()Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1323
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public org.eclipse.core.runtime.IPath getSourceAttachmentPath();
    descriptor: ()Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1331
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentPath:Lorg/eclipse/core/runtime/IPath;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public org.eclipse.core.runtime.IPath getSourceAttachmentRootPath();
    descriptor: ()Lorg/eclipse/core/runtime/IPath;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1339
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.sourceAttachmentRootPath:Lorg/eclipse/core/runtime/IPath;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public static org.eclipse.core.runtime.IPath getExternalAnnotationPath(org.eclipse.jdt.core.IClasspathEntry, org.eclipse.core.resources.IProject, boolean);
    descriptor: (Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/core/resources/IProject;Z)Lorg/eclipse/core/runtime/IPath;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.eclipse.jdt.core.IClasspathEntry entry
        start local 1 // org.eclipse.core.resources.IProject project
        start local 2 // boolean resolve
         0: .line 1361
            aload 0 /* entry */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.getRawExternalAnnotationPath:(Lorg/eclipse/jdt/core/IClasspathEntry;)Ljava/lang/String;
            astore 3 /* rawAnnotationPath */
        start local 3 // java.lang.String rawAnnotationPath
         1: .line 1362
            aload 3 /* rawAnnotationPath */
            ifnull 24
         2: .line 1363
            new org.eclipse.core.runtime.Path
            dup
            aload 3 /* rawAnnotationPath */
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            astore 4 /* annotationPath */
        start local 4 // org.eclipse.core.runtime.IPath annotationPath
         3: .line 1364
            aload 4 /* annotationPath */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifeq 13
         4: .line 1365
            iload 2 /* resolve */
            ifne 6
         5: .line 1366
            aload 4 /* annotationPath */
            areturn
         6: .line 1369
      StackMap locals: java.lang.String org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 1 /* project */
            invokeinterface org.eclipse.core.resources.IProject.getWorkspace:()Lorg/eclipse/core/resources/IWorkspace;
            invokeinterface org.eclipse.core.resources.IWorkspace.getRoot:()Lorg/eclipse/core/resources/IWorkspaceRoot;
            aload 4 /* annotationPath */
            invokeinterface org.eclipse.core.resources.IWorkspaceRoot.findMember:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/resources/IResource;
            astore 5 /* resource */
        start local 5 // org.eclipse.core.resources.IResource resource
         7: .line 1370
            aload 5 /* resource */
            ifnull 9
         8: .line 1371
            aload 5 /* resource */
            invokeinterface org.eclipse.core.resources.IResource.getLocation:()Lorg/eclipse/core/runtime/IPath;
            areturn
         9: .line 1372
      StackMap locals: org.eclipse.core.resources.IResource
      StackMap stack:
            new java.io.File
            dup
            aload 4 /* annotationPath */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.exists:()Z
            ifeq 11
        10: .line 1373
            aload 4 /* annotationPath */
            areturn
        11: .line 1375
      StackMap locals:
      StackMap stack:
            aload 1 /* project */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.invalidExternalAnnotationPath:(Lorg/eclipse/core/resources/IProject;)V
        end local 5 // org.eclipse.core.resources.IResource resource
        12: .line 1376
            goto 24
        13: .line 1378
      StackMap locals:
      StackMap stack:
            aload 4 /* annotationPath */
            invokestatic org.eclipse.jdt.core.JavaCore.getResolvedVariablePath:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            astore 5 /* resolved */
        start local 5 // org.eclipse.core.runtime.IPath resolved
        14: .line 1379
            aload 5 /* resolved */
            ifnull 16
        15: .line 1380
            aload 5 /* resolved */
            areturn
        16: .line 1383
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 1 /* project */
            ifnull 24
        17: .line 1384
            iload 2 /* resolve */
            ifeq 23
        18: .line 1385
            aload 1 /* project */
            aload 4 /* annotationPath */
            invokeinterface org.eclipse.core.resources.IProject.findMember:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/resources/IResource;
            astore 6 /* member */
        start local 6 // org.eclipse.core.resources.IResource member
        19: .line 1386
            aload 6 /* member */
            ifnull 21
        20: .line 1387
            aload 6 /* member */
            invokeinterface org.eclipse.core.resources.IResource.getLocation:()Lorg/eclipse/core/runtime/IPath;
            areturn
        21: .line 1388
      StackMap locals: org.eclipse.core.resources.IResource
      StackMap stack:
            aload 1 /* project */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.invalidExternalAnnotationPath:(Lorg/eclipse/core/resources/IProject;)V
        end local 6 // org.eclipse.core.resources.IResource member
        22: .line 1389
            goto 24
        23: .line 1390
      StackMap locals:
      StackMap stack:
            new org.eclipse.core.runtime.Path
            dup
            aload 1 /* project */
            invokeinterface org.eclipse.core.resources.IProject.getName:()Ljava/lang/String;
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            aload 4 /* annotationPath */
            invokevirtual org.eclipse.core.runtime.Path.append:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeAbsolute:()Lorg/eclipse/core/runtime/IPath;
            areturn
        end local 5 // org.eclipse.core.runtime.IPath resolved
        end local 4 // org.eclipse.core.runtime.IPath annotationPath
        24: .line 1395
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.lang.String rawAnnotationPath
        end local 2 // boolean resolve
        end local 1 // org.eclipse.core.resources.IProject project
        end local 0 // org.eclipse.jdt.core.IClasspathEntry entry
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   25     0              entry  Lorg/eclipse/jdt/core/IClasspathEntry;
            0   25     1            project  Lorg/eclipse/core/resources/IProject;
            0   25     2            resolve  Z
            1   25     3  rawAnnotationPath  Ljava/lang/String;
            3   24     4     annotationPath  Lorg/eclipse/core/runtime/IPath;
            7   12     5           resource  Lorg/eclipse/core/resources/IResource;
           14   24     5           resolved  Lorg/eclipse/core/runtime/IPath;
           19   22     6             member  Lorg/eclipse/core/resources/IResource;
    MethodParameters:
         Name  Flags
      entry    
      project  
      resolve  

  static java.lang.String getRawExternalAnnotationPath(org.eclipse.jdt.core.IClasspathEntry);
    descriptor: (Lorg/eclipse/jdt/core/IClasspathEntry;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.core.IClasspathEntry entry
         0: .line 1404
            aload 0 /* entry */
            ldc "annotationpath"
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.getExtraAttribute:(Lorg/eclipse/jdt/core/IClasspathEntry;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // org.eclipse.jdt.core.IClasspathEntry entry
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  entry  Lorg/eclipse/jdt/core/IClasspathEntry;
    MethodParameters:
       Name  Flags
      entry  

  private static void invalidExternalAnnotationPath(org.eclipse.core.resources.IProject);
    descriptor: (Lorg/eclipse/core/resources/IProject;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // org.eclipse.core.resources.IProject project
         0: .line 1409
            aload 0 /* project */
            ldc "org.eclipse.jdt.core.buildpath_problem"
            iconst_0
            iconst_0
            invokeinterface org.eclipse.core.resources.IProject.findMarkers:(Ljava/lang/String;ZI)[Lorg/eclipse/core/resources/IMarker;
            astore 1 /* markers */
        start local 1 // org.eclipse.core.resources.IMarker[] markers
         1: .line 1410
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: aload 1 /* markers */
            arraylength
            istore 3 /* l */
        start local 3 // int l
         3: goto 7
         4: .line 1411
      StackMap locals: org.eclipse.core.resources.IMarker[] int int
      StackMap stack:
            aload 1 /* markers */
            iload 2 /* i */
            aaload
            ldc "severity"
            iconst_m1
            invokeinterface org.eclipse.core.resources.IMarker.getAttribute:(Ljava/lang/String;I)I
            iconst_2
            if_icmpne 6
         5: .line 1412
            return
         6: .line 1410
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            iload 3 /* l */
            if_icmplt 4
        end local 3 // int l
        end local 2 // int i
        end local 1 // org.eclipse.core.resources.IMarker[] markers
         8: .line 1414
            goto 11
      StackMap locals: org.eclipse.core.resources.IProject
      StackMap stack: org.eclipse.core.runtime.CoreException
         9: pop
        10: .line 1415
            return
        11: .line 1418
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.ClasspathValidation
            dup
            aload 0 /* project */
            invokestatic org.eclipse.jdt.core.JavaCore.create:(Lorg/eclipse/core/resources/IProject;)Lorg/eclipse/jdt/core/IJavaProject;
            checkcast org.eclipse.jdt.internal.core.JavaProject
            invokespecial org.eclipse.jdt.internal.core.ClasspathValidation.<init>:(Lorg/eclipse/jdt/internal/core/JavaProject;)V
            invokevirtual org.eclipse.jdt.internal.core.ClasspathValidation.validate:()V
        12: .line 1419
            return
        end local 0 // org.eclipse.core.resources.IProject project
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0  project  Lorg/eclipse/core/resources/IProject;
            1    8     1  markers  [Lorg/eclipse/core/resources/IMarker;
            2    8     2        i  I
            3    8     3        l  I
      Exception table:
        from    to  target  type
           0     5       9  Class org.eclipse.core.runtime.CoreException
           6     8       9  Class org.eclipse.core.runtime.CoreException
    MethodParameters:
         Name  Flags
      project  

  private org.eclipse.jdt.core.IJavaModelStatus validateExternalAnnotationPath(org.eclipse.jdt.core.IJavaProject, org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/jdt/core/IJavaModelStatus;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=4, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // org.eclipse.jdt.core.IJavaProject javaProject
        start local 2 // org.eclipse.core.runtime.IPath annotationPath
         0: .line 1422
            aload 1 /* javaProject */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getProject:()Lorg/eclipse/core/resources/IProject;
            astore 3 /* project */
        start local 3 // org.eclipse.core.resources.IProject project
         1: .line 1423
            aload 2 /* annotationPath */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifeq 5
         2: .line 1424
            aload 3 /* project */
            invokeinterface org.eclipse.core.resources.IProject.getWorkspace:()Lorg/eclipse/core/resources/IWorkspace;
            invokeinterface org.eclipse.core.resources.IWorkspace.getRoot:()Lorg/eclipse/core/resources/IWorkspaceRoot;
            aload 2 /* annotationPath */
            invokeinterface org.eclipse.core.resources.IWorkspaceRoot.exists:(Lorg/eclipse/core/runtime/IPath;)Z
            ifne 4
         3: .line 1425
            new java.io.File
            dup
            aload 2 /* annotationPath */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokevirtual java.io.File.exists:()Z
            ifeq 8
         4: .line 1427
      StackMap locals: org.eclipse.core.resources.IProject
      StackMap stack:
            aconst_null
            areturn
         5: .line 1430
      StackMap locals:
      StackMap stack:
            aload 2 /* annotationPath */
            invokestatic org.eclipse.jdt.core.JavaCore.getResolvedVariablePath:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            ifnonnull 7
         6: .line 1431
            aload 3 /* project */
            aload 2 /* annotationPath */
            invokeinterface org.eclipse.core.resources.IProject.exists:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 8
         7: .line 1433
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
         8: .line 1436
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1014
         9: .line 1437
            aload 1 /* javaProject */
        10: .line 1438
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_invalidExternalAnnotationPath:Ljava/lang/String;
        11: .line 1439
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 2 /* annotationPath */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 3 /* project */
            invokeinterface org.eclipse.core.resources.IProject.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
        12: .line 1438
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        13: .line 1436
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)V
            areturn
        end local 3 // org.eclipse.core.resources.IProject project
        end local 2 // org.eclipse.core.runtime.IPath annotationPath
        end local 1 // org.eclipse.jdt.core.IJavaProject javaProject
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   14     0            this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   14     1     javaProject  Lorg/eclipse/jdt/core/IJavaProject;
            0   14     2  annotationPath  Lorg/eclipse/core/runtime/IPath;
            1   14     3         project  Lorg/eclipse/core/resources/IProject;
    MethodParameters:
                Name  Flags
      javaProject     
      annotationPath  

  public static java.lang.String getExtraAttribute(org.eclipse.jdt.core.IClasspathEntry, java.lang.String);
    descriptor: (Lorg/eclipse/jdt/core/IClasspathEntry;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.eclipse.jdt.core.IClasspathEntry entry
        start local 1 // java.lang.String attributeName
         0: .line 1443
            aload 0 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getExtraAttributes:()[Lorg/eclipse/jdt/core/IClasspathAttribute;
            astore 2 /* extraAttributes */
        start local 2 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
         1: .line 1444
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: aload 2 /* extraAttributes */
            arraylength
            istore 4 /* length */
        start local 4 // int length
         3: goto 8
         4: .line 1445
      StackMap locals: org.eclipse.jdt.core.IClasspathAttribute[] int int
      StackMap stack:
            aload 2 /* extraAttributes */
            iload 3 /* i */
            aaload
            astore 5 /* attribute */
        start local 5 // org.eclipse.jdt.core.IClasspathAttribute attribute
         5: .line 1446
            aload 1 /* attributeName */
            aload 5 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 1447
            aload 5 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getValue:()Ljava/lang/String;
            areturn
        end local 5 // org.eclipse.jdt.core.IClasspathAttribute attribute
         7: .line 1444
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            iload 4 /* length */
            if_icmplt 4
        end local 4 // int length
        end local 3 // int i
         9: .line 1450
            aconst_null
            areturn
        end local 2 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
        end local 1 // java.lang.String attributeName
        end local 0 // org.eclipse.jdt.core.IClasspathEntry entry
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0            entry  Lorg/eclipse/jdt/core/IClasspathEntry;
            0   10     1    attributeName  Ljava/lang/String;
            1   10     2  extraAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
            2    9     3                i  I
            3    9     4           length  I
            5    7     5        attribute  Lorg/eclipse/jdt/core/IClasspathAttribute;
    MethodParameters:
               Name  Flags
      entry          
      attributeName  

  public org.eclipse.jdt.core.IClasspathEntry getReferencingEntry();
    descriptor: ()Lorg/eclipse/jdt/core/IClasspathEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1455
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.referencingEntry:Lorg/eclipse/jdt/core/IClasspathEntry;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  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.ClasspathEntry this
         0: .line 1463
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.Object.hashCode:()I
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public boolean isExported();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1471
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.isExported:Z
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public boolean isOptional();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1475
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            arraylength
            istore 2 /* length */
        start local 2 // int length
         2: goto 7
         3: .line 1476
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            iload 1 /* i */
            aaload
            astore 3 /* attribute */
        start local 3 // org.eclipse.jdt.core.IClasspathAttribute attribute
         4: .line 1477
            ldc "optional"
            aload 3 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
            ldc "true"
            aload 3 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getValue:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 1478
            iconst_1
            ireturn
        end local 3 // org.eclipse.jdt.core.IClasspathAttribute attribute
         6: .line 1475
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            iload 2 /* length */
            if_icmplt 3
        end local 2 // int length
        end local 1 // int i
         8: .line 1480
            iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            1    8     1          i  I
            2    8     2     length  I
            4    6     3  attribute  Lorg/eclipse/jdt/core/IClasspathAttribute;

  public boolean isModular();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1483
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            arraylength
            istore 2 /* length */
        start local 2 // int length
         2: goto 7
         3: .line 1484
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            iload 1 /* i */
            aaload
            astore 3 /* attribute */
        start local 3 // org.eclipse.jdt.core.IClasspathAttribute attribute
         4: .line 1485
            ldc "module"
            aload 3 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
            ldc "true"
            aload 3 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getValue:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 1486
            iconst_1
            ireturn
        end local 3 // org.eclipse.jdt.core.IClasspathAttribute attribute
         6: .line 1483
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            iload 2 /* length */
            if_icmplt 3
        end local 2 // int length
        end local 1 // int i
         8: .line 1488
            iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            1    8     1          i  I
            2    8     2     length  I
            4    6     3  attribute  Lorg/eclipse/jdt/core/IClasspathAttribute;

  public java.lang.String getSourceAttachmentEncoding();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1492
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            arraylength
            istore 2 /* length */
        start local 2 // int length
         2: goto 7
         3: .line 1493
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            iload 1 /* i */
            aaload
            astore 3 /* attribute */
        start local 3 // org.eclipse.jdt.core.IClasspathAttribute attribute
         4: .line 1494
            ldc "source_encoding"
            aload 3 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 1495
            aload 3 /* attribute */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getValue:()Ljava/lang/String;
            areturn
        end local 3 // org.eclipse.jdt.core.IClasspathAttribute attribute
         6: .line 1492
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            iload 2 /* length */
            if_icmplt 3
        end local 2 // int length
        end local 1 // int i
         8: .line 1497
            aconst_null
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            1    8     1          i  I
            2    8     2     length  I
            4    6     3  attribute  Lorg/eclipse/jdt/core/IClasspathAttribute;

  static int kindFromString(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String kindStr
         0: .line 1505
            aload 0 /* kindStr */
            ldc "prj"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 1506
            iconst_2
            ireturn
         2: .line 1507
      StackMap locals:
      StackMap stack:
            aload 0 /* kindStr */
            ldc "var"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 4
         3: .line 1508
            iconst_4
            ireturn
         4: .line 1509
      StackMap locals:
      StackMap stack:
            aload 0 /* kindStr */
            ldc "con"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 6
         5: .line 1510
            iconst_5
            ireturn
         6: .line 1511
      StackMap locals:
      StackMap stack:
            aload 0 /* kindStr */
            ldc "src"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 8
         7: .line 1512
            iconst_3
            ireturn
         8: .line 1513
      StackMap locals:
      StackMap stack:
            aload 0 /* kindStr */
            ldc "lib"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 10
         9: .line 1514
            iconst_1
            ireturn
        10: .line 1515
      StackMap locals:
      StackMap stack:
            aload 0 /* kindStr */
            ldc "output"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 12
        11: .line 1516
            bipush 10
            ireturn
        12: .line 1517
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 0 // java.lang.String kindStr
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0  kindStr  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      kindStr  

  static java.lang.String kindToString(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int kind
         0: .line 1525
            iload 0 /* kind */
            tableswitch { // 1 - 10
                    1: 3
                    2: 1
                    3: 2
                    4: 4
                    5: 5
                    6: 7
                    7: 7
                    8: 7
                    9: 7
                   10: 6
              default: 7
          }
         1: .line 1527
      StackMap locals:
      StackMap stack:
            ldc "src"
            areturn
         2: .line 1529
      StackMap locals:
      StackMap stack:
            ldc "src"
            areturn
         3: .line 1531
      StackMap locals:
      StackMap stack:
            ldc "lib"
            areturn
         4: .line 1533
      StackMap locals:
      StackMap stack:
            ldc "var"
            areturn
         5: .line 1535
      StackMap locals:
      StackMap stack:
            ldc "con"
            areturn
         6: .line 1537
      StackMap locals:
      StackMap stack:
            ldc "output"
            areturn
         7: .line 1539
      StackMap locals:
      StackMap stack:
            ldc "unknown"
            areturn
        end local 0 // int kind
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  kind  I
    MethodParameters:
      Name  Flags
      kind  

  public static org.eclipse.jdt.core.IAccessRule[] getAccessRules(org.eclipse.core.runtime.IPath[], org.eclipse.core.runtime.IPath[]);
    descriptor: ([Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;)[Lorg/eclipse/jdt/core/IAccessRule;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.eclipse.core.runtime.IPath[] accessibleFiles
        start local 1 // org.eclipse.core.runtime.IPath[] nonAccessibleFiles
         0: .line 1547
            aload 0 /* accessibleFiles */
            ifnonnull 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* accessibleFiles */
            arraylength
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* accessibleFilesLength */
        start local 2 // int accessibleFilesLength
         3: .line 1548
            aload 1 /* nonAccessibleFiles */
            ifnonnull 4
            iconst_0
            goto 5
      StackMap locals: int
      StackMap stack:
         4: aload 1 /* nonAccessibleFiles */
            arraylength
      StackMap locals:
      StackMap stack: int
         5: istore 3 /* nonAccessibleFilesLength */
        start local 3 // int nonAccessibleFilesLength
         6: .line 1549
            iload 2 /* accessibleFilesLength */
            iload 3 /* nonAccessibleFilesLength */
            iadd
            istore 4 /* length */
        start local 4 // int length
         7: .line 1550
            iload 4 /* length */
            ifne 8
            aconst_null
            areturn
         8: .line 1551
      StackMap locals: int int
      StackMap stack:
            iload 4 /* length */
            anewarray org.eclipse.jdt.core.IAccessRule
            astore 5 /* accessRules */
        start local 5 // org.eclipse.jdt.core.IAccessRule[] accessRules
         9: .line 1552
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 13
        11: .line 1553
      StackMap locals: org.eclipse.jdt.core.IAccessRule[] int
      StackMap stack:
            aload 5 /* accessRules */
            iload 6 /* i */
            aload 0 /* accessibleFiles */
            iload 6 /* i */
            aaload
            iconst_0
            invokestatic org.eclipse.jdt.core.JavaCore.newAccessRule:(Lorg/eclipse/core/runtime/IPath;I)Lorg/eclipse/jdt/core/IAccessRule;
            aastore
        12: .line 1552
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 6 /* i */
            iload 2 /* accessibleFilesLength */
            if_icmplt 11
        end local 6 // int i
        14: .line 1555
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        15: goto 18
        16: .line 1556
      StackMap locals:
      StackMap stack:
            aload 5 /* accessRules */
            iload 2 /* accessibleFilesLength */
            iload 6 /* i */
            iadd
            aload 1 /* nonAccessibleFiles */
            iload 6 /* i */
            aaload
            iconst_1
            invokestatic org.eclipse.jdt.core.JavaCore.newAccessRule:(Lorg/eclipse/core/runtime/IPath;I)Lorg/eclipse/jdt/core/IAccessRule;
            aastore
        17: .line 1555
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 6 /* i */
            iload 3 /* nonAccessibleFilesLength */
            if_icmplt 16
        end local 6 // int i
        19: .line 1558
            aload 5 /* accessRules */
            areturn
        end local 5 // org.eclipse.jdt.core.IAccessRule[] accessRules
        end local 4 // int length
        end local 3 // int nonAccessibleFilesLength
        end local 2 // int accessibleFilesLength
        end local 1 // org.eclipse.core.runtime.IPath[] nonAccessibleFiles
        end local 0 // org.eclipse.core.runtime.IPath[] accessibleFiles
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   20     0           accessibleFiles  [Lorg/eclipse/core/runtime/IPath;
            0   20     1        nonAccessibleFiles  [Lorg/eclipse/core/runtime/IPath;
            3   20     2     accessibleFilesLength  I
            6   20     3  nonAccessibleFilesLength  I
            7   20     4                    length  I
            9   20     5               accessRules  [Lorg/eclipse/jdt/core/IAccessRule;
           10   14     6                         i  I
           15   19     6                         i  I
    MethodParameters:
                    Name  Flags
      accessibleFiles     
      nonAccessibleFiles  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1566
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 1 /* buffer */
        start local 1 // java.lang.StringBuffer buffer
         1: .line 1567
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            astore 2 /* target */
        start local 2 // java.lang.Object target
         2: .line 1568
            aload 2 /* target */
            instanceof java.io.File
            ifeq 4
         3: .line 1569
            aload 1 /* buffer */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
            goto 5
         4: .line 1571
      StackMap locals: java.lang.StringBuffer java.lang.Object
      StackMap stack:
            aload 1 /* buffer */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         5: .line 1572
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            bipush 91
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
         6: .line 1573
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getEntryKind:()I
            tableswitch { // 1 - 5
                    1: 7
                    2: 9
                    3: 11
                    4: 13
                    5: 15
              default: 16
          }
         7: .line 1575
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "CPE_LIBRARY"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         8: .line 1576
            goto 16
         9: .line 1578
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "CPE_PROJECT"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        10: .line 1579
            goto 16
        11: .line 1581
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "CPE_SOURCE"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        12: .line 1582
            goto 16
        13: .line 1584
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "CPE_VARIABLE"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        14: .line 1585
            goto 16
        15: .line 1587
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "CPE_CONTAINER"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        16: .line 1590
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "]["
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        17: .line 1591
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getContentKind:()I
            lookupswitch { // 3
                    1: 20
                    2: 18
                   10: 22
              default: 23
          }
        18: .line 1593
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "K_BINARY"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        19: .line 1594
            goto 23
        20: .line 1596
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "K_SOURCE"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        21: .line 1597
            goto 23
        22: .line 1599
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "K_OUTPUT"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        23: .line 1602
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        24: .line 1603
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
            ifnull 28
        25: .line 1604
            aload 1 /* buffer */
            ldc "[sourcePath:"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        26: .line 1605
            aload 1 /* buffer */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
        27: .line 1606
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        28: .line 1608
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentRootPath:()Lorg/eclipse/core/runtime/IPath;
            ifnull 32
        29: .line 1609
            aload 1 /* buffer */
            ldc "[rootPath:"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        30: .line 1610
            aload 1 /* buffer */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentRootPath:()Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
        31: .line 1611
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        32: .line 1613
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            ldc "[isExported:"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        33: .line 1614
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.isExported:Z
            invokevirtual java.lang.StringBuffer.append:(Z)Ljava/lang/StringBuffer;
            pop
        34: .line 1615
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        35: .line 1616
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            astore 3 /* patterns */
        start local 3 // org.eclipse.core.runtime.IPath[] patterns
        36: .line 1618
            aload 3 /* patterns */
            ifnonnull 37
            iconst_0
            goto 38
      StackMap locals: org.eclipse.core.runtime.IPath[]
      StackMap stack:
        37: aload 3 /* patterns */
            arraylength
      StackMap locals:
      StackMap stack: int
        38: dup
            istore 4 /* length */
        start local 4 // int length
        39: ifle 49
        40: .line 1619
            aload 1 /* buffer */
            ldc "[including:"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        41: .line 1620
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        42: goto 47
        43: .line 1621
      StackMap locals: int int
      StackMap stack:
            aload 1 /* buffer */
            aload 3 /* patterns */
            iload 5 /* i */
            aaload
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
        44: .line 1622
            iload 5 /* i */
            iload 4 /* length */
            iconst_1
            isub
            if_icmpeq 46
        45: .line 1623
            aload 1 /* buffer */
            bipush 124
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        46: .line 1620
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        47: iload 5 /* i */
            iload 4 /* length */
            if_icmplt 43
        end local 5 // int i
        48: .line 1626
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        49: .line 1628
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
            astore 3 /* patterns */
        50: .line 1629
            aload 3 /* patterns */
            ifnonnull 51
            iconst_0
            goto 52
      StackMap locals:
      StackMap stack:
        51: aload 3 /* patterns */
            arraylength
      StackMap locals:
      StackMap stack: int
        52: dup
            istore 4 /* length */
            ifle 62
        53: .line 1630
            aload 1 /* buffer */
            ldc "[excluding:"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        54: .line 1631
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        55: goto 60
        56: .line 1632
      StackMap locals: int
      StackMap stack:
            aload 1 /* buffer */
            aload 3 /* patterns */
            iload 5 /* i */
            aaload
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
        57: .line 1633
            iload 5 /* i */
            iload 4 /* length */
            iconst_1
            isub
            if_icmpeq 59
        58: .line 1634
            aload 1 /* buffer */
            bipush 124
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        59: .line 1631
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        60: iload 5 /* i */
            iload 4 /* length */
            if_icmplt 56
        end local 5 // int i
        61: .line 1637
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        62: .line 1639
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.accessRuleSet:Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            ifnull 66
        63: .line 1640
            aload 1 /* buffer */
            bipush 91
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        64: .line 1641
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.accessRuleSet:Lorg/eclipse/jdt/internal/compiler/env/AccessRuleSet;
            iconst_0
            invokevirtual org.eclipse.jdt.internal.compiler.env.AccessRuleSet.toString:(Z)Ljava/lang/String;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        65: .line 1642
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        66: .line 1644
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            iconst_2
            if_icmpne 70
        67: .line 1645
            aload 1 /* buffer */
            ldc "[combine access rules:"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        68: .line 1646
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:Z
            invokevirtual java.lang.StringBuffer.append:(Z)Ljava/lang/StringBuffer;
            pop
        69: .line 1647
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        70: .line 1649
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
            ifnull 74
        71: .line 1650
            aload 1 /* buffer */
            ldc "[output:"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        72: .line 1651
            aload 1 /* buffer */
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
        73: .line 1652
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        74: .line 1654
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            ifnonnull 75
            iconst_0
            goto 76
      StackMap locals:
      StackMap stack:
        75: aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            arraylength
      StackMap locals:
      StackMap stack: int
        76: dup
            istore 4 /* length */
            ifle 86
        77: .line 1655
            aload 1 /* buffer */
            ldc "[attributes:"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        78: .line 1656
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        79: goto 84
        80: .line 1657
      StackMap locals: int
      StackMap stack:
            aload 1 /* buffer */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            iload 5 /* i */
            aaload
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer;
            pop
        81: .line 1658
            iload 5 /* i */
            iload 4 /* length */
            iconst_1
            isub
            if_icmpeq 83
        82: .line 1659
            aload 1 /* buffer */
            bipush 44
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        83: .line 1656
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        84: iload 5 /* i */
            iload 4 /* length */
            if_icmplt 80
        end local 5 // int i
        85: .line 1662
            aload 1 /* buffer */
            bipush 93
            invokevirtual java.lang.StringBuffer.append:(C)Ljava/lang/StringBuffer;
            pop
        86: .line 1664
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
            areturn
        end local 4 // int length
        end local 3 // org.eclipse.core.runtime.IPath[] patterns
        end local 2 // java.lang.Object target
        end local 1 // java.lang.StringBuffer buffer
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   87     0      this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            1   87     1    buffer  Ljava/lang/StringBuffer;
            2   87     2    target  Ljava/lang/Object;
           36   87     3  patterns  [Lorg/eclipse/core/runtime/IPath;
           39   87     4    length  I
           42   48     5         i  I
           55   61     5         i  I
           79   85     5         i  I

  public org.eclipse.jdt.internal.core.ClasspathEntry resolvedDotDot(org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/jdt/internal/core/ClasspathEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=15, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
        start local 1 // org.eclipse.core.runtime.IPath reference
         0: .line 1668
            aload 1 /* reference */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.resolveDotDot:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            astore 2 /* resolvedPath */
        start local 2 // org.eclipse.core.runtime.IPath resolvedPath
         1: .line 1669
            aload 2 /* resolvedPath */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            if_acmpne 3
         2: .line 1670
            aload 0 /* this */
            areturn
         3: .line 1671
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
            new org.eclipse.jdt.internal.core.ClasspathEntry
            dup
         4: .line 1672
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getContentKind:()I
         5: .line 1673
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getEntryKind:()I
         6: .line 1674
            aload 2 /* resolvedPath */
         7: .line 1675
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
         8: .line 1676
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
         9: .line 1677
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
        10: .line 1678
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getSourceAttachmentRootPath:()Lorg/eclipse/core/runtime/IPath;
        11: .line 1679
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
        12: .line 1680
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getReferencingEntry:()Lorg/eclipse/jdt/core/IClasspathEntry;
        13: .line 1681
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.isExported:Z
        14: .line 1682
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRules:()[Lorg/eclipse/jdt/core/IAccessRule;
        15: .line 1683
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:Z
        16: .line 1684
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
        17: .line 1671
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry.<init>:(IILorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IClasspathEntry;Z[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;)V
            areturn
        end local 2 // org.eclipse.core.runtime.IPath resolvedPath
        end local 1 // org.eclipse.core.runtime.IPath reference
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            0   18     1     reference  Lorg/eclipse/core/runtime/IPath;
            1   18     2  resolvedPath  Lorg/eclipse/core/runtime/IPath;
    MethodParameters:
           Name  Flags
      reference  

  public org.eclipse.jdt.internal.core.ClasspathEntry[] resolvedChainedLibraries();
    descriptor: ()[Lorg/eclipse/jdt/internal/core/ClasspathEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=17, locals=5, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1692
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.resolvedChainedLibraries:(Lorg/eclipse/core/runtime/IPath;)[Lorg/eclipse/core/runtime/IPath;
            astore 1 /* paths */
        start local 1 // org.eclipse.core.runtime.IPath[] paths
         1: .line 1693
            aload 1 /* paths */
            arraylength
            istore 2 /* length */
        start local 2 // int length
         2: .line 1694
            iload 2 /* length */
            ifne 4
         3: .line 1695
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_ENTRIES:[Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            areturn
         4: .line 1696
      StackMap locals: org.eclipse.core.runtime.IPath[] int
      StackMap stack:
            iload 2 /* length */
            anewarray org.eclipse.jdt.internal.core.ClasspathEntry
            astore 3 /* result */
        start local 3 // org.eclipse.jdt.internal.core.ClasspathEntry[] result
         5: .line 1697
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 23
         7: .line 1699
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry[] int
      StackMap stack:
            aload 3 /* result */
            iload 4 /* i */
            new org.eclipse.jdt.internal.core.ClasspathEntry
            dup
         8: .line 1700
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getContentKind:()I
         9: .line 1701
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getEntryKind:()I
        10: .line 1702
            aload 1 /* paths */
            iload 4 /* i */
            aaload
        11: .line 1703
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.inclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
        12: .line 1704
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.exclusionPatterns:[Lorg/eclipse/core/runtime/IPath;
        13: .line 1705
            aconst_null
        14: .line 1706
            aconst_null
        15: .line 1707
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
        16: .line 1708
            aload 0 /* this */
        17: .line 1709
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.isExported:Z
        18: .line 1710
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getAccessRules:()[Lorg/eclipse/jdt/core/IAccessRule;
        19: .line 1711
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.combineAccessRules:Z
        20: .line 1712
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.NO_EXTRA_ATTRIBUTES:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry.<init>:(IILorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IClasspathEntry;Z[Lorg/eclipse/jdt/core/IAccessRule;Z[Lorg/eclipse/jdt/core/IClasspathAttribute;)V
        21: .line 1699
            aastore
        22: .line 1697
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 4 /* i */
            iload 2 /* length */
            if_icmplt 7
        end local 4 // int i
        24: .line 1714
            aload 3 /* result */
            areturn
        end local 3 // org.eclipse.jdt.internal.core.ClasspathEntry[] result
        end local 2 // int length
        end local 1 // org.eclipse.core.runtime.IPath[] paths
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   25     0    this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            1   25     1   paths  [Lorg/eclipse/core/runtime/IPath;
            2   25     2  length  I
            5   25     3  result  [Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            6   24     4       i  I

  public java.lang.String rootID();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1723
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.rootID:Ljava/lang/String;
            ifnonnull 13
         1: .line 1724
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            tableswitch { // 1 - 5
                    1: 2
                    2: 4
                    3: 6
                    4: 8
                    5: 10
              default: 12
          }
         2: .line 1726
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "[LIB]"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.rootID:Ljava/lang/String;
         3: .line 1727
            goto 13
         4: .line 1729
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "[PRJ]"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.rootID:Ljava/lang/String;
         5: .line 1730
            goto 13
         6: .line 1732
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "[SRC]"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.rootID:Ljava/lang/String;
         7: .line 1733
            goto 13
         8: .line 1735
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "[VAR]"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.rootID:Ljava/lang/String;
         9: .line 1736
            goto 13
        10: .line 1738
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "[CON]"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.path:Lorg/eclipse/core/runtime/IPath;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.rootID:Ljava/lang/String;
        11: .line 1739
            goto 13
        12: .line 1741
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc ""
            putfield org.eclipse.jdt.internal.core.ClasspathEntry.rootID:Ljava/lang/String;
        13: .line 1745
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.rootID:Ljava/lang/String;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public org.eclipse.jdt.core.IClasspathEntry getResolvedEntry();
    descriptor: ()Lorg/eclipse/jdt/core/IClasspathEntry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1755
            aload 0 /* this */
            invokestatic org.eclipse.jdt.core.JavaCore.getResolvedClasspathEntry:(Lorg/eclipse/jdt/core/IClasspathEntry;)Lorg/eclipse/jdt/core/IClasspathEntry;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;

  public java.net.URL getLibraryIndexLocation();
    descriptor: ()Ljava/net/URL;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=4, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1763
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getEntryKind:()I
            tableswitch { // 1 - 4
                    1: 1
                    2: 12
                    3: 12
                    4: 11
              default: 12
          }
         1: .line 1765
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.SHARED_INDEX_LOCATION:Ljava/lang/String;
            ifnull 13
         2: .line 1767
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toPortableString:()Ljava/lang/String;
            astore 1 /* pathString */
        start local 1 // java.lang.String pathString
         3: .line 1768
            new java.util.zip.CRC32
            dup
            invokespecial java.util.zip.CRC32.<init>:()V
            astore 2 /* checksumCalculator */
        start local 2 // java.util.zip.CRC32 checksumCalculator
         4: .line 1769
            aload 2 /* checksumCalculator */
            aload 1 /* pathString */
            invokevirtual java.lang.String.getBytes:()[B
            invokevirtual java.util.zip.CRC32.update:([B)V
         5: .line 1770
            new java.lang.StringBuilder
            dup
            aload 2 /* checksumCalculator */
            invokevirtual java.util.zip.CRC32.getValue:()J
            invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".index"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* fileName */
        start local 3 // java.lang.String fileName
         6: .line 1771
            new java.net.URL
            dup
            ldc "file"
            aconst_null
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.SHARED_INDEX_LOCATION:Ljava/lang/String;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* fileName */
            aastore
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            invokespecial java.net.URL.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         7: areturn
        end local 3 // java.lang.String fileName
        end local 2 // java.util.zip.CRC32 checksumCalculator
        end local 1 // java.lang.String pathString
         8: .line 1772
      StackMap locals:
      StackMap stack: java.net.MalformedURLException
            astore 1 /* e1 */
        start local 1 // java.net.MalformedURLException e1
         9: .line 1773
            aload 1 /* e1 */
            invokestatic org.eclipse.jdt.internal.core.util.Util.log:(Ljava/lang/Throwable;)V
        end local 1 // java.net.MalformedURLException e1
        10: .line 1776
            goto 13
        11: .line 1778
      StackMap locals:
      StackMap stack:
            goto 13
        12: .line 1780
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        13: .line 1782
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            ifnonnull 14
            aconst_null
            areturn
        14: .line 1783
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
        15: goto 24
        16: .line 1784
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            iload 1 /* i */
            aaload
            astore 2 /* attrib */
        start local 2 // org.eclipse.jdt.core.IClasspathAttribute attrib
        17: .line 1785
            ldc "index_location"
            aload 2 /* attrib */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        18: .line 1786
            aload 2 /* attrib */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getValue:()Ljava/lang/String;
            astore 3 /* value */
        start local 3 // java.lang.String value
        19: .line 1788
            new java.net.URL
            dup
            aload 3 /* value */
            invokespecial java.net.URL.<init>:(Ljava/lang/String;)V
        20: areturn
        21: .line 1789
      StackMap locals: org.eclipse.jdt.internal.core.ClasspathEntry int org.eclipse.jdt.core.IClasspathAttribute java.lang.String
      StackMap stack: java.net.MalformedURLException
            pop
        22: .line 1790
            aconst_null
            areturn
        end local 3 // java.lang.String value
        end local 2 // org.eclipse.jdt.core.IClasspathAttribute attrib
        23: .line 1783
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 1 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            arraylength
            if_icmplt 16
        end local 1 // int i
        25: .line 1794
            aconst_null
            areturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   26     0                this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            3    8     1          pathString  Ljava/lang/String;
            4    8     2  checksumCalculator  Ljava/util/zip/CRC32;
            6    8     3            fileName  Ljava/lang/String;
            9   10     1                  e1  Ljava/net/MalformedURLException;
           15   25     1                   i  I
           17   23     2              attrib  Lorg/eclipse/jdt/core/IClasspathAttribute;
           19   23     3               value  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2     7       8  Class java.net.MalformedURLException
          19    20      21  Class java.net.MalformedURLException

  public boolean ignoreOptionalProblems();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
         0: .line 1798
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.entryKind:I
            iconst_3
            if_icmpne 8
         1: .line 1799
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         2: goto 7
         3: .line 1800
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            iload 1 /* i */
            aaload
            astore 2 /* attrib */
        start local 2 // org.eclipse.jdt.core.IClasspathAttribute attrib
         4: .line 1801
            ldc "ignore_optional_problems"
            aload 2 /* attrib */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 1802
            ldc "true"
            aload 2 /* attrib */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getValue:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // org.eclipse.jdt.core.IClasspathAttribute attrib
         6: .line 1799
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.ClasspathEntry.extraAttributes:[Lorg/eclipse/jdt/core/IClasspathAttribute;
            arraylength
            if_icmplt 3
        end local 1 // int i
         8: .line 1806
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.eclipse.jdt.internal.core.ClasspathEntry this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/eclipse/jdt/internal/core/ClasspathEntry;
            2    8     1       i  I
            4    6     2  attrib  Lorg/eclipse/jdt/core/IClasspathAttribute;

  public static org.eclipse.jdt.core.IJavaModelStatus validateClasspath(org.eclipse.jdt.core.IJavaProject, org.eclipse.jdt.core.IClasspathEntry[], org.eclipse.core.runtime.IPath);
    descriptor: (Lorg/eclipse/jdt/core/IJavaProject;[Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/jdt/core/IJavaModelStatus;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=37, args_size=3
        start local 0 // org.eclipse.jdt.core.IJavaProject javaProject
        start local 1 // org.eclipse.jdt.core.IClasspathEntry[] rawClasspath
        start local 2 // org.eclipse.core.runtime.IPath projectOutputLocation
         0: .line 1841
            aload 0 /* javaProject */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getProject:()Lorg/eclipse/core/resources/IProject;
            astore 3 /* project */
        start local 3 // org.eclipse.core.resources.IProject project
         1: .line 1842
            aload 3 /* project */
            invokeinterface org.eclipse.core.resources.IProject.getFullPath:()Lorg/eclipse/core/runtime/IPath;
            astore 4 /* projectPath */
        start local 4 // org.eclipse.core.runtime.IPath projectPath
         2: .line 1843
            aload 0 /* javaProject */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            astore 5 /* projectName */
        start local 5 // java.lang.String projectName
         3: .line 1846
            aload 2 /* projectOutputLocation */
            ifnonnull 5
         4: .line 1847
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 970
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(I)V
            areturn
         5: .line 1849
      StackMap locals: org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String
      StackMap stack:
            aload 2 /* projectOutputLocation */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifeq 8
         6: .line 1850
            aload 4 /* projectPath */
            aload 2 /* projectOutputLocation */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifne 9
         7: .line 1851
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 971
            aload 0 /* javaProject */
            aload 2 /* projectOutputLocation */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)V
            areturn
         8: .line 1854
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 972
            aload 2 /* projectOutputLocation */
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/core/runtime/IPath;)V
            areturn
         9: .line 1857
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 6 /* hasSource */
        start local 6 // boolean hasSource
        10: .line 1858
            iconst_0
            istore 7 /* hasLibFolder */
        start local 7 // boolean hasLibFolder
        11: .line 1862
            aload 1 /* rawClasspath */
            ifnonnull 13
        12: .line 1863
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            areturn
        13: .line 1866
      StackMap locals: int int
      StackMap stack:
            aload 1 /* rawClasspath */
            arraylength
            istore 8 /* rawLength */
        start local 8 // int rawLength
        14: .line 1867
            new java.util.HashSet
            dup
            iload 8 /* rawLength */
            invokespecial java.util.HashSet.<init>:(I)V
            astore 9 /* pathes */
        start local 9 // java.util.HashSet pathes
        15: .line 1868
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        16: goto 24
        17: .line 1869
      StackMap locals: int java.util.HashSet int
      StackMap stack:
            aload 1 /* rawClasspath */
            iload 10 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 11 /* entryPath */
        start local 11 // org.eclipse.core.runtime.IPath entryPath
        18: .line 1870
            aload 9 /* pathes */
            aload 11 /* entryPath */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            ifne 23
        19: .line 1871
            aload 5 /* projectName */
            aload 11 /* entryPath */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 20
            aload 11 /* entryPath */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            goto 21
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
        20: aload 11 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        21: astore 12 /* entryPathMsg */
        start local 12 // java.lang.String entryPathMsg
        22: .line 1872
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 977
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_duplicateEntryPath:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 12 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 5 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 12 // java.lang.String entryPathMsg
        end local 11 // org.eclipse.core.runtime.IPath entryPath
        23: .line 1868
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 10 /* i */
            iload 8 /* rawLength */
            if_icmplt 17
        end local 10 // int i
        25: .line 1880
            aload 0 /* javaProject */
            checkcast org.eclipse.jdt.internal.core.JavaProject
            aload 1 /* rawClasspath */
            iconst_0
            iconst_0
            invokevirtual org.eclipse.jdt.internal.core.JavaProject.resolveClasspath:([Lorg/eclipse/jdt/core/IClasspathEntry;ZZ)Lorg/eclipse/jdt/internal/core/JavaProject$ResolvedClasspath;
            getfield org.eclipse.jdt.internal.core.JavaProject$ResolvedClasspath.resolvedClasspath:[Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 10 /* classpath */
        start local 10 // org.eclipse.jdt.core.IClasspathEntry[] classpath
        26: .line 1881
            goto 29
        end local 10 // org.eclipse.jdt.core.IClasspathEntry[] classpath
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        27: astore 11 /* e */
        start local 11 // org.eclipse.jdt.core.JavaModelException e
        28: .line 1882
            aload 11 /* e */
            invokevirtual org.eclipse.jdt.core.JavaModelException.getJavaModelStatus:()Lorg/eclipse/jdt/core/IJavaModelStatus;
            areturn
        end local 11 // org.eclipse.jdt.core.JavaModelException e
        start local 10 // org.eclipse.jdt.core.IClasspathEntry[] classpath
        29: .line 1885
      StackMap locals: org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iconst_1
            istore 11 /* outputCount */
        start local 11 // int outputCount
        30: .line 1886
            aload 10 /* classpath */
            arraylength
            iconst_1
            iadd
            anewarray org.eclipse.core.runtime.IPath
            astore 12 /* outputLocations */
        start local 12 // org.eclipse.core.runtime.IPath[] outputLocations
        31: .line 1887
            aload 10 /* classpath */
            arraylength
            iconst_1
            iadd
            newarray 4
            astore 13 /* allowNestingInOutputLocations */
        start local 13 // boolean[] allowNestingInOutputLocations
        32: .line 1888
            aload 12 /* outputLocations */
            iconst_0
            aload 2 /* projectOutputLocation */
            aastore
        33: .line 1891
            aconst_null
            astore 14 /* potentialNestedOutput */
        start local 14 // org.eclipse.core.runtime.IPath potentialNestedOutput
        34: .line 1892
            iconst_0
            istore 15 /* sourceEntryCount */
        start local 15 // int sourceEntryCount
        35: .line 1893
            ldc "disabled"
            aload 0 /* javaProject */
            ldc "org.eclipse.jdt.core.classpath.exclusionPatterns"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 16 /* disableExclusionPatterns */
        start local 16 // boolean disableExclusionPatterns
        36: .line 1894
            ldc "disabled"
            aload 0 /* javaProject */
            ldc "org.eclipse.jdt.core.classpath.multipleOutputLocations"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 17 /* disableCustomOutputLocations */
        start local 17 // boolean disableCustomOutputLocations
        37: .line 1895
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 18 /* testSourcesFolders */
        start local 18 // java.util.ArrayList testSourcesFolders
        38: .line 1896
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 19 /* mainOutputLocations */
        start local 19 // java.util.HashSet mainOutputLocations
        39: .line 1897
            aload 10 /* classpath */
            dup
            astore 23
            arraylength
            istore 22
            iconst_0
            istore 21
            goto 64
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
        40: aload 23
            iload 21
            aaload
            astore 20 /* resolvedEntry */
        start local 20 // org.eclipse.jdt.core.IClasspathEntry resolvedEntry
        41: .line 1898
            iload 16 /* disableExclusionPatterns */
            ifeq 45
        42: .line 1899
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getInclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            ifnull 43
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getInclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            arraylength
            ifgt 44
        43: .line 1900
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getExclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            ifnull 45
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getExclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            arraylength
            ifle 45
        44: .line 1901
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1002
            aload 0 /* javaProject */
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;)V
            areturn
        45: .line 1903
      StackMap locals:
      StackMap stack:
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            tableswitch { // 3 - 3
                    3: 46
              default: 63
          }
        46: .line 1905
      StackMap locals:
      StackMap stack:
            iinc 15 /* sourceEntryCount */ 1
        47: .line 1906
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.isTest:()Z
            istore 24 /* isTest */
        start local 24 // boolean isTest
        48: .line 1907
            iload 24 /* isTest */
            ifeq 50
        49: .line 1908
            aload 18 /* testSourcesFolders */
            aload 20 /* resolvedEntry */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        50: .line 1912
      StackMap locals: int
      StackMap stack:
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
            dup
            astore 25 /* customOutput */
        start local 25 // org.eclipse.core.runtime.IPath customOutput
        51: ifnull 63
        52: .line 1914
            iload 17 /* disableCustomOutputLocations */
            ifeq 54
        53: .line 1915
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1003
            aload 0 /* javaProject */
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;)V
            areturn
        54: .line 1918
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 25 /* customOutput */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifeq 57
        55: .line 1919
            aload 0 /* javaProject */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getPath:()Lorg/eclipse/core/runtime/IPath;
            aload 25 /* customOutput */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifne 58
        56: .line 1920
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 971
            aload 0 /* javaProject */
            aload 25 /* customOutput */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Ljava/lang/String;)V
            areturn
        57: .line 1923
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 972
            aload 25 /* customOutput */
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/core/runtime/IPath;)V
            areturn
        58: .line 1925
      StackMap locals:
      StackMap stack:
            iload 24 /* isTest */
            ifne 60
        59: .line 1926
            aload 19 /* mainOutputLocations */
            aload 25 /* customOutput */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        60: .line 1930
      StackMap locals:
      StackMap stack:
            aload 25 /* customOutput */
            aload 12 /* outputLocations */
            iload 11 /* outputCount */
            invokestatic org.eclipse.jdt.internal.core.util.Util.indexOfMatchingPath:(Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;I)I
            iconst_m1
            if_icmpeq 62
        61: .line 1931
            goto 63
        62: .line 1934
      StackMap locals:
      StackMap stack:
            aload 12 /* outputLocations */
            iload 11 /* outputCount */
            iinc 11 /* outputCount */ 1
            aload 25 /* customOutput */
            aastore
        end local 25 // org.eclipse.core.runtime.IPath customOutput
        end local 24 // boolean isTest
        end local 20 // org.eclipse.jdt.core.IClasspathEntry resolvedEntry
        63: .line 1897
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iinc 21 1
      StackMap locals:
      StackMap stack:
        64: iload 21
            iload 22
            if_icmplt 40
        65: .line 1939
            iconst_1
            istore 20 /* i */
        start local 20 // int i
        66: goto 75
        67: .line 1940
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet int
      StackMap stack:
            aload 12 /* outputLocations */
            iload 20 /* i */
            aaload
            astore 21 /* customOutput */
        start local 21 // org.eclipse.core.runtime.IPath customOutput
        68: .line 1943
            aload 21 /* customOutput */
            aload 12 /* outputLocations */
            iload 11 /* outputCount */
            invokestatic org.eclipse.jdt.internal.core.util.Util.indexOfEnclosingPath:(Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;I)I
            dup
            istore 22 /* index */
        start local 22 // int index
        69: iconst_m1
            if_icmpeq 74
            iload 22 /* index */
            iload 20 /* i */
            if_icmpeq 74
        70: .line 1944
            iload 22 /* index */
            ifne 73
        71: .line 1947
            aload 14 /* potentialNestedOutput */
            ifnonnull 74
            aload 21 /* customOutput */
            astore 14 /* potentialNestedOutput */
        72: .line 1948
            goto 74
        73: .line 1949
      StackMap locals: org.eclipse.core.runtime.IPath int
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotNestOutputInOutput:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 21 /* customOutput */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 12 /* outputLocations */
            iload 22 /* index */
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 22 // int index
        end local 21 // org.eclipse.core.runtime.IPath customOutput
        74: .line 1939
      StackMap locals:
      StackMap stack:
            iinc 20 /* i */ 1
      StackMap locals:
      StackMap stack:
        75: iload 20 /* i */
            iload 11 /* outputCount */
            if_icmplt 67
        end local 20 // int i
        76: .line 1954
            iload 15 /* sourceEntryCount */
            iload 11 /* outputCount */
            iconst_1
            isub
            if_icmpgt 79
        77: .line 1955
            aload 13 /* allowNestingInOutputLocations */
            iconst_0
            iconst_1
            bastore
        78: .line 1956
            goto 83
      StackMap locals:
      StackMap stack:
        79: aload 14 /* potentialNestedOutput */
            ifnull 81
        80: .line 1957
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotNestOutputInOutput:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 14 /* potentialNestedOutput */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 12 /* outputLocations */
            iconst_0
            aaload
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        81: .line 1959
      StackMap locals:
      StackMap stack:
            iload 15 /* sourceEntryCount */
            aload 18 /* testSourcesFolders */
            invokevirtual java.util.ArrayList.size:()I
            if_icmple 83
        82: .line 1961
            aload 19 /* mainOutputLocations */
            aload 12 /* outputLocations */
            iconst_0
            aaload
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
        83: .line 1964
      StackMap locals:
      StackMap stack:
            aload 18 /* testSourcesFolders */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 21
            goto 91
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet top java.util.Iterator
      StackMap stack:
        84: aload 21
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jdt.core.IClasspathEntry
            astore 20 /* resolvedEntry */
        start local 20 // org.eclipse.jdt.core.IClasspathEntry resolvedEntry
        85: .line 1966
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
            dup
            astore 22 /* customOutput */
        start local 22 // org.eclipse.core.runtime.IPath customOutput
        86: ifnull 89
        87: .line 1967
            aload 19 /* mainOutputLocations */
            aload 22 /* customOutput */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 91
        88: .line 1968
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1016
            aload 0 /* javaProject */
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;)V
            areturn
        89: .line 1971
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IClasspathEntry java.util.Iterator org.eclipse.core.runtime.IPath
      StackMap stack:
            iload 15 /* sourceEntryCount */
            aload 18 /* testSourcesFolders */
            invokevirtual java.util.ArrayList.size:()I
            if_icmple 91
        90: .line 1972
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1015
            aload 0 /* javaProject */
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;)V
            areturn
        end local 22 // org.eclipse.core.runtime.IPath customOutput
        end local 20 // org.eclipse.jdt.core.IClasspathEntry resolvedEntry
        91: .line 1964
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet top java.util.Iterator
      StackMap stack:
            aload 21
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 84
        92: .line 1977
            aload 10 /* classpath */
            dup
            astore 23
            arraylength
            istore 22
            iconst_0
            istore 21
            goto 107
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
        93: aload 23
            iload 21
            aaload
            astore 20 /* resolvedEntry */
        start local 20 // org.eclipse.jdt.core.IClasspathEntry resolvedEntry
        94: .line 1978
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 24 /* path */
        start local 24 // org.eclipse.core.runtime.IPath path
        95: .line 1980
            aload 20 /* resolvedEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            tableswitch { // 1 - 3
                    1: 101
                    2: 106
                    3: 96
              default: 106
          }
        96: .line 1983
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath
      StackMap stack:
            iconst_1
            istore 6 /* hasSource */
        97: .line 1984
            aload 24 /* path */
            aload 12 /* outputLocations */
            iload 11 /* outputCount */
            invokestatic org.eclipse.jdt.internal.core.util.Util.indexOfMatchingPath:(Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;I)I
            dup
            istore 25 /* index */
        start local 25 // int index
        98: iconst_m1
            if_icmpeq 106
        99: .line 1985
            aload 13 /* allowNestingInOutputLocations */
            iload 25 /* index */
            iconst_1
            bastore
       100: .line 1987
            goto 106
        end local 25 // int index
       101: .line 1990
      StackMap locals:
      StackMap stack:
            aload 24 /* path */
            iconst_0
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            astore 26 /* target */
        start local 26 // java.lang.Object target
       102: .line 1991
            iload 7 /* hasLibFolder */
            aload 26 /* target */
            instanceof org.eclipse.core.resources.IContainer
            ior
            istore 7 /* hasLibFolder */
       103: .line 1992
            aload 24 /* path */
            aload 12 /* outputLocations */
            iload 11 /* outputCount */
            invokestatic org.eclipse.jdt.internal.core.util.Util.indexOfMatchingPath:(Lorg/eclipse/core/runtime/IPath;[Lorg/eclipse/core/runtime/IPath;I)I
            dup
            istore 25 /* index */
        start local 25 // int index
       104: iconst_m1
            if_icmpeq 106
       105: .line 1993
            aload 13 /* allowNestingInOutputLocations */
            iload 25 /* index */
            iconst_1
            bastore
        end local 26 // java.lang.Object target
        end local 25 // int index
        end local 24 // org.eclipse.core.runtime.IPath path
        end local 20 // org.eclipse.jdt.core.IClasspathEntry resolvedEntry
       106: .line 1977
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iinc 21 1
      StackMap locals:
      StackMap stack:
       107: iload 21
            iload 22
            if_icmplt 93
       108: .line 1998
            iload 6 /* hasSource */
            ifne 113
            iload 7 /* hasLibFolder */
            ifne 113
       109: .line 1999
            iconst_0
            istore 20 /* i */
        start local 20 // int i
       110: goto 112
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet int
      StackMap stack:
       111: aload 13 /* allowNestingInOutputLocations */
            iload 20 /* i */
            iconst_1
            bastore
            iinc 20 /* i */ 1
      StackMap locals:
      StackMap stack:
       112: iload 20 /* i */
            iload 11 /* outputCount */
            if_icmplt 111
        end local 20 // int i
       113: .line 2003
      StackMap locals:
      StackMap stack:
            aload 10 /* classpath */
            dup
            astore 23
            arraylength
            istore 22
            iconst_0
            istore 21
            goto 168
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
       114: aload 23
            iload 21
            aaload
            astore 20 /* entry */
        start local 20 // org.eclipse.jdt.core.IClasspathEntry entry
       115: .line 2004
            aload 20 /* entry */
            ifnonnull 116
            goto 167
       116: .line 2005
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            aload 20 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 24 /* entryPath */
        start local 24 // org.eclipse.core.runtime.IPath entryPath
       117: .line 2006
            aload 20 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            istore 25 /* kind */
        start local 25 // int kind
       118: .line 2009
            aload 24 /* entryPath */
            aload 4 /* projectPath */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifeq 121
       119: .line 2011
            iload 25 /* kind */
            iconst_2
            if_icmpne 167
       120: .line 2012
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 979
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotReferToItself:Ljava/lang/String;
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
       121: .line 2019
      StackMap locals: org.eclipse.core.runtime.IPath int
      StackMap stack:
            iload 25 /* kind */
            iconst_3
            if_icmpeq 123
       122: .line 2020
            iload 25 /* kind */
            iconst_1
            if_icmpne 148
            aload 24 /* entryPath */
            iconst_0
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            instanceof org.eclipse.core.resources.IContainer
            ifeq 148
       123: .line 2021
      StackMap locals:
      StackMap stack:
            aload 10 /* classpath */
            dup
            astore 29
            arraylength
            istore 28
            iconst_0
            istore 27
            goto 147
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
       124: aload 29
            iload 27
            aaload
            astore 26 /* otherEntry */
        start local 26 // org.eclipse.jdt.core.IClasspathEntry otherEntry
       125: .line 2022
            aload 26 /* otherEntry */
            ifnonnull 126
            goto 146
       126: .line 2023
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            aload 26 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            istore 30 /* otherKind */
        start local 30 // int otherKind
       127: .line 2024
            aload 26 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 31 /* otherPath */
        start local 31 // org.eclipse.core.runtime.IPath otherPath
       128: .line 2025
            aload 20 /* entry */
            aload 26 /* otherEntry */
            if_acmpeq 146
       129: .line 2026
            iload 30 /* otherKind */
            iconst_3
            if_icmpeq 132
       130: .line 2027
            iload 30 /* otherKind */
            iconst_1
            if_icmpne 146
       131: .line 2028
            aload 31 /* otherPath */
            iconst_0
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            instanceof org.eclipse.core.resources.IContainer
            ifeq 146
       132: .line 2030
      StackMap locals: int org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 31 /* otherPath */
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 146
       133: .line 2031
            aload 31 /* otherPath */
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifne 146
       134: .line 2032
            aload 24 /* entryPath */
            ldc "*"
            invokeinterface org.eclipse.core.runtime.IPath.append:(Ljava/lang/String;)Lorg/eclipse/core/runtime/IPath;
            aload 26 /* otherEntry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.fullInclusionPatternChars:()[[C
            dup
            astore 32 /* inclusionPatterns */
        start local 32 // char[][] inclusionPatterns
       135: aload 26 /* otherEntry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.fullExclusionPatternChars:()[[C
            dup
            astore 33 /* exclusionPatterns */
        start local 33 // char[][] exclusionPatterns
       136: iconst_0
            invokestatic org.eclipse.jdt.internal.core.util.Util.isExcluded:(Lorg/eclipse/core/runtime/IPath;[[C[[CZ)Z
            ifne 146
       137: .line 2033
            aload 24 /* entryPath */
            aload 31 /* otherPath */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            astore 34 /* exclusionPattern */
        start local 34 // java.lang.String exclusionPattern
       138: .line 2034
            aload 24 /* entryPath */
            aload 32 /* inclusionPatterns */
            aload 33 /* exclusionPatterns */
            iconst_0
            invokestatic org.eclipse.jdt.internal.core.util.Util.isExcluded:(Lorg/eclipse/core/runtime/IPath;[[C[[CZ)Z
            ifeq 140
       139: .line 2035
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_mustEndWithSlash:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 34 /* exclusionPattern */
            aastore
            dup
            iconst_1
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
       140: .line 2037
      StackMap locals: char[][] char[][] java.lang.String
      StackMap stack:
            iload 30 /* otherKind */
            iconst_3
            if_icmpne 145
       141: .line 2038
            new java.lang.StringBuilder
            dup
            aload 34 /* exclusionPattern */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 47
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 34 /* exclusionPattern */
       142: .line 2039
            iload 16 /* disableExclusionPatterns */
            ifne 144
       143: .line 2040
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotNestEntryInEntry:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 26 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 34 /* exclusionPattern */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
       144: .line 2042
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotNestEntryInEntryNoExclusion:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 26 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 34 /* exclusionPattern */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
       145: .line 2045
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotNestEntryInLibrary:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 26 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 34 // java.lang.String exclusionPattern
        end local 33 // char[][] exclusionPatterns
        end local 32 // char[][] inclusionPatterns
        end local 31 // org.eclipse.core.runtime.IPath otherPath
        end local 30 // int otherKind
        end local 26 // org.eclipse.jdt.core.IClasspathEntry otherEntry
       146: .line 2021
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iinc 27 1
      StackMap locals:
      StackMap stack:
       147: iload 27
            iload 28
            if_icmplt 124
       148: .line 2054
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int
      StackMap stack:
            aload 20 /* entry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.fullInclusionPatternChars:()[[C
            astore 26 /* inclusionPatterns */
        start local 26 // char[][] inclusionPatterns
       149: .line 2055
            aload 20 /* entry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.fullExclusionPatternChars:()[[C
            astore 27 /* exclusionPatterns */
        start local 27 // char[][] exclusionPatterns
       150: .line 2056
            iconst_0
            istore 28 /* j */
        start local 28 // int j
       151: goto 158
       152: .line 2057
      StackMap locals: char[][] char[][] int
      StackMap stack:
            aload 12 /* outputLocations */
            iload 28 /* j */
            aaload
            astore 29 /* currentOutput */
        start local 29 // org.eclipse.core.runtime.IPath currentOutput
       153: .line 2058
            aload 24 /* entryPath */
            aload 29 /* currentOutput */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifeq 154
            goto 157
       154: .line 2059
      StackMap locals: org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 24 /* entryPath */
            aload 29 /* currentOutput */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 157
       155: .line 2060
            iload 25 /* kind */
            iconst_3
            if_icmpne 156
            aload 29 /* currentOutput */
            aload 26 /* inclusionPatterns */
            aload 27 /* exclusionPatterns */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.util.Util.isExcluded:(Lorg/eclipse/core/runtime/IPath;[[C[[CZ)Z
            ifne 157
       156: .line 2061
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotNestOutputInEntry:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 29 /* currentOutput */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 29 // org.eclipse.core.runtime.IPath currentOutput
       157: .line 2056
      StackMap locals:
      StackMap stack:
            iinc 28 /* j */ 1
      StackMap locals:
      StackMap stack:
       158: iload 28 /* j */
            iload 11 /* outputCount */
            if_icmplt 152
        end local 28 // int j
       159: .line 2067
            iconst_0
            istore 28 /* j */
        start local 28 // int j
       160: goto 166
       161: .line 2068
      StackMap locals:
      StackMap stack:
            aload 13 /* allowNestingInOutputLocations */
            iload 28 /* j */
            baload
            ifeq 162
            goto 165
       162: .line 2069
      StackMap locals:
      StackMap stack:
            aload 12 /* outputLocations */
            iload 28 /* j */
            aaload
            astore 29 /* currentOutput */
        start local 29 // org.eclipse.core.runtime.IPath currentOutput
       163: .line 2070
            aload 29 /* currentOutput */
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 165
       164: .line 2071
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotNestEntryInOutput:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 24 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 29 /* currentOutput */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 29 // org.eclipse.core.runtime.IPath currentOutput
       165: .line 2067
      StackMap locals:
      StackMap stack:
            iinc 28 /* j */ 1
      StackMap locals:
      StackMap stack:
       166: iload 28 /* j */
            iload 11 /* outputCount */
            if_icmplt 161
        end local 28 // int j
        end local 27 // char[][] exclusionPatterns
        end local 26 // char[][] inclusionPatterns
        end local 25 // int kind
        end local 24 // org.eclipse.core.runtime.IPath entryPath
        end local 20 // org.eclipse.jdt.core.IClasspathEntry entry
       167: .line 2003
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iinc 21 1
      StackMap locals:
      StackMap stack:
       168: iload 21
            iload 22
            if_icmplt 114
       169: .line 2080
            aconst_null
            astore 20 /* cachedStatus */
        start local 20 // org.eclipse.jdt.core.IJavaModelStatus cachedStatus
       170: .line 2081
            aload 10 /* classpath */
            dup
            astore 24
            arraylength
            istore 23
            iconst_0
            istore 22
            goto 215
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
       171: aload 24
            iload 22
            aaload
            astore 21 /* entry */
        start local 21 // org.eclipse.jdt.core.IClasspathEntry entry
       172: .line 2082
            aload 21 /* entry */
            ifnonnull 173
            goto 214
       173: .line 2083
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            aload 21 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 25 /* entryPath */
        start local 25 // org.eclipse.core.runtime.IPath entryPath
       174: .line 2084
            aload 21 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            istore 26 /* kind */
        start local 26 // int kind
       175: .line 2087
            aload 5 /* projectName */
            aload 25 /* entryPath */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 27 /* isProjectRelative */
        start local 27 // boolean isProjectRelative
       176: .line 2088
            iload 27 /* isProjectRelative */
            ifeq 177
            aload 25 /* entryPath */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            goto 178
      StackMap locals: org.eclipse.core.runtime.IPath int int
      StackMap stack:
       177: aload 25 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
       178: astore 28 /* entryPathMsg */
        start local 28 // java.lang.String entryPathMsg
       179: .line 2090
            iload 26 /* kind */
            iconst_3
            if_icmpne 214
       180: .line 2091
            aload 21 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
            astore 29 /* output */
        start local 29 // org.eclipse.core.runtime.IPath output
       181: .line 2092
            aload 29 /* output */
            ifnonnull 182
            aload 2 /* projectOutputLocation */
            astore 29 /* output */
       182: .line 2093
      StackMap locals: java.lang.String org.eclipse.core.runtime.IPath
      StackMap stack:
            aload 10 /* classpath */
            dup
            astore 33
            arraylength
            istore 32
            iconst_0
            istore 31
            goto 213
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int int java.lang.String org.eclipse.core.runtime.IPath top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
       183: aload 33
            iload 31
            aaload
            astore 30 /* otherEntry */
        start local 30 // org.eclipse.jdt.core.IClasspathEntry otherEntry
       184: .line 2094
            aload 30 /* otherEntry */
            aload 21 /* entry */
            if_acmpne 185
            goto 212
       185: .line 2096
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int int java.lang.String org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            aload 30 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            tableswitch { // 1 - 3
                    1: 206
                    2: 212
                    3: 186
              default: 212
          }
       186: .line 2100
      StackMap locals:
      StackMap stack:
            aload 0 /* javaProject */
            ldc "org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            astore 34 /* option */
        start local 34 // java.lang.String option
       187: .line 2101
            aload 30 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            aload 29 /* output */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifeq 212
       188: .line 2102
            ldc "ignore"
            aload 34 /* option */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 212
       189: .line 2103
            aload 5 /* projectName */
            aload 30 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 35 /* opStartsWithProject */
        start local 35 // boolean opStartsWithProject
       190: .line 2104
            iload 35 /* opStartsWithProject */
            ifeq 191
            aload 30 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            goto 192
      StackMap locals: java.lang.String int
      StackMap stack:
       191: aload 30 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
       192: astore 36 /* otherPathMsg */
        start local 36 // java.lang.String otherPathMsg
       193: .line 2105
            ldc "error"
            aload 34 /* option */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 199
       194: .line 2106
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            iconst_4
            sipush 1013
       195: .line 2107
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotUseDistinctSourceFolderAsOutput:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
       196: .line 2108
            aload 28 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 36 /* otherPathMsg */
            aastore
            dup
            iconst_2
            aload 5 /* projectName */
            aastore
       197: .line 2107
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
       198: .line 2106
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(IILjava/lang/String;)V
            areturn
       199: .line 2110
      StackMap locals: java.lang.String
      StackMap stack:
            aload 20 /* cachedStatus */
            ifnonnull 212
       200: .line 2112
            new org.eclipse.jdt.internal.core.ClasspathEntry$1
            dup
            iconst_0
            sipush 1013
       201: .line 2113
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotUseDistinctSourceFolderAsOutput:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
       202: .line 2114
            aload 28 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 36 /* otherPathMsg */
            aastore
            dup
            iconst_2
            aload 5 /* projectName */
            aastore
       203: .line 2113
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
       204: .line 2112
            invokespecial org.eclipse.jdt.internal.core.ClasspathEntry$1.<init>:(IILjava/lang/String;)V
            astore 20 /* cachedStatus */
        end local 36 // java.lang.String otherPathMsg
        end local 35 // boolean opStartsWithProject
       205: .line 2122
            goto 212
        end local 34 // java.lang.String option
       206: .line 2124
      StackMap locals:
      StackMap stack:
            aload 29 /* output */
            aload 2 /* projectOutputLocation */
            if_acmpeq 212
            aload 30 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            aload 29 /* output */
            invokeinterface org.eclipse.core.runtime.IPath.equals:(Ljava/lang/Object;)Z
            ifeq 212
       207: .line 2125
            aload 5 /* projectName */
            aload 30 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            istore 35 /* opStartsWithProject */
        start local 35 // boolean opStartsWithProject
       208: .line 2126
            iload 35 /* opStartsWithProject */
            ifeq 209
            aload 30 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            goto 210
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int int java.lang.String org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] top int
      StackMap stack:
       209: aload 30 /* otherEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
       210: astore 36 /* otherPathMsg */
        start local 36 // java.lang.String otherPathMsg
       211: .line 2127
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_cannotUseLibraryAsOutput:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 28 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 36 /* otherPathMsg */
            aastore
            dup
            iconst_2
            aload 5 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 36 // java.lang.String otherPathMsg
        end local 35 // boolean opStartsWithProject
        end local 30 // org.eclipse.jdt.core.IClasspathEntry otherEntry
       212: .line 2093
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath int int java.lang.String org.eclipse.core.runtime.IPath top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iinc 31 1
      StackMap locals:
      StackMap stack:
       213: iload 31
            iload 32
            if_icmplt 183
        end local 29 // org.eclipse.core.runtime.IPath output
        end local 28 // java.lang.String entryPathMsg
        end local 27 // boolean isProjectRelative
        end local 26 // int kind
        end local 25 // org.eclipse.core.runtime.IPath entryPath
        end local 21 // org.eclipse.jdt.core.IClasspathEntry entry
       214: .line 2081
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iinc 22 1
      StackMap locals:
      StackMap stack:
       215: iload 22
            iload 23
            if_icmplt 171
       216: .line 2134
            iload 6 /* hasSource */
            ifeq 249
            aload 18 /* testSourcesFolders */
            invokevirtual java.util.ArrayList.size:()I
            ifne 249
            ldc "ignore"
            aload 0 /* javaProject */
            ldc "org.eclipse.jdt.core.classpath.mainOnlyProjectHasTestOnlyDependency"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 249
       217: .line 2135
            aload 10 /* classpath */
            dup
            astore 24
            arraylength
            istore 23
            iconst_0
            istore 22
            goto 248
      StackMap locals:
      StackMap stack:
       218: aload 24
            iload 22
            aaload
            astore 21 /* entry */
        start local 21 // org.eclipse.jdt.core.IClasspathEntry entry
       219: .line 2136
            aload 21 /* entry */
            ifnonnull 221
       220: .line 2137
            goto 247
       221: .line 2138
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            aload 21 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 25 /* entryPath */
        start local 25 // org.eclipse.core.runtime.IPath entryPath
       222: .line 2139
            aload 21 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            iconst_2
            if_icmpne 247
       223: .line 2140
            aload 25 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifeq 247
            aload 25 /* entryPath */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            iconst_1
            if_icmpne 247
       224: .line 2141
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.workspaceRoot:Lorg/eclipse/core/resources/IWorkspaceRoot;
            aload 25 /* entryPath */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokeinterface org.eclipse.core.resources.IWorkspaceRoot.getProject:(Ljava/lang/String;)Lorg/eclipse/core/resources/IProject;
            astore 26 /* prereqProjectRsc */
        start local 26 // org.eclipse.core.resources.IProject prereqProjectRsc
       225: .line 2142
            aload 26 /* prereqProjectRsc */
            invokestatic org.eclipse.jdt.core.JavaCore.create:(Lorg/eclipse/core/resources/IProject;)Lorg/eclipse/jdt/core/IJavaProject;
            astore 27 /* prereqProject */
        start local 27 // org.eclipse.jdt.core.IJavaProject prereqProject
       226: .line 2143
            iconst_0
            istore 28 /* hasMain */
        start local 28 // boolean hasMain
       227: .line 2144
            iconst_0
            istore 29 /* hasTest */
        start local 29 // boolean hasTest
       228: .line 2146
            aload 27 /* prereqProject */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getRawClasspath:()[Lorg/eclipse/jdt/core/IClasspathEntry;
            dup
            astore 33
            arraylength
            istore 32
            iconst_0
            istore 31
            goto 238
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.jdt.core.IJavaProject int int top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
       229: aload 33
            iload 31
            aaload
            astore 30 /* nested */
        start local 30 // org.eclipse.jdt.core.IClasspathEntry nested
       230: .line 2147
            aload 30 /* nested */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            iconst_3
            if_icmpne 237
       231: .line 2148
            aload 30 /* nested */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.isTest:()Z
            ifeq 234
       232: .line 2149
            iconst_1
            istore 29 /* hasTest */
       233: .line 2150
            goto 235
       234: .line 2151
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.jdt.core.IJavaProject int int org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iconst_1
            istore 28 /* hasMain */
       235: .line 2153
      StackMap locals:
      StackMap stack:
            iload 29 /* hasTest */
            ifeq 237
            iload 28 /* hasMain */
            ifeq 237
       236: .line 2154
            goto 241
        end local 30 // org.eclipse.jdt.core.IClasspathEntry nested
       237: .line 2146
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.jdt.core.IJavaProject int int top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iinc 31 1
      StackMap locals:
      StackMap stack:
       238: iload 31
            iload 32
            if_icmplt 229
       239: .line 2157
            goto 241
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathEntry int int org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.jdt.core.IJavaProject int int
      StackMap stack: org.eclipse.jdt.core.JavaModelException
       240: pop
       241: .line 2160
      StackMap locals:
      StackMap stack:
            iload 29 /* hasTest */
            ifeq 247
            iload 28 /* hasMain */
            ifne 247
       242: .line 2161
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1017
       243: .line 2162
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_main_only_project_depends_on_test_only_project:Ljava/lang/String;
       244: .line 2163
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 27 /* prereqProject */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
       245: .line 2162
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
       246: .line 2161
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 29 // boolean hasTest
        end local 28 // boolean hasMain
        end local 27 // org.eclipse.jdt.core.IJavaProject prereqProject
        end local 26 // org.eclipse.core.resources.IProject prereqProjectRsc
        end local 25 // org.eclipse.core.runtime.IPath entryPath
        end local 21 // org.eclipse.jdt.core.IClasspathEntry entry
       247: .line 2135
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus top int int org.eclipse.jdt.core.IClasspathEntry[]
      StackMap stack:
            iinc 22 1
      StackMap locals:
      StackMap stack:
       248: iload 22
            iload 23
            if_icmplt 218
       249: .line 2173
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry[] org.eclipse.core.runtime.IPath org.eclipse.core.resources.IProject org.eclipse.core.runtime.IPath java.lang.String int int int java.util.HashSet org.eclipse.jdt.core.IClasspathEntry[] int org.eclipse.core.runtime.IPath[] boolean[] org.eclipse.core.runtime.IPath int int int java.util.ArrayList java.util.HashSet org.eclipse.jdt.core.IJavaModelStatus
      StackMap stack:
            aload 20 /* cachedStatus */
            ifnull 250
            aload 20 /* cachedStatus */
            areturn
       250: .line 2175
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            areturn
        end local 20 // org.eclipse.jdt.core.IJavaModelStatus cachedStatus
        end local 19 // java.util.HashSet mainOutputLocations
        end local 18 // java.util.ArrayList testSourcesFolders
        end local 17 // boolean disableCustomOutputLocations
        end local 16 // boolean disableExclusionPatterns
        end local 15 // int sourceEntryCount
        end local 14 // org.eclipse.core.runtime.IPath potentialNestedOutput
        end local 13 // boolean[] allowNestingInOutputLocations
        end local 12 // org.eclipse.core.runtime.IPath[] outputLocations
        end local 11 // int outputCount
        end local 10 // org.eclipse.jdt.core.IClasspathEntry[] classpath
        end local 9 // java.util.HashSet pathes
        end local 8 // int rawLength
        end local 7 // boolean hasLibFolder
        end local 6 // boolean hasSource
        end local 5 // java.lang.String projectName
        end local 4 // org.eclipse.core.runtime.IPath projectPath
        end local 3 // org.eclipse.core.resources.IProject project
        end local 2 // org.eclipse.core.runtime.IPath projectOutputLocation
        end local 1 // org.eclipse.jdt.core.IClasspathEntry[] rawClasspath
        end local 0 // org.eclipse.jdt.core.IJavaProject javaProject
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0  251     0                    javaProject  Lorg/eclipse/jdt/core/IJavaProject;
            0  251     1                   rawClasspath  [Lorg/eclipse/jdt/core/IClasspathEntry;
            0  251     2          projectOutputLocation  Lorg/eclipse/core/runtime/IPath;
            1  251     3                        project  Lorg/eclipse/core/resources/IProject;
            2  251     4                    projectPath  Lorg/eclipse/core/runtime/IPath;
            3  251     5                    projectName  Ljava/lang/String;
           10  251     6                      hasSource  Z
           11  251     7                   hasLibFolder  Z
           14  251     8                      rawLength  I
           15  251     9                         pathes  Ljava/util/HashSet;
           16   25    10                              i  I
           18   23    11                      entryPath  Lorg/eclipse/core/runtime/IPath;
           22   23    12                   entryPathMsg  Ljava/lang/String;
           26   27    10                      classpath  [Lorg/eclipse/jdt/core/IClasspathEntry;
           29  251    10                      classpath  [Lorg/eclipse/jdt/core/IClasspathEntry;
           28   29    11                              e  Lorg/eclipse/jdt/core/JavaModelException;
           30  251    11                    outputCount  I
           31  251    12                outputLocations  [Lorg/eclipse/core/runtime/IPath;
           32  251    13  allowNestingInOutputLocations  [Z
           34  251    14          potentialNestedOutput  Lorg/eclipse/core/runtime/IPath;
           35  251    15               sourceEntryCount  I
           36  251    16       disableExclusionPatterns  Z
           37  251    17   disableCustomOutputLocations  Z
           38  251    18             testSourcesFolders  Ljava/util/ArrayList<Lorg/eclipse/jdt/core/IClasspathEntry;>;
           39  251    19            mainOutputLocations  Ljava/util/HashSet<Lorg/eclipse/core/runtime/IPath;>;
           41   63    20                  resolvedEntry  Lorg/eclipse/jdt/core/IClasspathEntry;
           48   63    24                         isTest  Z
           51   63    25                   customOutput  Lorg/eclipse/core/runtime/IPath;
           66   76    20                              i  I
           68   74    21                   customOutput  Lorg/eclipse/core/runtime/IPath;
           69   74    22                          index  I
           85   91    20                  resolvedEntry  Lorg/eclipse/jdt/core/IClasspathEntry;
           86   91    22                   customOutput  Lorg/eclipse/core/runtime/IPath;
           94  106    20                  resolvedEntry  Lorg/eclipse/jdt/core/IClasspathEntry;
           95  106    24                           path  Lorg/eclipse/core/runtime/IPath;
           98  101    25                          index  I
          104  106    25                          index  I
          102  106    26                         target  Ljava/lang/Object;
          110  113    20                              i  I
          115  167    20                          entry  Lorg/eclipse/jdt/core/IClasspathEntry;
          117  167    24                      entryPath  Lorg/eclipse/core/runtime/IPath;
          118  167    25                           kind  I
          125  146    26                     otherEntry  Lorg/eclipse/jdt/core/IClasspathEntry;
          127  146    30                      otherKind  I
          128  146    31                      otherPath  Lorg/eclipse/core/runtime/IPath;
          135  146    32              inclusionPatterns  [[C
          136  146    33              exclusionPatterns  [[C
          138  146    34               exclusionPattern  Ljava/lang/String;
          149  167    26              inclusionPatterns  [[C
          150  167    27              exclusionPatterns  [[C
          151  159    28                              j  I
          153  157    29                  currentOutput  Lorg/eclipse/core/runtime/IPath;
          160  167    28                              j  I
          163  165    29                  currentOutput  Lorg/eclipse/core/runtime/IPath;
          170  251    20                   cachedStatus  Lorg/eclipse/jdt/core/IJavaModelStatus;
          172  214    21                          entry  Lorg/eclipse/jdt/core/IClasspathEntry;
          174  214    25                      entryPath  Lorg/eclipse/core/runtime/IPath;
          175  214    26                           kind  I
          176  214    27              isProjectRelative  Z
          179  214    28                   entryPathMsg  Ljava/lang/String;
          181  214    29                         output  Lorg/eclipse/core/runtime/IPath;
          184  212    30                     otherEntry  Lorg/eclipse/jdt/core/IClasspathEntry;
          187  206    34                         option  Ljava/lang/String;
          190  205    35            opStartsWithProject  Z
          193  205    36                   otherPathMsg  Ljava/lang/String;
          208  212    35            opStartsWithProject  Z
          211  212    36                   otherPathMsg  Ljava/lang/String;
          219  247    21                          entry  Lorg/eclipse/jdt/core/IClasspathEntry;
          222  247    25                      entryPath  Lorg/eclipse/core/runtime/IPath;
          225  247    26               prereqProjectRsc  Lorg/eclipse/core/resources/IProject;
          226  247    27                  prereqProject  Lorg/eclipse/jdt/core/IJavaProject;
          227  247    28                        hasMain  Z
          228  247    29                        hasTest  Z
          230  237    30                         nested  Lorg/eclipse/jdt/core/IClasspathEntry;
      Exception table:
        from    to  target  type
          25    26      27  Class org.eclipse.jdt.core.JavaModelException
         228   239     240  Class org.eclipse.jdt.core.JavaModelException
    MethodParameters:
                       Name  Flags
      javaProject            
      rawClasspath           
      projectOutputLocation  

  public static org.eclipse.jdt.core.IJavaModelStatus validateClasspathEntry(org.eclipse.jdt.core.IJavaProject, org.eclipse.jdt.core.IClasspathEntry, boolean, boolean);
    descriptor: (Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/IClasspathEntry;ZZ)Lorg/eclipse/jdt/core/IJavaModelStatus;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // org.eclipse.jdt.core.IJavaProject project
        start local 1 // org.eclipse.jdt.core.IClasspathEntry entry
        start local 2 // boolean checkSourceAttachment
        start local 3 // boolean referredByContainer
         0: .line 2190
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            iconst_1
            if_icmpne 2
         1: .line 2191
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.removeFromInvalidArchiveCache:(Lorg/eclipse/core/runtime/IPath;)V
         2: .line 2193
      StackMap locals:
      StackMap stack:
            aload 0 /* project */
            aload 1 /* entry */
            aconst_null
            iload 2 /* checkSourceAttachment */
            iload 3 /* referredByContainer */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspathEntry:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathContainer;ZZ)Lorg/eclipse/jdt/core/IJavaModelStatus;
            astore 4 /* status */
        start local 4 // org.eclipse.jdt.core.IJavaModelStatus status
         3: .line 2196
            aload 4 /* status */
            invokeinterface org.eclipse.jdt.core.IJavaModelStatus.getCode:()I
            istore 5 /* statusCode */
        start local 5 // int statusCode
         4: .line 2197
            iload 5 /* statusCode */
            sipush 964
            if_icmpeq 8
         5: .line 2198
            iload 5 /* statusCode */
            sipush 963
            if_icmpeq 8
         6: .line 2199
            iload 5 /* statusCode */
            sipush 965
            if_icmpeq 8
         7: .line 2200
            iload 5 /* statusCode */
            sipush 979
            if_icmpne 10
         8: .line 2201
      StackMap locals: org.eclipse.jdt.core.IJavaModelStatus int
      StackMap stack:
            aload 1 /* entry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.isOptional:()Z
            ifeq 10
         9: .line 2202
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            areturn
        10: .line 2203
      StackMap locals:
      StackMap stack:
            aload 4 /* status */
            areturn
        end local 5 // int statusCode
        end local 4 // org.eclipse.jdt.core.IJavaModelStatus status
        end local 3 // boolean referredByContainer
        end local 2 // boolean checkSourceAttachment
        end local 1 // org.eclipse.jdt.core.IClasspathEntry entry
        end local 0 // org.eclipse.jdt.core.IJavaProject project
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   11     0                project  Lorg/eclipse/jdt/core/IJavaProject;
            0   11     1                  entry  Lorg/eclipse/jdt/core/IClasspathEntry;
            0   11     2  checkSourceAttachment  Z
            0   11     3    referredByContainer  Z
            3   11     4                 status  Lorg/eclipse/jdt/core/IJavaModelStatus;
            4   11     5             statusCode  I
    MethodParameters:
                       Name  Flags
      project                
      entry                  
      checkSourceAttachment  
      referredByContainer    

  private static org.eclipse.jdt.core.IJavaModelStatus validateClasspathEntry(org.eclipse.jdt.core.IJavaProject, org.eclipse.jdt.core.IClasspathEntry, org.eclipse.jdt.core.IClasspathContainer, boolean, boolean);
    descriptor: (Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathContainer;ZZ)Lorg/eclipse/jdt/core/IJavaModelStatus;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=11, locals=17, args_size=5
        start local 0 // org.eclipse.jdt.core.IJavaProject project
        start local 1 // org.eclipse.jdt.core.IClasspathEntry entry
        start local 2 // org.eclipse.jdt.core.IClasspathContainer entryContainer
        start local 3 // boolean checkSourceAttachment
        start local 4 // boolean referredByContainer
         0: .line 2208
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getPath:()Lorg/eclipse/core/runtime/IPath;
            astore 5 /* path */
        start local 5 // org.eclipse.core.runtime.IPath path
         1: .line 2211
            aload 0 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            astore 6 /* projectName */
        start local 6 // java.lang.String projectName
         2: .line 2212
            aload 6 /* projectName */
            aload 5 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 5 /* path */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            goto 4
      StackMap locals: org.eclipse.core.runtime.IPath java.lang.String
      StackMap stack:
         3: aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         4: astore 7 /* entryPathMsg */
        start local 7 // java.lang.String entryPathMsg
         5: .line 2214
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
            tableswitch { // 1 - 5
                    1: 77
                    2: 89
                    3: 116
                    4: 62
                    5: 6
              default: 127
          }
         6: .line 2218
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            iconst_1
            if_icmplt 61
         7: .line 2220
            aconst_null
            astore 8 /* status */
        start local 8 // org.eclipse.jdt.core.IJavaModelStatus status
         8: .line 2222
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getExtraAttributes:()[Lorg/eclipse/jdt/core/IClasspathAttribute;
            astore 9 /* extraAttributes */
        start local 9 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
         9: .line 2223
            aload 9 /* extraAttributes */
            ifnull 27
        10: .line 2224
            aload 9 /* extraAttributes */
            arraylength
            istore 10 /* length */
        start local 10 // int length
        11: .line 2225
            new java.util.HashSet
            dup
            iload 10 /* length */
            invokespecial java.util.HashSet.<init>:(I)V
            astore 11 /* set */
        start local 11 // java.util.HashSet set
        12: .line 2226
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        13: goto 19
        14: .line 2227
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry org.eclipse.jdt.core.IClasspathContainer int int org.eclipse.core.runtime.IPath java.lang.String java.lang.String org.eclipse.jdt.core.IJavaModelStatus org.eclipse.jdt.core.IClasspathAttribute[] int java.util.HashSet int
      StackMap stack:
            aload 9 /* extraAttributes */
            iload 12 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            astore 13 /* attName */
        start local 13 // java.lang.String attName
        15: .line 2228
            aload 11 /* set */
            aload 13 /* attName */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            ifne 18
        16: .line 2229
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 977
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_duplicateEntryExtraAttribute:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 13 /* attName */
            aastore
            dup
            iconst_1
            aload 7 /* entryPathMsg */
            aastore
            dup
            iconst_2
            aload 6 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            astore 8 /* status */
        17: .line 2230
            goto 20
        end local 13 // java.lang.String attName
        18: .line 2226
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 12 /* i */
            iload 10 /* length */
            if_icmplt 14
        end local 12 // int i
        20: .line 2233
      StackMap locals:
      StackMap stack:
            aload 8 /* status */
            ifnonnull 27
        21: .line 2234
            aload 1 /* 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
        22: .line 2235
            aload 12 /* annotationPath */
            ifnull 27
        23: .line 2236
            aload 1 /* entry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            aload 0 /* project */
            new org.eclipse.core.runtime.Path
            dup
            aload 12 /* annotationPath */
            invokespecial org.eclipse.core.runtime.Path.<init>:(Ljava/lang/String;)V
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.validateExternalAnnotationPath:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/jdt/core/IJavaModelStatus;
            astore 8 /* status */
        24: .line 2237
            aload 8 /* status */
            ifnull 27
        25: .line 2238
            aload 8 /* status */
        26: areturn
        end local 12 // java.lang.String annotationPath
        end local 11 // java.util.HashSet set
        end local 10 // int length
        27: .line 2242
      StackMap locals:
      StackMap stack:
            invokestatic org.eclipse.jdt.internal.core.JavaModelManager.getJavaModelManager:()Lorg/eclipse/jdt/internal/core/JavaModelManager;
            aload 5 /* path */
            aload 0 /* project */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.getClasspathContainer:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IJavaProject;)Lorg/eclipse/jdt/core/IClasspathContainer;
            astore 10 /* container */
        start local 10 // org.eclipse.jdt.core.IClasspathContainer container
        28: .line 2244
            aload 10 /* container */
            ifnonnull 34
        29: .line 2245
            aload 8 /* status */
            ifnull 32
        30: .line 2246
            aload 8 /* status */
        31: areturn
        32: .line 2247
      StackMap locals: org.eclipse.jdt.core.IClasspathContainer
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 963
            aload 0 /* project */
            aload 5 /* path */
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;)V
        33: areturn
        34: .line 2248
      StackMap locals:
      StackMap stack:
            aload 10 /* container */
            getstatic org.eclipse.jdt.internal.core.JavaModelManager.CONTAINER_INITIALIZATION_IN_PROGRESS:Lorg/eclipse/jdt/core/IClasspathContainer;
            if_acmpne 37
        35: .line 2250
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
        36: areturn
        37: .line 2252
      StackMap locals:
      StackMap stack:
            aload 10 /* container */
            invokeinterface org.eclipse.jdt.core.IClasspathContainer.getClasspathEntries:()[Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 11 /* containerEntries */
        start local 11 // org.eclipse.jdt.core.IClasspathEntry[] containerEntries
        38: .line 2253
            aload 11 /* containerEntries */
            ifnull 127
        39: .line 2254
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        40: aload 11 /* containerEntries */
            arraylength
            istore 13 /* length */
        start local 13 // int length
        41: goto 57
        42: .line 2255
      StackMap locals: org.eclipse.jdt.core.IClasspathEntry[] int int
      StackMap stack:
            aload 11 /* containerEntries */
            iload 12 /* i */
            aaload
            astore 14 /* containerEntry */
        start local 14 // org.eclipse.jdt.core.IClasspathEntry containerEntry
        43: .line 2256
            aload 14 /* containerEntry */
            ifnonnull 44
            iconst_0
            goto 45
      StackMap locals: org.eclipse.jdt.core.IClasspathEntry
      StackMap stack:
        44: aload 14 /* containerEntry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getEntryKind:()I
      StackMap locals:
      StackMap stack: int
        45: istore 15 /* kind */
        start local 15 // int kind
        46: .line 2257
            aload 14 /* containerEntry */
            ifnull 50
        47: .line 2258
            iload 15 /* kind */
            iconst_3
            if_icmpeq 50
        48: .line 2259
            iload 15 /* kind */
            iconst_4
            if_icmpeq 50
        49: .line 2260
            iload 15 /* kind */
            iconst_5
            if_icmpne 52
        50: .line 2261
      StackMap locals: int
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 962
            aload 0 /* project */
            aload 5 /* path */
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;)V
        51: areturn
        52: .line 2263
      StackMap locals:
      StackMap stack:
            aload 0 /* project */
            aload 14 /* containerEntry */
            aload 10 /* container */
            iload 3 /* checkSourceAttachment */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspathEntry:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathContainer;ZZ)Lorg/eclipse/jdt/core/IJavaModelStatus;
            astore 16 /* containerEntryStatus */
        start local 16 // org.eclipse.jdt.core.IJavaModelStatus containerEntryStatus
        53: .line 2264
            aload 16 /* containerEntryStatus */
            invokeinterface org.eclipse.jdt.core.IJavaModelStatus.isOK:()Z
            ifne 56
        54: .line 2265
            aload 16 /* containerEntryStatus */
        55: areturn
        end local 16 // org.eclipse.jdt.core.IJavaModelStatus containerEntryStatus
        end local 15 // int kind
        end local 14 // org.eclipse.jdt.core.IClasspathEntry containerEntry
        56: .line 2254
      StackMap locals:
      StackMap stack:
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        57: iload 12 /* i */
            iload 13 /* length */
            if_icmplt 42
        end local 13 // int length
        end local 12 // int i
        end local 11 // org.eclipse.jdt.core.IClasspathEntry[] containerEntries
        end local 10 // org.eclipse.jdt.core.IClasspathContainer container
        end local 9 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
        end local 8 // org.eclipse.jdt.core.IJavaModelStatus status
        58: .line 2269
            goto 127
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry org.eclipse.jdt.core.IClasspathContainer int int org.eclipse.core.runtime.IPath java.lang.String java.lang.String
      StackMap stack: org.eclipse.jdt.core.JavaModelException
        59: astore 8 /* e */
        start local 8 // org.eclipse.jdt.core.JavaModelException e
        60: .line 2270
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            aload 8 /* e */
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(Lorg/eclipse/core/runtime/CoreException;)V
            areturn
        end local 8 // org.eclipse.jdt.core.JavaModelException e
        61: .line 2273
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_illegalContainerPath:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 7 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 6 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        62: .line 2279
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            iconst_1
            if_icmplt 76
        63: .line 2281
            aload 1 /* entry */
            invokestatic org.eclipse.jdt.core.JavaCore.getResolvedClasspathEntry:(Lorg/eclipse/jdt/core/IClasspathEntry;)Lorg/eclipse/jdt/core/IClasspathEntry;
            astore 1 /* entry */
        64: .line 2282
            goto 67
      StackMap locals:
      StackMap stack: org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException
        65: astore 8 /* e */
        start local 8 // org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException e
        66: .line 2285
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 979
            aload 8 /* e */
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException.getMessage:()Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 8 // org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException e
        67: .line 2287
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            ifnonnull 69
        68: .line 2288
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 965
            aload 0 /* project */
            aload 5 /* path */
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;)V
            areturn
        69: .line 2292
      StackMap locals:
      StackMap stack:
            aload 0 /* project */
            aload 1 /* entry */
            aconst_null
            iload 3 /* checkSourceAttachment */
            iconst_0
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspathEntry:(Lorg/eclipse/jdt/core/IJavaProject;Lorg/eclipse/jdt/core/IClasspathEntry;Lorg/eclipse/jdt/core/IClasspathContainer;ZZ)Lorg/eclipse/jdt/core/IJavaModelStatus;
            astore 8 /* status */
        start local 8 // org.eclipse.jdt.core.IJavaModelStatus status
        70: .line 2293
            aload 8 /* status */
            invokeinterface org.eclipse.jdt.core.IJavaModelStatus.isOK:()Z
            ifne 71
            aload 8 /* status */
            areturn
        71: .line 2296
      StackMap locals: org.eclipse.jdt.core.IJavaModelStatus
      StackMap stack:
            aload 5 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            astore 9 /* variableName */
        start local 9 // java.lang.String variableName
        72: .line 2297
            aload 9 /* variableName */
            invokestatic org.eclipse.jdt.core.JavaCore.getClasspathVariableDeprecationMessage:(Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* deprecatedMessage */
        start local 10 // java.lang.String deprecatedMessage
        73: .line 2298
            aload 10 /* deprecatedMessage */
            ifnull 75
        74: .line 2299
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            iconst_2
            sipush 1010
            aload 0 /* project */
            aload 5 /* path */
            aload 10 /* deprecatedMessage */
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(IILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;Ljava/lang/String;)V
            areturn
        75: .line 2301
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 8 /* status */
            areturn
        end local 10 // java.lang.String deprecatedMessage
        end local 9 // java.lang.String variableName
        end local 8 // org.eclipse.jdt.core.IJavaModelStatus status
        76: .line 2303
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_illegalVariablePath:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 7 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 6 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        77: .line 2308
      StackMap locals:
      StackMap stack:
            aload 0 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getProject:()Lorg/eclipse/core/resources/IProject;
            invokeinterface org.eclipse.core.resources.IProject.getLocation:()Lorg/eclipse/core/runtime/IPath;
            aload 5 /* path */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.resolveDotDot:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            astore 5 /* path */
        78: .line 2314
            aconst_null
            astore 8 /* containerInfo */
        start local 8 // java.lang.String containerInfo
        79: .line 2315
            aload 2 /* entryContainer */
            ifnull 84
        80: .line 2316
            aload 2 /* entryContainer */
            instanceof org.eclipse.jdt.internal.core.UserLibraryClasspathContainer
            ifeq 83
        81: .line 2317
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_userLibraryInfo:Ljava/lang/String;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 2 /* entryContainer */
            invokeinterface org.eclipse.jdt.core.IClasspathContainer.getDescription:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 8 /* containerInfo */
        82: .line 2318
            goto 84
        83: .line 2319
      StackMap locals: java.lang.String
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_containerInfo:Ljava/lang/String;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 2 /* entryContainer */
            invokeinterface org.eclipse.jdt.core.IClasspathContainer.getDescription:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 8 /* containerInfo */
        84: .line 2322
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            aload 0 /* project */
            aload 8 /* containerInfo */
            iload 3 /* checkSourceAttachment */
            ifeq 85
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getSourceAttachmentPath:()Lorg/eclipse/core/runtime/IPath;
            goto 86
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry org.eclipse.jdt.core.IClasspathContainer int int org.eclipse.core.runtime.IPath java.lang.String java.lang.String java.lang.String
      StackMap stack: org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IJavaProject java.lang.String
        85: aconst_null
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry org.eclipse.jdt.core.IClasspathContainer int int org.eclipse.core.runtime.IPath java.lang.String java.lang.String java.lang.String
      StackMap stack: org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IJavaProject java.lang.String org.eclipse.core.runtime.IPath
        86: aload 7 /* entryPathMsg */
            aload 1 /* entry */
            checkcast org.eclipse.jdt.internal.core.ClasspathEntry
            invokevirtual org.eclipse.jdt.internal.core.ClasspathEntry.isOptional:()Z
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.validateLibraryEntry:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IJavaProject;Ljava/lang/String;Lorg/eclipse/core/runtime/IPath;Ljava/lang/String;Z)Lorg/eclipse/jdt/core/IJavaModelStatus;
            astore 9 /* status */
        start local 9 // org.eclipse.jdt.core.IJavaModelStatus status
        87: .line 2323
            aload 9 /* status */
            invokeinterface org.eclipse.jdt.core.IJavaModelStatus.isOK:()Z
            ifne 127
        88: .line 2324
            aload 9 /* status */
            areturn
        end local 9 // org.eclipse.jdt.core.IJavaModelStatus status
        end local 8 // java.lang.String containerInfo
        89: .line 2329
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifeq 115
            aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.segmentCount:()I
            iconst_1
            if_icmpne 115
        90: .line 2330
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.workspaceRoot:Lorg/eclipse/core/resources/IWorkspaceRoot;
            aload 5 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokeinterface org.eclipse.core.resources.IWorkspaceRoot.getProject:(Ljava/lang/String;)Lorg/eclipse/core/resources/IProject;
            astore 10 /* prereqProjectRsc */
        start local 10 // org.eclipse.core.resources.IProject prereqProjectRsc
        91: .line 2331
            aload 10 /* prereqProjectRsc */
            invokestatic org.eclipse.jdt.core.JavaCore.create:(Lorg/eclipse/core/resources/IProject;)Lorg/eclipse/jdt/core/IJavaProject;
            astore 11 /* prereqProject */
        start local 11 // org.eclipse.jdt.core.IJavaProject prereqProject
        92: .line 2333
            aload 10 /* prereqProjectRsc */
            invokeinterface org.eclipse.core.resources.IProject.exists:()Z
            ifeq 93
            aload 10 /* prereqProjectRsc */
            ldc "org.eclipse.jdt.core.javanature"
            invokeinterface org.eclipse.core.resources.IProject.hasNature:(Ljava/lang/String;)Z
            ifne 95
        93: .line 2334
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry org.eclipse.jdt.core.IClasspathContainer int int org.eclipse.core.runtime.IPath java.lang.String java.lang.String top top org.eclipse.core.resources.IProject org.eclipse.jdt.core.IJavaProject
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundProject:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 5 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 6 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
        94: areturn
        95: .line 2336
      StackMap locals:
      StackMap stack:
            aload 10 /* prereqProjectRsc */
            invokeinterface org.eclipse.core.resources.IProject.isOpen:()Z
            ifne 98
        96: .line 2337
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_closedProject:Ljava/lang/String;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 5 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
        97: areturn
        98: .line 2339
      StackMap locals:
      StackMap stack:
            ldc "ignore"
            aload 0 /* project */
            ldc "org.eclipse.jdt.core.incompatibleJDKLevel"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 127
        99: .line 2340
            aload 0 /* project */
            ldc "org.eclipse.jdt.core.compiler.codegen.targetPlatform"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.compiler.impl.CompilerOptions.versionToJdkLevel:(Ljava/lang/String;)J
            lstore 12 /* projectTargetJDK */
        start local 12 // long projectTargetJDK
       100: .line 2341
            aload 11 /* prereqProject */
            ldc "org.eclipse.jdt.core.compiler.codegen.targetPlatform"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.compiler.impl.CompilerOptions.versionToJdkLevel:(Ljava/lang/String;)J
            lstore 14 /* prereqProjectTargetJDK */
        start local 14 // long prereqProjectTargetJDK
       101: .line 2342
            lload 14 /* prereqProjectTargetJDK */
            lload 12 /* projectTargetJDK */
            lcmp
            ifle 127
       102: .line 2343
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1004
       103: .line 2344
            aload 0 /* project */
            aload 5 /* path */
       104: .line 2345
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_incompatibleLibraryJDKLevel:Ljava/lang/String;
       105: .line 2346
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
       106: .line 2347
            aload 0 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
       107: .line 2348
            lload 12 /* projectTargetJDK */
            invokestatic org.eclipse.jdt.internal.compiler.impl.CompilerOptions.versionFromJdkLevel:(J)Ljava/lang/String;
            aastore
            dup
            iconst_2
       108: .line 2349
            aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_3
       109: .line 2350
            lload 14 /* prereqProjectTargetJDK */
            invokestatic org.eclipse.jdt.internal.compiler.impl.CompilerOptions.versionFromJdkLevel:(J)Ljava/lang/String;
            aastore
       110: .line 2345
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
       111: .line 2343
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;Ljava/lang/String;)V
       112: areturn
        end local 14 // long prereqProjectTargetJDK
        end local 12 // long projectTargetJDK
       113: .line 2353
      StackMap locals:
      StackMap stack: org.eclipse.core.runtime.CoreException
            pop
       114: .line 2354
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundProject:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 5 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 6 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 11 // org.eclipse.jdt.core.IJavaProject prereqProject
        end local 10 // org.eclipse.core.resources.IProject prereqProjectRsc
       115: .line 2357
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry org.eclipse.jdt.core.IClasspathContainer int int org.eclipse.core.runtime.IPath java.lang.String java.lang.String
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_illegalProjectPath:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 6 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
       116: .line 2363
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getInclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            ifnull 117
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getInclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            arraylength
            ifgt 118
       117: .line 2364
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getExclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            ifnull 120
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getExclusionPatterns:()[Lorg/eclipse/core/runtime/IPath;
            arraylength
            ifle 120
       118: .line 2365
      StackMap locals:
      StackMap stack:
            ldc "disabled"
            aload 0 /* project */
            ldc "org.eclipse.jdt.core.classpath.exclusionPatterns"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 120
       119: .line 2366
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1002
            aload 0 /* project */
            aload 5 /* path */
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;)V
            areturn
       120: .line 2368
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getOutputLocation:()Lorg/eclipse/core/runtime/IPath;
            ifnull 122
            ldc "disabled"
            aload 0 /* project */
            ldc "org.eclipse.jdt.core.classpath.multipleOutputLocations"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 122
       121: .line 2369
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1003
            aload 0 /* project */
            aload 5 /* path */
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;)V
            areturn
       122: .line 2371
      StackMap locals:
      StackMap stack:
            aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifeq 126
            aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.isEmpty:()Z
            ifne 126
       123: .line 2372
            aload 0 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getProject:()Lorg/eclipse/core/resources/IProject;
            invokeinterface org.eclipse.core.resources.IProject.getFullPath:()Lorg/eclipse/core/runtime/IPath;
            astore 10 /* projectPath */
        start local 10 // org.eclipse.core.runtime.IPath projectPath
       124: .line 2373
            aload 10 /* projectPath */
            aload 5 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 125
            aload 5 /* path */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            ifnonnull 127
       125: .line 2374
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry org.eclipse.jdt.core.IClasspathContainer int int org.eclipse.core.runtime.IPath java.lang.String java.lang.String top top org.eclipse.core.runtime.IPath
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundSourceFolder:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 7 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 6 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 10 // org.eclipse.core.runtime.IPath projectPath
       126: .line 2377
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry org.eclipse.jdt.core.IClasspathContainer int int org.eclipse.core.runtime.IPath java.lang.String java.lang.String
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_illegalSourceFolderPath:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 7 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 6 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
       127: .line 2383
      StackMap locals:
      StackMap stack:
            aload 1 /* entry */
            invokeinterface org.eclipse.jdt.core.IClasspathEntry.getExtraAttributes:()[Lorg/eclipse/jdt/core/IClasspathAttribute;
            astore 8 /* extraAttributes */
        start local 8 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
       128: .line 2384
            aload 8 /* extraAttributes */
            ifnull 138
       129: .line 2385
            aload 8 /* extraAttributes */
            arraylength
            istore 9 /* length */
        start local 9 // int length
       130: .line 2386
            new java.util.HashSet
            dup
            iload 9 /* length */
            invokespecial java.util.HashSet.<init>:(I)V
            astore 10 /* set */
        start local 10 // java.util.HashSet set
       131: .line 2387
            iconst_0
            istore 11 /* i */
        start local 11 // int i
       132: goto 137
       133: .line 2388
      StackMap locals: org.eclipse.jdt.core.IJavaProject org.eclipse.jdt.core.IClasspathEntry org.eclipse.jdt.core.IClasspathContainer int int org.eclipse.core.runtime.IPath java.lang.String java.lang.String org.eclipse.jdt.core.IClasspathAttribute[] int java.util.HashSet int
      StackMap stack:
            aload 8 /* extraAttributes */
            iload 11 /* i */
            aaload
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            astore 12 /* attName */
        start local 12 // java.lang.String attName
       134: .line 2389
            aload 10 /* set */
            aload 12 /* attName */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            ifne 136
       135: .line 2390
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 977
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_duplicateEntryExtraAttribute:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 12 /* attName */
            aastore
            dup
            iconst_1
            aload 7 /* entryPathMsg */
            aastore
            dup
            iconst_2
            aload 6 /* projectName */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 12 // java.lang.String attName
       136: .line 2387
      StackMap locals:
      StackMap stack:
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
       137: iload 11 /* i */
            iload 9 /* length */
            if_icmplt 133
        end local 11 // int i
        end local 10 // java.util.HashSet set
        end local 9 // int length
       138: .line 2395
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            areturn
        end local 8 // org.eclipse.jdt.core.IClasspathAttribute[] extraAttributes
        end local 7 // java.lang.String entryPathMsg
        end local 6 // java.lang.String projectName
        end local 5 // org.eclipse.core.runtime.IPath path
        end local 4 // boolean referredByContainer
        end local 3 // boolean checkSourceAttachment
        end local 2 // org.eclipse.jdt.core.IClasspathContainer entryContainer
        end local 1 // org.eclipse.jdt.core.IClasspathEntry entry
        end local 0 // org.eclipse.jdt.core.IJavaProject project
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0  139     0                 project  Lorg/eclipse/jdt/core/IJavaProject;
            0  139     1                   entry  Lorg/eclipse/jdt/core/IClasspathEntry;
            0  139     2          entryContainer  Lorg/eclipse/jdt/core/IClasspathContainer;
            0  139     3   checkSourceAttachment  Z
            0  139     4     referredByContainer  Z
            1  139     5                    path  Lorg/eclipse/core/runtime/IPath;
            2  139     6             projectName  Ljava/lang/String;
            5  139     7            entryPathMsg  Ljava/lang/String;
            8   58     8                  status  Lorg/eclipse/jdt/core/IJavaModelStatus;
            9   58     9         extraAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
           11   27    10                  length  I
           12   27    11                     set  Ljava/util/HashSet;
           13   20    12                       i  I
           15   18    13                 attName  Ljava/lang/String;
           22   27    12          annotationPath  Ljava/lang/String;
           28   58    10               container  Lorg/eclipse/jdt/core/IClasspathContainer;
           38   58    11        containerEntries  [Lorg/eclipse/jdt/core/IClasspathEntry;
           40   58    12                       i  I
           41   58    13                  length  I
           43   56    14          containerEntry  Lorg/eclipse/jdt/core/IClasspathEntry;
           46   56    15                    kind  I
           53   56    16    containerEntryStatus  Lorg/eclipse/jdt/core/IJavaModelStatus;
           60   61     8                       e  Lorg/eclipse/jdt/core/JavaModelException;
           66   67     8                       e  Lorg/eclipse/jdt/internal/core/ClasspathEntry$AssertionFailedException;
           70   76     8                  status  Lorg/eclipse/jdt/core/IJavaModelStatus;
           72   76     9            variableName  Ljava/lang/String;
           73   76    10       deprecatedMessage  Ljava/lang/String;
           79   89     8           containerInfo  Ljava/lang/String;
           87   89     9                  status  Lorg/eclipse/jdt/core/IJavaModelStatus;
           91  115    10        prereqProjectRsc  Lorg/eclipse/core/resources/IProject;
           92  115    11           prereqProject  Lorg/eclipse/jdt/core/IJavaProject;
          100  113    12        projectTargetJDK  J
          101  113    14  prereqProjectTargetJDK  J
          124  126    10             projectPath  Lorg/eclipse/core/runtime/IPath;
          128  139     8         extraAttributes  [Lorg/eclipse/jdt/core/IClasspathAttribute;
          130  138     9                  length  I
          131  138    10                     set  Ljava/util/HashSet;
          132  138    11                       i  I
          134  136    12                 attName  Ljava/lang/String;
      Exception table:
        from    to  target  type
           7    26      59  Class org.eclipse.jdt.core.JavaModelException
          27    31      59  Class org.eclipse.jdt.core.JavaModelException
          32    33      59  Class org.eclipse.jdt.core.JavaModelException
          34    36      59  Class org.eclipse.jdt.core.JavaModelException
          37    51      59  Class org.eclipse.jdt.core.JavaModelException
          52    55      59  Class org.eclipse.jdt.core.JavaModelException
          56    58      59  Class org.eclipse.jdt.core.JavaModelException
          63    64      65  Class org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException
          92    94     113  Class org.eclipse.core.runtime.CoreException
          95    97     113  Class org.eclipse.core.runtime.CoreException
          98   112     113  Class org.eclipse.core.runtime.CoreException
    MethodParameters:
                       Name  Flags
      project                
      entry                  
      entryContainer         
      checkSourceAttachment  
      referredByContainer    

  private static org.eclipse.jdt.core.IJavaModelStatus validateLibraryEntry(org.eclipse.core.runtime.IPath, org.eclipse.jdt.core.IJavaProject, java.lang.String, org.eclipse.core.runtime.IPath, java.lang.String, boolean);
    descriptor: (Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IJavaProject;Ljava/lang/String;Lorg/eclipse/core/runtime/IPath;Ljava/lang/String;Z)Lorg/eclipse/jdt/core/IJavaModelStatus;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=11, locals=12, args_size=6
        start local 0 // org.eclipse.core.runtime.IPath path
        start local 1 // org.eclipse.jdt.core.IJavaProject project
        start local 2 // java.lang.String container
        start local 3 // org.eclipse.core.runtime.IPath sourceAttachment
        start local 4 // java.lang.String entryPathMsg
        start local 5 // boolean isOptionalLibrary
         0: .line 2402
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.isAbsolute:()Z
            ifeq 88
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.isEmpty:()Z
            ifne 88
         1: .line 2403
            ldc "ignore"
            aload 1 /* project */
            ldc "org.eclipse.jdt.core.incompatibleJDKLevel"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
            iconst_0
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: istore 6 /* validateJdkLevelCompatibility */
        start local 6 // boolean validateJdkLevelCompatibility
         4: .line 2405
            iload 6 /* validateJdkLevelCompatibility */
            ifne 6
            iload 5 /* isOptionalLibrary */
            ifeq 6
         5: .line 2406
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            areturn
         6: .line 2408
      StackMap locals: int
      StackMap stack:
            aload 0 /* path */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            astore 7 /* target */
        start local 7 // java.lang.Object target
         7: .line 2409
            aload 7 /* target */
            ifnonnull 11
         8: .line 2410
            getstatic org.eclipse.jdt.internal.core.ClasspathEntry.workspaceRoot:Lorg/eclipse/core/resources/IWorkspaceRoot;
            invokeinterface org.eclipse.core.resources.IWorkspaceRoot.getLocation:()Lorg/eclipse/core/runtime/IPath;
            astore 8 /* workspaceLocation */
        start local 8 // org.eclipse.core.runtime.IPath workspaceLocation
         9: .line 2411
            aload 8 /* workspaceLocation */
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.isPrefixOf:(Lorg/eclipse/core/runtime/IPath;)Z
            ifeq 11
        10: .line 2412
            aload 0 /* path */
            aload 8 /* workspaceLocation */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelativeTo:(Lorg/eclipse/core/runtime/IPath;)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeAbsolute:()Lorg/eclipse/core/runtime/IPath;
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            astore 7 /* target */
        end local 8 // org.eclipse.core.runtime.IPath workspaceLocation
        11: .line 2415
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 7 /* target */
            ifnull 37
            iload 6 /* validateJdkLevelCompatibility */
            ifeq 37
        12: .line 2416
            aload 1 /* project */
            ldc "org.eclipse.jdt.core.compiler.codegen.targetPlatform"
            iconst_1
            invokeinterface org.eclipse.jdt.core.IJavaProject.getOption:(Ljava/lang/String;Z)Ljava/lang/String;
            invokestatic org.eclipse.jdt.internal.compiler.impl.CompilerOptions.versionToJdkLevel:(Ljava/lang/String;)J
            lstore 8 /* projectTargetJDK */
        start local 8 // long projectTargetJDK
        13: .line 2417
            aload 7 /* target */
            invokestatic org.eclipse.jdt.internal.core.util.Util.getJdkLevel:(Ljava/lang/Object;)J
            lstore 10 /* libraryJDK */
        start local 10 // long libraryJDK
        14: .line 2418
            lload 10 /* libraryJDK */
            lconst_0
            lcmp
            ifeq 37
            lload 10 /* libraryJDK */
            lload 8 /* projectTargetJDK */
            lcmp
            ifle 37
        15: .line 2419
            aload 2 /* container */
            ifnull 27
        16: .line 2420
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1004
        17: .line 2421
            aload 1 /* project */
            aload 0 /* path */
        18: .line 2422
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_incompatibleLibraryJDKLevelInContainer:Ljava/lang/String;
        19: .line 2423
            iconst_5
            anewarray java.lang.String
            dup
            iconst_0
        20: .line 2424
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
        21: .line 2425
            lload 8 /* projectTargetJDK */
            invokestatic org.eclipse.jdt.internal.compiler.impl.CompilerOptions.versionFromJdkLevel:(J)Ljava/lang/String;
            aastore
            dup
            iconst_2
        22: .line 2426
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_3
        23: .line 2427
            aload 2 /* container */
            aastore
            dup
            iconst_4
        24: .line 2428
            lload 10 /* libraryJDK */
            invokestatic org.eclipse.jdt.internal.compiler.impl.CompilerOptions.versionFromJdkLevel:(J)Ljava/lang/String;
            aastore
        25: .line 2422
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        26: .line 2420
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;Ljava/lang/String;)V
            areturn
        27: .line 2430
      StackMap locals: long long
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 1004
        28: .line 2431
            aload 1 /* project */
            aload 0 /* path */
        29: .line 2432
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_incompatibleLibraryJDKLevel:Ljava/lang/String;
        30: .line 2433
            iconst_4
            anewarray java.lang.String
            dup
            iconst_0
        31: .line 2434
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
        32: .line 2435
            lload 8 /* projectTargetJDK */
            invokestatic org.eclipse.jdt.internal.compiler.impl.CompilerOptions.versionFromJdkLevel:(J)Ljava/lang/String;
            aastore
            dup
            iconst_2
        33: .line 2436
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_3
        34: .line 2437
            lload 10 /* libraryJDK */
            invokestatic org.eclipse.jdt.internal.compiler.impl.CompilerOptions.versionFromJdkLevel:(J)Ljava/lang/String;
            aastore
        35: .line 2432
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        36: .line 2430
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILorg/eclipse/jdt/core/IJavaElement;Lorg/eclipse/core/runtime/IPath;Ljava/lang/String;)V
            areturn
        end local 10 // long libraryJDK
        end local 8 // long projectTargetJDK
        37: .line 2441
      StackMap locals:
      StackMap stack:
            iload 5 /* isOptionalLibrary */
            ifeq 39
        38: .line 2442
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            areturn
        39: .line 2444
      StackMap locals:
      StackMap stack:
            aload 7 /* target */
            instanceof org.eclipse.core.resources.IResource
            ifeq 58
        40: .line 2445
            aload 7 /* target */
            checkcast org.eclipse.core.resources.IResource
            astore 8 /* resolvedResource */
        start local 8 // org.eclipse.core.resources.IResource resolvedResource
        41: .line 2446
            aload 8 /* resolvedResource */
            invokeinterface org.eclipse.core.resources.IResource.getType:()I
            tableswitch { // 1 - 2
                    1: 42
                    2: 51
              default: 57
          }
        42: .line 2448
      StackMap locals: org.eclipse.core.resources.IResource
      StackMap stack:
            aload 3 /* sourceAttachment */
            ifnull 48
        43: .line 2449
            aload 3 /* sourceAttachment */
            invokeinterface org.eclipse.core.runtime.IPath.isEmpty:()Z
            ifne 48
        44: .line 2450
            aload 3 /* sourceAttachment */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            ifnonnull 48
        45: .line 2451
            aload 2 /* container */
            ifnull 47
        46: .line 2452
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundSourceAttachmentInContainedLibrary:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* sourceAttachment */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 2 /* container */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        47: .line 2454
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundSourceAttachment:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* sourceAttachment */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        48: .line 2459
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            aload 1 /* project */
            aload 4 /* entryPathMsg */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.validateLibraryContents:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IJavaProject;Ljava/lang/String;)Lorg/eclipse/jdt/core/IJavaModelStatus;
            astore 9 /* status */
        start local 9 // org.eclipse.jdt.core.IJavaModelStatus status
        49: .line 2460
            aload 9 /* status */
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            if_acmpeq 95
        50: .line 2461
            aload 9 /* status */
            areturn
        end local 9 // org.eclipse.jdt.core.IJavaModelStatus status
        51: .line 2464
      StackMap locals:
      StackMap stack:
            aload 3 /* sourceAttachment */
            ifnull 95
        52: .line 2465
            aload 3 /* sourceAttachment */
            invokeinterface org.eclipse.core.runtime.IPath.isEmpty:()Z
            ifne 95
        53: .line 2466
            aload 3 /* sourceAttachment */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            ifnonnull 95
        54: .line 2467
            aload 2 /* container */
            ifnull 56
        55: .line 2468
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundSourceAttachmentInContainedLibrary:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* sourceAttachment */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 2 /* container */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        56: .line 2470
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundSourceAttachment:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* sourceAttachment */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 8 // org.eclipse.core.resources.IResource resolvedResource
        57: .line 2474
      StackMap locals:
      StackMap stack:
            goto 95
      StackMap locals:
      StackMap stack:
        58: aload 7 /* target */
            instanceof java.io.File
            ifeq 74
        59: .line 2475
            aload 7 /* target */
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getFile:(Ljava/lang/Object;)Ljava/io/File;
            astore 8 /* file */
        start local 8 // java.io.File file
        60: .line 2476
            aload 8 /* file */
            ifnonnull 64
        61: .line 2477
            aload 2 /* container */
            ifnull 63
        62: .line 2478
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_illegalExternalFolderInContainer:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* container */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        63: .line 2480
      StackMap locals: java.io.File
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_illegalExternalFolder:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        64: .line 2483
      StackMap locals:
      StackMap stack:
            aload 3 /* sourceAttachment */
            ifnull 70
        65: .line 2484
            aload 3 /* sourceAttachment */
            invokeinterface org.eclipse.core.runtime.IPath.isEmpty:()Z
            ifne 70
        66: .line 2485
            aload 3 /* sourceAttachment */
            iconst_1
            invokestatic org.eclipse.jdt.internal.core.JavaModel.getTarget:(Lorg/eclipse/core/runtime/IPath;Z)Ljava/lang/Object;
            ifnonnull 70
        67: .line 2486
            aload 2 /* container */
            ifnull 69
        68: .line 2487
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundSourceAttachmentInContainedLibrary:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* sourceAttachment */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 2 /* container */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        69: .line 2489
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundSourceAttachment:Ljava/lang/String;
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 3 /* sourceAttachment */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        70: .line 2494
      StackMap locals:
      StackMap stack:
            aload 8 /* file */
            invokevirtual java.io.File.isFile:()Z
            ifeq 95
        71: .line 2495
            aload 0 /* path */
            aload 1 /* project */
            aload 4 /* entryPathMsg */
            invokestatic org.eclipse.jdt.internal.core.ClasspathEntry.validateLibraryContents:(Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IJavaProject;Ljava/lang/String;)Lorg/eclipse/jdt/core/IJavaModelStatus;
            astore 9 /* status */
        start local 9 // org.eclipse.jdt.core.IJavaModelStatus status
        72: .line 2496
            aload 9 /* status */
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            if_acmpeq 95
        73: .line 2497
            aload 9 /* status */
            areturn
        end local 9 // org.eclipse.jdt.core.IJavaModelStatus status
        end local 8 // java.io.File file
        74: .line 2501
      StackMap locals:
      StackMap stack:
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.getDevice:()Ljava/lang/String;
            ifnonnull 75
            invokestatic org.eclipse.core.resources.ResourcesPlugin.getWorkspace:()Lorg/eclipse/core/resources/IWorkspace;
            invokeinterface org.eclipse.core.resources.IWorkspace.getRoot:()Lorg/eclipse/core/resources/IWorkspaceRoot;
            aload 0 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokeinterface org.eclipse.core.resources.IWorkspaceRoot.getProject:(Ljava/lang/String;)Lorg/eclipse/core/resources/IProject;
            invokeinterface org.eclipse.core.resources.IProject.exists:()Z
            ifeq 75
            iconst_0
            goto 76
      StackMap locals:
      StackMap stack:
        75: iconst_1
      StackMap locals:
      StackMap stack: int
        76: istore 8 /* isExternal */
        start local 8 // boolean isExternal
        77: .line 2502
            iload 8 /* isExternal */
            ifeq 81
        78: .line 2503
            aload 2 /* container */
            ifnull 80
        79: .line 2504
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundLibraryInContainer:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* container */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        80: .line 2506
      StackMap locals: int
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundLibrary:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toOSString:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        81: .line 2509
      StackMap locals:
      StackMap stack:
            aload 4 /* entryPathMsg */
            ifnonnull 85
        82: .line 2510
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aload 0 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 83
            aload 0 /* path */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            goto 84
      StackMap locals:
      StackMap stack:
        83: aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        84: astore 4 /* entryPathMsg */
        85: .line 2511
      StackMap locals:
      StackMap stack:
            aload 2 /* container */
            ifnull 87
        86: .line 2512
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundLibraryInContainer:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 4 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 2 /* container */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        87: .line 2514
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_unboundLibrary:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 4 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 8 // boolean isExternal
        end local 7 // java.lang.Object target
        end local 6 // boolean validateJdkLevelCompatibility
        88: .line 2519
      StackMap locals:
      StackMap stack:
            aload 4 /* entryPathMsg */
            ifnonnull 92
        89: .line 2520
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aload 0 /* path */
            iconst_0
            invokeinterface org.eclipse.core.runtime.IPath.segment:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 90
            aload 0 /* path */
            iconst_1
            invokeinterface org.eclipse.core.runtime.IPath.removeFirstSegments:(I)Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.makeRelative:()Lorg/eclipse/core/runtime/IPath;
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
            goto 91
      StackMap locals:
      StackMap stack:
        90: aload 0 /* path */
            invokeinterface org.eclipse.core.runtime.IPath.toString:()Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
        91: astore 4 /* entryPathMsg */
        92: .line 2521
      StackMap locals:
      StackMap stack:
            aload 2 /* container */
            ifnull 94
        93: .line 2522
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_illegalLibraryPathInContainer:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 4 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 2 /* container */
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        94: .line 2524
      StackMap locals:
      StackMap stack:
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_illegalLibraryPath:Ljava/lang/String;
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 4 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        95: .line 2527
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            areturn
        end local 5 // boolean isOptionalLibrary
        end local 4 // java.lang.String entryPathMsg
        end local 3 // org.eclipse.core.runtime.IPath sourceAttachment
        end local 2 // java.lang.String container
        end local 1 // org.eclipse.jdt.core.IJavaProject project
        end local 0 // org.eclipse.core.runtime.IPath path
      LocalVariableTable:
        Start  End  Slot                           Name  Signature
            0   96     0                           path  Lorg/eclipse/core/runtime/IPath;
            0   96     1                        project  Lorg/eclipse/jdt/core/IJavaProject;
            0   96     2                      container  Ljava/lang/String;
            0   96     3               sourceAttachment  Lorg/eclipse/core/runtime/IPath;
            0   96     4                   entryPathMsg  Ljava/lang/String;
            0   96     5              isOptionalLibrary  Z
            4   88     6  validateJdkLevelCompatibility  Z
            7   88     7                         target  Ljava/lang/Object;
            9   11     8              workspaceLocation  Lorg/eclipse/core/runtime/IPath;
           13   37     8               projectTargetJDK  J
           14   37    10                     libraryJDK  J
           41   57     8               resolvedResource  Lorg/eclipse/core/resources/IResource;
           49   51     9                         status  Lorg/eclipse/jdt/core/IJavaModelStatus;
           60   74     8                           file  Ljava/io/File;
           72   74     9                         status  Lorg/eclipse/jdt/core/IJavaModelStatus;
           77   88     8                     isExternal  Z
    MethodParameters:
                   Name  Flags
      path               
      project            
      container          
      sourceAttachment   
      entryPathMsg       
      isOptionalLibrary  

  private static org.eclipse.jdt.core.IJavaModelStatus validateLibraryContents(org.eclipse.core.runtime.IPath, org.eclipse.jdt.core.IJavaProject, java.lang.String);
    descriptor: (Lorg/eclipse/core/runtime/IPath;Lorg/eclipse/jdt/core/IJavaProject;Ljava/lang/String;)Lorg/eclipse/jdt/core/IJavaModelStatus;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=5, args_size=3
        start local 0 // org.eclipse.core.runtime.IPath path
        start local 1 // org.eclipse.jdt.core.IJavaProject project
        start local 2 // java.lang.String entryPathMsg
         0: .line 2531
            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 2533
            aload 3 /* manager */
            aload 0 /* path */
            invokevirtual org.eclipse.jdt.internal.core.JavaModelManager.verifyArchiveContent:(Lorg/eclipse/core/runtime/IPath;)V
         2: .line 2534
            goto 9
      StackMap locals: org.eclipse.core.runtime.IPath org.eclipse.jdt.core.IJavaProject java.lang.String org.eclipse.jdt.internal.core.JavaModelManager
      StackMap stack: org.eclipse.core.runtime.CoreException
         3: astore 4 /* e */
        start local 4 // org.eclipse.core.runtime.CoreException e
         4: .line 2535
            aload 4 /* e */
            invokevirtual org.eclipse.core.runtime.CoreException.getStatus:()Lorg/eclipse/core/runtime/IStatus;
            invokeinterface org.eclipse.core.runtime.IStatus.getMessage:()Ljava/lang/String;
            getstatic org.eclipse.jdt.internal.core.util.Messages.status_IOException:Ljava/lang/String;
            if_acmpne 9
         5: .line 2536
            new org.eclipse.jdt.internal.core.JavaModelStatus
            dup
            sipush 964
         6: .line 2537
            getstatic org.eclipse.jdt.internal.core.util.Messages.classpath_archiveReadError:Ljava/lang/String;
         7: .line 2538
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 2 /* entryPathMsg */
            aastore
            dup
            iconst_1
            aload 1 /* project */
            invokeinterface org.eclipse.jdt.core.IJavaProject.getElementName:()Ljava/lang/String;
            aastore
         8: .line 2536
            invokestatic org.eclipse.jdt.internal.core.util.Messages.bind:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jdt.internal.core.JavaModelStatus.<init>:(ILjava/lang/String;)V
            areturn
        end local 4 // org.eclipse.core.runtime.CoreException e
         9: .line 2541
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jdt.internal.core.JavaModelStatus.VERIFIED_OK:Lorg/eclipse/jdt/core/IJavaModelStatus;
            areturn
        end local 3 // org.eclipse.jdt.internal.core.JavaModelManager manager
        end local 2 // java.lang.String entryPathMsg
        end local 1 // org.eclipse.jdt.core.IJavaProject project
        end local 0 // org.eclipse.core.runtime.IPath path
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          path  Lorg/eclipse/core/runtime/IPath;
            0   10     1       project  Lorg/eclipse/jdt/core/IJavaProject;
            0   10     2  entryPathMsg  Ljava/lang/String;
            1   10     3       manager  Lorg/eclipse/jdt/internal/core/JavaModelManager;
            4    9     4             e  Lorg/eclipse/core/runtime/CoreException;
      Exception table:
        from    to  target  type
           1     2       3  Class org.eclipse.core.runtime.CoreException
    MethodParameters:
              Name  Flags
      path          
      project       
      entryPathMsg  

  public static void setSharedIndexLocation(java.lang.String, java.lang.Class<?>);
    descriptor: (Ljava/lang/String;Ljava/lang/Class;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String value
        start local 1 // java.lang.Class clazz
         0: .line 2548
            aload 1 /* clazz */
            ifnull 3
            ldc "org.eclipse.jdt.core.tests.model.JavaIndexTests"
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 2549
            aload 0 /* value */
            putstatic org.eclipse.jdt.internal.core.ClasspathEntry.SHARED_INDEX_LOCATION:Ljava/lang/String;
         2: .line 2550
            goto 4
         3: .line 2551
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Cannot set index location for specified test class"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 2553
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Class clazz
        end local 0 // java.lang.String value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  value  Ljava/lang/String;
            0    5     1  clazz  Ljava/lang/Class<*>;
    Exceptions:
      throws java.lang.IllegalArgumentException
    Signature: (Ljava/lang/String;Ljava/lang/Class<*>;)V
    MethodParameters:
       Name  Flags
      value  
      clazz  

  private static boolean lambda$0(java.lang.String, org.eclipse.jdt.core.IClasspathAttribute);
    descriptor: (Ljava/lang/String;Lorg/eclipse/jdt/core/IClasspathAttribute;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // org.eclipse.jdt.core.IClasspathAttribute a
         0: .line 400
            aload 1 /* a */
            invokeinterface org.eclipse.jdt.core.IClasspathAttribute.getName:()Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // org.eclipse.jdt.core.IClasspathAttribute a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     1     a  Lorg/eclipse/jdt/core/IClasspathAttribute;

  private static org.eclipse.jdt.core.IClasspathAttribute[] lambda$1(int);
    descriptor: (I)[Lorg/eclipse/jdt/core/IClasspathAttribute;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            iload 0
            anewarray org.eclipse.jdt.core.IClasspathAttribute
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "ClasspathEntry.java"
NestMembers:
  org.eclipse.jdt.internal.core.ClasspathEntry$1  org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException  org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  org.eclipse.jdt.internal.core.ClasspathEntry$1
  public AssertionFailedException = org.eclipse.jdt.internal.core.ClasspathEntry$AssertionFailedException of org.eclipse.jdt.internal.core.ClasspathEntry
  UnknownXmlElements = org.eclipse.jdt.internal.core.ClasspathEntry$UnknownXmlElements of org.eclipse.jdt.internal.core.ClasspathEntry
  ResolvedClasspath = org.eclipse.jdt.internal.core.JavaProject$ResolvedClasspath of org.eclipse.jdt.internal.core.JavaProject