class org.openjdk.jmh.runner.AbstractResourceReader
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.openjdk.jmh.runner.AbstractResourceReader
  super_class: java.lang.Object
{
  private final java.lang.String file;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String resource;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String strings;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.openjdk.jmh.runner.AbstractResourceReader this
        start local 1 // java.lang.String file
        start local 2 // java.lang.String resource
        start local 3 // java.lang.String strings
         0: .line 41
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 42
            aload 0 /* this */
            aload 1 /* file */
            putfield org.openjdk.jmh.runner.AbstractResourceReader.file:Ljava/lang/String;
         2: .line 43
            aload 0 /* this */
            aload 2 /* resource */
            putfield org.openjdk.jmh.runner.AbstractResourceReader.resource:Ljava/lang/String;
         3: .line 44
            aload 0 /* this */
            aload 3 /* strings */
            putfield org.openjdk.jmh.runner.AbstractResourceReader.strings:Ljava/lang/String;
         4: .line 45
            return
        end local 3 // java.lang.String strings
        end local 2 // java.lang.String resource
        end local 1 // java.lang.String file
        end local 0 // org.openjdk.jmh.runner.AbstractResourceReader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/openjdk/jmh/runner/AbstractResourceReader;
            0    5     1      file  Ljava/lang/String;
            0    5     2  resource  Ljava/lang/String;
            0    5     3   strings  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      file      
      resource  
      strings   

  protected java.util.List<java.io.Reader> getReaders();
    descriptor: ()Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // org.openjdk.jmh.runner.AbstractResourceReader this
         0: .line 53
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.strings:Ljava/lang/String;
            ifnull 2
         1: .line 54
            new java.io.StringReader
            dup
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.strings:Ljava/lang/String;
            invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            areturn
         2: .line 57
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.file:Ljava/lang/String;
            ifnull 7
         3: .line 59
            new java.io.InputStreamReader
            dup
            new java.io.FileInputStream
            dup
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.file:Ljava/lang/String;
            invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
         4: areturn
         5: .line 60
      StackMap locals:
      StackMap stack: java.io.FileNotFoundException
            astore 1 /* e */
        start local 1 // java.io.FileNotFoundException e
         6: .line 61
            new java.lang.RuntimeException
            dup
            ldc "ERROR: Could not find resource"
            aload 1 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.io.FileNotFoundException e
         7: .line 65
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.resource:Ljava/lang/String;
            ifnull 35
         8: .line 68
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
         9: .line 69
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.resource:Ljava/lang/String;
            ldc "/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 11
        10: .line 70
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.resource:Ljava/lang/String;
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            goto 12
        11: .line 71
      StackMap locals:
      StackMap stack: java.lang.ClassLoader
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.resource:Ljava/lang/String;
        12: .line 68
      StackMap locals: org.openjdk.jmh.runner.AbstractResourceReader
      StackMap stack: java.lang.ClassLoader java.lang.String
            invokevirtual java.lang.ClassLoader.getResources:(Ljava/lang/String;)Ljava/util/Enumeration;
            astore 1 /* urls */
        start local 1 // java.util.Enumeration urls
        13: .line 73
            goto 16
        end local 1 // java.util.Enumeration urls
      StackMap locals:
      StackMap stack: java.io.IOException
        14: astore 2 /* e */
        start local 2 // java.io.IOException e
        15: .line 74
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "ERROR: While obtaining resource: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.resource:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException e
        start local 1 // java.util.Enumeration urls
        16: .line 77
      StackMap locals: java.util.Enumeration
      StackMap stack:
            aload 1 /* urls */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifeq 34
        17: .line 78
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* readers */
        start local 2 // java.util.List readers
        18: .line 79
            aconst_null
            astore 3 /* url */
        start local 3 // java.net.URL url
        19: .line 81
            goto 23
        20: .line 82
      StackMap locals: java.util.List java.net.URL
      StackMap stack:
            aload 1 /* urls */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast java.net.URL
            astore 3 /* url */
        21: .line 83
            aload 3 /* url */
            invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
            astore 4 /* stream */
        start local 4 // java.io.InputStream stream
        22: .line 84
            aload 2 /* readers */
            new java.io.InputStreamReader
            dup
            aload 4 /* stream */
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // java.io.InputStream stream
        23: .line 81
      StackMap locals:
      StackMap stack:
            aload 1 /* urls */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 20
        24: .line 86
            goto 33
      StackMap locals:
      StackMap stack: java.io.IOException
        25: astore 4 /* e */
        start local 4 // java.io.IOException e
        26: .line 87
            aload 2 /* readers */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 31
      StackMap locals: org.openjdk.jmh.runner.AbstractResourceReader java.util.Enumeration java.util.List java.net.URL java.io.IOException top java.util.Iterator
      StackMap stack:
        27: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.io.Reader
            astore 5 /* r */
        start local 5 // java.io.Reader r
        28: .line 89
            aload 5 /* r */
            invokevirtual java.io.Reader.close:()V
        29: .line 90
            goto 31
      StackMap locals: org.openjdk.jmh.runner.AbstractResourceReader java.util.Enumeration java.util.List java.net.URL java.io.IOException java.io.Reader java.util.Iterator
      StackMap stack: java.io.IOException
        30: pop
        end local 5 // java.io.Reader r
        31: .line 87
      StackMap locals: org.openjdk.jmh.runner.AbstractResourceReader java.util.Enumeration java.util.List java.net.URL java.io.IOException top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 27
        32: .line 94
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "ERROR: While opening resource: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* url */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.io.IOException e
        33: .line 96
      StackMap locals: org.openjdk.jmh.runner.AbstractResourceReader java.util.Enumeration java.util.List java.net.URL
      StackMap stack:
            aload 2 /* readers */
            areturn
        end local 3 // java.net.URL url
        end local 2 // java.util.List readers
        34: .line 98
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "ERROR: Unable to find the resource: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.openjdk.jmh.runner.AbstractResourceReader.resource:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.util.Enumeration urls
        35: .line 102
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
        end local 0 // org.openjdk.jmh.runner.AbstractResourceReader this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   36     0     this  Lorg/openjdk/jmh/runner/AbstractResourceReader;
            6    7     1        e  Ljava/io/FileNotFoundException;
           13   14     1     urls  Ljava/util/Enumeration<Ljava/net/URL;>;
           16   35     1     urls  Ljava/util/Enumeration<Ljava/net/URL;>;
           15   16     2        e  Ljava/io/IOException;
           18   34     2  readers  Ljava/util/List<Ljava/io/Reader;>;
           19   34     3      url  Ljava/net/URL;
           22   23     4   stream  Ljava/io/InputStream;
           26   33     4        e  Ljava/io/IOException;
           28   31     5        r  Ljava/io/Reader;
      Exception table:
        from    to  target  type
           3     4       5  Class java.io.FileNotFoundException
           8    13      14  Class java.io.IOException
          19    24      25  Class java.io.IOException
          28    29      30  Class java.io.IOException
    Signature: ()Ljava/util/List<Ljava/io/Reader;>;
}
SourceFile: "AbstractResourceReader.java"