public class org.jruby.ir.runtime.IRRuntimeHelpers
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.ir.runtime.IRRuntimeHelpers
  super_class: java.lang.Object
{
  private static final org.jruby.util.log.Logger LOG;
    descriptor: Lorg/jruby/util/log/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.ir.runtime.IRRuntimeHelpers$InvalidKeyException INVALID_KEY_EXCEPTION;
    descriptor: Lorg/jruby/ir/runtime/IRRuntimeHelpers$InvalidKeyException;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final org.jruby.RubyHash$VisitorWithState<org.jruby.parser.StaticScope> CheckUnwantedKeywordsVisitor;
    descriptor: Lorg/jruby/RubyHash$VisitorWithState;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/jruby/RubyHash$VisitorWithState<Lorg/jruby/parser/StaticScope;>;

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$org$jruby$ir$IRScopeType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$org$jruby$EvalType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$org$jruby$runtime$Block$Type;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 92
            ldc Lorg/jruby/ir/runtime/IRRuntimeHelpers;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.jruby.ir.runtime.IRRuntimeHelpers.$assertionsDisabled:Z
         3: .line 93
            ldc Lorg/jruby/ir/runtime/IRRuntimeHelpers;
            invokestatic org.jruby.util.log.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/jruby/util/log/Logger;
            putstatic org.jruby.ir.runtime.IRRuntimeHelpers.LOG:Lorg/jruby/util/log/Logger;
         4: .line 744
            new org.jruby.ir.runtime.IRRuntimeHelpers$InvalidKeyException
            dup
            invokespecial org.jruby.ir.runtime.IRRuntimeHelpers$InvalidKeyException.<init>:()V
            putstatic org.jruby.ir.runtime.IRRuntimeHelpers.INVALID_KEY_EXCEPTION:Lorg/jruby/ir/runtime/IRRuntimeHelpers$InvalidKeyException;
         5: .line 745
            new org.jruby.ir.runtime.IRRuntimeHelpers$1
            dup
            invokespecial org.jruby.ir.runtime.IRRuntimeHelpers$1.<init>:()V
            putstatic org.jruby.ir.runtime.IRRuntimeHelpers.CheckUnwantedKeywordsVisitor:Lorg/jruby/RubyHash$VisitorWithState;
         6: .line 753
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ir.runtime.IRRuntimeHelpers this
         0: .line 92
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.jruby.ir.runtime.IRRuntimeHelpers this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ir/runtime/IRRuntimeHelpers;

  public static boolean inProfileMode();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 96
            getstatic org.jruby.RubyInstanceConfig.IR_PROFILE:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static boolean isDebug();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 100
            getstatic org.jruby.RubyInstanceConfig.IR_DEBUG:Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static boolean inNonMethodBodyLambda(org.jruby.parser.StaticScope, org.jruby.runtime.Block$Type);
    descriptor: (Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/Block$Type;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.parser.StaticScope scope
        start local 1 // org.jruby.runtime.Block$Type blockType
         0: .line 109
            aload 1 /* blockType */
            getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
            if_acmpne 1
            aload 0 /* scope */
            invokevirtual org.jruby.parser.StaticScope.isArgumentScope:()Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // org.jruby.runtime.Block$Type blockType
        end local 0 // org.jruby.parser.StaticScope scope
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0      scope  Lorg/jruby/parser/StaticScope;
            0    2     1  blockType  Lorg/jruby/runtime/Block$Type;
    MethodParameters:
           Name  Flags
      scope      
      blockType  

  public static boolean inMethod(org.jruby.runtime.Block$Type);
    descriptor: (Lorg/jruby/runtime/Block$Type;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.Block$Type blockType
         0: .line 113
            aload 0 /* blockType */
            ifnonnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.runtime.Block$Type blockType
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  blockType  Lorg/jruby/runtime/Block$Type;
    MethodParameters:
           Name  Flags
      blockType  

  public static boolean inLambda(org.jruby.runtime.Block$Type);
    descriptor: (Lorg/jruby/runtime/Block$Type;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.Block$Type blockType
         0: .line 117
            aload 0 /* blockType */
            getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.runtime.Block$Type blockType
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  blockType  Lorg/jruby/runtime/Block$Type;
    MethodParameters:
           Name  Flags
      blockType  

  public static boolean inProc(org.jruby.runtime.Block$Type);
    descriptor: (Lorg/jruby/runtime/Block$Type;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.Block$Type blockType
         0: .line 121
            aload 0 /* blockType */
            getstatic org.jruby.runtime.Block$Type.PROC:Lorg/jruby/runtime/Block$Type;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.jruby.runtime.Block$Type blockType
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  blockType  Lorg/jruby/runtime/Block$Type;
    MethodParameters:
           Name  Flags
      blockType  

  public static void checkForLJE(org.jruby.runtime.ThreadContext, org.jruby.runtime.DynamicScope, boolean, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;ZLorg/jruby/runtime/Block;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.DynamicScope currentScope
        start local 2 // boolean definedWithinMethod
        start local 3 // org.jruby.runtime.Block block
         0: .line 128
            aload 3 /* block */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.inLambda:(Lorg/jruby/runtime/Block$Type;)Z
            ifeq 1
            return
         1: .line 130
      StackMap locals:
      StackMap stack:
            aload 1 /* currentScope */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.getContainingReturnToScope:(Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/runtime/DynamicScope;
            astore 4 /* returnToScope */
        start local 4 // org.jruby.runtime.DynamicScope returnToScope
         2: .line 131
            aload 4 /* returnToScope */
            ifnull 13
         3: .line 132
            aload 4 /* returnToScope */
            invokevirtual org.jruby.runtime.DynamicScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            astore 5 /* staticScope */
        start local 5 // org.jruby.parser.StaticScope staticScope
         4: .line 133
            aload 5 /* staticScope */
            invokevirtual org.jruby.parser.StaticScope.isArgumentScope:()Z
            ifeq 5
            aload 5 /* staticScope */
            invokevirtual org.jruby.parser.StaticScope.getScopeType:()Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.isBlock:()Z
            ifeq 5
            iconst_1
            goto 6
      StackMap locals: org.jruby.runtime.DynamicScope org.jruby.parser.StaticScope
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 6 /* inDefineMethod */
        start local 6 // boolean inDefineMethod
         7: .line 134
            aload 5 /* staticScope */
            invokevirtual org.jruby.parser.StaticScope.getScopeType:()Lorg/jruby/ir/IRScopeType;
            getstatic org.jruby.ir.IRScopeType.SCRIPT_BODY:Lorg/jruby/ir/IRScopeType;
            if_acmpne 8
            iconst_1
            goto 9
      StackMap locals: int
      StackMap stack:
         8: iconst_0
      StackMap locals:
      StackMap stack: int
         9: istore 7 /* topLevel */
        start local 7 // boolean topLevel
        10: .line 136
            iload 2 /* definedWithinMethod */
            ifne 11
            iload 6 /* inDefineMethod */
            ifne 11
            iload 7 /* topLevel */
            ifeq 13
      StackMap locals: int
      StackMap stack:
        11: aload 0 /* context */
            aload 4 /* returnToScope */
            invokevirtual org.jruby.runtime.ThreadContext.scopeExistsOnCallStack:(Lorg/jruby/runtime/DynamicScope;)Z
            ifeq 13
        12: .line 137
            return
        end local 7 // boolean topLevel
        end local 6 // boolean inDefineMethod
        end local 5 // org.jruby.parser.StaticScope staticScope
        13: .line 141
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ir.operands.IRException.RETURN_LocalJumpError:Lorg/jruby/ir/operands/IRException;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.ir.operands.IRException.getException:(Lorg/jruby/Ruby;)Ljava/lang/RuntimeException;
            athrow
        end local 4 // org.jruby.runtime.DynamicScope returnToScope
        end local 3 // org.jruby.runtime.Block block
        end local 2 // boolean definedWithinMethod
        end local 1 // org.jruby.runtime.DynamicScope currentScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   14     0              context  Lorg/jruby/runtime/ThreadContext;
            0   14     1         currentScope  Lorg/jruby/runtime/DynamicScope;
            0   14     2  definedWithinMethod  Z
            0   14     3                block  Lorg/jruby/runtime/Block;
            2   14     4        returnToScope  Lorg/jruby/runtime/DynamicScope;
            4   13     5          staticScope  Lorg/jruby/parser/StaticScope;
            7   13     6       inDefineMethod  Z
           10   13     7             topLevel  Z
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
      org.jruby.ir.JIT()
    MethodParameters:
                     Name  Flags
      context              
      currentScope         
      definedWithinMethod  
      block                

  private static org.jruby.runtime.DynamicScope getContainingLambda(org.jruby.runtime.DynamicScope);
    descriptor: (Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/runtime/DynamicScope;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.jruby.runtime.DynamicScope dynamicScope
         0: .line 152
            aload 0 /* dynamicScope */
            astore 1 /* scope */
        start local 1 // org.jruby.runtime.DynamicScope scope
         1: goto 4
         2: .line 154
      StackMap locals: org.jruby.runtime.DynamicScope
      StackMap stack:
            aload 1 /* scope */
            invokevirtual org.jruby.runtime.DynamicScope.isLambda:()Z
            ifeq 3
            aload 1 /* scope */
            invokevirtual org.jruby.runtime.DynamicScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            invokevirtual org.jruby.parser.StaticScope.isArgumentScope:()Z
            ifne 3
            aload 1 /* scope */
            areturn
         3: .line 152
      StackMap locals:
      StackMap stack:
            aload 1 /* scope */
            invokevirtual org.jruby.runtime.DynamicScope.getParentScope:()Lorg/jruby/runtime/DynamicScope;
            astore 1 /* scope */
      StackMap locals:
      StackMap stack:
         4: aload 1 /* scope */
            ifnull 5
            aload 1 /* scope */
            invokevirtual org.jruby.runtime.DynamicScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            invokevirtual org.jruby.parser.StaticScope.isBlockScope:()Z
            ifne 2
        end local 1 // org.jruby.runtime.DynamicScope scope
         5: .line 157
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // org.jruby.runtime.DynamicScope dynamicScope
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0  dynamicScope  Lorg/jruby/runtime/DynamicScope;
            1    5     1         scope  Lorg/jruby/runtime/DynamicScope;
    MethodParameters:
              Name  Flags
      dynamicScope  

  public static org.jruby.runtime.builtin.IRubyObject initiateNonLocalReturn(org.jruby.runtime.DynamicScope, org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/Block;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.runtime.DynamicScope currentScope
        start local 1 // org.jruby.runtime.Block block
        start local 2 // org.jruby.runtime.builtin.IRubyObject returnValue
         0: .line 163
            aload 1 /* block */
            ifnull 1
            aload 1 /* block */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.inLambda:(Lorg/jruby/runtime/Block$Type;)Z
            ifeq 1
            new org.jruby.ir.runtime.IRWrappedLambdaReturnValue
            dup
            aload 2 /* returnValue */
            invokespecial org.jruby.ir.runtime.IRWrappedLambdaReturnValue.<init>:(Lorg/jruby/runtime/builtin/IRubyObject;)V
            athrow
         1: .line 165
      StackMap locals:
      StackMap stack:
            aload 0 /* currentScope */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.getContainingLambda:(Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/runtime/DynamicScope;
            astore 3 /* returnToScope */
        start local 3 // org.jruby.runtime.DynamicScope returnToScope
         2: .line 167
            aload 3 /* returnToScope */
            ifnonnull 3
            aload 0 /* currentScope */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.getContainingReturnToScope:(Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/runtime/DynamicScope;
            astore 3 /* returnToScope */
         3: .line 169
      StackMap locals: org.jruby.runtime.DynamicScope
      StackMap stack:
            getstatic org.jruby.ir.runtime.IRRuntimeHelpers.$assertionsDisabled:Z
            ifne 4
            aload 3 /* returnToScope */
            ifnonnull 4
            new java.lang.AssertionError
            dup
            ldc "accidental return scope"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         4: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* currentScope */
            invokevirtual org.jruby.runtime.DynamicScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            invokevirtual org.jruby.parser.StaticScope.getIRScope:()Lorg/jruby/ir/IRScope;
            aload 3 /* returnToScope */
            aload 2 /* returnValue */
            invokestatic org.jruby.ir.runtime.IRReturnJump.create:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/DynamicScope;Ljava/lang/Object;)Lorg/jruby/ir/runtime/IRReturnJump;
            athrow
        end local 3 // org.jruby.runtime.DynamicScope returnToScope
        end local 2 // org.jruby.runtime.builtin.IRubyObject returnValue
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.DynamicScope currentScope
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0   currentScope  Lorg/jruby/runtime/DynamicScope;
            0    5     1          block  Lorg/jruby/runtime/Block;
            0    5     2    returnValue  Lorg/jruby/runtime/builtin/IRubyObject;
            2    5     3  returnToScope  Lorg/jruby/runtime/DynamicScope;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
              Name  Flags
      currentScope  
      block         
      returnValue   

  private static org.jruby.runtime.DynamicScope getContainingReturnToScope(org.jruby.runtime.DynamicScope);
    descriptor: (Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/runtime/DynamicScope;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.jruby.runtime.DynamicScope returnLocationScope
         0: .line 176
            aload 0 /* returnLocationScope */
            astore 1 /* current */
        start local 1 // org.jruby.runtime.DynamicScope current
         1: goto 9
         2: .line 177
      StackMap locals: org.jruby.runtime.DynamicScope
      StackMap stack:
            aload 1 /* current */
            invokevirtual org.jruby.runtime.DynamicScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            astore 2 /* staticScope */
        start local 2 // org.jruby.parser.StaticScope staticScope
         3: .line 178
            aload 2 /* staticScope */
            invokevirtual org.jruby.parser.StaticScope.getScopeType:()Lorg/jruby/ir/IRScopeType;
            astore 3 /* scopeType */
        start local 3 // org.jruby.ir.IRScopeType scopeType
         4: .line 181
            aload 3 /* scopeType */
            invokevirtual org.jruby.ir.IRScopeType.isMethodType:()Z
            ifne 7
         5: .line 182
            aload 3 /* scopeType */
            invokevirtual org.jruby.ir.IRScopeType.isBlock:()Z
            ifeq 6
            aload 2 /* staticScope */
            invokevirtual org.jruby.parser.StaticScope.isArgumentScope:()Z
            ifne 7
         6: .line 183
      StackMap locals: org.jruby.parser.StaticScope org.jruby.ir.IRScopeType
      StackMap stack:
            aload 3 /* scopeType */
            getstatic org.jruby.ir.IRScopeType.SCRIPT_BODY:Lorg/jruby/ir/IRScopeType;
            if_acmpne 8
         7: .line 184
      StackMap locals:
      StackMap stack:
            aload 1 /* current */
            areturn
        end local 3 // org.jruby.ir.IRScopeType scopeType
        end local 2 // org.jruby.parser.StaticScope staticScope
         8: .line 176
      StackMap locals:
      StackMap stack:
            aload 1 /* current */
            invokevirtual org.jruby.runtime.DynamicScope.getParentScope:()Lorg/jruby/runtime/DynamicScope;
            astore 1 /* current */
      StackMap locals:
      StackMap stack:
         9: aload 1 /* current */
            ifnonnull 2
        end local 1 // org.jruby.runtime.DynamicScope current
        10: .line 188
            aconst_null
            areturn
        end local 0 // org.jruby.runtime.DynamicScope returnLocationScope
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   11     0  returnLocationScope  Lorg/jruby/runtime/DynamicScope;
            1   10     1              current  Lorg/jruby/runtime/DynamicScope;
            3    8     2          staticScope  Lorg/jruby/parser/StaticScope;
            4    8     3            scopeType  Lorg/jruby/ir/IRScopeType;
    MethodParameters:
                     Name  Flags
      returnLocationScope  

  public static org.jruby.runtime.builtin.IRubyObject handleNonlocalReturn(org.jruby.runtime.DynamicScope, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/DynamicScope;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.runtime.DynamicScope currentScope
        start local 1 // java.lang.Object rjExc
         0: .line 193
            aload 1 /* rjExc */
            instanceof org.jruby.ir.runtime.IRReturnJump
            ifne 3
         1: .line 194
            aload 1 /* rjExc */
            checkcast java.lang.Throwable
            invokestatic org.jruby.runtime.Helpers.throwException:(Ljava/lang/Throwable;)V
         2: .line 195
            aconst_null
            areturn
         3: .line 197
      StackMap locals:
      StackMap stack:
            aload 1 /* rjExc */
            checkcast org.jruby.ir.runtime.IRReturnJump
            astore 2 /* rj */
        start local 2 // org.jruby.ir.runtime.IRReturnJump rj
         4: .line 200
            aload 2 /* rj */
            aload 0 /* currentScope */
            invokevirtual org.jruby.ir.runtime.IRReturnJump.isReturnToScope:(Lorg/jruby/runtime/DynamicScope;)Z
            ifeq 7
         5: .line 201
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDebug:()Z
            ifeq 6
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "---> Non-local Return reached target in scope: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* currentScope */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         6: .line 202
      StackMap locals: org.jruby.ir.runtime.IRReturnJump
      StackMap stack:
            aload 2 /* rj */
            getfield org.jruby.ir.runtime.IRReturnJump.returnValue:Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            areturn
         7: .line 206
      StackMap locals:
      StackMap stack:
            aload 2 /* rj */
            athrow
        end local 2 // org.jruby.ir.runtime.IRReturnJump rj
        end local 1 // java.lang.Object rjExc
        end local 0 // org.jruby.runtime.DynamicScope currentScope
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0  currentScope  Lorg/jruby/runtime/DynamicScope;
            0    8     1         rjExc  Ljava/lang/Object;
            4    8     2            rj  Lorg/jruby/ir/runtime/IRReturnJump;
    Exceptions:
      throws java.lang.RuntimeException
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
              Name  Flags
      currentScope  
      rjExc         

  private static org.jruby.ir.IRScopeType ensureScopeIsClosure(org.jruby.runtime.ThreadContext, org.jruby.runtime.DynamicScope);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/ir/IRScopeType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.DynamicScope dynamicScope
         0: .line 212
            aload 1 /* dynamicScope */
            invokevirtual org.jruby.runtime.DynamicScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            invokevirtual org.jruby.parser.StaticScope.getScopeType:()Lorg/jruby/ir/IRScopeType;
            astore 2 /* scopeType */
        start local 2 // org.jruby.ir.IRScopeType scopeType
         1: .line 215
            aload 2 /* scopeType */
            invokevirtual org.jruby.ir.IRScopeType.isClosureType:()Z
            ifne 2
            getstatic org.jruby.ir.operands.IRException.BREAK_LocalJumpError:Lorg/jruby/ir/operands/IRException;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.ir.operands.IRException.getException:(Lorg/jruby/Ruby;)Ljava/lang/RuntimeException;
            athrow
         2: .line 217
      StackMap locals: org.jruby.ir.IRScopeType
      StackMap stack:
            aload 2 /* scopeType */
            areturn
        end local 2 // org.jruby.ir.IRScopeType scopeType
        end local 1 // org.jruby.runtime.DynamicScope dynamicScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0       context  Lorg/jruby/runtime/ThreadContext;
            0    3     1  dynamicScope  Lorg/jruby/runtime/DynamicScope;
            1    3     2     scopeType  Lorg/jruby/ir/IRScopeType;
    MethodParameters:
              Name  Flags
      context       
      dynamicScope  

  public static org.jruby.runtime.builtin.IRubyObject initiateBreak(org.jruby.runtime.ThreadContext, org.jruby.runtime.DynamicScope, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.DynamicScope dynScope
        start local 2 // org.jruby.runtime.builtin.IRubyObject breakValue
        start local 3 // org.jruby.runtime.Block block
         0: .line 225
            aload 3 /* block */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.inLambda:(Lorg/jruby/runtime/Block$Type;)Z
            ifeq 1
            new org.jruby.ir.runtime.IRWrappedLambdaReturnValue
            dup
            aload 2 /* breakValue */
            iconst_1
            invokespecial org.jruby.ir.runtime.IRWrappedLambdaReturnValue.<init>:(Lorg/jruby/runtime/builtin/IRubyObject;Z)V
            athrow
         1: .line 227
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* dynScope */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.ensureScopeIsClosure:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/ir/IRScopeType;
            astore 4 /* scopeType */
        start local 4 // org.jruby.ir.IRScopeType scopeType
         2: .line 229
            aload 1 /* dynScope */
            invokevirtual org.jruby.runtime.DynamicScope.getParentScope:()Lorg/jruby/runtime/DynamicScope;
            astore 5 /* parentScope */
        start local 5 // org.jruby.runtime.DynamicScope parentScope
         3: .line 231
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isEscaped:()Z
            ifeq 5
         4: .line 232
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            getstatic org.jruby.RubyLocalJumpError$Reason.BREAK:Lorg/jruby/RubyLocalJumpError$Reason;
            aload 2 /* breakValue */
            ldc "unexpected break"
            invokevirtual org.jruby.Ruby.newLocalJumpError:(Lorg/jruby/RubyLocalJumpError$Reason;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         5: .line 236
      StackMap locals: org.jruby.ir.IRScopeType org.jruby.runtime.DynamicScope
      StackMap stack:
            aload 5 /* parentScope */
            aload 2 /* breakValue */
            aload 4 /* scopeType */
            invokevirtual org.jruby.ir.IRScopeType.isEval:()Z
            invokestatic org.jruby.ir.runtime.IRBreakJump.create:(Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/ir/runtime/IRBreakJump;
            athrow
        end local 5 // org.jruby.runtime.DynamicScope parentScope
        end local 4 // org.jruby.ir.IRScopeType scopeType
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject breakValue
        end local 1 // org.jruby.runtime.DynamicScope dynScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0      context  Lorg/jruby/runtime/ThreadContext;
            0    6     1     dynScope  Lorg/jruby/runtime/DynamicScope;
            0    6     2   breakValue  Lorg/jruby/runtime/builtin/IRubyObject;
            0    6     3        block  Lorg/jruby/runtime/Block;
            2    6     4    scopeType  Lorg/jruby/ir/IRScopeType;
            3    6     5  parentScope  Lorg/jruby/runtime/DynamicScope;
    Exceptions:
      throws java.lang.RuntimeException
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
            Name  Flags
      context     
      dynScope    
      breakValue  
      block       

  private static boolean inReturnToScope(org.jruby.runtime.Block$Type, org.jruby.ir.runtime.IRReturnJump, org.jruby.runtime.DynamicScope);
    descriptor: (Lorg/jruby/runtime/Block$Type;Lorg/jruby/ir/runtime/IRReturnJump;Lorg/jruby/runtime/DynamicScope;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.runtime.Block$Type blockType
        start local 1 // org.jruby.ir.runtime.IRReturnJump exception
        start local 2 // org.jruby.runtime.DynamicScope currentScope
         0: .line 241
            aload 0 /* blockType */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.inMethod:(Lorg/jruby/runtime/Block$Type;)Z
            ifne 1
            aload 0 /* blockType */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.inLambda:(Lorg/jruby/runtime/Block$Type;)Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* exception */
            aload 2 /* currentScope */
            invokevirtual org.jruby.ir.runtime.IRReturnJump.isReturnToScope:(Lorg/jruby/runtime/DynamicScope;)Z
            ifeq 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
        end local 2 // org.jruby.runtime.DynamicScope currentScope
        end local 1 // org.jruby.ir.runtime.IRReturnJump exception
        end local 0 // org.jruby.runtime.Block$Type blockType
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0     blockType  Lorg/jruby/runtime/Block$Type;
            0    3     1     exception  Lorg/jruby/ir/runtime/IRReturnJump;
            0    3     2  currentScope  Lorg/jruby/runtime/DynamicScope;
    MethodParameters:
              Name  Flags
      blockType     
      exception     
      currentScope  

  public static org.jruby.runtime.builtin.IRubyObject handleBreakAndReturnsInLambdas(org.jruby.runtime.ThreadContext, org.jruby.runtime.DynamicScope, java.lang.Object, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Ljava/lang/Object;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.DynamicScope dynScope
        start local 2 // java.lang.Object exc
        start local 3 // org.jruby.runtime.Block block
         0: .line 246
            aload 2 /* exc */
            instanceof org.jruby.ir.runtime.IRWrappedLambdaReturnValue
            ifeq 2
         1: .line 249
            aload 2 /* exc */
            checkcast org.jruby.ir.runtime.IRWrappedLambdaReturnValue
            getfield org.jruby.ir.runtime.IRWrappedLambdaReturnValue.returnValue:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 250
      StackMap locals:
      StackMap stack:
            aload 2 /* exc */
            instanceof org.jruby.ir.runtime.IRReturnJump
            ifeq 5
            aload 1 /* dynScope */
            ifnull 5
            aload 3 /* block */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            aload 2 /* exc */
            checkcast org.jruby.ir.runtime.IRReturnJump
            aload 1 /* dynScope */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.inReturnToScope:(Lorg/jruby/runtime/Block$Type;Lorg/jruby/ir/runtime/IRReturnJump;Lorg/jruby/runtime/DynamicScope;)Z
            ifeq 5
         3: .line 251
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDebug:()Z
            ifeq 4
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "---> Non-local Return reached target in scope: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* dynScope */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         4: .line 252
      StackMap locals:
      StackMap stack:
            aload 2 /* exc */
            checkcast org.jruby.ir.runtime.IRReturnJump
            getfield org.jruby.ir.runtime.IRReturnJump.returnValue:Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            areturn
         5: .line 255
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 2 /* exc */
            checkcast java.lang.Throwable
            invokevirtual org.jruby.runtime.ThreadContext.setSavedExceptionInLambda:(Ljava/lang/Throwable;)V
         6: .line 256
            aconst_null
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // java.lang.Object exc
        end local 1 // org.jruby.runtime.DynamicScope dynScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0   context  Lorg/jruby/runtime/ThreadContext;
            0    7     1  dynScope  Lorg/jruby/runtime/DynamicScope;
            0    7     2       exc  Ljava/lang/Object;
            0    7     3     block  Lorg/jruby/runtime/Block;
    Exceptions:
      throws java.lang.RuntimeException
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
          Name  Flags
      context   
      dynScope  
      exc       
      block     

  public static org.jruby.runtime.builtin.IRubyObject returnOrRethrowSavedException(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 264
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getSavedExceptionInLambda:()Ljava/lang/Throwable;
            astore 2 /* exc */
        start local 2 // java.lang.Throwable exc
         1: .line 265
            aload 2 /* exc */
            ifnull 4
         2: .line 267
            aload 0 /* context */
            aconst_null
            invokevirtual org.jruby.runtime.ThreadContext.setSavedExceptionInLambda:(Ljava/lang/Throwable;)V
         3: .line 268
            aload 2 /* exc */
            invokestatic org.jruby.runtime.Helpers.throwException:(Ljava/lang/Throwable;)V
         4: .line 272
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 1 /* value */
            areturn
        end local 2 // java.lang.Throwable exc
        end local 1 // org.jruby.runtime.builtin.IRubyObject value
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0  context  Lorg/jruby/runtime/ThreadContext;
            0    5     1    value  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     2      exc  Ljava/lang/Throwable;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      value    

  public static org.jruby.runtime.builtin.IRubyObject handlePropagatedBreak(org.jruby.runtime.ThreadContext, org.jruby.runtime.DynamicScope, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.DynamicScope dynScope
        start local 2 // java.lang.Object bjExc
         0: .line 277
            aload 2 /* bjExc */
            instanceof org.jruby.ir.runtime.IRBreakJump
            ifne 3
         1: .line 278
            aload 2 /* bjExc */
            checkcast java.lang.Throwable
            invokestatic org.jruby.runtime.Helpers.throwException:(Ljava/lang/Throwable;)V
         2: .line 279
            aconst_null
            areturn
         3: .line 282
      StackMap locals:
      StackMap stack:
            aload 2 /* bjExc */
            checkcast org.jruby.ir.runtime.IRBreakJump
            astore 3 /* bj */
        start local 3 // org.jruby.ir.runtime.IRBreakJump bj
         4: .line 283
            aload 3 /* bj */
            getfield org.jruby.ir.runtime.IRBreakJump.breakInEval:Z
            ifeq 8
         5: .line 285
            aload 0 /* context */
            aload 1 /* dynScope */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.ensureScopeIsClosure:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/ir/IRScopeType;
            pop
         6: .line 287
            aload 3 /* bj */
            iconst_0
            putfield org.jruby.ir.runtime.IRBreakJump.breakInEval:Z
         7: .line 288
            aload 3 /* bj */
            athrow
         8: .line 289
      StackMap locals: org.jruby.ir.runtime.IRBreakJump
      StackMap stack:
            aload 3 /* bj */
            getfield org.jruby.ir.runtime.IRBreakJump.scopeToReturnTo:Lorg/jruby/runtime/DynamicScope;
            aload 1 /* dynScope */
            if_acmpne 11
         9: .line 291
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDebug:()Z
            ifeq 10
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "---> Break reached target in scope: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* dynScope */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        10: .line 292
      StackMap locals:
      StackMap stack:
            aload 3 /* bj */
            getfield org.jruby.ir.runtime.IRBreakJump.breakValue:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        11: .line 300
      StackMap locals:
      StackMap stack:
            aload 3 /* bj */
            athrow
        end local 3 // org.jruby.ir.runtime.IRBreakJump bj
        end local 2 // java.lang.Object bjExc
        end local 1 // org.jruby.runtime.DynamicScope dynScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0   context  Lorg/jruby/runtime/ThreadContext;
            0   12     1  dynScope  Lorg/jruby/runtime/DynamicScope;
            0   12     2     bjExc  Ljava/lang/Object;
            4   12     3        bj  Lorg/jruby/ir/runtime/IRBreakJump;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
          Name  Flags
      context   
      dynScope  
      bjExc     

  public static org.jruby.runtime.builtin.IRubyObject undefMethod(org.jruby.runtime.ThreadContext, java.lang.Object, org.jruby.runtime.DynamicScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object nameArg
        start local 2 // org.jruby.runtime.DynamicScope currDynScope
        start local 3 // org.jruby.runtime.builtin.IRubyObject self
         0: .line 306
            aload 0 /* context */
            aload 2 /* currDynScope */
            aload 3 /* self */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.findInstanceMethodContainer:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
            astore 4 /* module */
        start local 4 // org.jruby.RubyModule module
         1: .line 307
            aload 1 /* nameArg */
            instanceof java.lang.String
            ifeq 3
         2: .line 308
            aload 1 /* nameArg */
            checkcast java.lang.String
            goto 4
      StackMap locals: org.jruby.RubyModule
      StackMap stack:
         3: aload 1 /* nameArg */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
         4: .line 307
      StackMap locals:
      StackMap stack: java.lang.String
            astore 5 /* name */
        start local 5 // java.lang.String name
         5: .line 310
            aload 4 /* module */
            ifnonnull 7
         6: .line 311
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "No class to undef method '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         7: .line 314
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* module */
            aload 0 /* context */
            aload 5 /* name */
            invokevirtual org.jruby.RubyModule.undef:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)V
         8: .line 316
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // java.lang.String name
        end local 4 // org.jruby.RubyModule module
        end local 3 // org.jruby.runtime.builtin.IRubyObject self
        end local 2 // org.jruby.runtime.DynamicScope currDynScope
        end local 1 // java.lang.Object nameArg
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0       context  Lorg/jruby/runtime/ThreadContext;
            0    9     1       nameArg  Ljava/lang/Object;
            0    9     2  currDynScope  Lorg/jruby/runtime/DynamicScope;
            0    9     3          self  Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     4        module  Lorg/jruby/RubyModule;
            5    9     5          name  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      context       
      nameArg       
      currDynScope  
      self          

  public static double unboxFloat(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)D
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject val
         0: .line 321
            aload 0 /* val */
            instanceof org.jruby.RubyFloat
            ifeq 2
         1: .line 322
            aload 0 /* val */
            checkcast org.jruby.RubyFloat
            invokevirtual org.jruby.RubyFloat.getValue:()D
            dreturn
         2: .line 324
      StackMap locals:
      StackMap stack:
            aload 0 /* val */
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getDoubleValue:()D
            dreturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject val
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   val  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
      Name  Flags
      val   

  public static long unboxFixnum(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject val
         0: .line 330
            aload 0 /* val */
            instanceof org.jruby.RubyFloat
            ifeq 2
         1: .line 331
            aload 0 /* val */
            checkcast org.jruby.RubyFloat
            invokevirtual org.jruby.RubyFloat.getValue:()D
            d2l
            lreturn
         2: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* val */
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getLongValue:()J
            lreturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject val
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   val  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
      Name  Flags
      val   

  public static boolean flt(double, double);
    descriptor: (DD)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // double v1
        start local 2 // double v2
         0: .line 338
            dload 0 /* v1 */
            dload 2 /* v2 */
            dcmpg
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // double v2
        end local 0 // double v1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    v1  D
            0    2     2    v2  D
    MethodParameters:
      Name  Flags
      v1    
      v2    

  public static boolean fgt(double, double);
    descriptor: (DD)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // double v1
        start local 2 // double v2
         0: .line 342
            dload 0 /* v1 */
            dload 2 /* v2 */
            dcmpl
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // double v2
        end local 0 // double v1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    v1  D
            0    2     2    v2  D
    MethodParameters:
      Name  Flags
      v1    
      v2    

  public static boolean feq(double, double);
    descriptor: (DD)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // double v1
        start local 2 // double v2
         0: .line 346
            dload 0 /* v1 */
            dload 2 /* v2 */
            dcmpl
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // double v2
        end local 0 // double v1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    v1  D
            0    2     2    v2  D
    MethodParameters:
      Name  Flags
      v1    
      v2    

  public static boolean ilt(long, long);
    descriptor: (JJ)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // long v1
        start local 2 // long v2
         0: .line 350
            lload 0 /* v1 */
            lload 2 /* v2 */
            lcmp
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // long v2
        end local 0 // long v1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    v1  J
            0    2     2    v2  J
    MethodParameters:
      Name  Flags
      v1    
      v2    

  public static boolean igt(long, long);
    descriptor: (JJ)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // long v1
        start local 2 // long v2
         0: .line 354
            lload 0 /* v1 */
            lload 2 /* v2 */
            lcmp
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // long v2
        end local 0 // long v1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    v1  J
            0    2     2    v2  J
    MethodParameters:
      Name  Flags
      v1    
      v2    

  public static boolean ieq(long, long);
    descriptor: (JJ)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // long v1
        start local 2 // long v2
         0: .line 358
            lload 0 /* v1 */
            lload 2 /* v2 */
            lcmp
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // long v2
        end local 0 // long v1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    v1  J
            0    2     2    v2  J
    MethodParameters:
      Name  Flags
      v1    
      v2    

  public static java.lang.Object unwrapRubyException(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Object excObj
         0: .line 365
            aload 0 /* excObj */
            instanceof org.jruby.exceptions.Unrescuable
            ifeq 2
         1: .line 366
            aload 0 /* excObj */
            checkcast java.lang.Throwable
            invokestatic org.jruby.runtime.Helpers.throwException:(Ljava/lang/Throwable;)V
         2: .line 370
      StackMap locals:
      StackMap stack:
            aload 0 /* excObj */
            instanceof org.jruby.exceptions.RaiseException
            ifeq 3
            aload 0 /* excObj */
            checkcast org.jruby.exceptions.RaiseException
            invokevirtual org.jruby.exceptions.RaiseException.getException:()Lorg/jruby/RubyException;
            goto 4
      StackMap locals:
      StackMap stack:
         3: aload 0 /* excObj */
      StackMap locals:
      StackMap stack: java.lang.Object
         4: areturn
        end local 0 // java.lang.Object excObj
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0  excObj  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      excObj  

  private static boolean isJavaExceptionHandled(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.Object, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Object;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=11, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject excType
        start local 2 // java.lang.Object excObj
        start local 3 // boolean arrayCheck
         0: .line 374
            aload 2 /* excObj */
            instanceof java.lang.Throwable
            ifne 2
         1: .line 375
            iconst_0
            ireturn
         2: .line 378
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         3: .line 379
            aload 2 /* excObj */
            checkcast java.lang.Throwable
            astore 5 /* ex */
        start local 5 // java.lang.Throwable ex
         4: .line 381
            aload 1 /* excType */
            instanceof org.jruby.RubyArray
            ifeq 20
         5: .line 382
            aload 1 /* excType */
            checkcast org.jruby.RubyArray
            astore 6 /* testTypes */
        start local 6 // org.jruby.RubyArray testTypes
         6: .line 383
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         7: aload 6 /* testTypes */
            invokevirtual org.jruby.RubyArray.getLength:()I
            istore 8 /* n */
        start local 8 // int n
         8: goto 18
         9: .line 384
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject java.lang.Object int org.jruby.Ruby java.lang.Throwable org.jruby.RubyArray int int
      StackMap stack:
            aload 6 /* testTypes */
            iload 7 /* i */
            invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 9 /* testType */
        start local 9 // org.jruby.runtime.builtin.IRubyObject testType
        10: .line 385
            aload 0 /* context */
            aload 9 /* testType */
            aload 5 /* ex */
            iconst_1
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isJavaExceptionHandled:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Object;Z)Z
            ifeq 17
        11: .line 387
            iload 8 /* n */
            iconst_1
            if_icmpne 14
        12: .line 388
            aload 0 /* context */
            aload 9 /* testType */
            aload 5 /* ex */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.wrapJavaException:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Throwable;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 10 /* exception */
        start local 10 // org.jruby.runtime.builtin.IRubyObject exception
        13: .line 389
            goto 15
        end local 10 // org.jruby.runtime.builtin.IRubyObject exception
        14: .line 390
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 4 /* runtime */
            aload 5 /* ex */
            invokestatic org.jruby.runtime.Helpers.wrapJavaException:(Lorg/jruby/Ruby;Ljava/lang/Throwable;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 10 /* exception */
        start local 10 // org.jruby.runtime.builtin.IRubyObject exception
        15: .line 393
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            ldc "$!"
            aload 10 /* exception */
            invokevirtual org.jruby.internal.runtime.GlobalVariables.set:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        16: .line 394
            iconst_1
            ireturn
        end local 10 // org.jruby.runtime.builtin.IRubyObject exception
        end local 9 // org.jruby.runtime.builtin.IRubyObject testType
        17: .line 383
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 7 /* i */
            iload 8 /* n */
            if_icmplt 9
        end local 8 // int n
        end local 7 // int i
        end local 6 // org.jruby.RubyArray testTypes
        19: .line 397
            goto 24
        20: .line 399
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* excType */
            aload 5 /* ex */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.wrapJavaException:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Throwable;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* exception */
        start local 6 // org.jruby.runtime.builtin.IRubyObject exception
        21: .line 400
            aload 6 /* exception */
            aload 5 /* ex */
            aload 1 /* excType */
            aload 0 /* context */
            invokestatic org.jruby.runtime.Helpers.checkJavaException:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Throwable;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/ThreadContext;)Z
            ifeq 24
        22: .line 401
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            ldc "$!"
            aload 6 /* exception */
            invokevirtual org.jruby.internal.runtime.GlobalVariables.set:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        23: .line 402
            iconst_1
            ireturn
        end local 6 // org.jruby.runtime.builtin.IRubyObject exception
        24: .line 406
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // java.lang.Throwable ex
        end local 4 // org.jruby.Ruby runtime
        end local 3 // boolean arrayCheck
        end local 2 // java.lang.Object excObj
        end local 1 // org.jruby.runtime.builtin.IRubyObject excType
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   25     0     context  Lorg/jruby/runtime/ThreadContext;
            0   25     1     excType  Lorg/jruby/runtime/builtin/IRubyObject;
            0   25     2      excObj  Ljava/lang/Object;
            0   25     3  arrayCheck  Z
            3   25     4     runtime  Lorg/jruby/Ruby;
            4   25     5          ex  Ljava/lang/Throwable;
            6   19     6   testTypes  Lorg/jruby/RubyArray;
            7   19     7           i  I
            8   19     8           n  I
           10   17     9    testType  Lorg/jruby/runtime/builtin/IRubyObject;
           13   14    10   exception  Lorg/jruby/runtime/builtin/IRubyObject;
           15   17    10   exception  Lorg/jruby/runtime/builtin/IRubyObject;
           21   24     6   exception  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
            Name  Flags
      context     
      excType     
      excObj      
      arrayCheck  

  private static org.jruby.runtime.builtin.IRubyObject wrapJavaException(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.Throwable);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Throwable;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject excType
        start local 2 // java.lang.Throwable throwable
         0: .line 410
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 411
            aload 1 /* excType */
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getNativeException:()Lorg/jruby/RubyClass;
            if_acmpne 3
         2: .line 412
            aload 0 /* context */
            aload 2 /* throwable */
            aload 3 /* runtime */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.wrapWithNativeException:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Throwable;Lorg/jruby/Ruby;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         3: .line 414
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 3 /* runtime */
            aload 2 /* throwable */
            invokestatic org.jruby.runtime.Helpers.wrapJavaException:(Lorg/jruby/Ruby;Ljava/lang/Throwable;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.Ruby runtime
        end local 2 // java.lang.Throwable throwable
        end local 1 // org.jruby.runtime.builtin.IRubyObject excType
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0    context  Lorg/jruby/runtime/ThreadContext;
            0    4     1    excType  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2  throwable  Ljava/lang/Throwable;
            1    4     3    runtime  Lorg/jruby/Ruby;
    MethodParameters:
           Name  Flags
      context    final
      excType    final
      throwable  final

  private static org.jruby.runtime.builtin.IRubyObject wrapWithNativeException(org.jruby.runtime.ThreadContext, java.lang.Throwable, org.jruby.Ruby);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Throwable;Lorg/jruby/Ruby;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Throwable throwable
        start local 2 // org.jruby.Ruby runtime
         0: .line 420
            new org.jruby.NativeException
            dup
            aload 2 /* runtime */
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNativeException:()Lorg/jruby/RubyClass;
            aload 1 /* throwable */
            invokespecial org.jruby.NativeException.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Ljava/lang/Throwable;)V
            astore 3 /* exception */
        start local 3 // org.jruby.NativeException exception
         1: .line 421
            aload 3 /* exception */
            aload 0 /* context */
            aload 1 /* throwable */
            invokevirtual java.lang.Throwable.getStackTrace:()[Ljava/lang/StackTraceElement;
            invokevirtual org.jruby.NativeException.prepareIntegratedBacktrace:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/StackTraceElement;)V
         2: .line 422
            aload 3 /* exception */
            areturn
        end local 3 // org.jruby.NativeException exception
        end local 2 // org.jruby.Ruby runtime
        end local 1 // java.lang.Throwable throwable
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0    context  Lorg/jruby/runtime/ThreadContext;
            0    3     1  throwable  Ljava/lang/Throwable;
            0    3     2    runtime  Lorg/jruby/Ruby;
            1    3     3  exception  Lorg/jruby/NativeException;
    MethodParameters:
           Name  Flags
      context    
      throwable  
      runtime    

  private static boolean isRubyExceptionHandled(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Object;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject excType
        start local 2 // java.lang.Object excObj
         0: .line 426
            aload 1 /* excType */
            instanceof org.jruby.RubyArray
            ifeq 12
         1: .line 427
            aload 1 /* excType */
            checkcast org.jruby.RubyArray
            astore 3 /* testTypes */
        start local 3 // org.jruby.RubyArray testTypes
         2: .line 428
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: aload 3 /* testTypes */
            invokevirtual org.jruby.RubyArray.getLength:()I
            istore 5 /* n */
        start local 5 // int n
         4: goto 10
         5: .line 429
      StackMap locals: org.jruby.RubyArray int int
      StackMap stack:
            aload 3 /* testTypes */
            iload 4 /* i */
            invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 6 /* testType */
        start local 6 // org.jruby.runtime.builtin.IRubyObject testType
         6: .line 430
            aload 0 /* context */
            aload 6 /* testType */
            aload 2 /* excObj */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isRubyExceptionHandled:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Object;)Z
            ifeq 9
         7: .line 431
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            ldc "$!"
            aload 2 /* excObj */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokevirtual org.jruby.internal.runtime.GlobalVariables.set:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         8: .line 432
            iconst_1
            ireturn
        end local 6 // org.jruby.runtime.builtin.IRubyObject testType
         9: .line 428
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 4 /* i */
            iload 5 /* n */
            if_icmplt 5
        end local 5 // int n
        end local 4 // int i
        end local 3 // org.jruby.RubyArray testTypes
        11: .line 435
            goto 18
      StackMap locals:
      StackMap stack:
        12: aload 2 /* excObj */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 18
        13: .line 437
            aload 1 /* excType */
            instanceof org.jruby.RubyModule
            ifne 15
        14: .line 438
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "class or module required for rescue clause. Found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* excType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        15: .line 441
      StackMap locals:
      StackMap stack:
            aload 1 /* excType */
            aload 0 /* context */
            ldc "==="
            aload 2 /* excObj */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 18
        16: .line 442
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            ldc "$!"
            aload 2 /* excObj */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokevirtual org.jruby.internal.runtime.GlobalVariables.set:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        17: .line 443
            iconst_1
            ireturn
        18: .line 446
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // java.lang.Object excObj
        end local 1 // org.jruby.runtime.builtin.IRubyObject excType
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0    context  Lorg/jruby/runtime/ThreadContext;
            0   19     1    excType  Lorg/jruby/runtime/builtin/IRubyObject;
            0   19     2     excObj  Ljava/lang/Object;
            2   11     3  testTypes  Lorg/jruby/RubyArray;
            3   11     4          i  I
            4   11     5          n  I
            6    9     6   testType  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      excType  
      excObj   

  public static org.jruby.runtime.builtin.IRubyObject isExceptionHandled(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject excType
        start local 2 // java.lang.Object excObj
         0: .line 456
            aload 2 /* excObj */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.unwrapRubyException:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* excObj */
         1: .line 458
            aload 0 /* context */
            aload 1 /* excType */
            aload 2 /* excObj */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isRubyExceptionHandled:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Object;)Z
            ifne 4
         2: .line 459
            aload 0 /* context */
            aload 1 /* excType */
            aload 2 /* excObj */
            iconst_0
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isJavaExceptionHandled:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/Object;Z)Z
            ifne 4
         3: .line 458
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: istore 3 /* ret */
        start local 3 // boolean ret
         6: .line 461
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 3 /* ret */
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 3 // boolean ret
        end local 2 // java.lang.Object excObj
        end local 1 // org.jruby.runtime.builtin.IRubyObject excType
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  context  Lorg/jruby/runtime/ThreadContext;
            0    7     1  excType  Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     2   excObj  Ljava/lang/Object;
            6    7     3      ret  Z
    MethodParameters:
         Name  Flags
      context  
      excType  
      excObj   

  public static org.jruby.runtime.builtin.IRubyObject isEQQ(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.CallSite, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/CallSite;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=11, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
        start local 3 // org.jruby.runtime.CallSite callSite
        start local 4 // boolean splattedValue
         0: .line 465
            aload 2 /* value */
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* isUndefValue */
        start local 5 // boolean isUndefValue
         3: .line 467
            iload 4 /* splattedValue */
            ifeq 16
            aload 1 /* receiver */
            instanceof org.jruby.RubyArray
            ifeq 16
         4: .line 468
            aload 1 /* receiver */
            checkcast org.jruby.RubyArray
            astore 6 /* testVals */
        start local 6 // org.jruby.RubyArray testVals
         5: .line 469
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         6: aload 6 /* testVals */
            invokevirtual org.jruby.RubyArray.getLength:()I
            istore 8 /* n */
        start local 8 // int n
         7: goto 14
         8: .line 470
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.CallSite int int org.jruby.RubyArray int int
      StackMap stack:
            aload 6 /* testVals */
            iload 7 /* i */
            invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 9 /* v */
        start local 9 // org.jruby.runtime.builtin.IRubyObject v
         9: .line 471
            iload 5 /* isUndefValue */
            ifeq 10
            aload 9 /* v */
            goto 11
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
        10: aload 3 /* callSite */
            aload 0 /* context */
            aload 9 /* v */
            aload 9 /* v */
            aload 2 /* value */
            invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
        11: astore 10 /* eqqVal */
        start local 10 // org.jruby.runtime.builtin.IRubyObject eqqVal
        12: .line 472
            aload 10 /* eqqVal */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 13
            aload 10 /* eqqVal */
            areturn
        end local 10 // org.jruby.runtime.builtin.IRubyObject eqqVal
        end local 9 // org.jruby.runtime.builtin.IRubyObject v
        13: .line 469
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 7 /* i */
            iload 8 /* n */
            if_icmplt 8
        end local 8 // int n
        end local 7 // int i
        15: .line 474
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.fals:Lorg/jruby/RubyBoolean;
            areturn
        end local 6 // org.jruby.RubyArray testVals
        16: .line 477
      StackMap locals:
      StackMap stack:
            iload 5 /* isUndefValue */
            ifeq 17
            aload 1 /* receiver */
            areturn
        17: .line 479
      StackMap locals:
      StackMap stack:
            aload 3 /* callSite */
            aload 0 /* context */
            aload 1 /* receiver */
            aload 1 /* receiver */
            aload 2 /* value */
            invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // boolean isUndefValue
        end local 4 // boolean splattedValue
        end local 3 // org.jruby.runtime.CallSite callSite
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   18     0        context  Lorg/jruby/runtime/ThreadContext;
            0   18     1       receiver  Lorg/jruby/runtime/builtin/IRubyObject;
            0   18     2          value  Lorg/jruby/runtime/builtin/IRubyObject;
            0   18     3       callSite  Lorg/jruby/runtime/CallSite;
            0   18     4  splattedValue  Z
            3   18     5   isUndefValue  Z
            5   16     6       testVals  Lorg/jruby/RubyArray;
            6   15     7              i  I
            7   15     8              n  I
            9   13     9              v  Lorg/jruby/runtime/builtin/IRubyObject;
           12   13    10         eqqVal  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
               Name  Flags
      context        
      receiver       
      value          
      callSite       
      splattedValue  

  public static org.jruby.runtime.builtin.IRubyObject newProc(org.jruby.Ruby, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.Block block
         0: .line 483
            aload 1 /* block */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            if_acmpne 1
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* runtime */
            getstatic org.jruby.runtime.Block$Type.PROC:Lorg/jruby/runtime/Block$Type;
            aload 1 /* block */
            invokevirtual org.jruby.Ruby.newProc:(Lorg/jruby/runtime/Block$Type;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyProc;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  runtime  Lorg/jruby/Ruby;
            0    3     1    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      runtime  
      block    

  public static org.jruby.runtime.builtin.IRubyObject newProc(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
         0: .line 488
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 489
            aload 1 /* block */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            if_acmpne 2
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals: org.jruby.Ruby
      StackMap stack:
         2: aload 2 /* runtime */
            getstatic org.jruby.runtime.Block$Type.PROC:Lorg/jruby/runtime/Block$Type;
            aload 1 /* block */
            invokevirtual org.jruby.Ruby.newProc:(Lorg/jruby/runtime/Block$Type;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyProc;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  context  Lorg/jruby/runtime/ThreadContext;
            0    4     1    block  Lorg/jruby/runtime/Block;
            1    4     2  runtime  Lorg/jruby/Ruby;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      block    

  public static org.jruby.RubyProc newLambdaProc(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyProc;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
         0: .line 494
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 495
            aload 2 /* runtime */
            getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
            aload 1 /* block */
            invokevirtual org.jruby.Ruby.newProc:(Lorg/jruby/runtime/Block$Type;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyProc;
            areturn
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Lorg/jruby/runtime/ThreadContext;
            0    2     1    block  Lorg/jruby/runtime/Block;
            1    2     2  runtime  Lorg/jruby/Ruby;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      block    

  public static org.jruby.runtime.builtin.IRubyObject yield(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block b
        start local 2 // org.jruby.runtime.builtin.IRubyObject yieldVal
        start local 3 // boolean unwrapArray
         0: .line 499
            iload 3 /* unwrapArray */
            ifeq 1
            aload 2 /* yieldVal */
            instanceof org.jruby.RubyArray
            ifeq 1
            aload 1 /* b */
            aload 0 /* context */
            aload 2 /* yieldVal */
            aconst_null
            invokevirtual org.jruby.runtime.Block.yieldArray:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* b */
            aload 0 /* context */
            aload 2 /* yieldVal */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 3 // boolean unwrapArray
        end local 2 // org.jruby.runtime.builtin.IRubyObject yieldVal
        end local 1 // org.jruby.runtime.Block b
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0      context  Lorg/jruby/runtime/ThreadContext;
            0    3     1            b  Lorg/jruby/runtime/Block;
            0    3     2     yieldVal  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3  unwrapArray  Z
    MethodParameters:
             Name  Flags
      context      
      b            
      yieldVal     
      unwrapArray  

  public static org.jruby.runtime.builtin.IRubyObject yieldSpecific(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block b
         0: .line 503
            aload 1 /* b */
            aload 0 /* context */
            invokevirtual org.jruby.runtime.Block.yieldSpecific:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.Block b
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1        b  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  
      b        

  public static org.jruby.runtime.builtin.IRubyObject[] convertValueIntoArgArray(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Signature, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Signature;Z)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject value
        start local 2 // org.jruby.runtime.Signature signature
        start local 3 // boolean argIsArray
         0: .line 508
            getstatic org.jruby.ir.runtime.IRRuntimeHelpers.$assertionsDisabled:Z
            ifne 2
            iload 3 /* argIsArray */
            ifeq 2
            iload 3 /* argIsArray */
            ifeq 1
            aload 1 /* value */
            instanceof org.jruby.RubyArray
            ifne 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 510
      StackMap locals:
      StackMap stack:
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.arityValue:()I
            tableswitch { // -1 - 1
                   -1: 3
                    0: 7
                    1: 8
              default: 12
          }
         3: .line 512
      StackMap locals:
      StackMap stack:
            iload 3 /* argIsArray */
            ifne 4
            aload 2 /* signature */
            invokevirtual org.jruby.runtime.Signature.opt:()I
            iconst_1
            if_icmple 5
            aload 1 /* value */
            instanceof org.jruby.RubyArray
            ifeq 5
         4: .line 513
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.toJavaArray:()[Lorg/jruby/runtime/builtin/IRubyObject;
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_1
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
            aload 1 /* value */
            aastore
         6: .line 512
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject[]
            areturn
         7: .line 514
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
            aload 1 /* value */
            aastore
            areturn
         8: .line 516
      StackMap locals:
      StackMap stack:
            iload 3 /* argIsArray */
            ifeq 11
         9: .line 517
            aload 1 /* value */
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.size:()I
            ifne 11
        10: .line 518
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyArray.newEmptyArray:(Lorg/jruby/Ruby;)Lorg/jruby/RubyArray;
            astore 1 /* value */
        11: .line 521
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
            aload 1 /* value */
            aastore
            areturn
        12: .line 524
      StackMap locals:
      StackMap stack:
            iload 3 /* argIsArray */
            ifeq 19
        13: .line 525
            aload 1 /* value */
            checkcast org.jruby.RubyArray
            astore 4 /* valArray */
        start local 4 // org.jruby.RubyArray valArray
        14: .line 526
            aload 4 /* valArray */
            invokevirtual org.jruby.RubyArray.size:()I
            iconst_1
            if_icmpne 15
            aload 4 /* valArray */
            iconst_0
            invokevirtual org.jruby.RubyArray.eltInternal:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* value */
        15: .line 527
      StackMap locals: org.jruby.RubyArray
      StackMap stack:
            aload 0 /* context */
            aload 1 /* value */
            invokestatic org.jruby.runtime.Helpers.aryToAry:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* value */
        16: .line 528
            aload 1 /* value */
            instanceof org.jruby.RubyArray
            ifeq 17
            aload 1 /* value */
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.toJavaArray:()[Lorg/jruby/runtime/builtin/IRubyObject;
            goto 18
      StackMap locals:
      StackMap stack:
        17: iconst_1
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
            aload 1 /* value */
            aastore
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject[]
        18: areturn
        end local 4 // org.jruby.RubyArray valArray
        19: .line 530
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* value */
            invokestatic org.jruby.runtime.IRBlockBody.toAry:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // boolean argIsArray
        end local 2 // org.jruby.runtime.Signature signature
        end local 1 // org.jruby.runtime.builtin.IRubyObject value
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0     context  Lorg/jruby/runtime/ThreadContext;
            0   20     1       value  Lorg/jruby/runtime/builtin/IRubyObject;
            0   20     2   signature  Lorg/jruby/runtime/Signature;
            0   20     3  argIsArray  Z
           14   19     4    valArray  Lorg/jruby/RubyArray;
    MethodParameters:
            Name  Flags
      context     
      value       
      signature   
      argIsArray  

  public static org.jruby.runtime.Block getBlockFromObject(org.jruby.runtime.ThreadContext, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;)Lorg/jruby/runtime/Block;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object value
         0: .line 538
            aload 1 /* value */
            instanceof org.jruby.runtime.Block
            ifeq 3
         1: .line 539
            aload 1 /* value */
            checkcast org.jruby.runtime.Block
            astore 2 /* block */
        start local 2 // org.jruby.runtime.Block block
         2: .line 540
            goto 19
        end local 2 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
         3: aload 1 /* value */
            instanceof org.jruby.RubyProc
            ifeq 6
         4: .line 541
            aload 1 /* value */
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            astore 2 /* block */
        start local 2 // org.jruby.runtime.Block block
         5: .line 542
            goto 19
        end local 2 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
         6: aload 1 /* value */
            instanceof org.jruby.RubyMethod
            ifeq 9
         7: .line 543
            aload 1 /* value */
            checkcast org.jruby.RubyMethod
            aload 0 /* context */
            invokevirtual org.jruby.RubyMethod.to_proc:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            astore 2 /* block */
        start local 2 // org.jruby.runtime.Block block
         8: .line 544
            goto 19
        end local 2 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
         9: aload 1 /* value */
            instanceof org.jruby.RubySymbol
            ifeq 12
        10: .line 545
            aload 1 /* value */
            checkcast org.jruby.RubySymbol
            aload 0 /* context */
            invokevirtual org.jruby.RubySymbol.to_proc:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            astore 2 /* block */
        start local 2 // org.jruby.runtime.Block block
        11: .line 546
            goto 19
        end local 2 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
        12: aload 1 /* value */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 15
            aload 1 /* value */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 15
        13: .line 547
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            astore 2 /* block */
        start local 2 // org.jruby.runtime.Block block
        14: .line 548
            goto 19
        end local 2 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
        15: aload 1 /* value */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 18
        16: .line 549
            aload 1 /* value */
            checkcast org.jruby.runtime.builtin.IRubyObject
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getProc:()Lorg/jruby/RubyClass;
            ldc "to_proc"
            iconst_1
            invokestatic org.jruby.util.TypeConverter.convertToType:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            astore 2 /* block */
        start local 2 // org.jruby.runtime.Block block
        17: .line 550
            goto 19
        end local 2 // org.jruby.runtime.Block block
        18: .line 551
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unhandled case in CallInstr:prepareBlock.  Got block arg: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        start local 2 // org.jruby.runtime.Block block
        19: .line 553
      StackMap locals: org.jruby.runtime.Block
      StackMap stack:
            aload 2 /* block */
            areturn
        end local 2 // org.jruby.runtime.Block block
        end local 1 // java.lang.Object value
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0  context  Lorg/jruby/runtime/ThreadContext;
            0   20     1    value  Ljava/lang/Object;
            2    3     2    block  Lorg/jruby/runtime/Block;
            5    6     2    block  Lorg/jruby/runtime/Block;
            8    9     2    block  Lorg/jruby/runtime/Block;
           11   12     2    block  Lorg/jruby/runtime/Block;
           14   15     2    block  Lorg/jruby/runtime/Block;
           17   18     2    block  Lorg/jruby/runtime/Block;
           19   20     2    block  Lorg/jruby/runtime/Block;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      value    

  public static org.jruby.runtime.Block getRefinedBlockFromObject(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;Ljava/lang/Object;)Lorg/jruby/runtime/Block;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.parser.StaticScope scope
        start local 2 // java.lang.Object value
         0: .line 559
            aload 2 /* value */
            instanceof org.jruby.runtime.Block
            ifeq 3
         1: .line 560
            aload 2 /* value */
            checkcast org.jruby.runtime.Block
            astore 3 /* block */
        start local 3 // org.jruby.runtime.Block block
         2: .line 561
            goto 19
        end local 3 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
         3: aload 2 /* value */
            instanceof org.jruby.RubyProc
            ifeq 6
         4: .line 562
            aload 2 /* value */
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            astore 3 /* block */
        start local 3 // org.jruby.runtime.Block block
         5: .line 563
            goto 19
        end local 3 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
         6: aload 2 /* value */
            instanceof org.jruby.RubyMethod
            ifeq 9
         7: .line 564
            aload 2 /* value */
            checkcast org.jruby.RubyMethod
            aload 0 /* context */
            invokevirtual org.jruby.RubyMethod.to_proc:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            astore 3 /* block */
        start local 3 // org.jruby.runtime.Block block
         8: .line 565
            goto 19
        end local 3 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
         9: aload 2 /* value */
            instanceof org.jruby.RubySymbol
            ifeq 12
        10: .line 566
            aload 2 /* value */
            checkcast org.jruby.RubySymbol
            aload 0 /* context */
            aload 1 /* scope */
            invokevirtual org.jruby.RubySymbol.toRefinedProc:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            astore 3 /* block */
        start local 3 // org.jruby.runtime.Block block
        11: .line 567
            goto 19
        end local 3 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
        12: aload 2 /* value */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 15
            aload 2 /* value */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 15
        13: .line 568
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            astore 3 /* block */
        start local 3 // org.jruby.runtime.Block block
        14: .line 569
            goto 19
        end local 3 // org.jruby.runtime.Block block
      StackMap locals:
      StackMap stack:
        15: aload 2 /* value */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 18
        16: .line 570
            aload 2 /* value */
            checkcast org.jruby.runtime.builtin.IRubyObject
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getProc:()Lorg/jruby/RubyClass;
            ldc "to_proc"
            iconst_1
            invokestatic org.jruby.util.TypeConverter.convertToType:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            astore 3 /* block */
        start local 3 // org.jruby.runtime.Block block
        17: .line 571
            goto 19
        end local 3 // org.jruby.runtime.Block block
        18: .line 572
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unhandled case in CallInstr:prepareBlock.  Got block arg: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        start local 3 // org.jruby.runtime.Block block
        19: .line 574
      StackMap locals: org.jruby.runtime.Block
      StackMap stack:
            aload 3 /* block */
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // java.lang.Object value
        end local 1 // org.jruby.parser.StaticScope scope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   20     0  context  Lorg/jruby/runtime/ThreadContext;
            0   20     1    scope  Lorg/jruby/parser/StaticScope;
            0   20     2    value  Ljava/lang/Object;
            2    3     3    block  Lorg/jruby/runtime/Block;
            5    6     3    block  Lorg/jruby/runtime/Block;
            8    9     3    block  Lorg/jruby/runtime/Block;
           11   12     3    block  Lorg/jruby/runtime/Block;
           14   15     3    block  Lorg/jruby/runtime/Block;
           17   18     3    block  Lorg/jruby/runtime/Block;
           19   20     3    block  Lorg/jruby/runtime/Block;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      scope    
      value    

  public static void checkArity(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope, java.lang.Object[], int, int, boolean, boolean, int, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;[Ljava/lang/Object;IIZZILorg/jruby/runtime/Block;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=11, args_size=9
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.parser.StaticScope scope
        start local 2 // java.lang.Object[] args
        start local 3 // int required
        start local 4 // int opt
        start local 5 // boolean rest
        start local 6 // boolean receivesKwargs
        start local 7 // int restKey
        start local 8 // org.jruby.runtime.Block block
         0: .line 579
            aload 2 /* args */
            arraylength
            istore 9 /* argsLength */
        start local 9 // int argsLength
         1: .line 580
            aload 0 /* context */
            aload 2 /* args */
            iload 3 /* required */
            iload 6 /* receivesKwargs */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.extractKwargsHash:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
            astore 10 /* keywordArgs */
        start local 10 // org.jruby.RubyHash keywordArgs
         2: .line 582
            iload 7 /* restKey */
            iconst_m1
            if_icmpne 3
            aload 10 /* keywordArgs */
            ifnull 3
            aload 0 /* context */
            aload 1 /* scope */
            aload 10 /* keywordArgs */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.checkForExtraUnwantedKeywordArgs:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;Lorg/jruby/RubyHash;)V
         3: .line 585
      StackMap locals: int org.jruby.RubyHash
      StackMap stack:
            aload 10 /* keywordArgs */
            ifnull 4
            iinc 9 /* argsLength */ -1
         4: .line 587
      StackMap locals:
      StackMap stack:
            aload 8 /* block */
            ifnull 5
            aload 8 /* block */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            getfield org.jruby.runtime.Block$Type.checkArity:Z
            ifeq 9
      StackMap locals:
      StackMap stack:
         5: iload 9 /* argsLength */
            iload 3 /* required */
            if_icmplt 6
            iload 5 /* rest */
            ifne 9
            iload 9 /* argsLength */
            iload 3 /* required */
            iload 4 /* opt */
            iadd
            if_icmple 9
         6: .line 588
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 9 /* argsLength */
            iload 3 /* required */
            iload 5 /* rest */
            ifeq 7
            iconst_m1
            goto 8
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.parser.StaticScope java.lang.Object[] int int int int int org.jruby.runtime.Block int org.jruby.RubyHash
      StackMap stack: org.jruby.Ruby int int
         7: iload 3 /* required */
            iload 4 /* opt */
            iadd
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.parser.StaticScope java.lang.Object[] int int int int int org.jruby.runtime.Block int org.jruby.RubyHash
      StackMap stack: org.jruby.Ruby int int int
         8: invokestatic org.jruby.runtime.Arity.raiseArgumentError:(Lorg/jruby/Ruby;III)V
         9: .line 590
      StackMap locals:
      StackMap stack:
            return
        end local 10 // org.jruby.RubyHash keywordArgs
        end local 9 // int argsLength
        end local 8 // org.jruby.runtime.Block block
        end local 7 // int restKey
        end local 6 // boolean receivesKwargs
        end local 5 // boolean rest
        end local 4 // int opt
        end local 3 // int required
        end local 2 // java.lang.Object[] args
        end local 1 // org.jruby.parser.StaticScope scope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0         context  Lorg/jruby/runtime/ThreadContext;
            0   10     1           scope  Lorg/jruby/parser/StaticScope;
            0   10     2            args  [Ljava/lang/Object;
            0   10     3        required  I
            0   10     4             opt  I
            0   10     5            rest  Z
            0   10     6  receivesKwargs  Z
            0   10     7         restKey  I
            0   10     8           block  Lorg/jruby/runtime/Block;
            1   10     9      argsLength  I
            2   10    10     keywordArgs  Lorg/jruby/RubyHash;
    MethodParameters:
                Name  Flags
      context         
      scope           
      args            
      required        
      opt             
      rest            
      receivesKwargs  
      restKey         
      block           

  public static org.jruby.runtime.builtin.IRubyObject[] frobnicateKwargsArgument(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;I)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // int requiredArgsCount
         0: .line 595
            aload 1 /* args */
            ifnonnull 1
            aload 1 /* args */
            areturn
         1: .line 597
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            arraylength
            istore 3 /* length */
        start local 3 // int length
         2: .line 600
            iload 3 /* length */
            iload 2 /* requiredArgsCount */
            if_icmpgt 3
            aload 1 /* args */
            areturn
         3: .line 602
      StackMap locals: int
      StackMap stack:
            aload 0 /* context */
            aload 1 /* args */
            iload 3 /* length */
            iconst_1
            isub
            aaload
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.toHash:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* maybeKwargs */
        start local 4 // org.jruby.runtime.builtin.IRubyObject maybeKwargs
         4: .line 604
            aload 4 /* maybeKwargs */
            ifnull 12
         5: .line 605
            aload 4 /* maybeKwargs */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 7
         6: .line 606
            aload 1 /* args */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyHash.newSmallHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            invokestatic org.jruby.util.ArraySupport.newCopy:([Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         7: .line 609
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 4 /* maybeKwargs */
            checkcast org.jruby.RubyHash
            astore 5 /* kwargs */
        start local 5 // org.jruby.RubyHash kwargs
         8: .line 611
            aload 5 /* kwargs */
            invokevirtual org.jruby.RubyHash.allSymbols:()Z
            ifeq 11
         9: .line 612
            aload 1 /* args */
            iload 3 /* length */
            iconst_1
            isub
            aload 5 /* kwargs */
            aload 0 /* context */
            invokevirtual org.jruby.RubyHash.dupFast:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
            aastore
        10: .line 613
            goto 12
        11: .line 614
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 0 /* context */
            aload 1 /* args */
            aload 5 /* kwargs */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.homogenizeKwargs:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyHash;)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* args */
        end local 5 // org.jruby.RubyHash kwargs
        12: .line 618
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject maybeKwargs
        end local 3 // int length
        end local 2 // int requiredArgsCount
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   13     0            context  Lorg/jruby/runtime/ThreadContext;
            0   13     1               args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   13     2  requiredArgsCount  I
            2   13     3             length  I
            4   13     4        maybeKwargs  Lorg/jruby/runtime/builtin/IRubyObject;
            8   12     5             kwargs  Lorg/jruby/RubyHash;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.JIT()
    MethodParameters:
                   Name  Flags
      context            
      args               
      requiredArgsCount  

  private static org.jruby.runtime.builtin.IRubyObject[] homogenizeKwargs(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.RubyHash);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyHash;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // org.jruby.RubyHash kwargs
         0: .line 622
            new org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor
            dup
            invokespecial org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor.<init>:()V
            astore 3 /* visitor */
        start local 3 // org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor visitor
         1: .line 625
            aload 2 /* kwargs */
            aload 0 /* context */
            aload 3 /* visitor */
            aconst_null
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         2: .line 627
            aload 3 /* visitor */
            getfield org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor.syms:Lorg/jruby/RubyHash;
            ifnonnull 4
         3: .line 629
            aload 3 /* visitor */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyHash.newSmallHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            putfield org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor.syms:Lorg/jruby/RubyHash;
         4: .line 632
      StackMap locals: org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor
      StackMap stack:
            aload 3 /* visitor */
            getfield org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor.others:Lorg/jruby/RubyHash;
            ifnull 7
         5: .line 633
            aload 1 /* args */
            aload 1 /* args */
            arraylength
            iconst_1
            iadd
            invokestatic org.jruby.util.ArraySupport.newCopy:([Lorg/jruby/runtime/builtin/IRubyObject;I)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* args */
         6: .line 634
            aload 1 /* args */
            aload 1 /* args */
            arraylength
            iconst_2
            isub
            aload 3 /* visitor */
            getfield org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor.others:Lorg/jruby/RubyHash;
            aastore
         7: .line 636
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            aload 1 /* args */
            arraylength
            iconst_1
            isub
            aload 3 /* visitor */
            getfield org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor.syms:Lorg/jruby/RubyHash;
            aastore
         8: .line 638
            aload 1 /* args */
            areturn
        end local 3 // org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor visitor
        end local 2 // org.jruby.RubyHash kwargs
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0  context  Lorg/jruby/runtime/ThreadContext;
            0    9     1     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    9     2   kwargs  Lorg/jruby/RubyHash;
            1    9     3  visitor  Lorg/jruby/ir/runtime/IRRuntimeHelpers$DivvyKeywordsVisitor;
    MethodParameters:
         Name  Flags
      context  
      args     
      kwargs   

  public static boolean shouldPrintIR(org.jruby.Ruby);
    descriptor: (Lorg/jruby/Ruby;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=4, args_size=1
        start local 0 // org.jruby.Ruby runtime
         0: .line 649
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.isBooting:()Z
            istore 1 /* booting */
        start local 1 // boolean booting
         1: .line 650
            getstatic org.jruby.util.cli.Options.IR_PRINT:Lcom/headius/options/Option;
            invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            istore 2 /* print */
        start local 2 // boolean print
         2: .line 651
            getstatic org.jruby.util.cli.Options.IR_PRINT_ALL:Lcom/headius/options/Option;
            invokevirtual com.headius.options.Option.load:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            istore 3 /* printAll */
        start local 3 // boolean printAll
         3: .line 653
            iload 1 /* booting */
            ifne 4
            iload 2 /* print */
            ifne 6
      StackMap locals: int int int
      StackMap stack:
         4: iload 1 /* booting */
            ifeq 5
            iload 3 /* printAll */
            ifne 6
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_1
            ireturn
        end local 3 // boolean printAll
        end local 2 // boolean print
        end local 1 // boolean booting
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0   runtime  Lorg/jruby/Ruby;
            1    7     1   booting  Z
            2    7     2     print  Z
            3    7     3  printAll  Z
    MethodParameters:
         Name  Flags
      runtime  final

  private static org.jruby.runtime.builtin.IRubyObject toHash(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject lastArg
         0: .line 673
            aload 1 /* lastArg */
            instanceof org.jruby.RubyHash
            ifeq 1
            aload 1 /* lastArg */
            checkcast org.jruby.RubyHash
            areturn
         1: .line 674
      StackMap locals:
      StackMap stack:
            aload 1 /* lastArg */
            ldc "to_hash"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsTo:(Ljava/lang/String;)Z
            ifeq 6
         2: .line 675
            aload 1 /* lastArg */
            aload 0 /* context */
            ldc "to_hash"
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* lastArg */
         3: .line 676
            aload 1 /* lastArg */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 4
            aload 1 /* lastArg */
            areturn
         4: .line 677
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* lastArg */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getHash:()Lorg/jruby/RubyClass;
            invokestatic org.jruby.util.TypeConverter.checkType:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;)V
         5: .line 678
            aload 1 /* lastArg */
            checkcast org.jruby.RubyHash
            areturn
         6: .line 680
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject lastArg
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  context  Lorg/jruby/runtime/ThreadContext;
            0    7     1  lastArg  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      lastArg  

  public static org.jruby.RubyHash extractKwargsHash(org.jruby.runtime.ThreadContext, java.lang.Object[], int, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object[] args
        start local 2 // int requiredArgsCount
        start local 3 // boolean receivesKwargs
         0: .line 684
            iload 3 /* receivesKwargs */
            ifne 1
            aconst_null
            areturn
         1: .line 685
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            arraylength
            iload 2 /* requiredArgsCount */
            if_icmpgt 2
            aconst_null
            areturn
         2: .line 687
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            aload 1 /* args */
            arraylength
            iconst_1
            isub
            aaload
            astore 4 /* lastArg */
        start local 4 // java.lang.Object lastArg
         3: .line 689
            aload 4 /* lastArg */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 6
         4: .line 690
            aload 0 /* context */
            aload 4 /* lastArg */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.toHash:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* returnValue */
        start local 5 // org.jruby.runtime.builtin.IRubyObject returnValue
         5: .line 691
            aload 5 /* returnValue */
            instanceof org.jruby.RubyHash
            ifeq 6
            aload 5 /* returnValue */
            checkcast org.jruby.RubyHash
            areturn
        end local 5 // org.jruby.runtime.builtin.IRubyObject returnValue
         6: .line 694
      StackMap locals: java.lang.Object
      StackMap stack:
            aconst_null
            areturn
        end local 4 // java.lang.Object lastArg
        end local 3 // boolean receivesKwargs
        end local 2 // int requiredArgsCount
        end local 1 // java.lang.Object[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0            context  Lorg/jruby/runtime/ThreadContext;
            0    7     1               args  [Ljava/lang/Object;
            0    7     2  requiredArgsCount  I
            0    7     3     receivesKwargs  Z
            3    7     4            lastArg  Ljava/lang/Object;
            5    6     5        returnValue  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
                   Name  Flags
      context            
      args               
      requiredArgsCount  
      receivesKwargs     

  public static org.jruby.RubyHash extractKwargsHash(java.lang.Object[], int, boolean);
    descriptor: ([Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.lang.Object[] args
        start local 1 // int requiredArgsCount
        start local 2 // boolean receivesKwargs
         0: .line 699
            iload 2 /* receivesKwargs */
            ifne 1
            aconst_null
            areturn
         1: .line 700
      StackMap locals:
      StackMap stack:
            aload 0 /* args */
            arraylength
            iload 1 /* requiredArgsCount */
            if_icmpgt 2
            aconst_null
            areturn
         2: .line 702
      StackMap locals:
      StackMap stack:
            aload 0 /* args */
            aload 0 /* args */
            arraylength
            iconst_1
            isub
            aaload
            astore 3 /* lastArg */
        start local 3 // java.lang.Object lastArg
         3: .line 704
            aload 3 /* lastArg */
            instanceof org.jruby.runtime.builtin.IRubyObject
            ifeq 6
         4: .line 705
            aload 3 /* lastArg */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            aload 3 /* lastArg */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.toHash:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* returnValue */
        start local 4 // org.jruby.runtime.builtin.IRubyObject returnValue
         5: .line 706
            aload 4 /* returnValue */
            instanceof org.jruby.RubyHash
            ifeq 6
            aload 4 /* returnValue */
            checkcast org.jruby.RubyHash
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject returnValue
         6: .line 709
      StackMap locals: java.lang.Object
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.lang.Object lastArg
        end local 2 // boolean receivesKwargs
        end local 1 // int requiredArgsCount
        end local 0 // java.lang.Object[] args
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               args  [Ljava/lang/Object;
            0    7     1  requiredArgsCount  I
            0    7     2     receivesKwargs  Z
            3    7     3            lastArg  Ljava/lang/Object;
            5    6     4        returnValue  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                   Name  Flags
      args               
      requiredArgsCount  
      receivesKwargs     

  public static void checkForExtraUnwantedKeywordArgs(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope, org.jruby.RubyHash);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;Lorg/jruby/RubyHash;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.parser.StaticScope scope
        start local 2 // org.jruby.RubyHash keywordArgs
         0: .line 715
            aload 2 /* keywordArgs */
            aload 0 /* context */
            getstatic org.jruby.ir.runtime.IRRuntimeHelpers.CheckUnwantedKeywordsVisitor:Lorg/jruby/RubyHash$VisitorWithState;
            aload 1 /* scope */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         1: .line 716
            goto 6
      StackMap locals:
      StackMap stack: org.jruby.ir.runtime.IRRuntimeHelpers$InvalidKeyException
         2: pop
         3: .line 718
            new org.jruby.ir.runtime.IRRuntimeHelpers$GatherUnwantedKeywordsVisitor
            dup
            invokespecial org.jruby.ir.runtime.IRRuntimeHelpers$GatherUnwantedKeywordsVisitor.<init>:()V
            astore 3 /* visitor */
        start local 3 // org.jruby.ir.runtime.IRRuntimeHelpers$GatherUnwantedKeywordsVisitor visitor
         4: .line 719
            aload 2 /* keywordArgs */
            aload 0 /* context */
            aload 3 /* visitor */
            aload 1 /* scope */
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         5: .line 720
            aload 3 /* visitor */
            aload 0 /* context */
            invokevirtual org.jruby.ir.runtime.IRRuntimeHelpers$GatherUnwantedKeywordsVisitor.raiseIfError:(Lorg/jruby/runtime/ThreadContext;)V
        end local 3 // org.jruby.ir.runtime.IRRuntimeHelpers$GatherUnwantedKeywordsVisitor visitor
         6: .line 722
      StackMap locals:
      StackMap stack:
            return
        end local 2 // org.jruby.RubyHash keywordArgs
        end local 1 // org.jruby.parser.StaticScope scope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0      context  Lorg/jruby/runtime/ThreadContext;
            0    7     1        scope  Lorg/jruby/parser/StaticScope;
            0    7     2  keywordArgs  Lorg/jruby/RubyHash;
            4    6     3      visitor  Lorg/jruby/ir/runtime/IRRuntimeHelpers$GatherUnwantedKeywordsVisitor;
      Exception table:
        from    to  target  type
           0     1       2  Class org.jruby.ir.runtime.IRRuntimeHelpers$InvalidKeyException
    MethodParameters:
             Name  Flags
      context      
      scope        final
      keywordArgs  

  public static org.jruby.runtime.DynamicScope prepareScriptScope(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;)Lorg/jruby/runtime/DynamicScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.parser.StaticScope scope
         0: .line 726
            aload 1 /* scope */
            invokevirtual org.jruby.parser.StaticScope.getIRScope:()Lorg/jruby/ir/IRScope;
            astore 2 /* irScope */
        start local 2 // org.jruby.ir.IRScope irScope
         1: .line 728
            aload 2 /* irScope */
            invokevirtual org.jruby.ir.IRScope.isScriptScope:()Z
            ifeq 7
         2: .line 729
            aload 2 /* irScope */
            checkcast org.jruby.ir.IRScriptBody
            invokevirtual org.jruby.ir.IRScriptBody.getScriptDynamicScope:()Lorg/jruby/runtime/DynamicScope;
            astore 3 /* tlbScope */
        start local 3 // org.jruby.runtime.DynamicScope tlbScope
         3: .line 730
            aload 3 /* tlbScope */
            ifnull 7
         4: .line 731
            aload 0 /* context */
            aload 3 /* tlbScope */
            invokevirtual org.jruby.runtime.ThreadContext.preScopedBody:(Lorg/jruby/runtime/DynamicScope;)V
         5: .line 732
            aload 3 /* tlbScope */
            invokevirtual org.jruby.runtime.DynamicScope.growIfNeeded:()V
         6: .line 733
            aload 3 /* tlbScope */
            areturn
        end local 3 // org.jruby.runtime.DynamicScope tlbScope
         7: .line 737
      StackMap locals: org.jruby.ir.IRScope
      StackMap stack:
            aload 1 /* scope */
            invokestatic org.jruby.runtime.DynamicScope.newDynamicScope:(Lorg/jruby/parser/StaticScope;)Lorg/jruby/runtime/DynamicScope;
            astore 3 /* dynScope */
        start local 3 // org.jruby.runtime.DynamicScope dynScope
         8: .line 738
            aload 0 /* context */
            aload 3 /* dynScope */
            invokevirtual org.jruby.runtime.ThreadContext.pushScope:(Lorg/jruby/runtime/DynamicScope;)V
         9: .line 740
            aload 3 /* dynScope */
            areturn
        end local 3 // org.jruby.runtime.DynamicScope dynScope
        end local 2 // org.jruby.ir.IRScope irScope
        end local 1 // org.jruby.parser.StaticScope scope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0   context  Lorg/jruby/runtime/ThreadContext;
            0   10     1     scope  Lorg/jruby/parser/StaticScope;
            1   10     2   irScope  Lorg/jruby/ir/IRScope;
            3    7     3  tlbScope  Lorg/jruby/runtime/DynamicScope;
            8   10     3  dynScope  Lorg/jruby/runtime/DynamicScope;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      scope    

  public static org.jruby.runtime.builtin.IRubyObject match3(org.jruby.runtime.ThreadContext, org.jruby.RubyRegexp, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyRegexp;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.RubyRegexp regexp
        start local 2 // org.jruby.runtime.builtin.IRubyObject argValue
         0: .line 777
            aload 2 /* argValue */
            instanceof org.jruby.RubyString
            ifeq 2
         1: .line 778
            aload 1 /* regexp */
            aload 0 /* context */
            aload 2 /* argValue */
            invokevirtual org.jruby.RubyRegexp.op_match:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 780
      StackMap locals:
      StackMap stack:
            aload 2 /* argValue */
            aload 0 /* context */
            ldc "=~"
            aload 1 /* regexp */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject argValue
        end local 1 // org.jruby.RubyRegexp regexp
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0   context  Lorg/jruby/runtime/ThreadContext;
            0    3     1    regexp  Lorg/jruby/RubyRegexp;
            0    3     2  argValue  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
          Name  Flags
      context   
      regexp    
      argValue  

  public static org.jruby.runtime.builtin.IRubyObject extractOptionalArgument(org.jruby.RubyArray, int, int);
    descriptor: (Lorg/jruby/RubyArray;II)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.RubyArray rubyArray
        start local 1 // int minArgsLength
        start local 2 // int index
         0: .line 785
            aload 0 /* rubyArray */
            invokevirtual org.jruby.RubyArray.getLength:()I
            istore 3 /* n */
        start local 3 // int n
         1: .line 786
            iload 1 /* minArgsLength */
            iload 3 /* n */
            if_icmpge 2
            aload 0 /* rubyArray */
            iload 2 /* index */
            invokevirtual org.jruby.RubyArray.entry:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals: int
      StackMap stack:
         2: getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 3 // int n
        end local 2 // int index
        end local 1 // int minArgsLength
        end local 0 // org.jruby.RubyArray rubyArray
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0      rubyArray  Lorg/jruby/RubyArray;
            0    4     1  minArgsLength  I
            0    4     2          index  I
            1    4     3              n  I
    MethodParameters:
               Name  Flags
      rubyArray      
      minArgsLength  
      index          

  public static org.jruby.runtime.builtin.IRubyObject isDefinedBackref(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject definedMessage
         0: .line 791
            ldc Lorg/jruby/RubyMatchData;
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 792
            aload 1 /* definedMessage */
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 791
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject definedMessage
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0         context  Lorg/jruby/runtime/ThreadContext;
            0    4     1  definedMessage  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      definedMessage  

  public static org.jruby.runtime.builtin.IRubyObject isDefinedGlobal(org.jruby.runtime.ThreadContext, java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.String name
        start local 2 // org.jruby.runtime.builtin.IRubyObject definedMessage
         0: .line 797
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            aload 1 /* name */
            invokevirtual org.jruby.internal.runtime.GlobalVariables.isDefined:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 798
            aload 2 /* definedMessage */
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 797
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject definedMessage
        end local 1 // java.lang.String name
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0         context  Lorg/jruby/runtime/ThreadContext;
            0    4     1            name  Ljava/lang/String;
            0    4     2  definedMessage  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      name            
      definedMessage  

  public static org.jruby.runtime.builtin.IRubyObject isDefinedNthRef(org.jruby.runtime.ThreadContext, int, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // int matchNumber
        start local 2 // org.jruby.runtime.builtin.IRubyObject definedMessage
         0: .line 804
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* backref */
        start local 3 // org.jruby.runtime.builtin.IRubyObject backref
         1: .line 806
            aload 3 /* backref */
            instanceof org.jruby.RubyMatchData
            ifeq 4
         2: .line 807
            aload 3 /* backref */
            checkcast org.jruby.RubyMatchData
            iload 1 /* matchNumber */
            invokevirtual org.jruby.RubyMatchData.group:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 4
         3: .line 808
            aload 2 /* definedMessage */
            areturn
         4: .line 812
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject backref
        end local 2 // org.jruby.runtime.builtin.IRubyObject definedMessage
        end local 1 // int matchNumber
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0         context  Lorg/jruby/runtime/ThreadContext;
            0    5     1     matchNumber  I
            0    5     2  definedMessage  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     3         backref  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      matchNumber     
      definedMessage  

  public static org.jruby.runtime.builtin.IRubyObject isDefinedClassVar(org.jruby.runtime.ThreadContext, org.jruby.RubyModule, java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.RubyModule receiver
        start local 2 // java.lang.String name
        start local 3 // org.jruby.runtime.builtin.IRubyObject definedMessage
         0: .line 817
            aload 1 /* receiver */
            aload 2 /* name */
            invokevirtual org.jruby.RubyModule.isClassVarDefined:(Ljava/lang/String;)Z
            istore 4 /* defined */
        start local 4 // boolean defined
         1: .line 819
            iload 4 /* defined */
            ifne 4
            aload 1 /* receiver */
            invokevirtual org.jruby.RubyModule.isSingleton:()Z
            ifeq 4
         2: .line 820
            aload 1 /* receiver */
            checkcast org.jruby.MetaClass
            invokevirtual org.jruby.MetaClass.getAttached:()Lorg/jruby/RubyBasicObject;
            astore 5 /* attached */
        start local 5 // org.jruby.runtime.builtin.IRubyObject attached
         3: .line 822
            aload 5 /* attached */
            instanceof org.jruby.RubyModule
            ifeq 4
            aload 5 /* attached */
            checkcast org.jruby.RubyModule
            aload 2 /* name */
            invokevirtual org.jruby.RubyModule.isClassVarDefined:(Ljava/lang/String;)Z
            istore 4 /* defined */
        end local 5 // org.jruby.runtime.builtin.IRubyObject attached
         4: .line 825
      StackMap locals: int
      StackMap stack:
            iload 4 /* defined */
            ifeq 5
            aload 3 /* definedMessage */
            goto 6
      StackMap locals:
      StackMap stack:
         5: aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         6: areturn
        end local 4 // boolean defined
        end local 3 // org.jruby.runtime.builtin.IRubyObject definedMessage
        end local 2 // java.lang.String name
        end local 1 // org.jruby.RubyModule receiver
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0         context  Lorg/jruby/runtime/ThreadContext;
            0    7     1        receiver  Lorg/jruby/RubyModule;
            0    7     2            name  Ljava/lang/String;
            0    7     3  definedMessage  Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     4         defined  Z
            3    4     5        attached  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      receiver        
      name            
      definedMessage  

  public static org.jruby.runtime.builtin.IRubyObject isDefinedInstanceVar(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        start local 2 // java.lang.String name
        start local 3 // org.jruby.runtime.builtin.IRubyObject definedMessage
         0: .line 830
            aload 1 /* receiver */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getInstanceVariables:()Lorg/jruby/runtime/builtin/InstanceVariables;
            aload 2 /* name */
            invokeinterface org.jruby.runtime.builtin.InstanceVariables.hasInstanceVariable:(Ljava/lang/String;)Z
            ifeq 2
         1: .line 831
            aload 3 /* definedMessage */
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 830
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject definedMessage
        end local 2 // java.lang.String name
        end local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0         context  Lorg/jruby/runtime/ThreadContext;
            0    4     1        receiver  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2            name  Ljava/lang/String;
            0    4     3  definedMessage  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      receiver        
      name            
      definedMessage  

  public static org.jruby.runtime.builtin.IRubyObject isDefinedCall(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.runtime.builtin.IRubyObject receiver
        start local 3 // java.lang.String name
        start local 4 // org.jruby.runtime.builtin.IRubyObject definedMessage
         0: .line 836
            aload 0 /* context */
            aload 1 /* self */
            aload 2 /* receiver */
            aload 3 /* name */
            aload 4 /* definedMessage */
            invokestatic org.jruby.runtime.Helpers.getDefinedCall:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* boundValue */
        start local 5 // org.jruby.runtime.builtin.IRubyObject boundValue
         1: .line 838
            aload 5 /* boundValue */
            ifnonnull 2
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         2: aload 5 /* boundValue */
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 5 // org.jruby.runtime.builtin.IRubyObject boundValue
        end local 4 // org.jruby.runtime.builtin.IRubyObject definedMessage
        end local 3 // java.lang.String name
        end local 2 // org.jruby.runtime.builtin.IRubyObject receiver
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0         context  Lorg/jruby/runtime/ThreadContext;
            0    4     1            self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2        receiver  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3            name  Ljava/lang/String;
            0    4     4  definedMessage  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     5      boundValue  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      self            
      receiver        
      name            
      definedMessage  

  public static org.jruby.runtime.builtin.IRubyObject isDefinedConstantOrMethod(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        start local 2 // java.lang.String name
        start local 3 // org.jruby.runtime.builtin.IRubyObject definedConstantMessage
        start local 4 // org.jruby.runtime.builtin.IRubyObject definedMethodMessage
         0: .line 843
            aload 1 /* receiver */
            aload 2 /* name */
            aload 3 /* definedConstantMessage */
            aload 4 /* definedMethodMessage */
            invokestatic org.jruby.runtime.Helpers.getDefinedConstantOrBoundMethod:(Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* definedType */
        start local 5 // org.jruby.runtime.builtin.IRubyObject definedType
         1: .line 845
            aload 5 /* definedType */
            ifnonnull 2
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         2: aload 5 /* definedType */
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 5 // org.jruby.runtime.builtin.IRubyObject definedType
        end local 4 // org.jruby.runtime.builtin.IRubyObject definedMethodMessage
        end local 3 // org.jruby.runtime.builtin.IRubyObject definedConstantMessage
        end local 2 // java.lang.String name
        end local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    4     0                 context  Lorg/jruby/runtime/ThreadContext;
            0    4     1                receiver  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2                    name  Ljava/lang/String;
            0    4     3  definedConstantMessage  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     4    definedMethodMessage  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     5             definedType  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                        Name  Flags
      context                 
      receiver                
      name                    
      definedConstantMessage  
      definedMethodMessage    

  public static org.jruby.runtime.builtin.IRubyObject isDefinedMethod(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, boolean, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;ZLorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        start local 2 // java.lang.String name
        start local 3 // boolean checkIfPublic
        start local 4 // org.jruby.runtime.builtin.IRubyObject definedMessage
         0: .line 850
            aload 1 /* receiver */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            aload 2 /* name */
            invokevirtual org.jruby.RubyClass.searchMethod:(Ljava/lang/String;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
            astore 5 /* method */
        start local 5 // org.jruby.internal.runtime.methods.DynamicMethod method
         1: .line 852
            aload 5 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isUndefined:()Z
            ifeq 2
            iconst_0
            goto 3
      StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
         2: iconst_1
      StackMap locals:
      StackMap stack: int
         3: istore 6 /* defined */
        start local 6 // boolean defined
         4: .line 854
            iload 6 /* defined */
            ifeq 9
         5: .line 856
            iload 3 /* checkIfPublic */
            ifeq 6
            aload 5 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getVisibility:()Lorg/jruby/runtime/Visibility;
            getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
            if_acmpeq 6
            iconst_0
            goto 7
      StackMap locals: int
      StackMap stack:
         6: iconst_1
      StackMap locals:
      StackMap stack: int
         7: istore 6 /* defined */
         8: .line 857
            goto 10
         9: .line 859
      StackMap locals:
      StackMap stack:
            aload 1 /* receiver */
            aload 2 /* name */
            iload 3 /* checkIfPublic */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.respondsToMissing:(Ljava/lang/String;Z)Z
            istore 6 /* defined */
        10: .line 862
      StackMap locals:
      StackMap stack:
            iload 6 /* defined */
            ifeq 11
            aload 4 /* definedMessage */
            goto 12
      StackMap locals:
      StackMap stack:
        11: aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
        12: areturn
        end local 6 // boolean defined
        end local 5 // org.jruby.internal.runtime.methods.DynamicMethod method
        end local 4 // org.jruby.runtime.builtin.IRubyObject definedMessage
        end local 3 // boolean checkIfPublic
        end local 2 // java.lang.String name
        end local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   13     0         context  Lorg/jruby/runtime/ThreadContext;
            0   13     1        receiver  Lorg/jruby/runtime/builtin/IRubyObject;
            0   13     2            name  Ljava/lang/String;
            0   13     3   checkIfPublic  Z
            0   13     4  definedMessage  Lorg/jruby/runtime/builtin/IRubyObject;
            1   13     5          method  Lorg/jruby/internal/runtime/methods/DynamicMethod;
            4   13     6         defined  Z
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      receiver        
      name            
      checkIfPublic   
      definedMessage  

  public static org.jruby.runtime.builtin.IRubyObject isDefinedSuper(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        start local 2 // org.jruby.runtime.builtin.IRubyObject definedMessage
         0: .line 867
            aload 0 /* context */
            aload 1 /* receiver */
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getFrameName:()Ljava/lang/String;
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getFrameKlazz:()Lorg/jruby/RubyModule;
            aload 2 /* definedMessage */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.isDefinedSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyModule;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject definedMessage
        end local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0         context  Lorg/jruby/runtime/ThreadContext;
            0    1     1        receiver  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2  definedMessage  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      receiver        
      definedMessage  

  public static org.jruby.runtime.builtin.IRubyObject isDefinedSuper(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, org.jruby.RubyModule, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyModule;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        start local 2 // java.lang.String frameName
        start local 3 // org.jruby.RubyModule frameClass
        start local 4 // org.jruby.runtime.builtin.IRubyObject definedMessage
         0: .line 872
            aload 2 /* frameName */
            ifnull 3
            aload 3 /* frameClass */
            ifnull 3
         1: .line 873
            aload 3 /* frameClass */
            invokevirtual org.jruby.RubyModule.getSuperClass:()Lorg/jruby/RubyClass;
            aload 2 /* frameName */
            iconst_0
            invokevirtual org.jruby.RubyClass.isMethodBound:(Ljava/lang/String;Z)Z
            ifeq 3
         2: .line 872
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 5 /* defined */
        start local 5 // boolean defined
         5: .line 875
            iload 5 /* defined */
            ifeq 6
            aload 4 /* definedMessage */
            goto 7
      StackMap locals: int
      StackMap stack:
         6: aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         7: areturn
        end local 5 // boolean defined
        end local 4 // org.jruby.runtime.builtin.IRubyObject definedMessage
        end local 3 // org.jruby.RubyModule frameClass
        end local 2 // java.lang.String frameName
        end local 1 // org.jruby.runtime.builtin.IRubyObject receiver
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0         context  Lorg/jruby/runtime/ThreadContext;
            0    8     1        receiver  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2       frameName  Ljava/lang/String;
            0    8     3      frameClass  Lorg/jruby/RubyModule;
            0    8     4  definedMessage  Lorg/jruby/runtime/builtin/IRubyObject;
            5    8     5         defined  Z
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                Name  Flags
      context         
      receiver        
      frameName       
      frameClass      
      definedMessage  

  public static org.jruby.runtime.builtin.IRubyObject nthMatch(org.jruby.runtime.ThreadContext, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;I)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // int matchNumber
         0: .line 879
            iload 1 /* matchNumber */
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyRegexp.nth_match:(ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // int matchNumber
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0      context  Lorg/jruby/runtime/ThreadContext;
            0    1     1  matchNumber  I
    MethodParameters:
             Name  Flags
      context      
      matchNumber  

  public static void defineAlias(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.DynamicScope, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.runtime.DynamicScope currDynScope
        start local 3 // org.jruby.runtime.builtin.IRubyObject newName
        start local 4 // org.jruby.runtime.builtin.IRubyObject oldName
         0: .line 883
            aload 1 /* self */
            ifnull 1
            aload 1 /* self */
            instanceof org.jruby.RubyFixnum
            ifne 1
            aload 1 /* self */
            instanceof org.jruby.RubySymbol
            ifeq 2
         1: .line 884
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "no class to make alias"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 887
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 2 /* currDynScope */
            aload 1 /* self */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.findInstanceMethodContainer:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
            aload 0 /* context */
            aload 3 /* newName */
            aload 4 /* oldName */
            invokevirtual org.jruby.RubyModule.alias_method:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
            pop
         3: .line 888
            return
        end local 4 // org.jruby.runtime.builtin.IRubyObject oldName
        end local 3 // org.jruby.runtime.builtin.IRubyObject newName
        end local 2 // org.jruby.runtime.DynamicScope currDynScope
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0       context  Lorg/jruby/runtime/ThreadContext;
            0    4     1          self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2  currDynScope  Lorg/jruby/runtime/DynamicScope;
            0    4     3       newName  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     4       oldName  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
              Name  Flags
      context       
      self          
      currDynScope  
      newName       
      oldName       

  public static org.jruby.RubyModule getModuleFromScope(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.parser.StaticScope scope
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg
         0: .line 891
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 892
            aload 1 /* scope */
            invokevirtual org.jruby.parser.StaticScope.getModule:()Lorg/jruby/RubyModule;
            astore 4 /* rubyClass */
        start local 4 // org.jruby.RubyModule rubyClass
         2: .line 895
            goto 7
         3: .line 896
      StackMap locals: org.jruby.Ruby org.jruby.RubyModule
      StackMap stack:
            aload 1 /* scope */
            invokevirtual org.jruby.parser.StaticScope.getPreviousCRefScope:()Lorg/jruby/parser/StaticScope;
            astore 1 /* scope */
         4: .line 897
            aload 1 /* scope */
            invokevirtual org.jruby.parser.StaticScope.getModule:()Lorg/jruby/RubyModule;
            astore 4 /* rubyClass */
         5: .line 898
            aload 1 /* scope */
            invokevirtual org.jruby.parser.StaticScope.getPreviousCRefScope:()Lorg/jruby/parser/StaticScope;
            ifnonnull 7
         6: .line 899
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.CVAR_FROM_TOPLEVEL_SINGLETON_METHOD:Lorg/jruby/common/IRubyWarnings$ID;
            ldc "class variable access from toplevel singleton method"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         7: .line 895
      StackMap locals:
      StackMap stack:
            aload 1 /* scope */
            ifnull 8
            aload 4 /* rubyClass */
            invokevirtual org.jruby.RubyModule.isSingleton:()Z
            ifne 3
            aload 4 /* rubyClass */
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getDummy:()Lorg/jruby/RubyClass;
            if_acmpeq 3
         8: .line 903
      StackMap locals:
      StackMap stack:
            aload 1 /* scope */
            ifnonnull 10
            aload 2 /* arg */
            ifnull 10
         9: .line 905
            aload 2 /* arg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            astore 4 /* rubyClass */
        10: .line 908
      StackMap locals:
      StackMap stack:
            aload 4 /* rubyClass */
            ifnonnull 12
        11: .line 909
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "no class/module to define class variable"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        12: .line 912
      StackMap locals:
      StackMap stack:
            aload 4 /* rubyClass */
            areturn
        end local 4 // org.jruby.RubyModule rubyClass
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg
        end local 1 // org.jruby.parser.StaticScope scope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0    context  Lorg/jruby/runtime/ThreadContext;
            0   13     1      scope  Lorg/jruby/parser/StaticScope;
            0   13     2        arg  Lorg/jruby/runtime/builtin/IRubyObject;
            1   13     3    runtime  Lorg/jruby/Ruby;
            2   13     4  rubyClass  Lorg/jruby/RubyModule;
    MethodParameters:
         Name  Flags
      context  
      scope    
      arg      

  public static org.jruby.runtime.builtin.IRubyObject mergeKeywordArguments(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject restKwarg
        start local 2 // org.jruby.runtime.builtin.IRubyObject explicitKwarg
         0: .line 917
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* restKwarg */
            invokestatic org.jruby.util.TypeConverter.checkHashType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.dup:()Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyHash
            astore 3 /* hash */
        start local 3 // org.jruby.RubyHash hash
         1: .line 919
            aload 3 /* hash */
            invokevirtual org.jruby.RubyHash.modify:()V
         2: .line 920
            aload 2 /* explicitKwarg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToHash:()Lorg/jruby/RubyHash;
            astore 4 /* otherHash */
        start local 4 // org.jruby.RubyHash otherHash
         3: .line 922
            aload 4 /* otherHash */
            invokevirtual org.jruby.RubyHash.empty_p:()Lorg/jruby/RubyBoolean;
            invokevirtual org.jruby.RubyBoolean.isTrue:()Z
            ifeq 4
            aload 3 /* hash */
            areturn
         4: .line 924
      StackMap locals: org.jruby.RubyHash org.jruby.RubyHash
      StackMap stack:
            aload 4 /* otherHash */
            aload 0 /* context */
            new org.jruby.ir.runtime.IRRuntimeHelpers$KwargMergeVisitor
            dup
            aload 3 /* hash */
            invokespecial org.jruby.ir.runtime.IRRuntimeHelpers$KwargMergeVisitor.<init>:(Lorg/jruby/RubyHash;)V
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyHash.visitAll:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash$VisitorWithState;Ljava/lang/Object;)V
         5: .line 926
            aload 3 /* hash */
            areturn
        end local 4 // org.jruby.RubyHash otherHash
        end local 3 // org.jruby.RubyHash hash
        end local 2 // org.jruby.runtime.builtin.IRubyObject explicitKwarg
        end local 1 // org.jruby.runtime.builtin.IRubyObject restKwarg
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0        context  Lorg/jruby/runtime/ThreadContext;
            0    6     1      restKwarg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    6     2  explicitKwarg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    6     3           hash  Lorg/jruby/RubyHash;
            3    6     4      otherHash  Lorg/jruby/RubyHash;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
               Name  Flags
      context        
      restKwarg      
      explicitKwarg  

  public static org.jruby.RubyModule findInstanceMethodContainer(org.jruby.runtime.ThreadContext, org.jruby.runtime.DynamicScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.DynamicScope currDynScope
        start local 2 // org.jruby.runtime.builtin.IRubyObject self
         0: .line 946
            aload 1 /* currDynScope */
            invokevirtual org.jruby.runtime.DynamicScope.inBindingEval:()Z
            istore 3 /* inBindingEval */
        start local 3 // boolean inBindingEval
         1: .line 949
            iload 3 /* inBindingEval */
            ifne 2
            aload 2 /* self */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getTopSelf:()Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 2
            aload 2 /* self */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getType:()Lorg/jruby/RubyClass;
            areturn
         2: .line 951
      StackMap locals: int
      StackMap stack:
            aload 1 /* currDynScope */
            astore 4 /* ds */
        start local 4 // org.jruby.runtime.DynamicScope ds
         3: goto 22
         4: .line 952
      StackMap locals: org.jruby.runtime.DynamicScope
      StackMap stack:
            aload 4 /* ds */
            invokevirtual org.jruby.runtime.DynamicScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            invokevirtual org.jruby.parser.StaticScope.getScopeType:()Lorg/jruby/ir/IRScopeType;
            astore 5 /* scopeType */
        start local 5 // org.jruby.ir.IRScopeType scopeType
         5: .line 953
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$EvalType:()[I
            aload 4 /* ds */
            invokevirtual org.jruby.runtime.DynamicScope.getEvalType:()Lorg/jruby/EvalType;
            invokevirtual org.jruby.EvalType.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 11
                    2: 10
                    3: 9
                    4: 6
              default: 22
          }
         6: .line 983
      StackMap locals: org.jruby.ir.IRScopeType
      StackMap stack:
            aload 2 /* self */
            instanceof org.jruby.RubyModule
            ifeq 7
            aload 2 /* self */
            checkcast org.jruby.RubyModule
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 2 /* self */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
      StackMap locals:
      StackMap stack: org.jruby.RubyModule
         8: areturn
         9: .line 984
      StackMap locals:
      StackMap stack:
            aload 2 /* self */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getSingletonClass:()Lorg/jruby/RubyClass;
            areturn
        10: .line 985
      StackMap locals:
      StackMap stack:
            aload 4 /* ds */
            invokevirtual org.jruby.runtime.DynamicScope.getParentScope:()Lorg/jruby/runtime/DynamicScope;
            astore 4 /* ds */
            goto 22
        11: .line 987
      StackMap locals:
      StackMap stack:
            aload 5 /* scopeType */
            ifnull 12
            aload 5 /* scopeType */
            invokevirtual org.jruby.ir.IRScopeType.isClosureType:()Z
            ifeq 14
        12: .line 989
      StackMap locals:
      StackMap stack:
            aload 4 /* ds */
            invokevirtual org.jruby.runtime.DynamicScope.getParentScope:()Lorg/jruby/runtime/DynamicScope;
            astore 4 /* ds */
        13: .line 990
            goto 22
      StackMap locals:
      StackMap stack:
        14: iload 3 /* inBindingEval */
            ifeq 16
        15: .line 992
            aload 4 /* ds */
            invokevirtual org.jruby.runtime.DynamicScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            invokevirtual org.jruby.parser.StaticScope.getModule:()Lorg/jruby/RubyModule;
            areturn
        16: .line 994
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$ir$IRScopeType:()[I
            aload 5 /* scopeType */
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            iaload
            tableswitch { // 3 - 8
                    3: 20
                    4: 17
                    5: 17
                    6: 17
                    7: 17
                    8: 20
              default: 21
          }
        17: .line 1003
      StackMap locals:
      StackMap stack:
            aload 2 /* self */
            instanceof org.jruby.RubyModule
            ifeq 18
            aload 2 /* self */
            checkcast org.jruby.RubyModule
            goto 19
      StackMap locals:
      StackMap stack:
        18: aload 2 /* self */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
      StackMap locals:
      StackMap stack: org.jruby.RubyModule
        19: areturn
        20: .line 1007
      StackMap locals:
      StackMap stack:
            aload 2 /* self */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            areturn
        21: .line 1010
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Should not get here! scopeType is "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* scopeType */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // org.jruby.ir.IRScopeType scopeType
        22: .line 951
      StackMap locals:
      StackMap stack:
            aload 4 /* ds */
            ifnonnull 4
        end local 4 // org.jruby.runtime.DynamicScope ds
        23: .line 1017
            new java.lang.RuntimeException
            dup
            ldc "Should not get here!"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // boolean inBindingEval
        end local 2 // org.jruby.runtime.builtin.IRubyObject self
        end local 1 // org.jruby.runtime.DynamicScope currDynScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   24     0        context  Lorg/jruby/runtime/ThreadContext;
            0   24     1   currDynScope  Lorg/jruby/runtime/DynamicScope;
            0   24     2           self  Lorg/jruby/runtime/builtin/IRubyObject;
            1   24     3  inBindingEval  Z
            3   23     4             ds  Lorg/jruby/runtime/DynamicScope;
            5   22     5      scopeType  Lorg/jruby/ir/IRScopeType;
    MethodParameters:
              Name  Flags
      context       
      currDynScope  
      self          

  public static org.jruby.RubyBoolean isBlockGiven(org.jruby.runtime.ThreadContext, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;)Lorg/jruby/RubyBoolean;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object blk
         0: .line 1021
            aload 1 /* blk */
            instanceof org.jruby.RubyProc
            ifeq 1
            aload 1 /* blk */
            checkcast org.jruby.RubyProc
            invokevirtual org.jruby.RubyProc.getBlock:()Lorg/jruby/runtime/Block;
            astore 1 /* blk */
         1: .line 1022
      StackMap locals:
      StackMap stack:
            aload 1 /* blk */
            instanceof org.jruby.RubyNil
            ifeq 2
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            astore 1 /* blk */
         2: .line 1023
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* blk */
            checkcast org.jruby.runtime.Block
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // java.lang.Object blk
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1      blk  Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      context  
      blk      

  public static org.jruby.runtime.builtin.IRubyObject receiveRestArg(org.jruby.runtime.ThreadContext, java.lang.Object[], int, int, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IIZ)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object[] args
        start local 2 // int required
        start local 3 // int argIndex
        start local 4 // boolean acceptsKeywordArguments
         0: .line 1027
            aload 0 /* context */
            aload 1 /* args */
            iload 2 /* required */
            iload 4 /* acceptsKeywordArguments */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.extractKwargsHash:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
            astore 5 /* keywordArguments */
        start local 5 // org.jruby.RubyHash keywordArguments
         1: .line 1028
            aload 0 /* context */
            aload 1 /* args */
            aload 5 /* keywordArguments */
            iload 2 /* required */
            iload 3 /* argIndex */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.constructRestArg:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;Lorg/jruby/RubyHash;II)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // org.jruby.RubyHash keywordArguments
        end local 4 // boolean acceptsKeywordArguments
        end local 3 // int argIndex
        end local 2 // int required
        end local 1 // java.lang.Object[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    2     0                  context  Lorg/jruby/runtime/ThreadContext;
            0    2     1                     args  [Ljava/lang/Object;
            0    2     2                 required  I
            0    2     3                 argIndex  I
            0    2     4  acceptsKeywordArguments  Z
            1    2     5         keywordArguments  Lorg/jruby/RubyHash;
    MethodParameters:
                         Name  Flags
      context                  
      args                     
      required                 
      argIndex                 
      acceptsKeywordArguments  

  public static org.jruby.runtime.builtin.IRubyObject receiveRestArg(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int, int, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;IIZ)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // int required
        start local 3 // int argIndex
        start local 4 // boolean acceptsKeywordArguments
         0: .line 1032
            aload 0 /* context */
            aload 1 /* args */
            iload 2 /* required */
            iload 4 /* acceptsKeywordArguments */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.extractKwargsHash:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
            astore 5 /* keywordArguments */
        start local 5 // org.jruby.RubyHash keywordArguments
         1: .line 1033
            aload 0 /* context */
            aload 1 /* args */
            aload 5 /* keywordArguments */
            iload 2 /* required */
            iload 3 /* argIndex */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.constructRestArg:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyHash;II)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // org.jruby.RubyHash keywordArguments
        end local 4 // boolean acceptsKeywordArguments
        end local 3 // int argIndex
        end local 2 // int required
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    2     0                  context  Lorg/jruby/runtime/ThreadContext;
            0    2     1                     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2                 required  I
            0    2     3                 argIndex  I
            0    2     4  acceptsKeywordArguments  Z
            1    2     5         keywordArguments  Lorg/jruby/RubyHash;
    MethodParameters:
                         Name  Flags
      context                  
      args                     
      required                 
      argIndex                 
      acceptsKeywordArguments  

  public static org.jruby.runtime.builtin.IRubyObject constructRestArg(org.jruby.runtime.ThreadContext, java.lang.Object[], org.jruby.RubyHash, int, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;Lorg/jruby/RubyHash;II)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object[] args
        start local 2 // org.jruby.RubyHash keywordArguments
        start local 3 // int required
        start local 4 // int argIndex
         0: .line 1037
            aload 2 /* keywordArguments */
            ifnull 1
            aload 1 /* args */
            arraylength
            iconst_1
            isub
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* args */
            arraylength
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* argsLength */
        start local 5 // int argsLength
         3: .line 1038
            iload 5 /* argsLength */
            iload 3 /* required */
            isub
            istore 6 /* remainingArguments */
        start local 6 // int remainingArguments
         4: .line 1040
            iload 6 /* remainingArguments */
            ifgt 5
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.newEmptyArray:()Lorg/jruby/RubyArray;
            areturn
         5: .line 1042
      StackMap locals: int int
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* args */
            checkcast org.jruby.runtime.builtin.IRubyObject[]
            iload 4 /* argIndex */
            iload 6 /* remainingArguments */
            invokestatic org.jruby.RubyArray.newArrayMayCopy:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;II)Lorg/jruby/RubyArray;
            areturn
        end local 6 // int remainingArguments
        end local 5 // int argsLength
        end local 4 // int argIndex
        end local 3 // int required
        end local 2 // org.jruby.RubyHash keywordArguments
        end local 1 // java.lang.Object[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0             context  Lorg/jruby/runtime/ThreadContext;
            0    6     1                args  [Ljava/lang/Object;
            0    6     2    keywordArguments  Lorg/jruby/RubyHash;
            0    6     3            required  I
            0    6     4            argIndex  I
            3    6     5          argsLength  I
            4    6     6  remainingArguments  I
    MethodParameters:
                  Name  Flags
      context           
      args              
      keywordArguments  
      required          
      argIndex          

  private static org.jruby.runtime.builtin.IRubyObject constructRestArg(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.RubyHash, int, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyHash;II)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // org.jruby.RubyHash keywordArguments
        start local 3 // int required
        start local 4 // int argIndex
         0: .line 1046
            aload 2 /* keywordArguments */
            ifnull 1
            aload 1 /* args */
            arraylength
            iconst_1
            isub
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* args */
            arraylength
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* argsLength */
        start local 5 // int argsLength
         3: .line 1047
            iload 3 /* required */
            ifne 5
            iload 5 /* argsLength */
            aload 1 /* args */
            arraylength
            if_icmpne 5
         4: .line 1048
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* args */
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
         5: .line 1050
      StackMap locals: int
      StackMap stack:
            iload 5 /* argsLength */
            iload 3 /* required */
            isub
            istore 6 /* remainingArguments */
        start local 6 // int remainingArguments
         6: .line 1052
            iload 6 /* remainingArguments */
            ifgt 7
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.newEmptyArray:()Lorg/jruby/RubyArray;
            areturn
         7: .line 1054
      StackMap locals: int
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* args */
            iload 4 /* argIndex */
            iload 6 /* remainingArguments */
            invokestatic org.jruby.RubyArray.newArrayMayCopy:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;II)Lorg/jruby/RubyArray;
            areturn
        end local 6 // int remainingArguments
        end local 5 // int argsLength
        end local 4 // int argIndex
        end local 3 // int required
        end local 2 // org.jruby.RubyHash keywordArguments
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    8     0             context  Lorg/jruby/runtime/ThreadContext;
            0    8     1                args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2    keywordArguments  Lorg/jruby/RubyHash;
            0    8     3            required  I
            0    8     4            argIndex  I
            3    8     5          argsLength  I
            6    8     6  remainingArguments  I
    MethodParameters:
                  Name  Flags
      context           
      args              
      keywordArguments  
      required          
      argIndex          

  public static org.jruby.runtime.builtin.IRubyObject receivePostReqdArg(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int, int, boolean, int, int, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;IIZIIZ)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=12, args_size=8
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // int pre
        start local 3 // int opt
        start local 4 // boolean rest
        start local 5 // int post
        start local 6 // int argIndex
        start local 7 // boolean acceptsKeywordArgument
         0: .line 1061
            iload 2 /* pre */
            iload 5 /* post */
            iadd
            istore 8 /* required */
        start local 8 // int required
         1: .line 1063
            aload 0 /* context */
            aload 1 /* args */
            iload 8 /* required */
            iload 7 /* acceptsKeywordArgument */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.extractKwargsHash:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 9 /* kwargs */
        start local 9 // boolean kwargs
         4: .line 1064
            iload 9 /* kwargs */
            ifeq 5
            aload 1 /* args */
            arraylength
            iconst_1
            isub
            goto 6
      StackMap locals: int
      StackMap stack:
         5: aload 1 /* args */
            arraylength
      StackMap locals:
      StackMap stack: int
         6: istore 10 /* n */
        start local 10 // int n
         7: .line 1065
            iload 10 /* n */
            iload 2 /* pre */
            isub
            istore 11 /* remaining */
        start local 11 // int remaining
         8: .line 1067
            iload 11 /* remaining */
            iload 5 /* post */
            if_icmpge 12
         9: .line 1068
            iload 2 /* pre */
            iload 6 /* argIndex */
            iadd
            iload 10 /* n */
            if_icmplt 11
        10: .line 1069
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        11: .line 1071
      StackMap locals: int int
      StackMap stack:
            aload 1 /* args */
            iload 2 /* pre */
            iload 6 /* argIndex */
            iadd
            aaload
            areturn
        12: .line 1077
      StackMap locals:
      StackMap stack:
            iload 4 /* rest */
            ifeq 14
        13: .line 1078
            aload 1 /* args */
            iload 10 /* n */
            iload 5 /* post */
            isub
            iload 6 /* argIndex */
            iadd
            aaload
            areturn
        14: .line 1079
      StackMap locals:
      StackMap stack:
            iload 10 /* n */
            iload 8 /* required */
            iload 3 /* opt */
            iadd
            if_icmple 16
        15: .line 1080
            aload 1 /* args */
            iload 2 /* pre */
            iload 3 /* opt */
            iadd
            iload 6 /* argIndex */
            iadd
            aaload
            areturn
        16: .line 1082
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            iload 10 /* n */
            iload 5 /* post */
            isub
            iload 6 /* argIndex */
            iadd
            aaload
            areturn
        end local 11 // int remaining
        end local 10 // int n
        end local 9 // boolean kwargs
        end local 8 // int required
        end local 7 // boolean acceptsKeywordArgument
        end local 6 // int argIndex
        end local 5 // int post
        end local 4 // boolean rest
        end local 3 // int opt
        end local 2 // int pre
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   17     0                 context  Lorg/jruby/runtime/ThreadContext;
            0   17     1                    args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   17     2                     pre  I
            0   17     3                     opt  I
            0   17     4                    rest  Z
            0   17     5                    post  I
            0   17     6                argIndex  I
            0   17     7  acceptsKeywordArgument  Z
            1   17     8                required  I
            4   17     9                  kwargs  Z
            7   17    10                       n  I
            8   17    11               remaining  I
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                        Name  Flags
      context                 
      args                    
      pre                     
      opt                     
      rest                    
      post                    
      argIndex                
      acceptsKeywordArgument  

  public static org.jruby.runtime.builtin.IRubyObject receiveOptArg(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int, int, int, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;IIIZ)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=6
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // int requiredArgs
        start local 3 // int preArgs
        start local 4 // int argIndex
        start local 5 // boolean acceptsKeywordArgument
         0: .line 1088
            iload 4 /* argIndex */
            istore 6 /* optArgIndex */
        start local 6 // int optArgIndex
         1: .line 1089
            aload 0 /* context */
            aload 1 /* args */
            iload 2 /* requiredArgs */
            iload 5 /* acceptsKeywordArgument */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.extractKwargsHash:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
            astore 7 /* keywordArguments */
        start local 7 // org.jruby.RubyHash keywordArguments
         2: .line 1090
            aload 7 /* keywordArguments */
            ifnull 3
            aload 1 /* args */
            arraylength
            iconst_1
            isub
            goto 4
      StackMap locals: int org.jruby.RubyHash
      StackMap stack:
         3: aload 1 /* args */
            arraylength
      StackMap locals:
      StackMap stack: int
         4: istore 8 /* argsLength */
        start local 8 // int argsLength
         5: .line 1092
            iload 2 /* requiredArgs */
            iload 6 /* optArgIndex */
            iadd
            iload 8 /* argsLength */
            if_icmplt 6
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            areturn
         6: .line 1094
      StackMap locals: int
      StackMap stack:
            aload 1 /* args */
            iload 3 /* preArgs */
            iload 6 /* optArgIndex */
            iadd
            aaload
            areturn
        end local 8 // int argsLength
        end local 7 // org.jruby.RubyHash keywordArguments
        end local 6 // int optArgIndex
        end local 5 // boolean acceptsKeywordArgument
        end local 4 // int argIndex
        end local 3 // int preArgs
        end local 2 // int requiredArgs
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    7     0                 context  Lorg/jruby/runtime/ThreadContext;
            0    7     1                    args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     2            requiredArgs  I
            0    7     3                 preArgs  I
            0    7     4                argIndex  I
            0    7     5  acceptsKeywordArgument  Z
            1    7     6             optArgIndex  I
            2    7     7        keywordArguments  Lorg/jruby/RubyHash;
            5    7     8              argsLength  I
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                        Name  Flags
      context                 
      args                    
      requiredArgs            
      preArgs                 
      argIndex                
      acceptsKeywordArgument  

  public static org.jruby.runtime.builtin.IRubyObject receiveOptArg(org.jruby.runtime.builtin.IRubyObject[], int, int, int, boolean);
    descriptor: ([Lorg/jruby/runtime/builtin/IRubyObject;IIIZ)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=5
        start local 0 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 1 // int requiredArgs
        start local 2 // int preArgs
        start local 3 // int argIndex
        start local 4 // boolean acceptsKeywordArgument
         0: .line 1099
            iload 3 /* argIndex */
            istore 5 /* optArgIndex */
        start local 5 // int optArgIndex
         1: .line 1100
            aload 0 /* args */
            iload 1 /* requiredArgs */
            iload 4 /* acceptsKeywordArgument */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.extractKwargsHash:([Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
            astore 6 /* keywordArguments */
        start local 6 // org.jruby.RubyHash keywordArguments
         2: .line 1101
            aload 6 /* keywordArguments */
            ifnull 3
            aload 0 /* args */
            arraylength
            iconst_1
            isub
            goto 4
      StackMap locals: int org.jruby.RubyHash
      StackMap stack:
         3: aload 0 /* args */
            arraylength
      StackMap locals:
      StackMap stack: int
         4: istore 7 /* argsLength */
        start local 7 // int argsLength
         5: .line 1103
            iload 1 /* requiredArgs */
            iload 5 /* optArgIndex */
            iadd
            iload 7 /* argsLength */
            if_icmplt 6
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            areturn
         6: .line 1105
      StackMap locals: int
      StackMap stack:
            aload 0 /* args */
            iload 2 /* preArgs */
            iload 5 /* optArgIndex */
            iadd
            aaload
            areturn
        end local 7 // int argsLength
        end local 6 // org.jruby.RubyHash keywordArguments
        end local 5 // int optArgIndex
        end local 4 // boolean acceptsKeywordArgument
        end local 3 // int argIndex
        end local 2 // int preArgs
        end local 1 // int requiredArgs
        end local 0 // org.jruby.runtime.builtin.IRubyObject[] args
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    7     0                    args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     1            requiredArgs  I
            0    7     2                 preArgs  I
            0    7     3                argIndex  I
            0    7     4  acceptsKeywordArgument  Z
            1    7     5             optArgIndex  I
            2    7     6        keywordArguments  Lorg/jruby/RubyHash;
            5    7     7              argsLength  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                        Name  Flags
      args                    
      requiredArgs            
      preArgs                 
      argIndex                
      acceptsKeywordArgument  

  public static org.jruby.runtime.builtin.IRubyObject getPreArgSafe(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // int argIndex
         0: .line 1110
            iload 2 /* argIndex */
            aload 1 /* args */
            arraylength
            if_icmpge 1
            aload 1 /* args */
            iload 2 /* argIndex */
            aaload
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: astore 3 /* result */
        start local 3 // org.jruby.runtime.builtin.IRubyObject result
         3: .line 1111
            aload 3 /* result */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject result
        end local 2 // int argIndex
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0   context  Lorg/jruby/runtime/ThreadContext;
            0    4     1      args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2  argIndex  I
            3    4     3    result  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
          Name  Flags
      context   
      args      
      argIndex  

  public static org.jruby.runtime.builtin.IRubyObject receiveKeywordArg(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int, java.lang.String, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;ILjava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // int required
        start local 3 // java.lang.String id
        start local 4 // boolean acceptsKeywordArgument
         0: .line 1115
            aload 0 /* context */
            aload 1 /* args */
            iload 2 /* required */
            iload 4 /* acceptsKeywordArgument */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.extractKwargsHash:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
            astore 5 /* keywordArguments */
        start local 5 // org.jruby.RubyHash keywordArguments
         1: .line 1117
            aload 5 /* keywordArguments */
            ifnonnull 2
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            areturn
         2: .line 1119
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 3 /* id */
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            astore 6 /* keywordName */
        start local 6 // org.jruby.RubySymbol keywordName
         3: .line 1121
            aload 5 /* keywordArguments */
            aload 6 /* keywordName */
            invokevirtual org.jruby.RubyHash.fastARef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnonnull 4
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            areturn
         4: .line 1125
      StackMap locals: org.jruby.RubySymbol
      StackMap stack:
            aload 5 /* keywordArguments */
            aload 0 /* context */
            aload 6 /* keywordName */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyHash.delete:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 6 // org.jruby.RubySymbol keywordName
        end local 5 // org.jruby.RubyHash keywordArguments
        end local 4 // boolean acceptsKeywordArgument
        end local 3 // java.lang.String id
        end local 2 // int required
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    5     0                 context  Lorg/jruby/runtime/ThreadContext;
            0    5     1                    args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2                required  I
            0    5     3                      id  Ljava/lang/String;
            0    5     4  acceptsKeywordArgument  Z
            1    5     5        keywordArguments  Lorg/jruby/RubyHash;
            3    5     6             keywordName  Lorg/jruby/RubySymbol;
    MethodParameters:
                        Name  Flags
      context                 
      args                    
      required                
      id                      
      acceptsKeywordArgument  

  public static org.jruby.runtime.builtin.IRubyObject receiveKeywordArg(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int, org.jruby.RubySymbol, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;ILorg/jruby/RubySymbol;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // int required
        start local 3 // org.jruby.RubySymbol key
        start local 4 // boolean acceptsKeywordArgument
         0: .line 1129
            aload 0 /* context */
            aload 1 /* args */
            iload 2 /* required */
            iload 4 /* acceptsKeywordArgument */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.extractKwargsHash:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
            astore 5 /* keywordArguments */
        start local 5 // org.jruby.RubyHash keywordArguments
         1: .line 1131
            aload 5 /* keywordArguments */
            ifnonnull 2
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            areturn
         2: .line 1133
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
            aload 5 /* keywordArguments */
            aload 3 /* key */
            invokevirtual org.jruby.RubyHash.fastARef:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            ifnonnull 3
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            areturn
         3: .line 1137
      StackMap locals:
      StackMap stack:
            aload 5 /* keywordArguments */
            aload 0 /* context */
            aload 3 /* key */
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.RubyHash.delete:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // org.jruby.RubyHash keywordArguments
        end local 4 // boolean acceptsKeywordArgument
        end local 3 // org.jruby.RubySymbol key
        end local 2 // int required
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    4     0                 context  Lorg/jruby/runtime/ThreadContext;
            0    4     1                    args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2                required  I
            0    4     3                     key  Lorg/jruby/RubySymbol;
            0    4     4  acceptsKeywordArgument  Z
            1    4     5        keywordArguments  Lorg/jruby/RubyHash;
    MethodParameters:
                        Name  Flags
      context                 
      args                    
      required                
      key                     
      acceptsKeywordArgument  

  public static org.jruby.runtime.builtin.IRubyObject receiveKeywordRestArg(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;IZ)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 2 // int required
        start local 3 // boolean keywordArgumentSupplied
         0: .line 1141
            aload 0 /* context */
            aload 1 /* args */
            iload 2 /* required */
            iload 3 /* keywordArgumentSupplied */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.extractKwargsHash:(Lorg/jruby/runtime/ThreadContext;[Ljava/lang/Object;IZ)Lorg/jruby/RubyHash;
            astore 4 /* keywordArguments */
        start local 4 // org.jruby.RubyHash keywordArguments
         1: .line 1143
            aload 4 /* keywordArguments */
            ifnonnull 2
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyHash.newSmallHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            goto 3
      StackMap locals: org.jruby.RubyHash
      StackMap stack:
         2: aload 4 /* keywordArguments */
      StackMap locals:
      StackMap stack: org.jruby.RubyHash
         3: areturn
        end local 4 // org.jruby.RubyHash keywordArguments
        end local 3 // boolean keywordArgumentSupplied
        end local 2 // int required
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    4     0                  context  Lorg/jruby/runtime/ThreadContext;
            0    4     1                     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2                 required  I
            0    4     3  keywordArgumentSupplied  Z
            1    4     4         keywordArguments  Lorg/jruby/RubyHash;
    MethodParameters:
                         Name  Flags
      context                  
      args                     
      required                 
      keywordArgumentSupplied  

  public static org.jruby.runtime.builtin.IRubyObject setCapturedVar(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject matchRes
        start local 2 // java.lang.String id
         0: .line 1147
            aload 1 /* matchRes */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 1
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         1: .line 1149
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getBackRef:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* backref */
        start local 3 // org.jruby.runtime.builtin.IRubyObject backref
         2: .line 1151
            aload 3 /* backref */
            checkcast org.jruby.RubyMatchData
            aload 2 /* id */
            invokevirtual org.jruby.RubyMatchData.getNameToBackrefNumber:(Ljava/lang/String;)I
            aload 3 /* backref */
            invokestatic org.jruby.RubyRegexp.nth_match:(ILorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject backref
        end local 2 // java.lang.String id
        end local 1 // org.jruby.runtime.builtin.IRubyObject matchRes
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0   context  Lorg/jruby/runtime/ThreadContext;
            0    3     1  matchRes  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2        id  Ljava/lang/String;
            2    3     3   backref  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
          Name  Flags
      context   
      matchRes  
      id        

  public static org.jruby.runtime.builtin.IRubyObject instanceSuperSplatArgs(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, org.jruby.RubyModule, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block, boolean[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyModule;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;[Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=7
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // java.lang.String methodName
        start local 3 // org.jruby.RubyModule definingModule
        start local 4 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 5 // org.jruby.runtime.Block block
        start local 6 // boolean[] splatMap
         0: .line 1156
            aload 0 /* context */
            aload 1 /* self */
            aload 2 /* methodName */
            aload 3 /* definingModule */
            aload 4 /* args */
            aload 6 /* splatMap */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.splatArguments:([Lorg/jruby/runtime/builtin/IRubyObject;[Z)[Lorg/jruby/runtime/builtin/IRubyObject;
            aload 5 /* block */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.instanceSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyModule;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 6 // boolean[] splatMap
        end local 5 // org.jruby.runtime.Block block
        end local 4 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 3 // org.jruby.RubyModule definingModule
        end local 2 // java.lang.String methodName
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0         context  Lorg/jruby/runtime/ThreadContext;
            0    1     1            self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      methodName  Ljava/lang/String;
            0    1     3  definingModule  Lorg/jruby/RubyModule;
            0    1     4            args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     5           block  Lorg/jruby/runtime/Block;
            0    1     6        splatMap  [Z
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                Name  Flags
      context         
      self            
      methodName      
      definingModule  
      args            
      block           
      splatMap        

  public static org.jruby.runtime.builtin.IRubyObject instanceSuper(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, org.jruby.RubyModule, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyModule;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=9, args_size=6
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // java.lang.String id
        start local 3 // org.jruby.RubyModule definingModule
        start local 4 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 5 // org.jruby.runtime.Block block
         0: .line 1161
            aload 3 /* definingModule */
            invokevirtual org.jruby.RubyModule.getMethodLocation:()Lorg/jruby/RubyModule;
            invokevirtual org.jruby.RubyModule.getSuperClass:()Lorg/jruby/RubyClass;
            astore 6 /* superClass */
        start local 6 // org.jruby.RubyClass superClass
         1: .line 1162
            aload 6 /* superClass */
            ifnull 2
            aload 6 /* superClass */
            aload 2 /* id */
            invokevirtual org.jruby.RubyClass.searchWithCache:(Ljava/lang/String;)Lorg/jruby/runtime/callsite/CacheEntry;
            goto 3
      StackMap locals: org.jruby.RubyClass
      StackMap stack:
         2: getstatic org.jruby.runtime.callsite.CacheEntry.NULL_CACHE:Lorg/jruby/runtime/callsite/CacheEntry;
      StackMap locals:
      StackMap stack: org.jruby.runtime.callsite.CacheEntry
         3: astore 7 /* entry */
        start local 7 // org.jruby.runtime.callsite.CacheEntry entry
         4: .line 1163
            aload 7 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            astore 8 /* method */
        start local 8 // org.jruby.internal.runtime.methods.DynamicMethod method
         5: .line 1165
            aload 8 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isUndefined:()Z
            ifeq 7
         6: .line 1166
            aload 0 /* context */
            aload 1 /* self */
            aload 8 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getVisibility:()Lorg/jruby/runtime/Visibility;
            aload 2 /* id */
            getstatic org.jruby.runtime.CallType.SUPER:Lorg/jruby/runtime/CallType;
            aload 4 /* args */
            aload 5 /* block */
            invokestatic org.jruby.runtime.Helpers.callMethodMissing:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Visibility;Ljava/lang/String;Lorg/jruby/runtime/CallType;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         7: .line 1169
      StackMap locals: org.jruby.runtime.callsite.CacheEntry org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
            aload 8 /* method */
            aload 0 /* context */
            aload 1 /* self */
            aload 7 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.sourceModule:Lorg/jruby/RubyModule;
            aload 2 /* id */
            aload 4 /* args */
            aload 5 /* block */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 8 // org.jruby.internal.runtime.methods.DynamicMethod method
        end local 7 // org.jruby.runtime.callsite.CacheEntry entry
        end local 6 // org.jruby.RubyClass superClass
        end local 5 // org.jruby.runtime.Block block
        end local 4 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 3 // org.jruby.RubyModule definingModule
        end local 2 // java.lang.String id
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    8     0         context  Lorg/jruby/runtime/ThreadContext;
            0    8     1            self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2              id  Ljava/lang/String;
            0    8     3  definingModule  Lorg/jruby/RubyModule;
            0    8     4            args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     5           block  Lorg/jruby/runtime/Block;
            1    8     6      superClass  Lorg/jruby/RubyClass;
            4    8     7           entry  Lorg/jruby/runtime/callsite/CacheEntry;
            5    8     8          method  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      self            
      id              
      definingModule  
      args            
      block           

  public static org.jruby.runtime.builtin.IRubyObject classSuperSplatArgs(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, org.jruby.RubyModule, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block, boolean[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyModule;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;[Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=7
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // java.lang.String methodName
        start local 3 // org.jruby.RubyModule definingModule
        start local 4 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 5 // org.jruby.runtime.Block block
        start local 6 // boolean[] splatMap
         0: .line 1174
            aload 0 /* context */
            aload 1 /* self */
            aload 2 /* methodName */
            aload 3 /* definingModule */
            aload 4 /* args */
            aload 6 /* splatMap */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.splatArguments:([Lorg/jruby/runtime/builtin/IRubyObject;[Z)[Lorg/jruby/runtime/builtin/IRubyObject;
            aload 5 /* block */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.classSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyModule;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 6 // boolean[] splatMap
        end local 5 // org.jruby.runtime.Block block
        end local 4 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 3 // org.jruby.RubyModule definingModule
        end local 2 // java.lang.String methodName
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0         context  Lorg/jruby/runtime/ThreadContext;
            0    1     1            self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      methodName  Ljava/lang/String;
            0    1     3  definingModule  Lorg/jruby/RubyModule;
            0    1     4            args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     5           block  Lorg/jruby/runtime/Block;
            0    1     6        splatMap  [Z
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                Name  Flags
      context         
      self            
      methodName      
      definingModule  
      args            
      block           
      splatMap        

  public static org.jruby.runtime.builtin.IRubyObject classSuper(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, org.jruby.RubyModule, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/RubyModule;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=10, args_size=6
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // java.lang.String id
        start local 3 // org.jruby.RubyModule definingModule
        start local 4 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 5 // org.jruby.runtime.Block block
         0: .line 1179
            aload 3 /* definingModule */
            invokevirtual org.jruby.RubyModule.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getMethodLocation:()Lorg/jruby/RubyModule;
            invokevirtual org.jruby.RubyModule.getSuperClass:()Lorg/jruby/RubyClass;
            astore 6 /* superClass */
        start local 6 // org.jruby.RubyClass superClass
         1: .line 1180
            aload 6 /* superClass */
            ifnull 2
            aload 6 /* superClass */
            aload 2 /* id */
            invokevirtual org.jruby.RubyClass.searchWithCache:(Ljava/lang/String;)Lorg/jruby/runtime/callsite/CacheEntry;
            goto 3
      StackMap locals: org.jruby.RubyClass
      StackMap stack:
         2: getstatic org.jruby.runtime.callsite.CacheEntry.NULL_CACHE:Lorg/jruby/runtime/callsite/CacheEntry;
      StackMap locals:
      StackMap stack: org.jruby.runtime.callsite.CacheEntry
         3: astore 7 /* entry */
        start local 7 // org.jruby.runtime.callsite.CacheEntry entry
         4: .line 1181
            aload 7 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            astore 8 /* method */
        start local 8 // org.jruby.internal.runtime.methods.DynamicMethod method
         5: .line 1182
            aload 8 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isUndefined:()Z
            ifeq 7
         6: .line 1183
            aload 0 /* context */
            aload 1 /* self */
            aload 8 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getVisibility:()Lorg/jruby/runtime/Visibility;
            aload 2 /* id */
            getstatic org.jruby.runtime.CallType.SUPER:Lorg/jruby/runtime/CallType;
            aload 4 /* args */
            aload 5 /* block */
            invokestatic org.jruby.runtime.Helpers.callMethodMissing:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Visibility;Ljava/lang/String;Lorg/jruby/runtime/CallType;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 8
         7: .line 1184
      StackMap locals: org.jruby.runtime.callsite.CacheEntry org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
            aload 8 /* method */
            aload 0 /* context */
            aload 1 /* self */
            aload 7 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.sourceModule:Lorg/jruby/RubyModule;
            aload 2 /* id */
            aload 4 /* args */
            aload 5 /* block */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
         8: .line 1182
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            astore 9 /* rVal */
        start local 9 // org.jruby.runtime.builtin.IRubyObject rVal
         9: .line 1185
            aload 9 /* rVal */
            areturn
        end local 9 // org.jruby.runtime.builtin.IRubyObject rVal
        end local 8 // org.jruby.internal.runtime.methods.DynamicMethod method
        end local 7 // org.jruby.runtime.callsite.CacheEntry entry
        end local 6 // org.jruby.RubyClass superClass
        end local 5 // org.jruby.runtime.Block block
        end local 4 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 3 // org.jruby.RubyModule definingModule
        end local 2 // java.lang.String id
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0         context  Lorg/jruby/runtime/ThreadContext;
            0   10     1            self  Lorg/jruby/runtime/builtin/IRubyObject;
            0   10     2              id  Ljava/lang/String;
            0   10     3  definingModule  Lorg/jruby/RubyModule;
            0   10     4            args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   10     5           block  Lorg/jruby/runtime/Block;
            1   10     6      superClass  Lorg/jruby/RubyClass;
            4   10     7           entry  Lorg/jruby/runtime/callsite/CacheEntry;
            5   10     8          method  Lorg/jruby/internal/runtime/methods/DynamicMethod;
            9   10     9            rVal  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                Name  Flags
      context         
      self            
      id              
      definingModule  
      args            
      block           

  public static org.jruby.runtime.builtin.IRubyObject unresolvedSuperSplatArgs(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block, boolean[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;[Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
        start local 4 // boolean[] splatMap
         0: .line 1189
            aload 0 /* context */
            aload 1 /* self */
            aload 2 /* args */
            aload 4 /* splatMap */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.splatArguments:([Lorg/jruby/runtime/builtin/IRubyObject;[Z)[Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* block */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.unresolvedSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // boolean[] splatMap
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0   context  Lorg/jruby/runtime/ThreadContext;
            0    1     1      self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     block  Lorg/jruby/runtime/Block;
            0    1     4  splatMap  [Z
    MethodParameters:
          Name  Flags
      context   
      self      
      args      
      block     
      splatMap  

  public static org.jruby.runtime.builtin.IRubyObject unresolvedSuper(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=9, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
         0: .line 1194
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getFrameKlazz:()Lorg/jruby/RubyModule;
            astore 4 /* klazz */
        start local 4 // org.jruby.RubyModule klazz
         1: .line 1195
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getFrameName:()Ljava/lang/String;
            astore 5 /* methodName */
        start local 5 // java.lang.String methodName
         2: .line 1197
            aload 0 /* context */
            aload 4 /* klazz */
            aload 5 /* methodName */
            invokestatic org.jruby.runtime.Helpers.checkSuperDisabledOrOutOfMethod:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyModule;Ljava/lang/String;)V
         3: .line 1199
            aload 4 /* klazz */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.searchNormalSuperclass:(Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
            astore 6 /* superClass */
        start local 6 // org.jruby.RubyClass superClass
         4: .line 1200
            aload 6 /* superClass */
            ifnull 5
            aload 6 /* superClass */
            aload 5 /* methodName */
            invokevirtual org.jruby.RubyClass.searchWithCache:(Ljava/lang/String;)Lorg/jruby/runtime/callsite/CacheEntry;
            goto 6
      StackMap locals: org.jruby.RubyModule java.lang.String org.jruby.RubyClass
      StackMap stack:
         5: getstatic org.jruby.runtime.callsite.CacheEntry.NULL_CACHE:Lorg/jruby/runtime/callsite/CacheEntry;
      StackMap locals:
      StackMap stack: org.jruby.runtime.callsite.CacheEntry
         6: astore 7 /* entry */
        start local 7 // org.jruby.runtime.callsite.CacheEntry entry
         7: .line 1203
            aload 7 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isUndefined:()Z
            ifeq 10
         8: .line 1204
            aload 0 /* context */
            aload 1 /* self */
            aload 7 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getVisibility:()Lorg/jruby/runtime/Visibility;
            aload 5 /* methodName */
            getstatic org.jruby.runtime.CallType.SUPER:Lorg/jruby/runtime/CallType;
            aload 2 /* args */
            aload 3 /* block */
            invokestatic org.jruby.runtime.Helpers.callMethodMissing:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Visibility;Ljava/lang/String;Lorg/jruby/runtime/CallType;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 8 /* rVal */
        start local 8 // org.jruby.runtime.builtin.IRubyObject rVal
         9: .line 1205
            goto 11
        end local 8 // org.jruby.runtime.builtin.IRubyObject rVal
        10: .line 1206
      StackMap locals: org.jruby.runtime.callsite.CacheEntry
      StackMap stack:
            aload 7 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
            aload 0 /* context */
            aload 1 /* self */
            aload 7 /* entry */
            getfield org.jruby.runtime.callsite.CacheEntry.sourceModule:Lorg/jruby/RubyModule;
            aload 5 /* methodName */
            aload 2 /* args */
            aload 3 /* block */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 8 /* rVal */
        start local 8 // org.jruby.runtime.builtin.IRubyObject rVal
        11: .line 1209
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 8 /* rVal */
            areturn
        end local 8 // org.jruby.runtime.builtin.IRubyObject rVal
        end local 7 // org.jruby.runtime.callsite.CacheEntry entry
        end local 6 // org.jruby.RubyClass superClass
        end local 5 // java.lang.String methodName
        end local 4 // org.jruby.RubyModule klazz
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0     context  Lorg/jruby/runtime/ThreadContext;
            0   12     1        self  Lorg/jruby/runtime/builtin/IRubyObject;
            0   12     2        args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   12     3       block  Lorg/jruby/runtime/Block;
            1   12     4       klazz  Lorg/jruby/RubyModule;
            2   12     5  methodName  Ljava/lang/String;
            4   12     6  superClass  Lorg/jruby/RubyClass;
            7   12     7       entry  Lorg/jruby/runtime/callsite/CacheEntry;
            9   10     8        rVal  Lorg/jruby/runtime/builtin/IRubyObject;
           11   12     8        rVal  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      self     
      args     
      block    

  private static org.jruby.RubyClass searchNormalSuperclass(org.jruby.RubyModule);
    descriptor: (Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.RubyModule klazz
         0: .line 1215
            aload 0 /* klazz */
            invokevirtual org.jruby.RubyModule.isIncluded:()Z
            ifeq 3
         1: .line 1216
            aload 0 /* klazz */
            invokevirtual org.jruby.RubyModule.getNonIncludedClass:()Lorg/jruby/RubyModule;
            invokevirtual org.jruby.RubyModule.isRefinement:()Z
            ifeq 3
         2: .line 1217
            aload 0 /* klazz */
            invokevirtual org.jruby.RubyModule.getNonIncludedClass:()Lorg/jruby/RubyModule;
            astore 0 /* klazz */
         3: .line 1219
      StackMap locals:
      StackMap stack:
            aload 0 /* klazz */
            invokevirtual org.jruby.RubyModule.getMethodLocation:()Lorg/jruby/RubyModule;
            astore 0 /* klazz */
         4: .line 1220
            aload 0 /* klazz */
            invokevirtual org.jruby.RubyModule.getSuperClass:()Lorg/jruby/RubyClass;
            areturn
        end local 0 // org.jruby.RubyModule klazz
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  klazz  Lorg/jruby/RubyModule;
    MethodParameters:
       Name  Flags
      klazz  

  public static org.jruby.runtime.builtin.IRubyObject zSuperSplatArgs(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block, boolean[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;[Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
        start local 4 // boolean[] splatMap
         0: .line 1224
            aload 3 /* block */
            ifnull 1
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getFrameBlock:()Lorg/jruby/runtime/Block;
            astore 3 /* block */
         2: .line 1225
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* self */
            aload 2 /* args */
            aload 4 /* splatMap */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.splatArguments:([Lorg/jruby/runtime/builtin/IRubyObject;[Z)[Lorg/jruby/runtime/builtin/IRubyObject;
            aload 3 /* block */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.unresolvedSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // boolean[] splatMap
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0   context  Lorg/jruby/runtime/ThreadContext;
            0    3     1      self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2      args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3     block  Lorg/jruby/runtime/Block;
            0    3     4  splatMap  [Z
    MethodParameters:
          Name  Flags
      context   
      self      
      args      
      block     
      splatMap  

  public static org.jruby.runtime.builtin.IRubyObject zSuper(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // org.jruby.runtime.Block block
         0: .line 1229
            aload 3 /* block */
            ifnull 1
            aload 3 /* block */
            invokevirtual org.jruby.runtime.Block.isGiven:()Z
            ifne 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getFrameBlock:()Lorg/jruby/runtime/Block;
            astore 3 /* block */
         2: .line 1230
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* self */
            aload 2 /* args */
            aload 3 /* block */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.unresolvedSuper:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.Block block
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3    block  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  
      self     
      args     
      block    

  public static org.jruby.runtime.builtin.IRubyObject[] splatArguments(org.jruby.runtime.builtin.IRubyObject[], boolean[]);
    descriptor: ([Lorg/jruby/runtime/builtin/IRubyObject;[Z)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 1 // boolean[] splatMap
         0: .line 1234
            aload 1 /* splatMap */
            ifnull 25
            aload 1 /* splatMap */
            arraylength
            ifle 25
         1: .line 1235
            iconst_0
            istore 2 /* count */
        start local 2 // int count
         2: .line 1236
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 8
         4: .line 1238
      StackMap locals: int int
      StackMap stack:
            iload 2 /* count */
            aload 1 /* splatMap */
            iload 3 /* i */
            baload
            ifeq 5
            aload 0 /* args */
            iload 3 /* i */
            aaload
            instanceof org.jruby.RubyArray
            ifeq 5
            aload 0 /* args */
            iload 3 /* i */
            aaload
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.size:()I
            goto 6
      StackMap locals:
      StackMap stack: int
         5: iconst_1
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[] boolean[] int int
      StackMap stack: int int
         6: iadd
            istore 2 /* count */
         7: .line 1236
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            aload 1 /* splatMap */
            arraylength
            if_icmplt 4
        end local 3 // int i
         9: .line 1241
            iload 2 /* count */
            anewarray org.jruby.runtime.builtin.IRubyObject
            astore 3 /* newArgs */
        start local 3 // org.jruby.runtime.builtin.IRubyObject[] newArgs
        10: .line 1242
            iconst_0
            istore 4 /* actualOffset */
        start local 4 // int actualOffset
        11: .line 1243
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        12: goto 23
        13: .line 1244
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[] boolean[] int org.jruby.runtime.builtin.IRubyObject[] int int
      StackMap stack:
            aload 1 /* splatMap */
            iload 5 /* i */
            baload
            ifeq 21
            aload 0 /* args */
            iload 5 /* i */
            aaload
            instanceof org.jruby.RubyArray
            ifeq 21
        14: .line 1245
            aload 0 /* args */
            iload 5 /* i */
            aaload
            checkcast org.jruby.RubyArray
            astore 6 /* ary */
        start local 6 // org.jruby.RubyArray ary
        15: .line 1246
            iconst_0
            istore 7 /* j */
        start local 7 // int j
        16: goto 19
        17: .line 1247
      StackMap locals: org.jruby.RubyArray int
      StackMap stack:
            aload 3 /* newArgs */
            iload 4 /* actualOffset */
            iinc 4 /* actualOffset */ 1
            aload 6 /* ary */
            iload 7 /* j */
            i2l
            invokevirtual org.jruby.RubyArray.eltOk:(J)Lorg/jruby/runtime/builtin/IRubyObject;
            aastore
        18: .line 1246
            iinc 7 /* j */ 1
      StackMap locals:
      StackMap stack:
        19: iload 7 /* j */
            aload 6 /* ary */
            invokevirtual org.jruby.RubyArray.size:()I
            if_icmplt 17
        end local 7 // int j
        end local 6 // org.jruby.RubyArray ary
        20: .line 1249
            goto 22
        21: .line 1250
      StackMap locals:
      StackMap stack:
            aload 3 /* newArgs */
            iload 4 /* actualOffset */
            iinc 4 /* actualOffset */ 1
            aload 0 /* args */
            iload 5 /* i */
            aaload
            aastore
        22: .line 1243
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 5 /* i */
            aload 1 /* splatMap */
            arraylength
            if_icmplt 13
        end local 5 // int i
        24: .line 1254
            aload 3 /* newArgs */
            astore 0 /* args */
        end local 4 // int actualOffset
        end local 3 // org.jruby.runtime.builtin.IRubyObject[] newArgs
        end local 2 // int count
        25: .line 1256
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[] boolean[]
      StackMap stack:
            aload 0 /* args */
            areturn
        end local 1 // boolean[] splatMap
        end local 0 // org.jruby.runtime.builtin.IRubyObject[] args
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   26     0          args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0   26     1      splatMap  [Z
            2   25     2         count  I
            3    9     3             i  I
           10   25     3       newArgs  [Lorg/jruby/runtime/builtin/IRubyObject;
           11   25     4  actualOffset  I
           12   24     5             i  I
           15   20     6           ary  Lorg/jruby/RubyArray;
           16   20     7             j  I
    MethodParameters:
          Name  Flags
      args      
      splatMap  

  public static java.lang.String encodeSplatmap(boolean[]);
    descriptor: ([Z)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // boolean[] splatmap
         0: .line 1260
            aload 0 /* splatmap */
            ifnonnull 1
            ldc ""
            areturn
         1: .line 1261
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* builder */
        start local 1 // java.lang.StringBuilder builder
         2: .line 1262
            aload 0 /* splatmap */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 8
      StackMap locals: boolean[] java.lang.StringBuilder top int int boolean[]
      StackMap stack:
         3: aload 5
            iload 3
            baload
            istore 2 /* b */
        start local 2 // boolean b
         4: .line 1263
            aload 1 /* builder */
            iload 2 /* b */
            ifeq 5
            bipush 49
            goto 6
      StackMap locals: boolean[] java.lang.StringBuilder int int int boolean[]
      StackMap stack: java.lang.StringBuilder
         5: bipush 48
      StackMap locals: boolean[] java.lang.StringBuilder int int int boolean[]
      StackMap stack: java.lang.StringBuilder int
         6: invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 2 // boolean b
         7: .line 1262
            iinc 3 1
      StackMap locals: boolean[] java.lang.StringBuilder top int int boolean[]
      StackMap stack:
         8: iload 3
            iload 4
            if_icmplt 3
         9: .line 1265
            aload 1 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder builder
        end local 0 // boolean[] splatmap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0  splatmap  [Z
            2   10     1   builder  Ljava/lang/StringBuilder;
            4    7     2         b  Z
    MethodParameters:
          Name  Flags
      splatmap  

  public static boolean[] decodeSplatmap(java.lang.String);
    descriptor: (Ljava/lang/String;)[Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.String splatmapString
         0: .line 1270
            aload 0 /* splatmapString */
            invokevirtual java.lang.String.length:()I
            ifle 9
         1: .line 1271
            aload 0 /* splatmapString */
            invokevirtual java.lang.String.length:()I
            newarray 4
            astore 1 /* splatMap */
        start local 1 // boolean[] splatMap
         2: .line 1273
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 7
         4: .line 1274
      StackMap locals: boolean[] int
      StackMap stack:
            aload 0 /* splatmapString */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 49
            if_icmpne 6
         5: .line 1275
            aload 1 /* splatMap */
            iload 2 /* i */
            iconst_1
            bastore
         6: .line 1273
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            aload 0 /* splatmapString */
            invokevirtual java.lang.String.length:()I
            if_icmplt 4
        end local 2 // int i
         8: .line 1278
            goto 10
        end local 1 // boolean[] splatMap
         9: .line 1279
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 1 /* splatMap */
        start local 1 // boolean[] splatMap
        10: .line 1281
      StackMap locals: boolean[]
      StackMap stack:
            aload 1 /* splatMap */
            areturn
        end local 1 // boolean[] splatMap
        end local 0 // java.lang.String splatmapString
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0  splatmapString  Ljava/lang/String;
            2    9     1        splatMap  [Z
           10   11     1        splatMap  [Z
            3    8     2               i  I
    MethodParameters:
                Name  Flags
      splatmapString  

  public static boolean[] buildSplatMap(org.jruby.ir.operands.Operand[]);
    descriptor: ([Lorg/jruby/ir/operands/Operand;)[Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // org.jruby.ir.operands.Operand[] args
         0: .line 1285
            aconst_null
            astore 1 /* splatMap */
        start local 1 // boolean[] splatMap
         1: .line 1287
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 8
         3: .line 1288
      StackMap locals: boolean[] int
      StackMap stack:
            aload 0 /* args */
            iload 2 /* i */
            aaload
            astore 3 /* operand */
        start local 3 // org.jruby.ir.operands.Operand operand
         4: .line 1289
            aload 3 /* operand */
            instanceof org.jruby.ir.operands.Splat
            ifeq 7
         5: .line 1290
            aload 1 /* splatMap */
            ifnonnull 6
            aload 0 /* args */
            arraylength
            newarray 4
            astore 1 /* splatMap */
         6: .line 1291
      StackMap locals: org.jruby.ir.operands.Operand
      StackMap stack:
            aload 1 /* splatMap */
            iload 2 /* i */
            iconst_1
            bastore
        end local 3 // org.jruby.ir.operands.Operand operand
         7: .line 1287
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            aload 0 /* args */
            arraylength
            if_icmplt 3
        end local 2 // int i
         9: .line 1295
            aload 1 /* splatMap */
            areturn
        end local 1 // boolean[] splatMap
        end local 0 // org.jruby.ir.operands.Operand[] args
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      args  [Lorg/jruby/ir/operands/Operand;
            1   10     1  splatMap  [Z
            2    9     2         i  I
            4    7     3   operand  Lorg/jruby/ir/operands/Operand;
    MethodParameters:
      Name  Flags
      args  

  public static boolean anyTrue(boolean[]);
    descriptor: ([Z)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // boolean[] booleans
         0: .line 1299
            aload 0 /* booleans */
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 4
      StackMap locals: boolean[] top int int boolean[]
      StackMap stack:
         1: aload 4
            iload 2
            baload
            istore 1 /* b */
        start local 1 // boolean b
         2: iload 1 /* b */
            ifeq 3
            iconst_1
            ireturn
        end local 1 // boolean b
      StackMap locals:
      StackMap stack:
         3: iinc 2 1
      StackMap locals:
      StackMap stack:
         4: iload 2
            iload 3
            if_icmplt 1
         5: .line 1300
            iconst_0
            ireturn
        end local 0 // boolean[] booleans
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0  booleans  [Z
            2    3     1         b  Z
    MethodParameters:
          Name  Flags
      booleans  

  public static boolean needsSplatting(boolean[]);
    descriptor: ([Z)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // boolean[] splatmap
         0: .line 1304
            aload 0 /* splatmap */
            ifnull 1
            aload 0 /* splatmap */
            arraylength
            ifle 1
            aload 0 /* splatmap */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.anyTrue:([Z)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // boolean[] splatmap
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0  splatmap  [Z
    MethodParameters:
          Name  Flags
      splatmap  

  public static final Type[] typesFromSignature(com.headius.invokebinder.Signature);
    descriptor: (Lcom/headius/invokebinder/Signature;)[LType;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=3, locals=1, args_size=1
         0: .line 1307
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tType cannot be resolved to a type\n\tType cannot be resolved to a type\n\tType cannot be resolved to a type\n\tType cannot be resolved\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
           Name  Flags
      signature  

  public static org.jruby.RubyString newFrozenStringFromRaw(org.jruby.runtime.ThreadContext, java.lang.String, java.lang.String, int, java.lang.String, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;I)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.String str
        start local 2 // java.lang.String encoding
        start local 3 // int cr
        start local 4 // java.lang.String file
        start local 5 // int line
         0: .line 1317
            aload 0 /* context */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* str */
            aload 2 /* encoding */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.newByteListFromRaw:(Lorg/jruby/Ruby;Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/util/ByteList;
            iload 3 /* cr */
            aload 4 /* file */
            iload 5 /* line */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.newFrozenString:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/ByteList;ILjava/lang/String;I)Lorg/jruby/RubyString;
            areturn
        end local 5 // int line
        end local 4 // java.lang.String file
        end local 3 // int cr
        end local 2 // java.lang.String encoding
        end local 1 // java.lang.String str
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0   context  Lorg/jruby/runtime/ThreadContext;
            0    1     1       str  Ljava/lang/String;
            0    1     2  encoding  Ljava/lang/String;
            0    1     3        cr  I
            0    1     4      file  Ljava/lang/String;
            0    1     5      line  I
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
          Name  Flags
      context   
      str       
      encoding  
      cr        
      file      
      line      

  public static final org.jruby.util.ByteList newByteListFromRaw(org.jruby.Ruby, java.lang.String, java.lang.String);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/util/ByteList;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.String str
        start local 2 // java.lang.String encoding
         0: .line 1322
            new org.jruby.util.ByteList
            dup
            aload 1 /* str */
            invokestatic org.jruby.RubyEncoding.encodeISO:(Ljava/lang/CharSequence;)[B
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 2 /* encoding */
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncodingFromString:(Ljava/lang/String;)Lorg/jcodings/Encoding;
            iconst_0
            invokespecial org.jruby.util.ByteList.<init>:([BLorg/jcodings/Encoding;Z)V
            areturn
        end local 2 // java.lang.String encoding
        end local 1 // java.lang.String str
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0   runtime  Lorg/jruby/Ruby;
            0    1     1       str  Ljava/lang/String;
            0    1     2  encoding  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
          Name  Flags
      runtime   
      str       
      encoding  

  public static org.jruby.RubyEncoding retrieveEncoding(org.jruby.runtime.ThreadContext, java.lang.String);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/RubyEncoding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.String name
         0: .line 1327
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 0 /* context */
            aload 1 /* name */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.retrieveJCodingsEncoding:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jcodings/Encoding;
            invokevirtual org.jruby.runtime.encoding.EncodingService.getEncoding:(Lorg/jcodings/Encoding;)Lorg/jruby/RubyEncoding;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     name  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      name     

  public static org.jcodings.Encoding retrieveJCodingsEncoding(org.jruby.runtime.ThreadContext, java.lang.String);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jcodings/Encoding;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.String name
         0: .line 1332
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getEncodingService:()Lorg/jruby/runtime/encoding/EncodingService;
            aload 1 /* name */
            invokevirtual java.lang.String.getBytes:()[B
            invokevirtual org.jruby.runtime.encoding.EncodingService.findEncodingOrAliasEntry:([B)Lorg/jcodings/EncodingDB$Entry;
            invokevirtual org.jcodings.EncodingDB$Entry.getEncoding:()Lorg/jcodings/Encoding;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     name  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      name     

  public static org.jruby.RubyHash constructHashFromArray(org.jruby.Ruby, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] pairs
         0: .line 1337
            aload 1 /* pairs */
            arraylength
            iconst_2
            idiv
            istore 2 /* length */
        start local 2 // int length
         1: .line 1338
            iload 2 /* length */
            bipush 10
            if_icmpgt 2
            iconst_1
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* useSmallHash */
        start local 3 // boolean useSmallHash
         4: .line 1340
            iload 3 /* useSmallHash */
            ifeq 5
            aload 0 /* runtime */
            invokestatic org.jruby.RubyHash.newSmallHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            goto 6
      StackMap locals: int
      StackMap stack:
         5: aload 0 /* runtime */
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
      StackMap locals:
      StackMap stack: org.jruby.RubyHash
         6: astore 4 /* hash */
        start local 4 // org.jruby.RubyHash hash
         7: .line 1342
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 13
         9: .line 1343
      StackMap locals: org.jruby.RubyHash int
      StackMap stack:
            iload 3 /* useSmallHash */
            ifeq 12
        10: .line 1344
            aload 4 /* hash */
            aload 0 /* runtime */
            aload 1 /* pairs */
            iload 5 /* i */
            iinc 5 /* i */ 1
            aaload
            aload 1 /* pairs */
            iload 5 /* i */
            iinc 5 /* i */ 1
            aaload
            iconst_1
            invokevirtual org.jruby.RubyHash.fastASetSmall:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
        11: .line 1345
            goto 13
        12: .line 1346
      StackMap locals:
      StackMap stack:
            aload 4 /* hash */
            aload 0 /* runtime */
            aload 1 /* pairs */
            iload 5 /* i */
            iinc 5 /* i */ 1
            aaload
            aload 1 /* pairs */
            iload 5 /* i */
            iinc 5 /* i */ 1
            aaload
            iconst_1
            invokevirtual org.jruby.RubyHash.fastASet:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Z)V
        13: .line 1342
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            aload 1 /* pairs */
            arraylength
            if_icmplt 9
        end local 5 // int i
        14: .line 1350
            aload 4 /* hash */
            areturn
        end local 4 // org.jruby.RubyHash hash
        end local 3 // boolean useSmallHash
        end local 2 // int length
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] pairs
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0       runtime  Lorg/jruby/Ruby;
            0   15     1         pairs  [Lorg/jruby/runtime/builtin/IRubyObject;
            1   15     2        length  I
            4   15     3  useSmallHash  Z
            7   15     4          hash  Lorg/jruby/RubyHash;
            8   14     5             i  I
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      runtime  
      pairs    

  public static org.jruby.RubyHash dupKwargsHashAndPopulateFromArray(org.jruby.runtime.ThreadContext, org.jruby.RubyHash, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyHash;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyHash;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.RubyHash dupHash
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] pairs
         0: .line 1355
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 1356
            aload 1 /* dupHash */
            aload 0 /* context */
            invokevirtual org.jruby.RubyHash.dupFast:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyHash;
            astore 4 /* hash */
        start local 4 // org.jruby.RubyHash hash
         2: .line 1357
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         3: goto 5
         4: .line 1358
      StackMap locals: org.jruby.Ruby org.jruby.RubyHash int
      StackMap stack:
            aload 4 /* hash */
            aload 3 /* runtime */
            aload 2 /* pairs */
            iload 5 /* i */
            iinc 5 /* i */ 1
            aaload
            aload 2 /* pairs */
            iload 5 /* i */
            iinc 5 /* i */ 1
            aaload
            invokevirtual org.jruby.RubyHash.fastASetCheckString:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)V
         5: .line 1357
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            aload 2 /* pairs */
            arraylength
            if_icmplt 4
        end local 5 // int i
         6: .line 1360
            aload 4 /* hash */
            areturn
        end local 4 // org.jruby.RubyHash hash
        end local 3 // org.jruby.Ruby runtime
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] pairs
        end local 1 // org.jruby.RubyHash dupHash
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  context  Lorg/jruby/runtime/ThreadContext;
            0    7     1  dupHash  Lorg/jruby/RubyHash;
            0    7     2    pairs  [Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     3  runtime  Lorg/jruby/Ruby;
            2    7     4     hash  Lorg/jruby/RubyHash;
            3    6     5        i  I
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      dupHash  
      pairs    

  public static org.jruby.runtime.builtin.IRubyObject searchConst(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope, java.lang.String, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.parser.StaticScope staticScope
        start local 2 // java.lang.String constName
        start local 3 // boolean noPrivateConsts
         0: .line 1365
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            astore 4 /* object */
        start local 4 // org.jruby.RubyModule object
         1: .line 1366
            aload 1 /* staticScope */
            ifnonnull 2
            aload 4 /* object */
            aload 2 /* constName */
            invokevirtual org.jruby.RubyModule.getConstant:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals: org.jruby.RubyModule
      StackMap stack:
         2: aload 1 /* staticScope */
            aload 2 /* constName */
            invokevirtual org.jruby.parser.StaticScope.getConstantInner:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: astore 5 /* constant */
        start local 5 // org.jruby.runtime.builtin.IRubyObject constant
         4: .line 1369
            aconst_null
            astore 6 /* module */
        start local 6 // org.jruby.RubyModule module
         5: .line 1370
            aload 5 /* constant */
            ifnonnull 12
         6: .line 1372
            aload 1 /* staticScope */
            ifnonnull 7
            aload 4 /* object */
            goto 8
      StackMap locals: org.jruby.runtime.builtin.IRubyObject org.jruby.RubyModule
      StackMap stack:
         7: aload 1 /* staticScope */
            invokevirtual org.jruby.parser.StaticScope.getModule:()Lorg/jruby/RubyModule;
      StackMap locals:
      StackMap stack: org.jruby.RubyModule
         8: astore 6 /* module */
         9: .line 1373
            iload 3 /* noPrivateConsts */
            ifeq 10
            aload 6 /* module */
            aload 2 /* constName */
            iconst_0
            invokevirtual org.jruby.RubyModule.getConstantFromNoConstMissing:(Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 11
      StackMap locals:
      StackMap stack:
        10: aload 6 /* module */
            aload 2 /* constName */
            invokevirtual org.jruby.RubyModule.getConstantNoConstMissing:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
        11: astore 5 /* constant */
        12: .line 1377
      StackMap locals:
      StackMap stack:
            aload 5 /* constant */
            ifnonnull 14
        13: .line 1378
            aload 6 /* module */
            aload 0 /* context */
            ldc "const_missing"
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* constName */
            invokevirtual org.jruby.Ruby.fastNewSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            invokevirtual org.jruby.RubyModule.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        14: .line 1381
      StackMap locals:
      StackMap stack:
            aload 5 /* constant */
            areturn
        end local 6 // org.jruby.RubyModule module
        end local 5 // org.jruby.runtime.builtin.IRubyObject constant
        end local 4 // org.jruby.RubyModule object
        end local 3 // boolean noPrivateConsts
        end local 2 // java.lang.String constName
        end local 1 // org.jruby.parser.StaticScope staticScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   15     0          context  Lorg/jruby/runtime/ThreadContext;
            0   15     1      staticScope  Lorg/jruby/parser/StaticScope;
            0   15     2        constName  Ljava/lang/String;
            0   15     3  noPrivateConsts  Z
            1   15     4           object  Lorg/jruby/RubyModule;
            4   15     5         constant  Lorg/jruby/runtime/builtin/IRubyObject;
            5   15     6           module  Lorg/jruby/RubyModule;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                 Name  Flags
      context          
      staticScope      
      constName        
      noPrivateConsts  

  public static org.jruby.runtime.builtin.IRubyObject inheritedSearchConst(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, java.lang.String, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject cmVal
        start local 2 // java.lang.String constName
        start local 3 // boolean noPrivateConsts
         0: .line 1387
            aload 1 /* cmVal */
            instanceof org.jruby.RubyModule
            ifeq 3
         1: .line 1388
            aload 1 /* cmVal */
            checkcast org.jruby.RubyModule
            astore 4 /* module */
        start local 4 // org.jruby.RubyModule module
         2: .line 1389
            goto 4
        end local 4 // org.jruby.RubyModule module
         3: .line 1390
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 1 /* cmVal */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " is not a type/class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        start local 4 // org.jruby.RubyModule module
         4: .line 1393
      StackMap locals: org.jruby.RubyModule
      StackMap stack:
            iload 3 /* noPrivateConsts */
            ifeq 5
            aload 4 /* module */
            aload 2 /* constName */
            iconst_0
            invokevirtual org.jruby.RubyModule.getConstantFromNoConstMissing:(Ljava/lang/String;Z)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 6
      StackMap locals:
      StackMap stack:
         5: aload 4 /* module */
            aload 2 /* constName */
            invokevirtual org.jruby.RubyModule.getConstantNoConstMissing:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         6: astore 5 /* constant */
        start local 5 // org.jruby.runtime.builtin.IRubyObject constant
         7: .line 1395
            aload 5 /* constant */
            ifnonnull 9
         8: .line 1396
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            astore 5 /* constant */
         9: .line 1399
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 5 /* constant */
            areturn
        end local 5 // org.jruby.runtime.builtin.IRubyObject constant
        end local 4 // org.jruby.RubyModule module
        end local 3 // boolean noPrivateConsts
        end local 2 // java.lang.String constName
        end local 1 // org.jruby.runtime.builtin.IRubyObject cmVal
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0          context  Lorg/jruby/runtime/ThreadContext;
            0   10     1            cmVal  Lorg/jruby/runtime/builtin/IRubyObject;
            0   10     2        constName  Ljava/lang/String;
            0   10     3  noPrivateConsts  Z
            2    3     4           module  Lorg/jruby/RubyModule;
            4   10     4           module  Lorg/jruby/RubyModule;
            7   10     5         constant  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                 Name  Flags
      context          
      cmVal            
      constName        
      noPrivateConsts  

  public static org.jruby.runtime.builtin.IRubyObject lexicalSearchConst(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope, java.lang.String);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.parser.StaticScope staticScope
        start local 2 // java.lang.String constName
         0: .line 1404
            aload 1 /* staticScope */
            aload 2 /* constName */
            invokevirtual org.jruby.parser.StaticScope.getConstantInner:(Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* constant */
        start local 3 // org.jruby.runtime.builtin.IRubyObject constant
         1: .line 1406
            aload 3 /* constant */
            ifnonnull 3
         2: .line 1407
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            astore 3 /* constant */
         3: .line 1410
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 3 /* constant */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject constant
        end local 2 // java.lang.String constName
        end local 1 // org.jruby.parser.StaticScope staticScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0      context  Lorg/jruby/runtime/ThreadContext;
            0    4     1  staticScope  Lorg/jruby/parser/StaticScope;
            0    4     2    constName  Ljava/lang/String;
            1    4     3     constant  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
             Name  Flags
      context      
      staticScope  
      constName    

  public static org.jruby.runtime.builtin.IRubyObject setInstanceVariable(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, java.lang.String);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.builtin.IRubyObject self
        start local 1 // org.jruby.runtime.builtin.IRubyObject value
        start local 2 // java.lang.String name
         0: .line 1414
            aload 0 /* self */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getInstanceVariables:()Lorg/jruby/runtime/builtin/InstanceVariables;
            aload 2 /* name */
            aload 1 /* value */
            invokeinterface org.jruby.runtime.builtin.InstanceVariables.setInstanceVariable:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // java.lang.String name
        end local 1 // org.jruby.runtime.builtin.IRubyObject value
        end local 0 // org.jruby.runtime.builtin.IRubyObject self
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     1  value  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2   name  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      self   
      value  
      name   

  public static org.jruby.internal.runtime.methods.DynamicMethod newInterpretedMetaClass(org.jruby.Ruby, org.jruby.ir.IRScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.ir.IRScope metaClassBody
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 1422
            aload 0 /* runtime */
            aload 1 /* metaClassBody */
            aload 2 /* obj */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.newMetaClassFromIR:(Lorg/jruby/Ruby;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
            astore 3 /* singletonClass */
        start local 3 // org.jruby.RubyClass singletonClass
         1: .line 1424
            new org.jruby.internal.runtime.methods.InterpretedIRMetaClassBody
            dup
            aload 1 /* metaClassBody */
            aload 3 /* singletonClass */
            invokespecial org.jruby.internal.runtime.methods.InterpretedIRMetaClassBody.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/RubyModule;)V
            areturn
        end local 3 // org.jruby.RubyClass singletonClass
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.ir.IRScope metaClassBody
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0         runtime  Lorg/jruby/Ruby;
            0    2     1   metaClassBody  Lorg/jruby/ir/IRScope;
            0    2     2             obj  Lorg/jruby/runtime/builtin/IRubyObject;
            1    2     3  singletonClass  Lorg/jruby/RubyClass;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
               Name  Flags
      runtime        
      metaClassBody  
      obj            

  public static org.jruby.internal.runtime.methods.DynamicMethod newCompiledMetaClass(org.jruby.runtime.ThreadContext, java.lang.invoke.MethodHandle, org.jruby.ir.IRScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.invoke.MethodHandle handle
        start local 2 // org.jruby.ir.IRScope metaClassBody
        start local 3 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 1432
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* metaClassBody */
            aload 3 /* obj */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.newMetaClassFromIR:(Lorg/jruby/Ruby;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
            astore 4 /* singletonClass */
        start local 4 // org.jruby.RubyClass singletonClass
         1: .line 1434
            new org.jruby.internal.runtime.methods.CompiledIRNoProtocolMethod
            dup
            aload 1 /* handle */
            aload 2 /* metaClassBody */
            aload 4 /* singletonClass */
            invokespecial org.jruby.internal.runtime.methods.CompiledIRNoProtocolMethod.<init>:(Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Lorg/jruby/RubyModule;)V
            areturn
        end local 4 // org.jruby.RubyClass singletonClass
        end local 3 // org.jruby.runtime.builtin.IRubyObject obj
        end local 2 // org.jruby.ir.IRScope metaClassBody
        end local 1 // java.lang.invoke.MethodHandle handle
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0         context  Lorg/jruby/runtime/ThreadContext;
            0    2     1          handle  Ljava/lang/invoke/MethodHandle;
            0    2     2   metaClassBody  Lorg/jruby/ir/IRScope;
            0    2     3             obj  Lorg/jruby/runtime/builtin/IRubyObject;
            1    2     4  singletonClass  Lorg/jruby/RubyClass;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
               Name  Flags
      context        
      handle         
      metaClassBody  
      obj            

  private static org.jruby.RubyClass newMetaClassFromIR(org.jruby.Ruby, org.jruby.ir.IRScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.ir.IRScope metaClassBody
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 1438
            aload 0 /* runtime */
            aload 2 /* obj */
            invokestatic org.jruby.runtime.Helpers.getSingletonClass:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
            astore 3 /* singletonClass */
        start local 3 // org.jruby.RubyClass singletonClass
         1: .line 1440
            aload 1 /* metaClassBody */
            invokevirtual org.jruby.ir.IRScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            astore 4 /* metaClassScope */
        start local 4 // org.jruby.parser.StaticScope metaClassScope
         2: .line 1442
            aload 4 /* metaClassScope */
            aload 3 /* singletonClass */
            invokevirtual org.jruby.parser.StaticScope.setModule:(Lorg/jruby/RubyModule;)V
         3: .line 1444
            aload 1 /* metaClassBody */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.ir.IRScope.captureParentRefinements:(Lorg/jruby/runtime/ThreadContext;)V
         4: .line 1446
            aload 3 /* singletonClass */
            areturn
        end local 4 // org.jruby.parser.StaticScope metaClassScope
        end local 3 // org.jruby.RubyClass singletonClass
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.ir.IRScope metaClassBody
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0         runtime  Lorg/jruby/Ruby;
            0    5     1   metaClassBody  Lorg/jruby/ir/IRScope;
            0    5     2             obj  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     3  singletonClass  Lorg/jruby/RubyClass;
            2    5     4  metaClassScope  Lorg/jruby/parser/StaticScope;
    MethodParameters:
               Name  Flags
      runtime        
      metaClassBody  
      obj            

  public static org.jruby.internal.runtime.methods.DynamicMethod newInterpretedModuleBody(org.jruby.runtime.ThreadContext, org.jruby.ir.IRScope, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Ljava/lang/Object;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.ir.IRScope irModule
        start local 2 // java.lang.Object rubyContainer
         0: .line 1454
            aload 0 /* context */
            aload 1 /* irModule */
            aload 2 /* rubyContainer */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.newRubyModuleFromIR:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Ljava/lang/Object;)Lorg/jruby/RubyModule;
            astore 3 /* newRubyModule */
        start local 3 // org.jruby.RubyModule newRubyModule
         1: .line 1455
            new org.jruby.internal.runtime.methods.InterpretedIRBodyMethod
            dup
            aload 1 /* irModule */
            aload 3 /* newRubyModule */
            invokespecial org.jruby.internal.runtime.methods.InterpretedIRBodyMethod.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/RubyModule;)V
            areturn
        end local 3 // org.jruby.RubyModule newRubyModule
        end local 2 // java.lang.Object rubyContainer
        end local 1 // org.jruby.ir.IRScope irModule
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0        context  Lorg/jruby/runtime/ThreadContext;
            0    2     1       irModule  Lorg/jruby/ir/IRScope;
            0    2     2  rubyContainer  Ljava/lang/Object;
            1    2     3  newRubyModule  Lorg/jruby/RubyModule;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
               Name  Flags
      context        
      irModule       
      rubyContainer  

  public static org.jruby.internal.runtime.methods.DynamicMethod newCompiledModuleBody(org.jruby.runtime.ThreadContext, java.lang.invoke.MethodHandle, org.jruby.ir.IRScope, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Ljava/lang/Object;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.invoke.MethodHandle handle
        start local 2 // org.jruby.ir.IRScope irModule
        start local 3 // java.lang.Object rubyContainer
         0: .line 1460
            aload 0 /* context */
            aload 2 /* irModule */
            aload 3 /* rubyContainer */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.newRubyModuleFromIR:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Ljava/lang/Object;)Lorg/jruby/RubyModule;
            astore 4 /* newRubyModule */
        start local 4 // org.jruby.RubyModule newRubyModule
         1: .line 1461
            new org.jruby.internal.runtime.methods.CompiledIRMethod
            dup
            aload 1 /* handle */
            aload 2 /* irModule */
            getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
            aload 4 /* newRubyModule */
            invokespecial org.jruby.internal.runtime.methods.CompiledIRMethod.<init>:(Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            areturn
        end local 4 // org.jruby.RubyModule newRubyModule
        end local 3 // java.lang.Object rubyContainer
        end local 2 // org.jruby.ir.IRScope irModule
        end local 1 // java.lang.invoke.MethodHandle handle
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0        context  Lorg/jruby/runtime/ThreadContext;
            0    2     1         handle  Ljava/lang/invoke/MethodHandle;
            0    2     2       irModule  Lorg/jruby/ir/IRScope;
            0    2     3  rubyContainer  Ljava/lang/Object;
            1    2     4  newRubyModule  Lorg/jruby/RubyModule;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
               Name  Flags
      context        
      handle         
      irModule       
      rubyContainer  

  public static org.jruby.RubyModule newRubyModuleFromIR(org.jruby.runtime.ThreadContext, org.jruby.ir.IRScope, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Ljava/lang/Object;)Lorg/jruby/RubyModule;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.ir.IRScope irModule
        start local 2 // java.lang.Object rubyContainer
         0: .line 1466
            aload 2 /* rubyContainer */
            instanceof org.jruby.RubyModule
            ifne 2
         1: .line 1467
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "no outer class/module"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 1470
      StackMap locals:
      StackMap stack:
            aload 2 /* rubyContainer */
            checkcast org.jruby.RubyModule
            aload 1 /* irModule */
            invokevirtual org.jruby.ir.IRScope.getId:()Ljava/lang/String;
            invokevirtual org.jruby.RubyModule.defineOrGetModuleUnder:(Ljava/lang/String;)Lorg/jruby/RubyModule;
            astore 3 /* newRubyModule */
        start local 3 // org.jruby.RubyModule newRubyModule
         3: .line 1471
            aload 1 /* irModule */
            invokevirtual org.jruby.ir.IRScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            aload 3 /* newRubyModule */
            invokevirtual org.jruby.parser.StaticScope.setModule:(Lorg/jruby/RubyModule;)V
         4: .line 1473
            aload 1 /* irModule */
            aload 0 /* context */
            invokevirtual org.jruby.ir.IRScope.captureParentRefinements:(Lorg/jruby/runtime/ThreadContext;)V
         5: .line 1475
            aload 3 /* newRubyModule */
            areturn
        end local 3 // org.jruby.RubyModule newRubyModule
        end local 2 // java.lang.Object rubyContainer
        end local 1 // org.jruby.ir.IRScope irModule
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0        context  Lorg/jruby/runtime/ThreadContext;
            0    6     1       irModule  Lorg/jruby/ir/IRScope;
            0    6     2  rubyContainer  Ljava/lang/Object;
            3    6     3  newRubyModule  Lorg/jruby/RubyModule;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
               Name  Flags
      context        
      irModule       
      rubyContainer  

  public static org.jruby.internal.runtime.methods.DynamicMethod newInterpretedClassBody(org.jruby.runtime.ThreadContext, org.jruby.ir.IRScope, java.lang.Object, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Ljava/lang/Object;Ljava/lang/Object;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.ir.IRScope irClassBody
        start local 2 // java.lang.Object container
        start local 3 // java.lang.Object superClass
         0: .line 1480
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* irClassBody */
            aload 3 /* superClass */
            aload 2 /* container */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.newRubyClassFromIR:(Lorg/jruby/Ruby;Lorg/jruby/ir/IRScope;Ljava/lang/Object;Ljava/lang/Object;)Lorg/jruby/RubyModule;
            astore 4 /* newRubyClass */
        start local 4 // org.jruby.RubyModule newRubyClass
         1: .line 1482
            new org.jruby.internal.runtime.methods.InterpretedIRBodyMethod
            dup
            aload 1 /* irClassBody */
            aload 4 /* newRubyClass */
            invokespecial org.jruby.internal.runtime.methods.InterpretedIRBodyMethod.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/RubyModule;)V
            areturn
        end local 4 // org.jruby.RubyModule newRubyClass
        end local 3 // java.lang.Object superClass
        end local 2 // java.lang.Object container
        end local 1 // org.jruby.ir.IRScope irClassBody
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0       context  Lorg/jruby/runtime/ThreadContext;
            0    2     1   irClassBody  Lorg/jruby/ir/IRScope;
            0    2     2     container  Ljava/lang/Object;
            0    2     3    superClass  Ljava/lang/Object;
            1    2     4  newRubyClass  Lorg/jruby/RubyModule;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
             Name  Flags
      context      
      irClassBody  
      container    
      superClass   

  public static org.jruby.internal.runtime.methods.DynamicMethod newCompiledClassBody(org.jruby.runtime.ThreadContext, java.lang.invoke.MethodHandle, org.jruby.ir.IRScope, java.lang.Object, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Ljava/lang/Object;Ljava/lang/Object;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.invoke.MethodHandle handle
        start local 2 // org.jruby.ir.IRScope irClassBody
        start local 3 // java.lang.Object container
        start local 4 // java.lang.Object superClass
         0: .line 1487
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* irClassBody */
            aload 4 /* superClass */
            aload 3 /* container */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.newRubyClassFromIR:(Lorg/jruby/Ruby;Lorg/jruby/ir/IRScope;Ljava/lang/Object;Ljava/lang/Object;)Lorg/jruby/RubyModule;
            astore 5 /* newRubyClass */
        start local 5 // org.jruby.RubyModule newRubyClass
         1: .line 1489
            new org.jruby.internal.runtime.methods.CompiledIRMethod
            dup
            aload 1 /* handle */
            aload 2 /* irClassBody */
            getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
            aload 5 /* newRubyClass */
            invokespecial org.jruby.internal.runtime.methods.CompiledIRMethod.<init>:(Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            areturn
        end local 5 // org.jruby.RubyModule newRubyClass
        end local 4 // java.lang.Object superClass
        end local 3 // java.lang.Object container
        end local 2 // org.jruby.ir.IRScope irClassBody
        end local 1 // java.lang.invoke.MethodHandle handle
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0       context  Lorg/jruby/runtime/ThreadContext;
            0    2     1        handle  Ljava/lang/invoke/MethodHandle;
            0    2     2   irClassBody  Lorg/jruby/ir/IRScope;
            0    2     3     container  Ljava/lang/Object;
            0    2     4    superClass  Ljava/lang/Object;
            1    2     5  newRubyClass  Lorg/jruby/RubyModule;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
             Name  Flags
      context      
      handle       
      irClassBody  
      container    
      superClass   

  public static org.jruby.RubyModule newRubyClassFromIR(org.jruby.Ruby, org.jruby.ir.IRScope, java.lang.Object, java.lang.Object);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/ir/IRScope;Ljava/lang/Object;Ljava/lang/Object;)Lorg/jruby/RubyModule;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.ir.IRScope irClassBody
        start local 2 // java.lang.Object superClass
        start local 3 // java.lang.Object container
         0: .line 1494
            aload 3 /* container */
            instanceof org.jruby.RubyModule
            ifne 2
         1: .line 1495
            aload 0 /* runtime */
            ldc "no outer class/module"
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 1500
      StackMap locals:
      StackMap stack:
            aload 1 /* irClassBody */
            instanceof org.jruby.ir.IRMetaClassBody
            ifeq 5
         3: .line 1501
            aload 3 /* container */
            checkcast org.jruby.RubyModule
            invokevirtual org.jruby.RubyModule.getMetaClass:()Lorg/jruby/RubyClass;
            astore 4 /* newRubyClass */
        start local 4 // org.jruby.RubyModule newRubyClass
         4: .line 1502
            goto 11
        end local 4 // org.jruby.RubyModule newRubyClass
         5: .line 1504
      StackMap locals:
      StackMap stack:
            aload 2 /* superClass */
            getstatic org.jruby.ir.operands.UndefinedValue.UNDEFINED:Lorg/jruby/ir/operands/UndefinedValue;
            if_acmpne 8
         6: .line 1505
            aconst_null
            astore 5 /* sc */
        start local 5 // org.jruby.RubyClass sc
         7: .line 1506
            goto 10
        end local 5 // org.jruby.RubyClass sc
         8: .line 1507
      StackMap locals:
      StackMap stack:
            aload 2 /* superClass */
            checkcast org.jruby.runtime.builtin.IRubyObject
            invokestatic org.jruby.RubyClass.checkInheritable:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         9: .line 1509
            aload 2 /* superClass */
            checkcast org.jruby.RubyClass
            astore 5 /* sc */
        start local 5 // org.jruby.RubyClass sc
        10: .line 1512
      StackMap locals: org.jruby.Ruby org.jruby.ir.IRScope java.lang.Object java.lang.Object top org.jruby.RubyClass
      StackMap stack:
            aload 3 /* container */
            checkcast org.jruby.RubyModule
            aload 1 /* irClassBody */
            invokevirtual org.jruby.ir.IRScope.getId:()Ljava/lang/String;
            aload 5 /* sc */
            invokevirtual org.jruby.RubyModule.defineOrGetClassUnder:(Ljava/lang/String;Lorg/jruby/RubyClass;)Lorg/jruby/RubyClass;
            astore 4 /* newRubyClass */
        end local 5 // org.jruby.RubyClass sc
        start local 4 // org.jruby.RubyModule newRubyClass
        11: .line 1515
      StackMap locals: org.jruby.Ruby org.jruby.ir.IRScope java.lang.Object java.lang.Object org.jruby.RubyModule
      StackMap stack:
            aload 1 /* irClassBody */
            invokevirtual org.jruby.ir.IRScope.getStaticScope:()Lorg/jruby/parser/StaticScope;
            aload 4 /* newRubyClass */
            invokevirtual org.jruby.parser.StaticScope.setModule:(Lorg/jruby/RubyModule;)V
        12: .line 1517
            aload 1 /* irClassBody */
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
            invokevirtual org.jruby.ir.IRScope.captureParentRefinements:(Lorg/jruby/runtime/ThreadContext;)V
        13: .line 1519
            aload 4 /* newRubyClass */
            areturn
        end local 4 // org.jruby.RubyModule newRubyClass
        end local 3 // java.lang.Object container
        end local 2 // java.lang.Object superClass
        end local 1 // org.jruby.ir.IRScope irClassBody
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0       runtime  Lorg/jruby/Ruby;
            0   14     1   irClassBody  Lorg/jruby/ir/IRScope;
            0   14     2    superClass  Ljava/lang/Object;
            0   14     3     container  Ljava/lang/Object;
            4    5     4  newRubyClass  Lorg/jruby/RubyModule;
           11   14     4  newRubyClass  Lorg/jruby/RubyModule;
            7    8     5            sc  Lorg/jruby/RubyClass;
           10   11     5            sc  Lorg/jruby/RubyClass;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
             Name  Flags
      runtime      
      irClassBody  
      superClass   
      container    

  public static void defInterpretedClassMethod(org.jruby.runtime.ThreadContext, org.jruby.ir.IRScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.ir.IRScope method
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 1524
            aload 1 /* method */
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
            astore 3 /* methodName */
        start local 3 // org.jruby.RubySymbol methodName
         1: .line 1525
            aload 0 /* context */
            aload 1 /* method */
            aload 2 /* obj */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.checkClassForDef:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
            astore 4 /* rubyClass */
        start local 4 // org.jruby.RubyClass rubyClass
         2: .line 1527
            aload 1 /* method */
            aload 0 /* context */
            invokevirtual org.jruby.ir.IRScope.captureParentRefinements:(Lorg/jruby/runtime/ThreadContext;)V
         3: .line 1530
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
            invokevirtual org.jruby.RubyInstanceConfig.getCompileMode:()Lorg/jruby/RubyInstanceConfig$CompileMode;
            getstatic org.jruby.RubyInstanceConfig$CompileMode.OFF:Lorg/jruby/RubyInstanceConfig$CompileMode;
            if_acmpne 6
         4: .line 1531
            new org.jruby.internal.runtime.methods.InterpretedIRMethod
            dup
            aload 1 /* method */
            getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
            aload 4 /* rubyClass */
            invokespecial org.jruby.internal.runtime.methods.InterpretedIRMethod.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            astore 5 /* newMethod */
        start local 5 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
         5: .line 1532
            goto 7
        end local 5 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
         6: .line 1533
      StackMap locals: org.jruby.RubySymbol org.jruby.RubyClass
      StackMap stack:
            new org.jruby.internal.runtime.methods.MixedModeIRMethod
            dup
            aload 1 /* method */
            getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
            aload 4 /* rubyClass */
            invokespecial org.jruby.internal.runtime.methods.MixedModeIRMethod.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            astore 5 /* newMethod */
        start local 5 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
         7: .line 1536
      StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
            aload 4 /* rubyClass */
            aload 3 /* methodName */
            invokevirtual org.jruby.RubySymbol.idString:()Ljava/lang/String;
            aload 5 /* newMethod */
            invokevirtual org.jruby.RubyClass.addMethod:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
         8: .line 1537
            aload 4 /* rubyClass */
            invokevirtual org.jruby.RubyClass.isRefinement:()Z
            ifne 9
            aload 2 /* obj */
            aload 0 /* context */
            ldc "singleton_method_added"
            aload 3 /* methodName */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         9: .line 1538
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
        end local 4 // org.jruby.RubyClass rubyClass
        end local 3 // org.jruby.RubySymbol methodName
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.ir.IRScope method
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0     context  Lorg/jruby/runtime/ThreadContext;
            0   10     1      method  Lorg/jruby/ir/IRScope;
            0   10     2         obj  Lorg/jruby/runtime/builtin/IRubyObject;
            1   10     3  methodName  Lorg/jruby/RubySymbol;
            2   10     4   rubyClass  Lorg/jruby/RubyClass;
            5    6     5   newMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
            7   10     5   newMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    MethodParameters:
         Name  Flags
      context  
      method   
      obj      

  public static void defCompiledClassMethod(org.jruby.runtime.ThreadContext, java.lang.invoke.MethodHandle, org.jruby.ir.IRScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=6, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.invoke.MethodHandle handle
        start local 2 // org.jruby.ir.IRScope method
        start local 3 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 1542
            aload 2 /* method */
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
            astore 4 /* methodName */
        start local 4 // org.jruby.RubySymbol methodName
         1: .line 1543
            aload 0 /* context */
            aload 2 /* method */
            aload 3 /* obj */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.checkClassForDef:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
            astore 5 /* rubyClass */
        start local 5 // org.jruby.RubyClass rubyClass
         2: .line 1545
            aload 2 /* method */
            aload 0 /* context */
            invokevirtual org.jruby.ir.IRScope.captureParentRefinements:(Lorg/jruby/runtime/ThreadContext;)V
         3: .line 1548
            aload 5 /* rubyClass */
            aload 4 /* methodName */
            invokevirtual org.jruby.RubySymbol.idString:()Ljava/lang/String;
            new org.jruby.internal.runtime.methods.CompiledIRMethod
            dup
            aload 1 /* handle */
            aload 2 /* method */
            getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
            aload 5 /* rubyClass */
            invokespecial org.jruby.internal.runtime.methods.CompiledIRMethod.<init>:(Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            invokevirtual org.jruby.RubyClass.addMethod:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
         4: .line 1549
            aload 5 /* rubyClass */
            invokevirtual org.jruby.RubyClass.isRefinement:()Z
            ifne 6
         5: .line 1551
            aload 3 /* obj */
            aload 0 /* context */
            ldc "singleton_method_added"
            aload 4 /* methodName */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         6: .line 1553
      StackMap locals: org.jruby.RubySymbol org.jruby.RubyClass
      StackMap stack:
            return
        end local 5 // org.jruby.RubyClass rubyClass
        end local 4 // org.jruby.RubySymbol methodName
        end local 3 // org.jruby.runtime.builtin.IRubyObject obj
        end local 2 // org.jruby.ir.IRScope method
        end local 1 // java.lang.invoke.MethodHandle handle
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0     context  Lorg/jruby/runtime/ThreadContext;
            0    7     1      handle  Ljava/lang/invoke/MethodHandle;
            0    7     2      method  Lorg/jruby/ir/IRScope;
            0    7     3         obj  Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     4  methodName  Lorg/jruby/RubySymbol;
            2    7     5   rubyClass  Lorg/jruby/RubyClass;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      handle   
      method   
      obj      

  public static void defCompiledClassMethod(org.jruby.runtime.ThreadContext, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, int, org.jruby.ir.IRScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;ILorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=10, locals=7, args_size=6
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.invoke.MethodHandle variable
        start local 2 // java.lang.invoke.MethodHandle specific
        start local 3 // int specificArity
        start local 4 // org.jruby.ir.IRScope method
        start local 5 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 1557
            aload 0 /* context */
            aload 4 /* method */
            aload 5 /* obj */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.checkClassForDef:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
            astore 6 /* rubyClass */
        start local 6 // org.jruby.RubyClass rubyClass
         1: .line 1559
            aload 4 /* method */
            aload 0 /* context */
            invokevirtual org.jruby.ir.IRScope.captureParentRefinements:(Lorg/jruby/runtime/ThreadContext;)V
         2: .line 1561
            aload 6 /* rubyClass */
            aload 4 /* method */
            invokevirtual org.jruby.ir.IRScope.getId:()Ljava/lang/String;
            new org.jruby.internal.runtime.methods.CompiledIRMethod
            dup
            aload 1 /* variable */
            aload 2 /* specific */
            iload 3 /* specificArity */
            aload 4 /* method */
            getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
            aload 6 /* rubyClass */
            invokespecial org.jruby.internal.runtime.methods.CompiledIRMethod.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;ILorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            invokevirtual org.jruby.RubyClass.addMethod:(Ljava/lang/String;Lorg/jruby/internal/runtime/methods/DynamicMethod;)V
         3: .line 1563
            aload 6 /* rubyClass */
            invokevirtual org.jruby.RubyClass.isRefinement:()Z
            ifne 4
            aload 5 /* obj */
            aload 0 /* context */
            ldc "singleton_method_added"
            aload 4 /* method */
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
            invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         4: .line 1564
      StackMap locals: org.jruby.RubyClass
      StackMap stack:
            return
        end local 6 // org.jruby.RubyClass rubyClass
        end local 5 // org.jruby.runtime.builtin.IRubyObject obj
        end local 4 // org.jruby.ir.IRScope method
        end local 3 // int specificArity
        end local 2 // java.lang.invoke.MethodHandle specific
        end local 1 // java.lang.invoke.MethodHandle variable
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0        context  Lorg/jruby/runtime/ThreadContext;
            0    5     1       variable  Ljava/lang/invoke/MethodHandle;
            0    5     2       specific  Ljava/lang/invoke/MethodHandle;
            0    5     3  specificArity  I
            0    5     4         method  Lorg/jruby/ir/IRScope;
            0    5     5            obj  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     6      rubyClass  Lorg/jruby/RubyClass;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
               Name  Flags
      context        
      variable       
      specific       
      specificArity  
      method         
      obj            

  private static org.jruby.RubyClass checkClassForDef(org.jruby.runtime.ThreadContext, org.jruby.ir.IRScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.ir.IRScope method
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 1567
            aload 2 /* obj */
            instanceof org.jruby.RubyFixnum
            ifne 1
            aload 2 /* obj */
            instanceof org.jruby.RubySymbol
            ifne 1
            aload 2 /* obj */
            instanceof org.jruby.RubyFloat
            ifeq 2
         1: .line 1568
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "can't define singleton method \""
            aload 1 /* method */
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
            ldc "\" for "
            aload 2 /* obj */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.rubyBaseName:()Lorg/jruby/RubyString;
            invokestatic org.jruby.util.RubyStringBuilder.str:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 1573
      StackMap locals:
      StackMap stack:
            aload 2 /* obj */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getSingletonClass:()Lorg/jruby/RubyClass;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.ir.IRScope method
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1   method  Lorg/jruby/ir/IRScope;
            0    3     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      method   
      obj      

  public static void defInterpretedInstanceMethod(org.jruby.runtime.ThreadContext, org.jruby.ir.IRScope, org.jruby.runtime.DynamicScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.ir.IRScope method
        start local 2 // org.jruby.runtime.DynamicScope currDynScope
        start local 3 // org.jruby.runtime.builtin.IRubyObject self
         0: .line 1578
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 1579
            aload 1 /* method */
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
            astore 5 /* methodName */
        start local 5 // org.jruby.RubySymbol methodName
         2: .line 1580
            aload 0 /* context */
            aload 2 /* currDynScope */
            aload 3 /* self */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.findInstanceMethodContainer:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
            astore 6 /* rubyClass */
        start local 6 // org.jruby.RubyModule rubyClass
         3: .line 1582
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getCurrentVisibility:()Lorg/jruby/runtime/Visibility;
            astore 7 /* currVisibility */
        start local 7 // org.jruby.runtime.Visibility currVisibility
         4: .line 1583
            aload 4 /* runtime */
            aload 6 /* rubyClass */
            aload 5 /* methodName */
            aload 7 /* currVisibility */
            invokestatic org.jruby.runtime.Helpers.performNormalMethodChecksAndDetermineVisibility:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Lorg/jruby/RubySymbol;Lorg/jruby/runtime/Visibility;)Lorg/jruby/runtime/Visibility;
            astore 8 /* newVisibility */
        start local 8 // org.jruby.runtime.Visibility newVisibility
         5: .line 1585
            aload 1 /* method */
            aload 0 /* context */
            invokevirtual org.jruby.ir.IRScope.captureParentRefinements:(Lorg/jruby/runtime/ThreadContext;)V
         6: .line 1588
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
            invokevirtual org.jruby.RubyInstanceConfig.getCompileMode:()Lorg/jruby/RubyInstanceConfig$CompileMode;
            getstatic org.jruby.RubyInstanceConfig$CompileMode.OFF:Lorg/jruby/RubyInstanceConfig$CompileMode;
            if_acmpne 9
         7: .line 1589
            new org.jruby.internal.runtime.methods.InterpretedIRMethod
            dup
            aload 1 /* method */
            aload 8 /* newVisibility */
            aload 6 /* rubyClass */
            invokespecial org.jruby.internal.runtime.methods.InterpretedIRMethod.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            astore 9 /* newMethod */
        start local 9 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
         8: .line 1590
            goto 10
        end local 9 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
         9: .line 1591
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.ir.IRScope org.jruby.runtime.DynamicScope org.jruby.runtime.builtin.IRubyObject org.jruby.Ruby org.jruby.RubySymbol org.jruby.RubyModule org.jruby.runtime.Visibility org.jruby.runtime.Visibility
      StackMap stack:
            new org.jruby.internal.runtime.methods.MixedModeIRMethod
            dup
            aload 1 /* method */
            aload 8 /* newVisibility */
            aload 6 /* rubyClass */
            invokespecial org.jruby.internal.runtime.methods.MixedModeIRMethod.<init>:(Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            astore 9 /* newMethod */
        start local 9 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
        10: .line 1594
      StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
            aload 6 /* rubyClass */
            aload 5 /* methodName */
            aload 9 /* newMethod */
            aload 7 /* currVisibility */
            aload 0 /* context */
            aload 4 /* runtime */
            invokestatic org.jruby.runtime.Helpers.addInstanceMethod:(Lorg/jruby/RubyModule;Lorg/jruby/RubySymbol;Lorg/jruby/internal/runtime/methods/DynamicMethod;Lorg/jruby/runtime/Visibility;Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;)Lorg/jruby/RubySymbol;
            pop
        11: .line 1595
            return
        end local 9 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
        end local 8 // org.jruby.runtime.Visibility newVisibility
        end local 7 // org.jruby.runtime.Visibility currVisibility
        end local 6 // org.jruby.RubyModule rubyClass
        end local 5 // org.jruby.RubySymbol methodName
        end local 4 // org.jruby.Ruby runtime
        end local 3 // org.jruby.runtime.builtin.IRubyObject self
        end local 2 // org.jruby.runtime.DynamicScope currDynScope
        end local 1 // org.jruby.ir.IRScope method
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0         context  Lorg/jruby/runtime/ThreadContext;
            0   12     1          method  Lorg/jruby/ir/IRScope;
            0   12     2    currDynScope  Lorg/jruby/runtime/DynamicScope;
            0   12     3            self  Lorg/jruby/runtime/builtin/IRubyObject;
            1   12     4         runtime  Lorg/jruby/Ruby;
            2   12     5      methodName  Lorg/jruby/RubySymbol;
            3   12     6       rubyClass  Lorg/jruby/RubyModule;
            4   12     7  currVisibility  Lorg/jruby/runtime/Visibility;
            5   12     8   newVisibility  Lorg/jruby/runtime/Visibility;
            8    9     9       newMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
           10   12     9       newMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    MethodParameters:
              Name  Flags
      context       
      method        
      currDynScope  
      self          

  public static void defCompiledInstanceMethod(org.jruby.runtime.ThreadContext, java.lang.invoke.MethodHandle, org.jruby.ir.IRScope, org.jruby.runtime.DynamicScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=11, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.invoke.MethodHandle handle
        start local 2 // org.jruby.ir.IRScope method
        start local 3 // org.jruby.runtime.DynamicScope currDynScope
        start local 4 // org.jruby.runtime.builtin.IRubyObject self
         0: .line 1599
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 5 /* runtime */
        start local 5 // org.jruby.Ruby runtime
         1: .line 1600
            aload 2 /* method */
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
            astore 6 /* methodName */
        start local 6 // org.jruby.RubySymbol methodName
         2: .line 1601
            aload 0 /* context */
            aload 3 /* currDynScope */
            aload 4 /* self */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.findInstanceMethodContainer:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
            astore 7 /* clazz */
        start local 7 // org.jruby.RubyModule clazz
         3: .line 1603
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getCurrentVisibility:()Lorg/jruby/runtime/Visibility;
            astore 8 /* currVisibility */
        start local 8 // org.jruby.runtime.Visibility currVisibility
         4: .line 1604
            aload 5 /* runtime */
            aload 7 /* clazz */
            aload 6 /* methodName */
            aload 8 /* currVisibility */
            invokestatic org.jruby.runtime.Helpers.performNormalMethodChecksAndDetermineVisibility:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Lorg/jruby/RubySymbol;Lorg/jruby/runtime/Visibility;)Lorg/jruby/runtime/Visibility;
            astore 9 /* newVisibility */
        start local 9 // org.jruby.runtime.Visibility newVisibility
         5: .line 1606
            aload 2 /* method */
            aload 0 /* context */
            invokevirtual org.jruby.ir.IRScope.captureParentRefinements:(Lorg/jruby/runtime/ThreadContext;)V
         6: .line 1608
            new org.jruby.internal.runtime.methods.CompiledIRMethod
            dup
            aload 1 /* handle */
            aload 2 /* method */
            aload 9 /* newVisibility */
            aload 7 /* clazz */
            invokespecial org.jruby.internal.runtime.methods.CompiledIRMethod.<init>:(Ljava/lang/invoke/MethodHandle;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            astore 10 /* newMethod */
        start local 10 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
         7: .line 1611
            aload 7 /* clazz */
            aload 6 /* methodName */
            aload 10 /* newMethod */
            aload 8 /* currVisibility */
            aload 0 /* context */
            aload 5 /* runtime */
            invokestatic org.jruby.runtime.Helpers.addInstanceMethod:(Lorg/jruby/RubyModule;Lorg/jruby/RubySymbol;Lorg/jruby/internal/runtime/methods/DynamicMethod;Lorg/jruby/runtime/Visibility;Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;)Lorg/jruby/RubySymbol;
            pop
         8: .line 1612
            return
        end local 10 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
        end local 9 // org.jruby.runtime.Visibility newVisibility
        end local 8 // org.jruby.runtime.Visibility currVisibility
        end local 7 // org.jruby.RubyModule clazz
        end local 6 // org.jruby.RubySymbol methodName
        end local 5 // org.jruby.Ruby runtime
        end local 4 // org.jruby.runtime.builtin.IRubyObject self
        end local 3 // org.jruby.runtime.DynamicScope currDynScope
        end local 2 // org.jruby.ir.IRScope method
        end local 1 // java.lang.invoke.MethodHandle handle
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0         context  Lorg/jruby/runtime/ThreadContext;
            0    9     1          handle  Ljava/lang/invoke/MethodHandle;
            0    9     2          method  Lorg/jruby/ir/IRScope;
            0    9     3    currDynScope  Lorg/jruby/runtime/DynamicScope;
            0    9     4            self  Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     5         runtime  Lorg/jruby/Ruby;
            2    9     6      methodName  Lorg/jruby/RubySymbol;
            3    9     7           clazz  Lorg/jruby/RubyModule;
            4    9     8  currVisibility  Lorg/jruby/runtime/Visibility;
            5    9     9   newVisibility  Lorg/jruby/runtime/Visibility;
            7    9    10       newMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
              Name  Flags
      context       
      handle        
      method        
      currDynScope  
      self          

  public static void defCompiledInstanceMethod(org.jruby.runtime.ThreadContext, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, int, org.jruby.ir.IRScope, org.jruby.runtime.DynamicScope, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;ILorg/jruby/ir/IRScope;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=13, args_size=7
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.invoke.MethodHandle variable
        start local 2 // java.lang.invoke.MethodHandle specific
        start local 3 // int specificArity
        start local 4 // org.jruby.ir.IRScope method
        start local 5 // org.jruby.runtime.DynamicScope currDynScope
        start local 6 // org.jruby.runtime.builtin.IRubyObject self
         0: .line 1616
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 7 /* runtime */
        start local 7 // org.jruby.Ruby runtime
         1: .line 1617
            aload 4 /* method */
            invokevirtual org.jruby.ir.IRScope.getName:()Lorg/jruby/RubySymbol;
            astore 8 /* methodName */
        start local 8 // org.jruby.RubySymbol methodName
         2: .line 1618
            aload 0 /* context */
            aload 5 /* currDynScope */
            aload 6 /* self */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.findInstanceMethodContainer:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
            astore 9 /* clazz */
        start local 9 // org.jruby.RubyModule clazz
         3: .line 1620
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getCurrentVisibility:()Lorg/jruby/runtime/Visibility;
            astore 10 /* currVisibility */
        start local 10 // org.jruby.runtime.Visibility currVisibility
         4: .line 1621
            aload 7 /* runtime */
            aload 9 /* clazz */
            aload 8 /* methodName */
            aload 10 /* currVisibility */
            invokestatic org.jruby.runtime.Helpers.performNormalMethodChecksAndDetermineVisibility:(Lorg/jruby/Ruby;Lorg/jruby/RubyModule;Lorg/jruby/RubySymbol;Lorg/jruby/runtime/Visibility;)Lorg/jruby/runtime/Visibility;
            astore 11 /* newVisibility */
        start local 11 // org.jruby.runtime.Visibility newVisibility
         5: .line 1623
            aload 4 /* method */
            aload 0 /* context */
            invokevirtual org.jruby.ir.IRScope.captureParentRefinements:(Lorg/jruby/runtime/ThreadContext;)V
         6: .line 1625
            new org.jruby.internal.runtime.methods.CompiledIRMethod
            dup
            aload 1 /* variable */
            aload 2 /* specific */
            iload 3 /* specificArity */
            aload 4 /* method */
            aload 11 /* newVisibility */
            aload 9 /* clazz */
            invokespecial org.jruby.internal.runtime.methods.CompiledIRMethod.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;ILorg/jruby/ir/IRScope;Lorg/jruby/runtime/Visibility;Lorg/jruby/RubyModule;)V
            astore 12 /* newMethod */
        start local 12 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
         7: .line 1628
            aload 9 /* clazz */
            aload 8 /* methodName */
            aload 12 /* newMethod */
            aload 10 /* currVisibility */
            aload 0 /* context */
            aload 7 /* runtime */
            invokestatic org.jruby.runtime.Helpers.addInstanceMethod:(Lorg/jruby/RubyModule;Lorg/jruby/RubySymbol;Lorg/jruby/internal/runtime/methods/DynamicMethod;Lorg/jruby/runtime/Visibility;Lorg/jruby/runtime/ThreadContext;Lorg/jruby/Ruby;)Lorg/jruby/RubySymbol;
            pop
         8: .line 1629
            return
        end local 12 // org.jruby.internal.runtime.methods.DynamicMethod newMethod
        end local 11 // org.jruby.runtime.Visibility newVisibility
        end local 10 // org.jruby.runtime.Visibility currVisibility
        end local 9 // org.jruby.RubyModule clazz
        end local 8 // org.jruby.RubySymbol methodName
        end local 7 // org.jruby.Ruby runtime
        end local 6 // org.jruby.runtime.builtin.IRubyObject self
        end local 5 // org.jruby.runtime.DynamicScope currDynScope
        end local 4 // org.jruby.ir.IRScope method
        end local 3 // int specificArity
        end local 2 // java.lang.invoke.MethodHandle specific
        end local 1 // java.lang.invoke.MethodHandle variable
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0         context  Lorg/jruby/runtime/ThreadContext;
            0    9     1        variable  Ljava/lang/invoke/MethodHandle;
            0    9     2        specific  Ljava/lang/invoke/MethodHandle;
            0    9     3   specificArity  I
            0    9     4          method  Lorg/jruby/ir/IRScope;
            0    9     5    currDynScope  Lorg/jruby/runtime/DynamicScope;
            0    9     6            self  Lorg/jruby/runtime/builtin/IRubyObject;
            1    9     7         runtime  Lorg/jruby/Ruby;
            2    9     8      methodName  Lorg/jruby/RubySymbol;
            3    9     9           clazz  Lorg/jruby/RubyModule;
            4    9    10  currVisibility  Lorg/jruby/runtime/Visibility;
            5    9    11   newVisibility  Lorg/jruby/runtime/Visibility;
            7    9    12       newMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
               Name  Flags
      context        
      variable       
      specific       
      specificArity  
      method         
      currDynScope   
      self           

  public static org.jruby.runtime.builtin.IRubyObject invokeModuleBody(org.jruby.runtime.ThreadContext, org.jruby.internal.runtime.methods.DynamicMethod, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/internal/runtime/methods/DynamicMethod;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.internal.runtime.methods.DynamicMethod method
        start local 2 // org.jruby.runtime.Block block
         0: .line 1633
            aload 1 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getImplementationClass:()Lorg/jruby/RubyModule;
            astore 3 /* implClass */
        start local 3 // org.jruby.RubyModule implClass
         1: .line 1635
            aload 1 /* method */
            aload 0 /* context */
            aload 3 /* implClass */
            aload 3 /* implClass */
            ldc ""
            aload 2 /* block */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.RubyModule implClass
        end local 2 // org.jruby.runtime.Block block
        end local 1 // org.jruby.internal.runtime.methods.DynamicMethod method
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0    context  Lorg/jruby/runtime/ThreadContext;
            0    2     1     method  Lorg/jruby/internal/runtime/methods/DynamicMethod;
            0    2     2      block  Lorg/jruby/runtime/Block;
            1    2     3  implClass  Lorg/jruby/RubyModule;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      method   
      block    

  public static org.jruby.runtime.builtin.IRubyObject invokeModuleBody(org.jruby.runtime.ThreadContext, org.jruby.internal.runtime.methods.DynamicMethod);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/internal/runtime/methods/DynamicMethod;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.internal.runtime.methods.DynamicMethod method
         0: .line 1641
            aload 1 /* method */
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getImplementationClass:()Lorg/jruby/RubyModule;
            astore 2 /* implClass */
        start local 2 // org.jruby.RubyModule implClass
         1: .line 1643
            aload 1 /* method */
            aload 0 /* context */
            aload 2 /* implClass */
            aload 2 /* implClass */
            ldc ""
            getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.RubyModule implClass
        end local 1 // org.jruby.internal.runtime.methods.DynamicMethod method
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0    context  Lorg/jruby/runtime/ThreadContext;
            0    2     1     method  Lorg/jruby/internal/runtime/methods/DynamicMethod;
            1    2     2  implClass  Lorg/jruby/RubyModule;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      method   

  public static org.jruby.RubyRegexp newDynamicRegexp(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] pieces
        start local 2 // int embeddedOptions
         0: .line 1648
            iload 2 /* embeddedOptions */
            invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
            astore 3 /* options */
        start local 3 // org.jruby.util.RegexpOptions options
         1: .line 1649
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* pieces */
            aload 3 /* options */
            invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
            astore 4 /* pattern */
        start local 4 // org.jruby.RubyString pattern
         2: .line 1650
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 4 /* pattern */
            aload 3 /* options */
            invokestatic org.jruby.RubyRegexp.newDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            astore 5 /* re */
        start local 5 // org.jruby.RubyRegexp re
         3: .line 1651
            aload 5 /* re */
            invokevirtual org.jruby.RubyRegexp.setLiteral:()V
         4: .line 1653
            aload 5 /* re */
            areturn
        end local 5 // org.jruby.RubyRegexp re
        end local 4 // org.jruby.RubyString pattern
        end local 3 // org.jruby.util.RegexpOptions options
        end local 2 // int embeddedOptions
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] pieces
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0          context  Lorg/jruby/runtime/ThreadContext;
            0    5     1           pieces  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2  embeddedOptions  I
            1    5     3          options  Lorg/jruby/util/RegexpOptions;
            2    5     4          pattern  Lorg/jruby/RubyString;
            3    5     5               re  Lorg/jruby/RubyRegexp;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                 Name  Flags
      context          
      pieces           
      embeddedOptions  

  public static org.jruby.RubyRegexp newDynamicRegexp(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // int embeddedOptions
         0: .line 1658
            iload 2 /* embeddedOptions */
            invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
            astore 3 /* options */
        start local 3 // org.jruby.util.RegexpOptions options
         1: .line 1659
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* arg0 */
            aload 3 /* options */
            invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
            astore 4 /* pattern */
        start local 4 // org.jruby.RubyString pattern
         2: .line 1660
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 4 /* pattern */
            aload 3 /* options */
            invokestatic org.jruby.RubyRegexp.newDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            astore 5 /* re */
        start local 5 // org.jruby.RubyRegexp re
         3: .line 1661
            aload 5 /* re */
            invokevirtual org.jruby.RubyRegexp.setLiteral:()V
         4: .line 1663
            aload 5 /* re */
            areturn
        end local 5 // org.jruby.RubyRegexp re
        end local 4 // org.jruby.RubyString pattern
        end local 3 // org.jruby.util.RegexpOptions options
        end local 2 // int embeddedOptions
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0          context  Lorg/jruby/runtime/ThreadContext;
            0    5     1             arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2  embeddedOptions  I
            1    5     3          options  Lorg/jruby/util/RegexpOptions;
            2    5     4          pattern  Lorg/jruby/RubyString;
            3    5     5               re  Lorg/jruby/RubyRegexp;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                 Name  Flags
      context          
      arg0             
      embeddedOptions  

  public static org.jruby.RubyRegexp newDynamicRegexp(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // int embeddedOptions
         0: .line 1668
            iload 3 /* embeddedOptions */
            invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
            astore 4 /* options */
        start local 4 // org.jruby.util.RegexpOptions options
         1: .line 1669
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            aload 4 /* options */
            invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
            astore 5 /* pattern */
        start local 5 // org.jruby.RubyString pattern
         2: .line 1670
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 5 /* pattern */
            aload 4 /* options */
            invokestatic org.jruby.RubyRegexp.newDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            astore 6 /* re */
        start local 6 // org.jruby.RubyRegexp re
         3: .line 1671
            aload 6 /* re */
            invokevirtual org.jruby.RubyRegexp.setLiteral:()V
         4: .line 1673
            aload 6 /* re */
            areturn
        end local 6 // org.jruby.RubyRegexp re
        end local 5 // org.jruby.RubyString pattern
        end local 4 // org.jruby.util.RegexpOptions options
        end local 3 // int embeddedOptions
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0          context  Lorg/jruby/runtime/ThreadContext;
            0    5     1             arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2             arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3  embeddedOptions  I
            1    5     4          options  Lorg/jruby/util/RegexpOptions;
            2    5     5          pattern  Lorg/jruby/RubyString;
            3    5     6               re  Lorg/jruby/RubyRegexp;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                 Name  Flags
      context          
      arg0             
      arg1             
      embeddedOptions  

  public static org.jruby.RubyRegexp newDynamicRegexp(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 4 // int embeddedOptions
         0: .line 1678
            iload 4 /* embeddedOptions */
            invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
            astore 5 /* options */
        start local 5 // org.jruby.util.RegexpOptions options
         1: .line 1679
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            aload 3 /* arg2 */
            aload 5 /* options */
            invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
            astore 6 /* pattern */
        start local 6 // org.jruby.RubyString pattern
         2: .line 1680
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 6 /* pattern */
            aload 5 /* options */
            invokestatic org.jruby.RubyRegexp.newDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            astore 7 /* re */
        start local 7 // org.jruby.RubyRegexp re
         3: .line 1681
            aload 7 /* re */
            invokevirtual org.jruby.RubyRegexp.setLiteral:()V
         4: .line 1683
            aload 7 /* re */
            areturn
        end local 7 // org.jruby.RubyRegexp re
        end local 6 // org.jruby.RubyString pattern
        end local 5 // org.jruby.util.RegexpOptions options
        end local 4 // int embeddedOptions
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0          context  Lorg/jruby/runtime/ThreadContext;
            0    5     1             arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2             arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3             arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4  embeddedOptions  I
            1    5     5          options  Lorg/jruby/util/RegexpOptions;
            2    5     6          pattern  Lorg/jruby/RubyString;
            3    5     7               re  Lorg/jruby/RubyRegexp;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                 Name  Flags
      context          
      arg0             
      arg1             
      arg2             
      embeddedOptions  

  public static org.jruby.RubyRegexp newDynamicRegexp(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=9, args_size=6
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 4 // org.jruby.runtime.builtin.IRubyObject arg3
        start local 5 // int embeddedOptions
         0: .line 1688
            iload 5 /* embeddedOptions */
            invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
            astore 6 /* options */
        start local 6 // org.jruby.util.RegexpOptions options
         1: .line 1689
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            aload 3 /* arg2 */
            aload 4 /* arg3 */
            aload 6 /* options */
            invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
            astore 7 /* pattern */
        start local 7 // org.jruby.RubyString pattern
         2: .line 1690
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 7 /* pattern */
            aload 6 /* options */
            invokestatic org.jruby.RubyRegexp.newDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            astore 8 /* re */
        start local 8 // org.jruby.RubyRegexp re
         3: .line 1691
            aload 8 /* re */
            invokevirtual org.jruby.RubyRegexp.setLiteral:()V
         4: .line 1693
            aload 8 /* re */
            areturn
        end local 8 // org.jruby.RubyRegexp re
        end local 7 // org.jruby.RubyString pattern
        end local 6 // org.jruby.util.RegexpOptions options
        end local 5 // int embeddedOptions
        end local 4 // org.jruby.runtime.builtin.IRubyObject arg3
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0          context  Lorg/jruby/runtime/ThreadContext;
            0    5     1             arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2             arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3             arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4             arg3  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     5  embeddedOptions  I
            1    5     6          options  Lorg/jruby/util/RegexpOptions;
            2    5     7          pattern  Lorg/jruby/RubyString;
            3    5     8               re  Lorg/jruby/RubyRegexp;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                 Name  Flags
      context          
      arg0             
      arg1             
      arg2             
      arg3             
      embeddedOptions  

  public static org.jruby.RubyRegexp newDynamicRegexp(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=10, args_size=7
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        start local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        start local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        start local 4 // org.jruby.runtime.builtin.IRubyObject arg3
        start local 5 // org.jruby.runtime.builtin.IRubyObject arg4
        start local 6 // int embeddedOptions
         0: .line 1698
            iload 6 /* embeddedOptions */
            invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
            astore 7 /* options */
        start local 7 // org.jruby.util.RegexpOptions options
         1: .line 1699
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* arg0 */
            aload 2 /* arg1 */
            aload 3 /* arg2 */
            aload 4 /* arg3 */
            aload 5 /* arg4 */
            aload 7 /* options */
            invokestatic org.jruby.RubyRegexp.preprocessDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyString;
            astore 8 /* pattern */
        start local 8 // org.jruby.RubyString pattern
         2: .line 1700
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 8 /* pattern */
            aload 7 /* options */
            invokestatic org.jruby.RubyRegexp.newDRegexp:(Lorg/jruby/Ruby;Lorg/jruby/RubyString;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            astore 9 /* re */
        start local 9 // org.jruby.RubyRegexp re
         3: .line 1701
            aload 9 /* re */
            invokevirtual org.jruby.RubyRegexp.setLiteral:()V
         4: .line 1703
            aload 9 /* re */
            areturn
        end local 9 // org.jruby.RubyRegexp re
        end local 8 // org.jruby.RubyString pattern
        end local 7 // org.jruby.util.RegexpOptions options
        end local 6 // int embeddedOptions
        end local 5 // org.jruby.runtime.builtin.IRubyObject arg4
        end local 4 // org.jruby.runtime.builtin.IRubyObject arg3
        end local 3 // org.jruby.runtime.builtin.IRubyObject arg2
        end local 2 // org.jruby.runtime.builtin.IRubyObject arg1
        end local 1 // org.jruby.runtime.builtin.IRubyObject arg0
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0          context  Lorg/jruby/runtime/ThreadContext;
            0    5     1             arg0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     2             arg1  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3             arg2  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4             arg3  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     5             arg4  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     6  embeddedOptions  I
            1    5     7          options  Lorg/jruby/util/RegexpOptions;
            2    5     8          pattern  Lorg/jruby/RubyString;
            3    5     9               re  Lorg/jruby/RubyRegexp;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                 Name  Flags
      context          
      arg0             
      arg1             
      arg2             
      arg3             
      arg4             
      embeddedOptions  

  public static org.jruby.RubyRegexp newLiteralRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.ByteList, org.jruby.util.RegexpOptions);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.util.ByteList source
        start local 2 // org.jruby.util.RegexpOptions options
         0: .line 1707
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* source */
            aload 2 /* options */
            invokestatic org.jruby.RubyRegexp.newRegexp:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            astore 3 /* re */
        start local 3 // org.jruby.RubyRegexp re
         1: .line 1708
            aload 3 /* re */
            invokevirtual org.jruby.RubyRegexp.setLiteral:()V
         2: .line 1709
            aload 3 /* re */
            areturn
        end local 3 // org.jruby.RubyRegexp re
        end local 2 // org.jruby.util.RegexpOptions options
        end local 1 // org.jruby.util.ByteList source
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1   source  Lorg/jruby/util/ByteList;
            0    3     2  options  Lorg/jruby/util/RegexpOptions;
            1    3     3       re  Lorg/jruby/RubyRegexp;
    MethodParameters:
         Name  Flags
      context  
      source   
      options  

  public static org.jruby.RubyRegexp newLiteralRegexp(org.jruby.runtime.ThreadContext, org.jruby.util.ByteList, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/ByteList;I)Lorg/jruby/RubyRegexp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.util.ByteList source
        start local 2 // int embeddedOptions
         0: .line 1714
            aload 0 /* context */
            aload 1 /* source */
            iload 2 /* embeddedOptions */
            invokestatic org.jruby.util.RegexpOptions.fromEmbeddedOptions:(I)Lorg/jruby/util/RegexpOptions;
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.newLiteralRegexp:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/ByteList;Lorg/jruby/util/RegexpOptions;)Lorg/jruby/RubyRegexp;
            areturn
        end local 2 // int embeddedOptions
        end local 1 // org.jruby.util.ByteList source
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    1     0          context  Lorg/jruby/runtime/ThreadContext;
            0    1     1           source  Lorg/jruby/util/ByteList;
            0    1     2  embeddedOptions  I
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
                 Name  Flags
      context          
      source           
      embeddedOptions  

  public static org.jruby.RubyArray irSplat(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1719
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 2 /* runtime */
        start local 2 // org.jruby.Ruby runtime
         1: .line 1720
            aload 0 /* context */
            aload 1 /* ary */
            aload 2 /* runtime */
            invokevirtual org.jruby.Ruby.getArray:()Lorg/jruby/RubyClass;
            aload 0 /* context */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$IRRuntimeHelpersSites;
            getfield org.jruby.runtime.JavaSites$IRRuntimeHelpersSites.to_a_checked:Lorg/jruby/runtime/JavaSites$CheckedSites;
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 3 /* tmp */
        start local 3 // org.jruby.runtime.builtin.IRubyObject tmp
         2: .line 1721
            aload 3 /* tmp */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 5
         3: .line 1722
            aload 2 /* runtime */
            aload 1 /* ary */
            invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            astore 3 /* tmp */
         4: .line 1723
            goto 6
         5: .line 1725
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 3 /* tmp */
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.aryDup:()Lorg/jruby/RubyArray;
            astore 3 /* tmp */
         6: .line 1727
      StackMap locals:
      StackMap stack:
            aload 3 /* tmp */
            checkcast org.jruby.RubyArray
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject tmp
        end local 2 // org.jruby.Ruby runtime
        end local 1 // org.jruby.runtime.builtin.IRubyObject ary
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  context  Lorg/jruby/runtime/ThreadContext;
            0    7     1      ary  Lorg/jruby/runtime/builtin/IRubyObject;
            1    7     2  runtime  Lorg/jruby/Ruby;
            2    7     3      tmp  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      ary      

  public static org.jruby.RubyArray splatArray(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject ary
        start local 2 // boolean dupArray
         0: .line 1737
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 3 /* runtime */
        start local 3 // org.jruby.Ruby runtime
         1: .line 1738
            aload 0 /* context */
            aload 1 /* ary */
            aload 3 /* runtime */
            invokevirtual org.jruby.Ruby.getArray:()Lorg/jruby/RubyClass;
            aload 0 /* context */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.sites:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$IRRuntimeHelpersSites;
            getfield org.jruby.runtime.JavaSites$IRRuntimeHelpersSites.to_a_checked:Lorg/jruby/runtime/JavaSites$CheckedSites;
            invokestatic org.jruby.util.TypeConverter.convertToTypeWithCheck:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;Lorg/jruby/runtime/JavaSites$CheckedSites;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* tmp */
        start local 4 // org.jruby.runtime.builtin.IRubyObject tmp
         2: .line 1740
            aload 4 /* tmp */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 5
         3: .line 1741
            aload 3 /* runtime */
            aload 1 /* ary */
            invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            astore 4 /* tmp */
         4: .line 1742
            goto 7
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
         5: iload 2 /* dupArray */
            ifeq 7
         6: .line 1743
            aload 4 /* tmp */
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.aryDup:()Lorg/jruby/RubyArray;
            astore 4 /* tmp */
         7: .line 1746
      StackMap locals:
      StackMap stack:
            aload 4 /* tmp */
            checkcast org.jruby.RubyArray
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject tmp
        end local 3 // org.jruby.Ruby runtime
        end local 2 // boolean dupArray
        end local 1 // org.jruby.runtime.builtin.IRubyObject ary
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0   context  Lorg/jruby/runtime/ThreadContext;
            0    8     1       ary  Lorg/jruby/runtime/builtin/IRubyObject;
            0    8     2  dupArray  Z
            1    8     3   runtime  Lorg/jruby/Ruby;
            2    8     4       tmp  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
          Name  Flags
      context   
      ary       
      dupArray  

  public static org.jruby.runtime.builtin.IRubyObject irToAry(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1750
            aload 1 /* value */
            instanceof org.jruby.RubyArray
            ifeq 1
            aload 1 /* value */
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* context */
            aload 1 /* value */
            invokestatic org.jruby.RubyArray.aryToAry:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject value
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1    value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      value    

  public static int irReqdArgMultipleAsgnIndex(int, int, int, int);
    descriptor: (IIII)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=4
        start local 0 // int n
        start local 1 // int preArgsCount
        start local 2 // int index
        start local 3 // int postArgsCount
         0: .line 1754
            iload 1 /* preArgsCount */
            iconst_m1
            if_icmpne 4
         1: .line 1755
            iload 2 /* index */
            iload 0 /* n */
            if_icmpge 2
            iload 2 /* index */
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_m1
      StackMap locals:
      StackMap stack: int
         3: ireturn
         4: .line 1757
      StackMap locals:
      StackMap stack:
            iload 0 /* n */
            iload 1 /* preArgsCount */
            isub
            istore 4 /* remaining */
        start local 4 // int remaining
         5: .line 1758
            iload 4 /* remaining */
            iload 2 /* index */
            if_icmpgt 7
         6: .line 1759
            iconst_m1
            ireturn
         7: .line 1761
      StackMap locals: int
      StackMap stack:
            iload 4 /* remaining */
            iload 3 /* postArgsCount */
            if_icmple 8
            iload 0 /* n */
            iload 3 /* postArgsCount */
            isub
            iload 2 /* index */
            iadd
            goto 9
      StackMap locals:
      StackMap stack:
         8: iload 1 /* preArgsCount */
            iload 2 /* index */
            iadd
      StackMap locals:
      StackMap stack: int
         9: ireturn
        end local 4 // int remaining
        end local 3 // int postArgsCount
        end local 2 // int index
        end local 1 // int preArgsCount
        end local 0 // int n
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   10     0              n  I
            0   10     1   preArgsCount  I
            0   10     2          index  I
            0   10     3  postArgsCount  I
            5   10     4      remaining  I
    MethodParameters:
               Name  Flags
      n              
      preArgsCount   
      index          
      postArgsCount  

  public static org.jruby.runtime.builtin.IRubyObject irReqdArgMultipleAsgn(org.jruby.runtime.ThreadContext, org.jruby.RubyArray, int, int, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyArray;III)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.RubyArray rubyArray
        start local 2 // int preArgsCount
        start local 3 // int index
        start local 4 // int postArgsCount
         0: .line 1767
            aload 1 /* rubyArray */
            invokevirtual org.jruby.RubyArray.getLength:()I
            iload 2 /* preArgsCount */
            iload 3 /* index */
            iload 4 /* postArgsCount */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.irReqdArgMultipleAsgnIndex:(IIII)I
            istore 5 /* i */
        start local 5 // int i
         1: .line 1768
            iload 5 /* i */
            iconst_m1
            if_icmpne 2
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals: int
      StackMap stack:
         2: aload 1 /* rubyArray */
            iload 5 /* i */
            invokevirtual org.jruby.RubyArray.entry:(I)Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         3: areturn
        end local 5 // int i
        end local 4 // int postArgsCount
        end local 3 // int index
        end local 2 // int preArgsCount
        end local 1 // org.jruby.RubyArray rubyArray
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0        context  Lorg/jruby/runtime/ThreadContext;
            0    4     1      rubyArray  Lorg/jruby/RubyArray;
            0    4     2   preArgsCount  I
            0    4     3          index  I
            0    4     4  postArgsCount  I
            1    4     5              i  I
    MethodParameters:
               Name  Flags
      context        
      rubyArray      
      preArgsCount   
      index          
      postArgsCount  

  public static org.jruby.runtime.builtin.IRubyObject irNot(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 1772
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* obj */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTrue:()Z
            ifeq 1
            iconst_0
            goto 2
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         1: iconst_1
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject
      StackMap stack: org.jruby.Ruby int
         2: invokevirtual org.jruby.Ruby.newBoolean:(Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      obj      

  public static org.jruby.exceptions.RaiseException newRequiredKeywordArgumentError(org.jruby.runtime.ThreadContext, java.lang.String);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.String id
         0: .line 1777
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "missing keyword: "
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* id */
            invokestatic org.jruby.util.RubyStringBuilder.ids:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
            invokestatic org.jruby.util.RubyStringBuilder.str:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            areturn
        end local 1 // java.lang.String id
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1       id  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      id       

  public static void pushExitBlock(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block blk
         0: .line 1781
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
            aload 1 /* blk */
            invokevirtual org.jruby.Ruby.newProc:(Lorg/jruby/runtime/Block$Type;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyProc;
            invokevirtual org.jruby.Ruby.pushEndBlock:(Lorg/jruby/RubyProc;)V
         1: .line 1782
            return
        end local 1 // org.jruby.runtime.Block blk
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Lorg/jruby/runtime/ThreadContext;
            0    2     1      blk  Lorg/jruby/runtime/Block;
    MethodParameters:
         Name  Flags
      context  
      blk      

  public static void pushExitBlock(org.jruby.runtime.ThreadContext, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object blk
         0: .line 1786
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
            aload 0 /* context */
            aload 1 /* blk */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.getBlockFromObject:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;)Lorg/jruby/runtime/Block;
            invokevirtual org.jruby.Ruby.newProc:(Lorg/jruby/runtime/Block$Type;Lorg/jruby/runtime/Block;)Lorg/jruby/RubyProc;
            invokevirtual org.jruby.Ruby.pushEndBlock:(Lorg/jruby/RubyProc;)V
         1: .line 1787
            return
        end local 1 // java.lang.Object blk
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Lorg/jruby/runtime/ThreadContext;
            0    2     1      blk  Ljava/lang/Object;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      blk      

  public static org.jruby.runtime.callsite.FunctionalCachingCallSite newFunctionalCachingCallSite(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/runtime/callsite/FunctionalCachingCallSite;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 1791
            new org.jruby.runtime.callsite.FunctionalCachingCallSite
            dup
            aload 0 /* name */
            invokespecial org.jruby.runtime.callsite.FunctionalCachingCallSite.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
      Name  Flags
      name  

  public static org.jruby.runtime.callsite.ProfilingCachingCallSite newProfilingCachingCallSite(java.lang.String, org.jruby.ir.IRScope, long);
    descriptor: (Ljava/lang/String;Lorg/jruby/ir/IRScope;J)Lorg/jruby/runtime/callsite/ProfilingCachingCallSite;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // java.lang.String name
        start local 1 // org.jruby.ir.IRScope scope
        start local 2 // long callSiteId
         0: .line 1795
            new org.jruby.runtime.callsite.ProfilingCachingCallSite
            dup
            aload 0 /* name */
            aload 1 /* scope */
            lload 2 /* callSiteId */
            invokespecial org.jruby.runtime.callsite.ProfilingCachingCallSite.<init>:(Ljava/lang/String;Lorg/jruby/ir/IRScope;J)V
            areturn
        end local 2 // long callSiteId
        end local 1 // org.jruby.ir.IRScope scope
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        name  Ljava/lang/String;
            0    1     1       scope  Lorg/jruby/ir/IRScope;
            0    1     2  callSiteId  J
    MethodParameters:
            Name  Flags
      name        
      scope       
      callSiteId  

  public static org.jruby.runtime.callsite.MonomorphicCallSite newMonomorphicCallSite(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/runtime/callsite/MonomorphicCallSite;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 1800
            new org.jruby.runtime.callsite.MonomorphicCallSite
            dup
            aload 0 /* name */
            invokespecial org.jruby.runtime.callsite.MonomorphicCallSite.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
      Name  Flags
      name  

  public static org.jruby.runtime.callsite.VariableCachingCallSite newVariableCachingCallSite(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/jruby/runtime/callsite/VariableCachingCallSite;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 1805
            new org.jruby.runtime.callsite.VariableCachingCallSite
            dup
            aload 0 /* name */
            invokespecial org.jruby.runtime.callsite.VariableCachingCallSite.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
      Name  Flags
      name  

  public static org.jruby.runtime.callsite.RefinedCachingCallSite newRefinedCachingCallSite(java.lang.String, org.jruby.ir.IRScope, java.lang.String);
    descriptor: (Ljava/lang/String;Lorg/jruby/ir/IRScope;Ljava/lang/String;)Lorg/jruby/runtime/callsite/RefinedCachingCallSite;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // java.lang.String name
        start local 1 // org.jruby.ir.IRScope scope
        start local 2 // java.lang.String callType
         0: .line 1810
            new org.jruby.runtime.callsite.RefinedCachingCallSite
            dup
            aload 0 /* name */
            aload 1 /* scope */
            aload 2 /* callType */
            invokestatic org.jruby.runtime.CallType.valueOf:(Ljava/lang/String;)Lorg/jruby/runtime/CallType;
            invokespecial org.jruby.runtime.callsite.RefinedCachingCallSite.<init>:(Ljava/lang/String;Lorg/jruby/ir/IRScope;Lorg/jruby/runtime/CallType;)V
            areturn
        end local 2 // java.lang.String callType
        end local 1 // org.jruby.ir.IRScope scope
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      name  Ljava/lang/String;
            0    1     1     scope  Lorg/jruby/ir/IRScope;
            0    1     2  callType  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
          Name  Flags
      name      
      scope     
      callType  

  public static org.jruby.ir.IRScope decodeScopeFromBytes(org.jruby.Ruby, byte[], java.lang.String);
    descriptor: (Lorg/jruby/Ruby;[BLjava/lang/String;)Lorg/jruby/ir/IRScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // byte[] scopeBytes
        start local 2 // java.lang.String filename
         0: .line 1816
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getIRManager:()Lorg/jruby/ir/IRManager;
            new org.jruby.ir.persistence.IRReaderStream
            dup
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getIRManager:()Lorg/jruby/ir/IRManager;
            new java.io.ByteArrayInputStream
            dup
            aload 1 /* scopeBytes */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            new org.jruby.util.ByteList
            dup
            aload 2 /* filename */
            invokevirtual java.lang.String.getBytes:()[B
            invokespecial org.jruby.util.ByteList.<init>:([B)V
            invokespecial org.jruby.ir.persistence.IRReaderStream.<init>:(Lorg/jruby/ir/IRManager;Ljava/io/InputStream;Lorg/jruby/util/ByteList;)V
            invokestatic org.jruby.ir.persistence.IRReader.load:(Lorg/jruby/ir/IRManager;Lorg/jruby/ir/persistence/IRReaderDecoder;)Lorg/jruby/ir/IRScope;
         1: areturn
         2: .line 1817
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
         3: .line 1819
            aconst_null
            areturn
        end local 2 // java.lang.String filename
        end local 1 // byte[] scopeBytes
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0     runtime  Lorg/jruby/Ruby;
            0    4     1  scopeBytes  [B
            0    4     2    filename  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
            Name  Flags
      runtime     
      scopeBytes  
      filename    

  public static org.jruby.runtime.ivars.VariableAccessor getVariableAccessorForRead(org.jruby.runtime.builtin.IRubyObject, java.lang.String);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/ivars/VariableAccessor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject object
        start local 1 // java.lang.String name
         0: .line 1825
            aload 0 /* object */
            checkcast org.jruby.RubyBasicObject
            invokevirtual org.jruby.RubyBasicObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
            aload 1 /* name */
            invokevirtual org.jruby.RubyClass.getVariableAccessorForRead:(Ljava/lang/String;)Lorg/jruby/runtime/ivars/VariableAccessor;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.jruby.runtime.builtin.IRubyObject object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  object  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     1    name  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
        Name  Flags
      object  
      name    

  public static org.jruby.runtime.ivars.VariableAccessor getVariableAccessorForWrite(org.jruby.runtime.builtin.IRubyObject, java.lang.String);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Lorg/jruby/runtime/ivars/VariableAccessor;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.builtin.IRubyObject object
        start local 1 // java.lang.String name
         0: .line 1830
            aload 0 /* object */
            checkcast org.jruby.RubyBasicObject
            invokevirtual org.jruby.RubyBasicObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getRealClass:()Lorg/jruby/RubyClass;
            aload 1 /* name */
            invokevirtual org.jruby.RubyClass.getVariableAccessorForWrite:(Ljava/lang/String;)Lorg/jruby/runtime/ivars/VariableAccessor;
            areturn
        end local 1 // java.lang.String name
        end local 0 // org.jruby.runtime.builtin.IRubyObject object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  object  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     1    name  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
        Name  Flags
      object  
      name    

  public static org.jruby.runtime.builtin.IRubyObject getVariableWithAccessor(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.ivars.VariableAccessor, org.jruby.runtime.ThreadContext, java.lang.String);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/ivars/VariableAccessor;Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.jruby.runtime.builtin.IRubyObject self
        start local 1 // org.jruby.runtime.ivars.VariableAccessor accessor
        start local 2 // org.jruby.runtime.ThreadContext context
        start local 3 // java.lang.String name
         0: .line 1835
            aload 2 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 1836
            aload 1 /* accessor */
            aload 0 /* self */
            invokevirtual org.jruby.runtime.ivars.VariableAccessor.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.jruby.runtime.builtin.IRubyObject
            astore 5 /* result */
        start local 5 // org.jruby.runtime.builtin.IRubyObject result
         2: .line 1837
            aload 5 /* result */
            ifnonnull 6
         3: .line 1838
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.isVerbose:()Z
            ifeq 5
         4: .line 1839
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            getstatic org.jruby.common.IRubyWarnings$ID.IVAR_NOT_INITIALIZED:Lorg/jruby/common/IRubyWarnings$ID;
            aload 4 /* runtime */
            ldc "instance variable "
            aload 4 /* runtime */
            aload 3 /* name */
            invokestatic org.jruby.util.RubyStringBuilder.ids:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
            ldc " not initialized"
            invokestatic org.jruby.util.RubyStringBuilder.str:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual org.jruby.common.RubyWarnings.warning:(Lorg/jruby/common/IRubyWarnings$ID;Ljava/lang/String;)V
         5: .line 1841
      StackMap locals: org.jruby.Ruby org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 2 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            astore 5 /* result */
         6: .line 1843
      StackMap locals:
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 5 // org.jruby.runtime.builtin.IRubyObject result
        end local 4 // org.jruby.Ruby runtime
        end local 3 // java.lang.String name
        end local 2 // org.jruby.runtime.ThreadContext context
        end local 1 // org.jruby.runtime.ivars.VariableAccessor accessor
        end local 0 // org.jruby.runtime.builtin.IRubyObject self
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    7     1  accessor  Lorg/jruby/runtime/ivars/VariableAccessor;
            0    7     2   context  Lorg/jruby/runtime/ThreadContext;
            0    7     3      name  Ljava/lang/String;
            1    7     4   runtime  Lorg/jruby/Ruby;
            2    7     5    result  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
          Name  Flags
      self      
      accessor  
      context   
      name      

  public static void setVariableWithAccessor(org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.ivars.VariableAccessor);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/ivars/VariableAccessor;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.builtin.IRubyObject self
        start local 1 // org.jruby.runtime.builtin.IRubyObject value
        start local 2 // org.jruby.runtime.ivars.VariableAccessor accessor
         0: .line 1848
            aload 2 /* accessor */
            aload 0 /* self */
            aload 1 /* value */
            invokevirtual org.jruby.runtime.ivars.VariableAccessor.set:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1849
            return
        end local 2 // org.jruby.runtime.ivars.VariableAccessor accessor
        end local 1 // org.jruby.runtime.builtin.IRubyObject value
        end local 0 // org.jruby.runtime.builtin.IRubyObject self
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     1     value  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2  accessor  Lorg/jruby/runtime/ivars/VariableAccessor;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
          Name  Flags
      self      
      value     
      accessor  

  public static org.jruby.RubyFixnum getArgScopeDepth(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;)Lorg/jruby/RubyFixnum;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.parser.StaticScope currScope
         0: .line 1853
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: .line 1854
            goto 4
         2: .line 1855
      StackMap locals: int
      StackMap stack:
            aload 1 /* currScope */
            invokevirtual org.jruby.parser.StaticScope.getEnclosingScope:()Lorg/jruby/parser/StaticScope;
            astore 1 /* currScope */
         3: .line 1856
            iinc 2 /* i */ 1
         4: .line 1854
      StackMap locals:
      StackMap stack:
            aload 1 /* currScope */
            invokevirtual org.jruby.parser.StaticScope.isArgumentScope:()Z
            ifeq 2
         5: .line 1858
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 2 /* i */
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 2 // int i
        end local 1 // org.jruby.parser.StaticScope currScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0    context  Lorg/jruby/runtime/ThreadContext;
            0    6     1  currScope  Lorg/jruby/parser/StaticScope;
            1    6     2          i  I
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
           Name  Flags
      context    
      currScope  

  public static org.jruby.runtime.builtin.IRubyObject[] toAry(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1863
            aload 1 /* args */
            arraylength
            iconst_1
            if_icmpne 6
            aload 0 /* context */
            aload 1 /* args */
            iconst_0
            aaload
            invokestatic org.jruby.runtime.Helpers.aryOrToAry:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            dup
            astore 2 /* ary */
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         1: aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpeq 6
         2: .line 1864
            aload 2 /* ary */
            instanceof org.jruby.RubyArray
            ifeq 5
         3: .line 1865
            aload 2 /* ary */
            checkcast org.jruby.RubyArray
            invokevirtual org.jruby.RubyArray.toJavaArray:()[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* args */
         4: .line 1866
            goto 6
         5: .line 1867
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            aload 1 /* args */
            iconst_0
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getType:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "#to_ary should return Array"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
         6: .line 1870
      StackMap locals:
      StackMap stack:
            aload 1 /* args */
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  context  Lorg/jruby/runtime/ThreadContext;
            0    7     1     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1    6     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      args     

  private static org.jruby.runtime.builtin.IRubyObject[] prepareProcArgs(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block b
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1874
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmpeq 1
            aload 2 /* args */
            areturn
         1: .line 1877
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 2 /* args */
            iconst_0
            aaload
            aload 1 /* b */
            invokevirtual org.jruby.runtime.Block.getBody:()Lorg/jruby/runtime/BlockBody;
            invokevirtual org.jruby.runtime.BlockBody.getSignature:()Lorg/jruby/runtime/Signature;
            aload 2 /* args */
            iconst_0
            aaload
            instanceof org.jruby.RubyArray
            ifeq 2
            aload 1 /* b */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            getstatic org.jruby.runtime.Block$Type.NORMAL:Lorg/jruby/runtime/Block$Type;
            if_acmpne 2
            iconst_1
            goto 3
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.runtime.builtin.IRubyObject[]
      StackMap stack: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.Signature
         2: iconst_0
      StackMap locals: org.jruby.runtime.ThreadContext org.jruby.runtime.Block org.jruby.runtime.builtin.IRubyObject[]
      StackMap stack: org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.Signature int
         3: invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.convertValueIntoArgArray:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Signature;Z)[Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.Block b
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  context  Lorg/jruby/runtime/ThreadContext;
            0    4     1        b  Lorg/jruby/runtime/Block;
            0    4     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      b        
      args     

  private static org.jruby.runtime.builtin.IRubyObject[] prepareBlockArgsInternal(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1881
            aload 2 /* args */
            ifnonnull 1
            getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
         1: .line 1883
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$runtime$Block$Type:()[I
            aload 1 /* block */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            invokevirtual org.jruby.runtime.Block$Type.ordinal:()I
            iaload
            tableswitch { // 2 - 3
                    2: 7
                    3: 2
              default: 8
          }
         2: .line 1890
      StackMap locals:
      StackMap stack:
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.getBody:()Lorg/jruby/runtime/BlockBody;
            invokevirtual org.jruby.runtime.BlockBody.getSignature:()Lorg/jruby/runtime/Signature;
            astore 3 /* sig */
        start local 3 // org.jruby.runtime.Signature sig
         3: .line 1891
            aload 3 /* sig */
            invokevirtual org.jruby.runtime.Signature.arityValue:()I
            iconst_m1
            if_icmpeq 5
            aload 3 /* sig */
            invokevirtual org.jruby.runtime.Signature.required:()I
            iconst_1
            if_icmpeq 5
         4: .line 1892
            aload 0 /* context */
            aload 2 /* args */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.toAry:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
         5: .line 1895
      StackMap locals: org.jruby.runtime.Signature
      StackMap stack:
            aload 3 /* sig */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* args */
            invokevirtual org.jruby.runtime.Signature.checkArity:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)V
         6: .line 1896
            aload 2 /* args */
            areturn
        end local 3 // org.jruby.runtime.Signature sig
         7: .line 1898
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* block */
            aload 2 /* args */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.prepareProcArgs:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         8: .line 1901
      StackMap locals:
      StackMap stack:
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.getBody:()Lorg/jruby/runtime/BlockBody;
            invokevirtual org.jruby.runtime.BlockBody.getSignature:()Lorg/jruby/runtime/Signature;
            astore 3 /* sig */
        start local 3 // org.jruby.runtime.Signature sig
         9: .line 1902
            aload 3 /* sig */
            invokevirtual org.jruby.runtime.Signature.arityValue:()I
            istore 4 /* arityValue */
        start local 4 // int arityValue
        10: .line 1903
            aload 3 /* sig */
            invokevirtual org.jruby.runtime.Signature.hasKwargs:()Z
            ifne 12
            iload 4 /* arityValue */
            iconst_m1
            if_icmplt 12
            iload 4 /* arityValue */
            iconst_1
            if_icmpgt 12
        11: .line 1904
            aload 2 /* args */
            areturn
        12: .line 1910
      StackMap locals: org.jruby.runtime.Signature int
      StackMap stack:
            aload 0 /* context */
            aload 2 /* args */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.toAry:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
        13: .line 1913
            aload 3 /* sig */
            invokevirtual org.jruby.runtime.Signature.hasKwargs:()Z
            ifeq 14
            iconst_1
            aload 3 /* sig */
            invokevirtual org.jruby.runtime.Signature.getRequiredKeywordForArityCount:()I
            isub
            goto 15
      StackMap locals:
      StackMap stack:
        14: iconst_0
      StackMap locals:
      StackMap stack: int
        15: istore 5 /* needsKwargs */
        start local 5 // int needsKwargs
        16: .line 1914
            aload 3 /* sig */
            invokevirtual org.jruby.runtime.Signature.required:()I
            istore 6 /* required */
        start local 6 // int required
        17: .line 1915
            aload 2 /* args */
            arraylength
            istore 7 /* actual */
        start local 7 // int actual
        18: .line 1916
            iload 5 /* needsKwargs */
            ifeq 19
            iload 6 /* required */
            iload 7 /* actual */
            if_icmple 20
        19: .line 1919
      StackMap locals: int int int
      StackMap stack:
            aload 2 /* args */
            areturn
        20: .line 1922
      StackMap locals:
      StackMap stack:
            aload 3 /* sig */
            invokevirtual org.jruby.runtime.Signature.isFixed:()Z
            ifeq 28
            iload 6 /* required */
            ifle 28
            iload 6 /* required */
            iload 5 /* needsKwargs */
            iadd
            iload 7 /* actual */
            if_icmpeq 28
        21: .line 1923
            iload 6 /* required */
            iload 5 /* needsKwargs */
            iadd
            istore 8 /* len */
        start local 8 // int len
        22: .line 1924
            aload 2 /* args */
            iload 8 /* len */
            invokestatic org.jruby.util.ArraySupport.newCopy:([Lorg/jruby/runtime/builtin/IRubyObject;I)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 9 /* newArgs */
        start local 9 // org.jruby.runtime.builtin.IRubyObject[] newArgs
        23: .line 1925
            iload 7 /* actual */
            iload 8 /* len */
            if_icmpge 26
        24: .line 1927
            aload 9 /* newArgs */
            iload 8 /* len */
            iconst_1
            isub
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyHash.newHash:(Lorg/jruby/Ruby;)Lorg/jruby/RubyHash;
            aastore
        25: .line 1928
            goto 27
        26: .line 1930
      StackMap locals: int org.jruby.runtime.builtin.IRubyObject[]
      StackMap stack:
            aload 9 /* newArgs */
            iload 8 /* len */
            iconst_1
            isub
            aload 2 /* args */
            aload 2 /* args */
            arraylength
            iconst_1
            isub
            aaload
            aastore
        27: .line 1932
      StackMap locals:
      StackMap stack:
            aload 9 /* newArgs */
            astore 2 /* args */
        end local 9 // org.jruby.runtime.builtin.IRubyObject[] newArgs
        end local 8 // int len
        28: .line 1935
      StackMap locals:
      StackMap stack:
            aload 2 /* args */
            areturn
        end local 7 // int actual
        end local 6 // int required
        end local 5 // int needsKwargs
        end local 4 // int arityValue
        end local 3 // org.jruby.runtime.Signature sig
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   29     0      context  Lorg/jruby/runtime/ThreadContext;
            0   29     1        block  Lorg/jruby/runtime/Block;
            0   29     2         args  [Lorg/jruby/runtime/builtin/IRubyObject;
            3    7     3          sig  Lorg/jruby/runtime/Signature;
            9   29     3          sig  Lorg/jruby/runtime/Signature;
           10   29     4   arityValue  I
           16   29     5  needsKwargs  I
           17   29     6     required  I
           18   29     7       actual  I
           22   28     8          len  I
           23   28     9      newArgs  [Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      block    
      args     

  public static org.jruby.runtime.builtin.IRubyObject[] prepareNoBlockArgs(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1951
            aload 2 /* args */
            ifnonnull 1
            getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
         1: .line 1953
      StackMap locals:
      StackMap stack:
            aload 1 /* block */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
            if_acmpne 2
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.getSignature:()Lorg/jruby/runtime/Signature;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* args */
            invokevirtual org.jruby.runtime.Signature.checkArity:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 1955
      StackMap locals:
      StackMap stack:
            aload 2 /* args */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1    block  Lorg/jruby/runtime/Block;
            0    3     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.Interp()
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      block    
      args     

  public static org.jruby.runtime.builtin.IRubyObject[] prepareSingleBlockArgs(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1960
            aload 2 /* args */
            ifnonnull 1
            getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
         1: .line 1962
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$runtime$Block$Type:()[I
            aload 1 /* block */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            invokevirtual org.jruby.runtime.Block$Type.ordinal:()I
            iaload
            tableswitch { // 2 - 3
                    2: 4
                    3: 2
              default: 11
          }
         2: .line 1964
      StackMap locals:
      StackMap stack:
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.getBody:()Lorg/jruby/runtime/BlockBody;
            invokevirtual org.jruby.runtime.BlockBody.getSignature:()Lorg/jruby/runtime/Signature;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* args */
            invokevirtual org.jruby.runtime.Signature.checkArity:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)V
         3: .line 1965
            aload 2 /* args */
            areturn
         4: .line 1967
      StackMap locals:
      StackMap stack:
            aload 2 /* args */
            arraylength
            ifne 7
         5: .line 1968
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getSingleNilArray:()[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
         6: .line 1969
            goto 11
      StackMap locals:
      StackMap stack:
         7: aload 2 /* args */
            arraylength
            iconst_1
            if_icmpne 10
         8: .line 1970
            aload 0 /* context */
            aload 1 /* block */
            aload 2 /* args */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.prepareProcArgs:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
         9: .line 1971
            goto 11
        10: .line 1972
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
            aload 2 /* args */
            iconst_0
            aaload
            aastore
            astore 2 /* args */
        11: .line 1977
      StackMap locals:
      StackMap stack:
            aload 2 /* args */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0  context  Lorg/jruby/runtime/ThreadContext;
            0   12     1    block  Lorg/jruby/runtime/Block;
            0   12     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.Interp()
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      block    
      args     

  public static org.jruby.runtime.builtin.IRubyObject[] prepareFixedBlockArgs(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1982
            aload 2 /* args */
            ifnonnull 1
            getstatic org.jruby.runtime.builtin.IRubyObject.NULL_ARRAY:[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
         1: .line 1984
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$runtime$Block$Type:()[I
            aload 1 /* block */
            getfield org.jruby.runtime.Block.type:Lorg/jruby/runtime/Block$Type;
            invokevirtual org.jruby.runtime.Block$Type.ordinal:()I
            iaload
            tableswitch { // 2 - 3
                    2: 4
                    3: 2
              default: 5
          }
         2: .line 1986
      StackMap locals:
      StackMap stack:
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.getBody:()Lorg/jruby/runtime/BlockBody;
            invokevirtual org.jruby.runtime.BlockBody.getSignature:()Lorg/jruby/runtime/Signature;
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* args */
            invokevirtual org.jruby.runtime.Signature.checkArity:(Lorg/jruby/Ruby;[Lorg/jruby/runtime/builtin/IRubyObject;)V
         3: .line 1987
            aload 2 /* args */
            areturn
         4: .line 1989
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 1 /* block */
            aload 2 /* args */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.prepareProcArgs:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         5: .line 1993
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            aload 2 /* args */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.toAry:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  context  Lorg/jruby/runtime/ThreadContext;
            0    6     1    block  Lorg/jruby/runtime/Block;
            0    6     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.Interp()
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      block    
      args     

  public static org.jruby.runtime.builtin.IRubyObject[] prepareBlockArgs(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject[], boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;Z)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        start local 3 // boolean usesKwArgs
         0: .line 2000
            aload 0 /* context */
            aload 1 /* block */
            aload 2 /* args */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.prepareBlockArgsInternal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;[Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
         1: .line 2001
            iload 3 /* usesKwArgs */
            ifeq 3
         2: .line 2002
            aload 0 /* context */
            aload 2 /* args */
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.getBody:()Lorg/jruby/runtime/BlockBody;
            invokevirtual org.jruby.runtime.BlockBody.getSignature:()Lorg/jruby/runtime/Signature;
            invokevirtual org.jruby.runtime.Signature.required:()I
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.frobnicateKwargsArgument:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;I)[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 2 /* args */
         3: .line 2004
      StackMap locals:
      StackMap stack:
            aload 2 /* args */
            areturn
        end local 3 // boolean usesKwArgs
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0     context  Lorg/jruby/runtime/ThreadContext;
            0    4     1       block  Lorg/jruby/runtime/Block;
            0    4     2        args  [Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3  usesKwArgs  Z
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.Interp()
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.JIT()
    MethodParameters:
            Name  Flags
      context     
      block       
      args        
      usesKwArgs  

  private static org.jruby.runtime.DynamicScope getNewBlockScope(org.jruby.runtime.Block, boolean, boolean);
    descriptor: (Lorg/jruby/runtime/Block;ZZ)Lorg/jruby/runtime/DynamicScope;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.jruby.runtime.Block block
        start local 1 // boolean pushNewDynScope
        start local 2 // boolean reuseParentDynScope
         0: .line 2008
            aload 0 /* block */
            invokevirtual org.jruby.runtime.Block.getBinding:()Lorg/jruby/runtime/Binding;
            invokevirtual org.jruby.runtime.Binding.getDynamicScope:()Lorg/jruby/runtime/DynamicScope;
            astore 3 /* newScope */
        start local 3 // org.jruby.runtime.DynamicScope newScope
         1: .line 2009
            iload 1 /* pushNewDynScope */
            ifeq 2
            aload 0 /* block */
            aload 3 /* newScope */
            invokevirtual org.jruby.runtime.Block.allocScope:(Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/runtime/DynamicScope;
            areturn
         2: .line 2012
      StackMap locals: org.jruby.runtime.DynamicScope
      StackMap stack:
            iload 2 /* reuseParentDynScope */
            ifeq 3
            aload 3 /* newScope */
            areturn
         3: .line 2015
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // org.jruby.runtime.DynamicScope newScope
        end local 2 // boolean reuseParentDynScope
        end local 1 // boolean pushNewDynScope
        end local 0 // org.jruby.runtime.Block block
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    4     0                block  Lorg/jruby/runtime/Block;
            0    4     1      pushNewDynScope  Z
            0    4     2  reuseParentDynScope  Z
            1    4     3             newScope  Lorg/jruby/runtime/DynamicScope;
    MethodParameters:
                     Name  Flags
      block                
      pushNewDynScope      
      reuseParentDynScope  

  public static org.jruby.runtime.DynamicScope pushBlockDynamicScopeIfNeeded(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, boolean, boolean);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;ZZ)Lorg/jruby/runtime/DynamicScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
        start local 2 // boolean pushNewDynScope
        start local 3 // boolean reuseParentDynScope
         0: .line 2020
            aload 1 /* block */
            iload 2 /* pushNewDynScope */
            iload 3 /* reuseParentDynScope */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.getNewBlockScope:(Lorg/jruby/runtime/Block;ZZ)Lorg/jruby/runtime/DynamicScope;
            astore 4 /* newScope */
        start local 4 // org.jruby.runtime.DynamicScope newScope
         1: .line 2021
            aload 4 /* newScope */
            ifnull 3
         2: .line 2022
            aload 0 /* context */
            aload 4 /* newScope */
            invokevirtual org.jruby.runtime.ThreadContext.pushScope:(Lorg/jruby/runtime/DynamicScope;)V
         3: .line 2024
      StackMap locals: org.jruby.runtime.DynamicScope
      StackMap stack:
            aload 4 /* newScope */
            areturn
        end local 4 // org.jruby.runtime.DynamicScope newScope
        end local 3 // boolean reuseParentDynScope
        end local 2 // boolean pushNewDynScope
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    4     0              context  Lorg/jruby/runtime/ThreadContext;
            0    4     1                block  Lorg/jruby/runtime/Block;
            0    4     2      pushNewDynScope  Z
            0    4     3  reuseParentDynScope  Z
            1    4     4             newScope  Lorg/jruby/runtime/DynamicScope;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
                     Name  Flags
      context              
      block                
      pushNewDynScope      
      reuseParentDynScope  

  public static org.jruby.runtime.DynamicScope pushBlockDynamicScopeNew(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/DynamicScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
         0: .line 2029
            aload 1 /* block */
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.getBinding:()Lorg/jruby/runtime/Binding;
            invokevirtual org.jruby.runtime.Binding.getDynamicScope:()Lorg/jruby/runtime/DynamicScope;
            invokevirtual org.jruby.runtime.Block.allocScope:(Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/runtime/DynamicScope;
            astore 2 /* newScope */
        start local 2 // org.jruby.runtime.DynamicScope newScope
         1: .line 2031
            aload 0 /* context */
            aload 2 /* newScope */
            invokevirtual org.jruby.runtime.ThreadContext.pushScope:(Lorg/jruby/runtime/DynamicScope;)V
         2: .line 2033
            aload 2 /* newScope */
            areturn
        end local 2 // org.jruby.runtime.DynamicScope newScope
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0   context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     block  Lorg/jruby/runtime/Block;
            1    3     2  newScope  Lorg/jruby/runtime/DynamicScope;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      block    

  public static org.jruby.runtime.DynamicScope pushBlockDynamicScopeReuse(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/DynamicScope;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.Block block
         0: .line 2038
            aload 1 /* block */
            invokevirtual org.jruby.runtime.Block.getBinding:()Lorg/jruby/runtime/Binding;
            invokevirtual org.jruby.runtime.Binding.getDynamicScope:()Lorg/jruby/runtime/DynamicScope;
            astore 2 /* newScope */
        start local 2 // org.jruby.runtime.DynamicScope newScope
         1: .line 2040
            aload 0 /* context */
            aload 2 /* newScope */
            invokevirtual org.jruby.runtime.ThreadContext.pushScope:(Lorg/jruby/runtime/DynamicScope;)V
         2: .line 2042
            aload 2 /* newScope */
            areturn
        end local 2 // org.jruby.runtime.DynamicScope newScope
        end local 1 // org.jruby.runtime.Block block
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0   context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     block  Lorg/jruby/runtime/Block;
            1    3     2  newScope  Lorg/jruby/runtime/DynamicScope;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      block    

  public static org.jruby.runtime.builtin.IRubyObject updateBlockState(org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/Block;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.Block block
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
         0: .line 2048
            aload 1 /* self */
            ifnull 1
            aload 0 /* block */
            invokevirtual org.jruby.runtime.Block.getEvalType:()Lorg/jruby/EvalType;
            getstatic org.jruby.EvalType.BINDING_EVAL:Lorg/jruby/EvalType;
            if_acmpne 2
         1: .line 2050
      StackMap locals:
      StackMap stack:
            aload 0 /* block */
            invokevirtual org.jruby.runtime.Block.getBinding:()Lorg/jruby/runtime/Binding;
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.useBindingSelf:(Lorg/jruby/runtime/Binding;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* self */
         2: .line 2054
      StackMap locals:
      StackMap stack:
            aload 0 /* block */
            getstatic org.jruby.EvalType.NONE:Lorg/jruby/EvalType;
            invokevirtual org.jruby.runtime.Block.setEvalType:(Lorg/jruby/EvalType;)V
         3: .line 2057
            aload 1 /* self */
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.Block block
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0  block  Lorg/jruby/runtime/Block;
            0    4     1   self  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
       Name  Flags
      block  
      self   

  public static org.jruby.runtime.builtin.IRubyObject useBindingSelf(org.jruby.runtime.Binding);
    descriptor: (Lorg/jruby/runtime/Binding;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.runtime.Binding binding
         0: .line 2061
            aload 0 /* binding */
            invokevirtual org.jruby.runtime.Binding.getSelf:()Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* self */
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
         1: .line 2062
            aload 0 /* binding */
            invokevirtual org.jruby.runtime.Binding.getFrame:()Lorg/jruby/runtime/Frame;
            aload 1 /* self */
            invokevirtual org.jruby.runtime.Frame.setSelf:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         2: .line 2064
            aload 1 /* self */
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.Binding binding
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  binding  Lorg/jruby/runtime/Binding;
            1    3     1     self  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      binding  

  public static org.jruby.RubyProc newSymbolProc(org.jruby.runtime.ThreadContext, java.lang.String);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;)Lorg/jruby/RubyProc;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.String id
         0: .line 2076
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* id */
            invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            aload 0 /* context */
            invokevirtual org.jruby.RubySymbol.to_proc:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyProc
            areturn
        end local 1 // java.lang.String id
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1       id  Ljava/lang/String;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      id       

  public static org.jruby.RubyProc newSymbolProc(org.jruby.runtime.ThreadContext, org.jruby.RubySymbol);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubySymbol;)Lorg/jruby/RubyProc;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.RubySymbol symbol
         0: .line 2088
            aload 1 /* symbol */
            aload 0 /* context */
            invokevirtual org.jruby.RubySymbol.to_proc:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyProc
            areturn
        end local 1 // org.jruby.RubySymbol symbol
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1   symbol  Lorg/jruby/RubySymbol;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
         Name  Flags
      context  
      symbol   

  public static org.jruby.runtime.builtin.IRubyObject[] singleBlockArgToArray(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 2094
            aload 0 /* value */
            instanceof org.jruby.RubyArray
            ifeq 3
         1: .line 2095
            aload 0 /* value */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToArray:()Lorg/jruby/RubyArray;
            invokevirtual org.jruby.RubyArray.toJavaArray:()[Lorg/jruby/runtime/builtin/IRubyObject;
            astore 1 /* args */
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
         2: .line 2096
            goto 4
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
         3: .line 2097
      StackMap locals:
      StackMap stack:
            iconst_1
            anewarray org.jruby.runtime.builtin.IRubyObject
            dup
            iconst_0
            aload 0 /* value */
            aastore
            astore 1 /* args */
        start local 1 // org.jruby.runtime.builtin.IRubyObject[] args
         4: .line 2099
      StackMap locals: org.jruby.runtime.builtin.IRubyObject[]
      StackMap stack:
            aload 1 /* args */
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 0 // org.jruby.runtime.builtin.IRubyObject value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  value  Lorg/jruby/runtime/builtin/IRubyObject;
            2    3     1   args  [Lorg/jruby/runtime/builtin/IRubyObject;
            4    5     1   args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN, location=[ARRAY_ELEMENT]
        org.jruby.ir.JIT()
    MethodParameters:
       Name  Flags
      value  

  public static org.jruby.runtime.Block prepareBlock(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.DynamicScope, org.jruby.runtime.BlockBody);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/DynamicScope;Lorg/jruby/runtime/BlockBody;)Lorg/jruby/runtime/Block;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.runtime.DynamicScope scope
        start local 3 // org.jruby.runtime.BlockBody body
         0: .line 2104
            new org.jruby.runtime.Block
            dup
            aload 3 /* body */
            aload 0 /* context */
            aload 1 /* self */
            aload 2 /* scope */
            invokevirtual org.jruby.runtime.ThreadContext.currentBinding:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/DynamicScope;)Lorg/jruby/runtime/Binding;
            invokespecial org.jruby.runtime.Block.<init>:(Lorg/jruby/runtime/BlockBody;Lorg/jruby/runtime/Binding;)V
            astore 4 /* block */
        start local 4 // org.jruby.runtime.Block block
         1: .line 2106
            aload 4 /* block */
            areturn
        end local 4 // org.jruby.runtime.Block block
        end local 3 // org.jruby.runtime.BlockBody body
        end local 2 // org.jruby.runtime.DynamicScope scope
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  context  Lorg/jruby/runtime/ThreadContext;
            0    2     1     self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     2    scope  Lorg/jruby/runtime/DynamicScope;
            0    2     3     body  Lorg/jruby/runtime/BlockBody;
            1    2     4    block  Lorg/jruby/runtime/Block;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      self     
      scope    
      body     

  public static org.jruby.RubyString newFrozenString(org.jruby.runtime.ThreadContext, org.jruby.util.ByteList, int, java.lang.String, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/util/ByteList;ILjava/lang/String;I)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.util.ByteList bytelist
        start local 2 // int coderange
        start local 3 // java.lang.String file
        start local 4 // int line
         0: .line 2110
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 5 /* runtime */
        start local 5 // org.jruby.Ruby runtime
         1: .line 2112
            aload 5 /* runtime */
            aload 1 /* bytelist */
            iload 2 /* coderange */
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Lorg/jruby/util/ByteList;I)Lorg/jruby/RubyString;
            astore 6 /* string */
        start local 6 // org.jruby.RubyString string
         2: .line 2114
            aload 5 /* runtime */
            invokevirtual org.jruby.Ruby.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
            invokevirtual org.jruby.RubyInstanceConfig.isDebuggingFrozenStringLiteral:()Z
            ifeq 7
         3: .line 2116
            aload 5 /* runtime */
            aload 5 /* runtime */
            aload 3 /* file */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aload 0 /* context */
            invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            aload 5 /* runtime */
            iload 4 /* line */
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            aload 0 /* context */
            invokevirtual org.jruby.RubyArray.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyArray
            astore 7 /* info */
        start local 7 // org.jruby.RubyArray info
         4: .line 2117
            aload 6 /* string */
            ldc "@debug_created_info"
            aload 7 /* info */
            invokevirtual org.jruby.RubyString.setInstanceVariable:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         5: .line 2118
            aload 6 /* string */
            iconst_1
            invokevirtual org.jruby.RubyString.setFrozen:(Z)V
        end local 7 // org.jruby.RubyArray info
         6: .line 2119
            goto 8
         7: .line 2120
      StackMap locals: org.jruby.Ruby org.jruby.RubyString
      StackMap stack:
            aload 5 /* runtime */
            aload 6 /* string */
            invokevirtual org.jruby.Ruby.freezeAndDedupString:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
            astore 6 /* string */
         8: .line 2123
      StackMap locals:
      StackMap stack:
            aload 6 /* string */
            areturn
        end local 6 // org.jruby.RubyString string
        end local 5 // org.jruby.Ruby runtime
        end local 4 // int line
        end local 3 // java.lang.String file
        end local 2 // int coderange
        end local 1 // org.jruby.util.ByteList bytelist
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0    context  Lorg/jruby/runtime/ThreadContext;
            0    9     1   bytelist  Lorg/jruby/util/ByteList;
            0    9     2  coderange  I
            0    9     3       file  Ljava/lang/String;
            0    9     4       line  I
            1    9     5    runtime  Lorg/jruby/Ruby;
            2    9     6     string  Lorg/jruby/RubyString;
            4    6     7       info  Lorg/jruby/RubyArray;
    MethodParameters:
           Name  Flags
      context    
      bytelist   
      coderange  
      file       
      line       

  public static org.jruby.RubyString freezeLiteralString(org.jruby.RubyString);
    descriptor: (Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.RubyString string
         0: .line 2128
            aload 0 /* string */
            iconst_1
            invokevirtual org.jruby.RubyString.setFrozen:(Z)V
         1: .line 2130
            aload 0 /* string */
            areturn
        end local 0 // org.jruby.RubyString string
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  string  Lorg/jruby/RubyString;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
        Name  Flags
      string  

  public static org.jruby.RubyString freezeLiteralString(org.jruby.RubyString, org.jruby.runtime.ThreadContext, java.lang.String, int);
    descriptor: (Lorg/jruby/RubyString;Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;I)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.jruby.RubyString string
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // java.lang.String file
        start local 3 // int line
         0: .line 2135
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         1: .line 2137
            aload 4 /* runtime */
            invokevirtual org.jruby.Ruby.getInstanceConfig:()Lorg/jruby/RubyInstanceConfig;
            invokevirtual org.jruby.RubyInstanceConfig.isDebuggingFrozenStringLiteral:()Z
            ifeq 4
         2: .line 2139
            aload 4 /* runtime */
            aload 4 /* runtime */
            aload 2 /* file */
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            aload 1 /* context */
            invokevirtual org.jruby.RubyString.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            aload 4 /* runtime */
            iload 3 /* line */
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            aload 1 /* context */
            invokevirtual org.jruby.RubyArray.freeze:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            checkcast org.jruby.RubyArray
            astore 5 /* info */
        start local 5 // org.jruby.RubyArray info
         3: .line 2140
            aload 0 /* string */
            ldc "@debug_created_info"
            aload 5 /* info */
            invokevirtual org.jruby.RubyString.setInstanceVariable:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
        end local 5 // org.jruby.RubyArray info
         4: .line 2143
      StackMap locals: org.jruby.Ruby
      StackMap stack:
            aload 0 /* string */
            iconst_1
            invokevirtual org.jruby.RubyString.setFrozen:(Z)V
         5: .line 2145
            aload 0 /* string */
            areturn
        end local 4 // org.jruby.Ruby runtime
        end local 3 // int line
        end local 2 // java.lang.String file
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyString string
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0   string  Lorg/jruby/RubyString;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            0    6     2     file  Ljava/lang/String;
            0    6     3     line  I
            1    6     4  runtime  Lorg/jruby/Ruby;
            3    4     5     info  Lorg/jruby/RubyArray;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
         Name  Flags
      string   
      context  
      file     
      line     

  public static org.jruby.runtime.builtin.IRubyObject callOptimizedAref(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyString, org.jruby.runtime.CallSite);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyString;Lorg/jruby/runtime/CallSite;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject caller
        start local 2 // org.jruby.runtime.builtin.IRubyObject target
        start local 3 // org.jruby.RubyString keyStr
        start local 4 // org.jruby.runtime.CallSite site
         0: .line 2150
            aload 2 /* target */
            instanceof org.jruby.RubyHash
            ifeq 2
            aload 4 /* site */
            checkcast org.jruby.runtime.callsite.CachingCallSite
            aload 2 /* target */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            invokevirtual org.jruby.runtime.callsite.CachingCallSite.isBuiltin:(Lorg/jruby/RubyClass;)Z
            ifeq 2
         1: .line 2152
            aload 2 /* target */
            checkcast org.jruby.RubyHash
            aload 0 /* context */
            aload 3 /* keyStr */
            invokevirtual org.jruby.RubyHash.op_aref:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 2155
      StackMap locals:
      StackMap stack:
            aload 4 /* site */
            aload 0 /* context */
            aload 1 /* caller */
            aload 2 /* target */
            aload 3 /* keyStr */
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.RubyString.strDup:(Lorg/jruby/Ruby;)Lorg/jruby/RubyString;
            invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.runtime.CallSite site
        end local 3 // org.jruby.RubyString keyStr
        end local 2 // org.jruby.runtime.builtin.IRubyObject target
        end local 1 // org.jruby.runtime.builtin.IRubyObject caller
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1   caller  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2   target  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3   keyStr  Lorg/jruby/RubyString;
            0    3     4     site  Lorg/jruby/runtime/CallSite;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      caller   
      target   
      keyStr   
      site     

  public static org.jruby.runtime.builtin.IRubyObject asString(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.CallSite);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/CallSite;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject caller
        start local 2 // org.jruby.runtime.builtin.IRubyObject target
        start local 3 // org.jruby.runtime.CallSite site
         0: .line 2163
            aload 3 /* site */
            aload 0 /* context */
            aload 1 /* caller */
            aload 2 /* target */
            invokevirtual org.jruby.runtime.CallSite.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            astore 4 /* str */
        start local 4 // org.jruby.runtime.builtin.IRubyObject str
         1: .line 2165
            aload 4 /* str */
            instanceof org.jruby.RubyString
            ifne 2
            aload 2 /* target */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.anyToString:()Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
         2: .line 2167
      StackMap locals: org.jruby.runtime.builtin.IRubyObject
      StackMap stack:
            aload 2 /* target */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isTaint:()Z
            ifeq 3
            aload 4 /* str */
            iconst_1
            invokeinterface org.jruby.runtime.builtin.IRubyObject.setTaint:(Z)V
         3: .line 2169
      StackMap locals:
      StackMap stack:
            aload 4 /* str */
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject str
        end local 3 // org.jruby.runtime.CallSite site
        end local 2 // org.jruby.runtime.builtin.IRubyObject target
        end local 1 // org.jruby.runtime.builtin.IRubyObject caller
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  context  Lorg/jruby/runtime/ThreadContext;
            0    4     1   caller  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     2   target  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3     site  Lorg/jruby/runtime/CallSite;
            1    4     4      str  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      caller   
      target   
      site     

  public static org.jruby.RubyArray newArray(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.ThreadContext context
         0: .line 2174
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyArray.newEmptyArray:(Lorg/jruby/Ruby;)Lorg/jruby/RubyArray;
            areturn
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  

  public static org.jruby.RubyArray newArray(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 2179
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* obj */
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      obj      

  public static org.jruby.RubyArray newArray(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject obj0
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj1
         0: .line 2184
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* obj0 */
            aload 2 /* obj1 */
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj1
        end local 1 // org.jruby.runtime.builtin.IRubyObject obj0
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1     obj0  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2     obj1  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      obj0     
      obj1     

  public static org.jruby.RubyString getFileNameStringFromScope(org.jruby.runtime.ThreadContext, org.jruby.parser.StaticScope);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/parser/StaticScope;)Lorg/jruby/RubyString;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.parser.StaticScope currScope
         0: .line 2190
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* currScope */
            invokevirtual org.jruby.parser.StaticScope.getIRScope:()Lorg/jruby/ir/IRScope;
            invokevirtual org.jruby.ir.IRScope.getFile:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
            areturn
        end local 1 // org.jruby.parser.StaticScope currScope
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0    context  Lorg/jruby/runtime/ThreadContext;
            0    1     1  currScope  Lorg/jruby/parser/StaticScope;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
           Name  Flags
      context    
      currScope  

  public static void callTrace(org.jruby.runtime.ThreadContext, org.jruby.runtime.RubyEvent, java.lang.String, java.lang.String, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/RubyEvent;Ljava/lang/String;Ljava/lang/String;I)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.RubyEvent event
        start local 2 // java.lang.String name
        start local 3 // java.lang.String filename
        start local 4 // int line
         0: .line 2195
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.hasEventHooks:()Z
            ifeq 5
         1: .line 2197
            iload 4 /* line */
            iconst_m1
            if_icmpne 2
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getLine:()I
            goto 3
      StackMap locals:
      StackMap stack:
         2: iload 4 /* line */
      StackMap locals:
      StackMap stack: int
         3: istore 5 /* linenumber */
        start local 5 // int linenumber
         4: .line 2199
            aload 0 /* context */
            aload 1 /* event */
            aload 2 /* name */
            aload 0 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getFrameKlazz:()Lorg/jruby/RubyModule;
            aload 3 /* filename */
            iload 5 /* linenumber */
            invokevirtual org.jruby.runtime.ThreadContext.trace:(Lorg/jruby/runtime/RubyEvent;Ljava/lang/String;Lorg/jruby/RubyModule;Ljava/lang/String;I)V
        end local 5 // int linenumber
         5: .line 2201
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int line
        end local 3 // java.lang.String filename
        end local 2 // java.lang.String name
        end local 1 // org.jruby.runtime.RubyEvent event
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0     context  Lorg/jruby/runtime/ThreadContext;
            0    6     1       event  Lorg/jruby/runtime/RubyEvent;
            0    6     2        name  Ljava/lang/String;
            0    6     3    filename  Ljava/lang/String;
            0    6     4        line  I
            4    5     5  linenumber  I
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
          Name  Flags
      context   
      event     
      name      
      filename  
      line      

  public static void warnSetConstInRefinement(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
         0: .line 2204
            aload 1 /* self */
            instanceof org.jruby.RubyModule
            ifeq 2
            aload 1 /* self */
            checkcast org.jruby.RubyModule
            invokevirtual org.jruby.RubyModule.isRefinement:()Z
            ifeq 2
         1: .line 2205
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getWarnings:()Lorg/jruby/common/RubyWarnings;
            ldc "not defined at the refinement, but at the outer class/module"
            invokevirtual org.jruby.common.RubyWarnings.warn:(Ljava/lang/String;)V
         2: .line 2207
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     self  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      self     

  public static void putConst(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyModule, java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.RubyModule module
        start local 3 // java.lang.String id
        start local 4 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 2211
            aload 0 /* context */
            aload 1 /* self */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.warnSetConstInRefinement:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 2213
            aload 2 /* module */
            aload 3 /* id */
            aload 4 /* value */
            invokevirtual org.jruby.RubyModule.setConstant:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 2214
            return
        end local 4 // org.jruby.runtime.builtin.IRubyObject value
        end local 3 // java.lang.String id
        end local 2 // org.jruby.RubyModule module
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2   module  Lorg/jruby/RubyModule;
            0    3     3       id  Ljava/lang/String;
            0    3     4    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      self     
      module   
      id       
      value    

  public static void putClassVariable(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyModule, java.lang.String, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject self
        start local 2 // org.jruby.RubyModule module
        start local 3 // java.lang.String id
        start local 4 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 2218
            aload 0 /* context */
            aload 1 /* self */
            invokestatic org.jruby.ir.runtime.IRRuntimeHelpers.warnSetConstInRefinement:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 2220
            aload 2 /* module */
            aload 3 /* id */
            aload 4 /* value */
            invokevirtual org.jruby.RubyModule.setClassVar:(Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         2: .line 2221
            return
        end local 4 // org.jruby.runtime.builtin.IRubyObject value
        end local 3 // java.lang.String id
        end local 2 // org.jruby.RubyModule module
        end local 1 // org.jruby.runtime.builtin.IRubyObject self
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1     self  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     2   module  Lorg/jruby/RubyModule;
            0    3     3       id  Ljava/lang/String;
            0    3     4    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      self     
      module   
      id       
      value    

  public static org.jruby.RubyRational newRationalRaw(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyRational;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject num
        start local 2 // org.jruby.runtime.builtin.IRubyObject den
         0: .line 2225
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* num */
            aload 2 /* den */
            invokestatic org.jruby.RubyRational.newRationalRaw:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyRational;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject den
        end local 1 // org.jruby.runtime.builtin.IRubyObject num
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1      num  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     2      den  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      num      
      den      

  public static org.jruby.RubyComplex newComplexRaw(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyComplex;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject i
         0: .line 2230
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* i */
            invokestatic org.jruby.RubyComplex.newComplexRawImage:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyComplex;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject i
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1        i  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      i        

  public static org.jruby.RubySymbol newDSymbol(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubySymbol;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject symbol
         0: .line 2235
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* symbol */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.asString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            invokevirtual org.jruby.Ruby.newSymbol:(Lorg/jruby/util/ByteList;)Lorg/jruby/RubySymbol;
            areturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject symbol
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
            0    1     1   symbol  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  
      symbol   

  public static org.jruby.RubyClass getStandardError(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyClass;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.ThreadContext context
         0: .line 2240
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getStandardError:()Lorg/jruby/RubyClass;
            areturn
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  

  public static org.jruby.RubyClass getObject(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyClass;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.ThreadContext context
         0: .line 2245
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
            areturn
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      context  

  public static org.jruby.runtime.builtin.IRubyObject svalue(org.jruby.runtime.ThreadContext, java.lang.Object);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // java.lang.Object val
         0: .line 2250
            aload 1 /* val */
            instanceof org.jruby.RubyArray
            ifeq 1
            aload 1 /* val */
            checkcast org.jruby.RubyArray
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
         2: areturn
        end local 1 // java.lang.Object val
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  context  Lorg/jruby/runtime/ThreadContext;
            0    3     1      val  Ljava/lang/Object;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
      org.jruby.ir.Interp()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.jruby.ir.JIT()
      METHOD_RETURN
        org.jruby.ir.Interp()
    MethodParameters:
         Name  Flags
      context  
      val      

  public static void aliasGlobalVariable(org.jruby.Ruby, java.lang.Object, java.lang.Object);
    descriptor: (Lorg/jruby/Ruby;Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.Ruby runtime
        start local 1 // java.lang.Object newName
        start local 2 // java.lang.Object oldName
         0: .line 2255
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getGlobalVariables:()Lorg/jruby/internal/runtime/GlobalVariables;
            aload 1 /* newName */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 2 /* oldName */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual org.jruby.internal.runtime.GlobalVariables.alias:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 2256
            return
        end local 2 // java.lang.Object oldName
        end local 1 // java.lang.Object newName
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0  runtime  Lorg/jruby/Ruby;
            0    2     1  newName  Ljava/lang/Object;
            0    2     2  oldName  Ljava/lang/Object;
    RuntimeInvisibleAnnotations: 
      org.jruby.ir.JIT()
    MethodParameters:
         Name  Flags
      runtime  
      newName  
      oldName  

  private static org.jruby.runtime.JavaSites$IRRuntimeHelpersSites sites(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/JavaSites$IRRuntimeHelpersSites;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.ThreadContext context
         0: .line 2259
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.sites:Lorg/jruby/runtime/JavaSites;
            getfield org.jruby.runtime.JavaSites.IRRuntimeHelpers:Lorg/jruby/runtime/JavaSites$IRRuntimeHelpersSites;
            areturn
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Lorg/jruby/runtime/ThreadContext;
    MethodParameters:
         Name  Flags
      context  

  static int[] $SWITCH_TABLE$org$jruby$ir$IRScopeType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 92
            getstatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$ir$IRScopeType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jruby.ir.IRScopeType.values:()[Lorg/jruby/ir/IRScopeType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jruby.ir.IRScopeType.CLASS_BODY:Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            bipush 6
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jruby.ir.IRScopeType.CLASS_METHOD:Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            iconst_4
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jruby.ir.IRScopeType.CLOSURE:Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            iconst_1
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jruby.ir.IRScopeType.EVAL_SCRIPT:Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            iconst_2
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.jruby.ir.IRScopeType.FOR:Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            bipush 9
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.jruby.ir.IRScopeType.INSTANCE_METHOD:Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            iconst_3
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.jruby.ir.IRScopeType.METACLASS_BODY:Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            bipush 7
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.jruby.ir.IRScopeType.MODULE_BODY:Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            iconst_5
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.jruby.ir.IRScopeType.SCRIPT_BODY:Lorg/jruby/ir/IRScopeType;
            invokevirtual org.jruby.ir.IRScopeType.ordinal:()I
            bipush 8
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            dup
            putstatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$ir$IRScopeType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$org$jruby$EvalType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 92
            getstatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$EvalType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jruby.EvalType.values:()[Lorg/jruby/EvalType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jruby.EvalType.BINDING_EVAL:Lorg/jruby/EvalType;
            invokevirtual org.jruby.EvalType.ordinal:()I
            iconst_2
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jruby.EvalType.INSTANCE_EVAL:Lorg/jruby/EvalType;
            invokevirtual org.jruby.EvalType.ordinal:()I
            iconst_3
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jruby.EvalType.MODULE_EVAL:Lorg/jruby/EvalType;
            invokevirtual org.jruby.EvalType.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jruby.EvalType.NONE:Lorg/jruby/EvalType;
            invokevirtual org.jruby.EvalType.ordinal:()I
            iconst_1
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$EvalType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$org$jruby$runtime$Block$Type();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 92
            getstatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$runtime$Block$Type:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jruby.runtime.Block$Type.values:()[Lorg/jruby/runtime/Block$Type;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
            invokevirtual org.jruby.runtime.Block$Type.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jruby.runtime.Block$Type.NORMAL:Lorg/jruby/runtime/Block$Type;
            invokevirtual org.jruby.runtime.Block$Type.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jruby.runtime.Block$Type.PROC:Lorg/jruby/runtime/Block$Type;
            invokevirtual org.jruby.runtime.Block$Type.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jruby.runtime.Block$Type.THREAD:Lorg/jruby/runtime/Block$Type;
            invokevirtual org.jruby.runtime.Block$Type.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic org.jruby.ir.runtime.IRRuntimeHelpers.$SWITCH_TABLE$org$jruby$runtime$Block$Type:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
}
SourceFile: "IRRuntimeHelpers.java"
NestMembers:
  org.jruby.ir.runtime.IRRuntimeHelpers$1  org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor  org.jruby.ir.runtime.IRRuntimeHelpers$GatherUnwantedKeywordsVisitor  org.jruby.ir.runtime.IRRuntimeHelpers$InvalidKeyException  org.jruby.ir.runtime.IRRuntimeHelpers$KwargMergeVisitor
InnerClasses:
  public final Entry = org.jcodings.EncodingDB$Entry of org.jcodings.EncodingDB
  public abstract VisitorWithState = org.jruby.RubyHash$VisitorWithState of org.jruby.RubyHash
  public final CompileMode = org.jruby.RubyInstanceConfig$CompileMode of org.jruby.RubyInstanceConfig
  public final Reason = org.jruby.RubyLocalJumpError$Reason of org.jruby.RubyLocalJumpError
  public final ID = org.jruby.common.IRubyWarnings$ID of org.jruby.common.IRubyWarnings
  org.jruby.ir.runtime.IRRuntimeHelpers$1
  private DivvyKeywordsVisitor = org.jruby.ir.runtime.IRRuntimeHelpers$DivvyKeywordsVisitor of org.jruby.ir.runtime.IRRuntimeHelpers
  private GatherUnwantedKeywordsVisitor = org.jruby.ir.runtime.IRRuntimeHelpers$GatherUnwantedKeywordsVisitor of org.jruby.ir.runtime.IRRuntimeHelpers
  private InvalidKeyException = org.jruby.ir.runtime.IRRuntimeHelpers$InvalidKeyException of org.jruby.ir.runtime.IRRuntimeHelpers
  private KwargMergeVisitor = org.jruby.ir.runtime.IRRuntimeHelpers$KwargMergeVisitor of org.jruby.ir.runtime.IRRuntimeHelpers
  public final Type = org.jruby.runtime.Block$Type of org.jruby.runtime.Block
  public CheckedSites = org.jruby.runtime.JavaSites$CheckedSites of org.jruby.runtime.JavaSites
  public IRRuntimeHelpersSites = org.jruby.runtime.JavaSites$IRRuntimeHelpersSites of org.jruby.runtime.JavaSites