public class com.sun.tools.sjavac.JavacState
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.sjavac.JavacState
  super_class: java.lang.Object
{
  java.lang.String theArgs;
    descriptor: Ljava/lang/String;
    flags: (0x0000) 

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

  private java.io.File javacState;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.tools.sjavac.BuildState prev;
    descriptor: Lcom/sun/tools/sjavac/BuildState;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.tools.sjavac.BuildState now;
    descriptor: Lcom/sun/tools/sjavac/BuildState;
    flags: (0x0002) ACC_PRIVATE

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

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

  private java.util.Set<java.lang.String> taintedPackages;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private java.util.Set<java.lang.String> packagesWithChangedPublicApis;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private java.util.Set<java.lang.String> taintedModules;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private java.util.Set<java.lang.String> recompiledPackages;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private java.io.File binDir;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private java.io.File gensrcDir;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private java.io.File headerDir;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private java.io.File stateDir;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Set<java.io.File> binArtifacts;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/io/File;>;

  private java.util.Set<java.io.File> gensrcArtifacts;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/io/File;>;

  private java.util.Set<java.io.File> headerArtifacts;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/io/File;>;

  java.util.Set<com.sun.tools.sjavac.Source> removedSources;
    descriptor: Ljava/util/Set;
    flags: (0x0000) 
    Signature: Ljava/util/Set<Lcom/sun/tools/sjavac/Source;>;

  java.util.Set<com.sun.tools.sjavac.Source> addedSources;
    descriptor: Ljava/util/Set;
    flags: (0x0000) 
    Signature: Ljava/util/Set<Lcom/sun/tools/sjavac/Source;>;

  java.util.Set<com.sun.tools.sjavac.Source> modifiedSources;
    descriptor: Ljava/util/Set;
    flags: (0x0000) 
    Signature: Ljava/util/Set<Lcom/sun/tools/sjavac/Source;>;

  java.util.Set<java.net.URI> visibleSrcs;
    descriptor: Ljava/util/Set;
    flags: (0x0000) 
    Signature: Ljava/util/Set<Ljava/net/URI;>;

  private com.sun.tools.sjavac.CompileJavaPackages compileJavaPackages;
    descriptor: Lcom/sun/tools/sjavac/CompileJavaPackages;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.tools.sjavac.options.Options options;
    descriptor: Lcom/sun/tools/sjavac/options/Options;
    flags: (0x0002) ACC_PRIVATE

  void <init>(com.sun.tools.sjavac.options.Options, boolean);
    descriptor: (Lcom/sun/tools/sjavac/options/Options;Z)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // com.sun.tools.sjavac.options.Options op
        start local 2 // boolean removeJavacState
         0: .line 129
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 115
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.sjavac.JavacState.removedSources:Ljava/util/Set;
         2: .line 116
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.sjavac.JavacState.addedSources:Ljava/util/Set;
         3: .line 117
            aload 0 /* this */
            aconst_null
            putfield com.sun.tools.sjavac.JavacState.modifiedSources:Ljava/util/Set;
         4: .line 124
            aload 0 /* this */
            new com.sun.tools.sjavac.CompileJavaPackages
            dup
            invokespecial com.sun.tools.sjavac.CompileJavaPackages.<init>:()V
            putfield com.sun.tools.sjavac.JavacState.compileJavaPackages:Lcom/sun/tools/sjavac/CompileJavaPackages;
         5: .line 130
            aload 0 /* this */
            aload 1 /* op */
            putfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
         6: .line 131
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            invokevirtual com.sun.tools.sjavac.options.Options.getNumCores:()I
            putfield com.sun.tools.sjavac.JavacState.numCores:I
         7: .line 132
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            invokevirtual com.sun.tools.sjavac.options.Options.getStateArgsString:()Ljava/lang/String;
            putfield com.sun.tools.sjavac.JavacState.theArgs:Ljava/lang/String;
         8: .line 133
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            invokevirtual com.sun.tools.sjavac.options.Options.getDestDir:()Ljava/nio/file/Path;
            invokestatic com.sun.tools.sjavac.Util.pathToFile:(Ljava/nio/file/Path;)Ljava/io/File;
            putfield com.sun.tools.sjavac.JavacState.binDir:Ljava/io/File;
         9: .line 134
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            invokevirtual com.sun.tools.sjavac.options.Options.getGenSrcDir:()Ljava/nio/file/Path;
            invokestatic com.sun.tools.sjavac.Util.pathToFile:(Ljava/nio/file/Path;)Ljava/io/File;
            putfield com.sun.tools.sjavac.JavacState.gensrcDir:Ljava/io/File;
        10: .line 135
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            invokevirtual com.sun.tools.sjavac.options.Options.getHeaderDir:()Ljava/nio/file/Path;
            invokestatic com.sun.tools.sjavac.Util.pathToFile:(Ljava/nio/file/Path;)Ljava/io/File;
            putfield com.sun.tools.sjavac.JavacState.headerDir:Ljava/io/File;
        11: .line 136
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            invokevirtual com.sun.tools.sjavac.options.Options.getStateDir:()Ljava/nio/file/Path;
            invokestatic com.sun.tools.sjavac.Util.pathToFile:(Ljava/nio/file/Path;)Ljava/io/File;
            putfield com.sun.tools.sjavac.JavacState.stateDir:Ljava/io/File;
        12: .line 137
            aload 0 /* this */
            new java.io.File
            dup
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.stateDir:Ljava/io/File;
            ldc "javac_state"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            putfield com.sun.tools.sjavac.JavacState.javacState:Ljava/io/File;
        13: .line 138
            iload 2 /* removeJavacState */
            ifeq 15
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.javacState:Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            ifeq 15
        14: .line 139
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.javacState:Ljava/io/File;
            invokevirtual java.io.File.delete:()Z
            pop
        15: .line 141
      StackMap locals: com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.options.Options int
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.sjavac.JavacState.newJavacState:Z
        16: .line 142
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.javacState:Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            ifne 23
        17: .line 143
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.sjavac.JavacState.newJavacState:Z
        18: .line 148
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            invokevirtual com.sun.tools.sjavac.options.Options.areUnidentifiedArtifactsPermitted:()Z
            ifne 22
        19: .line 149
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.binDir:Ljava/io/File;
            invokevirtual com.sun.tools.sjavac.JavacState.deleteContents:(Ljava/io/File;)V
        20: .line 150
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.gensrcDir:Ljava/io/File;
            invokevirtual com.sun.tools.sjavac.JavacState.deleteContents:(Ljava/io/File;)V
        21: .line 151
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.headerDir:Ljava/io/File;
            invokevirtual com.sun.tools.sjavac.JavacState.deleteContents:(Ljava/io/File;)V
        22: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.sjavac.JavacState.needsSaving:Z
        23: .line 155
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new com.sun.tools.sjavac.BuildState
            dup
            invokespecial com.sun.tools.sjavac.BuildState.<init>:()V
            putfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
        24: .line 156
            aload 0 /* this */
            new com.sun.tools.sjavac.BuildState
            dup
            invokespecial com.sun.tools.sjavac.BuildState.<init>:()V
            putfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
        25: .line 157
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.sjavac.JavacState.taintedPackages:Ljava/util/Set;
        26: .line 158
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.sjavac.JavacState.recompiledPackages:Ljava/util/Set;
        27: .line 159
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.sjavac.JavacState.packagesWithChangedPublicApis:Ljava/util/Set;
        28: .line 160
            return
        end local 2 // boolean removeJavacState
        end local 1 // com.sun.tools.sjavac.options.Options op
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   29     0              this  Lcom/sun/tools/sjavac/JavacState;
            0   29     1                op  Lcom/sun/tools/sjavac/options/Options;
            0   29     2  removeJavacState  Z
    MethodParameters:
                  Name  Flags
      op                
      removeJavacState  

  public com.sun.tools.sjavac.BuildState prev();
    descriptor: ()Lcom/sun/tools/sjavac/BuildState;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 162
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            areturn
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/sjavac/JavacState;

  public com.sun.tools.sjavac.BuildState now();
    descriptor: ()Lcom/sun/tools/sjavac/BuildState;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 163
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            areturn
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/sjavac/JavacState;

  static java.lang.String[] removeArgsNotAffectingState(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)[Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 169
            aload 0 /* args */
            arraylength
            anewarray java.lang.String
            astore 1 /* out */
        start local 1 // java.lang.String[] out
         1: .line 170
            iconst_0
            istore 2 /* j */
        start local 2 // int j
         2: .line 171
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 15
         4: .line 172
      StackMap locals: java.lang.String[] int int
      StackMap stack:
            aload 0 /* args */
            iload 3 /* i */
            aaload
            ldc "-j"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         5: .line 174
            iinc 3 /* i */ 1
         6: .line 175
            goto 14
      StackMap locals:
      StackMap stack:
         7: aload 0 /* args */
            iload 3 /* i */
            aaload
            ldc "--server:"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 14
         8: .line 177
            aload 0 /* args */
            iload 3 /* i */
            aaload
            ldc "--log="
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 14
         9: .line 179
            aload 0 /* args */
            iload 3 /* i */
            aaload
            ldc "--compare-found-sources"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
        10: .line 181
            iinc 3 /* i */ 1
        11: .line 182
            goto 14
        12: .line 184
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            iload 2 /* j */
            aload 0 /* args */
            iload 3 /* i */
            aaload
            aastore
        13: .line 185
            iinc 2 /* j */ 1
        14: .line 171
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 3 /* i */
            aload 0 /* args */
            arraylength
            if_icmplt 4
        end local 3 // int i
        16: .line 188
            iload 2 /* j */
            anewarray java.lang.String
            astore 3 /* ret */
        start local 3 // java.lang.String[] ret
        17: .line 189
            aload 1 /* out */
            iconst_0
            aload 3 /* ret */
            iconst_0
            iload 2 /* j */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        18: .line 190
            aload 3 /* ret */
            areturn
        end local 3 // java.lang.String[] ret
        end local 2 // int j
        end local 1 // java.lang.String[] out
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  args  [Ljava/lang/String;
            1   19     1   out  [Ljava/lang/String;
            2   19     2     j  I
            3   16     3     i  I
           17   19     3   ret  [Ljava/lang/String;
    MethodParameters:
      Name  Flags
      args  

  public void setVisibleSources(java.util.Map<java.lang.String, com.sun.tools.sjavac.Source>);
    descriptor: (Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.util.Map vs
         0: .line 197
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.sjavac.JavacState.visibleSrcs:Ljava/util/Set;
         1: .line 198
            aload 1 /* vs */
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Map top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* s */
        start local 2 // java.lang.String s
         3: .line 199
            aload 1 /* vs */
            aload 2 /* s */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            astore 4 /* src */
        start local 4 // com.sun.tools.sjavac.Source src
         4: .line 200
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.visibleSrcs:Ljava/util/Set;
            aload 4 /* src */
            invokevirtual com.sun.tools.sjavac.Source.file:()Ljava/io/File;
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // com.sun.tools.sjavac.Source src
        end local 2 // java.lang.String s
         5: .line 198
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 202
            return
        end local 1 // java.util.Map vs
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/tools/sjavac/JavacState;
            0    7     1    vs  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Source;>;
            3    5     2     s  Ljava/lang/String;
            4    5     4   src  Lcom/sun/tools/sjavac/Source;
    Signature: (Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Source;>;)V
    MethodParameters:
      Name  Flags
      vs    

  public boolean isIncremental();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 208
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            invokeinterface java.util.Map.isEmpty:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/sjavac/JavacState;

  public void findAllArtifacts();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 215
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.binDir:Ljava/io/File;
            invokestatic com.sun.tools.sjavac.JavacState.findAllFiles:(Ljava/io/File;)Ljava/util/Set;
            putfield com.sun.tools.sjavac.JavacState.binArtifacts:Ljava/util/Set;
         1: .line 216
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.gensrcDir:Ljava/io/File;
            invokestatic com.sun.tools.sjavac.JavacState.findAllFiles:(Ljava/io/File;)Ljava/util/Set;
            putfield com.sun.tools.sjavac.JavacState.gensrcArtifacts:Ljava/util/Set;
         2: .line 217
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.headerDir:Ljava/io/File;
            invokestatic com.sun.tools.sjavac.JavacState.findAllFiles:(Ljava/io/File;)Ljava/util/Set;
            putfield com.sun.tools.sjavac.JavacState.headerArtifacts:Ljava/util/Set;
         3: .line 218
            return
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/sjavac/JavacState;

  private java.util.Map<java.lang.String, java.io.File> fetchPrevArtifacts(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.lang.String pkg
         0: .line 224
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            aload 1 /* pkg */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Package
            astore 2 /* p */
        start local 2 // com.sun.tools.sjavac.Package p
         1: .line 225
            aload 2 /* p */
            ifnull 3
         2: .line 226
            aload 2 /* p */
            invokevirtual com.sun.tools.sjavac.Package.artifacts:()Ljava/util/Map;
            areturn
         3: .line 228
      StackMap locals: com.sun.tools.sjavac.Package
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            areturn
        end local 2 // com.sun.tools.sjavac.Package p
        end local 1 // java.lang.String pkg
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/tools/sjavac/JavacState;
            0    4     1   pkg  Ljava/lang/String;
            1    4     2     p  Lcom/sun/tools/sjavac/Package;
    Signature: (Ljava/lang/String;)Ljava/util/Map<Ljava/lang/String;Ljava/io/File;>;
    MethodParameters:
      Name  Flags
      pkg   

  public void deleteClassArtifactsInTaintedPackages();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 235
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.taintedPackages:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 2
            goto 8
      StackMap locals: com.sun.tools.sjavac.JavacState top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 1 /* pkg */
        start local 1 // java.lang.String pkg
         2: .line 236
            aload 0 /* this */
            aload 1 /* pkg */
            invokevirtual com.sun.tools.sjavac.JavacState.fetchPrevArtifacts:(Ljava/lang/String;)Ljava/util/Map;
            astore 3 /* arts */
        start local 3 // java.util.Map arts
         3: .line 237
            aload 3 /* arts */
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 7
      StackMap locals: com.sun.tools.sjavac.JavacState java.lang.String java.util.Iterator java.util.Map top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.io.File
            astore 4 /* f */
        start local 4 // java.io.File f
         5: .line 238
            aload 4 /* f */
            invokevirtual java.io.File.exists:()Z
            ifeq 7
            aload 4 /* f */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            ldc ".class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 7
         6: .line 239
            aload 4 /* f */
            invokevirtual java.io.File.delete:()Z
            pop
        end local 4 // java.io.File f
         7: .line 237
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 3 // java.util.Map arts
        end local 1 // java.lang.String pkg
         8: .line 235
      StackMap locals: com.sun.tools.sjavac.JavacState top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         9: .line 243
            return
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/sun/tools/sjavac/JavacState;
            2    8     1   pkg  Ljava/lang/String;
            3    8     3  arts  Ljava/util/Map<Ljava/lang/String;Ljava/io/File;>;
            5    7     4     f  Ljava/io/File;

  private void needsSaving();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 250
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.sjavac.JavacState.needsSaving:Z
         1: .line 251
            return
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/sjavac/JavacState;

  public void save();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 257
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.needsSaving:Z
            ifne 2
         1: .line 258
            return
         2: .line 259
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 1
            aconst_null
            astore 2
         3: new java.io.FileWriter
            dup
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.javacState:Ljava/io/File;
            invokespecial java.io.FileWriter.<init>:(Ljava/io/File;)V
            astore 3 /* out */
        start local 3 // java.io.FileWriter out
         4: .line 260
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 4 /* b */
        start local 4 // java.lang.StringBuilder b
         5: .line 261
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 5 /* millisNow */
        start local 5 // long millisNow
         6: .line 262
            new java.util.Date
            dup
            lload 5 /* millisNow */
            invokespecial java.util.Date.<init>:(J)V
            astore 7 /* d */
        start local 7 // java.util.Date d
         7: .line 263
            new java.text.SimpleDateFormat
            dup
            ldc "yyyy-MM-dd HH:mm:ss SSS"
            invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;)V
            astore 8 /* df */
        start local 8 // java.text.SimpleDateFormat df
         8: .line 264
            aload 4 /* b */
            new java.lang.StringBuilder
            dup
            ldc "# javac_state ver 0.4 generated "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            lload 5 /* millisNow */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* df */
            aload 7 /* d */
            invokevirtual java.text.SimpleDateFormat.format:(Ljava/util/Date;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 265
            aload 4 /* b */
            ldc "# This format might change at any time. Please do not depend on it.\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 266
            aload 4 /* b */
            ldc "# R arguments\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 267
            aload 4 /* b */
            ldc "# M module\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 268
            aload 4 /* b */
            ldc "# P package\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 269
            aload 4 /* b */
            ldc "# S C source_tobe_compiled timestamp\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 270
            aload 4 /* b */
            ldc "# S L link_only_source timestamp\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 271
            aload 4 /* b */
            ldc "# G C generated_source timestamp\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        16: .line 272
            aload 4 /* b */
            ldc "# A artifact timestamp\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 273
            aload 4 /* b */
            ldc "# D S dependant -> source dependency\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 274
            aload 4 /* b */
            ldc "# D C dependant -> classpath dependency\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 275
            aload 4 /* b */
            ldc "# I pubapi\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 276
            aload 4 /* b */
            ldc "R "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.theArgs:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 279
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.recompiledPackages:Ljava/util/Set;
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            invokevirtual com.sun.tools.sjavac.BuildState.copyPackagesExcept:(Lcom/sun/tools/sjavac/BuildState;Ljava/util/Set;Ljava/util/Set;)V
        22: .line 282
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.modules:()Ljava/util/Map;
            aload 4 /* b */
            invokestatic com.sun.tools.sjavac.Module.saveModules:(Ljava/util/Map;Ljava/lang/StringBuilder;)V
        23: .line 284
            aload 4 /* b */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 9 /* s */
        start local 9 // java.lang.String s
        24: .line 285
            aload 3 /* out */
            aload 9 /* s */
            iconst_0
            aload 9 /* s */
            invokevirtual java.lang.String.length:()I
            invokevirtual java.io.FileWriter.write:(Ljava/lang/String;II)V
        end local 9 // java.lang.String s
        end local 8 // java.text.SimpleDateFormat df
        end local 7 // java.util.Date d
        end local 5 // long millisNow
        end local 4 // java.lang.StringBuilder b
        25: .line 286
            aload 3 /* out */
            ifnull 31
            aload 3 /* out */
            invokevirtual java.io.FileWriter.close:()V
            goto 31
      StackMap locals: com.sun.tools.sjavac.JavacState java.lang.Throwable java.lang.Throwable java.io.FileWriter
      StackMap stack: java.lang.Throwable
        26: astore 1
            aload 3 /* out */
            ifnull 27
            aload 3 /* out */
            invokevirtual java.io.FileWriter.close:()V
        end local 3 // java.io.FileWriter out
      StackMap locals:
      StackMap stack:
        27: aload 1
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        28: astore 2
            aload 1
            ifnonnull 29
            aload 2
            astore 1
            goto 30
      StackMap locals:
      StackMap stack:
        29: aload 1
            aload 2
            if_acmpeq 30
            aload 1
            aload 2
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        30: aload 1
            athrow
        31: .line 287
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   32     0       this  Lcom/sun/tools/sjavac/JavacState;
            4   27     3        out  Ljava/io/FileWriter;
            5   25     4          b  Ljava/lang/StringBuilder;
            6   25     5  millisNow  J
            7   25     7          d  Ljava/util/Date;
            8   25     8         df  Ljava/text/SimpleDateFormat;
           24   25     9          s  Ljava/lang/String;
      Exception table:
        from    to  target  type
           4    25      26  any
           3    28      28  any
    Exceptions:
      throws java.io.IOException

  public static com.sun.tools.sjavac.JavacState load(com.sun.tools.sjavac.options.Options);
    descriptor: (Lcom/sun/tools/sjavac/options/Options;)Lcom/sun/tools/sjavac/JavacState;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=15, args_size=1
        start local 0 // com.sun.tools.sjavac.options.Options options
         0: .line 293
            new com.sun.tools.sjavac.JavacState
            dup
            aload 0 /* options */
            iconst_0
            invokespecial com.sun.tools.sjavac.JavacState.<init>:(Lcom/sun/tools/sjavac/options/Options;Z)V
            astore 1 /* db */
        start local 1 // com.sun.tools.sjavac.JavacState db
         1: .line 294
            aconst_null
            astore 2 /* lastModule */
        start local 2 // com.sun.tools.sjavac.Module lastModule
         2: .line 295
            aconst_null
            astore 3 /* lastPackage */
        start local 3 // com.sun.tools.sjavac.Package lastPackage
         3: .line 297
            iconst_0
            istore 4 /* noFileFound */
        start local 4 // boolean noFileFound
         4: .line 298
            iconst_0
            istore 5 /* foundCorrectVerNr */
        start local 5 // boolean foundCorrectVerNr
         5: .line 299
            iconst_0
            istore 6 /* newCommandLine */
        start local 6 // boolean newCommandLine
         6: .line 300
            iconst_0
            istore 7 /* syntaxError */
        start local 7 // boolean syntaxError
         7: .line 302
            new java.lang.StringBuilder
            dup
            ldc "Loading javac state file: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* db */
            getfield com.sun.tools.sjavac.JavacState.javacState:Ljava/io/File;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
         8: .line 304
            aconst_null
            astore 8
            aconst_null
            astore 9
         9: new java.io.BufferedReader
            dup
            new java.io.FileReader
            dup
            aload 1 /* db */
            getfield com.sun.tools.sjavac.JavacState.javacState:Ljava/io/File;
            invokespecial java.io.FileReader.<init>:(Ljava/io/File;)V
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            astore 10 /* in */
        start local 10 // java.io.BufferedReader in
        10: .line 306
      StackMap locals: com.sun.tools.sjavac.options.Options com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.Module com.sun.tools.sjavac.Package int int int int java.lang.Throwable java.lang.Throwable java.io.BufferedReader
      StackMap stack:
            aload 10 /* in */
            invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
            astore 11 /* l */
        start local 11 // java.lang.String l
        11: .line 307
            aload 11 /* l */
            ifnonnull 12
            goto 65
        12: .line 308
      StackMap locals: java.lang.String
      StackMap stack:
            aload 11 /* l */
            invokevirtual java.lang.String.length:()I
            iconst_3
            if_icmplt 10
            aload 11 /* l */
            iconst_1
            invokevirtual java.lang.String.charAt:(I)C
            bipush 32
            if_icmpne 10
        13: .line 309
            aload 11 /* l */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            istore 12 /* c */
        start local 12 // char c
        14: .line 310
            iload 12 /* c */
            bipush 77
            if_icmpne 17
        15: .line 311
            aload 1 /* db */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            aload 11 /* l */
            invokevirtual com.sun.tools.sjavac.BuildState.loadModule:(Ljava/lang/String;)Lcom/sun/tools/sjavac/Module;
            astore 2 /* lastModule */
        16: .line 312
            goto 10
        17: .line 313
      StackMap locals: int
      StackMap stack:
            iload 12 /* c */
            bipush 80
            if_icmpne 21
        18: .line 314
            aload 2 /* lastModule */
            ifnonnull 19
            iconst_1
            istore 7 /* syntaxError */
            goto 65
        19: .line 315
      StackMap locals:
      StackMap stack:
            aload 1 /* db */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            aload 2 /* lastModule */
            aload 11 /* l */
            invokevirtual com.sun.tools.sjavac.BuildState.loadPackage:(Lcom/sun/tools/sjavac/Module;Ljava/lang/String;)Lcom/sun/tools/sjavac/Package;
            astore 3 /* lastPackage */
        20: .line 316
            goto 10
        21: .line 317
      StackMap locals:
      StackMap stack:
            iload 12 /* c */
            bipush 68
            if_icmpne 31
        22: .line 318
            aload 2 /* lastModule */
            ifnull 23
            aload 3 /* lastPackage */
            ifnonnull 24
      StackMap locals:
      StackMap stack:
        23: iconst_1
            istore 7 /* syntaxError */
            goto 65
        24: .line 319
      StackMap locals:
      StackMap stack:
            aload 11 /* l */
            iconst_2
            invokevirtual java.lang.String.charAt:(I)C
            istore 13 /* depType */
        start local 13 // char depType
        25: .line 320
            iload 13 /* depType */
            bipush 83
            if_icmpeq 27
            iload 13 /* depType */
            bipush 67
            if_icmpeq 27
        26: .line 321
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Bad dependency string: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 11 /* l */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        27: .line 322
      StackMap locals: int
      StackMap stack:
            aload 3 /* lastPackage */
            aload 11 /* l */
            iconst_4
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            iload 13 /* depType */
            bipush 67
            if_icmpne 28
            iconst_1
            goto 29
      StackMap locals: com.sun.tools.sjavac.options.Options com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.Module com.sun.tools.sjavac.Package int int int int java.lang.Throwable java.lang.Throwable java.io.BufferedReader java.lang.String int int
      StackMap stack: com.sun.tools.sjavac.Package java.lang.String
        28: iconst_0
      StackMap locals: com.sun.tools.sjavac.options.Options com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.Module com.sun.tools.sjavac.Package int int int int java.lang.Throwable java.lang.Throwable java.io.BufferedReader java.lang.String int int
      StackMap stack: com.sun.tools.sjavac.Package java.lang.String int
        29: invokevirtual com.sun.tools.sjavac.Package.parseAndAddDependency:(Ljava/lang/String;Z)V
        end local 13 // char depType
        30: .line 323
            goto 10
        31: .line 324
      StackMap locals:
      StackMap stack:
            iload 12 /* c */
            bipush 73
            if_icmpne 36
        32: .line 325
            aload 2 /* lastModule */
            ifnull 33
            aload 3 /* lastPackage */
            ifnonnull 34
      StackMap locals:
      StackMap stack:
        33: iconst_1
            istore 7 /* syntaxError */
            goto 65
        34: .line 326
      StackMap locals:
      StackMap stack:
            aload 3 /* lastPackage */
            invokevirtual com.sun.tools.sjavac.Package.getPubApi:()Lcom/sun/tools/sjavac/pubapi/PubApi;
            aload 11 /* l */
            iconst_2
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual com.sun.tools.sjavac.pubapi.PubApi.appendItem:(Ljava/lang/String;)V
        35: .line 327
            goto 10
        36: .line 328
      StackMap locals:
      StackMap stack:
            iload 12 /* c */
            bipush 65
            if_icmpne 41
        37: .line 329
            aload 2 /* lastModule */
            ifnull 38
            aload 3 /* lastPackage */
            ifnonnull 39
      StackMap locals:
      StackMap stack:
        38: iconst_1
            istore 7 /* syntaxError */
            goto 65
        39: .line 330
      StackMap locals:
      StackMap stack:
            aload 3 /* lastPackage */
            aload 11 /* l */
            invokevirtual com.sun.tools.sjavac.Package.loadArtifact:(Ljava/lang/String;)V
        40: .line 331
            goto 10
        41: .line 332
      StackMap locals:
      StackMap stack:
            iload 12 /* c */
            bipush 83
            if_icmpne 46
        42: .line 333
            aload 2 /* lastModule */
            ifnull 43
            aload 3 /* lastPackage */
            ifnonnull 44
      StackMap locals:
      StackMap stack:
        43: iconst_1
            istore 7 /* syntaxError */
            goto 65
        44: .line 334
      StackMap locals:
      StackMap stack:
            aload 1 /* db */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            aload 3 /* lastPackage */
            aload 11 /* l */
            iconst_0
            invokevirtual com.sun.tools.sjavac.BuildState.loadSource:(Lcom/sun/tools/sjavac/Package;Ljava/lang/String;Z)Lcom/sun/tools/sjavac/Source;
            pop
        45: .line 335
            goto 10
        46: .line 336
      StackMap locals:
      StackMap stack:
            iload 12 /* c */
            bipush 71
            if_icmpne 51
        47: .line 337
            aload 2 /* lastModule */
            ifnull 48
            aload 3 /* lastPackage */
            ifnonnull 49
      StackMap locals:
      StackMap stack:
        48: iconst_1
            istore 7 /* syntaxError */
            goto 65
        49: .line 338
      StackMap locals:
      StackMap stack:
            aload 1 /* db */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            aload 3 /* lastPackage */
            aload 11 /* l */
            iconst_1
            invokevirtual com.sun.tools.sjavac.BuildState.loadSource:(Lcom/sun/tools/sjavac/Package;Ljava/lang/String;Z)Lcom/sun/tools/sjavac/Source;
            pop
        50: .line 339
            goto 10
        51: .line 340
      StackMap locals:
      StackMap stack:
            iload 12 /* c */
            bipush 82
            if_icmpne 56
        52: .line 341
            new java.lang.StringBuilder
            dup
            ldc "R "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* db */
            getfield com.sun.tools.sjavac.JavacState.theArgs:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 13 /* ncmdl */
        start local 13 // java.lang.String ncmdl
        53: .line 342
            aload 11 /* l */
            aload 13 /* ncmdl */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
        54: .line 343
            iconst_1
            istore 6 /* newCommandLine */
        end local 13 // java.lang.String ncmdl
        55: .line 345
            goto 10
        56: .line 346
      StackMap locals:
      StackMap stack:
            iload 12 /* c */
            bipush 35
            if_icmpne 10
        57: .line 347
            aload 11 /* l */
            ldc "# javac_state ver "
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 10
        58: .line 348
            aload 11 /* l */
            ldc " "
            bipush 18
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
            istore 13 /* sp */
        start local 13 // int sp
        59: .line 349
            iload 13 /* sp */
            iconst_m1
            if_icmpeq 10
        60: .line 350
            aload 11 /* l */
            bipush 18
            iload 13 /* sp */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 14 /* ver */
        start local 14 // java.lang.String ver
        61: .line 351
            aload 14 /* ver */
            ldc "0.4"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 63
        62: .line 352
            goto 65
        63: .line 354
      StackMap locals: int java.lang.String
      StackMap stack:
            iconst_1
            istore 5 /* foundCorrectVerNr */
        end local 14 // java.lang.String ver
        end local 13 // int sp
        end local 12 // char c
        end local 11 // java.lang.String l
        64: .line 305
            goto 10
        65: .line 360
      StackMap locals: com.sun.tools.sjavac.options.Options com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.Module com.sun.tools.sjavac.Package int int int int java.lang.Throwable java.lang.Throwable java.io.BufferedReader
      StackMap stack:
            aload 10 /* in */
            ifnull 79
            aload 10 /* in */
            invokevirtual java.io.BufferedReader.close:()V
            goto 79
      StackMap locals:
      StackMap stack: java.lang.Throwable
        66: astore 8
            aload 10 /* in */
            ifnull 67
            aload 10 /* in */
            invokevirtual java.io.BufferedReader.close:()V
        end local 10 // java.io.BufferedReader in
      StackMap locals:
      StackMap stack:
        67: aload 8
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        68: astore 9
            aload 8
            ifnonnull 69
            aload 9
            astore 8
            goto 70
      StackMap locals:
      StackMap stack:
        69: aload 8
            aload 9
            if_acmpeq 70
            aload 8
            aload 9
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        70: aload 8
            athrow
      StackMap locals: com.sun.tools.sjavac.options.Options com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.Module com.sun.tools.sjavac.Package int int int int
      StackMap stack: java.io.IOException
        71: pop
        72: .line 362
            iconst_1
            istore 4 /* noFileFound */
            goto 79
        73: .line 363
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
        74: .line 364
            ldc "Dropping old javac_state because of errors when reading it."
            invokestatic com.sun.tools.sjavac.Log.warn:(Ljava/lang/String;)V
        75: .line 365
            new com.sun.tools.sjavac.JavacState
            dup
            aload 0 /* options */
            iconst_1
            invokespecial com.sun.tools.sjavac.JavacState.<init>:(Lcom/sun/tools/sjavac/options/Options;Z)V
            astore 1 /* db */
        76: .line 366
            iconst_1
            istore 5 /* foundCorrectVerNr */
        77: .line 367
            iconst_0
            istore 6 /* newCommandLine */
        78: .line 368
            iconst_0
            istore 7 /* syntaxError */
        79: .line 370
      StackMap locals:
      StackMap stack:
            iload 5 /* foundCorrectVerNr */
            ifne 83
            iload 4 /* noFileFound */
            ifne 83
        80: .line 371
            ldc "Dropping old javac_state since it is of an old version."
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
        81: .line 372
            new com.sun.tools.sjavac.JavacState
            dup
            aload 0 /* options */
            iconst_1
            invokespecial com.sun.tools.sjavac.JavacState.<init>:(Lcom/sun/tools/sjavac/options/Options;Z)V
            astore 1 /* db */
        82: .line 373
            goto 90
        83: .line 374
      StackMap locals:
      StackMap stack:
            iload 6 /* newCommandLine */
            ifeq 87
            iload 4 /* noFileFound */
            ifne 87
        84: .line 375
            ldc "Dropping old javac_state since a new command line is used!"
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
        85: .line 376
            new com.sun.tools.sjavac.JavacState
            dup
            aload 0 /* options */
            iconst_1
            invokespecial com.sun.tools.sjavac.JavacState.<init>:(Lcom/sun/tools/sjavac/options/Options;Z)V
            astore 1 /* db */
        86: .line 377
            goto 90
        87: .line 378
      StackMap locals:
      StackMap stack:
            iload 7 /* syntaxError */
            ifeq 90
        88: .line 379
            ldc "Dropping old javac_state since it contains syntax errors."
            invokestatic com.sun.tools.sjavac.Log.warn:(Ljava/lang/String;)V
        89: .line 380
            new com.sun.tools.sjavac.JavacState
            dup
            aload 0 /* options */
            iconst_1
            invokespecial com.sun.tools.sjavac.JavacState.<init>:(Lcom/sun/tools/sjavac/options/Options;Z)V
            astore 1 /* db */
        90: .line 382
      StackMap locals:
      StackMap stack:
            aload 1 /* db */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.calculateDependents:()V
        91: .line 383
            aload 1 /* db */
            areturn
        end local 7 // boolean syntaxError
        end local 6 // boolean newCommandLine
        end local 5 // boolean foundCorrectVerNr
        end local 4 // boolean noFileFound
        end local 3 // com.sun.tools.sjavac.Package lastPackage
        end local 2 // com.sun.tools.sjavac.Module lastModule
        end local 1 // com.sun.tools.sjavac.JavacState db
        end local 0 // com.sun.tools.sjavac.options.Options options
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   92     0            options  Lcom/sun/tools/sjavac/options/Options;
            1   92     1                 db  Lcom/sun/tools/sjavac/JavacState;
            2   92     2         lastModule  Lcom/sun/tools/sjavac/Module;
            3   92     3        lastPackage  Lcom/sun/tools/sjavac/Package;
            4   92     4        noFileFound  Z
            5   92     5  foundCorrectVerNr  Z
            6   92     6     newCommandLine  Z
            7   92     7        syntaxError  Z
           10   67    10                 in  Ljava/io/BufferedReader;
           11   64    11                  l  Ljava/lang/String;
           14   64    12                  c  C
           25   30    13            depType  C
           53   55    13              ncmdl  Ljava/lang/String;
           59   64    13                 sp  I
           61   64    14                ver  Ljava/lang/String;
      Exception table:
        from    to  target  type
          10    65      66  any
           9    68      68  any
           8    71      71  Class java.io.FileNotFoundException
           8    71      71  Class java.nio.file.NoSuchFileException
           8    71      73  Class java.io.IOException
    MethodParameters:
         Name  Flags
      options  

  public void taintPackage(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.lang.String name
        start local 2 // java.lang.String because
         0: .line 390
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.taintedPackages:Ljava/util/Set;
            aload 1 /* name */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 10
         1: .line 391
            aload 2 /* because */
            ifnull 2
            new java.lang.StringBuilder
            dup
            ldc "Tainting "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokestatic com.sun.tools.sjavac.Util.justPackageName:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " because "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* because */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
         2: .line 393
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.taintedPackages:Ljava/util/Set;
            aload 1 /* name */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         3: .line 394
            aload 0 /* this */
            invokevirtual com.sun.tools.sjavac.JavacState.needsSaving:()V
         4: .line 395
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            aload 1 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Package
            astore 3 /* nowp */
        start local 3 // com.sun.tools.sjavac.Package nowp
         5: .line 396
            aload 3 /* nowp */
            ifnull 10
         6: .line 397
            aload 3 /* nowp */
            invokevirtual com.sun.tools.sjavac.Package.dependents:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 9
      StackMap locals: com.sun.tools.sjavac.JavacState java.lang.String java.lang.String com.sun.tools.sjavac.Package top java.util.Iterator
      StackMap stack:
         7: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* d */
        start local 4 // java.lang.String d
         8: .line 398
            aload 0 /* this */
            aload 4 /* d */
            aload 2 /* because */
            invokevirtual com.sun.tools.sjavac.JavacState.taintPackage:(Ljava/lang/String;Ljava/lang/String;)V
        end local 4 // java.lang.String d
         9: .line 397
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        end local 3 // com.sun.tools.sjavac.Package nowp
        10: .line 402
      StackMap locals: com.sun.tools.sjavac.JavacState java.lang.String java.lang.String
      StackMap stack:
            return
        end local 2 // java.lang.String because
        end local 1 // java.lang.String name
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lcom/sun/tools/sjavac/JavacState;
            0   11     1     name  Ljava/lang/String;
            0   11     2  because  Ljava/lang/String;
            5   10     3     nowp  Lcom/sun/tools/sjavac/Package;
            8    9     4        d  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      name     
      because  

  public java.util.Set<java.lang.String> taintedPackages();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 408
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.taintedPackages:Ljava/util/Set;
            areturn
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/sjavac/JavacState;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  public void clearTaintedPackages();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 416
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.sjavac.JavacState.taintedPackages:Ljava/util/Set;
         1: .line 417
            return
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/tools/sjavac/JavacState;

  public void checkSourceStatus(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // boolean check_gensrc
         0: .line 424
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.tools.sjavac.JavacState.calculateRemovedSources:()Ljava/util/Set;
            putfield com.sun.tools.sjavac.JavacState.removedSources:Ljava/util/Set;
         1: .line 425
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.removedSources:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: com.sun.tools.sjavac.JavacState int top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            astore 2 /* s */
        start local 2 // com.sun.tools.sjavac.Source s
         3: .line 426
            aload 2 /* s */
            invokevirtual com.sun.tools.sjavac.Source.isGenerated:()Z
            ifeq 4
            iload 1 /* check_gensrc */
            ifeq 5
         4: .line 427
      StackMap locals: com.sun.tools.sjavac.JavacState int com.sun.tools.sjavac.Source java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            aload 2 /* s */
            invokevirtual com.sun.tools.sjavac.Source.pkg:()Lcom/sun/tools/sjavac/Package;
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            ldc "source "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* s */
            invokevirtual com.sun.tools.sjavac.Source.name:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " was removed"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.sjavac.JavacState.taintPackage:(Ljava/lang/String;Ljava/lang/String;)V
        end local 2 // com.sun.tools.sjavac.Source s
         5: .line 425
      StackMap locals: com.sun.tools.sjavac.JavacState int top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 431
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.tools.sjavac.JavacState.calculateAddedSources:()Ljava/util/Set;
            putfield com.sun.tools.sjavac.JavacState.addedSources:Ljava/util/Set;
         7: .line 432
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.addedSources:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 14
      StackMap locals:
      StackMap stack:
         8: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            astore 2 /* s */
        start local 2 // com.sun.tools.sjavac.Source s
         9: .line 433
            aconst_null
            astore 4 /* msg */
        start local 4 // java.lang.String msg
        10: .line 434
            aload 0 /* this */
            invokevirtual com.sun.tools.sjavac.JavacState.isIncremental:()Z
            ifeq 12
        11: .line 438
            new java.lang.StringBuilder
            dup
            ldc "source "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* s */
            invokevirtual com.sun.tools.sjavac.Source.name:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " was added"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* msg */
        12: .line 440
      StackMap locals: com.sun.tools.sjavac.JavacState int com.sun.tools.sjavac.Source java.util.Iterator java.lang.String
      StackMap stack:
            aload 2 /* s */
            invokevirtual com.sun.tools.sjavac.Source.isGenerated:()Z
            ifeq 13
            iload 1 /* check_gensrc */
            ifeq 14
        13: .line 441
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* s */
            invokevirtual com.sun.tools.sjavac.Source.pkg:()Lcom/sun/tools/sjavac/Package;
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            aload 4 /* msg */
            invokevirtual com.sun.tools.sjavac.JavacState.taintPackage:(Ljava/lang/String;Ljava/lang/String;)V
        end local 4 // java.lang.String msg
        end local 2 // com.sun.tools.sjavac.Source s
        14: .line 432
      StackMap locals: com.sun.tools.sjavac.JavacState int top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        15: .line 445
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.sun.tools.sjavac.JavacState.calculateModifiedSources:()Ljava/util/Set;
            putfield com.sun.tools.sjavac.JavacState.modifiedSources:Ljava/util/Set;
        16: .line 446
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.modifiedSources:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 20
      StackMap locals:
      StackMap stack:
        17: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            astore 2 /* s */
        start local 2 // com.sun.tools.sjavac.Source s
        18: .line 447
            aload 2 /* s */
            invokevirtual com.sun.tools.sjavac.Source.isGenerated:()Z
            ifeq 19
            iload 1 /* check_gensrc */
            ifeq 20
        19: .line 448
      StackMap locals: com.sun.tools.sjavac.JavacState int com.sun.tools.sjavac.Source java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            aload 2 /* s */
            invokevirtual com.sun.tools.sjavac.Source.pkg:()Lcom/sun/tools/sjavac/Package;
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            ldc "source "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* s */
            invokevirtual com.sun.tools.sjavac.Source.name:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " was modified"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.sjavac.JavacState.taintPackage:(Ljava/lang/String;Ljava/lang/String;)V
        end local 2 // com.sun.tools.sjavac.Source s
        20: .line 446
      StackMap locals: com.sun.tools.sjavac.JavacState int top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        21: .line 451
            return
        end local 1 // boolean check_gensrc
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   22     0          this  Lcom/sun/tools/sjavac/JavacState;
            0   22     1  check_gensrc  Z
            3    5     2             s  Lcom/sun/tools/sjavac/Source;
            9   14     2             s  Lcom/sun/tools/sjavac/Source;
           10   14     4           msg  Ljava/lang/String;
           18   20     2             s  Lcom/sun/tools/sjavac/Source;
    MethodParameters:
              Name  Flags
      check_gensrc  

  public java.util.Map<java.lang.String, com.sun.tools.sjavac.Transformer> getJavaSuffixRule();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 457
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 1 /* sr */
        start local 1 // java.util.Map sr
         1: .line 458
            aload 1 /* sr */
            ldc ".java"
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.compileJavaPackages:Lcom/sun/tools/sjavac/CompileJavaPackages;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 459
            aload 1 /* sr */
            areturn
        end local 1 // java.util.Map sr
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/sjavac/JavacState;
            1    3     1    sr  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;
    Signature: ()Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;

  public void taintPackagesThatMissArtifacts();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 468
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 2
            goto 7
      StackMap locals: com.sun.tools.sjavac.JavacState top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Package
            astore 1 /* pkg */
        start local 1 // com.sun.tools.sjavac.Package pkg
         2: .line 469
            aload 1 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.artifacts:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 6
      StackMap locals: com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.Package java.util.Iterator top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.io.File
            astore 3 /* f */
        start local 3 // java.io.File f
         4: .line 470
            aload 3 /* f */
            invokevirtual java.io.File.exists:()Z
            ifne 6
         5: .line 473
            aload 0 /* this */
            aload 1 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 3 /* f */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " is missing."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.sjavac.JavacState.taintPackage:(Ljava/lang/String;Ljava/lang/String;)V
        end local 3 // java.io.File f
         6: .line 469
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        end local 1 // com.sun.tools.sjavac.Package pkg
         7: .line 468
      StackMap locals: com.sun.tools.sjavac.JavacState top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         8: .line 477
            return
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lcom/sun/tools/sjavac/JavacState;
            2    7     1   pkg  Lcom/sun/tools/sjavac/Package;
            4    6     3     f  Ljava/io/File;

  public void taintPackagesDependingOnChangedPackages(java.util.Set<java.lang.String>, java.util.Set<java.lang.String>);
    descriptor: (Ljava/util/Set;Ljava/util/Set;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.util.Set pkgsWithChangedPubApi
        start local 2 // java.util.Set recentlyCompiled
         0: .line 485
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
            astore 4
            goto 16
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Package
            astore 3 /* pkg */
        start local 3 // com.sun.tools.sjavac.Package pkg
         2: .line 487
            aload 3 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.typeDependencies:()Ljava/util/Map;
         3: .line 488
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
         4: .line 489
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
         5: .line 490
            invokedynamic apply()Ljava/util/function/Function;
              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;)Ljava/lang/Object;
                  java/util/Collection.stream()Ljava/util/stream/Stream; (9 itf)
                  (Ljava/util/Set;)Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.flatMap:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         6: .line 491
            invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Set
         7: .line 487
            astore 5 /* deps */
        start local 5 // java.util.Set deps
         8: .line 492
            aload 5 /* deps */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 15
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set java.util.Set com.sun.tools.sjavac.Package java.util.Iterator java.util.Set top java.util.Iterator
      StackMap stack:
         9: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* dep */
        start local 6 // java.lang.String dep
        10: .line 493
            new java.lang.StringBuilder
            dup
            ldc ":"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* dep */
            iconst_0
            aload 6 /* dep */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* depPkg */
        start local 8 // java.lang.String depPkg
        11: .line 494
            aload 8 /* depPkg */
            aload 3 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 13
        12: .line 495
            goto 15
        13: .line 497
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set java.util.Set com.sun.tools.sjavac.Package java.util.Iterator java.util.Set java.lang.String java.util.Iterator java.lang.String
      StackMap stack:
            aload 1 /* pkgsWithChangedPubApi */
            aload 8 /* depPkg */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 15
            aload 2 /* recentlyCompiled */
            aload 3 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 15
        14: .line 498
            aload 0 /* this */
            aload 3 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            ldc "its depending on "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* depPkg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual com.sun.tools.sjavac.JavacState.taintPackage:(Ljava/lang/String;Ljava/lang/String;)V
        end local 8 // java.lang.String depPkg
        end local 6 // java.lang.String dep
        15: .line 492
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set java.util.Set com.sun.tools.sjavac.Package java.util.Iterator java.util.Set top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        end local 5 // java.util.Set deps
        end local 3 // com.sun.tools.sjavac.Package pkg
        16: .line 485
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        17: .line 502
            return
        end local 2 // java.util.Set recentlyCompiled
        end local 1 // java.util.Set pkgsWithChangedPubApi
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   18     0                   this  Lcom/sun/tools/sjavac/JavacState;
            0   18     1  pkgsWithChangedPubApi  Ljava/util/Set<Ljava/lang/String;>;
            0   18     2       recentlyCompiled  Ljava/util/Set<Ljava/lang/String;>;
            2   16     3                    pkg  Lcom/sun/tools/sjavac/Package;
            8   16     5                   deps  Ljava/util/Set<Ljava/lang/String;>;
           10   15     6                    dep  Ljava/lang/String;
           11   15     8                 depPkg  Ljava/lang/String;
    Signature: (Ljava/util/Set<Ljava/lang/String;>;Ljava/util/Set<Ljava/lang/String;>;)V
    MethodParameters:
                       Name  Flags
      pkgsWithChangedPubApi  
      recentlyCompiled       

  public void taintPackagesDependingOnChangedClasspathPackages();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=14, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 511
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* fqDependencies */
        start local 1 // java.util.Set fqDependencies
         1: .line 512
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 6
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Package
            astore 2 /* pkg */
        start local 2 // com.sun.tools.sjavac.Package pkg
         3: .line 516
            aload 2 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.sources:()Ljava/util/Map;
            invokeinterface java.util.Map.isEmpty:()Z
            ifeq 5
         4: .line 517
            goto 6
         5: .line 519
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set com.sun.tools.sjavac.Package java.util.Iterator
      StackMap stack:
            aload 2 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.typeClasspathDependencies:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            aload 1 /* fqDependencies */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/util/Set;)Ljava/util/function/Consumer;
              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;)V
                  java/util/Set.addAll(Ljava/util/Collection;)Z (9 itf)
                  (Ljava/util/Set;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
        end local 2 // com.sun.tools.sjavac.Package pkg
         6: .line 512
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 525
            new com.sun.tools.sjavac.PubApiExtractor
            dup
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            invokespecial com.sun.tools.sjavac.PubApiExtractor.<init>:(Lcom/sun/tools/sjavac/options/Options;)V
            astore 2 /* pubApiExtractor */
        start local 2 // com.sun.tools.sjavac.PubApiExtractor pubApiExtractor
         8: .line 526
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* onDiskPubApi */
        start local 3 // java.util.Map onDiskPubApi
         9: .line 527
            aload 1 /* fqDependencies */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 12
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set com.sun.tools.sjavac.PubApiExtractor java.util.Map top java.util.Iterator
      StackMap stack:
        10: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* cpDep */
        start local 4 // java.lang.String cpDep
        11: .line 528
            aload 3 /* onDiskPubApi */
            aload 4 /* cpDep */
            aload 2 /* pubApiExtractor */
            aload 4 /* cpDep */
            invokevirtual com.sun.tools.sjavac.PubApiExtractor.getPubApi:(Ljava/lang/String;)Lcom/sun/tools/sjavac/pubapi/PubApi;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // java.lang.String cpDep
        12: .line 527
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        13: .line 530
            aload 2 /* pubApiExtractor */
            invokevirtual com.sun.tools.sjavac.PubApiExtractor.close:()V
        14: .line 534
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 36
      StackMap locals:
      StackMap stack:
        15: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Package
            astore 4 /* pkg */
        start local 4 // com.sun.tools.sjavac.Package pkg
        16: .line 538
            aload 4 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.sources:()Ljava/util/Map;
            invokeinterface java.util.Map.isEmpty:()Z
            ifeq 18
        17: .line 539
            goto 36
        18: .line 541
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set com.sun.tools.sjavac.PubApiExtractor java.util.Map com.sun.tools.sjavac.Package java.util.Iterator
      StackMap stack:
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 6 /* cpDepsOfThisPkg */
        start local 6 // java.util.Set cpDepsOfThisPkg
        19: .line 542
            aload 4 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.typeClasspathDependencies:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 8
            goto 22
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set com.sun.tools.sjavac.PubApiExtractor java.util.Map com.sun.tools.sjavac.Package java.util.Iterator java.util.Set top java.util.Iterator
      StackMap stack:
        20: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Set
            astore 7 /* cpDeps */
        start local 7 // java.util.Set cpDeps
        21: .line 543
            aload 6 /* cpDepsOfThisPkg */
            aload 7 /* cpDeps */
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
        end local 7 // java.util.Set cpDeps
        22: .line 542
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        23: .line 545
            aload 6 /* cpDepsOfThisPkg */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 35
      StackMap locals:
      StackMap stack:
        24: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* fqDep */
        start local 7 // java.lang.String fqDep
        25: .line 547
            new java.lang.StringBuilder
            dup
            ldc ":"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 7 /* fqDep */
            iconst_0
            aload 7 /* fqDep */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 9 /* depPkg */
        start local 9 // java.lang.String depPkg
        26: .line 548
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            aload 9 /* depPkg */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Package
            invokevirtual com.sun.tools.sjavac.Package.getPubApi:()Lcom/sun/tools/sjavac/pubapi/PubApi;
            astore 10 /* prevPkgApi */
        start local 10 // com.sun.tools.sjavac.pubapi.PubApi prevPkgApi
        27: .line 552
            aload 10 /* prevPkgApi */
            getfield com.sun.tools.sjavac.pubapi.PubApi.types:Ljava/util/Map;
            aload 7 /* fqDep */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.pubapi.PubType
            getfield com.sun.tools.sjavac.pubapi.PubType.pubApi:Lcom/sun/tools/sjavac/pubapi/PubApi;
            astore 11 /* prevDepApi */
        start local 11 // com.sun.tools.sjavac.pubapi.PubApi prevDepApi
        28: .line 556
            aload 3 /* onDiskPubApi */
            aload 7 /* fqDep */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.pubapi.PubApi
            getfield com.sun.tools.sjavac.pubapi.PubApi.types:Ljava/util/Map;
            aload 7 /* fqDep */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.pubapi.PubType
            getfield com.sun.tools.sjavac.pubapi.PubType.pubApi:Lcom/sun/tools/sjavac/pubapi/PubApi;
            astore 12 /* currentDepApi */
        start local 12 // com.sun.tools.sjavac.pubapi.PubApi currentDepApi
        29: .line 558
            aload 12 /* currentDepApi */
            aload 11 /* prevDepApi */
            invokevirtual com.sun.tools.sjavac.pubapi.PubApi.isBackwardCompatibleWith:(Lcom/sun/tools/sjavac/pubapi/PubApi;)Z
            ifne 35
        30: .line 559
            aload 12 /* currentDepApi */
            aload 11 /* prevDepApi */
            invokevirtual com.sun.tools.sjavac.pubapi.PubApi.diff:(Lcom/sun/tools/sjavac/pubapi/PubApi;)Ljava/util/List;
            astore 13 /* apiDiff */
        start local 13 // java.util.List apiDiff
        31: .line 560
            aload 0 /* this */
            aload 4 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            new java.lang.StringBuilder
            dup
            ldc "depends on classpath package which has an updated package api: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        32: .line 562
            ldc "\n"
            aload 13 /* apiDiff */
            invokestatic java.lang.String.join:(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        33: .line 560
            invokevirtual com.sun.tools.sjavac.JavacState.taintPackage:(Ljava/lang/String;Ljava/lang/String;)V
        34: .line 569
            goto 36
        end local 13 // java.util.List apiDiff
        end local 12 // com.sun.tools.sjavac.pubapi.PubApi currentDepApi
        end local 11 // com.sun.tools.sjavac.pubapi.PubApi prevDepApi
        end local 10 // com.sun.tools.sjavac.pubapi.PubApi prevPkgApi
        end local 9 // java.lang.String depPkg
        end local 7 // java.lang.String fqDep
        35: .line 545
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 24
        end local 6 // java.util.Set cpDepsOfThisPkg
        end local 4 // com.sun.tools.sjavac.Package pkg
        36: .line 534
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set com.sun.tools.sjavac.PubApiExtractor java.util.Map top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        37: .line 573
            return
        end local 3 // java.util.Map onDiskPubApi
        end local 2 // com.sun.tools.sjavac.PubApiExtractor pubApiExtractor
        end local 1 // java.util.Set fqDependencies
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   38     0             this  Lcom/sun/tools/sjavac/JavacState;
            1   38     1   fqDependencies  Ljava/util/Set<Ljava/lang/String;>;
            3    6     2              pkg  Lcom/sun/tools/sjavac/Package;
            8   38     2  pubApiExtractor  Lcom/sun/tools/sjavac/PubApiExtractor;
            9   38     3     onDiskPubApi  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/pubapi/PubApi;>;
           11   12     4            cpDep  Ljava/lang/String;
           16   36     4              pkg  Lcom/sun/tools/sjavac/Package;
           19   36     6  cpDepsOfThisPkg  Ljava/util/Set<Ljava/lang/String;>;
           21   22     7           cpDeps  Ljava/util/Set<Ljava/lang/String;>;
           25   35     7            fqDep  Ljava/lang/String;
           26   35     9           depPkg  Ljava/lang/String;
           27   35    10       prevPkgApi  Lcom/sun/tools/sjavac/pubapi/PubApi;
           28   35    11       prevDepApi  Lcom/sun/tools/sjavac/pubapi/PubApi;
           29   35    12    currentDepApi  Lcom/sun/tools/sjavac/pubapi/PubApi;
           31   35    13          apiDiff  Ljava/util/List<Ljava/lang/String;>;
    Exceptions:
      throws java.io.IOException

  public void removeUnidentifiedArtifacts();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 580
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* allKnownArtifacts */
        start local 1 // java.util.Set allKnownArtifacts
         1: .line 581
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 7
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Package
            astore 2 /* pkg */
        start local 2 // com.sun.tools.sjavac.Package pkg
         3: .line 582
            aload 2 /* pkg */
            invokevirtual com.sun.tools.sjavac.Package.artifacts:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 6
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set com.sun.tools.sjavac.Package java.util.Iterator top java.util.Iterator
      StackMap stack:
         4: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.io.File
            astore 4 /* f */
        start local 4 // java.io.File f
         5: .line 583
            aload 1 /* allKnownArtifacts */
            aload 4 /* f */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // java.io.File f
         6: .line 582
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        end local 2 // com.sun.tools.sjavac.Package pkg
         7: .line 581
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 587
            aload 1 /* allKnownArtifacts */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.javacState:Ljava/io/File;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         9: .line 589
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.binArtifacts:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 15
      StackMap locals:
      StackMap stack:
        10: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.io.File
            astore 2 /* f */
        start local 2 // java.io.File f
        11: .line 590
            aload 1 /* allKnownArtifacts */
            aload 2 /* f */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 15
        12: .line 591
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            aload 2 /* f */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual com.sun.tools.sjavac.options.Options.isUnidentifiedArtifactPermitted:(Ljava/lang/String;)Z
            ifne 15
        13: .line 592
            new java.lang.StringBuilder
            dup
            ldc "Removing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* f */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " since it is unknown to the javac_state."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
        14: .line 593
            aload 2 /* f */
            invokevirtual java.io.File.delete:()Z
            pop
        end local 2 // java.io.File f
        15: .line 589
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        16: .line 596
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.headerArtifacts:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 21
      StackMap locals:
      StackMap stack:
        17: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.io.File
            astore 2 /* f */
        start local 2 // java.io.File f
        18: .line 597
            aload 1 /* allKnownArtifacts */
            aload 2 /* f */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 21
        19: .line 598
            new java.lang.StringBuilder
            dup
            ldc "Removing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* f */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " since it is unknown to the javac_state."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
        20: .line 599
            aload 2 /* f */
            invokevirtual java.io.File.delete:()Z
            pop
        end local 2 // java.io.File f
        21: .line 596
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 17
        22: .line 602
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.gensrcArtifacts:Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 27
      StackMap locals:
      StackMap stack:
        23: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.io.File
            astore 2 /* f */
        start local 2 // java.io.File f
        24: .line 603
            aload 1 /* allKnownArtifacts */
            aload 2 /* f */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 27
        25: .line 604
            new java.lang.StringBuilder
            dup
            ldc "Removing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* f */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " since it is unknown to the javac_state."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
        26: .line 605
            aload 2 /* f */
            invokevirtual java.io.File.delete:()Z
            pop
        end local 2 // java.io.File f
        27: .line 602
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 23
        28: .line 608
            return
        end local 1 // java.util.Set allKnownArtifacts
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   29     0               this  Lcom/sun/tools/sjavac/JavacState;
            1   29     1  allKnownArtifacts  Ljava/util/Set<Ljava/io/File;>;
            3    7     2                pkg  Lcom/sun/tools/sjavac/Package;
            5    6     4                  f  Ljava/io/File;
           11   15     2                  f  Ljava/io/File;
           18   21     2                  f  Ljava/io/File;
           24   27     2                  f  Ljava/io/File;

  public void removeSuperfluousArtifacts(java.util.Set<java.lang.String>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.util.Set recentlyCompiled
         0: .line 615
            aload 1 /* recentlyCompiled */
            invokeinterface java.util.Set.size:()I
            ifne 1
            return
         1: .line 617
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 11
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* pkg */
        start local 2 // java.lang.String pkg
         3: .line 619
            aload 1 /* recentlyCompiled */
            aload 2 /* pkg */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 4
            goto 11
         4: .line 620
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set java.lang.String java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.artifacts:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            astore 4 /* arts */
        start local 4 // java.util.Collection arts
         5: .line 621
            aload 0 /* this */
            aload 2 /* pkg */
            invokevirtual com.sun.tools.sjavac.JavacState.fetchPrevArtifacts:(Ljava/lang/String;)Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 10
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set java.lang.String java.util.Iterator java.util.Collection top java.util.Iterator
      StackMap stack:
         6: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.io.File
            astore 5 /* f */
        start local 5 // java.io.File f
         7: .line 622
            aload 4 /* arts */
            aload 5 /* f */
            invokeinterface java.util.Collection.contains:(Ljava/lang/Object;)Z
            ifne 10
         8: .line 623
            new java.lang.StringBuilder
            dup
            ldc "Removing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* f */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " since it is now superfluous!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
         9: .line 624
            aload 5 /* f */
            invokevirtual java.io.File.exists:()Z
            ifeq 10
            aload 5 /* f */
            invokevirtual java.io.File.delete:()Z
            pop
        end local 5 // java.io.File f
        10: .line 621
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        end local 4 // java.util.Collection arts
        end local 2 // java.lang.String pkg
        11: .line 617
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        12: .line 628
            return
        end local 1 // java.util.Set recentlyCompiled
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   13     0              this  Lcom/sun/tools/sjavac/JavacState;
            0   13     1  recentlyCompiled  Ljava/util/Set<Ljava/lang/String;>;
            3   11     2               pkg  Ljava/lang/String;
            5   11     4              arts  Ljava/util/Collection<Ljava/io/File;>;
            7   10     5                 f  Ljava/io/File;
    Signature: (Ljava/util/Set<Ljava/lang/String;>;)V
    MethodParameters:
                  Name  Flags
      recentlyCompiled  

  private java.util.Set<com.sun.tools.sjavac.Source> calculateRemovedSources();
    descriptor: ()Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 634
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* removed */
        start local 1 // java.util.Set removed
         1: .line 635
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* src */
        start local 2 // java.lang.String src
         3: .line 636
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            aload 2 /* src */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnonnull 5
         4: .line 637
            aload 1 /* removed */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            aload 2 /* src */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // java.lang.String src
         5: .line 635
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 640
            aload 1 /* removed */
            areturn
        end local 1 // java.util.Set removed
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lcom/sun/tools/sjavac/JavacState;
            1    7     1  removed  Ljava/util/Set<Lcom/sun/tools/sjavac/Source;>;
            3    5     2      src  Ljava/lang/String;
    Signature: ()Ljava/util/Set<Lcom/sun/tools/sjavac/Source;>;

  private java.util.Set<com.sun.tools.sjavac.Source> calculateAddedSources();
    descriptor: ()Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 647
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* added */
        start local 1 // java.util.Set added
         1: .line 648
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* src */
        start local 2 // java.lang.String src
         3: .line 649
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            aload 2 /* src */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnonnull 5
         4: .line 650
            aload 1 /* added */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            aload 2 /* src */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // java.lang.String src
         5: .line 648
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 653
            aload 1 /* added */
            areturn
        end local 1 // java.util.Set added
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/sun/tools/sjavac/JavacState;
            1    7     1  added  Ljava/util/Set<Lcom/sun/tools/sjavac/Source;>;
            3    5     2    src  Ljava/lang/String;
    Signature: ()Ljava/util/Set<Lcom/sun/tools/sjavac/Source;>;

  private java.util.Set<com.sun.tools.sjavac.Source> calculateModifiedSources();
    descriptor: ()Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // com.sun.tools.sjavac.JavacState this
         0: .line 663
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* modified */
        start local 1 // java.util.Set modified
         1: .line 664
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 13
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 2 /* src */
        start local 2 // java.lang.String src
         3: .line 665
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            aload 2 /* src */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            astore 4 /* n */
        start local 4 // com.sun.tools.sjavac.Source n
         4: .line 666
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            aload 2 /* src */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            astore 5 /* t */
        start local 5 // com.sun.tools.sjavac.Source t
         5: .line 667
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            aload 2 /* src */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            ifnull 13
         6: .line 668
            aload 5 /* t */
            ifnull 13
         7: .line 669
            aload 4 /* n */
            invokevirtual com.sun.tools.sjavac.Source.lastModified:()J
            aload 5 /* t */
            invokevirtual com.sun.tools.sjavac.Source.lastModified:()J
            lcmp
            ifle 10
         8: .line 670
            aload 1 /* modified */
            aload 4 /* n */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         9: .line 671
            goto 13
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set java.lang.String java.util.Iterator com.sun.tools.sjavac.Source com.sun.tools.sjavac.Source
      StackMap stack:
        10: aload 4 /* n */
            invokevirtual com.sun.tools.sjavac.Source.lastModified:()J
            aload 5 /* t */
            invokevirtual com.sun.tools.sjavac.Source.lastModified:()J
            lcmp
            ifge 13
        11: .line 672
            aload 1 /* modified */
            aload 4 /* n */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        12: .line 673
            new java.lang.StringBuilder
            dup
            ldc "The source file "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* n */
            invokevirtual com.sun.tools.sjavac.Source.name:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " timestamp has moved backwards in time."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.tools.sjavac.Log.warn:(Ljava/lang/String;)V
        end local 5 // com.sun.tools.sjavac.Source t
        end local 4 // com.sun.tools.sjavac.Source n
        end local 2 // java.lang.String src
        13: .line 664
      StackMap locals: com.sun.tools.sjavac.JavacState java.util.Set top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        14: .line 678
            aload 1 /* modified */
            areturn
        end local 1 // java.util.Set modified
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lcom/sun/tools/sjavac/JavacState;
            1   15     1  modified  Ljava/util/Set<Lcom/sun/tools/sjavac/Source;>;
            3   13     2       src  Ljava/lang/String;
            4   13     4         n  Lcom/sun/tools/sjavac/Source;
            5   13     5         t  Lcom/sun/tools/sjavac/Source;
    Signature: ()Ljava/util/Set<Lcom/sun/tools/sjavac/Source;>;

  private void deleteContents(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.io.File dir
         0: .line 685
            aload 1 /* dir */
            ifnull 10
            aload 1 /* dir */
            invokevirtual java.io.File.exists:()Z
            ifeq 10
         1: .line 686
            aload 1 /* dir */
            invokevirtual java.io.File.listFiles:()[Ljava/io/File;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 9
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File top int int java.io.File[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* f */
        start local 2 // java.io.File f
         3: .line 687
            aload 2 /* f */
            invokevirtual java.io.File.isDirectory:()Z
            ifeq 5
         4: .line 688
            aload 0 /* this */
            aload 2 /* f */
            invokevirtual com.sun.tools.sjavac.JavacState.deleteContents:(Ljava/io/File;)V
         5: .line 690
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File java.io.File int int java.io.File[]
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.options:Lcom/sun/tools/sjavac/options/Options;
            aload 2 /* f */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual com.sun.tools.sjavac.options.Options.isUnidentifiedArtifactPermitted:(Ljava/lang/String;)Z
            ifne 8
         6: .line 691
            new java.lang.StringBuilder
            dup
            ldc "Removing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* f */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
         7: .line 692
            aload 2 /* f */
            invokevirtual java.io.File.delete:()Z
            pop
        end local 2 // java.io.File f
         8: .line 686
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File top int int java.io.File[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         9: iload 3
            iload 4
            if_icmplt 2
        10: .line 696
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File
      StackMap stack:
            return
        end local 1 // java.io.File dir
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lcom/sun/tools/sjavac/JavacState;
            0   11     1   dir  Ljava/io/File;
            3    8     2     f  Ljava/io/File;
    MethodParameters:
      Name  Flags
      dir   

  public void performCopying(java.io.File, java.util.Map<java.lang.String, com.sun.tools.sjavac.Transformer>);
    descriptor: (Ljava/io/File;Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.io.File binDir
        start local 2 // java.util.Map suffixRules
         0: .line 702
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* sr */
        start local 3 // java.util.Map sr
         1: .line 703
            aload 2 /* suffixRules */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 5
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File java.util.Map java.util.Map top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 4 /* e */
        start local 4 // java.util.Map$Entry e
         3: .line 704
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Transformer
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Lcom/sun/tools/sjavac/CopyFile;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 705
            aload 3 /* sr */
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Transformer
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 4 // java.util.Map$Entry e
         5: .line 703
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 708
            aload 0 /* this */
            aconst_null
            aload 1 /* binDir */
            aload 3 /* sr */
            invokevirtual com.sun.tools.sjavac.JavacState.perform:(Lcom/sun/tools/sjavac/comp/CompilationService;Ljava/io/File;Ljava/util/Map;)Z
            pop
         7: .line 709
            return
        end local 3 // java.util.Map sr
        end local 2 // java.util.Map suffixRules
        end local 1 // java.io.File binDir
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Lcom/sun/tools/sjavac/JavacState;
            0    8     1       binDir  Ljava/io/File;
            0    8     2  suffixRules  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;
            1    8     3           sr  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;
            3    5     4            e  Ljava/util/Map$Entry<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;
    Signature: (Ljava/io/File;Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;)V
    MethodParameters:
             Name  Flags
      binDir       
      suffixRules  

  public void performTranslation(java.io.File, java.util.Map<java.lang.String, com.sun.tools.sjavac.Transformer>);
    descriptor: (Ljava/io/File;Ljava/util/Map;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.io.File gensrcDir
        start local 2 // java.util.Map suffixRules
         0: .line 716
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* sr */
        start local 3 // java.util.Map sr
         1: .line 717
            aload 2 /* suffixRules */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 7
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File java.util.Map java.util.Map top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 4 /* e */
        start local 4 // java.util.Map$Entry e
         3: .line 718
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Transformer
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 6 /* trClass */
        start local 6 // java.lang.Class trClass
         4: .line 719
            aload 6 /* trClass */
            ldc Lcom/sun/tools/sjavac/CompileJavaPackages;
            if_acmpeq 7
            aload 6 /* trClass */
            ldc Lcom/sun/tools/sjavac/CopyFile;
            if_acmpne 6
         5: .line 720
            goto 7
         6: .line 722
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File java.util.Map java.util.Map java.util.Map$Entry java.util.Iterator java.lang.Class
      StackMap stack:
            aload 3 /* sr */
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 4 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Transformer
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 6 // java.lang.Class trClass
        end local 4 // java.util.Map$Entry e
         7: .line 717
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File java.util.Map java.util.Map top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 724
            aload 0 /* this */
            aconst_null
            aload 1 /* gensrcDir */
            aload 3 /* sr */
            invokevirtual com.sun.tools.sjavac.JavacState.perform:(Lcom/sun/tools/sjavac/comp/CompilationService;Ljava/io/File;Ljava/util/Map;)Z
            pop
         9: .line 725
            return
        end local 3 // java.util.Map sr
        end local 2 // java.util.Map suffixRules
        end local 1 // java.io.File gensrcDir
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lcom/sun/tools/sjavac/JavacState;
            0   10     1    gensrcDir  Ljava/io/File;
            0   10     2  suffixRules  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;
            1   10     3           sr  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;
            3    7     4            e  Ljava/util/Map$Entry<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;
            4    7     6      trClass  Ljava/lang/Class<*>;
    Signature: (Ljava/io/File;Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;)V
    MethodParameters:
             Name  Flags
      gensrcDir    
      suffixRules  

  public boolean performJavaCompilations(com.sun.tools.sjavac.comp.CompilationService, com.sun.tools.sjavac.options.Options, java.util.Set<java.lang.String>, );
    descriptor: (Lcom/sun/tools/sjavac/comp/CompilationService;Lcom/sun/tools/sjavac/options/Options;Ljava/util/Set;[Z)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=5
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // com.sun.tools.sjavac.comp.CompilationService sjavac
        start local 2 // com.sun.tools.sjavac.options.Options args
        start local 3 // java.util.Set recentlyCompiled
        start local 4 // boolean[] rcValue
         0: .line 734
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 5 /* suffixRules */
        start local 5 // java.util.Map suffixRules
         1: .line 735
            aload 5 /* suffixRules */
            ldc ".java"
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.compileJavaPackages:Lcom/sun/tools/sjavac/CompileJavaPackages;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 736
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.compileJavaPackages:Lcom/sun/tools/sjavac/CompileJavaPackages;
            aload 2 /* args */
            invokevirtual com.sun.tools.sjavac.CompileJavaPackages.setExtra:(Lcom/sun/tools/sjavac/options/Options;)V
         3: .line 737
            aload 4 /* rcValue */
            iconst_0
            aload 0 /* this */
            aload 1 /* sjavac */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.binDir:Ljava/io/File;
            aload 5 /* suffixRules */
            invokevirtual com.sun.tools.sjavac.JavacState.perform:(Lcom/sun/tools/sjavac/comp/CompilationService;Ljava/io/File;Ljava/util/Map;)Z
            bastore
         4: .line 738
            aload 3 /* recentlyCompiled */
            aload 0 /* this */
            invokevirtual com.sun.tools.sjavac.JavacState.taintedPackages:()Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         5: .line 739
            aload 0 /* this */
            invokevirtual com.sun.tools.sjavac.JavacState.clearTaintedPackages:()V
         6: .line 740
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.packagesWithChangedPublicApis:Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 7
            iconst_0
            goto 8
      StackMap locals: java.util.Map
      StackMap stack:
         7: iconst_1
      StackMap locals:
      StackMap stack: int
         8: istore 6 /* again */
        start local 6 // boolean again
         9: .line 741
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.packagesWithChangedPublicApis:Ljava/util/Set;
            aload 3 /* recentlyCompiled */
            invokevirtual com.sun.tools.sjavac.JavacState.taintPackagesDependingOnChangedPackages:(Ljava/util/Set;Ljava/util/Set;)V
        10: .line 742
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.sjavac.JavacState.packagesWithChangedPublicApis:Ljava/util/Set;
        11: .line 743
            iload 6 /* again */
            ifeq 12
            aload 4 /* rcValue */
            iconst_0
            baload
            ifeq 12
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
        12: iconst_0
            ireturn
        end local 6 // boolean again
        end local 5 // java.util.Map suffixRules
        end local 4 // boolean[] rcValue
        end local 3 // java.util.Set recentlyCompiled
        end local 2 // com.sun.tools.sjavac.options.Options args
        end local 1 // com.sun.tools.sjavac.comp.CompilationService sjavac
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   13     0              this  Lcom/sun/tools/sjavac/JavacState;
            0   13     1            sjavac  Lcom/sun/tools/sjavac/comp/CompilationService;
            0   13     2              args  Lcom/sun/tools/sjavac/options/Options;
            0   13     3  recentlyCompiled  Ljava/util/Set<Ljava/lang/String;>;
            0   13     4           rcValue  [Z
            1   13     5       suffixRules  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;
            9   13     6             again  Z
    Signature: (Lcom/sun/tools/sjavac/comp/CompilationService;Lcom/sun/tools/sjavac/options/Options;Ljava/util/Set<Ljava/lang/String;>;[Z)Z
    MethodParameters:
                  Name  Flags
      sjavac            
      args              
      recentlyCompiled  
      rcValue           

  private void addFileToTransform(java.util.Map<com.sun.tools.sjavac.Transformer, java.util.Map<java.lang.String, java.util.Set<java.net.URI>>>, com.sun.tools.sjavac.Transformer, com.sun.tools.sjavac.Source);
    descriptor: (Ljava/util/Map;Lcom/sun/tools/sjavac/Transformer;Lcom/sun/tools/sjavac/Source;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.util.Map gs
        start local 2 // com.sun.tools.sjavac.Transformer t
        start local 3 // com.sun.tools.sjavac.Source s
         0: .line 755
            aload 1 /* gs */
            aload 2 /* t */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Map
            astore 4 /* fs */
        start local 4 // java.util.Map fs
         1: .line 756
            aload 4 /* fs */
            ifnonnull 4
         2: .line 757
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 4 /* fs */
         3: .line 758
            aload 1 /* gs */
            aload 2 /* t */
            aload 4 /* fs */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 760
      StackMap locals: java.util.Map
      StackMap stack:
            aload 4 /* fs */
            aload 3 /* s */
            invokevirtual com.sun.tools.sjavac.Source.pkg:()Lcom/sun/tools/sjavac/Package;
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Set
            astore 5 /* ss */
        start local 5 // java.util.Set ss
         5: .line 761
            aload 5 /* ss */
            ifnonnull 8
         6: .line 762
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 5 /* ss */
         7: .line 763
            aload 4 /* fs */
            aload 3 /* s */
            invokevirtual com.sun.tools.sjavac.Source.pkg:()Lcom/sun/tools/sjavac/Package;
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            aload 5 /* ss */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 765
      StackMap locals: java.util.Set
      StackMap stack:
            aload 5 /* ss */
            aload 3 /* s */
            invokevirtual com.sun.tools.sjavac.Source.file:()Ljava/io/File;
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         9: .line 766
            return
        end local 5 // java.util.Set ss
        end local 4 // java.util.Map fs
        end local 3 // com.sun.tools.sjavac.Source s
        end local 2 // com.sun.tools.sjavac.Transformer t
        end local 1 // java.util.Map gs
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/sun/tools/sjavac/JavacState;
            0   10     1    gs  Ljava/util/Map<Lcom/sun/tools/sjavac/Transformer;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/net/URI;>;>;>;
            0   10     2     t  Lcom/sun/tools/sjavac/Transformer;
            0   10     3     s  Lcom/sun/tools/sjavac/Source;
            1   10     4    fs  Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/net/URI;>;>;
            5   10     5    ss  Ljava/util/Set<Ljava/net/URI;>;
    Signature: (Ljava/util/Map<Lcom/sun/tools/sjavac/Transformer;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/net/URI;>;>;>;Lcom/sun/tools/sjavac/Transformer;Lcom/sun/tools/sjavac/Source;)V
    MethodParameters:
      Name  Flags
      gs    
      t     
      s     

  private boolean perform(com.sun.tools.sjavac.comp.CompilationService, java.io.File, java.util.Map<java.lang.String, com.sun.tools.sjavac.Transformer>);
    descriptor: (Lcom/sun/tools/sjavac/comp/CompilationService;Ljava/io/File;Ljava/util/Map;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=14, locals=23, args_size=4
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // com.sun.tools.sjavac.comp.CompilationService sjavac
        start local 2 // java.io.File outputDir
        start local 3 // java.util.Map suffixRules
         0: .line 775
            iconst_1
            istore 4 /* rc */
        start local 4 // boolean rc
         1: .line 777
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 5 /* groupedSources */
        start local 5 // java.util.Map groupedSources
         2: .line 778
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 8
      StackMap locals: com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.comp.CompilationService java.io.File java.util.Map int java.util.Map top java.util.Iterator
      StackMap stack:
         3: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            astore 6 /* src */
        start local 6 // com.sun.tools.sjavac.Source src
         4: .line 779
            aload 3 /* suffixRules */
            aload 6 /* src */
            invokevirtual com.sun.tools.sjavac.Source.suffix:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Transformer
            astore 8 /* t */
        start local 8 // com.sun.tools.sjavac.Transformer t
         5: .line 780
            aload 8 /* t */
            ifnull 8
         6: .line 781
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.taintedPackages:Ljava/util/Set;
            aload 6 /* src */
            invokevirtual com.sun.tools.sjavac.Source.pkg:()Lcom/sun/tools/sjavac/Package;
            invokevirtual com.sun.tools.sjavac.Package.name:()Ljava/lang/String;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 8
            aload 6 /* src */
            invokevirtual com.sun.tools.sjavac.Source.isLinkedOnly:()Z
            ifne 8
         7: .line 782
            aload 0 /* this */
            aload 5 /* groupedSources */
            aload 8 /* t */
            aload 6 /* src */
            invokevirtual com.sun.tools.sjavac.JavacState.addFileToTransform:(Ljava/util/Map;Lcom/sun/tools/sjavac/Transformer;Lcom/sun/tools/sjavac/Source;)V
        end local 8 // com.sun.tools.sjavac.Transformer t
        end local 6 // com.sun.tools.sjavac.Source src
         8: .line 778
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         9: .line 787
            aload 5 /* groupedSources */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 79
      StackMap locals:
      StackMap stack:
        10: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 6 /* e */
        start local 6 // java.util.Map$Entry e
        11: .line 788
            aload 6 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Transformer
            astore 8 /* t */
        start local 8 // com.sun.tools.sjavac.Transformer t
        12: .line 789
            aload 6 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.Map
            astore 9 /* srcs */
        start local 9 // java.util.Map srcs
        13: .line 792
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
            astore 10 /* packageArtifacts */
        start local 10 // java.util.Map packageArtifacts
        14: .line 793
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
            astore 11 /* packageDependencies */
        start local 11 // java.util.Map packageDependencies
        15: .line 794
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
            astore 12 /* packageCpDependencies */
        start local 12 // java.util.Map packageCpDependencies
        16: .line 795
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
            astore 13 /* packagePublicApis */
        start local 13 // java.util.Map packagePublicApis
        17: .line 796
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
            astore 14 /* dependencyPublicApis */
        start local 14 // java.util.Map dependencyPublicApis
        18: .line 798
            aload 8 /* t */
            aload 1 /* sjavac */
        19: .line 799
            aload 9 /* srcs */
        20: .line 800
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.visibleSrcs:Ljava/util/Set;
        21: .line 801
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.dependents:()Ljava/util/Map;
        22: .line 802
            aload 2 /* outputDir */
            invokevirtual java.io.File.toURI:()Ljava/net/URI;
        23: .line 803
            aload 10 /* packageArtifacts */
        24: .line 804
            aload 11 /* packageDependencies */
        25: .line 805
            aload 12 /* packageCpDependencies */
        26: .line 806
            aload 13 /* packagePublicApis */
        27: .line 807
            aload 14 /* dependencyPublicApis */
        28: .line 808
            iconst_0
        29: .line 809
            aload 0 /* this */
            invokevirtual com.sun.tools.sjavac.JavacState.isIncremental:()Z
        30: .line 810
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.numCores:I
        31: .line 798
            invokeinterface com.sun.tools.sjavac.Transformer.transform:(Lcom/sun/tools/sjavac/comp/CompilationService;Ljava/util/Map;Ljava/util/Set;Ljava/util/Map;Ljava/net/URI;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;IZI)Z
            istore 15 /* r */
        start local 15 // boolean r
        32: .line 811
            iload 15 /* r */
            ifne 34
        33: .line 812
            iconst_0
            istore 4 /* rc */
        34: .line 814
      StackMap locals: com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.comp.CompilationService java.io.File java.util.Map int java.util.Map java.util.Map$Entry java.util.Iterator com.sun.tools.sjavac.Transformer java.util.Map java.util.Map java.util.Map java.util.Map java.util.Map java.util.Map int
      StackMap stack:
            aload 9 /* srcs */
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 17
            goto 37
      StackMap locals: com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.comp.CompilationService java.io.File java.util.Map int java.util.Map java.util.Map$Entry java.util.Iterator com.sun.tools.sjavac.Transformer java.util.Map java.util.Map java.util.Map java.util.Map java.util.Map java.util.Map int top java.util.Iterator
      StackMap stack:
        35: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 16 /* p */
        start local 16 // java.lang.String p
        36: .line 815
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.recompiledPackages:Ljava/util/Set;
            aload 16 /* p */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 16 // java.lang.String p
        37: .line 814
      StackMap locals:
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 35
        38: .line 818
            aload 10 /* packageArtifacts */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 17
            goto 42
      StackMap locals:
      StackMap stack:
        39: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 16 /* a */
        start local 16 // java.util.Map$Entry a
        40: .line 819
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual com.sun.tools.sjavac.BuildState.findModuleFromPackageName:(Ljava/lang/String;)Lcom/sun/tools/sjavac/Module;
            astore 18 /* mnow */
        start local 18 // com.sun.tools.sjavac.Module mnow
        41: .line 820
            aload 18 /* mnow */
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.Set
            invokevirtual com.sun.tools.sjavac.Module.addArtifacts:(Ljava/lang/String;Ljava/util/Set;)V
        end local 18 // com.sun.tools.sjavac.Module mnow
        end local 16 // java.util.Map$Entry a
        42: .line 818
      StackMap locals:
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 39
        43: .line 823
            aload 11 /* packageDependencies */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 17
            goto 48
      StackMap locals:
      StackMap stack:
        44: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 16 /* a */
        start local 16 // java.util.Map$Entry a
        45: .line 824
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.Map
            astore 18 /* deps */
        start local 18 // java.util.Map deps
        46: .line 825
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual com.sun.tools.sjavac.BuildState.findModuleFromPackageName:(Ljava/lang/String;)Lcom/sun/tools/sjavac/Module;
            astore 19 /* mnow */
        start local 19 // com.sun.tools.sjavac.Module mnow
        47: .line 826
            aload 19 /* mnow */
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 18 /* deps */
            iconst_0
            invokevirtual com.sun.tools.sjavac.Module.setDependencies:(Ljava/lang/String;Ljava/util/Map;Z)V
        end local 19 // com.sun.tools.sjavac.Module mnow
        end local 18 // java.util.Map deps
        end local 16 // java.util.Map$Entry a
        48: .line 823
      StackMap locals:
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 44
        49: .line 828
            aload 12 /* packageCpDependencies */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 17
            goto 54
      StackMap locals:
      StackMap stack:
        50: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 16 /* a */
        start local 16 // java.util.Map$Entry a
        51: .line 829
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.Map
            astore 18 /* deps */
        start local 18 // java.util.Map deps
        52: .line 830
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual com.sun.tools.sjavac.BuildState.findModuleFromPackageName:(Ljava/lang/String;)Lcom/sun/tools/sjavac/Module;
            astore 19 /* mnow */
        start local 19 // com.sun.tools.sjavac.Module mnow
        53: .line 831
            aload 19 /* mnow */
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 18 /* deps */
            iconst_1
            invokevirtual com.sun.tools.sjavac.Module.setDependencies:(Ljava/lang/String;Ljava/util/Map;Z)V
        end local 19 // com.sun.tools.sjavac.Module mnow
        end local 18 // java.util.Map deps
        end local 16 // java.util.Map$Entry a
        54: .line 828
      StackMap locals:
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 50
        55: .line 838
            aload 14 /* dependencyPublicApis */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 17
            goto 66
      StackMap locals:
      StackMap stack:
        56: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 16 /* a */
        start local 16 // java.util.Map$Entry a
        57: .line 839
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 18 /* pkg */
        start local 18 // java.lang.String pkg
        58: .line 840
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.pubapi.PubApi
            astore 19 /* packagePartialPubApi */
        start local 19 // com.sun.tools.sjavac.pubapi.PubApi packagePartialPubApi
        59: .line 841
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            aload 18 /* pkg */
            invokevirtual com.sun.tools.sjavac.BuildState.findModuleFromPackageName:(Ljava/lang/String;)Lcom/sun/tools/sjavac/Module;
            aload 18 /* pkg */
            invokevirtual com.sun.tools.sjavac.Module.lookupPackage:(Ljava/lang/String;)Lcom/sun/tools/sjavac/Package;
            astore 20 /* pkgNow */
        start local 20 // com.sun.tools.sjavac.Package pkgNow
        60: .line 842
            aload 20 /* pkgNow */
            invokevirtual com.sun.tools.sjavac.Package.getPubApi:()Lcom/sun/tools/sjavac/pubapi/PubApi;
            astore 21 /* currentPubApi */
        start local 21 // com.sun.tools.sjavac.pubapi.PubApi currentPubApi
        61: .line 843
            aload 21 /* currentPubApi */
            aload 19 /* packagePartialPubApi */
            invokestatic com.sun.tools.sjavac.pubapi.PubApi.mergeTypes:(Lcom/sun/tools/sjavac/pubapi/PubApi;Lcom/sun/tools/sjavac/pubapi/PubApi;)Lcom/sun/tools/sjavac/pubapi/PubApi;
            astore 22 /* newPubApi */
        start local 22 // com.sun.tools.sjavac.pubapi.PubApi newPubApi
        62: .line 844
            aload 20 /* pkgNow */
            aload 22 /* newPubApi */
            invokevirtual com.sun.tools.sjavac.Package.setPubapi:(Lcom/sun/tools/sjavac/pubapi/PubApi;)V
        63: .line 847
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            aload 18 /* pkg */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 65
        64: .line 848
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            aload 18 /* pkg */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Package
            aload 22 /* newPubApi */
            invokevirtual com.sun.tools.sjavac.Package.setPubapi:(Lcom/sun/tools/sjavac/pubapi/PubApi;)V
            goto 66
        65: .line 850
      StackMap locals: com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.comp.CompilationService java.io.File java.util.Map int java.util.Map java.util.Map$Entry java.util.Iterator com.sun.tools.sjavac.Transformer java.util.Map java.util.Map java.util.Map java.util.Map java.util.Map java.util.Map int java.util.Map$Entry java.util.Iterator java.lang.String com.sun.tools.sjavac.pubapi.PubApi com.sun.tools.sjavac.Package com.sun.tools.sjavac.pubapi.PubApi com.sun.tools.sjavac.pubapi.PubApi
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.packages:()Ljava/util/Map;
            aload 18 /* pkg */
            aload 20 /* pkgNow */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 22 // com.sun.tools.sjavac.pubapi.PubApi newPubApi
        end local 21 // com.sun.tools.sjavac.pubapi.PubApi currentPubApi
        end local 20 // com.sun.tools.sjavac.Package pkgNow
        end local 19 // com.sun.tools.sjavac.pubapi.PubApi packagePartialPubApi
        end local 18 // java.lang.String pkg
        end local 16 // java.util.Map$Entry a
        66: .line 838
      StackMap locals: com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.comp.CompilationService java.io.File java.util.Map int java.util.Map java.util.Map$Entry java.util.Iterator com.sun.tools.sjavac.Transformer java.util.Map java.util.Map java.util.Map java.util.Map java.util.Map java.util.Map int top java.util.Iterator
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 56
        67: .line 858
            aload 13 /* packagePublicApis */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 17
            goto 78
      StackMap locals:
      StackMap stack:
        68: aload 17
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 16 /* a */
        start local 16 // java.util.Map$Entry a
        69: .line 859
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 18 /* pkg */
        start local 18 // java.lang.String pkg
        70: .line 860
            aload 16 /* a */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.pubapi.PubApi
            astore 19 /* newPubApi */
        start local 19 // com.sun.tools.sjavac.pubapi.PubApi newPubApi
        71: .line 861
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.prev:Lcom/sun/tools/sjavac/BuildState;
            aload 18 /* pkg */
            invokevirtual com.sun.tools.sjavac.BuildState.findModuleFromPackageName:(Ljava/lang/String;)Lcom/sun/tools/sjavac/Module;
            astore 20 /* mprev */
        start local 20 // com.sun.tools.sjavac.Module mprev
        72: .line 862
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            aload 18 /* pkg */
            invokevirtual com.sun.tools.sjavac.BuildState.findModuleFromPackageName:(Ljava/lang/String;)Lcom/sun/tools/sjavac/Module;
            astore 21 /* mnow */
        start local 21 // com.sun.tools.sjavac.Module mnow
        73: .line 863
            aload 21 /* mnow */
            aload 18 /* pkg */
            aload 19 /* newPubApi */
            invokevirtual com.sun.tools.sjavac.Module.setPubapi:(Ljava/lang/String;Lcom/sun/tools/sjavac/pubapi/PubApi;)V
        74: .line 864
            aload 20 /* mprev */
            aload 18 /* pkg */
            aload 19 /* newPubApi */
            invokevirtual com.sun.tools.sjavac.Module.hasPubapiChanged:(Ljava/lang/String;Lcom/sun/tools/sjavac/pubapi/PubApi;)Z
            ifeq 78
        75: .line 867
            aload 20 /* mprev */
            aload 18 /* pkg */
            invokevirtual com.sun.tools.sjavac.Module.lookupPackage:(Ljava/lang/String;)Lcom/sun/tools/sjavac/Package;
            invokevirtual com.sun.tools.sjavac.Package.existsInJavacState:()Z
            ifeq 78
        76: .line 870
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.packagesWithChangedPublicApis:Ljava/util/Set;
            aload 18 /* pkg */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        77: .line 871
            new java.lang.StringBuilder
            dup
            ldc "The API of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 18 /* pkg */
            invokestatic com.sun.tools.sjavac.Util.justPackageName:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " has changed!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.tools.sjavac.Log.debug:(Ljava/lang/String;)V
        end local 21 // com.sun.tools.sjavac.Module mnow
        end local 20 // com.sun.tools.sjavac.Module mprev
        end local 19 // com.sun.tools.sjavac.pubapi.PubApi newPubApi
        end local 18 // java.lang.String pkg
        end local 16 // java.util.Map$Entry a
        78: .line 858
      StackMap locals:
      StackMap stack:
            aload 17
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 68
        end local 15 // boolean r
        end local 14 // java.util.Map dependencyPublicApis
        end local 13 // java.util.Map packagePublicApis
        end local 12 // java.util.Map packageCpDependencies
        end local 11 // java.util.Map packageDependencies
        end local 10 // java.util.Map packageArtifacts
        end local 9 // java.util.Map srcs
        end local 8 // com.sun.tools.sjavac.Transformer t
        end local 6 // java.util.Map$Entry e
        79: .line 787
      StackMap locals: com.sun.tools.sjavac.JavacState com.sun.tools.sjavac.comp.CompilationService java.io.File java.util.Map int java.util.Map top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        80: .line 876
            iload 4 /* rc */
            ireturn
        end local 5 // java.util.Map groupedSources
        end local 4 // boolean rc
        end local 3 // java.util.Map suffixRules
        end local 2 // java.io.File outputDir
        end local 1 // com.sun.tools.sjavac.comp.CompilationService sjavac
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   81     0                   this  Lcom/sun/tools/sjavac/JavacState;
            0   81     1                 sjavac  Lcom/sun/tools/sjavac/comp/CompilationService;
            0   81     2              outputDir  Ljava/io/File;
            0   81     3            suffixRules  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;
            1   81     4                     rc  Z
            2   81     5         groupedSources  Ljava/util/Map<Lcom/sun/tools/sjavac/Transformer;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/net/URI;>;>;>;
            4    8     6                    src  Lcom/sun/tools/sjavac/Source;
            5    8     8                      t  Lcom/sun/tools/sjavac/Transformer;
           11   79     6                      e  Ljava/util/Map$Entry<Lcom/sun/tools/sjavac/Transformer;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/net/URI;>;>;>;
           12   79     8                      t  Lcom/sun/tools/sjavac/Transformer;
           13   79     9                   srcs  Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/net/URI;>;>;
           14   79    10       packageArtifacts  Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/net/URI;>;>;
           15   79    11    packageDependencies  Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;>;
           16   79    12  packageCpDependencies  Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;>;
           17   79    13      packagePublicApis  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/pubapi/PubApi;>;
           18   79    14   dependencyPublicApis  Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/pubapi/PubApi;>;
           32   79    15                      r  Z
           36   37    16                      p  Ljava/lang/String;
           40   42    16                      a  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/util/Set<Ljava/net/URI;>;>;
           41   42    18                   mnow  Lcom/sun/tools/sjavac/Module;
           45   48    16                      a  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;>;
           46   48    18                   deps  Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;
           47   48    19                   mnow  Lcom/sun/tools/sjavac/Module;
           51   54    16                      a  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;>;
           52   54    18                   deps  Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;
           53   54    19                   mnow  Lcom/sun/tools/sjavac/Module;
           57   66    16                      a  Ljava/util/Map$Entry<Ljava/lang/String;Lcom/sun/tools/sjavac/pubapi/PubApi;>;
           58   66    18                    pkg  Ljava/lang/String;
           59   66    19   packagePartialPubApi  Lcom/sun/tools/sjavac/pubapi/PubApi;
           60   66    20                 pkgNow  Lcom/sun/tools/sjavac/Package;
           61   66    21          currentPubApi  Lcom/sun/tools/sjavac/pubapi/PubApi;
           62   66    22              newPubApi  Lcom/sun/tools/sjavac/pubapi/PubApi;
           69   78    16                      a  Ljava/util/Map$Entry<Ljava/lang/String;Lcom/sun/tools/sjavac/pubapi/PubApi;>;
           70   78    18                    pkg  Ljava/lang/String;
           71   78    19              newPubApi  Lcom/sun/tools/sjavac/pubapi/PubApi;
           72   78    20                  mprev  Lcom/sun/tools/sjavac/Module;
           73   78    21                   mnow  Lcom/sun/tools/sjavac/Module;
    Signature: (Lcom/sun/tools/sjavac/comp/CompilationService;Ljava/io/File;Ljava/util/Map<Ljava/lang/String;Lcom/sun/tools/sjavac/Transformer;>;)Z
    MethodParameters:
             Name  Flags
      sjavac       
      outputDir    
      suffixRules  

  private static java.util.Set<java.io.File> findAllFiles(java.io.File);
    descriptor: (Ljava/io/File;)Ljava/util/Set;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.io.File dir
         0: .line 883
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 1 /* foundFiles */
        start local 1 // java.util.Set foundFiles
         1: .line 884
            aload 0 /* dir */
            ifnonnull 3
         2: .line 885
            aload 1 /* foundFiles */
            areturn
         3: .line 887
      StackMap locals: java.util.Set
      StackMap stack:
            aload 0 /* dir */
            aload 1 /* foundFiles */
            invokestatic com.sun.tools.sjavac.JavacState.recurse:(Ljava/io/File;Ljava/util/Set;)V
         4: .line 888
            aload 1 /* foundFiles */
            areturn
        end local 1 // java.util.Set foundFiles
        end local 0 // java.io.File dir
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0         dir  Ljava/io/File;
            1    5     1  foundFiles  Ljava/util/Set<Ljava/io/File;>;
    Signature: (Ljava/io/File;)Ljava/util/Set<Ljava/io/File;>;
    MethodParameters:
      Name  Flags
      dir   

  private static void recurse(java.io.File, java.util.Set<java.io.File>);
    descriptor: (Ljava/io/File;Ljava/util/Set;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // java.io.File dir
        start local 1 // java.util.Set foundFiles
         0: .line 892
            aload 0 /* dir */
            invokevirtual java.io.File.listFiles:()[Ljava/io/File;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 8
      StackMap locals: java.io.File java.util.Set top int int java.io.File[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* f */
        start local 2 // java.io.File f
         2: .line 893
            aload 2 /* f */
            invokevirtual java.io.File.isFile:()Z
            ifeq 5
         3: .line 894
            aload 1 /* foundFiles */
            aload 2 /* f */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         4: .line 895
            goto 7
      StackMap locals: java.io.File java.util.Set java.io.File int int java.io.File[]
      StackMap stack:
         5: aload 2 /* f */
            invokevirtual java.io.File.isDirectory:()Z
            ifeq 7
         6: .line 896
            aload 2 /* f */
            aload 1 /* foundFiles */
            invokestatic com.sun.tools.sjavac.JavacState.recurse:(Ljava/io/File;Ljava/util/Set;)V
        end local 2 // java.io.File f
         7: .line 892
      StackMap locals: java.io.File java.util.Set top int int java.io.File[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         8: iload 3
            iload 4
            if_icmplt 1
         9: .line 899
            return
        end local 1 // java.util.Set foundFiles
        end local 0 // java.io.File dir
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0         dir  Ljava/io/File;
            0   10     1  foundFiles  Ljava/util/Set<Ljava/io/File;>;
            2    7     2           f  Ljava/io/File;
    Signature: (Ljava/io/File;Ljava/util/Set<Ljava/io/File;>;)V
    MethodParameters:
            Name  Flags
      dir         
      foundFiles  

  public void compareWithMakefileList(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // com.sun.tools.sjavac.JavacState this
        start local 1 // java.io.File makefileSourceList
         0: .line 913
            getstatic java.io.File.pathSeparatorChar:C
            bipush 59
            if_icmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 2 /* mightNeedRewriting */
        start local 2 // boolean mightNeedRewriting
         3: .line 915
            aload 1 /* makefileSourceList */
            ifnonnull 5
         4: .line 916
            return
         5: .line 918
      StackMap locals: int
      StackMap stack:
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 3 /* calculatedSources */
        start local 3 // java.util.Set calculatedSources
         6: .line 919
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* listedSources */
        start local 4 // java.util.Set listedSources
         7: .line 922
            aload 0 /* this */
            getfield com.sun.tools.sjavac.JavacState.now:Lcom/sun/tools/sjavac/BuildState;
            invokevirtual com.sun.tools.sjavac.BuildState.sources:()Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 14
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File int java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
         8: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.sjavac.Source
            astore 5 /* s */
        start local 5 // com.sun.tools.sjavac.Source s
         9: .line 924
            aload 5 /* s */
            invokevirtual com.sun.tools.sjavac.Source.isLinkedOnly:()Z
            ifne 14
        10: .line 925
            aload 5 /* s */
            invokevirtual com.sun.tools.sjavac.Source.file:()Ljava/io/File;
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            astore 7 /* path */
        start local 7 // java.lang.String path
        11: .line 926
            iload 2 /* mightNeedRewriting */
            ifeq 13
        12: .line 927
            aload 7 /* path */
            invokestatic com.sun.tools.sjavac.Util.normalizeDriveLetter:(Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* path */
        13: .line 928
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File int java.util.Set java.util.Set com.sun.tools.sjavac.Source java.util.Iterator java.lang.String
      StackMap stack:
            aload 3 /* calculatedSources */
            aload 7 /* path */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.String path
        end local 5 // com.sun.tools.sjavac.Source s
        14: .line 922
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File int java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        15: .line 932
            aconst_null
            astore 5
            aconst_null
            astore 6
        16: new java.io.BufferedReader
            dup
            new java.io.FileReader
            dup
            aload 1 /* makefileSourceList */
            invokespecial java.io.FileReader.<init>:(Ljava/io/File;)V
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            astore 7 /* in */
        start local 7 // java.io.BufferedReader in
        17: .line 934
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File int java.util.Set java.util.Set java.lang.Throwable java.lang.Throwable java.io.BufferedReader
      StackMap stack:
            aload 7 /* in */
            invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
            astore 8 /* l */
        start local 8 // java.lang.String l
        18: .line 935
            aload 8 /* l */
            ifnonnull 19
            goto 33
        19: .line 936
      StackMap locals: java.lang.String
      StackMap stack:
            aload 8 /* l */
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            astore 8 /* l */
        20: .line 937
            iload 2 /* mightNeedRewriting */
            ifeq 31
        21: .line 938
            aload 8 /* l */
            ldc ":"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_1
            if_icmpne 22
            aload 8 /* l */
            ldc "\\"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_2
            if_icmpeq 29
        22: .line 940
      StackMap locals:
      StackMap stack:
            aload 8 /* l */
            ldc ":"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_1
            if_icmpne 25
            aload 8 /* l */
            ldc "/"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            iconst_2
            if_icmpne 25
        23: .line 942
            aload 8 /* l */
            ldc "/"
            ldc "\\\\"
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* l */
        24: .line 943
            goto 29
      StackMap locals:
      StackMap stack:
        25: aload 8 /* l */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 29
            aload 8 /* l */
            ldc "/"
            iconst_1
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
            iconst_m1
            if_icmpeq 29
        26: .line 946
            aload 8 /* l */
            ldc "/"
            iconst_1
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;I)I
            istore 9 /* slash */
        start local 9 // int slash
        27: .line 947
            aload 8 /* l */
            ldc "/"
            ldc "\\\\"
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* l */
        28: .line 948
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 8 /* l */
            iload 9 /* slash */
            iconst_1
            iadd
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* l */
            iload 9 /* slash */
            iconst_2
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* l */
        end local 9 // int slash
        29: .line 950
      StackMap locals:
      StackMap stack:
            aload 8 /* l */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.isLowerCase:(C)Z
            ifeq 31
        30: .line 951
            new java.lang.StringBuilder
            dup
            aload 8 /* l */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic java.lang.Character.toUpperCase:(C)C
            invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* l */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 8 /* l */
        31: .line 954
      StackMap locals:
      StackMap stack:
            aload 4 /* listedSources */
            aload 8 /* l */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // java.lang.String l
        32: .line 933
            goto 17
        33: .line 956
      StackMap locals:
      StackMap stack:
            aload 7 /* in */
            ifnull 43
            aload 7 /* in */
            invokevirtual java.io.BufferedReader.close:()V
            goto 43
      StackMap locals:
      StackMap stack: java.lang.Throwable
        34: astore 5
            aload 7 /* in */
            ifnull 35
            aload 7 /* in */
            invokevirtual java.io.BufferedReader.close:()V
        end local 7 // java.io.BufferedReader in
      StackMap locals:
      StackMap stack:
        35: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        36: astore 6
            aload 5
            ifnonnull 37
            aload 6
            astore 5
            goto 38
      StackMap locals:
      StackMap stack:
        37: aload 5
            aload 6
            if_acmpeq 38
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        38: aload 5
            athrow
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File int java.util.Set java.util.Set
      StackMap stack: java.io.IOException
        39: pop
        40: .line 957
            new com.sun.tools.sjavac.ProblemException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Could not open "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* makefileSourceList */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " since it does not exist!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.sun.tools.sjavac.ProblemException.<init>:(Ljava/lang/String;)V
            athrow
        41: .line 958
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
        42: .line 959
            new com.sun.tools.sjavac.ProblemException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Could not read "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* makefileSourceList */
            invokevirtual java.io.File.getPath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.sun.tools.sjavac.ProblemException.<init>:(Ljava/lang/String;)V
            athrow
        43: .line 962
      StackMap locals:
      StackMap stack:
            aload 4 /* listedSources */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 47
      StackMap locals: com.sun.tools.sjavac.JavacState java.io.File int java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
        44: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* s */
        start local 5 // java.lang.String s
        45: .line 963
            aload 3 /* calculatedSources */
            aload 5 /* s */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 47
        46: .line 964
            new com.sun.tools.sjavac.ProblemException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The makefile listed source "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " was not calculated by the smart javac wrapper!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.sun.tools.sjavac.ProblemException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.String s
        47: .line 962
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 44
        48: .line 968
            aload 3 /* calculatedSources */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 52
      StackMap locals:
      StackMap stack:
        49: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* s */
        start local 5 // java.lang.String s
        50: .line 969
            aload 4 /* listedSources */
            aload 5 /* s */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 52
        51: .line 970
            new com.sun.tools.sjavac.ProblemException
            dup
            new java.lang.StringBuilder
            dup
            ldc "The smart javac wrapper calculated source "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " was not listed by the makefiles!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.sun.tools.sjavac.ProblemException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.String s
        52: .line 968
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 49
        53: .line 973
            return
        end local 4 // java.util.Set listedSources
        end local 3 // java.util.Set calculatedSources
        end local 2 // boolean mightNeedRewriting
        end local 1 // java.io.File makefileSourceList
        end local 0 // com.sun.tools.sjavac.JavacState this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   54     0                this  Lcom/sun/tools/sjavac/JavacState;
            0   54     1  makefileSourceList  Ljava/io/File;
            3   54     2  mightNeedRewriting  Z
            6   54     3   calculatedSources  Ljava/util/Set<Ljava/lang/String;>;
            7   54     4       listedSources  Ljava/util/Set<Ljava/lang/String;>;
            9   14     5                   s  Lcom/sun/tools/sjavac/Source;
           11   14     7                path  Ljava/lang/String;
           17   35     7                  in  Ljava/io/BufferedReader;
           18   32     8                   l  Ljava/lang/String;
           27   29     9               slash  I
           45   47     5                   s  Ljava/lang/String;
           50   52     5                   s  Ljava/lang/String;
      Exception table:
        from    to  target  type
          17    33      34  any
          16    36      36  any
          15    39      39  Class java.io.FileNotFoundException
          15    39      39  Class java.nio.file.NoSuchFileException
          15    39      41  Class java.io.IOException
    Exceptions:
      throws com.sun.tools.sjavac.ProblemException
    MethodParameters:
                    Name  Flags
      makefileSourceList  
}
SourceFile: "JavacState.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map