public class com.sun.tools.jdeprscan.Main implements javax.tools.DiagnosticListener<javax.tools.JavaFileObject>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.jdeprscan.Main
  super_class: java.lang.Object
{
  final java.io.PrintStream out;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0010) ACC_FINAL

  final java.io.PrintStream err;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0010) ACC_FINAL

  final java.util.List<java.io.File> bootClassPath;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Ljava/io/File;>;

  final java.util.List<java.io.File> classPath;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Ljava/io/File;>;

  final java.util.List<java.io.File> systemModules;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Ljava/io/File;>;

  final java.util.List<java.lang.String> options;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Ljava/lang/String;>;

  final java.util.List<java.lang.String> comments;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Ljava/lang/String;>;

  final java.util.Set<java.lang.String> releasesWithoutForRemoval;
    descriptor: Ljava/util/Set;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  final java.util.Set<java.lang.String> releasesWithForRemoval;
    descriptor: Ljava/util/Set;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  final java.util.Set<java.lang.String> validReleases;
    descriptor: Ljava/util/Set;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  boolean verbose;
    descriptor: Z
    flags: (0x0000) 

  boolean forRemoval;
    descriptor: Z
    flags: (0x0000) 

  final javax.tools.JavaCompiler compiler;
    descriptor: Ljavax/tools/JavaCompiler;
    flags: (0x0010) ACC_FINAL

  final javax.tools.StandardJavaFileManager fm;
    descriptor: Ljavax/tools/StandardJavaFileManager;
    flags: (0x0010) ACC_FINAL

  java.util.List<com.sun.tools.jdeprscan.DeprData> deprList;
    descriptor: Ljava/util/List;
    flags: (0x0000) 
    Signature: Ljava/util/List<Lcom/sun/tools/jdeprscan/DeprData;>;

  private static volatile int[] $SWITCH_TABLE$com$sun$tools$jdeprscan$Main$LoadMode;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$com$sun$tools$jdeprscan$Main$ScanMode;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  boolean doClassNames(java.util.Collection<java.lang.String>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0000) 
    Code:
      stack=7, locals=6, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.util.Collection classNames
         0: .line 135
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.verbose:Z
            ifeq 4
         1: .line 136
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            ldc "List of classes to process:"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         2: .line 137
            aload 1 /* classNames */
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/io/PrintStream;)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/io/PrintStream.println(Ljava/lang/String;)V (5)
                  (Ljava/lang/String;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
         3: .line 138
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            ldc "End of class list."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 142
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.fm:Ljavax/tools/StandardJavaFileManager;
            instanceof com.sun.tools.javac.file.JavacFileManager
            ifeq 6
         5: .line 143
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.fm:Ljavax/tools/StandardJavaFileManager;
            checkcast com.sun.tools.javac.file.JavacFileManager
            iconst_0
            invokevirtual com.sun.tools.javac.file.JavacFileManager.setSymbolFileEnabled:(Z)V
         6: .line 146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.fm:Ljavax/tools/StandardJavaFileManager;
            getstatic javax.tools.StandardLocation.CLASS_PATH:Ljavax/tools/StandardLocation;
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.classPath:Ljava/util/List;
            invokeinterface javax.tools.StandardJavaFileManager.setLocation:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/Iterable;)V
         7: .line 147
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.bootClassPath:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 9
         8: .line 148
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.fm:Ljavax/tools/StandardJavaFileManager;
            getstatic javax.tools.StandardLocation.PLATFORM_CLASS_PATH:Ljavax/tools/StandardLocation;
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.bootClassPath:Ljava/util/List;
            invokeinterface javax.tools.StandardJavaFileManager.setLocation:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/Iterable;)V
         9: .line 151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.systemModules:Ljava/util/List;
            invokeinterface java.util.List.isEmpty:()Z
            ifne 11
        10: .line 152
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.fm:Ljavax/tools/StandardJavaFileManager;
            getstatic javax.tools.StandardLocation.SYSTEM_MODULES:Ljavax/tools/StandardLocation;
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.systemModules:Ljava/util/List;
            invokeinterface javax.tools.StandardJavaFileManager.setLocation:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/Iterable;)V
        11: .line 155
      StackMap locals:
      StackMap stack:
            new com.sun.tools.jdeprscan.LoadProc
            dup
            invokespecial com.sun.tools.jdeprscan.LoadProc.<init>:()V
            astore 3 /* proc */
        start local 3 // com.sun.tools.jdeprscan.LoadProc proc
        12: .line 157
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.compiler:Ljavax/tools/JavaCompiler;
            aconst_null
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.fm:Ljavax/tools/StandardJavaFileManager;
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            aload 1 /* classNames */
            aconst_null
            invokeinterface javax.tools.JavaCompiler.getTask:(Ljava/io/Writer;Ljavax/tools/JavaFileManager;Ljavax/tools/DiagnosticListener;Ljava/lang/Iterable;Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljavax/tools/JavaCompiler$CompilationTask;
        13: .line 156
            astore 4 /* task */
        start local 4 // javax.tools.JavaCompiler$CompilationTask task
        14: .line 158
            aload 4 /* task */
            aload 3 /* proc */
            invokestatic java.util.List.of:(Ljava/lang/Object;)Ljava/util/List;
            invokeinterface javax.tools.JavaCompiler$CompilationTask.setProcessors:(Ljava/lang/Iterable;)V
        15: .line 159
            aload 4 /* task */
            invokeinterface javax.tools.JavaCompiler$CompilationTask.call:()Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            istore 5 /* r */
        start local 5 // boolean r
        16: .line 160
            iload 5 /* r */
            ifeq 24
        17: .line 161
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.forRemoval:Z
            ifeq 23
        18: .line 162
            aload 0 /* this */
            aload 3 /* proc */
            invokevirtual com.sun.tools.jdeprscan.LoadProc.getDeprecations:()Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
        19: .line 163
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/DeprData.isForRemoval()Z (5)
                  (Lcom/sun/tools/jdeprscan/DeprData;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        20: .line 164
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
        21: .line 162
            putfield com.sun.tools.jdeprscan.Main.deprList:Ljava/util/List;
        22: .line 165
            goto 24
        23: .line 166
      StackMap locals: com.sun.tools.jdeprscan.Main java.util.Collection top com.sun.tools.jdeprscan.LoadProc javax.tools.JavaCompiler$CompilationTask int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* proc */
            invokevirtual com.sun.tools.jdeprscan.LoadProc.getDeprecations:()Ljava/util/List;
            putfield com.sun.tools.jdeprscan.Main.deprList:Ljava/util/List;
        24: .line 169
      StackMap locals:
      StackMap stack:
            iload 5 /* r */
            ireturn
        end local 5 // boolean r
        end local 4 // javax.tools.JavaCompiler$CompilationTask task
        end local 3 // com.sun.tools.jdeprscan.LoadProc proc
        end local 1 // java.util.Collection classNames
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   25     0        this  Lcom/sun/tools/jdeprscan/Main;
            0   25     1  classNames  Ljava/util/Collection<Ljava/lang/String;>;
           12   25     3        proc  Lcom/sun/tools/jdeprscan/LoadProc;
           14   25     4        task  Ljavax/tools/JavaCompiler$CompilationTask;
           16   25     5           r  Z
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/util/Collection<Ljava/lang/String;>;)Z
    MethodParameters:
            Name  Flags
      classNames  

  boolean doFileNames(java.util.stream.Stream<java.lang.String>);
    descriptor: (Ljava/util/stream/Stream;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.util.stream.Stream filenames
         0: .line 182
            aload 0 /* this */
         1: .line 183
            aload 1 /* filenames */
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/Main.lambda$2(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         2: .line 184
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/Main.lambda$3(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         3: .line 185
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/Main.lambda$4(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         4: .line 186
            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;
                  com/sun/tools/jdeprscan/Main.lambda$5(Ljava/lang/String;)Ljava/lang/String; (6)
                  (Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         5: .line 187
            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;
                  com/sun/tools/jdeprscan/Main.lambda$6(Ljava/lang/String;)Ljava/lang/String; (6)
                  (Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         6: .line 188
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Collection
         7: .line 182
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            ireturn
        end local 1 // java.util.stream.Stream filenames
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lcom/sun/tools/jdeprscan/Main;
            0    8     1  filenames  Ljava/util/stream/Stream<Ljava/lang/String;>;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/util/stream/Stream<Ljava/lang/String;>;)Z
    MethodParameters:
           Name  Flags
      filenames  

  java.lang.String convertModularFileName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.lang.String filename
         0: .line 201
            aload 1 /* filename */
            bipush 47
            invokevirtual java.lang.String.indexOf:(I)I
            istore 2 /* slash */
        start local 2 // int slash
         1: .line 202
            new java.lang.StringBuilder
            dup
            aload 1 /* filename */
            iconst_0
            iload 2 /* slash */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 203
            ldc "/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 204
            aload 1 /* filename */
            iload 2 /* slash */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            bipush 47
            bipush 46
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 202
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int slash
        end local 1 // java.lang.String filename
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/sun/tools/jdeprscan/Main;
            0    5     1  filename  Ljava/lang/String;
            1    5     2     slash  I
    MethodParameters:
          Name  Flags
      filename  

  boolean doModularFileNames(java.util.stream.Stream<java.lang.String>);
    descriptor: (Ljava/util/stream/Stream;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.util.stream.Stream filenames
         0: .line 219
            aload 0 /* this */
         1: .line 220
            aload 1 /* filenames */
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/Main.lambda$7(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         2: .line 221
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/Main.lambda$8(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         3: .line 222
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/Main.lambda$9(Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         4: .line 223
            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;
                  com/sun/tools/jdeprscan/Main.lambda$10(Ljava/lang/String;)Ljava/lang/String; (6)
                  (Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         5: .line 224
            aload 0 /* this */
            invokedynamic apply(Lcom/sun/tools/jdeprscan/Main;)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;
                  com/sun/tools/jdeprscan/Main.convertModularFileName(Ljava/lang/String;)Ljava/lang/String; (5)
                  (Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         6: .line 225
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Collection
         7: .line 219
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            ireturn
        end local 1 // java.util.stream.Stream filenames
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lcom/sun/tools/jdeprscan/Main;
            0    8     1  filenames  Ljava/util/stream/Stream<Ljava/lang/String;>;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/util/stream/Stream<Ljava/lang/String;>;)Z
    MethodParameters:
           Name  Flags
      filenames  

  boolean processDirectory(java.lang.String, java.util.Collection<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Collection;)Z
    flags: (0x0000) 
    Code:
      stack=6, locals=9, args_size=3
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.lang.String dirname
        start local 2 // java.util.Collection classNames
         0: .line 239
            aload 1 /* dirname */
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifne 3
         1: .line 240
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.err:Ljava/io/PrintStream;
            ldc "%s: not a directory%n"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* dirname */
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
         2: .line 241
            iconst_0
            ireturn
         3: .line 244
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.classPath:Ljava/util/List;
            iconst_0
            new java.io.File
            dup
            aload 1 /* dirname */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         4: .line 246
            aload 2 /* classNames */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 22
         5: .line 247
            aload 1 /* dirname */
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            astore 3 /* base */
        start local 3 // java.nio.file.Path base
         6: .line 248
            aload 3 /* base */
            invokeinterface java.nio.file.Path.getNameCount:()I
            istore 4 /* baseCount */
        start local 4 // int baseCount
         7: .line 249
            aconst_null
            astore 5
            aconst_null
            astore 6
         8: aload 3 /* base */
            iconst_0
            anewarray java.nio.file.FileVisitOption
            invokestatic java.nio.file.Files.walk:(Ljava/nio/file/Path;[Ljava/nio/file/FileVisitOption;)Ljava/util/stream/Stream;
            astore 7 /* paths */
        start local 7 // java.util.stream.Stream paths
         9: .line 251
            aload 7 /* paths */
            iload 4 /* baseCount */
            invokedynamic test(I)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/Main.lambda$12(ILjava/nio/file/Path;)Z (6)
                  (Ljava/nio/file/Path;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
        10: .line 252
            iload 4 /* baseCount */
            invokedynamic apply(I)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;
                  com/sun/tools/jdeprscan/Main.lambda$13(ILjava/nio/file/Path;)Ljava/nio/file/Path; (6)
                  (Ljava/nio/file/Path;)Ljava/nio/file/Path;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        11: .line 253
            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/nio/file/Path.toString()Ljava/lang/String; (9 itf)
                  (Ljava/nio/file/Path;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        12: .line 250
            astore 8 /* files */
        start local 8 // java.util.stream.Stream files
        13: .line 254
            aload 0 /* this */
            aload 8 /* files */
            invokevirtual com.sun.tools.jdeprscan.Main.doFileNames:(Ljava/util/stream/Stream;)Z
        14: .line 255
            aload 7 /* paths */
            ifnull 15
            aload 7 /* paths */
            invokeinterface java.util.stream.Stream.close:()V
        15: .line 254
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String java.util.Collection java.nio.file.Path int java.lang.Throwable java.lang.Throwable java.util.stream.Stream java.util.stream.Stream
      StackMap stack: int
            ireturn
        end local 8 // java.util.stream.Stream files
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String java.util.Collection java.nio.file.Path int java.lang.Throwable java.lang.Throwable java.util.stream.Stream
      StackMap stack: java.lang.Throwable
        16: astore 5
        17: .line 255
            aload 7 /* paths */
            ifnull 18
            aload 7 /* paths */
            invokeinterface java.util.stream.Stream.close:()V
        end local 7 // java.util.stream.Stream paths
      StackMap locals:
      StackMap stack:
        18: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        19: astore 6
            aload 5
            ifnonnull 20
            aload 6
            astore 5
            goto 21
      StackMap locals:
      StackMap stack:
        20: aload 5
            aload 6
            if_acmpeq 21
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        21: aload 5
            athrow
        end local 4 // int baseCount
        end local 3 // java.nio.file.Path base
        22: .line 257
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String java.util.Collection
      StackMap stack:
            aload 0 /* this */
            aload 2 /* classNames */
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            ireturn
        end local 2 // java.util.Collection classNames
        end local 1 // java.lang.String dirname
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   23     0        this  Lcom/sun/tools/jdeprscan/Main;
            0   23     1     dirname  Ljava/lang/String;
            0   23     2  classNames  Ljava/util/Collection<Ljava/lang/String;>;
            6   22     3        base  Ljava/nio/file/Path;
            7   22     4   baseCount  I
            9   18     7       paths  Ljava/util/stream/Stream<Ljava/nio/file/Path;>;
           13   16     8       files  Ljava/util/stream/Stream<Ljava/lang/String;>;
      Exception table:
        from    to  target  type
           9    14      16  any
           8    15      19  any
          16    19      19  any
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;)Z
    MethodParameters:
            Name  Flags
      dirname     
      classNames  

  boolean doJarFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.lang.String jarname
         0: .line 269
            aconst_null
            astore 2
            aconst_null
            astore 3
         1: new java.util.jar.JarFile
            dup
            aload 1 /* jarname */
            invokespecial java.util.jar.JarFile.<init>:(Ljava/lang/String;)V
            astore 4 /* jf */
        start local 4 // java.util.jar.JarFile jf
         2: .line 271
            aload 4 /* jf */
            invokevirtual java.util.jar.JarFile.stream:()Ljava/util/stream/Stream;
         3: .line 272
            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/zip/ZipEntry.getName()Ljava/lang/String; (5)
                  (Ljava/util/jar/JarEntry;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         4: .line 270
            astore 5 /* files */
        start local 5 // java.util.stream.Stream files
         5: .line 273
            aload 0 /* this */
            aload 5 /* files */
            invokevirtual com.sun.tools.jdeprscan.Main.doFileNames:(Ljava/util/stream/Stream;)Z
         6: .line 274
            aload 4 /* jf */
            ifnull 7
            aload 4 /* jf */
            invokevirtual java.util.jar.JarFile.close:()V
         7: .line 273
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String java.lang.Throwable java.lang.Throwable java.util.jar.JarFile java.util.stream.Stream
      StackMap stack: int
            ireturn
        end local 5 // java.util.stream.Stream files
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String java.lang.Throwable java.lang.Throwable java.util.jar.JarFile
      StackMap stack: java.lang.Throwable
         8: astore 2
         9: .line 274
            aload 4 /* jf */
            ifnull 10
            aload 4 /* jf */
            invokevirtual java.util.jar.JarFile.close:()V
        end local 4 // java.util.jar.JarFile jf
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 3
            aload 2
            ifnonnull 12
            aload 3
            astore 2
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2
            aload 3
            if_acmpeq 13
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 2
            athrow
        end local 1 // java.lang.String jarname
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lcom/sun/tools/jdeprscan/Main;
            0   14     1  jarname  Ljava/lang/String;
            2   10     4       jf  Ljava/util/jar/JarFile;
            5    8     5    files  Ljava/util/stream/Stream<Ljava/lang/String;>;
      Exception table:
        from    to  target  type
           2     6       8  any
           1     7      11  any
           8    11      11  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      jarname  

  boolean processJarFile(java.lang.String, java.util.Collection<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Collection;)Z
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.lang.String jarname
        start local 2 // java.util.Collection classNames
         0: .line 287
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.classPath:Ljava/util/List;
            iconst_0
            new java.io.File
            dup
            aload 1 /* jarname */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         1: .line 289
            aload 2 /* classNames */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 3
         2: .line 290
            aload 0 /* this */
            aload 1 /* jarname */
            invokevirtual com.sun.tools.jdeprscan.Main.doJarFile:(Ljava/lang/String;)Z
            ireturn
         3: .line 292
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* classNames */
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            ireturn
        end local 2 // java.util.Collection classNames
        end local 1 // java.lang.String jarname
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lcom/sun/tools/jdeprscan/Main;
            0    4     1     jarname  Ljava/lang/String;
            0    4     2  classNames  Ljava/util/Collection<Ljava/lang/String;>;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;)Z
    MethodParameters:
            Name  Flags
      jarname     
      classNames  

  boolean processOldJdk(java.lang.String, java.util.Collection<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Collection;)Z
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.lang.String jdkHome
        start local 2 // java.util.Collection classNames
         0: .line 306
            new java.lang.StringBuilder
            dup
            aload 1 /* jdkHome */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/jre/lib/rt.jar"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* RTJAR */
        start local 3 // java.lang.String RTJAR
         1: .line 307
            new java.lang.StringBuilder
            dup
            aload 1 /* jdkHome */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "/jre/lib/charsets.jar"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* CSJAR */
        start local 4 // java.lang.String CSJAR
         2: .line 309
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.bootClassPath:Ljava/util/List;
            iconst_0
            new java.io.File
            dup
            aload 3 /* RTJAR */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         3: .line 310
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.bootClassPath:Ljava/util/List;
            iconst_1
            new java.io.File
            dup
            aload 4 /* CSJAR */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
         4: .line 311
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            ldc "-source"
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 312
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            ldc "8"
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         6: .line 314
            aload 2 /* classNames */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 8
         7: .line 315
            aload 0 /* this */
            aload 3 /* RTJAR */
            invokevirtual com.sun.tools.jdeprscan.Main.doJarFile:(Ljava/lang/String;)Z
            ireturn
         8: .line 317
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 2 /* classNames */
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            ireturn
        end local 4 // java.lang.String CSJAR
        end local 3 // java.lang.String RTJAR
        end local 2 // java.util.Collection classNames
        end local 1 // java.lang.String jdkHome
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lcom/sun/tools/jdeprscan/Main;
            0    9     1     jdkHome  Ljava/lang/String;
            0    9     2  classNames  Ljava/util/Collection<Ljava/lang/String;>;
            1    9     3       RTJAR  Ljava/lang/String;
            2    9     4       CSJAR  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;)Z
    MethodParameters:
            Name  Flags
      jdkHome     
      classNames  

  boolean processJdk9(java.lang.String, java.util.Collection<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Collection;)Z
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.lang.String jdkHome
        start local 2 // java.util.Collection classes
         0: .line 325
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.systemModules:Ljava/util/List;
            new java.io.File
            dup
            aload 1 /* jdkHome */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 326
            aload 0 /* this */
            aload 2 /* classes */
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            ireturn
        end local 2 // java.util.Collection classes
        end local 1 // java.lang.String jdkHome
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/sun/tools/jdeprscan/Main;
            0    2     1  jdkHome  Ljava/lang/String;
            0    2     2  classes  Ljava/util/Collection<Ljava/lang/String;>;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;)Z
    MethodParameters:
         Name  Flags
      jdkHome  
      classes  

  boolean processSelf(java.util.Collection<java.lang.String>);
    descriptor: (Ljava/util/Collection;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.util.Collection classes
         0: .line 337
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            ldc "--add-modules"
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 338
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            ldc "java.se"
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 340
            aload 1 /* classes */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 21
         3: .line 341
            ldc "jrt:/"
            invokestatic java.net.URI.create:(Ljava/lang/String;)Ljava/net/URI;
            invokestatic java.nio.file.FileSystems.getFileSystem:(Ljava/net/URI;)Ljava/nio/file/FileSystem;
         4: .line 342
            ldc "/modules"
            iconst_0
            anewarray java.lang.String
            invokevirtual java.nio.file.FileSystem.getPath:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
         5: .line 341
            astore 2 /* modules */
        start local 2 // java.nio.file.Path modules
         6: .line 345
            aconst_null
            astore 3
            aconst_null
            astore 4
         7: aload 2 /* modules */
            iconst_0
            anewarray java.nio.file.FileVisitOption
            invokestatic java.nio.file.Files.walk:(Ljava/nio/file/Path;[Ljava/nio/file/FileVisitOption;)Ljava/util/stream/Stream;
            astore 5 /* paths */
        start local 5 // java.util.stream.Stream paths
         8: .line 347
            aload 5 /* paths */
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/Main.lambda$16(Ljava/nio/file/Path;)Z (6)
                  (Ljava/nio/file/Path;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         9: .line 348
            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;
                  com/sun/tools/jdeprscan/Main.lambda$17(Ljava/nio/file/Path;)Ljava/nio/file/Path; (6)
                  (Ljava/nio/file/Path;)Ljava/nio/file/Path;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        10: .line 349
            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/nio/file/Path.toString()Ljava/lang/String; (9 itf)
                  (Ljava/nio/file/Path;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        11: .line 346
            astore 6 /* files */
        start local 6 // java.util.stream.Stream files
        12: .line 350
            aload 0 /* this */
            aload 6 /* files */
            invokevirtual com.sun.tools.jdeprscan.Main.doModularFileNames:(Ljava/util/stream/Stream;)Z
        13: .line 351
            aload 5 /* paths */
            ifnull 14
            aload 5 /* paths */
            invokeinterface java.util.stream.Stream.close:()V
        14: .line 350
      StackMap locals: com.sun.tools.jdeprscan.Main java.util.Collection java.nio.file.Path java.lang.Throwable java.lang.Throwable java.util.stream.Stream java.util.stream.Stream
      StackMap stack: int
            ireturn
        end local 6 // java.util.stream.Stream files
      StackMap locals: com.sun.tools.jdeprscan.Main java.util.Collection java.nio.file.Path java.lang.Throwable java.lang.Throwable java.util.stream.Stream
      StackMap stack: java.lang.Throwable
        15: astore 3
        16: .line 351
            aload 5 /* paths */
            ifnull 17
            aload 5 /* paths */
            invokeinterface java.util.stream.Stream.close:()V
        end local 5 // java.util.stream.Stream paths
      StackMap locals:
      StackMap stack:
        17: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        18: astore 4
            aload 3
            ifnonnull 19
            aload 4
            astore 3
            goto 20
      StackMap locals:
      StackMap stack:
        19: aload 3
            aload 4
            if_acmpeq 20
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        20: aload 3
            athrow
        end local 2 // java.nio.file.Path modules
        21: .line 353
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* classes */
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            ireturn
        end local 1 // java.util.Collection classes
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   22     0     this  Lcom/sun/tools/jdeprscan/Main;
            0   22     1  classes  Ljava/util/Collection<Ljava/lang/String;>;
            6   21     2  modules  Ljava/nio/file/Path;
            8   17     5    paths  Ljava/util/stream/Stream<Ljava/nio/file/Path;>;
           12   15     6    files  Ljava/util/stream/Stream<Ljava/lang/String;>;
      Exception table:
        from    to  target  type
           8    13      15  any
           7    14      18  any
          15    18      18  any
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/util/Collection<Ljava/lang/String;>;)Z
    MethodParameters:
         Name  Flags
      classes  

  boolean processRelease(java.lang.String, java.util.Collection<java.lang.String>);
    descriptor: (Ljava/lang/String;Ljava/util/Collection;)Z
    flags: (0x0000) 
    Code:
      stack=8, locals=10, args_size=3
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.lang.String release
        start local 2 // java.util.Collection classes
         0: .line 370
            aload 1 /* release */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 5 /* releaseNum */
        start local 5 // int releaseNum
         1: .line 372
            iload 5 /* releaseNum */
            bipush 9
            if_icmplt 2
            iconst_1
            goto 3
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String java.util.Collection top top int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* hasModules */
        start local 3 // boolean hasModules
         4: .line 373
            iload 3 /* hasModules */
            ifeq 5
            iload 5 /* releaseNum */
            bipush 10
            if_icmpgt 5
            iconst_1
            goto 6
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String java.util.Collection int top int
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 4 /* hasJavaSE_EE */
        end local 5 // int releaseNum
        start local 4 // boolean hasJavaSE_EE
         7: .line 374
            goto 11
        end local 4 // boolean hasJavaSE_EE
        end local 3 // boolean hasModules
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String java.util.Collection
      StackMap stack: java.lang.NumberFormatException
         8: pop
         9: .line 375
            iconst_1
            istore 3 /* hasModules */
        start local 3 // boolean hasModules
        10: .line 376
            iconst_0
            istore 4 /* hasJavaSE_EE */
        start local 4 // boolean hasJavaSE_EE
        11: .line 379
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            ldc "--release"
            aload 1 /* release */
            invokestatic java.util.List.of:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        12: .line 381
            iload 3 /* hasModules */
            ifeq 37
        13: .line 382
            iload 4 /* hasJavaSE_EE */
            ifeq 14
            ldc "java.se"
            ldc "java.se.ee"
            invokestatic java.util.List.of:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List;
            goto 15
        14: .line 383
      StackMap locals:
      StackMap stack:
            ldc "java.se"
            invokestatic java.util.List.of:(Ljava/lang/Object;)Ljava/util/List;
        15: .line 382
      StackMap locals:
      StackMap stack: java.util.List
            astore 5 /* rootMods */
        start local 5 // java.util.List rootMods
        16: .line 384
            new com.sun.tools.jdeprscan.TraverseProc
            dup
            aload 5 /* rootMods */
            invokespecial com.sun.tools.jdeprscan.TraverseProc.<init>:(Ljava/util/List;)V
            astore 6 /* proc */
        start local 6 // com.sun.tools.jdeprscan.TraverseProc proc
        17: .line 386
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.compiler:Ljavax/tools/JavaCompiler;
            aconst_null
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.fm:Ljavax/tools/StandardJavaFileManager;
            aload 0 /* this */
        18: .line 388
            ldc "--add-modules"
            ldc ","
            aload 5 /* rootMods */
            invokestatic java.lang.String.join:(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
        19: .line 389
            ldc "--release"
            aload 1 /* release */
        20: .line 388
            invokestatic java.util.List.of:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List;
        21: .line 391
            ldc "java.lang.Object"
            invokestatic java.util.List.of:(Ljava/lang/Object;)Ljava/util/List;
        22: .line 392
            aconst_null
        23: .line 386
            invokeinterface javax.tools.JavaCompiler.getTask:(Ljava/io/Writer;Ljavax/tools/JavaFileManager;Ljavax/tools/DiagnosticListener;Ljava/lang/Iterable;Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljavax/tools/JavaCompiler$CompilationTask;
        24: .line 385
            astore 7 /* task */
        start local 7 // javax.tools.JavaCompiler$CompilationTask task
        25: .line 393
            aload 7 /* task */
            aload 6 /* proc */
            invokestatic java.util.List.of:(Ljava/lang/Object;)Ljava/util/List;
            invokeinterface javax.tools.JavaCompiler$CompilationTask.setProcessors:(Ljava/lang/Iterable;)V
        26: .line 394
            aload 7 /* task */
            invokeinterface javax.tools.JavaCompiler$CompilationTask.call:()Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 28
        27: .line 395
            iconst_0
            ireturn
        28: .line 397
      StackMap locals: java.util.List com.sun.tools.jdeprscan.TraverseProc javax.tools.JavaCompiler$CompilationTask
      StackMap stack:
            aload 6 /* proc */
            invokevirtual com.sun.tools.jdeprscan.TraverseProc.getPublicTypes:()Ljava/util/Map;
            astore 8 /* types */
        start local 8 // java.util.Map types
        29: .line 398
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            ldc "--add-modules"
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        30: .line 399
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            ldc ","
            aload 5 /* rootMods */
            invokestatic java.lang.String.join:(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        31: .line 400
            aload 0 /* this */
        32: .line 401
            aload 8 /* types */
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
        33: .line 402
            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/List;)Ljava/util/stream/Stream;
            invokeinterface java.util.stream.Stream.flatMap:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        34: .line 403
            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/lang/Object.toString()Ljava/lang/String; (5)
                  (Ljavax/lang/model/element/TypeElement;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        35: .line 404
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Collection
        36: .line 400
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            ireturn
        end local 8 // java.util.Map types
        end local 7 // javax.tools.JavaCompiler$CompilationTask task
        end local 6 // com.sun.tools.jdeprscan.TraverseProc proc
        end local 5 // java.util.List rootMods
        37: .line 406
      StackMap locals:
      StackMap stack:
            new com.sun.tools.javac.platform.JDKPlatformProvider
            dup
            invokespecial com.sun.tools.javac.platform.JDKPlatformProvider.<init>:()V
            astore 5 /* pp */
        start local 5 // com.sun.tools.javac.platform.JDKPlatformProvider pp
        38: .line 407
            aload 5 /* pp */
            invokevirtual com.sun.tools.javac.platform.JDKPlatformProvider.getSupportedPlatformNames:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.spliterator:()Ljava/util/Spliterator;
        39: .line 408
            iconst_0
        40: .line 407
            invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
        41: .line 409
            aload 1 /* release */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/sun/tools/jdeprscan/Main.lambda$21(Ljava/lang/String;Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokeinterface java.util.stream.Stream.noneMatch:(Ljava/util/function/Predicate;)Z
            ifeq 43
        42: .line 410
            iconst_0
            ireturn
        43: .line 412
      StackMap locals: com.sun.tools.javac.platform.JDKPlatformProvider
      StackMap stack:
            aload 5 /* pp */
            aload 1 /* release */
            ldc ""
            invokevirtual com.sun.tools.javac.platform.JDKPlatformProvider.getPlatform:(Ljava/lang/String;Ljava/lang/String;)Lcom/sun/tools/javac/platform/PlatformDescription;
            invokeinterface com.sun.tools.javac.platform.PlatformDescription.getFileManager:()Ljavax/tools/JavaFileManager;
            astore 6 /* fm */
        start local 6 // javax.tools.JavaFileManager fm
        44: .line 413
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* classNames */
        start local 7 // java.util.List classNames
        45: .line 414
            aload 6 /* fm */
            getstatic javax.tools.StandardLocation.PLATFORM_CLASS_PATH:Ljavax/tools/StandardLocation;
        46: .line 415
            ldc ""
        47: .line 416
            getstatic javax.tools.JavaFileObject$Kind.CLASS:Ljavax/tools/JavaFileObject$Kind;
            invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;)Ljava/util/EnumSet;
        48: .line 417
            iconst_1
        49: .line 414
            invokeinterface javax.tools.JavaFileManager.list:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/String;Ljava/util/Set;Z)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 9
            goto 52
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String java.util.Collection int int com.sun.tools.javac.platform.JDKPlatformProvider javax.tools.JavaFileManager java.util.List top java.util.Iterator
      StackMap stack:
        50: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.tools.JavaFileObject
            astore 8 /* fo */
        start local 8 // javax.tools.JavaFileObject fo
        51: .line 418
            aload 7 /* classNames */
            aload 6 /* fm */
            getstatic javax.tools.StandardLocation.PLATFORM_CLASS_PATH:Ljavax/tools/StandardLocation;
            aload 8 /* fo */
            invokeinterface javax.tools.JavaFileManager.inferBinaryName:(Ljavax/tools/JavaFileManager$Location;Ljavax/tools/JavaFileObject;)Ljava/lang/String;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // javax.tools.JavaFileObject fo
        52: .line 414
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 50
        53: .line 421
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            ldc "-Xlint:-options"
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        54: .line 423
            aload 0 /* this */
            aload 7 /* classNames */
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            ireturn
        end local 7 // java.util.List classNames
        end local 6 // javax.tools.JavaFileManager fm
        end local 5 // com.sun.tools.javac.platform.JDKPlatformProvider pp
        end local 4 // boolean hasJavaSE_EE
        end local 3 // boolean hasModules
        end local 2 // java.util.Collection classes
        end local 1 // java.lang.String release
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   55     0          this  Lcom/sun/tools/jdeprscan/Main;
            0   55     1       release  Ljava/lang/String;
            0   55     2       classes  Ljava/util/Collection<Ljava/lang/String;>;
            4    8     3    hasModules  Z
           10   55     3    hasModules  Z
            7    8     4  hasJavaSE_EE  Z
           11   55     4  hasJavaSE_EE  Z
            1    7     5    releaseNum  I
           16   37     5      rootMods  Ljava/util/List<Ljava/lang/String;>;
           17   37     6          proc  Lcom/sun/tools/jdeprscan/TraverseProc;
           25   37     7          task  Ljavax/tools/JavaCompiler$CompilationTask;
           29   37     8         types  Ljava/util/Map<Ljavax/lang/model/element/PackageElement;Ljava/util/List<Ljavax/lang/model/element/TypeElement;>;>;
           38   55     5            pp  Lcom/sun/tools/javac/platform/JDKPlatformProvider;
           44   55     6            fm  Ljavax/tools/JavaFileManager;
           45   55     7    classNames  Ljava/util/List<Ljava/lang/String;>;
           51   52     8            fo  Ljavax/tools/JavaFileObject;
      Exception table:
        from    to  target  type
           0     7       8  Class java.lang.NumberFormatException
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/String;Ljava/util/Collection<Ljava/lang/String;>;)Z
    MethodParameters:
         Name  Flags
      release  
      classes  

  void require(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // boolean cond
         0: .line 456
            iload 1 /* cond */
            ifne 2
         1: .line 457
            new com.sun.tools.jdeprscan.Main$UsageException
            dup
            invokespecial com.sun.tools.jdeprscan.Main$UsageException.<init>:()V
            athrow
         2: .line 459
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean cond
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/tools/jdeprscan/Main;
            0    3     1  cond  Z
    Exceptions:
      throws com.sun.tools.jdeprscan.Main$UsageException
    MethodParameters:
      Name  Flags
      cond  

  void <init>(java.io.PrintStream, java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;Ljava/io/PrintStream;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.io.PrintStream out
        start local 2 // java.io.PrintStream err
         0: .line 467
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 99
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.tools.jdeprscan.Main.bootClassPath:Ljava/util/List;
         2: .line 100
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.tools.jdeprscan.Main.classPath:Ljava/util/List;
         3: .line 101
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.tools.jdeprscan.Main.systemModules:Ljava/util/List;
         4: .line 102
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
         5: .line 103
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.tools.jdeprscan.Main.comments:Ljava/util/List;
         6: .line 108
            aload 0 /* this */
            ldc "6"
            ldc "7"
            ldc "8"
            invokestatic java.util.Set.of:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
            putfield com.sun.tools.jdeprscan.Main.releasesWithoutForRemoval:Ljava/util/Set;
         7: .line 109
            aload 0 /* this */
            ldc "9"
            ldc "10"
            ldc "11"
            invokestatic java.util.Set.of:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Set;
            putfield com.sun.tools.jdeprscan.Main.releasesWithForRemoval:Ljava/util/Set;
         8: .line 113
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.releasesWithoutForRemoval:Ljava/util/Set;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            astore 3 /* temp */
        start local 3 // java.util.Set temp
         9: .line 114
            aload 3 /* temp */
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.releasesWithForRemoval:Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
        10: .line 115
            aload 0 /* this */
            aload 3 /* temp */
            iconst_0
            anewarray java.lang.String
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.String[]
            invokestatic java.util.Set.of:([Ljava/lang/Object;)Ljava/util/Set;
            putfield com.sun.tools.jdeprscan.Main.validReleases:Ljava/util/Set;
        end local 3 // java.util.Set temp
        11: .line 118
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.jdeprscan.Main.verbose:Z
        12: .line 119
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.jdeprscan.Main.forRemoval:Z
        13: .line 468
            aload 0 /* this */
            aload 1 /* out */
            putfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
        14: .line 469
            aload 0 /* this */
            aload 2 /* err */
            putfield com.sun.tools.jdeprscan.Main.err:Ljava/io/PrintStream;
        15: .line 470
            aload 0 /* this */
            invokestatic javax.tools.ToolProvider.getSystemJavaCompiler:()Ljavax/tools/JavaCompiler;
            putfield com.sun.tools.jdeprscan.Main.compiler:Ljavax/tools/JavaCompiler;
        16: .line 471
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.compiler:Ljavax/tools/JavaCompiler;
            aload 0 /* this */
            aconst_null
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            invokeinterface javax.tools.JavaCompiler.getStandardFileManager:(Ljavax/tools/DiagnosticListener;Ljava/util/Locale;Ljava/nio/charset/Charset;)Ljavax/tools/StandardJavaFileManager;
            putfield com.sun.tools.jdeprscan.Main.fm:Ljavax/tools/StandardJavaFileManager;
        17: .line 472
            return
        end local 2 // java.io.PrintStream err
        end local 1 // java.io.PrintStream out
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   18     0  this  Lcom/sun/tools/jdeprscan/Main;
            0   18     1   out  Ljava/io/PrintStream;
            0   18     2   err  Ljava/io/PrintStream;
            9   11     3  temp  Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
      Name  Flags
      out   
      err   

  public void report(javax.tools.Diagnostic<? extends javax.tools.JavaFileObject>);
    descriptor: (Ljavax/tools/Diagnostic;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // javax.tools.Diagnostic diagnostic
         0: .line 483
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.err:Ljava/io/PrintStream;
            aload 1 /* diagnostic */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
         1: .line 484
            return
        end local 1 // javax.tools.Diagnostic diagnostic
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/sun/tools/jdeprscan/Main;
            0    2     1  diagnostic  Ljavax/tools/Diagnostic<+Ljavax/tools/JavaFileObject;>;
    Signature: (Ljavax/tools/Diagnostic<+Ljavax/tools/JavaFileObject;>;)V
    MethodParameters:
            Name  Flags
      diagnostic  

  boolean run(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Z
    flags: (0x0080) ACC_VARARGS
    Code:
      stack=7, locals=18, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.lang.String[] argArray
         0: .line 493
            new java.util.ArrayDeque
            dup
            aload 1 /* argArray */
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokespecial java.util.ArrayDeque.<init>:(Ljava/util/Collection;)V
            astore 2 /* args */
        start local 2 // java.util.Queue args
         1: .line 494
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.RELEASE:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            astore 3 /* loadMode */
        start local 3 // com.sun.tools.jdeprscan.Main$LoadMode loadMode
         2: .line 495
            getstatic com.sun.tools.jdeprscan.Main$ScanMode.ARGS:Lcom/sun/tools/jdeprscan/Main$ScanMode;
            astore 4 /* scanMode */
        start local 4 // com.sun.tools.jdeprscan.Main$ScanMode scanMode
         3: .line 496
            aconst_null
            astore 5 /* dir */
        start local 5 // java.lang.String dir
         4: .line 497
            aconst_null
            astore 6 /* jar */
        start local 6 // java.lang.String jar
         5: .line 498
            aconst_null
            astore 7 /* jdkHome */
        start local 7 // java.lang.String jdkHome
         6: .line 499
            ldc "11"
            astore 8 /* release */
        start local 8 // java.lang.String release
         7: .line 500
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* loadClasses */
        start local 9 // java.util.List loadClasses
         8: .line 501
            aconst_null
            astore 10 /* csvFile */
        start local 10 // java.lang.String csvFile
         9: .line 504
            goto 95
        10: .line 505
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String
      StackMap stack:
            aload 2 /* args */
            invokeinterface java.util.Queue.element:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 11 /* a */
        start local 11 // java.lang.String a
        11: .line 506
            aload 11 /* a */
            ldc "-"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 96
        12: .line 507
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            pop
        13: .line 508
            aload 11 /* a */
            dup
            astore 12
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 23
          -2104340649: 14
          -2104340002: 15
          -2104334484: 16
          -2049126688: 17
          -1818390937: 18
          -1639226887: 19
          -1313425094: 20
          -1248981348: 21
           -809856841: 22
           -809587685: 23
                 1458: 24
                 1499: 25
                 1503: 26
                 1513: 27
            274457928: 28
            343862062: 29
            658007689: 30
           1333069025: 31
           1333192254: 32
           1737088994: 33
           1737589560: 34
           1783258080: 35
           1918731514: 36
              default: 94
          }
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
        14: aload 12
            ldc "--Xload-csv"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 72
            goto 94
      StackMap locals:
      StackMap stack:
        15: aload 12
            ldc "--Xload-dir"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 75
            goto 94
      StackMap locals:
      StackMap stack:
        16: aload 12
            ldc "--Xload-jar"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 78
            goto 94
      StackMap locals:
      StackMap stack:
        17: aload 12
            ldc "--Xcompiler-arg"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 63
            goto 94
      StackMap locals:
      StackMap stack:
        18: aload 12
            ldc "--release"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 55
            goto 94
      StackMap locals:
      StackMap stack:
        19: aload 12
            ldc "--Xhelp"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 67
            goto 94
      StackMap locals:
      StackMap stack:
        20: aload 12
            ldc "--full-version"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 44
            goto 94
      StackMap locals:
      StackMap stack:
        21: aload 12
            ldc "--Xload-old-jdk"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 84
            goto 94
      StackMap locals:
      StackMap stack:
        22: aload 12
            ldc "--Xload-jdk9"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 81
            goto 94
      StackMap locals:
      StackMap stack:
        23: aload 12
            ldc "--Xload-self"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 87
            goto 94
      StackMap locals:
      StackMap stack:
        24: aload 12
            ldc "-?"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 46
            goto 94
      StackMap locals:
      StackMap stack:
        25: aload 12
            ldc "-h"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 46
            goto 94
      StackMap locals:
      StackMap stack:
        26: aload 12
            ldc "-l"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 50
            goto 94
      StackMap locals:
      StackMap stack:
        27: aload 12
            ldc "-v"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 59
            goto 94
      StackMap locals:
      StackMap stack:
        28: aload 12
            ldc "--for-removal"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 42
            goto 94
      StackMap locals:
      StackMap stack:
        29: aload 12
            ldc "--Xprint-csv"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 89
            goto 94
      StackMap locals:
      StackMap stack:
        30: aload 12
            ldc "--Xload-class"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 69
            goto 94
      StackMap locals:
      StackMap stack:
        31: aload 12
            ldc "--help"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 46
            goto 94
      StackMap locals:
      StackMap stack:
        32: aload 12
            ldc "--list"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 50
            goto 94
      StackMap locals:
      StackMap stack:
        33: aload 12
            ldc "--verbose"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 59
            goto 94
      StackMap locals:
      StackMap stack:
        34: aload 12
            ldc "--version"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 61
            goto 94
      StackMap locals:
      StackMap stack:
        35: aload 12
            ldc "--Xcsv-comment"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 65
            goto 94
      StackMap locals:
      StackMap stack:
        36: aload 12
            ldc "--class-path"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 37
            goto 94
        37: .line 510
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.classPath:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
        38: .line 511
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            getstatic java.io.File.pathSeparator:Ljava/lang/String;
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
        39: .line 512
            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/io/File.<init>(Ljava/lang/String;)V (8)
                  (Ljava/lang/String;)Ljava/io/File;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
        40: .line 513
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.classPath:Ljava/util/List;
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/util/List;)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/List.add(Ljava/lang/Object;)Z (9 itf)
                  (Ljava/io/File;)V
            invokeinterface java.util.stream.Stream.forEachOrdered:(Ljava/util/function/Consumer;)V
        41: .line 514
            goto 95
        42: .line 516
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.jdeprscan.Main.forRemoval:Z
        43: .line 517
            goto 95
        44: .line 519
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            ldc "java.vm.version"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        45: .line 520
            iconst_0
            ireturn
        46: .line 524
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            invokevirtual com.sun.tools.jdeprscan.Main.printHelp:(Ljava/io/PrintStream;)V
        47: .line 525
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            invokevirtual java.io.PrintStream.println:()V
        48: .line 526
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            ldc "main.help"
            iconst_0
            anewarray java.lang.Object
            invokestatic com.sun.tools.jdeprscan.Messages.get:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        49: .line 527
            iconst_1
            ireturn
        50: .line 530
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* scanMode */
            getstatic com.sun.tools.jdeprscan.Main$ScanMode.ARGS:Lcom/sun/tools/jdeprscan/Main$ScanMode;
            if_acmpne 51
            iconst_1
            goto 52
      StackMap locals:
      StackMap stack: com.sun.tools.jdeprscan.Main
        51: iconst_0
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String java.lang.String java.lang.String
      StackMap stack: com.sun.tools.jdeprscan.Main int
        52: invokevirtual com.sun.tools.jdeprscan.Main.require:(Z)V
        53: .line 531
            getstatic com.sun.tools.jdeprscan.Main$ScanMode.LIST:Lcom/sun/tools/jdeprscan/Main$ScanMode;
            astore 4 /* scanMode */
        54: .line 532
            goto 95
        55: .line 534
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.RELEASE:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            astore 3 /* loadMode */
        56: .line 535
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* release */
        57: .line 536
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.validReleases:Ljava/util/Set;
            aload 8 /* release */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifne 95
        58: .line 537
            new com.sun.tools.jdeprscan.Main$UsageException
            dup
            invokespecial com.sun.tools.jdeprscan.Main$UsageException.<init>:()V
            athrow
        59: .line 542
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.jdeprscan.Main.verbose:Z
        60: .line 543
            goto 95
        61: .line 545
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            ldc "java.version"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        62: .line 546
            iconst_0
            ireturn
        63: .line 548
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.options:Ljava/util/List;
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        64: .line 549
            goto 95
        65: .line 551
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.comments:Ljava/util/List;
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        66: .line 552
            goto 95
        67: .line 554
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            ldc "main.xhelp"
            iconst_0
            anewarray java.lang.Object
            invokestatic com.sun.tools.jdeprscan.Messages.get:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        68: .line 555
            iconst_0
            ireturn
        69: .line 557
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.CLASSES:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            astore 3 /* loadMode */
        70: .line 558
            aload 9 /* loadClasses */
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        71: .line 559
            goto 95
        72: .line 561
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.LOAD_CSV:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            astore 3 /* loadMode */
        73: .line 562
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 10 /* csvFile */
        74: .line 563
            goto 95
        75: .line 565
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.DIR:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            astore 3 /* loadMode */
        76: .line 566
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* dir */
        77: .line 567
            goto 95
        78: .line 569
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.JAR:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            astore 3 /* loadMode */
        79: .line 570
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* jar */
        80: .line 571
            goto 95
        81: .line 573
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.JDK9:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            astore 3 /* loadMode */
        82: .line 574
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* jdkHome */
        83: .line 575
            goto 95
        84: .line 577
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.OLD_JDK:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            astore 3 /* loadMode */
        85: .line 578
            aload 2 /* args */
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* jdkHome */
        86: .line 579
            goto 95
        87: .line 581
      StackMap locals:
      StackMap stack:
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.SELF:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            astore 3 /* loadMode */
        88: .line 582
            goto 95
        89: .line 584
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* scanMode */
            getstatic com.sun.tools.jdeprscan.Main$ScanMode.ARGS:Lcom/sun/tools/jdeprscan/Main$ScanMode;
            if_acmpne 90
            iconst_1
            goto 91
      StackMap locals:
      StackMap stack: com.sun.tools.jdeprscan.Main
        90: iconst_0
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String java.lang.String java.lang.String
      StackMap stack: com.sun.tools.jdeprscan.Main int
        91: invokevirtual com.sun.tools.jdeprscan.Main.require:(Z)V
        92: .line 585
            getstatic com.sun.tools.jdeprscan.Main$ScanMode.PRINT_CSV:Lcom/sun/tools/jdeprscan/Main$ScanMode;
            astore 4 /* scanMode */
        93: .line 586
            goto 95
        94: .line 588
      StackMap locals:
      StackMap stack:
            new com.sun.tools.jdeprscan.Main$UsageException
            dup
            invokespecial com.sun.tools.jdeprscan.Main$UsageException.<init>:()V
            athrow
        end local 11 // java.lang.String a
        95: .line 504
      StackMap locals:
      StackMap stack:
            aload 2 /* args */
            invokeinterface java.util.Queue.isEmpty:()Z
            ifeq 10
        96: .line 595
      StackMap locals:
      StackMap stack:
            aload 4 /* scanMode */
            getstatic com.sun.tools.jdeprscan.Main$ScanMode.ARGS:Lcom/sun/tools/jdeprscan/Main$ScanMode;
            if_acmpne 97
            iconst_1
            goto 98
      StackMap locals:
      StackMap stack:
        97: iconst_0
      StackMap locals:
      StackMap stack: int
        98: aload 2 /* args */
            invokeinterface java.util.Queue.isEmpty:()Z
            if_icmpne 100
        99: .line 596
            new com.sun.tools.jdeprscan.Main$UsageException
            dup
            invokespecial com.sun.tools.jdeprscan.Main$UsageException.<init>:()V
            athrow
       100: .line 599
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.forRemoval:Z
            ifeq 103
            aload 3 /* loadMode */
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.RELEASE:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            if_acmpne 103
       101: .line 600
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.releasesWithoutForRemoval:Ljava/util/Set;
            aload 8 /* release */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 103
       102: .line 601
            new com.sun.tools.jdeprscan.Main$UsageException
            dup
            invokespecial com.sun.tools.jdeprscan.Main$UsageException.<init>:()V
            athrow
       103: .line 604
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 11 /* success */
        start local 11 // boolean success
       104: .line 606
            invokestatic com.sun.tools.jdeprscan.Main.$SWITCH_TABLE$com$sun$tools$jdeprscan$Main$LoadMode:()[I
            aload 3 /* loadMode */
            invokevirtual com.sun.tools.jdeprscan.Main$LoadMode.ordinal:()I
            iaload
            tableswitch { // 1 - 8
                    1: 105
                    2: 107
                    3: 109
                    4: 119
                    5: 111
                    6: 123
                    7: 121
                    8: 116
              default: 125
          }
       105: .line 608
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 9 /* loadClasses */
            invokevirtual com.sun.tools.jdeprscan.Main.doClassNames:(Ljava/util/Collection;)Z
            istore 11 /* success */
       106: .line 609
            goto 126
       107: .line 611
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* dir */
            aload 9 /* loadClasses */
            invokevirtual com.sun.tools.jdeprscan.Main.processDirectory:(Ljava/lang/String;Ljava/util/Collection;)Z
            istore 11 /* success */
       108: .line 612
            goto 126
       109: .line 614
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* jar */
            aload 9 /* loadClasses */
            invokevirtual com.sun.tools.jdeprscan.Main.processJarFile:(Ljava/lang/String;Ljava/util/Collection;)Z
            istore 11 /* success */
       110: .line 615
            goto 126
       111: .line 617
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* args */
            invokeinterface java.util.Queue.isEmpty:()Z
            ifeq 112
            iconst_0
            goto 113
      StackMap locals:
      StackMap stack: com.sun.tools.jdeprscan.Main
       112: iconst_1
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int
      StackMap stack: com.sun.tools.jdeprscan.Main int
       113: invokevirtual com.sun.tools.jdeprscan.Main.require:(Z)V
       114: .line 618
            aload 0 /* this */
            aload 7 /* jdkHome */
            aload 9 /* loadClasses */
            invokevirtual com.sun.tools.jdeprscan.Main.processJdk9:(Ljava/lang/String;Ljava/util/Collection;)Z
            istore 11 /* success */
       115: .line 619
            goto 126
       116: .line 621
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* csvFile */
            invokestatic com.sun.tools.jdeprscan.DeprDB.loadFromFile:(Ljava/lang/String;)Ljava/util/List;
            putfield com.sun.tools.jdeprscan.Main.deprList:Ljava/util/List;
       117: .line 622
            iconst_1
            istore 11 /* success */
       118: .line 623
            goto 126
       119: .line 625
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* jdkHome */
            aload 9 /* loadClasses */
            invokevirtual com.sun.tools.jdeprscan.Main.processOldJdk:(Ljava/lang/String;Ljava/util/Collection;)Z
            istore 11 /* success */
       120: .line 626
            goto 126
       121: .line 628
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* release */
            aload 9 /* loadClasses */
            invokevirtual com.sun.tools.jdeprscan.Main.processRelease:(Ljava/lang/String;Ljava/util/Collection;)Z
            istore 11 /* success */
       122: .line 629
            goto 126
       123: .line 631
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 9 /* loadClasses */
            invokevirtual com.sun.tools.jdeprscan.Main.processSelf:(Ljava/util/Collection;)Z
            istore 11 /* success */
       124: .line 632
            goto 126
       125: .line 634
      StackMap locals:
      StackMap stack:
            new com.sun.tools.jdeprscan.Main$UsageException
            dup
            invokespecial com.sun.tools.jdeprscan.Main$UsageException.<init>:()V
            athrow
       126: .line 637
      StackMap locals:
      StackMap stack:
            iload 11 /* success */
            ifne 137
       127: .line 638
            iconst_0
            ireturn
        end local 11 // boolean success
       128: .line 640
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String
      StackMap stack: java.lang.Exception
            pop
       129: .line 641
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.err:Ljava/io/PrintStream;
            invokevirtual com.sun.tools.jdeprscan.Main.printHelp:(Ljava/io/PrintStream;)V
       130: .line 642
            iconst_0
            ireturn
       131: .line 643
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 11 /* ioe */
        start local 11 // java.io.IOException ioe
       132: .line 644
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.verbose:Z
            ifeq 135
       133: .line 645
            aload 11 /* ioe */
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.err:Ljava/io/PrintStream;
            invokevirtual java.io.IOException.printStackTrace:(Ljava/io/PrintStream;)V
       134: .line 646
            goto 136
       135: .line 647
      StackMap locals: java.io.IOException
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.err:Ljava/io/PrintStream;
            aload 11 /* ioe */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
       136: .line 649
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 11 // java.io.IOException ioe
       137: .line 654
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 11 /* scanStatus */
        start local 11 // boolean scanStatus
       138: .line 656
            invokestatic com.sun.tools.jdeprscan.Main.$SWITCH_TABLE$com$sun$tools$jdeprscan$Main$ScanMode:()[I
            aload 4 /* scanMode */
            invokevirtual com.sun.tools.jdeprscan.Main$ScanMode.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 152
                    2: 139
                    3: 145
              default: 174
          }
       139: .line 658
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.deprList:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 143
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int top java.util.Iterator
      StackMap stack:
       140: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.jdeprscan.DeprData
            astore 12 /* dd */
        start local 12 // com.sun.tools.jdeprscan.DeprData dd
       141: .line 659
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.forRemoval:Z
            ifeq 142
            aload 12 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            ifeq 143
       142: .line 660
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int com.sun.tools.jdeprscan.DeprData java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            aload 12 /* dd */
            invokestatic com.sun.tools.jdeprscan.Pretty.print:(Lcom/sun/tools/jdeprscan/DeprData;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 12 // com.sun.tools.jdeprscan.DeprData dd
       143: .line 658
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 140
       144: .line 663
            goto 174
       145: .line 665
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            ldc "#jdepr1"
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
       146: .line 666
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.comments:Ljava/util/List;
            aload 0 /* this */
            invokedynamic accept(Lcom/sun/tools/jdeprscan/Main;)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
                  com/sun/tools/jdeprscan/Main.lambda$24(Ljava/lang/String;)V (7)
                  (Ljava/lang/String;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
       147: .line 667
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.deprList:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 150
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int top java.util.Iterator
      StackMap stack:
       148: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.jdeprscan.DeprData
            astore 12 /* dd */
        start local 12 // com.sun.tools.jdeprscan.DeprData dd
       149: .line 668
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 12 /* dd */
            getfield com.sun.tools.jdeprscan.DeprData.kind:Ljavax/lang/model/element/ElementKind;
            aastore
            dup
            iconst_1
            aload 12 /* dd */
            getfield com.sun.tools.jdeprscan.DeprData.typeName:Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 12 /* dd */
            getfield com.sun.tools.jdeprscan.DeprData.nameSig:Ljava/lang/String;
            aastore
            dup
            iconst_3
            aload 12 /* dd */
            getfield com.sun.tools.jdeprscan.DeprData.since:Ljava/lang/String;
            aastore
            dup
            iconst_4
            aload 12 /* dd */
            getfield com.sun.tools.jdeprscan.DeprData.forRemoval:Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            invokestatic com.sun.tools.jdeprscan.CSV.write:(Ljava/io/PrintStream;[Ljava/lang/Object;)V
        end local 12 // com.sun.tools.jdeprscan.DeprData dd
       150: .line 667
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 148
       151: .line 670
            goto 174
       152: .line 672
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.deprList:Ljava/util/List;
            invokestatic com.sun.tools.jdeprscan.DeprDB.loadFromList:(Ljava/util/List;)Lcom/sun/tools/jdeprscan/DeprDB;
            astore 12 /* db */
        start local 12 // com.sun.tools.jdeprscan.DeprDB db
       153: .line 673
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.classPath:Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
       154: .line 674
            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/io/File.toString()Ljava/lang/String; (5)
                  (Ljava/io/File;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
       155: .line 675
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
       156: .line 673
            astore 13 /* cp */
        start local 13 // java.util.List cp
       157: .line 676
            new com.sun.tools.jdeprscan.scan.Scan
            dup
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.err:Ljava/io/PrintStream;
            aload 13 /* cp */
            aload 12 /* db */
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.verbose:Z
            invokespecial com.sun.tools.jdeprscan.scan.Scan.<init>:(Ljava/io/PrintStream;Ljava/io/PrintStream;Ljava/util/List;Lcom/sun/tools/jdeprscan/DeprDB;Z)V
            astore 14 /* scan */
        start local 14 // com.sun.tools.jdeprscan.scan.Scan scan
       158: .line 678
            aload 2 /* args */
            invokeinterface java.util.Queue.iterator:()Ljava/util/Iterator;
            astore 16
            goto 173
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int com.sun.tools.jdeprscan.DeprDB java.util.List com.sun.tools.jdeprscan.scan.Scan top java.util.Iterator
      StackMap stack:
       159: aload 16
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 15 /* a */
        start local 15 // java.lang.String a
       160: .line 680
            aload 15 /* a */
            ldc ".jar"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 163
       161: .line 681
            aload 14 /* scan */
            aload 15 /* a */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.scanJar:(Ljava/lang/String;)Z
            istore 17 /* s */
        start local 17 // boolean s
       162: .line 682
            goto 170
        end local 17 // boolean s
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int com.sun.tools.jdeprscan.DeprDB java.util.List com.sun.tools.jdeprscan.scan.Scan java.lang.String java.util.Iterator
      StackMap stack:
       163: aload 15 /* a */
            ldc ".class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 166
       164: .line 683
            aload 14 /* scan */
            aload 15 /* a */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.processClassFile:(Ljava/lang/String;)Z
            istore 17 /* s */
        start local 17 // boolean s
       165: .line 684
            goto 170
        end local 17 // boolean s
      StackMap locals:
      StackMap stack:
       166: aload 15 /* a */
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.isDirectory:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifeq 169
       167: .line 685
            aload 14 /* scan */
            aload 15 /* a */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.scanDir:(Ljava/lang/String;)Z
            istore 17 /* s */
        start local 17 // boolean s
       168: .line 686
            goto 170
        end local 17 // boolean s
       169: .line 687
      StackMap locals:
      StackMap stack:
            aload 14 /* scan */
            aload 15 /* a */
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.processClassName:(Ljava/lang/String;)Z
            istore 17 /* s */
        start local 17 // boolean s
       170: .line 689
      StackMap locals: int
      StackMap stack:
            iload 11 /* scanStatus */
            ifeq 171
            iload 17 /* s */
            ifeq 171
            iconst_1
            goto 172
      StackMap locals:
      StackMap stack:
       171: iconst_0
      StackMap locals:
      StackMap stack: int
       172: istore 11 /* scanStatus */
        end local 17 // boolean s
        end local 15 // java.lang.String a
       173: .line 678
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int com.sun.tools.jdeprscan.DeprDB java.util.List com.sun.tools.jdeprscan.scan.Scan top java.util.Iterator
      StackMap stack:
            aload 16
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 159
        end local 14 // com.sun.tools.jdeprscan.scan.Scan scan
        end local 13 // java.util.List cp
        end local 12 // com.sun.tools.jdeprscan.DeprDB db
       174: .line 694
      StackMap locals: com.sun.tools.jdeprscan.Main java.lang.String[] java.util.Queue com.sun.tools.jdeprscan.Main$LoadMode com.sun.tools.jdeprscan.Main$ScanMode java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String int
      StackMap stack:
            iload 11 /* scanStatus */
            ireturn
        end local 11 // boolean scanStatus
        end local 10 // java.lang.String csvFile
        end local 9 // java.util.List loadClasses
        end local 8 // java.lang.String release
        end local 7 // java.lang.String jdkHome
        end local 6 // java.lang.String jar
        end local 5 // java.lang.String dir
        end local 4 // com.sun.tools.jdeprscan.Main$ScanMode scanMode
        end local 3 // com.sun.tools.jdeprscan.Main$LoadMode loadMode
        end local 2 // java.util.Queue args
        end local 1 // java.lang.String[] argArray
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0  175     0         this  Lcom/sun/tools/jdeprscan/Main;
            0  175     1     argArray  [Ljava/lang/String;
            1  175     2         args  Ljava/util/Queue<Ljava/lang/String;>;
            2  175     3     loadMode  Lcom/sun/tools/jdeprscan/Main$LoadMode;
            3  175     4     scanMode  Lcom/sun/tools/jdeprscan/Main$ScanMode;
            4  175     5          dir  Ljava/lang/String;
            5  175     6          jar  Ljava/lang/String;
            6  175     7      jdkHome  Ljava/lang/String;
            7  175     8      release  Ljava/lang/String;
            8  175     9  loadClasses  Ljava/util/List<Ljava/lang/String;>;
            9  175    10      csvFile  Ljava/lang/String;
           11   95    11            a  Ljava/lang/String;
          104  128    11      success  Z
          132  137    11          ioe  Ljava/io/IOException;
          138  175    11   scanStatus  Z
          141  143    12           dd  Lcom/sun/tools/jdeprscan/DeprData;
          149  150    12           dd  Lcom/sun/tools/jdeprscan/DeprData;
          153  174    12           db  Lcom/sun/tools/jdeprscan/DeprDB;
          157  174    13           cp  Ljava/util/List<Ljava/lang/String;>;
          158  174    14         scan  Lcom/sun/tools/jdeprscan/scan/Scan;
          160  173    15            a  Ljava/lang/String;
          162  163    17            s  Z
          165  166    17            s  Z
          168  169    17            s  Z
          170  173    17            s  Z
      Exception table:
        from    to  target  type
           9    45     128  Class java.util.NoSuchElementException
          46    49     128  Class java.util.NoSuchElementException
          50    62     128  Class java.util.NoSuchElementException
          63    68     128  Class java.util.NoSuchElementException
          69   127     128  Class java.util.NoSuchElementException
           9    45     128  Class com.sun.tools.jdeprscan.Main$UsageException
          46    49     128  Class com.sun.tools.jdeprscan.Main$UsageException
          50    62     128  Class com.sun.tools.jdeprscan.Main$UsageException
          63    68     128  Class com.sun.tools.jdeprscan.Main$UsageException
          69   127     128  Class com.sun.tools.jdeprscan.Main$UsageException
           9    45     131  Class java.io.IOException
          46    49     131  Class java.io.IOException
          50    62     131  Class java.io.IOException
          63    68     131  Class java.io.IOException
          69   127     131  Class java.io.IOException
    MethodParameters:
          Name  Flags
      argArray  

  private void printHelp(java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.io.PrintStream out
         0: .line 698
            new com.sun.tools.javac.platform.JDKPlatformProvider
            dup
            invokespecial com.sun.tools.javac.platform.JDKPlatformProvider.<init>:()V
            astore 2 /* pp */
        start local 2 // com.sun.tools.javac.platform.JDKPlatformProvider pp
         1: .line 700
            ldc "|"
            aload 2 /* pp */
            invokevirtual com.sun.tools.javac.platform.JDKPlatformProvider.getSupportedPlatformNames:()Ljava/lang/Iterable;
            invokestatic java.lang.String.join:(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
         2: .line 699
            astore 3 /* supportedReleases */
        start local 3 // java.lang.String supportedReleases
         3: .line 701
            aload 1 /* out */
            ldc "main.usage"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* supportedReleases */
            aastore
            invokestatic com.sun.tools.jdeprscan.Messages.get:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 702
            return
        end local 3 // java.lang.String supportedReleases
        end local 2 // com.sun.tools.javac.platform.JDKPlatformProvider pp
        end local 1 // java.io.PrintStream out
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Lcom/sun/tools/jdeprscan/Main;
            0    5     1                out  Ljava/io/PrintStream;
            1    5     2                 pp  Lcom/sun/tools/javac/platform/JDKPlatformProvider;
            3    5     3  supportedReleases  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      out   

  public static boolean call(java.io.PrintStream, java.io.PrintStream, java.lang.String[]);
    descriptor: (Ljava/io/PrintStream;Ljava/io/PrintStream;[Ljava/lang/String;)Z
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.io.PrintStream out
        start local 1 // java.io.PrintStream err
        start local 2 // java.lang.String[] args
         0: .line 712
            new com.sun.tools.jdeprscan.Main
            dup
            aload 0 /* out */
            aload 1 /* err */
            invokespecial com.sun.tools.jdeprscan.Main.<init>:(Ljava/io/PrintStream;Ljava/io/PrintStream;)V
            aload 2 /* args */
            invokevirtual com.sun.tools.jdeprscan.Main.run:([Ljava/lang/String;)Z
            ireturn
        end local 2 // java.lang.String[] args
        end local 1 // java.io.PrintStream err
        end local 0 // java.io.PrintStream out
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   out  Ljava/io/PrintStream;
            0    1     1   err  Ljava/io/PrintStream;
            0    1     2  args  [Ljava/lang/String;
    MethodParameters:
      Name  Flags
      out   
      err   
      args  

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String[] args
         0: .line 720
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 0 /* args */
            invokestatic com.sun.tools.jdeprscan.Main.call:(Ljava/io/PrintStream;Ljava/io/PrintStream;[Ljava/lang/String;)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: invokestatic java.lang.System.exit:(I)V
         3: .line 721
            return
        end local 0 // java.lang.String[] args
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  args  [Ljava/lang/String;
    MethodParameters:
      Name  Flags
      args  

  static int[] $SWITCH_TABLE$com$sun$tools$jdeprscan$Main$LoadMode();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 96
            getstatic com.sun.tools.jdeprscan.Main.$SWITCH_TABLE$com$sun$tools$jdeprscan$Main$LoadMode:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.sun.tools.jdeprscan.Main$LoadMode.values:()[Lcom/sun/tools/jdeprscan/Main$LoadMode;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.CLASSES:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            invokevirtual com.sun.tools.jdeprscan.Main$LoadMode.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.DIR:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            invokevirtual com.sun.tools.jdeprscan.Main$LoadMode.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.JAR:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            invokevirtual com.sun.tools.jdeprscan.Main$LoadMode.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.JDK9:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            invokevirtual com.sun.tools.jdeprscan.Main$LoadMode.ordinal:()I
            iconst_5
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.LOAD_CSV:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            invokevirtual com.sun.tools.jdeprscan.Main$LoadMode.ordinal:()I
            bipush 8
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.OLD_JDK:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            invokevirtual com.sun.tools.jdeprscan.Main$LoadMode.ordinal:()I
            iconst_4
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.RELEASE:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            invokevirtual com.sun.tools.jdeprscan.Main$LoadMode.ordinal:()I
            bipush 7
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic com.sun.tools.jdeprscan.Main$LoadMode.SELF:Lcom/sun/tools/jdeprscan/Main$LoadMode;
            invokevirtual com.sun.tools.jdeprscan.Main$LoadMode.ordinal:()I
            bipush 6
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            dup
            putstatic com.sun.tools.jdeprscan.Main.$SWITCH_TABLE$com$sun$tools$jdeprscan$Main$LoadMode:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$com$sun$tools$jdeprscan$Main$ScanMode();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 96
            getstatic com.sun.tools.jdeprscan.Main.$SWITCH_TABLE$com$sun$tools$jdeprscan$Main$ScanMode:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.sun.tools.jdeprscan.Main$ScanMode.values:()[Lcom/sun/tools/jdeprscan/Main$ScanMode;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.sun.tools.jdeprscan.Main$ScanMode.ARGS:Lcom/sun/tools/jdeprscan/Main$ScanMode;
            invokevirtual com.sun.tools.jdeprscan.Main$ScanMode.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic com.sun.tools.jdeprscan.Main$ScanMode.LIST:Lcom/sun/tools/jdeprscan/Main$ScanMode;
            invokevirtual com.sun.tools.jdeprscan.Main$ScanMode.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic com.sun.tools.jdeprscan.Main$ScanMode.PRINT_CSV:Lcom/sun/tools/jdeprscan/Main$ScanMode;
            invokevirtual com.sun.tools.jdeprscan.Main$ScanMode.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic com.sun.tools.jdeprscan.Main.$SWITCH_TABLE$com$sun$tools$jdeprscan$Main$ScanMode:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError

  private static boolean lambda$2(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 183
            aload 0 /* name */
            ldc ".class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/String;

  private static boolean lambda$3(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 184
            aload 0 /* name */
            ldc "package-info.class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  name  Ljava/lang/String;

  private static boolean lambda$4(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 185
            aload 0 /* name */
            ldc "module-info.class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  name  Ljava/lang/String;

  private static java.lang.String lambda$5(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 186
            aload 0 /* s */
            ldc "\\.class$"
            ldc ""
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;

  private static java.lang.String lambda$6(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 187
            aload 0 /* s */
            getstatic java.io.File.separatorChar:C
            bipush 46
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;

  private static boolean lambda$7(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 220
            aload 0 /* name */
            ldc ".class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/String;

  private static boolean lambda$8(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 221
            aload 0 /* name */
            ldc "package-info.class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  name  Ljava/lang/String;

  private static boolean lambda$9(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 222
            aload 0 /* name */
            ldc "module-info.class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  name  Ljava/lang/String;

  private static java.lang.String lambda$10(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 223
            aload 0 /* s */
            ldc "\\.class$"
            ldc ""
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  Ljava/lang/String;

  private static boolean lambda$12(int, java.nio.file.Path);
    descriptor: (ILjava/nio/file/Path;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.nio.file.Path p
         0: .line 251
            aload 1 /* p */
            invokeinterface java.nio.file.Path.getNameCount:()I
            iload 0
            if_icmple 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // java.nio.file.Path p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     1     p  Ljava/nio/file/Path;

  private static java.nio.file.Path lambda$13(int, java.nio.file.Path);
    descriptor: (ILjava/nio/file/Path;)Ljava/nio/file/Path;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // java.nio.file.Path p
         0: .line 252
            aload 1 /* p */
            iload 0
            aload 1 /* p */
            invokeinterface java.nio.file.Path.getNameCount:()I
            invokeinterface java.nio.file.Path.subpath:(II)Ljava/nio/file/Path;
            areturn
        end local 1 // java.nio.file.Path p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     p  Ljava/nio/file/Path;

  private static boolean lambda$16(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.nio.file.Path p
         0: .line 347
            aload 0 /* p */
            invokeinterface java.nio.file.Path.getNameCount:()I
            iconst_2
            if_icmple 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // java.nio.file.Path p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     p  Ljava/nio/file/Path;

  private static java.nio.file.Path lambda$17(java.nio.file.Path);
    descriptor: (Ljava/nio/file/Path;)Ljava/nio/file/Path;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.nio.file.Path p
         0: .line 348
            aload 0 /* p */
            iconst_1
            aload 0 /* p */
            invokeinterface java.nio.file.Path.getNameCount:()I
            invokeinterface java.nio.file.Path.subpath:(II)Ljava/nio/file/Path;
            areturn
        end local 0 // java.nio.file.Path p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     p  Ljava/nio/file/Path;

  private static boolean lambda$21(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String n
         0: .line 409
            aload 1 /* n */
            aload 0
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.String n
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     n  Ljava/lang/String;

  private void lambda$24(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeprscan.Main this
        start local 1 // java.lang.String s
         0: .line 666
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.Main.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "# "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* s */
            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
            return
        end local 1 // java.lang.String s
        end local 0 // com.sun.tools.jdeprscan.Main this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/tools/jdeprscan/Main;
            0    1     1     s  Ljava/lang/String;
}
Signature: Ljava/lang/Object;Ljavax/tools/DiagnosticListener<Ljavax/tools/JavaFileObject;>;
SourceFile: "Main.java"
NestMembers:
  com.sun.tools.jdeprscan.Main$LoadMode  com.sun.tools.jdeprscan.Main$ScanMode  com.sun.tools.jdeprscan.Main$UsageException
InnerClasses:
  final LoadMode = com.sun.tools.jdeprscan.Main$LoadMode of com.sun.tools.jdeprscan.Main
  final ScanMode = com.sun.tools.jdeprscan.Main$ScanMode of com.sun.tools.jdeprscan.Main
  UsageException = com.sun.tools.jdeprscan.Main$UsageException of com.sun.tools.jdeprscan.Main
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract CompilationTask = javax.tools.JavaCompiler$CompilationTask of javax.tools.JavaCompiler
  public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager
  public final Kind = javax.tools.JavaFileObject$Kind of javax.tools.JavaFileObject