public class com.sun.tools.jdeprscan.scan.Scan
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.tools.jdeprscan.scan.Scan
  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.lang.String> classPath;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Ljava/lang/String;>;

  final com.sun.tools.jdeprscan.DeprDB db;
    descriptor: Lcom/sun/tools/jdeprscan/DeprDB;
    flags: (0x0010) ACC_FINAL

  final boolean verbose;
    descriptor: Z
    flags: (0x0010) ACC_FINAL

  final com.sun.tools.jdeprscan.scan.ClassFinder finder;
    descriptor: Lcom/sun/tools/jdeprscan/scan/ClassFinder;
    flags: (0x0010) ACC_FINAL

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

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

  java.util.regex.Pattern descTypePattern;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x0000) 

  java.util.regex.Pattern refTypePattern;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x0000) 

  public void <init>(java.io.PrintStream, java.io.PrintStream, java.util.List<java.lang.String>, com.sun.tools.jdeprscan.DeprDB, );
    descriptor: (Ljava/io/PrintStream;Ljava/io/PrintStream;Ljava/util/List;Lcom/sun/tools/jdeprscan/DeprDB;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=9, args_size=6
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.io.PrintStream out
        start local 2 // java.io.PrintStream err
        start local 3 // java.util.List classPath
        start local 4 // com.sun.tools.jdeprscan.DeprDB db
        start local 5 // boolean verbose
         0: .line 71
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 68
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield com.sun.tools.jdeprscan.scan.Scan.classesNotFound:Ljava/util/Set;
         2: .line 69
            aload 0 /* this */
            iconst_0
            putfield com.sun.tools.jdeprscan.scan.Scan.errorOccurred:Z
         3: .line 131
            aload 0 /* this */
            ldc "\\[*L(.*);"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putfield com.sun.tools.jdeprscan.scan.Scan.descTypePattern:Ljava/util/regex/Pattern;
         4: .line 165
            aload 0 /* this */
            ldc "\\[+L(.*);"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            putfield com.sun.tools.jdeprscan.scan.Scan.refTypePattern:Ljava/util/regex/Pattern;
         5: .line 76
            aload 0 /* this */
            aload 1 /* out */
            putfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
         6: .line 77
            aload 0 /* this */
            aload 2 /* err */
            putfield com.sun.tools.jdeprscan.scan.Scan.err:Ljava/io/PrintStream;
         7: .line 78
            aload 0 /* this */
            aload 3 /* classPath */
            putfield com.sun.tools.jdeprscan.scan.Scan.classPath:Ljava/util/List;
         8: .line 79
            aload 0 /* this */
            aload 4 /* db */
            putfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
         9: .line 80
            aload 0 /* this */
            iload 5 /* verbose */
            putfield com.sun.tools.jdeprscan.scan.Scan.verbose:Z
        10: .line 82
            new com.sun.tools.jdeprscan.scan.ClassFinder
            dup
            iload 5 /* verbose */
            invokespecial com.sun.tools.jdeprscan.scan.ClassFinder.<init>:(Z)V
            astore 6 /* f */
        start local 6 // com.sun.tools.jdeprscan.scan.ClassFinder f
        11: .line 90
            aload 6 /* f */
            invokevirtual com.sun.tools.jdeprscan.scan.ClassFinder.addJrt:()V
        12: .line 92
            aload 3 /* classPath */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 18
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.io.PrintStream java.io.PrintStream java.util.List com.sun.tools.jdeprscan.DeprDB int com.sun.tools.jdeprscan.scan.ClassFinder top java.util.Iterator
      StackMap stack:
        13: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* name */
        start local 7 // java.lang.String name
        14: .line 93
            aload 7 /* name */
            ldc ".jar"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 17
        15: .line 94
            aload 6 /* f */
            aload 7 /* name */
            invokevirtual com.sun.tools.jdeprscan.scan.ClassFinder.addJar:(Ljava/lang/String;)V
        16: .line 95
            goto 18
        17: .line 96
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.io.PrintStream java.io.PrintStream java.util.List com.sun.tools.jdeprscan.DeprDB int com.sun.tools.jdeprscan.scan.ClassFinder java.lang.String java.util.Iterator
      StackMap stack:
            aload 6 /* f */
            aload 7 /* name */
            invokevirtual com.sun.tools.jdeprscan.scan.ClassFinder.addDir:(Ljava/lang/String;)V
        end local 7 // java.lang.String name
        18: .line 92
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.io.PrintStream java.io.PrintStream java.util.List com.sun.tools.jdeprscan.DeprDB int com.sun.tools.jdeprscan.scan.ClassFinder top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        19: .line 100
            aload 0 /* this */
            aload 6 /* f */
            putfield com.sun.tools.jdeprscan.scan.Scan.finder:Lcom/sun/tools/jdeprscan/scan/ClassFinder;
        20: .line 101
            return
        end local 6 // com.sun.tools.jdeprscan.scan.ClassFinder f
        end local 5 // boolean verbose
        end local 4 // com.sun.tools.jdeprscan.DeprDB db
        end local 3 // java.util.List classPath
        end local 2 // java.io.PrintStream err
        end local 1 // java.io.PrintStream out
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   21     0       this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   21     1        out  Ljava/io/PrintStream;
            0   21     2        err  Ljava/io/PrintStream;
            0   21     3  classPath  Ljava/util/List<Ljava/lang/String;>;
            0   21     4         db  Lcom/sun/tools/jdeprscan/DeprDB;
            0   21     5    verbose  Z
           11   21     6          f  Lcom/sun/tools/jdeprscan/scan/ClassFinder;
           14   18     7       name  Ljava/lang/String;
    Signature: (Ljava/io/PrintStream;Ljava/io/PrintStream;Ljava/util/List<Ljava/lang/String;>;Lcom/sun/tools/jdeprscan/DeprDB;Z)V
    MethodParameters:
           Name  Flags
      out        
      err        
      classPath  
      db         
      verbose    

  java.lang.String nameFromDescType(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String descType
         0: .line 123
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.descTypePattern:Ljava/util/regex/Pattern;
            aload 1 /* descType */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 2 /* matcher */
        start local 2 // java.util.regex.Matcher matcher
         1: .line 124
            aload 2 /* matcher */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 3
         2: .line 125
            aload 2 /* matcher */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            areturn
         3: .line 127
      StackMap locals: java.util.regex.Matcher
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.util.regex.Matcher matcher
        end local 1 // java.lang.String descType
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    4     1  descType  Ljava/lang/String;
            1    4     2   matcher  Ljava/util/regex/Matcher;
    MethodParameters:
          Name  Flags
      descType  

  java.lang.String nameFromRefType(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String refType
         0: .line 155
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.refTypePattern:Ljava/util/regex/Pattern;
            aload 1 /* refType */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 2 /* matcher */
        start local 2 // java.util.regex.Matcher matcher
         1: .line 156
            aload 2 /* matcher */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 3
         2: .line 157
            aload 2 /* matcher */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            areturn
         3: .line 158
      StackMap locals: java.util.regex.Matcher
      StackMap stack:
            aload 1 /* refType */
            ldc "["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 159
            aconst_null
            areturn
         5: .line 161
      StackMap locals:
      StackMap stack:
            aload 1 /* refType */
            areturn
        end local 2 // java.util.regex.Matcher matcher
        end local 1 // java.lang.String refType
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    6     1  refType  Ljava/lang/String;
            1    6     2  matcher  Ljava/util/regex/Matcher;
    MethodParameters:
         Name  Flags
      refType  

  java.lang.String typeKind(com.sun.tools.classfile.ClassFile);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
         0: .line 168
            aload 1 /* cf */
            getfield com.sun.tools.classfile.ClassFile.access_flags:Lcom/sun/tools/classfile/AccessFlags;
            astore 2 /* flags */
        start local 2 // com.sun.tools.classfile.AccessFlags flags
         1: .line 169
            aload 2 /* flags */
            sipush 16384
            invokevirtual com.sun.tools.classfile.AccessFlags.is:(I)Z
            ifeq 3
         2: .line 170
            ldc "enum"
            areturn
         3: .line 171
      StackMap locals: com.sun.tools.classfile.AccessFlags
      StackMap stack:
            aload 2 /* flags */
            sipush 8192
            invokevirtual com.sun.tools.classfile.AccessFlags.is:(I)Z
            ifeq 5
         4: .line 172
            ldc "@interface"
            areturn
         5: .line 173
      StackMap locals:
      StackMap stack:
            aload 2 /* flags */
            sipush 512
            invokevirtual com.sun.tools.classfile.AccessFlags.is:(I)Z
            ifeq 7
         6: .line 174
            ldc "interface"
            areturn
         7: .line 176
      StackMap locals:
      StackMap stack:
            ldc "class"
            areturn
        end local 2 // com.sun.tools.classfile.AccessFlags flags
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    8     1     cf  Lcom/sun/tools/classfile/ClassFile;
            1    8     2  flags  Lcom/sun/tools/classfile/AccessFlags;
    MethodParameters:
      Name  Flags
      cf    

  java.lang.String dep(boolean);
    descriptor: (Z)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // boolean forRemoval
         0: .line 181
            iload 1 /* forRemoval */
            ifeq 1
            ldc "scan.dep.removal"
            goto 2
      StackMap locals:
      StackMap stack:
         1: ldc "scan.dep.normal"
      StackMap locals:
      StackMap stack: java.lang.String
         2: iconst_0
            anewarray java.lang.Object
            invokestatic com.sun.tools.jdeprscan.Messages.get:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 1 // boolean forRemoval
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    3     1  forRemoval  Z
    MethodParameters:
            Name  Flags
      forRemoval  

  void printType(java.lang.String, com.sun.tools.classfile.ClassFile, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String key
        start local 2 // com.sun.tools.classfile.ClassFile cf
        start local 3 // java.lang.String cname
        start local 4 // boolean r
         0: .line 186
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            aload 1 /* key */
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 2 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.typeKind:(Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 3 /* cname */
            aastore
            dup
            iconst_3
            aload 0 /* this */
            iload 4 /* r */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.dep:(Z)Ljava/lang/String;
            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
         1: .line 187
            return
        end local 4 // boolean r
        end local 3 // java.lang.String cname
        end local 2 // com.sun.tools.classfile.ClassFile cf
        end local 1 // java.lang.String key
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    2     1    key  Ljava/lang/String;
            0    2     2     cf  Lcom/sun/tools/classfile/ClassFile;
            0    2     3  cname  Ljava/lang/String;
            0    2     4      r  Z
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
       Name  Flags
      key    
      cf     
      cname  
      r      

  void printMethod(java.lang.String, com.sun.tools.classfile.ClassFile, java.lang.String, java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String key
        start local 2 // com.sun.tools.classfile.ClassFile cf
        start local 3 // java.lang.String cname
        start local 4 // java.lang.String mname
        start local 5 // java.lang.String rtype
        start local 6 // boolean r
         0: .line 191
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            aload 1 /* key */
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 2 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.typeKind:(Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 3 /* cname */
            aastore
            dup
            iconst_3
            aload 4 /* mname */
            aastore
            dup
            iconst_4
            aload 5 /* rtype */
            aastore
            dup
            iconst_5
            aload 0 /* this */
            iload 6 /* r */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.dep:(Z)Ljava/lang/String;
            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
         1: .line 192
            return
        end local 6 // boolean r
        end local 5 // java.lang.String rtype
        end local 4 // java.lang.String mname
        end local 3 // java.lang.String cname
        end local 2 // com.sun.tools.classfile.ClassFile cf
        end local 1 // java.lang.String key
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    2     1    key  Ljava/lang/String;
            0    2     2     cf  Lcom/sun/tools/classfile/ClassFile;
            0    2     3  cname  Ljava/lang/String;
            0    2     4  mname  Ljava/lang/String;
            0    2     5  rtype  Ljava/lang/String;
            0    2     6      r  Z
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
       Name  Flags
      key    
      cf     
      cname  
      mname  
      rtype  
      r      

  void printField(java.lang.String, com.sun.tools.classfile.ClassFile, java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String key
        start local 2 // com.sun.tools.classfile.ClassFile cf
        start local 3 // java.lang.String cname
        start local 4 // java.lang.String fname
        start local 5 // boolean r
         0: .line 196
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            aload 1 /* key */
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 2 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.typeKind:(Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 3 /* cname */
            aastore
            dup
            iconst_3
            aload 4 /* fname */
            aastore
            dup
            iconst_4
            aload 0 /* this */
            iload 5 /* r */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.dep:(Z)Ljava/lang/String;
            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
         1: .line 197
            return
        end local 5 // boolean r
        end local 4 // java.lang.String fname
        end local 3 // java.lang.String cname
        end local 2 // com.sun.tools.classfile.ClassFile cf
        end local 1 // java.lang.String key
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    2     1    key  Ljava/lang/String;
            0    2     2     cf  Lcom/sun/tools/classfile/ClassFile;
            0    2     3  cname  Ljava/lang/String;
            0    2     4  fname  Ljava/lang/String;
            0    2     5      r  Z
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
       Name  Flags
      key    
      cf     
      cname  
      fname  
      r      

  void printFieldType(java.lang.String, com.sun.tools.classfile.ClassFile, java.lang.String, java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String key
        start local 2 // com.sun.tools.classfile.ClassFile cf
        start local 3 // java.lang.String cname
        start local 4 // java.lang.String fname
        start local 5 // java.lang.String type
        start local 6 // boolean r
         0: .line 201
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            aload 1 /* key */
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 2 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.typeKind:(Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 2 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 3 /* cname */
            aastore
            dup
            iconst_3
            aload 4 /* fname */
            aastore
            dup
            iconst_4
            aload 5 /* type */
            aastore
            dup
            iconst_5
            aload 0 /* this */
            iload 6 /* r */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.dep:(Z)Ljava/lang/String;
            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
         1: .line 202
            return
        end local 6 // boolean r
        end local 5 // java.lang.String type
        end local 4 // java.lang.String fname
        end local 3 // java.lang.String cname
        end local 2 // com.sun.tools.classfile.ClassFile cf
        end local 1 // java.lang.String key
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    2     1    key  Ljava/lang/String;
            0    2     2     cf  Lcom/sun/tools/classfile/ClassFile;
            0    2     3  cname  Ljava/lang/String;
            0    2     4  fname  Ljava/lang/String;
            0    2     5   type  Ljava/lang/String;
            0    2     6      r  Z
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
       Name  Flags
      key    
      cf     
      cname  
      fname  
      type   
      r      

  void printHasField(com.sun.tools.classfile.ClassFile, java.lang.String, java.lang.String, boolean);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
        start local 2 // java.lang.String fname
        start local 3 // java.lang.String type
        start local 4 // boolean r
         0: .line 206
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            ldc "scan.out.hasfield"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 1 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.typeKind:(Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 2 /* fname */
            aastore
            dup
            iconst_3
            aload 3 /* type */
            aastore
            dup
            iconst_4
            aload 0 /* this */
            iload 4 /* r */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.dep:(Z)Ljava/lang/String;
            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
         1: .line 207
            return
        end local 4 // boolean r
        end local 3 // java.lang.String type
        end local 2 // java.lang.String fname
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    2     1     cf  Lcom/sun/tools/classfile/ClassFile;
            0    2     2  fname  Ljava/lang/String;
            0    2     3   type  Ljava/lang/String;
            0    2     4      r  Z
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
       Name  Flags
      cf     
      fname  
      type   
      r      

  void printHasMethodParmType(com.sun.tools.classfile.ClassFile, java.lang.String, java.lang.String, boolean);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
        start local 2 // java.lang.String mname
        start local 3 // java.lang.String parmType
        start local 4 // boolean r
         0: .line 211
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            ldc "scan.out.methodparmtype"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 1 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.typeKind:(Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 2 /* mname */
            aastore
            dup
            iconst_3
            aload 3 /* parmType */
            aastore
            dup
            iconst_4
            aload 0 /* this */
            iload 4 /* r */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.dep:(Z)Ljava/lang/String;
            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
         1: .line 212
            return
        end local 4 // boolean r
        end local 3 // java.lang.String parmType
        end local 2 // java.lang.String mname
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    2     1        cf  Lcom/sun/tools/classfile/ClassFile;
            0    2     2     mname  Ljava/lang/String;
            0    2     3  parmType  Ljava/lang/String;
            0    2     4         r  Z
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
          Name  Flags
      cf        
      mname     
      parmType  
      r         

  void printHasMethodRetType(com.sun.tools.classfile.ClassFile, java.lang.String, java.lang.String, boolean);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
        start local 2 // java.lang.String mname
        start local 3 // java.lang.String retType
        start local 4 // boolean r
         0: .line 216
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            ldc "scan.out.methodrettype"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 1 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.typeKind:(Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 2 /* mname */
            aastore
            dup
            iconst_3
            aload 3 /* retType */
            aastore
            dup
            iconst_4
            aload 0 /* this */
            iload 4 /* r */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.dep:(Z)Ljava/lang/String;
            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
         1: .line 217
            return
        end local 4 // boolean r
        end local 3 // java.lang.String retType
        end local 2 // java.lang.String mname
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    2     1       cf  Lcom/sun/tools/classfile/ClassFile;
            0    2     2    mname  Ljava/lang/String;
            0    2     3  retType  Ljava/lang/String;
            0    2     4        r  Z
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
         Name  Flags
      cf       
      mname    
      retType  
      r        

  void printHasOverriddenMethod(com.sun.tools.classfile.ClassFile, java.lang.String, java.lang.String, java.lang.String, boolean);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
        start local 2 // java.lang.String overridden
        start local 3 // java.lang.String mname
        start local 4 // java.lang.String desc
        start local 5 // boolean r
         0: .line 221
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            ldc "scan.out.methodoverride"
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            aload 1 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.typeKind:(Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 2 /* overridden */
            aastore
            dup
            iconst_3
         1: .line 222
            aload 3 /* mname */
            aastore
            dup
            iconst_4
            aload 4 /* desc */
            aastore
            dup
            iconst_5
            aload 0 /* this */
            iload 5 /* r */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.dep:(Z)Ljava/lang/String;
            aastore
         2: .line 221
            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
         3: .line 223
            return
        end local 5 // boolean r
        end local 4 // java.lang.String desc
        end local 3 // java.lang.String mname
        end local 2 // java.lang.String overridden
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    4     1          cf  Lcom/sun/tools/classfile/ClassFile;
            0    4     2  overridden  Ljava/lang/String;
            0    4     3       mname  Ljava/lang/String;
            0    4     4        desc  Ljava/lang/String;
            0    4     5           r  Z
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
            Name  Flags
      cf          
      overridden  
      mname       
      desc        
      r           

  void errorException(java.lang.Exception);
    descriptor: (Ljava/lang/Exception;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.Exception ex
         0: .line 226
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.jdeprscan.scan.Scan.errorOccurred:Z
         1: .line 227
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.err:Ljava/io/PrintStream;
            ldc "scan.err.exception"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* ex */
            invokevirtual java.lang.Exception.toString:()Ljava/lang/String;
            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
         2: .line 228
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.verbose:Z
            ifeq 4
         3: .line 229
            aload 1 /* ex */
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.err:Ljava/io/PrintStream;
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
         4: .line 231
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Exception ex
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    5     1    ex  Ljava/lang/Exception;
    MethodParameters:
      Name  Flags
      ex    

  void errorNoClass(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String className
         0: .line 234
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.jdeprscan.scan.Scan.errorOccurred:Z
         1: .line 235
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.classesNotFound:Ljava/util/Set;
            aload 1 /* className */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 237
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.err:Ljava/io/PrintStream;
            ldc "scan.err.noclass"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* className */
            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
         3: .line 239
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String className
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    4     1  className  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      className  

  void errorNoFile(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String fileName
         0: .line 242
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.jdeprscan.scan.Scan.errorOccurred:Z
         1: .line 243
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.err:Ljava/io/PrintStream;
            ldc "scan.err.nofile"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* fileName */
            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
         2: .line 244
            return
        end local 1 // java.lang.String fileName
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    3     1  fileName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fileName  

  void errorNoMethod(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String methodName
        start local 3 // java.lang.String desc
         0: .line 247
            aload 0 /* this */
            iconst_1
            putfield com.sun.tools.jdeprscan.scan.Scan.errorOccurred:Z
         1: .line 248
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.err:Ljava/io/PrintStream;
            ldc "scan.err.nomethod"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* className */
            aastore
            dup
            iconst_1
            aload 2 /* methodName */
            aastore
            dup
            iconst_2
            aload 3 /* desc */
            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
         2: .line 249
            return
        end local 3 // java.lang.String desc
        end local 2 // java.lang.String methodName
        end local 1 // java.lang.String className
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    3     1   className  Ljava/lang/String;
            0    3     2  methodName  Ljava/lang/String;
            0    3     3        desc  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      className   
      methodName  
      desc        

  boolean isMemberPresent(com.sun.tools.classfile.ClassFile, java.lang.String, java.lang.String, boolean);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=11, args_size=5
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile targetClass
        start local 2 // java.lang.String targetName
        start local 3 // java.lang.String targetDesc
        start local 4 // boolean checkMethod
         0: .line 268
            iload 4 /* checkMethod */
            ifeq 10
         1: .line 269
            aload 1 /* targetClass */
            getfield com.sun.tools.classfile.ClassFile.methods:[Lcom/sun/tools/classfile/Method;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 8
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile java.lang.String java.lang.String int top int int com.sun.tools.classfile.Method[]
      StackMap stack:
         2: aload 8
            iload 6
            aaload
            astore 5 /* m */
        start local 5 // com.sun.tools.classfile.Method m
         3: .line 270
            aload 5 /* m */
            aload 1 /* targetClass */
            getfield com.sun.tools.classfile.ClassFile.constant_pool:Lcom/sun/tools/classfile/ConstantPool;
            invokevirtual com.sun.tools.classfile.Method.getName:(Lcom/sun/tools/classfile/ConstantPool;)Ljava/lang/String;
            astore 9 /* mname */
        start local 9 // java.lang.String mname
         4: .line 271
            aload 1 /* targetClass */
            getfield com.sun.tools.classfile.ClassFile.constant_pool:Lcom/sun/tools/classfile/ConstantPool;
            aload 5 /* m */
            getfield com.sun.tools.classfile.Method.descriptor:Lcom/sun/tools/classfile/Descriptor;
            getfield com.sun.tools.classfile.Descriptor.index:I
            invokevirtual com.sun.tools.classfile.ConstantPool.getUTF8Value:(I)Ljava/lang/String;
            astore 10 /* mdesc */
        start local 10 // java.lang.String mdesc
         5: .line 272
            aload 2 /* targetName */
            aload 9 /* mname */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
            aload 3 /* targetDesc */
            aload 10 /* mdesc */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 273
            iconst_1
            ireturn
        end local 10 // java.lang.String mdesc
        end local 9 // java.lang.String mname
        end local 5 // com.sun.tools.classfile.Method m
         7: .line 269
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
         8: iload 6
            iload 7
            if_icmplt 2
         9: .line 276
            goto 17
        10: .line 277
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile java.lang.String java.lang.String int
      StackMap stack:
            aload 1 /* targetClass */
            getfield com.sun.tools.classfile.ClassFile.fields:[Lcom/sun/tools/classfile/Field;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 16
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile java.lang.String java.lang.String int top int int com.sun.tools.classfile.Field[]
      StackMap stack:
        11: aload 8
            iload 6
            aaload
            astore 5 /* f */
        start local 5 // com.sun.tools.classfile.Field f
        12: .line 278
            aload 5 /* f */
            aload 1 /* targetClass */
            getfield com.sun.tools.classfile.ClassFile.constant_pool:Lcom/sun/tools/classfile/ConstantPool;
            invokevirtual com.sun.tools.classfile.Field.getName:(Lcom/sun/tools/classfile/ConstantPool;)Ljava/lang/String;
            astore 9 /* fname */
        start local 9 // java.lang.String fname
        13: .line 279
            aload 2 /* targetName */
            aload 9 /* fname */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        14: .line 280
            iconst_1
            ireturn
        end local 9 // java.lang.String fname
        end local 5 // com.sun.tools.classfile.Field f
        15: .line 277
      StackMap locals:
      StackMap stack:
            iinc 6 1
      StackMap locals:
      StackMap stack:
        16: iload 6
            iload 7
            if_icmplt 11
        17: .line 284
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile java.lang.String java.lang.String int
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // boolean checkMethod
        end local 3 // java.lang.String targetDesc
        end local 2 // java.lang.String targetName
        end local 1 // com.sun.tools.classfile.ClassFile targetClass
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   18     0         this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   18     1  targetClass  Lcom/sun/tools/classfile/ClassFile;
            0   18     2   targetName  Ljava/lang/String;
            0   18     3   targetDesc  Ljava/lang/String;
            0   18     4  checkMethod  Z
            3    7     5            m  Lcom/sun/tools/classfile/Method;
            4    7     9        mname  Ljava/lang/String;
            5    7    10        mdesc  Ljava/lang/String;
           12   15     5            f  Lcom/sun/tools/classfile/Field;
           13   15     9        fname  Ljava/lang/String;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
             Name  Flags
      targetClass  
      targetName   
      targetDesc   
      checkMethod  

  void addInterfaces(java.util.Deque<java.lang.String>, com.sun.tools.classfile.ClassFile);
    descriptor: (Ljava/util/Deque;Lcom/sun/tools/classfile/ClassFile;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.util.Deque intfs
        start local 2 // com.sun.tools.classfile.ClassFile cf
         0: .line 296
            aload 2 /* cf */
            getfield com.sun.tools.classfile.ClassFile.interfaces:[I
            arraylength
            istore 3 /* count */
        start local 3 // int count
         1: .line 297
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 5
         3: .line 298
      StackMap locals: int int
      StackMap stack:
            aload 1 /* intfs */
            aload 2 /* cf */
            iload 4 /* i */
            invokevirtual com.sun.tools.classfile.ClassFile.getInterfaceName:(I)Ljava/lang/String;
            invokeinterface java.util.Deque.addLast:(Ljava/lang/Object;)V
         4: .line 297
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            iload 3 /* count */
            if_icmplt 3
        end local 4 // int i
         6: .line 300
            return
        end local 3 // int count
        end local 2 // com.sun.tools.classfile.ClassFile cf
        end local 1 // java.util.Deque intfs
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    7     1  intfs  Ljava/util/Deque<Ljava/lang/String;>;
            0    7     2     cf  Lcom/sun/tools/classfile/ClassFile;
            1    7     3  count  I
            2    6     4      i  I
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    Signature: (Ljava/util/Deque<Ljava/lang/String;>;Lcom/sun/tools/classfile/ClassFile;)V
    MethodParameters:
       Name  Flags
      intfs  
      cf     

  java.lang.String resolveMember(com.sun.tools.classfile.ClassFile, java.lang.String, java.lang.String, java.lang.String, boolean, boolean);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=5, locals=11, args_size=7
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
        start local 2 // java.lang.String startClassName
        start local 3 // java.lang.String findName
        start local 4 // java.lang.String findDesc
        start local 5 // boolean resolveMethod
        start local 6 // boolean checkStartClass
         0: .line 326
            aload 1 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aload 2 /* startClassName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 327
            aload 1 /* cf */
            astore 7 /* startClass */
        start local 7 // com.sun.tools.classfile.ClassFile startClass
         2: .line 328
            goto 7
        end local 7 // com.sun.tools.classfile.ClassFile startClass
         3: .line 329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.finder:Lcom/sun/tools/jdeprscan/scan/ClassFinder;
            aload 2 /* startClassName */
            invokevirtual com.sun.tools.jdeprscan.scan.ClassFinder.find:(Ljava/lang/String;)Lcom/sun/tools/classfile/ClassFile;
            astore 7 /* startClass */
        start local 7 // com.sun.tools.classfile.ClassFile startClass
         4: .line 330
            aload 7 /* startClass */
            ifnonnull 7
         5: .line 331
            aload 0 /* this */
            aload 2 /* startClassName */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorNoClass:(Ljava/lang/String;)V
         6: .line 332
            aload 2 /* startClassName */
            areturn
         7: .line 339
      StackMap locals: com.sun.tools.classfile.ClassFile
      StackMap stack:
            aload 7 /* startClass */
            astore 8 /* curClass */
        start local 8 // com.sun.tools.classfile.ClassFile curClass
         8: .line 340
            new java.util.ArrayDeque
            dup
            invokespecial java.util.ArrayDeque.<init>:()V
            astore 9 /* intfs */
        start local 9 // java.util.Deque intfs
         9: .line 342
      StackMap locals: com.sun.tools.classfile.ClassFile java.util.Deque
      StackMap stack:
            iload 6 /* checkStartClass */
            ifne 10
            aload 8 /* curClass */
            aload 7 /* startClass */
            if_acmpeq 12
        10: .line 343
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 8 /* curClass */
            aload 3 /* findName */
            aload 4 /* findDesc */
            iload 5 /* resolveMethod */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.isMemberPresent:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)Z
            ifeq 12
        11: .line 344
            goto 22
        12: .line 347
      StackMap locals:
      StackMap stack:
            aload 8 /* curClass */
            getfield com.sun.tools.classfile.ClassFile.super_class:I
            ifne 15
        13: .line 348
            aconst_null
            astore 8 /* curClass */
        14: .line 349
            goto 22
        15: .line 352
      StackMap locals:
      StackMap stack:
            aload 8 /* curClass */
            invokevirtual com.sun.tools.classfile.ClassFile.getSuperclassName:()Ljava/lang/String;
            astore 10 /* superName */
        start local 10 // java.lang.String superName
        16: .line 353
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.finder:Lcom/sun/tools/jdeprscan/scan/ClassFinder;
            aload 10 /* superName */
            invokevirtual com.sun.tools.jdeprscan.scan.ClassFinder.find:(Ljava/lang/String;)Lcom/sun/tools/classfile/ClassFile;
            astore 8 /* curClass */
        17: .line 354
            aload 8 /* curClass */
            ifnonnull 20
        18: .line 355
            aload 0 /* this */
            aload 10 /* superName */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorNoClass:(Ljava/lang/String;)V
        19: .line 356
            goto 22
        20: .line 358
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 9 /* intfs */
            aload 8 /* curClass */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.addInterfaces:(Ljava/util/Deque;Lcom/sun/tools/classfile/ClassFile;)V
        end local 10 // java.lang.String superName
        21: .line 341
            goto 9
        22: .line 364
      StackMap locals:
      StackMap stack:
            aload 8 /* curClass */
            ifnonnull 34
        23: .line 365
            aload 0 /* this */
            aload 9 /* intfs */
            aload 7 /* startClass */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.addInterfaces:(Ljava/util/Deque;Lcom/sun/tools/classfile/ClassFile;)V
        24: .line 366
            goto 33
        25: .line 367
      StackMap locals:
      StackMap stack:
            aload 9 /* intfs */
            invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 10 /* intf */
        start local 10 // java.lang.String intf
        26: .line 368
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.finder:Lcom/sun/tools/jdeprscan/scan/ClassFinder;
            aload 10 /* intf */
            invokevirtual com.sun.tools.jdeprscan.scan.ClassFinder.find:(Ljava/lang/String;)Lcom/sun/tools/classfile/ClassFile;
            astore 8 /* curClass */
        27: .line 369
            aload 8 /* curClass */
            ifnonnull 30
        28: .line 370
            aload 0 /* this */
            aload 10 /* intf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorNoClass:(Ljava/lang/String;)V
        29: .line 371
            goto 34
        30: .line 374
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 8 /* curClass */
            aload 3 /* findName */
            aload 4 /* findDesc */
            iload 5 /* resolveMethod */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.isMemberPresent:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)Z
            ifeq 32
        31: .line 375
            goto 34
        32: .line 378
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 9 /* intfs */
            aload 8 /* curClass */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.addInterfaces:(Ljava/util/Deque;Lcom/sun/tools/classfile/ClassFile;)V
        end local 10 // java.lang.String intf
        33: .line 366
      StackMap locals:
      StackMap stack:
            aload 9 /* intfs */
            invokeinterface java.util.Deque.size:()I
            ifgt 25
        34: .line 382
      StackMap locals:
      StackMap stack:
            aload 8 /* curClass */
            ifnonnull 39
        35: .line 383
            iload 6 /* checkStartClass */
            ifeq 38
        36: .line 384
            aload 0 /* this */
            aload 2 /* startClassName */
            aload 3 /* findName */
            aload 4 /* findDesc */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorNoMethod:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        37: .line 385
            aload 2 /* startClassName */
            areturn
        38: .line 391
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        39: .line 394
      StackMap locals:
      StackMap stack:
            aload 8 /* curClass */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            astore 10 /* foundClassName */
        start local 10 // java.lang.String foundClassName
        40: .line 395
            aload 10 /* foundClassName */
            areturn
        end local 10 // java.lang.String foundClassName
        end local 9 // java.util.Deque intfs
        end local 8 // com.sun.tools.classfile.ClassFile curClass
        end local 7 // com.sun.tools.classfile.ClassFile startClass
        end local 6 // boolean checkStartClass
        end local 5 // boolean resolveMethod
        end local 4 // java.lang.String findDesc
        end local 3 // java.lang.String findName
        end local 2 // java.lang.String startClassName
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   41     0             this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   41     1               cf  Lcom/sun/tools/classfile/ClassFile;
            0   41     2   startClassName  Ljava/lang/String;
            0   41     3         findName  Ljava/lang/String;
            0   41     4         findDesc  Ljava/lang/String;
            0   41     5    resolveMethod  Z
            0   41     6  checkStartClass  Z
            2    3     7       startClass  Lcom/sun/tools/classfile/ClassFile;
            4   41     7       startClass  Lcom/sun/tools/classfile/ClassFile;
            8   41     8         curClass  Lcom/sun/tools/classfile/ClassFile;
            9   41     9            intfs  Ljava/util/Deque<Ljava/lang/String;>;
           16   21    10        superName  Ljava/lang/String;
           26   33    10             intf  Ljava/lang/String;
           40   41    10   foundClassName  Ljava/lang/String;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
                 Name  Flags
      cf               
      startClassName   
      findName         
      findDesc         
      resolveMethod    
      checkStartClass  

  void checkSuper(com.sun.tools.classfile.ClassFile);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
         0: .line 406
            aload 1 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getSuperclassName:()Ljava/lang/String;
            astore 2 /* sname */
        start local 2 // java.lang.String sname
         1: .line 407
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
            aload 2 /* sname */
            invokevirtual com.sun.tools.jdeprscan.DeprDB.getTypeDeprecated:(Ljava/lang/String;)Lcom/sun/tools/jdeprscan/DeprData;
            astore 3 /* dd */
        start local 3 // com.sun.tools.jdeprscan.DeprData dd
         2: .line 408
            aload 3 /* dd */
            ifnull 4
         3: .line 409
            aload 0 /* this */
            ldc "scan.out.extends"
            aload 1 /* cf */
            aload 2 /* sname */
            aload 3 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.printType:(Ljava/lang/String;Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Z)V
         4: .line 411
      StackMap locals: java.lang.String com.sun.tools.jdeprscan.DeprData
      StackMap stack:
            return
        end local 3 // com.sun.tools.jdeprscan.DeprData dd
        end local 2 // java.lang.String sname
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    5     1     cf  Lcom/sun/tools/classfile/ClassFile;
            1    5     2  sname  Ljava/lang/String;
            2    5     3     dd  Lcom/sun/tools/jdeprscan/DeprData;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
      Name  Flags
      cf    

  void checkInterfaces(com.sun.tools.classfile.ClassFile);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
         0: .line 420
            aload 1 /* cf */
            getfield com.sun.tools.classfile.ClassFile.interfaces:[I
            arraylength
            istore 2 /* ni */
        start local 2 // int ni
         1: .line 421
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 8
         3: .line 422
      StackMap locals: int int
      StackMap stack:
            aload 1 /* cf */
            iload 3 /* i */
            invokevirtual com.sun.tools.classfile.ClassFile.getInterfaceName:(I)Ljava/lang/String;
            astore 4 /* iname */
        start local 4 // java.lang.String iname
         4: .line 423
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
            aload 4 /* iname */
            invokevirtual com.sun.tools.jdeprscan.DeprDB.getTypeDeprecated:(Ljava/lang/String;)Lcom/sun/tools/jdeprscan/DeprData;
            astore 5 /* dd */
        start local 5 // com.sun.tools.jdeprscan.DeprData dd
         5: .line 424
            aload 5 /* dd */
            ifnull 7
         6: .line 425
            aload 0 /* this */
            ldc "scan.out.implements"
            aload 1 /* cf */
            aload 4 /* iname */
            aload 5 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.printType:(Ljava/lang/String;Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Z)V
        end local 5 // com.sun.tools.jdeprscan.DeprData dd
        end local 4 // java.lang.String iname
         7: .line 421
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            iload 2 /* ni */
            if_icmplt 3
        end local 3 // int i
         9: .line 428
            return
        end local 2 // int ni
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   10     1     cf  Lcom/sun/tools/classfile/ClassFile;
            1   10     2     ni  I
            2    9     3      i  I
            4    7     4  iname  Ljava/lang/String;
            5    7     5     dd  Lcom/sun/tools/jdeprscan/DeprData;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
      Name  Flags
      cf    

  void checkClasses(com.sun.tools.classfile.ClassFile, com.sun.tools.jdeprscan.scan.CPEntries);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;Lcom/sun/tools/jdeprscan/scan/CPEntries;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
        start local 2 // com.sun.tools.jdeprscan.scan.CPEntries entries
         0: .line 438
            aload 2 /* entries */
            getfield com.sun.tools.jdeprscan.scan.CPEntries.classes:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 7
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile com.sun.tools.jdeprscan.scan.CPEntries top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.classfile.ConstantPool$CONSTANT_Class_info
            astore 3 /* ci */
        start local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_Class_info ci
         2: .line 439
            aload 0 /* this */
            aload 3 /* ci */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_Class_info.getName:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.nameFromRefType:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         3: .line 440
            aload 5 /* name */
            ifnull 7
         4: .line 441
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
            aload 5 /* name */
            invokevirtual com.sun.tools.jdeprscan.DeprDB.getTypeDeprecated:(Ljava/lang/String;)Lcom/sun/tools/jdeprscan/DeprData;
            astore 6 /* dd */
        start local 6 // com.sun.tools.jdeprscan.DeprData dd
         5: .line 442
            aload 6 /* dd */
            ifnull 7
         6: .line 443
            aload 0 /* this */
            ldc "scan.out.usesclass"
            aload 1 /* cf */
            aload 5 /* name */
            aload 6 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.printType:(Ljava/lang/String;Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Z)V
        end local 6 // com.sun.tools.jdeprscan.DeprData dd
        end local 5 // java.lang.String name
        end local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_Class_info ci
         7: .line 438
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         8: .line 447
            return
        end local 2 // com.sun.tools.jdeprscan.scan.CPEntries entries
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    9     1       cf  Lcom/sun/tools/classfile/ClassFile;
            0    9     2  entries  Lcom/sun/tools/jdeprscan/scan/CPEntries;
            2    7     3       ci  Lcom/sun/tools/classfile/ConstantPool$CONSTANT_Class_info;
            3    7     5     name  Ljava/lang/String;
            5    7     6       dd  Lcom/sun/tools/jdeprscan/DeprData;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
         Name  Flags
      cf       
      entries  

  void checkMethodRef(com.sun.tools.classfile.ClassFile, java.lang.String, com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info, java.lang.String);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=8, args_size=5
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
        start local 2 // java.lang.String clname
        start local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info nti
        start local 4 // java.lang.String msgKey
         0: .line 462
            aload 3 /* nti */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info.getName:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         1: .line 463
            aload 3 /* nti */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info.getType:()Ljava/lang/String;
            astore 6 /* type */
        start local 6 // java.lang.String type
         2: .line 464
            aload 0 /* this */
            aload 2 /* clname */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.nameFromRefType:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* clname */
         3: .line 465
            aload 2 /* clname */
            ifnull 8
         4: .line 466
            aload 0 /* this */
            aload 1 /* cf */
            aload 2 /* clname */
            aload 5 /* name */
            aload 6 /* type */
            iconst_1
            iconst_1
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.resolveMember:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
            astore 2 /* clname */
         5: .line 467
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
            aload 2 /* clname */
            aload 5 /* name */
            aload 6 /* type */
            invokevirtual com.sun.tools.jdeprscan.DeprDB.getMethodDeprecated:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/tools/jdeprscan/DeprData;
            astore 7 /* dd */
        start local 7 // com.sun.tools.jdeprscan.DeprData dd
         6: .line 468
            aload 7 /* dd */
            ifnull 8
         7: .line 469
            aload 0 /* this */
            aload 4 /* msgKey */
            aload 1 /* cf */
            aload 2 /* clname */
            aload 5 /* name */
            aload 6 /* type */
            aload 7 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.printMethod:(Ljava/lang/String;Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        end local 7 // com.sun.tools.jdeprscan.DeprData dd
         8: .line 472
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            return
        end local 6 // java.lang.String type
        end local 5 // java.lang.String name
        end local 4 // java.lang.String msgKey
        end local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info nti
        end local 2 // java.lang.String clname
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    9     1      cf  Lcom/sun/tools/classfile/ClassFile;
            0    9     2  clname  Ljava/lang/String;
            0    9     3     nti  Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;
            0    9     4  msgKey  Ljava/lang/String;
            1    9     5    name  Ljava/lang/String;
            2    9     6    type  Ljava/lang/String;
            6    8     7      dd  Lcom/sun/tools/jdeprscan/DeprData;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
        Name  Flags
      cf      
      clname  
      nti     
      msgKey  

  void checkFieldRef(com.sun.tools.classfile.ClassFile, com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;Lcom/sun/tools/classfile/ConstantPool$CONSTANT_Fieldref_info;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=8, args_size=3
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
        start local 2 // com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info fri
         0: .line 482
            aload 0 /* this */
            aload 2 /* fri */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info.getClassName:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.nameFromRefType:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* clname */
        start local 3 // java.lang.String clname
         1: .line 483
            aload 2 /* fri */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info.getNameAndTypeInfo:()Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;
            astore 4 /* nti */
        start local 4 // com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info nti
         2: .line 484
            aload 4 /* nti */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info.getName:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         3: .line 485
            aload 4 /* nti */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info.getType:()Ljava/lang/String;
            astore 6 /* type */
        start local 6 // java.lang.String type
         4: .line 487
            aload 3 /* clname */
            ifnull 9
         5: .line 488
            aload 0 /* this */
            aload 1 /* cf */
            aload 3 /* clname */
            aload 5 /* name */
            aload 6 /* type */
            iconst_0
            iconst_1
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.resolveMember:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
            astore 3 /* clname */
         6: .line 489
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
            aload 3 /* clname */
            aload 5 /* name */
            invokevirtual com.sun.tools.jdeprscan.DeprDB.getFieldDeprecated:(Ljava/lang/String;Ljava/lang/String;)Lcom/sun/tools/jdeprscan/DeprData;
            astore 7 /* dd */
        start local 7 // com.sun.tools.jdeprscan.DeprData dd
         7: .line 490
            aload 7 /* dd */
            ifnull 9
         8: .line 491
            aload 0 /* this */
            ldc "scan.out.usesfield"
            aload 1 /* cf */
            aload 3 /* clname */
            aload 5 /* name */
            aload 7 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.printField:(Ljava/lang/String;Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)V
        end local 7 // com.sun.tools.jdeprscan.DeprData dd
         9: .line 494
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info java.lang.String com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info java.lang.String java.lang.String
      StackMap stack:
            return
        end local 6 // java.lang.String type
        end local 5 // java.lang.String name
        end local 4 // com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info nti
        end local 3 // java.lang.String clname
        end local 2 // com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info fri
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   10     1      cf  Lcom/sun/tools/classfile/ClassFile;
            0   10     2     fri  Lcom/sun/tools/classfile/ConstantPool$CONSTANT_Fieldref_info;
            1   10     3  clname  Ljava/lang/String;
            2   10     4     nti  Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;
            3   10     5    name  Ljava/lang/String;
            4   10     6    type  Ljava/lang/String;
            7    9     7      dd  Lcom/sun/tools/jdeprscan/DeprData;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
      Name  Flags
      cf    
      fri   

  void checkFields(com.sun.tools.classfile.ClassFile);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
         0: .line 503
            aload 1 /* cf */
            getfield com.sun.tools.classfile.ClassFile.fields:[Lcom/sun/tools/classfile/Field;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 8
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile top int int com.sun.tools.classfile.Field[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* f */
        start local 2 // com.sun.tools.classfile.Field f
         2: .line 504
            aload 0 /* this */
            aload 1 /* cf */
            getfield com.sun.tools.classfile.ClassFile.constant_pool:Lcom/sun/tools/classfile/ConstantPool;
            aload 2 /* f */
            getfield com.sun.tools.classfile.Field.descriptor:Lcom/sun/tools/classfile/Descriptor;
            getfield com.sun.tools.classfile.Descriptor.index:I
            invokevirtual com.sun.tools.classfile.ConstantPool.getUTF8Value:(I)Ljava/lang/String;
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.nameFromDescType:(Ljava/lang/String;)Ljava/lang/String;
            astore 6 /* type */
        start local 6 // java.lang.String type
         3: .line 505
            aload 6 /* type */
            ifnull 7
         4: .line 506
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
            aload 6 /* type */
            invokevirtual com.sun.tools.jdeprscan.DeprDB.getTypeDeprecated:(Ljava/lang/String;)Lcom/sun/tools/jdeprscan/DeprData;
            astore 7 /* dd */
        start local 7 // com.sun.tools.jdeprscan.DeprData dd
         5: .line 507
            aload 7 /* dd */
            ifnull 7
         6: .line 508
            aload 0 /* this */
            aload 1 /* cf */
            aload 2 /* f */
            aload 1 /* cf */
            getfield com.sun.tools.classfile.ClassFile.constant_pool:Lcom/sun/tools/classfile/ConstantPool;
            invokevirtual com.sun.tools.classfile.Field.getName:(Lcom/sun/tools/classfile/ConstantPool;)Ljava/lang/String;
            aload 6 /* type */
            aload 7 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.printHasField:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)V
        end local 7 // com.sun.tools.jdeprscan.DeprData dd
        end local 6 // java.lang.String type
        end local 2 // com.sun.tools.classfile.Field f
         7: .line 503
      StackMap locals:
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         8: iload 3
            iload 4
            if_icmplt 1
         9: .line 512
            return
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   10     1    cf  Lcom/sun/tools/classfile/ClassFile;
            2    7     2     f  Lcom/sun/tools/classfile/Field;
            3    7     6  type  Ljava/lang/String;
            5    7     7    dd  Lcom/sun/tools/jdeprscan/DeprData;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
      Name  Flags
      cf    

  void checkMethods(com.sun.tools.classfile.ClassFile);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=12, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
         0: .line 521
            aload 1 /* cf */
            getfield com.sun.tools.classfile.ClassFile.methods:[Lcom/sun/tools/classfile/Method;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 24
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile top int int com.sun.tools.classfile.Method[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* m */
        start local 2 // com.sun.tools.classfile.Method m
         2: .line 522
            aload 2 /* m */
            aload 1 /* cf */
            getfield com.sun.tools.classfile.ClassFile.constant_pool:Lcom/sun/tools/classfile/ConstantPool;
            invokevirtual com.sun.tools.classfile.Method.getName:(Lcom/sun/tools/classfile/ConstantPool;)Ljava/lang/String;
            astore 6 /* mname */
        start local 6 // java.lang.String mname
         3: .line 523
            aload 1 /* cf */
            getfield com.sun.tools.classfile.ClassFile.constant_pool:Lcom/sun/tools/classfile/ConstantPool;
            aload 2 /* m */
            getfield com.sun.tools.classfile.Method.descriptor:Lcom/sun/tools/classfile/Descriptor;
            getfield com.sun.tools.classfile.Descriptor.index:I
            invokevirtual com.sun.tools.classfile.ConstantPool.getUTF8Value:(I)Ljava/lang/String;
            astore 7 /* desc */
        start local 7 // java.lang.String desc
         4: .line 524
            aload 7 /* desc */
            invokestatic com.sun.tools.jdeprscan.scan.MethodSig.fromDesc:(Ljava/lang/String;)Lcom/sun/tools/jdeprscan/scan/MethodSig;
            astore 8 /* sig */
        start local 8 // com.sun.tools.jdeprscan.scan.MethodSig sig
         5: .line 527
            aload 8 /* sig */
            invokevirtual com.sun.tools.jdeprscan.scan.MethodSig.getParameters:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 12
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile com.sun.tools.classfile.Method int int com.sun.tools.classfile.Method[] java.lang.String java.lang.String com.sun.tools.jdeprscan.scan.MethodSig top top java.util.Iterator
      StackMap stack:
         6: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 10 /* parm */
        start local 10 // java.lang.String parm
         7: .line 528
            aload 0 /* this */
            aload 10 /* parm */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.nameFromDescType:(Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* parm */
         8: .line 529
            aload 10 /* parm */
            ifnull 12
         9: .line 530
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
            aload 10 /* parm */
            invokevirtual com.sun.tools.jdeprscan.DeprDB.getTypeDeprecated:(Ljava/lang/String;)Lcom/sun/tools/jdeprscan/DeprData;
            astore 9 /* dd */
        start local 9 // com.sun.tools.jdeprscan.DeprData dd
        10: .line 531
            aload 9 /* dd */
            ifnull 12
        11: .line 532
            aload 0 /* this */
            aload 1 /* cf */
            aload 6 /* mname */
            aload 10 /* parm */
            aload 9 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.printHasMethodParmType:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)V
        end local 10 // java.lang.String parm
        end local 9 // com.sun.tools.jdeprscan.DeprData dd
        12: .line 527
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        13: .line 537
            aload 0 /* this */
            aload 8 /* sig */
            invokevirtual com.sun.tools.jdeprscan.scan.MethodSig.getReturnType:()Ljava/lang/String;
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.nameFromDescType:(Ljava/lang/String;)Ljava/lang/String;
            astore 10 /* ret */
        start local 10 // java.lang.String ret
        14: .line 538
            aload 10 /* ret */
            ifnull 18
        15: .line 539
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
            aload 10 /* ret */
            invokevirtual com.sun.tools.jdeprscan.DeprDB.getTypeDeprecated:(Ljava/lang/String;)Lcom/sun/tools/jdeprscan/DeprData;
            astore 9 /* dd */
        start local 9 // com.sun.tools.jdeprscan.DeprData dd
        16: .line 540
            aload 9 /* dd */
            ifnull 18
        17: .line 541
            aload 0 /* this */
            aload 1 /* cf */
            aload 6 /* mname */
            aload 10 /* ret */
            aload 9 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.printHasMethodRetType:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Z)V
        end local 9 // com.sun.tools.jdeprscan.DeprData dd
        18: .line 546
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile com.sun.tools.classfile.Method int int com.sun.tools.classfile.Method[] java.lang.String java.lang.String com.sun.tools.jdeprscan.scan.MethodSig top java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cf */
            aload 1 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            aload 6 /* mname */
            aload 7 /* desc */
            iconst_1
            iconst_0
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.resolveMember:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZ)Ljava/lang/String;
            astore 11 /* overridden */
        start local 11 // java.lang.String overridden
        19: .line 547
            aload 11 /* overridden */
            ifnull 23
        20: .line 548
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.db:Lcom/sun/tools/jdeprscan/DeprDB;
            aload 11 /* overridden */
            aload 6 /* mname */
            aload 7 /* desc */
            invokevirtual com.sun.tools.jdeprscan.DeprDB.getMethodDeprecated:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/sun/tools/jdeprscan/DeprData;
            astore 9 /* dd */
        start local 9 // com.sun.tools.jdeprscan.DeprData dd
        21: .line 549
            aload 9 /* dd */
            ifnull 23
        22: .line 550
            aload 0 /* this */
            aload 1 /* cf */
            aload 11 /* overridden */
            aload 6 /* mname */
            aload 7 /* desc */
            aload 9 /* dd */
            invokevirtual com.sun.tools.jdeprscan.DeprData.isForRemoval:()Z
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.printHasOverriddenMethod:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        end local 11 // java.lang.String overridden
        end local 10 // java.lang.String ret
        end local 9 // com.sun.tools.jdeprscan.DeprData dd
        end local 8 // com.sun.tools.jdeprscan.scan.MethodSig sig
        end local 7 // java.lang.String desc
        end local 6 // java.lang.String mname
        end local 2 // com.sun.tools.classfile.Method m
        23: .line 521
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile top int int com.sun.tools.classfile.Method[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
        24: iload 3
            iload 4
            if_icmplt 1
        25: .line 554
            return
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   26     0        this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   26     1          cf  Lcom/sun/tools/classfile/ClassFile;
            2   23     2           m  Lcom/sun/tools/classfile/Method;
            3   23     6       mname  Ljava/lang/String;
            4   23     7        desc  Ljava/lang/String;
            5   23     8         sig  Lcom/sun/tools/jdeprscan/scan/MethodSig;
           10   12     9          dd  Lcom/sun/tools/jdeprscan/DeprData;
           16   18     9          dd  Lcom/sun/tools/jdeprscan/DeprData;
           21   23     9          dd  Lcom/sun/tools/jdeprscan/DeprData;
            7   12    10        parm  Ljava/lang/String;
           14   23    10         ret  Ljava/lang/String;
           19   23    11  overridden  Ljava/lang/String;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
      Name  Flags
      cf    

  void processClass(com.sun.tools.classfile.ClassFile);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // com.sun.tools.classfile.ClassFile cf
         0: .line 563
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.verbose:Z
            ifeq 2
         1: .line 564
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            ldc "scan.process.class"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* cf */
            invokevirtual com.sun.tools.classfile.ClassFile.getName:()Ljava/lang/String;
            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
         2: .line 567
      StackMap locals:
      StackMap stack:
            aload 1 /* cf */
            invokestatic com.sun.tools.jdeprscan.scan.CPEntries.loadFrom:(Lcom/sun/tools/classfile/ClassFile;)Lcom/sun/tools/jdeprscan/scan/CPEntries;
            astore 2 /* entries */
        start local 2 // com.sun.tools.jdeprscan.scan.CPEntries entries
         3: .line 569
            aload 0 /* this */
            aload 1 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.checkSuper:(Lcom/sun/tools/classfile/ClassFile;)V
         4: .line 570
            aload 0 /* this */
            aload 1 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.checkInterfaces:(Lcom/sun/tools/classfile/ClassFile;)V
         5: .line 571
            aload 0 /* this */
            aload 1 /* cf */
            aload 2 /* entries */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.checkClasses:(Lcom/sun/tools/classfile/ClassFile;Lcom/sun/tools/jdeprscan/scan/CPEntries;)V
         6: .line 573
            aload 2 /* entries */
            getfield com.sun.tools.jdeprscan.scan.CPEntries.methodRefs:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 11
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan com.sun.tools.classfile.ClassFile com.sun.tools.jdeprscan.scan.CPEntries top java.util.Iterator
      StackMap stack:
         7: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.classfile.ConstantPool$CONSTANT_Methodref_info
            astore 3 /* mri */
        start local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_Methodref_info mri
         8: .line 574
            aload 3 /* mri */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_Methodref_info.getClassName:()Ljava/lang/String;
            astore 5 /* clname */
        start local 5 // java.lang.String clname
         9: .line 575
            aload 3 /* mri */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_Methodref_info.getNameAndTypeInfo:()Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;
            astore 6 /* nti */
        start local 6 // com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info nti
        10: .line 576
            aload 0 /* this */
            aload 1 /* cf */
            aload 5 /* clname */
            aload 6 /* nti */
            ldc "scan.out.usesmethod"
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.checkMethodRef:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;Ljava/lang/String;)V
        end local 6 // com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info nti
        end local 5 // java.lang.String clname
        end local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_Methodref_info mri
        11: .line 573
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        12: .line 579
            aload 2 /* entries */
            getfield com.sun.tools.jdeprscan.scan.CPEntries.intfMethodRefs:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 17
      StackMap locals:
      StackMap stack:
        13: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.classfile.ConstantPool$CONSTANT_InterfaceMethodref_info
            astore 3 /* imri */
        start local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_InterfaceMethodref_info imri
        14: .line 580
            aload 3 /* imri */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_InterfaceMethodref_info.getClassName:()Ljava/lang/String;
            astore 5 /* clname */
        start local 5 // java.lang.String clname
        15: .line 581
            aload 3 /* imri */
            invokevirtual com.sun.tools.classfile.ConstantPool$CONSTANT_InterfaceMethodref_info.getNameAndTypeInfo:()Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;
            astore 6 /* nti */
        start local 6 // com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info nti
        16: .line 582
            aload 0 /* this */
            aload 1 /* cf */
            aload 5 /* clname */
            aload 6 /* nti */
            ldc "scan.out.usesintfmethod"
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.checkMethodRef:(Lcom/sun/tools/classfile/ClassFile;Ljava/lang/String;Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;Ljava/lang/String;)V
        end local 6 // com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info nti
        end local 5 // java.lang.String clname
        end local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_InterfaceMethodref_info imri
        17: .line 579
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        18: .line 585
            aload 2 /* entries */
            getfield com.sun.tools.jdeprscan.scan.CPEntries.fieldRefs:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 21
      StackMap locals:
      StackMap stack:
        19: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info
            astore 3 /* fri */
        start local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info fri
        20: .line 586
            aload 0 /* this */
            aload 1 /* cf */
            aload 3 /* fri */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.checkFieldRef:(Lcom/sun/tools/classfile/ClassFile;Lcom/sun/tools/classfile/ConstantPool$CONSTANT_Fieldref_info;)V
        end local 3 // com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info fri
        21: .line 585
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        22: .line 589
            aload 0 /* this */
            aload 1 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.checkFields:(Lcom/sun/tools/classfile/ClassFile;)V
        23: .line 590
            aload 0 /* this */
            aload 1 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.checkMethods:(Lcom/sun/tools/classfile/ClassFile;)V
        24: .line 591
            return
        end local 2 // com.sun.tools.jdeprscan.scan.CPEntries entries
        end local 1 // com.sun.tools.classfile.ClassFile cf
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   25     0     this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   25     1       cf  Lcom/sun/tools/classfile/ClassFile;
            3   25     2  entries  Lcom/sun/tools/jdeprscan/scan/CPEntries;
            8   11     3      mri  Lcom/sun/tools/classfile/ConstantPool$CONSTANT_Methodref_info;
            9   11     5   clname  Ljava/lang/String;
           10   11     6      nti  Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;
           14   17     3     imri  Lcom/sun/tools/classfile/ConstantPool$CONSTANT_InterfaceMethodref_info;
           15   17     5   clname  Ljava/lang/String;
           16   17     6      nti  Lcom/sun/tools/classfile/ConstantPool$CONSTANT_NameAndType_info;
           20   21     3      fri  Lcom/sun/tools/classfile/ConstantPool$CONSTANT_Fieldref_info;
    Exceptions:
      throws com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
      Name  Flags
      cf    

  public boolean scanJar(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String jarname
         0: .line 600
            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 601
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            ldc "scan.head.jar"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* jarname */
            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
         3: .line 602
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.finder:Lcom/sun/tools/jdeprscan/scan/ClassFinder;
            aload 1 /* jarname */
            invokevirtual com.sun.tools.jdeprscan.scan.ClassFinder.addJar:(Ljava/lang/String;)V
         4: .line 603
            aload 4 /* jf */
            invokevirtual java.util.jar.JarFile.entries:()Ljava/util/Enumeration;
            astore 5 /* entries */
        start local 5 // java.util.Enumeration entries
         5: .line 604
            goto 12
         6: .line 605
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.lang.String java.lang.Throwable java.lang.Throwable java.util.jar.JarFile java.util.Enumeration
      StackMap stack:
            aload 5 /* entries */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.util.jar.JarEntry
            astore 6 /* entry */
        start local 6 // java.util.jar.JarEntry entry
         7: .line 606
            aload 6 /* entry */
            invokevirtual java.util.jar.JarEntry.getName:()Ljava/lang/String;
            astore 7 /* name */
        start local 7 // java.lang.String name
         8: .line 607
            aload 7 /* name */
            ldc ".class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 12
         9: .line 608
            aload 7 /* name */
            ldc "package-info.class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 12
        10: .line 609
            aload 7 /* name */
            ldc "module-info.class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifne 12
        11: .line 610
            aload 0 /* this */
            aload 4 /* jf */
            aload 6 /* entry */
            invokevirtual java.util.jar.JarFile.getInputStream:(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream;
            invokestatic com.sun.tools.classfile.ClassFile.read:(Ljava/io/InputStream;)Lcom/sun/tools/classfile/ClassFile;
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.processClass:(Lcom/sun/tools/classfile/ClassFile;)V
        end local 7 // java.lang.String name
        end local 6 // java.util.jar.JarEntry entry
        12: .line 604
      StackMap locals:
      StackMap stack:
            aload 5 /* entries */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 6
        13: .line 614
            aload 4 /* jf */
            ifnull 14
            aload 4 /* jf */
            invokevirtual java.util.jar.JarFile.close:()V
        14: .line 613
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 5 // java.util.Enumeration entries
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.lang.String java.lang.Throwable java.lang.Throwable java.util.jar.JarFile
      StackMap stack: java.lang.Throwable
        15: astore 2
        16: .line 614
            aload 4 /* jf */
            ifnull 17
            aload 4 /* jf */
            invokevirtual java.util.jar.JarFile.close:()V
        end local 4 // java.util.jar.JarFile jf
      StackMap locals:
      StackMap stack:
        17: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        18: astore 3
            aload 2
            ifnonnull 19
            aload 3
            astore 2
            goto 20
      StackMap locals:
      StackMap stack:
        19: aload 2
            aload 3
            if_acmpeq 20
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        20: aload 2
            athrow
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.lang.String
      StackMap stack: java.nio.file.NoSuchFileException
        21: pop
        22: .line 615
            aload 0 /* this */
            aload 1 /* jarname */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorNoFile:(Ljava/lang/String;)V
            goto 25
        23: .line 616
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 2 /* ex */
        start local 2 // java.lang.Exception ex
        24: .line 617
            aload 0 /* this */
            aload 2 /* ex */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorException:(Ljava/lang/Exception;)V
        end local 2 // java.lang.Exception ex
        25: .line 619
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.String jarname
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   26     0     this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   26     1  jarname  Ljava/lang/String;
            2   17     4       jf  Ljava/util/jar/JarFile;
            5   15     5  entries  Ljava/util/Enumeration<Ljava/util/jar/JarEntry;>;
            7   12     6    entry  Ljava/util/jar/JarEntry;
            8   12     7     name  Ljava/lang/String;
           24   25     2       ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2    13      15  any
           1    14      18  any
          15    18      18  any
           0    14      21  Class java.nio.file.NoSuchFileException
          15    21      21  Class java.nio.file.NoSuchFileException
           0    14      23  Class java.io.IOException
          15    21      23  Class java.io.IOException
           0    14      23  Class com.sun.tools.classfile.ConstantPoolException
          15    21      23  Class com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
         Name  Flags
      jarname  

  public boolean scanDir(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String dirname
         0: .line 629
            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 2 /* base */
        start local 2 // java.nio.file.Path base
         1: .line 630
            aload 2 /* base */
            invokeinterface java.nio.file.Path.getNameCount:()I
            istore 3 /* baseCount */
        start local 3 // int baseCount
         2: .line 631
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.finder:Lcom/sun/tools/jdeprscan/scan/ClassFinder;
            aload 1 /* dirname */
            invokevirtual com.sun.tools.jdeprscan.scan.ClassFinder.addDir:(Ljava/lang/String;)V
         3: .line 632
            aconst_null
            astore 4
            aconst_null
            astore 5
         4: 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.FileVisitOption
            invokestatic java.nio.file.Files.walk:(Ljava/nio/file/Path;[Ljava/nio/file/FileVisitOption;)Ljava/util/stream/Stream;
            astore 6 /* paths */
        start local 6 // java.util.stream.Stream paths
         5: .line 634
            aload 6 /* paths */
            iload 3 /* 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/scan/Scan.lambda$0(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;
         6: .line 635
            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/scan/Scan.lambda$1(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;
         7: .line 636
            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/scan/Scan.lambda$2(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;
         8: .line 637
            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/scan/Scan.lambda$3(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 638
            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
        10: .line 633
            astore 7 /* classes */
        start local 7 // java.util.List classes
        11: .line 640
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.out:Ljava/io/PrintStream;
            ldc "scan.head.dir"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* dirname */
            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
        12: .line 642
            aload 7 /* classes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 15
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.lang.String java.nio.file.Path int java.lang.Throwable java.lang.Throwable java.util.stream.Stream java.util.List top java.util.Iterator
      StackMap stack:
        13: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.nio.file.Path
            astore 8 /* p */
        start local 8 // java.nio.file.Path p
        14: .line 643
            aload 0 /* this */
            aload 8 /* p */
            invokestatic com.sun.tools.classfile.ClassFile.read:(Ljava/nio/file/Path;)Lcom/sun/tools/classfile/ClassFile;
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.processClass:(Lcom/sun/tools/classfile/ClassFile;)V
        end local 8 // java.nio.file.Path p
        15: .line 642
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        16: .line 646
            aload 6 /* paths */
            ifnull 17
            aload 6 /* paths */
            invokeinterface java.util.stream.Stream.close:()V
        17: .line 645
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.lang.String java.nio.file.Path int java.lang.Throwable java.lang.Throwable java.util.stream.Stream java.util.List
      StackMap stack:
            iconst_1
            ireturn
        end local 7 // java.util.List classes
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.lang.String java.nio.file.Path int java.lang.Throwable java.lang.Throwable java.util.stream.Stream
      StackMap stack: java.lang.Throwable
        18: astore 4
        19: .line 646
            aload 6 /* paths */
            ifnull 20
            aload 6 /* paths */
            invokeinterface java.util.stream.Stream.close:()V
        end local 6 // java.util.stream.Stream paths
      StackMap locals:
      StackMap stack:
        20: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: astore 5
            aload 4
            ifnonnull 22
            aload 5
            astore 4
            goto 23
      StackMap locals:
      StackMap stack:
        22: aload 4
            aload 5
            if_acmpeq 23
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        23: aload 4
            athrow
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.lang.String java.nio.file.Path int
      StackMap stack: java.lang.Exception
        24: astore 4 /* ex */
        start local 4 // java.lang.Exception ex
        25: .line 647
            aload 0 /* this */
            aload 4 /* ex */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorException:(Ljava/lang/Exception;)V
        26: .line 648
            iconst_0
            ireturn
        end local 4 // java.lang.Exception ex
        end local 3 // int baseCount
        end local 2 // java.nio.file.Path base
        end local 1 // java.lang.String dirname
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0       this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0   27     1    dirname  Ljava/lang/String;
            1   27     2       base  Ljava/nio/file/Path;
            2   27     3  baseCount  I
            5   20     6      paths  Ljava/util/stream/Stream<Ljava/nio/file/Path;>;
           11   18     7    classes  Ljava/util/List<Ljava/nio/file/Path;>;
           14   15     8          p  Ljava/nio/file/Path;
           25   27     4         ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5    16      18  any
           4    17      21  any
          18    21      21  any
           3    17      24  Class java.io.IOException
          18    24      24  Class java.io.IOException
           3    17      24  Class com.sun.tools.classfile.ConstantPoolException
          18    24      24  Class com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
         Name  Flags
      dirname  

  public boolean processClassName(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String className
         0: .line 660
            aload 0 /* this */
            getfield com.sun.tools.jdeprscan.scan.Scan.finder:Lcom/sun/tools/jdeprscan/scan/ClassFinder;
            aload 1 /* className */
            invokevirtual com.sun.tools.jdeprscan.scan.ClassFinder.find:(Ljava/lang/String;)Lcom/sun/tools/classfile/ClassFile;
            astore 2 /* cf */
        start local 2 // com.sun.tools.classfile.ClassFile cf
         1: .line 661
            aload 2 /* cf */
            ifnonnull 4
         2: .line 662
            aload 0 /* this */
            aload 1 /* className */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorNoClass:(Ljava/lang/String;)V
         3: .line 663
            iconst_0
            ireturn
         4: .line 665
      StackMap locals: com.sun.tools.classfile.ClassFile
      StackMap stack:
            aload 0 /* this */
            aload 2 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.processClass:(Lcom/sun/tools/classfile/ClassFile;)V
         5: .line 666
            iconst_1
            ireturn
        end local 2 // com.sun.tools.classfile.ClassFile cf
         6: .line 668
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.lang.String
      StackMap stack: com.sun.tools.classfile.ConstantPoolException
            astore 2 /* ex */
        start local 2 // com.sun.tools.classfile.ConstantPoolException ex
         7: .line 669
            aload 0 /* this */
            aload 2 /* ex */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorException:(Ljava/lang/Exception;)V
         8: .line 670
            iconst_0
            ireturn
        end local 2 // com.sun.tools.classfile.ConstantPoolException ex
        end local 1 // java.lang.String className
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    9     1  className  Ljava/lang/String;
            1    6     2         cf  Lcom/sun/tools/classfile/ClassFile;
            7    9     2         ex  Lcom/sun/tools/classfile/ConstantPoolException;
      Exception table:
        from    to  target  type
           0     3       6  Class com.sun.tools.classfile.ConstantPoolException
           4     5       6  Class com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
           Name  Flags
      className  

  public boolean processClassFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.sun.tools.jdeprscan.scan.Scan this
        start local 1 // java.lang.String fileName
         0: .line 681
            aload 1 /* fileName */
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            astore 2 /* path */
        start local 2 // java.nio.file.Path path
         1: .line 683
            aload 2 /* path */
            invokestatic com.sun.tools.classfile.ClassFile.read:(Ljava/nio/file/Path;)Lcom/sun/tools/classfile/ClassFile;
            astore 3 /* cf */
        start local 3 // com.sun.tools.classfile.ClassFile cf
         2: .line 684
            aload 0 /* this */
            aload 3 /* cf */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.processClass:(Lcom/sun/tools/classfile/ClassFile;)V
         3: .line 685
            iconst_1
            ireturn
        end local 3 // com.sun.tools.classfile.ClassFile cf
         4: .line 686
      StackMap locals: com.sun.tools.jdeprscan.scan.Scan java.lang.String java.nio.file.Path
      StackMap stack: java.nio.file.NoSuchFileException
            pop
         5: .line 687
            aload 0 /* this */
            aload 1 /* fileName */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorNoFile:(Ljava/lang/String;)V
            goto 8
         6: .line 688
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 3 /* ex */
        start local 3 // java.lang.Exception ex
         7: .line 689
            aload 0 /* this */
            aload 3 /* ex */
            invokevirtual com.sun.tools.jdeprscan.scan.Scan.errorException:(Ljava/lang/Exception;)V
        end local 3 // java.lang.Exception ex
         8: .line 691
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.nio.file.Path path
        end local 1 // java.lang.String fileName
        end local 0 // com.sun.tools.jdeprscan.scan.Scan this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/sun/tools/jdeprscan/scan/Scan;
            0    9     1  fileName  Ljava/lang/String;
            1    9     2      path  Ljava/nio/file/Path;
            2    4     3        cf  Lcom/sun/tools/classfile/ClassFile;
            7    8     3        ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     3       4  Class java.nio.file.NoSuchFileException
           1     3       6  Class java.io.IOException
           1     3       6  Class com.sun.tools.classfile.ConstantPoolException
    MethodParameters:
          Name  Flags
      fileName  

  private static boolean lambda$0(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 634
            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 boolean lambda$1(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 path
         0: .line 635
            aload 0 /* path */
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            ldc ".class"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ireturn
        end local 0 // java.nio.file.Path path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  path  Ljava/nio/file/Path;

  private static boolean lambda$2(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 path
         0: .line 636
            aload 0 /* path */
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            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.nio.file.Path path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  path  Ljava/nio/file/Path;

  private static boolean lambda$3(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 path
         0: .line 637
            aload 0 /* path */
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            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.nio.file.Path path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  path  Ljava/nio/file/Path;
}
SourceFile: "Scan.java"
InnerClasses:
  public CONSTANT_Class_info = com.sun.tools.classfile.ConstantPool$CONSTANT_Class_info of com.sun.tools.classfile.ConstantPool
  public CONSTANT_Fieldref_info = com.sun.tools.classfile.ConstantPool$CONSTANT_Fieldref_info of com.sun.tools.classfile.ConstantPool
  public CONSTANT_InterfaceMethodref_info = com.sun.tools.classfile.ConstantPool$CONSTANT_InterfaceMethodref_info of com.sun.tools.classfile.ConstantPool
  public CONSTANT_Methodref_info = com.sun.tools.classfile.ConstantPool$CONSTANT_Methodref_info of com.sun.tools.classfile.ConstantPool
  public CONSTANT_NameAndType_info = com.sun.tools.classfile.ConstantPool$CONSTANT_NameAndType_info of com.sun.tools.classfile.ConstantPool
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles