public class org.reflections.Reflections
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.reflections.Reflections
  super_class: java.lang.Object
{
  public static org.slf4j.Logger log;
    descriptor: Lorg/slf4j/Logger;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC

  protected final transient org.reflections.Configuration configuration;
    descriptor: Lorg/reflections/Configuration;
    flags: (0x0094) ACC_PROTECTED, ACC_FINAL, ACC_TRANSIENT

  protected org.reflections.Store store;
    descriptor: Lorg/reflections/Store;
    flags: (0x0004) ACC_PROTECTED

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 118
            ldc Lorg/reflections/Reflections;
            invokestatic org.reflections.util.Utils.findLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
            putstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.reflections.Configuration);
    descriptor: (Lorg/reflections/Configuration;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // org.reflections.Configuration configuration
         0: .line 127
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 128
            aload 0 /* this */
            aload 1 /* configuration */
            putfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
         2: .line 129
            aload 0 /* this */
            new org.reflections.Store
            dup
            invokespecial org.reflections.Store.<init>:()V
            putfield org.reflections.Reflections.store:Lorg/reflections/Store;
         3: .line 131
            aload 1 /* configuration */
            invokeinterface org.reflections.Configuration.getScanners:()Ljava/util/Set;
            ifnull 11
            aload 1 /* configuration */
            invokeinterface org.reflections.Configuration.getScanners:()Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 11
         4: .line 133
            aload 1 /* configuration */
            invokeinterface org.reflections.Configuration.getScanners:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 7
      StackMap locals: org.reflections.Reflections org.reflections.Configuration top java.util.Iterator
      StackMap stack:
         5: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.reflections.scanners.Scanner
            astore 2 /* scanner */
        start local 2 // org.reflections.scanners.Scanner scanner
         6: .line 134
            aload 2 /* scanner */
            aload 1 /* configuration */
            invokeinterface org.reflections.scanners.Scanner.setConfiguration:(Lorg/reflections/Configuration;)V
        end local 2 // org.reflections.scanners.Scanner scanner
         7: .line 133
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 137
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.scan:()V
         9: .line 139
            aload 1 /* configuration */
            invokeinterface org.reflections.Configuration.shouldExpandSuperTypes:()Z
            ifeq 11
        10: .line 140
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.expandSuperTypes:()V
        11: .line 143
      StackMap locals: org.reflections.Reflections org.reflections.Configuration
      StackMap stack:
            return
        end local 1 // org.reflections.Configuration configuration
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     0           this  Lorg/reflections/Reflections;
            0   12     1  configuration  Lorg/reflections/Configuration;
            6    7     2        scanner  Lorg/reflections/scanners/Scanner;
    MethodParameters:
               Name  Flags
      configuration  final

  public void <init>(java.lang.String, org.reflections.scanners.Scanner[]);
    descriptor: (Ljava/lang/String;[Lorg/reflections/scanners/Scanner;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.String prefix
        start local 2 // org.reflections.scanners.Scanner[] scanners
         0: .line 155
            aload 0 /* this */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* prefix */
            aastore
            dup
            iconst_1
            aload 2 /* scanners */
            aastore
            invokespecial org.reflections.Reflections.<init>:([Ljava/lang/Object;)V
         1: .line 156
            return
        end local 2 // org.reflections.scanners.Scanner[] scanners
        end local 1 // java.lang.String prefix
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/reflections/Reflections;
            0    2     1    prefix  Ljava/lang/String;
            0    2     2  scanners  [Lorg/reflections/scanners/Scanner;
    MethodParameters:
          Name  Flags
      prefix    final
      scanners  final

  public void <init>(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Object[] params
         0: .line 182
            aload 0 /* this */
            aload 1 /* params */
            invokestatic org.reflections.util.ConfigurationBuilder.build:([Ljava/lang/Object;)Lorg/reflections/util/ConfigurationBuilder;
            invokespecial org.reflections.Reflections.<init>:(Lorg/reflections/Configuration;)V
         1: .line 183
            return
        end local 1 // java.lang.Object[] params
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/reflections/Reflections;
            0    2     1  params  [Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      params  final

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.reflections.Reflections this
         0: .line 185
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 186
            aload 0 /* this */
            new org.reflections.util.ConfigurationBuilder
            dup
            invokespecial org.reflections.util.ConfigurationBuilder.<init>:()V
            putfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
         2: .line 187
            aload 0 /* this */
            new org.reflections.Store
            dup
            invokespecial org.reflections.Store.<init>:()V
            putfield org.reflections.Reflections.store:Lorg/reflections/Store;
         3: .line 188
            return
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/reflections/Reflections;

  protected void scan();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=9, args_size=1
        start local 0 // org.reflections.Reflections this
         0: .line 192
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getUrls:()Ljava/util/Set;
            ifnull 1
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getUrls:()Ljava/util/Set;
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 3
         1: .line 193
      StackMap locals:
      StackMap stack:
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 2
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ldc "given scan urls are empty. set urls in the configuration"
            invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;)V
         2: .line 194
      StackMap locals:
      StackMap stack:
            return
         3: .line 197
      StackMap locals:
      StackMap stack:
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 5
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
            ifeq 5
         4: .line 198
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ldc "going to scan these urls: {}"
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getUrls:()Ljava/util/Set;
            invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
         5: .line 201
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 1 /* time */
        start local 1 // long time
         6: .line 202
            iconst_0
            istore 3 /* scannedUrls */
        start local 3 // int scannedUrls
         7: .line 203
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getExecutorService:()Ljava/util/concurrent/ExecutorService;
            astore 4 /* executorService */
        start local 4 // java.util.concurrent.ExecutorService executorService
         8: .line 204
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* futures */
        start local 5 // java.util.List futures
         9: .line 206
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getUrls:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 20
      StackMap locals: org.reflections.Reflections long int java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
      StackMap stack:
        10: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.net.URL
            astore 6 /* url */
        start local 6 // java.net.URL url
        11: .line 208
            aload 4 /* executorService */
            ifnull 14
        12: .line 209
            aload 5 /* futures */
            aload 4 /* executorService */
            aload 0 /* this */
            aload 6 /* url */
            invokedynamic run(Lorg/reflections/Reflections;Ljava/net/URL;)Ljava/lang/Runnable;
              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:
                  ()V
                  org/reflections/Reflections.lambda$0(Ljava/net/URL;)V (7)
                  ()V
            invokeinterface java.util.concurrent.ExecutorService.submit:(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 215
            goto 15
        14: .line 216
      StackMap locals: org.reflections.Reflections long int java.util.concurrent.ExecutorService java.util.List java.net.URL java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            aload 6 /* url */
            invokevirtual org.reflections.Reflections.scan:(Ljava/net/URL;)V
        15: .line 218
      StackMap locals:
      StackMap stack:
            iinc 3 /* scannedUrls */ 1
        16: .line 219
            goto 20
      StackMap locals:
      StackMap stack: org.reflections.ReflectionsException
        17: astore 8 /* e */
        start local 8 // org.reflections.ReflectionsException e
        18: .line 220
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 20
        19: .line 221
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ldc "could not create Vfs.Dir from url. ignoring the exception and continuing"
            aload 8 /* e */
            invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 8 // org.reflections.ReflectionsException e
        end local 6 // java.net.URL url
        20: .line 206
      StackMap locals: org.reflections.Reflections long int java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        21: .line 227
            aload 4 /* executorService */
            ifnull 29
        22: .line 228
            aload 5 /* futures */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 28
      StackMap locals:
      StackMap stack:
        23: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.concurrent.Future
            astore 6 /* future */
        start local 6 // java.util.concurrent.Future future
        24: .line 229
            aload 6 /* future */
            invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
            pop
        25: goto 28
      StackMap locals: org.reflections.Reflections long int java.util.concurrent.ExecutorService java.util.List java.util.concurrent.Future java.util.Iterator
      StackMap stack: java.lang.Exception
        26: astore 8 /* e */
        start local 8 // java.lang.Exception e
        27: new java.lang.RuntimeException
            dup
            aload 8 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 8 // java.lang.Exception e
        end local 6 // java.util.concurrent.Future future
        28: .line 228
      StackMap locals: org.reflections.Reflections long int java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 23
        29: .line 234
      StackMap locals: org.reflections.Reflections long int java.util.concurrent.ExecutorService java.util.List
      StackMap stack:
            aload 4 /* executorService */
            ifnull 31
        30: .line 235
            aload 4 /* executorService */
            invokeinterface java.util.concurrent.ExecutorService.shutdown:()V
        31: .line 238
      StackMap locals:
      StackMap stack:
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 39
        32: .line 239
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ldc "Reflections took %d ms to scan %d urls, producing %s %s"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        33: .line 240
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 1 /* time */
            lsub
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            iload 3 /* scannedUrls */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            invokestatic org.reflections.Reflections.producingDescription:(Lorg/reflections/Store;)Ljava/lang/String;
            aastore
            dup
            iconst_3
        34: .line 241
            aload 4 /* executorService */
            instanceof java.util.concurrent.ThreadPoolExecutor
            ifeq 36
        35: .line 242
            ldc "[using %d cores]"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* executorService */
            checkcast java.util.concurrent.ThreadPoolExecutor
            invokevirtual java.util.concurrent.ThreadPoolExecutor.getMaximumPoolSize:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            goto 37
      StackMap locals: org.reflections.Reflections long int java.util.concurrent.ExecutorService java.util.List
      StackMap stack: org.slf4j.Logger java.lang.String java.lang.Object[] java.lang.Object[] int
        36: ldc ""
      StackMap locals: org.reflections.Reflections long int java.util.concurrent.ExecutorService java.util.List
      StackMap stack: org.slf4j.Logger java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
        37: aastore
        38: .line 239
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
        39: .line 244
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.util.List futures
        end local 4 // java.util.concurrent.ExecutorService executorService
        end local 3 // int scannedUrls
        end local 1 // long time
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   40     0             this  Lorg/reflections/Reflections;
            6   40     1             time  J
            7   40     3      scannedUrls  I
            8   40     4  executorService  Ljava/util/concurrent/ExecutorService;
            9   40     5          futures  Ljava/util/List<Ljava/util/concurrent/Future<*>;>;
           11   20     6              url  Ljava/net/URL;
           18   20     8                e  Lorg/reflections/ReflectionsException;
           24   28     6           future  Ljava/util/concurrent/Future;
           27   28     8                e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          11    16      17  Class org.reflections.ReflectionsException
          24    25      26  Class java.lang.Exception

  private static java.lang.String producingDescription(org.reflections.Store);
    descriptor: (Lorg/reflections/Store;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // org.reflections.Store store
         0: .line 247
            iconst_0
            istore 1 /* keys */
        start local 1 // int keys
         1: .line 248
            iconst_0
            istore 2 /* values */
        start local 2 // int values
         2: .line 249
            aload 0 /* store */
            invokevirtual org.reflections.Store.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 6
      StackMap locals: org.reflections.Store int int top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* index */
        start local 3 // java.lang.String index
         4: .line 250
            iload 1 /* keys */
            aload 0 /* store */
            aload 3 /* index */
            invokevirtual org.reflections.Store.keys:(Ljava/lang/String;)Ljava/util/Set;
            invokeinterface java.util.Set.size:()I
            iadd
            istore 1 /* keys */
         5: .line 251
            iload 2 /* values */
            aload 0 /* store */
            aload 3 /* index */
            invokevirtual org.reflections.Store.values:(Ljava/lang/String;)Ljava/util/Set;
            invokeinterface java.util.Set.size:()I
            iadd
            istore 2 /* values */
        end local 3 // java.lang.String index
         6: .line 249
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 253
            ldc "%d keys and %d values"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            iload 1 /* keys */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iload 2 /* values */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 2 // int values
        end local 1 // int keys
        end local 0 // org.reflections.Store store
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0   store  Lorg/reflections/Store;
            1    8     1    keys  I
            2    8     2  values  I
            4    6     3   index  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      store  

  protected void scan(java.net.URL);
    descriptor: (Ljava/net/URL;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=13, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.net.URL url
         0: .line 257
            aload 1 /* url */
            invokestatic org.reflections.vfs.Vfs.fromURL:(Ljava/net/URL;)Lorg/reflections/vfs/Vfs$Dir;
            astore 2 /* dir */
        start local 2 // org.reflections.vfs.Vfs$Dir dir
         1: .line 260
            aload 2 /* dir */
            invokeinterface org.reflections.vfs.Vfs$Dir.getFiles:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 17
      StackMap locals: org.reflections.Reflections java.net.URL org.reflections.vfs.Vfs$Dir top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.reflections.vfs.Vfs$File
            astore 3 /* file */
        start local 3 // org.reflections.vfs.Vfs$File file
         3: .line 262
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getInputsFilter:()Ljava/util/function/Predicate;
            astore 5 /* inputsFilter */
        start local 5 // java.util.function.Predicate inputsFilter
         4: .line 263
            aload 3 /* file */
            invokeinterface org.reflections.vfs.Vfs$File.getRelativePath:()Ljava/lang/String;
            astore 6 /* path */
        start local 6 // java.lang.String path
         5: .line 264
            aload 6 /* path */
            bipush 47
            bipush 46
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            astore 7 /* fqn */
        start local 7 // java.lang.String fqn
         6: .line 265
            aload 5 /* inputsFilter */
            ifnull 7
            aload 5 /* inputsFilter */
            aload 6 /* path */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifne 7
            aload 5 /* inputsFilter */
            aload 7 /* fqn */
            invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
            ifeq 17
         7: .line 266
      StackMap locals: org.reflections.Reflections java.net.URL org.reflections.vfs.Vfs$Dir org.reflections.vfs.Vfs$File java.util.Iterator java.util.function.Predicate java.lang.String java.lang.String
      StackMap stack:
            aconst_null
            astore 8 /* classObject */
        start local 8 // java.lang.Object classObject
         8: .line 267
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getScanners:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 10
            goto 16
      StackMap locals: org.reflections.Reflections java.net.URL org.reflections.vfs.Vfs$Dir org.reflections.vfs.Vfs$File java.util.Iterator java.util.function.Predicate java.lang.String java.lang.String java.lang.Object top java.util.Iterator
      StackMap stack:
         9: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.reflections.scanners.Scanner
            astore 9 /* scanner */
        start local 9 // org.reflections.scanners.Scanner scanner
        10: .line 269
            aload 9 /* scanner */
            aload 6 /* path */
            invokeinterface org.reflections.scanners.Scanner.acceptsInput:(Ljava/lang/String;)Z
            ifne 11
            aload 9 /* scanner */
            aload 7 /* fqn */
            invokeinterface org.reflections.scanners.Scanner.acceptsInput:(Ljava/lang/String;)Z
            ifeq 16
        11: .line 270
      StackMap locals: org.reflections.Reflections java.net.URL org.reflections.vfs.Vfs$Dir org.reflections.vfs.Vfs$File java.util.Iterator java.util.function.Predicate java.lang.String java.lang.String java.lang.Object org.reflections.scanners.Scanner java.util.Iterator
      StackMap stack:
            aload 9 /* scanner */
            aload 3 /* file */
            aload 8 /* classObject */
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            invokeinterface org.reflections.scanners.Scanner.scan:(Lorg/reflections/vfs/Vfs$File;Ljava/lang/Object;Lorg/reflections/Store;)Ljava/lang/Object;
            astore 8 /* classObject */
        12: .line 272
            goto 16
      StackMap locals:
      StackMap stack: java.lang.Exception
        13: astore 11 /* e */
        start local 11 // java.lang.Exception e
        14: .line 273
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 16
        15: .line 275
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ldc "could not scan file {} in url {} with scanner {}"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* file */
            invokeinterface org.reflections.vfs.Vfs$File.getRelativePath:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 1 /* url */
            invokevirtual java.net.URL.toExternalForm:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            aload 9 /* scanner */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            aastore
            dup
            iconst_3
            aload 11 /* e */
            aastore
            invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;[Ljava/lang/Object;)V
        end local 11 // java.lang.Exception e
        end local 9 // org.reflections.scanners.Scanner scanner
        16: .line 267
      StackMap locals: org.reflections.Reflections java.net.URL org.reflections.vfs.Vfs$Dir org.reflections.vfs.Vfs$File java.util.Iterator java.util.function.Predicate java.lang.String java.lang.String java.lang.Object top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        end local 8 // java.lang.Object classObject
        end local 7 // java.lang.String fqn
        end local 6 // java.lang.String path
        end local 5 // java.util.function.Predicate inputsFilter
        end local 3 // org.reflections.vfs.Vfs$File file
        17: .line 260
      StackMap locals: org.reflections.Reflections java.net.URL org.reflections.vfs.Vfs$Dir top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        18: .line 281
            goto 22
      StackMap locals: org.reflections.Reflections java.net.URL org.reflections.vfs.Vfs$Dir
      StackMap stack: java.lang.Throwable
        19: astore 12
        20: .line 282
            aload 2 /* dir */
            invokeinterface org.reflections.vfs.Vfs$Dir.close:()V
        21: .line 283
            aload 12
            athrow
        22: .line 282
      StackMap locals:
      StackMap stack:
            aload 2 /* dir */
            invokeinterface org.reflections.vfs.Vfs$Dir.close:()V
        23: .line 284
            return
        end local 2 // org.reflections.vfs.Vfs$Dir dir
        end local 1 // java.net.URL url
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   24     0          this  Lorg/reflections/Reflections;
            0   24     1           url  Ljava/net/URL;
            1   24     2           dir  Lorg/reflections/vfs/Vfs$Dir;
            3   17     3          file  Lorg/reflections/vfs/Vfs$File;
            4   17     5  inputsFilter  Ljava/util/function/Predicate<Ljava/lang/String;>;
            5   17     6          path  Ljava/lang/String;
            6   17     7           fqn  Ljava/lang/String;
            8   17     8   classObject  Ljava/lang/Object;
           10   16     9       scanner  Lorg/reflections/scanners/Scanner;
           14   16    11             e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          10    12      13  Class java.lang.Exception
           1    19      19  any
    MethodParameters:
      Name  Flags
      url   

  public static org.reflections.Reflections collect();
    descriptor: ()Lorg/reflections/Reflections;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 291
            ldc "META-INF/reflections/"
            new org.reflections.util.FilterBuilder
            dup
            invokespecial org.reflections.util.FilterBuilder.<init>:()V
            ldc ".*-reflections.xml"
            invokevirtual org.reflections.util.FilterBuilder.include:(Ljava/lang/String;)Lorg/reflections/util/FilterBuilder;
            iconst_0
            anewarray org.reflections.serializers.Serializer
            invokestatic org.reflections.Reflections.collect:(Ljava/lang/String;Ljava/util/function/Predicate;[Lorg/reflections/serializers/Serializer;)Lorg/reflections/Reflections;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.reflections.Reflections collect(java.lang.String, java.util.function.Predicate<java.lang.String>, org.reflections.serializers.Serializer[]);
    descriptor: (Ljava/lang/String;Ljava/util/function/Predicate;[Lorg/reflections/serializers/Serializer;)Lorg/reflections/Reflections;
    flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
    Code:
      stack=9, locals=14, args_size=3
        start local 0 // java.lang.String packagePrefix
        start local 1 // java.util.function.Predicate resourceNameFilter
        start local 2 // org.reflections.serializers.Serializer[] optionalSerializer
         0: .line 303
            aload 2 /* optionalSerializer */
            ifnull 1
            aload 2 /* optionalSerializer */
            arraylength
            iconst_1
            if_icmpne 1
            aload 2 /* optionalSerializer */
            iconst_0
            aaload
            goto 2
      StackMap locals:
      StackMap stack:
         1: new org.reflections.serializers.XmlSerializer
            dup
            invokespecial org.reflections.serializers.XmlSerializer.<init>:()V
      StackMap locals:
      StackMap stack: org.reflections.serializers.Serializer
         2: astore 3 /* serializer */
        start local 3 // org.reflections.serializers.Serializer serializer
         3: .line 305
            aload 0 /* packagePrefix */
            iconst_0
            anewarray java.lang.ClassLoader
            invokestatic org.reflections.util.ClasspathHelper.forPackage:(Ljava/lang/String;[Ljava/lang/ClassLoader;)Ljava/util/Collection;
            astore 4 /* urls */
        start local 4 // java.util.Collection urls
         4: .line 306
            aload 4 /* urls */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 5
            aconst_null
            areturn
         5: .line 307
      StackMap locals: org.reflections.serializers.Serializer java.util.Collection
      StackMap stack:
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 5 /* start */
        start local 5 // long start
         6: .line 308
            new org.reflections.Reflections
            dup
            invokespecial org.reflections.Reflections.<init>:()V
            astore 7 /* reflections */
        start local 7 // org.reflections.Reflections reflections
         7: .line 309
            aload 4 /* urls */
            aload 0 /* packagePrefix */
            aload 1 /* resourceNameFilter */
            invokestatic org.reflections.vfs.Vfs.findFiles:(Ljava/util/Collection;Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/lang/Iterable;
            astore 8 /* files */
        start local 8 // java.lang.Iterable files
         8: .line 310
            aload 8 /* files */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 10
            goto 20
      StackMap locals: java.lang.String java.util.function.Predicate org.reflections.serializers.Serializer[] org.reflections.serializers.Serializer java.util.Collection long org.reflections.Reflections java.lang.Iterable top java.util.Iterator
      StackMap stack:
         9: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.reflections.vfs.Vfs$File
            astore 9 /* file */
        start local 9 // org.reflections.vfs.Vfs$File file
        10: .line 311
            aconst_null
            astore 11 /* inputStream */
        start local 11 // java.io.InputStream inputStream
        11: .line 313
            aload 9 /* file */
            invokeinterface org.reflections.vfs.Vfs$File.openInputStream:()Ljava/io/InputStream;
            astore 11 /* inputStream */
        12: .line 314
            aload 7 /* reflections */
            aload 3 /* serializer */
            aload 11 /* inputStream */
            invokeinterface org.reflections.serializers.Serializer.read:(Ljava/io/InputStream;)Lorg/reflections/Reflections;
            invokevirtual org.reflections.Reflections.merge:(Lorg/reflections/Reflections;)Lorg/reflections/Reflections;
            pop
        13: .line 315
            goto 19
      StackMap locals: java.lang.String java.util.function.Predicate org.reflections.serializers.Serializer[] org.reflections.serializers.Serializer java.util.Collection long org.reflections.Reflections java.lang.Iterable org.reflections.vfs.Vfs$File java.util.Iterator java.io.InputStream
      StackMap stack: java.io.IOException
        14: astore 12 /* e */
        start local 12 // java.io.IOException e
        15: .line 316
            new org.reflections.ReflectionsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "could not merge "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 9 /* file */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 12 /* e */
            invokespecial org.reflections.ReflectionsException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 12 // java.io.IOException e
        16: .line 317
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 13
        17: .line 318
            aload 11 /* inputStream */
            invokestatic org.reflections.util.Utils.close:(Ljava/io/InputStream;)V
        18: .line 319
            aload 13
            athrow
        19: .line 318
      StackMap locals:
      StackMap stack:
            aload 11 /* inputStream */
            invokestatic org.reflections.util.Utils.close:(Ljava/io/InputStream;)V
        end local 11 // java.io.InputStream inputStream
        end local 9 // org.reflections.vfs.Vfs$File file
        20: .line 310
      StackMap locals: java.lang.String java.util.function.Predicate org.reflections.serializers.Serializer[] org.reflections.serializers.Serializer java.util.Collection long org.reflections.Reflections java.lang.Iterable top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        21: .line 322
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 25
        22: .line 323
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ldc "Reflections took %d ms to collect %d url, producing %s"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        23: .line 324
            invokestatic java.lang.System.currentTimeMillis:()J
            lload 5 /* start */
            lsub
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            aload 4 /* urls */
            invokeinterface java.util.Collection.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 7 /* reflections */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            invokestatic org.reflections.Reflections.producingDescription:(Lorg/reflections/Store;)Ljava/lang/String;
            aastore
        24: .line 323
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
        25: .line 326
      StackMap locals: java.lang.String java.util.function.Predicate org.reflections.serializers.Serializer[] org.reflections.serializers.Serializer java.util.Collection long org.reflections.Reflections java.lang.Iterable
      StackMap stack:
            aload 7 /* reflections */
            areturn
        end local 8 // java.lang.Iterable files
        end local 7 // org.reflections.Reflections reflections
        end local 5 // long start
        end local 4 // java.util.Collection urls
        end local 3 // org.reflections.serializers.Serializer serializer
        end local 2 // org.reflections.serializers.Serializer[] optionalSerializer
        end local 1 // java.util.function.Predicate resourceNameFilter
        end local 0 // java.lang.String packagePrefix
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   26     0       packagePrefix  Ljava/lang/String;
            0   26     1  resourceNameFilter  Ljava/util/function/Predicate<Ljava/lang/String;>;
            0   26     2  optionalSerializer  [Lorg/reflections/serializers/Serializer;
            3   26     3          serializer  Lorg/reflections/serializers/Serializer;
            4   26     4                urls  Ljava/util/Collection<Ljava/net/URL;>;
            6   26     5               start  J
            7   26     7         reflections  Lorg/reflections/Reflections;
            8   26     8               files  Ljava/lang/Iterable<Lorg/reflections/vfs/Vfs$File;>;
           10   20     9                file  Lorg/reflections/vfs/Vfs$File;
           11   20    11         inputStream  Ljava/io/InputStream;
           15   16    12                   e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
          11    13      14  Class java.io.IOException
          11    16      16  any
    Signature: (Ljava/lang/String;Ljava/util/function/Predicate<Ljava/lang/String;>;[Lorg/reflections/serializers/Serializer;)Lorg/reflections/Reflections;
    MethodParameters:
                    Name  Flags
      packagePrefix       final
      resourceNameFilter  final
      optionalSerializer  

  public org.reflections.Reflections collect(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)Lorg/reflections/Reflections;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.io.InputStream inputStream
         0: .line 334
            aload 0 /* this */
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getSerializer:()Lorg/reflections/serializers/Serializer;
            aload 1 /* inputStream */
            invokeinterface org.reflections.serializers.Serializer.read:(Ljava/io/InputStream;)Lorg/reflections/Reflections;
            invokevirtual org.reflections.Reflections.merge:(Lorg/reflections/Reflections;)Lorg/reflections/Reflections;
            pop
         1: .line 335
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 5
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Reflections collected metadata from input stream using serializer "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getSerializer:()Lorg/reflections/serializers/Serializer;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
         2: .line 336
            goto 5
      StackMap locals:
      StackMap stack: java.lang.Exception
         3: astore 2 /* ex */
        start local 2 // java.lang.Exception ex
         4: .line 337
            new org.reflections.ReflectionsException
            dup
            ldc "could not merge input stream"
            aload 2 /* ex */
            invokespecial org.reflections.ReflectionsException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.Exception ex
         5: .line 340
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // java.io.InputStream inputStream
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/reflections/Reflections;
            0    6     1  inputStream  Ljava/io/InputStream;
            4    5     2           ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Exception
    MethodParameters:
             Name  Flags
      inputStream  final

  public org.reflections.Reflections collect(java.io.File);
    descriptor: (Ljava/io/File;)Lorg/reflections/Reflections;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.io.File file
         0: .line 347
            aconst_null
            astore 2 /* inputStream */
        start local 2 // java.io.FileInputStream inputStream
         1: .line 349
            new java.io.FileInputStream
            dup
            aload 1 /* file */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 2 /* inputStream */
         2: .line 350
            aload 0 /* this */
            aload 2 /* inputStream */
            invokevirtual org.reflections.Reflections.collect:(Ljava/io/InputStream;)Lorg/reflections/Reflections;
            astore 5
         3: .line 354
            aload 2 /* inputStream */
            invokestatic org.reflections.util.Utils.close:(Ljava/io/InputStream;)V
         4: .line 350
            aload 5
            areturn
         5: .line 351
      StackMap locals: org.reflections.Reflections java.io.File java.io.FileInputStream
      StackMap stack: java.io.FileNotFoundException
            astore 3 /* e */
        start local 3 // java.io.FileNotFoundException e
         6: .line 352
            new org.reflections.ReflectionsException
            dup
            new java.lang.StringBuilder
            dup
            ldc "could not obtain input stream from file "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* file */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* e */
            invokespecial org.reflections.ReflectionsException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.io.FileNotFoundException e
         7: .line 353
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 4
         8: .line 354
            aload 2 /* inputStream */
            invokestatic org.reflections.util.Utils.close:(Ljava/io/InputStream;)V
         9: .line 355
            aload 4
            athrow
        end local 2 // java.io.FileInputStream inputStream
        end local 1 // java.io.File file
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/reflections/Reflections;
            0   10     1         file  Ljava/io/File;
            1   10     2  inputStream  Ljava/io/FileInputStream;
            6    7     3            e  Ljava/io/FileNotFoundException;
      Exception table:
        from    to  target  type
           1     3       5  Class java.io.FileNotFoundException
           1     3       7  any
           5     7       7  any
    MethodParameters:
      Name  Flags
      file  final

  public org.reflections.Reflections merge(org.reflections.Reflections);
    descriptor: (Lorg/reflections/Reflections;)Lorg/reflections/Reflections;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // org.reflections.Reflections reflections
         0: .line 362
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            aload 1 /* reflections */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            invokevirtual org.reflections.Store.merge:(Lorg/reflections/Store;)V
         1: .line 363
            aload 0 /* this */
            areturn
        end local 1 // org.reflections.Reflections reflections
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/reflections/Reflections;
            0    2     1  reflections  Lorg/reflections/Reflections;
    MethodParameters:
             Name  Flags
      reflections  final

  public void expandSuperTypes();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // org.reflections.Reflections this
         0: .line 378
            ldc Lorg/reflections/scanners/SubTypesScanner;
            invokestatic org.reflections.util.Utils.index:(Ljava/lang/Class;)Ljava/lang/String;
            astore 1 /* index */
        start local 1 // java.lang.String index
         1: .line 379
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            aload 1 /* index */
            invokevirtual org.reflections.Store.keys:(Ljava/lang/String;)Ljava/util/Set;
            astore 2 /* keys */
        start local 2 // java.util.Set keys
         2: .line 380
            aload 2 /* keys */
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            aload 1 /* index */
            invokevirtual org.reflections.Store.values:(Ljava/lang/String;)Ljava/util/Set;
            invokeinterface java.util.Set.removeAll:(Ljava/util/Collection;)Z
            pop
         3: .line 381
            aload 2 /* keys */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 8
      StackMap locals: org.reflections.Reflections java.lang.String java.util.Set top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* key */
        start local 3 // java.lang.String key
         5: .line 382
            aload 3 /* key */
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.ReflectionUtils.forName:(Ljava/lang/String;[Ljava/lang/ClassLoader;)Ljava/lang/Class;
            astore 5 /* type */
        start local 5 // java.lang.Class type
         6: .line 383
            aload 5 /* type */
            ifnull 8
         7: .line 384
            aload 0 /* this */
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            aload 3 /* key */
            aload 5 /* type */
            invokevirtual org.reflections.Reflections.expandSupertypes:(Lorg/reflections/Store;Ljava/lang/String;Ljava/lang/Class;)V
        end local 5 // java.lang.Class type
        end local 3 // java.lang.String key
         8: .line 381
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         9: .line 387
            return
        end local 2 // java.util.Set keys
        end local 1 // java.lang.String index
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lorg/reflections/Reflections;
            1   10     1  index  Ljava/lang/String;
            2   10     2   keys  Ljava/util/Set<Ljava/lang/String;>;
            5    8     3    key  Ljava/lang/String;
            6    8     5   type  Ljava/lang/Class<*>;

  private void expandSupertypes(org.reflections.Store, java.lang.String, java.lang.Class<?>);
    descriptor: (Lorg/reflections/Store;Ljava/lang/String;Ljava/lang/Class;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.reflections.Reflections this
        start local 1 // org.reflections.Store store
        start local 2 // java.lang.String key
        start local 3 // java.lang.Class type
         0: .line 390
            aload 3 /* type */
            invokestatic org.reflections.ReflectionUtils.getSuperTypes:(Ljava/lang/Class;)Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 5
      StackMap locals: org.reflections.Reflections org.reflections.Store java.lang.String java.lang.Class top java.util.Iterator
      StackMap stack:
         1: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Class
            astore 4 /* supertype */
        start local 4 // java.lang.Class supertype
         2: .line 391
            aload 1 /* store */
            ldc Lorg/reflections/scanners/SubTypesScanner;
            aload 4 /* supertype */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aload 2 /* key */
            invokevirtual org.reflections.Store.put:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)Z
            ifeq 5
         3: .line 392
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 4
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ldc "expanded subtype {} -> {}"
            aload 4 /* supertype */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aload 2 /* key */
            invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 393
      StackMap locals: org.reflections.Reflections org.reflections.Store java.lang.String java.lang.Class java.lang.Class java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            aload 1 /* store */
            aload 4 /* supertype */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            aload 4 /* supertype */
            invokevirtual org.reflections.Reflections.expandSupertypes:(Lorg/reflections/Store;Ljava/lang/String;Ljava/lang/Class;)V
        end local 4 // java.lang.Class supertype
         5: .line 390
      StackMap locals: org.reflections.Reflections org.reflections.Store java.lang.String java.lang.Class top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         6: .line 396
            return
        end local 3 // java.lang.Class type
        end local 2 // java.lang.String key
        end local 1 // org.reflections.Store store
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/reflections/Reflections;
            0    7     1      store  Lorg/reflections/Store;
            0    7     2        key  Ljava/lang/String;
            0    7     3       type  Ljava/lang/Class<*>;
            2    5     4  supertype  Ljava/lang/Class<*>;
    Signature: (Lorg/reflections/Store;Ljava/lang/String;Ljava/lang/Class<*>;)V
    MethodParameters:
       Name  Flags
      store  
      key    
      type   

  public <T> java.util.Set<java.lang.Class<? extends T>> getSubTypesOf(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class type
         0: .line 404
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/SubTypesScanner;
            aload 1 /* type */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.reflections.Store.getAll:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.ReflectionUtils.forNames:(Ljava/util/Collection;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.Class type
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/reflections/Reflections;
            0    1     1  type  Ljava/lang/Class<TT;>;
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/util/Set<Ljava/lang/Class<+TT;>;>;
    MethodParameters:
      Name  Flags
      type  final

  public java.util.Set<java.lang.Class<?>> getTypesAnnotatedWith(java.lang.Class<? extends java.lang.annotation.Annotation>);
    descriptor: (Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class annotation
         0: .line 416
            aload 0 /* this */
            aload 1 /* annotation */
            iconst_0
            invokevirtual org.reflections.Reflections.getTypesAnnotatedWith:(Ljava/lang/Class;Z)Ljava/util/Set;
            areturn
        end local 1 // java.lang.Class annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
    Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/util/Set<Ljava/lang/Class<*>;>;
    MethodParameters:
            Name  Flags
      annotation  final

  public java.util.Set<java.lang.Class<?>> getTypesAnnotatedWith(java.lang.Class<? extends java.lang.annotation.Annotation>, boolean);
    descriptor: (Ljava/lang/Class;Z)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class annotation
        start local 2 // boolean honorInherited
         0: .line 429
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/TypeAnnotationsScanner;
            aload 1 /* annotation */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            astore 3 /* annotated */
        start local 3 // java.util.Set annotated
         1: .line 430
            aload 3 /* annotated */
            aload 0 /* this */
            aload 3 /* annotated */
            aload 1 /* annotation */
            iload 2 /* honorInherited */
            invokevirtual org.reflections.Reflections.getAllAnnotated:(Ljava/util/Collection;Ljava/lang/Class;Z)Ljava/util/Collection;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         2: .line 431
            aload 3 /* annotated */
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.ReflectionUtils.forNames:(Ljava/util/Collection;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 3 // java.util.Set annotated
        end local 2 // boolean honorInherited
        end local 1 // java.lang.Class annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/reflections/Reflections;
            0    3     1      annotation  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
            0    3     2  honorInherited  Z
            1    3     3       annotated  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Z)Ljava/util/Set<Ljava/lang/Class<*>;>;
    MethodParameters:
                Name  Flags
      annotation      final
      honorInherited  

  public java.util.Set<java.lang.Class<?>> getTypesAnnotatedWith(java.lang.annotation.Annotation);
    descriptor: (Ljava/lang/annotation/Annotation;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.annotation.Annotation annotation
         0: .line 440
            aload 0 /* this */
            aload 1 /* annotation */
            iconst_0
            invokevirtual org.reflections.Reflections.getTypesAnnotatedWith:(Ljava/lang/annotation/Annotation;Z)Ljava/util/Set;
            areturn
        end local 1 // java.lang.annotation.Annotation annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/annotation/Annotation;
    Signature: (Ljava/lang/annotation/Annotation;)Ljava/util/Set<Ljava/lang/Class<*>;>;
    MethodParameters:
            Name  Flags
      annotation  final

  public java.util.Set<java.lang.Class<?>> getTypesAnnotatedWith(java.lang.annotation.Annotation, boolean);
    descriptor: (Ljava/lang/annotation/Annotation;Z)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.annotation.Annotation annotation
        start local 2 // boolean honorInherited
         0: .line 449
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/TypeAnnotationsScanner;
            aload 1 /* annotation */
            invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            astore 3 /* annotated */
        start local 3 // java.util.Set annotated
         1: .line 450
            aload 3 /* annotated */
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.ReflectionUtils.forNames:(Ljava/util/Collection;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            aload 1 /* annotation */
            invokestatic org.reflections.ReflectionUtils.withAnnotation:(Ljava/lang/annotation/Annotation;)Ljava/util/function/Predicate;
            invokestatic org.reflections.util.Utils.filter:(Ljava/util/Collection;Ljava/util/function/Predicate;)Ljava/util/Set;
            astore 4 /* allAnnotated */
        start local 4 // java.util.Set allAnnotated
         2: .line 451
            aload 0 /* this */
            aload 4 /* allAnnotated */
            invokestatic org.reflections.util.Utils.names:(Ljava/util/Collection;)Ljava/util/List;
            aload 1 /* annotation */
            invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
            iload 2 /* honorInherited */
            invokevirtual org.reflections.Reflections.getAllAnnotated:(Ljava/util/Collection;Ljava/lang/Class;Z)Ljava/util/Collection;
            aload 3 /* annotated */
            invokedynamic test(Ljava/util/Set;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/reflections/Reflections.lambda$1(Ljava/util/Set;Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokestatic org.reflections.util.Utils.filter:(Ljava/util/Collection;Ljava/util/function/Predicate;)Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.ReflectionUtils.forNames:(Ljava/util/Collection;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            astore 5 /* classes */
        start local 5 // java.util.Set classes
         3: .line 452
            aload 4 /* allAnnotated */
            aload 5 /* classes */
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         4: .line 453
            aload 4 /* allAnnotated */
            areturn
        end local 5 // java.util.Set classes
        end local 4 // java.util.Set allAnnotated
        end local 3 // java.util.Set annotated
        end local 2 // boolean honorInherited
        end local 1 // java.lang.annotation.Annotation annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/reflections/Reflections;
            0    5     1      annotation  Ljava/lang/annotation/Annotation;
            0    5     2  honorInherited  Z
            1    5     3       annotated  Ljava/util/Set<Ljava/lang/String;>;
            2    5     4    allAnnotated  Ljava/util/Set<Ljava/lang/Class<*>;>;
            3    5     5         classes  Ljava/util/Set<Ljava/lang/Class<*>;>;
    Signature: (Ljava/lang/annotation/Annotation;Z)Ljava/util/Set<Ljava/lang/Class<*>;>;
    MethodParameters:
                Name  Flags
      annotation      final
      honorInherited  

  protected java.util.Collection<java.lang.String> getAllAnnotated(java.util.Collection<java.lang.String>, java.lang.Class<? extends java.lang.annotation.Annotation>, boolean);
    descriptor: (Ljava/util/Collection;Ljava/lang/Class;Z)Ljava/util/Collection;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.reflections.Reflections this
        start local 1 // java.util.Collection annotated
        start local 2 // java.lang.Class annotation
        start local 3 // boolean honorInherited
         0: .line 457
            iload 3 /* honorInherited */
            ifeq 5
         1: .line 458
            aload 2 /* annotation */
            ldc Ljava/lang/annotation/Inherited;
            invokevirtual java.lang.Class.isAnnotationPresent:(Ljava/lang/Class;)Z
            ifeq 4
         2: .line 459
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/SubTypesScanner;
            aload 1 /* annotated */
            aload 0 /* this */
            invokedynamic test(Lorg/reflections/Reflections;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/reflections/Reflections.lambda$2(Ljava/lang/String;)Z (7)
                  (Ljava/lang/String;)Z
            invokestatic org.reflections.util.Utils.filter:(Ljava/util/Collection;Ljava/util/function/Predicate;)Ljava/util/Set;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/util/Collection;)Ljava/util/Set;
            astore 4 /* subTypes */
        start local 4 // java.util.Set subTypes
         3: .line 463
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/SubTypesScanner;
            aload 4 /* subTypes */
            invokevirtual org.reflections.Store.getAllIncluding:(Ljava/lang/Class;Ljava/util/Collection;)Ljava/util/Set;
            areturn
        end local 4 // java.util.Set subTypes
         4: .line 465
      StackMap locals:
      StackMap stack:
            aload 1 /* annotated */
            areturn
         5: .line 468
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/TypeAnnotationsScanner;
            aload 1 /* annotated */
            invokevirtual org.reflections.Store.getAllIncluding:(Ljava/lang/Class;Ljava/util/Collection;)Ljava/util/Set;
            astore 4 /* subTypes */
        start local 4 // java.util.Collection subTypes
         6: .line 469
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/SubTypesScanner;
            aload 4 /* subTypes */
            invokevirtual org.reflections.Store.getAllIncluding:(Ljava/lang/Class;Ljava/util/Collection;)Ljava/util/Set;
            areturn
        end local 4 // java.util.Collection subTypes
        end local 3 // boolean honorInherited
        end local 2 // java.lang.Class annotation
        end local 1 // java.util.Collection annotated
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lorg/reflections/Reflections;
            0    7     1       annotated  Ljava/util/Collection<Ljava/lang/String;>;
            0    7     2      annotation  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
            0    7     3  honorInherited  Z
            3    4     4        subTypes  Ljava/util/Set<Ljava/lang/String;>;
            6    7     4        subTypes  Ljava/util/Collection<Ljava/lang/String;>;
    Signature: (Ljava/util/Collection<Ljava/lang/String;>;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Z)Ljava/util/Collection<Ljava/lang/String;>;
    MethodParameters:
                Name  Flags
      annotated       
      annotation      
      honorInherited  

  public java.util.Set<java.lang.reflect.Method> getMethodsAnnotatedWith(java.lang.Class<? extends java.lang.annotation.Annotation>);
    descriptor: (Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class annotation
         0: .line 478
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MethodAnnotationsScanner;
            aload 1 /* annotation */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.util.Utils.getMethodsFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.Class annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
    Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/util/Set<Ljava/lang/reflect/Method;>;
    MethodParameters:
            Name  Flags
      annotation  final

  public java.util.Set<java.lang.reflect.Method> getMethodsAnnotatedWith(java.lang.annotation.Annotation);
    descriptor: (Ljava/lang/annotation/Annotation;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.annotation.Annotation annotation
         0: .line 486
            aload 0 /* this */
            aload 1 /* annotation */
            invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
            invokevirtual org.reflections.Reflections.getMethodsAnnotatedWith:(Ljava/lang/Class;)Ljava/util/Set;
            aload 1 /* annotation */
            invokestatic org.reflections.ReflectionUtils.withAnnotation:(Ljava/lang/annotation/Annotation;)Ljava/util/function/Predicate;
            invokestatic org.reflections.util.Utils.filter:(Ljava/util/Collection;Ljava/util/function/Predicate;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.annotation.Annotation annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/annotation/Annotation;
    Signature: (Ljava/lang/annotation/Annotation;)Ljava/util/Set<Ljava/lang/reflect/Method;>;
    MethodParameters:
            Name  Flags
      annotation  final

  public java.util.Set<java.lang.reflect.Method> getMethodsMatchParams(java.lang.Class<?>[]);
    descriptor: ([Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class[] types
         0: .line 491
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MethodParameterScanner;
            aload 1 /* types */
            invokestatic org.reflections.util.Utils.names:([Ljava/lang/Class;)Ljava/util/List;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.util.Utils.getMethodsFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.Class[] types
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/reflections/Reflections;
            0    1     1  types  [Ljava/lang/Class;
    Signature: ([Ljava/lang/Class<*>;)Ljava/util/Set<Ljava/lang/reflect/Method;>;
    MethodParameters:
       Name  Flags
      types  

  public java.util.Set<java.lang.reflect.Method> getMethodsReturn(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class returnType
         0: .line 496
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MethodParameterScanner;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            aload 1 /* returnType */
            aastore
            invokestatic org.reflections.util.Utils.names:([Ljava/lang/Class;)Ljava/util/List;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/util/Collection;)Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.util.Utils.getMethodsFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.Class returnType
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  returnType  Ljava/lang/Class;
    Signature: (Ljava/lang/Class;)Ljava/util/Set<Ljava/lang/reflect/Method;>;
    MethodParameters:
            Name  Flags
      returnType  

  public java.util.Set<java.lang.reflect.Method> getMethodsWithAnyParamAnnotated(java.lang.Class<? extends java.lang.annotation.Annotation>);
    descriptor: (Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class annotation
         0: .line 501
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MethodParameterScanner;
            aload 1 /* annotation */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.util.Utils.getMethodsFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.Class annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
    Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/util/Set<Ljava/lang/reflect/Method;>;
    MethodParameters:
            Name  Flags
      annotation  

  public java.util.Set<java.lang.reflect.Method> getMethodsWithAnyParamAnnotated(java.lang.annotation.Annotation);
    descriptor: (Ljava/lang/annotation/Annotation;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.annotation.Annotation annotation
         0: .line 507
            aload 0 /* this */
            aload 1 /* annotation */
            invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
            invokevirtual org.reflections.Reflections.getMethodsWithAnyParamAnnotated:(Ljava/lang/Class;)Ljava/util/Set;
            aload 1 /* annotation */
            invokestatic org.reflections.ReflectionUtils.withAnyParameterAnnotation:(Ljava/lang/annotation/Annotation;)Ljava/util/function/Predicate;
            invokestatic org.reflections.util.Utils.filter:(Ljava/util/Collection;Ljava/util/function/Predicate;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.annotation.Annotation annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/annotation/Annotation;
    Signature: (Ljava/lang/annotation/Annotation;)Ljava/util/Set<Ljava/lang/reflect/Method;>;
    MethodParameters:
            Name  Flags
      annotation  

  public java.util.Set<java.lang.reflect.Constructor> getConstructorsAnnotatedWith(java.lang.Class<? extends java.lang.annotation.Annotation>);
    descriptor: (Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class annotation
         0: .line 515
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MethodAnnotationsScanner;
            aload 1 /* annotation */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.util.Utils.getConstructorsFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.Class annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
    Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/util/Set<Ljava/lang/reflect/Constructor;>;
    MethodParameters:
            Name  Flags
      annotation  final

  public java.util.Set<java.lang.reflect.Constructor> getConstructorsAnnotatedWith(java.lang.annotation.Annotation);
    descriptor: (Ljava/lang/annotation/Annotation;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.annotation.Annotation annotation
         0: .line 523
            aload 0 /* this */
            aload 1 /* annotation */
            invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
            invokevirtual org.reflections.Reflections.getConstructorsAnnotatedWith:(Ljava/lang/Class;)Ljava/util/Set;
            aload 1 /* annotation */
            invokestatic org.reflections.ReflectionUtils.withAnnotation:(Ljava/lang/annotation/Annotation;)Ljava/util/function/Predicate;
            invokestatic org.reflections.util.Utils.filter:(Ljava/util/Collection;Ljava/util/function/Predicate;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.annotation.Annotation annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/annotation/Annotation;
    Signature: (Ljava/lang/annotation/Annotation;)Ljava/util/Set<Ljava/lang/reflect/Constructor;>;
    MethodParameters:
            Name  Flags
      annotation  final

  public java.util.Set<java.lang.reflect.Constructor> getConstructorsMatchParams(java.lang.Class<?>[]);
    descriptor: ([Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class[] types
         0: .line 528
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MethodParameterScanner;
            aload 1 /* types */
            invokestatic org.reflections.util.Utils.names:([Ljava/lang/Class;)Ljava/util/List;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.util.Utils.getConstructorsFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.Class[] types
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/reflections/Reflections;
            0    1     1  types  [Ljava/lang/Class;
    Signature: ([Ljava/lang/Class<*>;)Ljava/util/Set<Ljava/lang/reflect/Constructor;>;
    MethodParameters:
       Name  Flags
      types  

  public java.util.Set<java.lang.reflect.Constructor> getConstructorsWithAnyParamAnnotated(java.lang.Class<? extends java.lang.annotation.Annotation>);
    descriptor: (Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class annotation
         0: .line 533
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MethodParameterScanner;
            aload 1 /* annotation */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.util.Utils.getConstructorsFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.Class annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
    Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/util/Set<Ljava/lang/reflect/Constructor;>;
    MethodParameters:
            Name  Flags
      annotation  

  public java.util.Set<java.lang.reflect.Constructor> getConstructorsWithAnyParamAnnotated(java.lang.annotation.Annotation);
    descriptor: (Ljava/lang/annotation/Annotation;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.annotation.Annotation annotation
         0: .line 538
            aload 0 /* this */
            aload 1 /* annotation */
            invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
            invokevirtual org.reflections.Reflections.getConstructorsWithAnyParamAnnotated:(Ljava/lang/Class;)Ljava/util/Set;
            aload 1 /* annotation */
            invokestatic org.reflections.ReflectionUtils.withAnyParameterAnnotation:(Ljava/lang/annotation/Annotation;)Ljava/util/function/Predicate;
            invokestatic org.reflections.util.Utils.filter:(Ljava/util/Collection;Ljava/util/function/Predicate;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.annotation.Annotation annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/annotation/Annotation;
    Signature: (Ljava/lang/annotation/Annotation;)Ljava/util/Set<Ljava/lang/reflect/Constructor;>;
    MethodParameters:
            Name  Flags
      annotation  

  public java.util.Set<java.lang.reflect.Field> getFieldsAnnotatedWith(java.lang.Class<? extends java.lang.annotation.Annotation>);
    descriptor: (Ljava/lang/Class;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.Class annotation
         0: .line 546
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/FieldAnnotationsScanner;
            aload 1 /* annotation */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
         1: .line 547
            aload 0 /* this */
            invokedynamic apply(Lorg/reflections/Reflections;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/reflections/Reflections.lambda$3(Ljava/lang/String;)Ljava/lang/reflect/Field; (7)
                  (Ljava/lang/String;)Ljava/lang/reflect/Field;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         2: .line 548
            invokestatic java.util.stream.Collectors.toSet:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.Set
         3: .line 546
            areturn
        end local 1 // java.lang.Class annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/reflections/Reflections;
            0    4     1  annotation  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
    Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/util/Set<Ljava/lang/reflect/Field;>;
    MethodParameters:
            Name  Flags
      annotation  final

  public java.util.Set<java.lang.reflect.Field> getFieldsAnnotatedWith(java.lang.annotation.Annotation);
    descriptor: (Ljava/lang/annotation/Annotation;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.annotation.Annotation annotation
         0: .line 556
            aload 0 /* this */
            aload 1 /* annotation */
            invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
            invokevirtual org.reflections.Reflections.getFieldsAnnotatedWith:(Ljava/lang/Class;)Ljava/util/Set;
            aload 1 /* annotation */
            invokestatic org.reflections.ReflectionUtils.withAnnotation:(Ljava/lang/annotation/Annotation;)Ljava/util/function/Predicate;
            invokestatic org.reflections.util.Utils.filter:(Ljava/util/Collection;Ljava/util/function/Predicate;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.annotation.Annotation annotation
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/reflections/Reflections;
            0    1     1  annotation  Ljava/lang/annotation/Annotation;
    Signature: (Ljava/lang/annotation/Annotation;)Ljava/util/Set<Ljava/lang/reflect/Field;>;
    MethodParameters:
            Name  Flags
      annotation  final

  public java.util.Set<java.lang.String> getResources(java.util.function.Predicate<java.lang.String>);
    descriptor: (Ljava/util/function/Predicate;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.util.function.Predicate namePredicate
         0: .line 563
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/ResourcesScanner;
            invokestatic org.reflections.util.Utils.index:(Ljava/lang/Class;)Ljava/lang/String;
            invokevirtual org.reflections.Store.keys:(Ljava/lang/String;)Ljava/util/Set;
            aload 1 /* namePredicate */
            invokestatic org.reflections.util.Utils.filter:(Ljava/util/Collection;Ljava/util/function/Predicate;)Ljava/util/Set;
            astore 2 /* resources */
        start local 2 // java.util.Set resources
         1: .line 564
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/ResourcesScanner;
            aload 2 /* resources */
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/util/Collection;)Ljava/util/Set;
            areturn
        end local 2 // java.util.Set resources
        end local 1 // java.util.function.Predicate namePredicate
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/reflections/Reflections;
            0    2     1  namePredicate  Ljava/util/function/Predicate<Ljava/lang/String;>;
            1    2     2      resources  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Ljava/util/function/Predicate<Ljava/lang/String;>;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
               Name  Flags
      namePredicate  final

  public java.util.Set<java.lang.String> getResources(java.util.regex.Pattern);
    descriptor: (Ljava/util/regex/Pattern;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.util.regex.Pattern pattern
         0: .line 572
            aload 0 /* this */
            aload 1 /* pattern */
            invokedynamic test(Ljava/util/regex/Pattern;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/reflections/Reflections.lambda$4(Ljava/util/regex/Pattern;Ljava/lang/String;)Z (6)
                  (Ljava/lang/String;)Z
            invokevirtual org.reflections.Reflections.getResources:(Ljava/util/function/Predicate;)Ljava/util/Set;
            areturn
        end local 1 // java.util.regex.Pattern pattern
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/reflections/Reflections;
            0    1     1  pattern  Ljava/util/regex/Pattern;
    Signature: (Ljava/util/regex/Pattern;)Ljava/util/Set<Ljava/lang/String;>;
    MethodParameters:
         Name  Flags
      pattern  final

  public java.util.List<java.lang.String> getMethodParamNames(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.reflect.Method method
         0: .line 579
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MethodParameterNamesScanner;
            aload 1 /* method */
            invokestatic org.reflections.util.Utils.name:(Ljava/lang/reflect/Method;)Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            astore 2 /* names */
        start local 2 // java.util.Set names
         1: .line 580
            aload 2 /* names */
            invokeinterface java.util.Set.size:()I
            iconst_1
            if_icmpne 2
            aload 2 /* names */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            ldc ", "
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            goto 3
      StackMap locals: java.util.Set
      StackMap stack:
         2: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
      StackMap locals:
      StackMap stack: java.util.List
         3: areturn
        end local 2 // java.util.Set names
        end local 1 // java.lang.reflect.Method method
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/reflections/Reflections;
            0    4     1  method  Ljava/lang/reflect/Method;
            1    4     2   names  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Ljava/lang/reflect/Method;)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
        Name  Flags
      method  

  public java.util.List<java.lang.String> getConstructorParamNames(java.lang.reflect.Constructor);
    descriptor: (Ljava/lang/reflect/Constructor;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.reflect.Constructor constructor
         0: .line 587
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MethodParameterNamesScanner;
            aload 1 /* constructor */
            invokestatic org.reflections.util.Utils.name:(Ljava/lang/reflect/Constructor;)Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            astore 2 /* names */
        start local 2 // java.util.Set names
         1: .line 588
            aload 2 /* names */
            invokeinterface java.util.Set.size:()I
            iconst_1
            if_icmpne 2
            aload 2 /* names */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            ldc ", "
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            goto 3
      StackMap locals: java.util.Set
      StackMap stack:
         2: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
      StackMap locals:
      StackMap stack: java.util.List
         3: areturn
        end local 2 // java.util.Set names
        end local 1 // java.lang.reflect.Constructor constructor
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/reflections/Reflections;
            0    4     1  constructor  Ljava/lang/reflect/Constructor;
            1    4     2        names  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Ljava/lang/reflect/Constructor;)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
             Name  Flags
      constructor  

  public java.util.Set<java.lang.reflect.Member> getFieldUsage(java.lang.reflect.Field);
    descriptor: (Ljava/lang/reflect/Field;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.reflect.Field field
         0: .line 595
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MemberUsageScanner;
            aload 1 /* field */
            invokestatic org.reflections.util.Utils.name:(Ljava/lang/reflect/Field;)Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            iconst_0
            anewarray java.lang.ClassLoader
            invokestatic org.reflections.util.Utils.getMembersFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.reflect.Field field
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/reflections/Reflections;
            0    1     1  field  Ljava/lang/reflect/Field;
    Signature: (Ljava/lang/reflect/Field;)Ljava/util/Set<Ljava/lang/reflect/Member;>;
    MethodParameters:
       Name  Flags
      field  

  public java.util.Set<java.lang.reflect.Member> getMethodUsage(java.lang.reflect.Method);
    descriptor: (Ljava/lang/reflect/Method;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.reflect.Method method
         0: .line 602
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MemberUsageScanner;
            aload 1 /* method */
            invokestatic org.reflections.util.Utils.name:(Ljava/lang/reflect/Method;)Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            iconst_0
            anewarray java.lang.ClassLoader
            invokestatic org.reflections.util.Utils.getMembersFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.reflect.Method method
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/reflections/Reflections;
            0    1     1  method  Ljava/lang/reflect/Method;
    Signature: (Ljava/lang/reflect/Method;)Ljava/util/Set<Ljava/lang/reflect/Member;>;
    MethodParameters:
        Name  Flags
      method  

  public java.util.Set<java.lang.reflect.Member> getConstructorUsage(java.lang.reflect.Constructor);
    descriptor: (Ljava/lang/reflect/Constructor;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.reflect.Constructor constructor
         0: .line 609
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/MemberUsageScanner;
            aload 1 /* constructor */
            invokestatic org.reflections.util.Utils.name:(Ljava/lang/reflect/Constructor;)Ljava/lang/String;
            invokevirtual org.reflections.Store.get:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            iconst_0
            anewarray java.lang.ClassLoader
            invokestatic org.reflections.util.Utils.getMembersFromDescriptors:(Ljava/lang/Iterable;[Ljava/lang/ClassLoader;)Ljava/util/Set;
            areturn
        end local 1 // java.lang.reflect.Constructor constructor
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lorg/reflections/Reflections;
            0    1     1  constructor  Ljava/lang/reflect/Constructor;
    Signature: (Ljava/lang/reflect/Constructor;)Ljava/util/Set<Ljava/lang/reflect/Member;>;
    MethodParameters:
             Name  Flags
      constructor  

  public java.util.Set<java.lang.String> getAllTypes();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.reflections.Reflections this
         0: .line 619
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            ldc Lorg/reflections/scanners/SubTypesScanner;
            ldc Ljava/lang/Object;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.reflections.Store.getAll:(Ljava/lang/Class;Ljava/lang/String;)Ljava/util/Set;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            astore 1 /* allTypes */
        start local 1 // java.util.Set allTypes
         1: .line 620
            aload 1 /* allTypes */
            invokeinterface java.util.Set.isEmpty:()Z
            ifeq 3
         2: .line 621
            new org.reflections.ReflectionsException
            dup
            ldc "Couldn't find subtypes of Object. Make sure SubTypesScanner initialized to include Object class - new SubTypesScanner(false)"
            invokespecial org.reflections.ReflectionsException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 624
      StackMap locals: java.util.Set
      StackMap stack:
            aload 1 /* allTypes */
            areturn
        end local 1 // java.util.Set allTypes
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/reflections/Reflections;
            1    4     1  allTypes  Ljava/util/Set<Ljava/lang/String;>;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  public org.reflections.Store getStore();
    descriptor: ()Lorg/reflections/Store;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.reflections.Reflections this
         0: .line 629
            aload 0 /* this */
            getfield org.reflections.Reflections.store:Lorg/reflections/Store;
            areturn
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/reflections/Reflections;

  public org.reflections.Configuration getConfiguration();
    descriptor: ()Lorg/reflections/Configuration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.reflections.Reflections this
         0: .line 634
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            areturn
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/reflections/Reflections;

  public java.io.File save(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.String filename
         0: .line 644
            aload 0 /* this */
            aload 1 /* filename */
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getSerializer:()Lorg/reflections/serializers/Serializer;
            invokevirtual org.reflections.Reflections.save:(Ljava/lang/String;Lorg/reflections/serializers/Serializer;)Ljava/io/File;
            areturn
        end local 1 // java.lang.String filename
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/reflections/Reflections;
            0    1     1  filename  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      filename  final

  public java.io.File save(java.lang.String, org.reflections.serializers.Serializer);
    descriptor: (Ljava/lang/String;Lorg/reflections/serializers/Serializer;)Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.String filename
        start local 2 // org.reflections.serializers.Serializer serializer
         0: .line 653
            aload 2 /* serializer */
            aload 0 /* this */
            aload 1 /* filename */
            invokeinterface org.reflections.serializers.Serializer.save:(Lorg/reflections/Reflections;Ljava/lang/String;)Ljava/io/File;
            astore 3 /* file */
        start local 3 // java.io.File file
         1: .line 654
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 3
         2: .line 655
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Reflections successfully saved in "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* file */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " using "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* serializer */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
         3: .line 656
      StackMap locals: java.io.File
      StackMap stack:
            aload 3 /* file */
            areturn
        end local 3 // java.io.File file
        end local 2 // org.reflections.serializers.Serializer serializer
        end local 1 // java.lang.String filename
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/reflections/Reflections;
            0    4     1    filename  Ljava/lang/String;
            0    4     2  serializer  Lorg/reflections/serializers/Serializer;
            1    4     3        file  Ljava/io/File;
    MethodParameters:
            Name  Flags
      filename    final
      serializer  final

  private java.lang.ClassLoader[] loaders();
    descriptor: ()[Ljava/lang/ClassLoader;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.reflections.Reflections this
         0: .line 659
            aload 0 /* this */
            getfield org.reflections.Reflections.configuration:Lorg/reflections/Configuration;
            invokeinterface org.reflections.Configuration.getClassLoaders:()[Ljava/lang/ClassLoader;
            areturn
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/reflections/Reflections;

  private void lambda$0(java.net.URL);
    descriptor: (Ljava/net/URL;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
         0: .line 210
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ifnull 2
         1: .line 211
            getstatic org.reflections.Reflections.log:Lorg/slf4j/Logger;
            ldc "[{}] scanning {}"
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.toString:()Ljava/lang/String;
            aload 1
            invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 213
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1
            invokevirtual org.reflections.Reflections.scan:(Ljava/net/URL;)V
         3: .line 214
            return
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/reflections/Reflections;

  private static boolean lambda$1(java.util.Set, java.lang.String);
    descriptor: (Ljava/util/Set;Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String s
         0: .line 451
            aload 0
            aload 1 /* s */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 1 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     1     s  Ljava/lang/String;

  private boolean lambda$2(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.String input
         0: .line 460
            aload 1 /* input */
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.ReflectionUtils.forName:(Ljava/lang/String;[Ljava/lang/ClassLoader;)Ljava/lang/Class;
            astore 2 /* type */
        start local 2 // java.lang.Class type
         1: .line 461
            aload 2 /* type */
            ifnull 2
            aload 2 /* type */
            invokevirtual java.lang.Class.isInterface:()Z
            ifne 2
            iconst_1
            ireturn
      StackMap locals: java.lang.Class
      StackMap stack:
         2: iconst_0
            ireturn
        end local 2 // java.lang.Class type
        end local 1 // java.lang.String input
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/reflections/Reflections;
            0    3     1  input  Ljava/lang/String;
            1    3     2   type  Ljava/lang/Class<*>;

  private java.lang.reflect.Field lambda$3(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/reflect/Field;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.reflections.Reflections this
        start local 1 // java.lang.String annotated
         0: .line 547
            aload 1 /* annotated */
            aload 0 /* this */
            invokevirtual org.reflections.Reflections.loaders:()[Ljava/lang/ClassLoader;
            invokestatic org.reflections.util.Utils.getFieldFromString:(Ljava/lang/String;[Ljava/lang/ClassLoader;)Ljava/lang/reflect/Field;
            areturn
        end local 1 // java.lang.String annotated
        end local 0 // org.reflections.Reflections this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/reflections/Reflections;
            0    1     1  annotated  Ljava/lang/String;

  private static boolean lambda$4(java.util.regex.Pattern, java.lang.String);
    descriptor: (Ljava/util/regex/Pattern;Ljava/lang/String;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String input
         0: .line 572
            aload 0
            aload 1 /* input */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            invokevirtual java.util.regex.Matcher.matches:()Z
            ireturn
        end local 1 // java.lang.String input
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     1  input  Ljava/lang/String;
}
SourceFile: "Reflections.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Dir = org.reflections.vfs.Vfs$Dir of org.reflections.vfs.Vfs
  public abstract File = org.reflections.vfs.Vfs$File of org.reflections.vfs.Vfs