public class org.jruby.embed.jsr223.JRubyEngineFactory implements javax.script.ScriptEngineFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.embed.jsr223.JRubyEngineFactory
  super_class: java.lang.Object
{
  private final java.lang.String engineName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private final java.util.List<java.lang.String> extensions;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Ljava/lang/String;>;

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

  private java.lang.String languageVersion;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private final java.util.List<java.lang.String> mimeTypes;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Ljava/lang/String;>;

  private final java.util.List<java.lang.String> engineIds;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Ljava/lang/String;>;

  private java.util.Map<java.lang.String, java.lang.Object> parameters;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 62
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 63
            aload 0 /* this */
            ldc "JSR 223 JRuby Engine"
            putfield org.jruby.embed.jsr223.JRubyEngineFactory.engineName:Ljava/lang/String;
         2: .line 64
            aload 0 /* this */
            ldc "9.2.9.0"
            putfield org.jruby.embed.jsr223.JRubyEngineFactory.engineVersion:Ljava/lang/String;
         3: .line 65
            aload 0 /* this */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "rb"
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            putfield org.jruby.embed.jsr223.JRubyEngineFactory.extensions:Ljava/util/List;
         4: .line 66
            aload 0 /* this */
            ldc "ruby"
            putfield org.jruby.embed.jsr223.JRubyEngineFactory.languageName:Ljava/lang/String;
         5: .line 67
            aload 0 /* this */
            ldc "jruby 9.2.9.0"
            putfield org.jruby.embed.jsr223.JRubyEngineFactory.languageVersion:Ljava/lang/String;
         6: .line 68
            aload 0 /* this */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "application/x-ruby"
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            putfield org.jruby.embed.jsr223.JRubyEngineFactory.mimeTypes:Ljava/util/List;
         7: .line 69
            aload 0 /* this */
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "ruby"
            aastore
            dup
            iconst_1
            ldc "jruby"
            aastore
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            putfield org.jruby.embed.jsr223.JRubyEngineFactory.engineIds:Ljava/util/List;
         8: .line 72
            return
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;

  private void initParameters();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 75
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.jruby.embed.jsr223.JRubyEngineFactory.parameters:Ljava/util/Map;
         1: .line 76
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.parameters:Ljava/util/Map;
            ldc "javax.script.engine"
            aload 0 /* this */
            invokevirtual org.jruby.embed.jsr223.JRubyEngineFactory.getEngineName:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 77
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.parameters:Ljava/util/Map;
            ldc "javax.script.engine_version"
            aload 0 /* this */
            invokevirtual org.jruby.embed.jsr223.JRubyEngineFactory.getEngineVersion:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 78
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.parameters:Ljava/util/Map;
            ldc "javax.script.name"
            aload 0 /* this */
            invokevirtual org.jruby.embed.jsr223.JRubyEngineFactory.getEngineName:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 79
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.parameters:Ljava/util/Map;
            ldc "javax.script.language"
            aload 0 /* this */
            invokevirtual org.jruby.embed.jsr223.JRubyEngineFactory.getLanguageName:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 80
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.parameters:Ljava/util/Map;
            ldc "javax.script.language_version"
            aload 0 /* this */
            invokevirtual org.jruby.embed.jsr223.JRubyEngineFactory.getLanguageVersion:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 81
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.parameters:Ljava/util/Map;
            ldc "THREADING"
            ldc "THREAD-ISOLATED"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 82
            return
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;

  public java.lang.String getEngineName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 85
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.engineName:Ljava/lang/String;
            areturn
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;

  public java.lang.String getEngineVersion();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 89
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.engineVersion:Ljava/lang/String;
            areturn
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;

  public java.util.List getExtensions();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 93
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.extensions:Ljava/util/List;
            areturn
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;

  public java.lang.String getLanguageName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 97
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.languageName:Ljava/lang/String;
            areturn
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;

  public java.lang.String getLanguageVersion();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 101
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.languageVersion:Ljava/lang/String;
            areturn
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;

  public java.lang.String getMethodCallSyntax(java.lang.String, java.lang.String, java.lang.String[]);
    descriptor: (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
        start local 1 // java.lang.String obj
        start local 2 // java.lang.String m
        start local 3 // java.lang.String[] args
         0: .line 105
            aload 2 /* m */
            ifnull 1
            aload 2 /* m */
            invokevirtual java.lang.String.length:()I
            ifne 2
         1: .line 106
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
         2: .line 108
      StackMap locals:
      StackMap stack:
            aload 3 /* args */
            ifnull 3
            aload 3 /* args */
            arraylength
            ifne 6
         3: .line 109
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            ifnull 4
            aload 1 /* obj */
            invokevirtual java.lang.String.length:()I
            ifne 5
         4: .line 110
      StackMap locals:
      StackMap stack:
            ldc "{0}"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* m */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
         5: .line 112
      StackMap locals:
      StackMap stack:
            ldc "{0}.{1}"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* obj */
            aastore
            dup
            iconst_1
            aload 2 /* m */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
         6: .line 115
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 4 /* builder */
        start local 4 // java.lang.StringBuilder builder
         7: .line 116
            iconst_1
            istore 5 /* first */
        start local 5 // boolean first
         8: .line 117
            aload 3 /* args */
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 15
      StackMap locals: org.jruby.embed.jsr223.JRubyEngineFactory java.lang.String java.lang.String java.lang.String[] java.lang.StringBuilder int top int int java.lang.String[]
      StackMap stack:
         9: aload 9
            iload 7
            aaload
            astore 6 /* arg */
        start local 6 // java.lang.String arg
        10: .line 118
            iload 5 /* first */
            ifne 12
        11: .line 119
            aload 4 /* builder */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 121
      StackMap locals: org.jruby.embed.jsr223.JRubyEngineFactory java.lang.String java.lang.String java.lang.String[] java.lang.StringBuilder int java.lang.String int int java.lang.String[]
      StackMap stack:
            iconst_0
            istore 5 /* first */
        13: .line 122
            aload 4 /* builder */
            aload 6 /* arg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 6 // java.lang.String arg
        14: .line 117
            iinc 7 1
      StackMap locals: org.jruby.embed.jsr223.JRubyEngineFactory java.lang.String java.lang.String java.lang.String[] java.lang.StringBuilder int top int int java.lang.String[]
      StackMap stack:
        15: iload 7
            iload 8
            if_icmplt 9
        16: .line 124
            aload 1 /* obj */
            ifnull 17
            aload 1 /* obj */
            invokevirtual java.lang.String.length:()I
            ifne 18
        17: .line 125
      StackMap locals: org.jruby.embed.jsr223.JRubyEngineFactory java.lang.String java.lang.String java.lang.String[] java.lang.StringBuilder int
      StackMap stack:
            ldc "{0}({1})"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* m */
            aastore
            dup
            iconst_1
            aload 4 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        18: .line 127
      StackMap locals:
      StackMap stack:
            ldc "{0}.{1}({2})"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* obj */
            aastore
            dup
            iconst_1
            aload 2 /* m */
            aastore
            dup
            iconst_2
            aload 4 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 5 // boolean first
        end local 4 // java.lang.StringBuilder builder
        end local 3 // java.lang.String[] args
        end local 2 // java.lang.String m
        end local 1 // java.lang.String obj
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   19     0     this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;
            0   19     1      obj  Ljava/lang/String;
            0   19     2        m  Ljava/lang/String;
            0   19     3     args  [Ljava/lang/String;
            7   19     4  builder  Ljava/lang/StringBuilder;
            8   19     5    first  Z
           10   14     6      arg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      obj   
      m     
      args  

  public java.util.List getMimeTypes();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 133
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.mimeTypes:Ljava/util/List;
            areturn
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;

  public java.util.List getNames();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 137
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.engineIds:Ljava/util/List;
            areturn
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;

  public java.lang.String getOutputStatement(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
        start local 1 // java.lang.String toDisplay
         0: .line 141
            aload 1 /* toDisplay */
            ifnull 1
            aload 1 /* toDisplay */
            invokevirtual java.lang.String.length:()I
            ifne 2
         1: .line 142
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
         2: .line 144
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "puts "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* toDisplay */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\nor\nprint "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* toDisplay */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.String toDisplay
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;
            0    3     1  toDisplay  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      toDisplay  

  public java.lang.Object getParameter(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
        start local 1 // java.lang.String key
         0: .line 148
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.parameters:Ljava/util/Map;
            ifnonnull 2
         1: .line 149
            aload 0 /* this */
            invokevirtual org.jruby.embed.jsr223.JRubyEngineFactory.initParameters:()V
         2: .line 151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jruby.embed.jsr223.JRubyEngineFactory.parameters:Ljava/util/Map;
            aload 1 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            areturn
        end local 1 // java.lang.String key
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;
            0    3     1   key  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      key   

  public java.lang.String getProgram(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
        start local 1 // java.lang.String[] statements
         0: .line 155
            aload 1 /* statements */
            ifnull 1
            aload 1 /* statements */
            arraylength
            ifne 2
         1: .line 156
      StackMap locals:
      StackMap stack:
            ldc ""
            areturn
         2: .line 158
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuffer
            dup
            invokespecial java.lang.StringBuffer.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuffer sb
         3: .line 159
            aload 1 /* statements */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 8
      StackMap locals: org.jruby.embed.jsr223.JRubyEngineFactory java.lang.String[] java.lang.StringBuffer top int int java.lang.String[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* s */
        start local 3 // java.lang.String s
         5: .line 160
            aload 2 /* sb */
            aload 3 /* s */
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
         6: .line 161
            aload 2 /* sb */
            ldc "\n"
            invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
            pop
        end local 3 // java.lang.String s
         7: .line 159
            iinc 4 1
      StackMap locals:
      StackMap stack:
         8: iload 4
            iload 5
            if_icmplt 4
         9: .line 163
            new java.lang.String
            dup
            aload 2 /* sb */
            invokespecial java.lang.String.<init>:(Ljava/lang/StringBuffer;)V
            areturn
        end local 2 // java.lang.StringBuffer sb
        end local 1 // java.lang.String[] statements
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;
            0   10     1  statements  [Ljava/lang/String;
            3   10     2          sb  Ljava/lang/StringBuffer;
            5    7     3           s  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      statements  

  public javax.script.ScriptEngine getScriptEngine();
    descriptor: ()Ljavax/script/ScriptEngine;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
         0: .line 167
            getstatic org.jruby.embed.LocalContextScope.SINGLETON:Lorg/jruby/embed/LocalContextScope;
            invokestatic org.jruby.embed.util.SystemPropertyCatcher.getScope:(Lorg/jruby/embed/LocalContextScope;)Lorg/jruby/embed/LocalContextScope;
            astore 1 /* scope */
        start local 1 // org.jruby.embed.LocalContextScope scope
         1: .line 168
            getstatic org.jruby.embed.LocalVariableBehavior.PERSISTENT:Lorg/jruby/embed/LocalVariableBehavior;
            invokestatic org.jruby.embed.util.SystemPropertyCatcher.getBehavior:(Lorg/jruby/embed/LocalVariableBehavior;)Lorg/jruby/embed/LocalVariableBehavior;
            astore 2 /* behavior */
        start local 2 // org.jruby.embed.LocalVariableBehavior behavior
         2: .line 169
            iconst_0
            invokestatic org.jruby.embed.util.SystemPropertyCatcher.isLazy:(Z)Z
            istore 3 /* lazy */
        start local 3 // boolean lazy
         3: .line 170
            new org.jruby.embed.ScriptingContainer
            dup
            aload 1 /* scope */
            aload 2 /* behavior */
            iload 3 /* lazy */
            invokespecial org.jruby.embed.ScriptingContainer.<init>:(Lorg/jruby/embed/LocalContextScope;Lorg/jruby/embed/LocalVariableBehavior;Z)V
            astore 4 /* container */
        start local 4 // org.jruby.embed.ScriptingContainer container
         4: .line 171
            aload 4 /* container */
            invokestatic org.jruby.embed.util.SystemPropertyCatcher.setClassLoader:(Lorg/jruby/embed/ScriptingContainer;)V
         5: .line 172
            aload 4 /* container */
            invokestatic org.jruby.embed.util.SystemPropertyCatcher.setConfiguration:(Lorg/jruby/embed/ScriptingContainer;)V
         6: .line 173
            new org.jruby.embed.jsr223.JRubyEngine
            dup
            aload 4 /* container */
            aload 0 /* this */
            invokespecial org.jruby.embed.jsr223.JRubyEngine.<init>:(Lorg/jruby/embed/ScriptingContainer;Lorg/jruby/embed/jsr223/JRubyEngineFactory;)V
            astore 5 /* engine */
        start local 5 // org.jruby.embed.jsr223.JRubyEngine engine
         7: .line 174
            aload 5 /* engine */
            areturn
        end local 5 // org.jruby.embed.jsr223.JRubyEngine engine
        end local 4 // org.jruby.embed.ScriptingContainer container
        end local 3 // boolean lazy
        end local 2 // org.jruby.embed.LocalVariableBehavior behavior
        end local 1 // org.jruby.embed.LocalContextScope scope
        end local 0 // org.jruby.embed.jsr223.JRubyEngineFactory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/jruby/embed/jsr223/JRubyEngineFactory;
            1    8     1      scope  Lorg/jruby/embed/LocalContextScope;
            2    8     2   behavior  Lorg/jruby/embed/LocalVariableBehavior;
            3    8     3       lazy  Z
            4    8     4  container  Lorg/jruby/embed/ScriptingContainer;
            7    8     5     engine  Lorg/jruby/embed/jsr223/JRubyEngine;
}
SourceFile: "JRubyEngineFactory.java"