public class edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo
  super_class: java.lang.Object
{
  private static final java.lang.String USAGE;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "Usage: <cmd>  [options] [<oldData> [<newData>]]"

  static edu.umd.cs.findbugs.workflow.SourceSearcher sourceSearcher;
    descriptor: Ledu/umd/cs/findbugs/workflow/SourceSearcher;
    flags: (0x0008) ACC_STATIC

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo this
         0: .line 49
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ledu/umd/cs/findbugs/workflow/SetBugDatabaseInfo;

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=17, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 168
            invokestatic edu.umd.cs.findbugs.FindBugs.setNoAnalysis:()V
         1: .line 169
            invokestatic edu.umd.cs.findbugs.DetectorFactoryCollection.instance:()Ledu/umd/cs/findbugs/DetectorFactoryCollection;
            pop
         2: .line 170
            new edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine
            dup
            invokespecial edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.<init>:()V
            astore 1 /* commandLine */
        start local 1 // edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine commandLine
         3: .line 171
            aload 1 /* commandLine */
            aload 0 /* args */
            iconst_0
            iconst_2
            ldc "Usage: <cmd>  [options] [<oldData> [<newData>]]"
            invokevirtual edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.parse:([Ljava/lang/String;IILjava/lang/String;)I
            istore 2 /* argCount */
        start local 2 // int argCount
         4: .line 173
            new edu.umd.cs.findbugs.SortedBugCollection
            dup
            invokespecial edu.umd.cs.findbugs.SortedBugCollection.<init>:()V
            astore 3 /* origCollection */
        start local 3 // edu.umd.cs.findbugs.SortedBugCollection origCollection
         5: .line 175
            iload 2 /* argCount */
            aload 0 /* args */
            arraylength
            if_icmpge 8
         6: .line 176
            aload 3 /* origCollection */
            aload 0 /* args */
            iload 2 /* argCount */
            iinc 2 /* argCount */ 1
            aaload
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.readXML:(Ljava/lang/String;)V
         7: .line 177
            goto 9
         8: .line 178
      StackMap locals: edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection
      StackMap stack:
            aload 3 /* origCollection */
            getstatic java.lang.System.in:Ljava/io/InputStream;
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.readXML:(Ljava/io/InputStream;)V
         9: .line 180
      StackMap locals:
      StackMap stack:
            aload 3 /* origCollection */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.getProject:()Ledu/umd/cs/findbugs/Project;
            astore 4 /* project */
        start local 4 // edu.umd.cs.findbugs.Project project
        10: .line 182
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.revisionName:Ljava/lang/String;
            ifnull 12
        11: .line 183
            aload 3 /* origCollection */
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.revisionName:Ljava/lang/String;
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.setReleaseName:(Ljava/lang/String;)V
        12: .line 185
      StackMap locals: edu.umd.cs.findbugs.Project
      StackMap stack:
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.projectName:Ljava/lang/String;
            ifnull 14
        13: .line 186
            aload 3 /* origCollection */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.getProject:()Ledu/umd/cs/findbugs/Project;
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.projectName:Ljava/lang/String;
            invokevirtual edu.umd.cs.findbugs.Project.setProjectName:(Ljava/lang/String;)V
        14: .line 188
      StackMap locals:
      StackMap stack:
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.revisionTimestamp:J
            lconst_0
            lcmp
            ifeq 16
        15: .line 189
            aload 3 /* origCollection */
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.revisionTimestamp:J
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.setTimestamp:(J)V
        16: .line 191
      StackMap locals:
      StackMap stack:
            aload 3 /* origCollection */
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.withMessages:Z
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.setWithMessages:(Z)V
        17: .line 193
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.purgeDesignations:Z
            ifeq 22
        18: .line 194
            aload 3 /* origCollection */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 21
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project top java.util.Iterator
      StackMap stack:
        19: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast edu.umd.cs.findbugs.BugInstance
            astore 5 /* b */
        start local 5 // edu.umd.cs.findbugs.BugInstance b
        20: .line 195
            aload 5 /* b */
            aconst_null
            invokevirtual edu.umd.cs.findbugs.BugInstance.setUserDesignation:(Ledu/umd/cs/findbugs/BugDesignation;)V
        end local 5 // edu.umd.cs.findbugs.BugInstance b
        21: .line 194
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        22: .line 198
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project
      StackMap stack:
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.exclusionFilterFile:Ljava/lang/String;
            ifnull 24
        23: .line 199
            aload 4 /* project */
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.exclusionFilterFile:Ljava/lang/String;
            invokestatic edu.umd.cs.findbugs.filter.Filter.parseFilter:(Ljava/lang/String;)Ledu/umd/cs/findbugs/filter/Filter;
            invokevirtual edu.umd.cs.findbugs.Project.setSuppressionFilter:(Ledu/umd/cs/findbugs/filter/Filter;)V
        24: .line 201
      StackMap locals:
      StackMap stack:
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.resetProject:Z
            ifeq 28
        25: .line 202
            aload 4 /* project */
            invokevirtual edu.umd.cs.findbugs.Project.getSourceDirList:()Ljava/util/List;
            invokeinterface java.util.List.clear:()V
        26: .line 203
            aload 4 /* project */
            invokevirtual edu.umd.cs.findbugs.Project.getFileList:()Ljava/util/List;
            invokeinterface java.util.List.clear:()V
        27: .line 204
            aload 4 /* project */
            invokevirtual edu.umd.cs.findbugs.Project.getAuxClasspathEntryList:()Ljava/util/List;
            invokeinterface java.util.List.clear:()V
        28: .line 206
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* reinitializeCloud */
        start local 5 // boolean reinitializeCloud
        29: .line 207
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.cloudId:Ljava/lang/String;
            ifnull 32
        30: .line 208
            aload 4 /* project */
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.cloudId:Ljava/lang/String;
            invokevirtual edu.umd.cs.findbugs.Project.setCloudId:(Ljava/lang/String;)V
        31: .line 209
            iconst_1
            istore 5 /* reinitializeCloud */
        32: .line 211
      StackMap locals: int
      StackMap stack:
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.cloudProperties:Ljava/util/HashMap;
            invokevirtual java.util.HashMap.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 36
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int top java.util.Iterator
      StackMap stack:
        33: 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
        34: .line 212
            aload 4 /* project */
            invokevirtual edu.umd.cs.findbugs.Project.getCloudProperties:()Ljava/util/Properties;
            aload 6 /* e */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 6 /* e */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
            pop
        35: .line 213
            iconst_1
            istore 5 /* reinitializeCloud */
        end local 6 // java.util.Map$Entry e
        36: .line 211
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 33
        37: .line 216
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.resetSource:Z
            ifeq 39
        38: .line 217
            aload 4 /* project */
            invokevirtual edu.umd.cs.findbugs.Project.getSourceDirList:()Ljava/util/List;
            invokeinterface java.util.List.clear:()V
        39: .line 219
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int
      StackMap stack:
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.sourcePaths:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 42
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int top java.util.Iterator
      StackMap stack:
        40: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* source */
        start local 6 // java.lang.String source
        41: .line 220
            aload 4 /* project */
            aload 6 /* source */
            invokevirtual edu.umd.cs.findbugs.Project.addSourceDir:(Ljava/lang/String;)Z
            pop
        end local 6 // java.lang.String source
        42: .line 219
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 40
        43: .line 222
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.purgeStats:Z
            ifeq 45
        44: .line 223
            aload 3 /* origCollection */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.getProjectStats:()Ledu/umd/cs/findbugs/ProjectStats;
            invokevirtual edu.umd.cs.findbugs.ProjectStats.getPackageStats:()Ljava/util/Collection;
            invokeinterface java.util.Collection.clear:()V
        45: .line 225
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int
      StackMap stack:
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.purgeClassStats:Z
            ifeq 50
        46: .line 226
            aload 3 /* origCollection */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.getProjectStats:()Ledu/umd/cs/findbugs/ProjectStats;
            invokevirtual edu.umd.cs.findbugs.ProjectStats.getPackageStats:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 49
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int top java.util.Iterator
      StackMap stack:
        47: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast edu.umd.cs.findbugs.PackageStats
            astore 6 /* ps */
        start local 6 // edu.umd.cs.findbugs.PackageStats ps
        48: .line 227
            aload 6 /* ps */
            invokevirtual edu.umd.cs.findbugs.PackageStats.getClassStats:()Ljava/util/Collection;
            invokeinterface java.util.Collection.clear:()V
        end local 6 // edu.umd.cs.findbugs.PackageStats ps
        49: .line 226
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 47
        50: .line 230
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int
      StackMap stack:
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.purgeMissingClasses:Z
            ifeq 52
        51: .line 231
            aload 3 /* origCollection */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.clearMissingClasses:()V
        52: .line 233
      StackMap locals:
      StackMap stack:
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.lastVersion:Ljava/lang/String;
            ifnull 62
        53: .line 234
            aload 3 /* origCollection */
        54: .line 235
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.lastVersion:Ljava/lang/String;
            iconst_1
        55: .line 234
            invokestatic edu.umd.cs.findbugs.workflow.Filter$FilterCommandLine.getVersionNum:(Ledu/umd/cs/findbugs/BugCollection;Ljava/lang/String;Z)J
            lstore 6 /* last */
        start local 6 // long last
        56: .line 236
            lload 6 /* last */
            aload 3 /* origCollection */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.getSequenceNumber:()J
            lcmp
            ifge 62
        57: .line 237
            aload 3 /* origCollection */
            lload 6 /* last */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.getAppVersionFromSequenceNumber:(J)Ledu/umd/cs/findbugs/AppVersion;
            invokevirtual edu.umd.cs.findbugs.AppVersion.getReleaseName:()Ljava/lang/String;
            astore 8 /* name */
        start local 8 // java.lang.String name
        58: .line 238
            aload 3 /* origCollection */
            lload 6 /* last */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.getAppVersionFromSequenceNumber:(J)Ledu/umd/cs/findbugs/AppVersion;
            invokevirtual edu.umd.cs.findbugs.AppVersion.getTimestamp:()J
            lstore 9 /* timestamp */
        start local 9 // long timestamp
        59: .line 239
            aload 3 /* origCollection */
            aload 8 /* name */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.setReleaseName:(Ljava/lang/String;)V
        60: .line 240
            aload 3 /* origCollection */
            lload 9 /* timestamp */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.setTimestamp:(J)V
        61: .line 241
            aload 3 /* origCollection */
            lload 6 /* last */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.trimAppVersions:(J)V
        end local 9 // long timestamp
        end local 8 // java.lang.String name
        end local 6 // long last
        62: .line 246
      StackMap locals:
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 6 /* missingFiles */
        start local 6 // java.util.Map missingFiles
        63: .line 247
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.searchSourcePaths:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 109
        64: .line 248
            new edu.umd.cs.findbugs.workflow.SourceSearcher
            dup
            aload 4 /* project */
            invokespecial edu.umd.cs.findbugs.workflow.SourceSearcher.<init>:(Ledu/umd/cs/findbugs/Project;)V
            putstatic edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo.sourceSearcher:Ledu/umd/cs/findbugs/workflow/SourceSearcher;
        65: .line 249
            aload 3 /* origCollection */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.getCollection:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 8
            goto 75
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map top java.util.Iterator
      StackMap stack:
        66: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast edu.umd.cs.findbugs.BugInstance
            astore 7 /* bug */
        start local 7 // edu.umd.cs.findbugs.BugInstance bug
        67: .line 250
            aload 7 /* bug */
            invokevirtual edu.umd.cs.findbugs.BugInstance.getPrimarySourceLineAnnotation:()Ledu/umd/cs/findbugs/SourceLineAnnotation;
            astore 9 /* src */
        start local 9 // edu.umd.cs.findbugs.SourceLineAnnotation src
        68: .line 251
            getstatic edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo.sourceSearcher:Ledu/umd/cs/findbugs/workflow/SourceSearcher;
            getfield edu.umd.cs.findbugs.workflow.SourceSearcher.sourceNotFound:Ljava/util/HashSet;
            aload 9 /* src */
            invokevirtual edu.umd.cs.findbugs.SourceLineAnnotation.getClassName:()Ljava/lang/String;
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifne 75
            getstatic edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo.sourceSearcher:Ledu/umd/cs/findbugs/workflow/SourceSearcher;
            aload 9 /* src */
            invokevirtual edu.umd.cs.findbugs.workflow.SourceSearcher.findSource:(Ledu/umd/cs/findbugs/SourceLineAnnotation;)Z
            ifne 75
        69: .line 252
            aload 6 /* missingFiles */
            aload 9 /* src */
            invokevirtual edu.umd.cs.findbugs.SourceLineAnnotation.getSourceFile:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Set
            astore 10 /* paths */
        start local 10 // java.util.Set paths
        70: .line 253
            aload 10 /* paths */
            ifnonnull 73
        71: .line 254
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 10 /* paths */
        72: .line 255
            aload 6 /* missingFiles */
            aload 9 /* src */
            invokevirtual edu.umd.cs.findbugs.SourceLineAnnotation.getSourceFile:()Ljava/lang/String;
            aload 10 /* paths */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        73: .line 257
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map edu.umd.cs.findbugs.BugInstance java.util.Iterator edu.umd.cs.findbugs.SourceLineAnnotation java.util.Set
      StackMap stack:
            aload 9 /* src */
            invokestatic edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo.fullPath:(Ledu/umd/cs/findbugs/SourceLineAnnotation;)Ljava/lang/String;
            astore 11 /* fullPath */
        start local 11 // java.lang.String fullPath
        74: .line 259
            aload 10 /* paths */
            aload 11 /* fullPath */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 11 // java.lang.String fullPath
        end local 10 // java.util.Set paths
        end local 9 // edu.umd.cs.findbugs.SourceLineAnnotation src
        end local 7 // edu.umd.cs.findbugs.BugInstance bug
        75: .line 249
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 66
        76: .line 262
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 7 /* foundPaths */
        start local 7 // java.util.Set foundPaths
        77: .line 263
            aload 1 /* commandLine */
            getfield edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine.searchSourcePaths:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 91
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map java.util.Set top java.util.Iterator
      StackMap stack:
        78: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* f */
        start local 8 // java.lang.String f
        79: .line 264
            new java.io.File
            dup
            aload 8 /* f */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokestatic edu.umd.cs.findbugs.workflow.RecursiveSearchForJavaFiles.search:(Ljava/io/File;)Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 11
            goto 90
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map java.util.Set java.lang.String java.util.Iterator top java.util.Iterator
      StackMap stack:
        80: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.io.File
            astore 10 /* javaFile */
        start local 10 // java.io.File javaFile
        81: .line 265
            aload 6 /* missingFiles */
            aload 10 /* javaFile */
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Set
            astore 12 /* matchingMissingClasses */
        start local 12 // java.util.Set matchingMissingClasses
        82: .line 266
            aload 12 /* matchingMissingClasses */
            ifnull 90
        83: .line 269
            aload 12 /* matchingMissingClasses */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 14
            goto 89
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map java.util.Set java.lang.String java.util.Iterator java.io.File java.util.Iterator java.util.Set top java.util.Iterator
      StackMap stack:
        84: aload 14
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 13 /* sourcePath */
        start local 13 // java.lang.String sourcePath
        85: .line 270
            aload 10 /* javaFile */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            astore 15 /* path */
        start local 15 // java.lang.String path
        86: .line 271
            aload 15 /* path */
            aload 13 /* sourcePath */
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 89
        87: .line 272
            aload 15 /* path */
            iconst_0
            aload 15 /* path */
            invokevirtual java.lang.String.length:()I
            aload 13 /* sourcePath */
            invokevirtual java.lang.String.length:()I
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 16 /* dir */
        start local 16 // java.lang.String dir
        88: .line 273
            aload 7 /* foundPaths */
            aload 16 /* dir */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 16 // java.lang.String dir
        end local 15 // java.lang.String path
        end local 13 // java.lang.String sourcePath
        89: .line 269
      StackMap locals:
      StackMap stack:
            aload 14
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 84
        end local 12 // java.util.Set matchingMissingClasses
        end local 10 // java.io.File javaFile
        90: .line 264
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map java.util.Set java.lang.String java.util.Iterator top java.util.Iterator
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 80
        end local 8 // java.lang.String f
        91: .line 263
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map java.util.Set top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 78
        92: .line 282
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 8 /* toRemove */
        start local 8 // java.util.Set toRemove
        93: .line 283
            aload 7 /* foundPaths */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 10
            goto 101
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
        94: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 9 /* p1 */
        start local 9 // java.lang.String p1
        95: .line 284
            aload 7 /* foundPaths */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 12
            goto 100
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map java.util.Set java.util.Set java.lang.String java.util.Iterator top java.util.Iterator
      StackMap stack:
        96: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 11 /* p2 */
        start local 11 // java.lang.String p2
        97: .line 285
            aload 9 /* p1 */
            aload 11 /* p2 */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 100
            aload 9 /* p1 */
            aload 11 /* p2 */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 100
        98: .line 286
            aload 8 /* toRemove */
            aload 9 /* p1 */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        99: .line 287
            goto 101
        end local 11 // java.lang.String p2
       100: .line 284
      StackMap locals:
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 96
        end local 9 // java.lang.String p1
       101: .line 283
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map java.util.Set java.util.Set top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 94
       102: .line 291
            aload 7 /* foundPaths */
            aload 8 /* toRemove */
            invokeinterface java.util.Set.removeAll:(Ljava/util/Collection;)Z
            pop
       103: .line 293
            aload 7 /* foundPaths */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 10
            goto 108
      StackMap locals:
      StackMap stack:
       104: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 9 /* dir */
        start local 9 // java.lang.String dir
       105: .line 294
            aload 4 /* project */
            aload 9 /* dir */
            invokevirtual edu.umd.cs.findbugs.Project.addSourceDir:(Ljava/lang/String;)Z
            pop
       106: .line 295
            iload 2 /* argCount */
            aload 0 /* args */
            arraylength
            if_icmpge 108
       107: .line 296
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Found "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* dir */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 9 // java.lang.String dir
       108: .line 293
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 104
        end local 8 // java.util.Set toRemove
        end local 7 // java.util.Set foundPaths
       109: .line 302
      StackMap locals: java.lang.String[] edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine int edu.umd.cs.findbugs.SortedBugCollection edu.umd.cs.findbugs.Project int java.util.Map
      StackMap stack:
            iload 5 /* reinitializeCloud */
            ifeq 111
       110: .line 304
            aload 3 /* origCollection */
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.clearCloud:()V
       111: .line 310
      StackMap locals:
      StackMap stack:
            iload 2 /* argCount */
            aload 0 /* args */
            arraylength
            if_icmpge 114
       112: .line 311
            aload 3 /* origCollection */
            aload 0 /* args */
            iload 2 /* argCount */
            iinc 2 /* argCount */ 1
            aaload
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.writeXML:(Ljava/lang/String;)V
       113: .line 312
            goto 115
       114: .line 313
      StackMap locals:
      StackMap stack:
            aload 3 /* origCollection */
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            invokevirtual edu.umd.cs.findbugs.SortedBugCollection.writeXML:(Ljava/io/OutputStream;)V
       115: .line 316
      StackMap locals:
      StackMap stack:
            return
        end local 6 // java.util.Map missingFiles
        end local 5 // boolean reinitializeCloud
        end local 4 // edu.umd.cs.findbugs.Project project
        end local 3 // edu.umd.cs.findbugs.SortedBugCollection origCollection
        end local 2 // int argCount
        end local 1 // edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine commandLine
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0  116     0                    args  [Ljava/lang/String;
            3  116     1             commandLine  Ledu/umd/cs/findbugs/workflow/SetBugDatabaseInfo$SetInfoCommandLine;
            4  116     2                argCount  I
            5  116     3          origCollection  Ledu/umd/cs/findbugs/SortedBugCollection;
           10  116     4                 project  Ledu/umd/cs/findbugs/Project;
           20   21     5                       b  Ledu/umd/cs/findbugs/BugInstance;
           29  116     5       reinitializeCloud  Z
           34   36     6                       e  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
           41   42     6                  source  Ljava/lang/String;
           48   49     6                      ps  Ledu/umd/cs/findbugs/PackageStats;
           56   62     6                    last  J
           58   62     8                    name  Ljava/lang/String;
           59   62     9               timestamp  J
           63  116     6            missingFiles  Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;
           67   75     7                     bug  Ledu/umd/cs/findbugs/BugInstance;
           68   75     9                     src  Ledu/umd/cs/findbugs/SourceLineAnnotation;
           70   75    10                   paths  Ljava/util/Set<Ljava/lang/String;>;
           74   75    11                fullPath  Ljava/lang/String;
           77  109     7              foundPaths  Ljava/util/Set<Ljava/lang/String;>;
           79   91     8                       f  Ljava/lang/String;
           81   90    10                javaFile  Ljava/io/File;
           82   90    12  matchingMissingClasses  Ljava/util/Set<Ljava/lang/String;>;
           85   89    13              sourcePath  Ljava/lang/String;
           86   89    15                    path  Ljava/lang/String;
           88   89    16                     dir  Ljava/lang/String;
           93  109     8                toRemove  Ljava/util/Set<Ljava/lang/String;>;
           95  101     9                      p1  Ljava/lang/String;
           97  100    11                      p2  Ljava/lang/String;
          105  108     9                     dir  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException, org.dom4j.DocumentException
    MethodParameters:
      Name  Flags
      args  

  static java.lang.String fullPath(edu.umd.cs.findbugs.SourceLineAnnotation);
    descriptor: (Ledu/umd/cs/findbugs/SourceLineAnnotation;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // edu.umd.cs.findbugs.SourceLineAnnotation src
         0: .line 319
            new java.lang.StringBuilder
            dup
            aload 0 /* src */
            invokevirtual edu.umd.cs.findbugs.SourceLineAnnotation.getPackageName:()Ljava/lang/String;
            bipush 46
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.io.File.separatorChar:C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* src */
            invokevirtual edu.umd.cs.findbugs.SourceLineAnnotation.getSourceFile:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // edu.umd.cs.findbugs.SourceLineAnnotation src
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   src  Ledu/umd/cs/findbugs/SourceLineAnnotation;
    MethodParameters:
      Name  Flags
      src   
}
SourceFile: "SetBugDatabaseInfo.java"
NestMembers:
  edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine
InnerClasses:
  public ClassStats = edu.umd.cs.findbugs.PackageStats$ClassStats of edu.umd.cs.findbugs.PackageStats
  FilterCommandLine = edu.umd.cs.findbugs.workflow.Filter$FilterCommandLine of edu.umd.cs.findbugs.workflow.Filter
  SetInfoCommandLine = edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo$SetInfoCommandLine of edu.umd.cs.findbugs.workflow.SetBugDatabaseInfo
  public abstract Entry = java.util.Map$Entry of java.util.Map